Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.01;
Скачать: CL | DM;

Вниз

Почему не работает( или чего-то не хватает?)   Найти похожие ветки 

 
Draculenok ©   (2002-03-05 13:28) [0]

Уважаемые программисты вот такие дела!!
При составлении отчета из базы через Query делается запрос и выводится в ексел таким образом...
j:=1;
query1.close;
query1.SQL.Add("select sum(price) as SUMPRICE,Company,GroupTov, AdvrtName,ConstrType from comcon2.db where GroupTov="""+Edit1.Text+""" group by Company, AdvrtName, ConstrType,GroupTov");
query1.Open;

Query1.First;
While not Query1.Eof do
begin
XArr[5]:=Query1.FieldByName("SumPrice").AsString;
XArr[2]:=Query1.FieldByName("AdvrtName").AsString;
XArr[3]:=Query1.FieldByName("ConstrType").AsString;
XArr[4]:=Query1.FieldByName("GroupTov").AsString;
XArr[1]:=Query1.fieldbyName("Company").asstring;

// .......

XLR:= XLS.Range[XLS.Cells[j+1,2],XLS.Cells[j+1,2+9]];
XLR.Value := XArr;
XLR.Font.Bold := True;
XLR.Interior.ColorIndex := 0;
Query1.Next;
J:=J+1;
end;

end;
end.

при этом данные выводятся в столбец по такому методу
Name Type Type1 Price
1 a a1 65464
1 a a2 32154
и т.д. надо чтобы было так....
Name
1 Type
a Type1 Price
a1 3245
a2 2151
Т.е. нужно как бы сгруппировать их по Name, Type //


сделал вот так но он не показывает данные хотя видно что цикл происходит прошу помогите в чем дело?????....
срочно надо

const
xlWBATWorksheet = $FFFFEFB9;
var
XL, XLS, XLR, XArr: Variant;
fname,st1:String;
tshor,tempstr:String;
j,i:integer;
begin
XArr:=VarArrayCreate([1,10],varVariant);
XL:=CreateOLEObject("Excel.Application");
XL.WorkBooks.add(xlWBATWorksheet); // добавляет только один лист
XLS:=XL.Workbooks[1].ActiveSheet; // рабочий лист
XL.DisplayAlerts:=false; // отключение сообщений Екселя
XL.visible:=true;

j:=1;
query1.close;
query1.SQL.Add("select sum(price) as SUMPRICE,Company,GroupTov, AdvrtName,ConstrType from comcon2.db where GroupTov="""+Edit1.Text+""" group by Company, AdvrtName, ConstrType,GroupTov");
query1.Open;
Query1.First;

tempstr:=Query1.fieldbyName("Company").asstring;
While not Query1.Eof do
begin
if Query1.fieldbyName("Company").asstring=tempstr then
begin
XArr[2]:=Query1.FieldByName("AdvrtName").AsString;
XArr[3]:=Query1.FieldByName("ConstrType").AsString;
XArr[4]:=Query1.FieldByName("GroupTov").AsString;
XArr[1]:=Query1.fieldbyName("Company").asstring;

// .......

{XLR:= XLS.Range[XLS.Cells[j+2,2],XLS.Cells[j+2,2+9]];
XLR.Value := XArr;
XLR.Font.Bold := True;
XLR.Interior.ColorIndex := 0; }
end
else
XArr[5]:=Query1.FieldByName("SumPrice").AsString;

end;
XLR:= XLS.Range[XLS.Cells[j+2,2],XLS.Cells[j+2,2+9]];
XLR.Value := XArr;
XLR.Font.Bold := True;
XLR.Interior.ColorIndex := 0;
Query1.Next;
J:=J+1;
заранее спасибо


 
Draculenok ©   (2002-03-06 06:45) [1]

кто нибудь может решал такую проблему?



Страницы: 1 вся ветка

Текущий архив: 2002.04.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
1-112
Ольга
2002-03-19 16:17
2002.04.01
HELP!!!


1-191
Smok_er
2002-03-19 02:17
2002.04.01
Строковой парсер


1-102
Толик
2002-03-17 22:15
2002.04.01
Глюки TCHART


3-12
Basile
2002-02-27 20:30
2002.04.01
Компоненты для доступа к MSSQL Server?


6-261
Malder
2002-01-19 13:45
2002.04.01
Как скрыть ESocketError ?