126
//Вывод реквизитов в шапку:
DM.tbRequisite.Open;
Excel.Cells[1,1] := DM.tbRequisite.FieldByName('Наименование').AsString;
Excel.Cells[2,1] := DM.tbRequisite.FieldByName('Адрес').AsString;
Excel.Cells[3,1] := 'ИНН ' + DM.tbRequisite.FieldByName('ИНН').AsString +
', КПП ' + DM.tbRequisite.FieldByName('КПП').AsString;
Excel.Cells[8,3] := DM.tbRequisite.FieldByName('Наименование').AsString;
DM.tbRequisite.Close;
Excel.Cells[2,8] := '№ Д' + FormatFloat('0000',
dstOrders.FieldByName('NЗаказа').AsInteger) +
' от ' + dstOrders.FieldByName('ДатаПриема').AsString;
Excel.Cells[9,3] := dstOrders.FieldByName('Клиент').AsString;
Excel.Cells[10,3] := dstOrders.FieldByName('Клиент').AsString;
Excel.Cells[5,4] := 'А' + FormatFloat('0000',
dstOrders.FieldByName('NЗаказа').AsInteger) +
' от ' +
GetRightDate(DM.dstOrders.FieldByName('ДатаПриема').AsDateTime);
//Цикл по работам:
dstJobs.First;
Sum := 0; //Сумма работ
while not dstJobs.Eof do
begin
//Добавление новой строки для работы:
if i <> 0 then
begin
Excel.Rows.Item[PosInc+i].Select;
Excel.Selection.Insert;
Excel.Rows.Item[PosInc].Select;
Excel.Selection.Copy;
Excel.Rows.Item[PosInc+i].Select;
Excel.ActiveSheet.Paste;
Excel.Application.CutCopyMode := False;
end;
Excel.Cells[i+PosInc,1] := i+1;
Excel.Cells[i+PosInc,2] := dstJobs.FieldByName('Работа').AsString;
Excel.Cells[i+PosInc,4] := FormatFloat('000',
dstJobs.FieldByName('РаботаID').AsInteger);
Excel.Cells[i+PosInc,5] := dstJobs.FieldByName('Работник').AsString;
Excel.Cells[i+PosInc,6] :=
dstJobs.FieldByName('ОплатаЗаНорму').AsCurrency;
Excel.Cells[i+PosInc,7] := FormatFloat('#,00',
dstJobs.FieldByName('Количество').AsFloat);
Excel.Cells[i+PosInc,8] := dstJobs.FieldByName('Сумма').AsCurrency;
Inc(i);
Sum := Sum + dstJobs.FieldByName('Сумма').AsCurrency;
dstJobs.Next;
end; //while not dstJobs.Eof
Excel.Cells[i+PosInc,8] := Sum;