Подскажите как мне сделать,чтобы документ excel обрабатывался в фоновом режиме,и во время выполнения этой процедуры ,появлялось окно процесса.(progressBar)
Вот мой код программы.В моем случае весь процесс происходящего навиду(открывается окно excel и построчно заполняется данными).
Подскажите как его подкоректировать,чтобы был виден только конечный результат.
Если несложно приведите пример,я уже испробовал несколько методов,работает коряво.
X++:
public void printPage01()
{
real ItogFacture,ItogProc,Facture;
{
Number = 1;
_row = 12;
while select InterestDays,InterestAmount,DueDate,ContractAccount,RcontractCode,Invoice,Closed,RemainAmount,AccountNum from CustTrans
where CustTrans.InterestNote == CustJour.InterestNote
while select * from FactureTrans group by FactureId
where FactureTrans.BGR_RContractAccount == CustTrans.ContractAccount &&
FactureTrans.BGR_RContractCode == CustTrans.RcontractCode &&
FactureTrans.InvoiceId == CustTrans.Invoice
while select * from FactureJour
where FactureJour.FactureId == FactureTrans.FactureId
{
ItogProc += CustTrans.InterestAmount;
ExcelDocument.insertRow(_row);
this.insertValueIntoDoc("NameKontr", CustJour.Name);
this.insertValueIntoDoc("FromDate", CustJour.FromDate);
this.insertValueIntoDoc("ToDate", CustJour.ToDate);
this.insertValueIntoDoc("NumberContr", CustJour.ContractAccount);
this.insertValueIntoDoc("A" + int2Str(_row), Number);
this.insertValueIntoDoc("B" + int2Str(_row), "Счет фактура");
this.insertValueIntoDoc("C" + int2Str(_row), FactureJour.BGR_FromDate);
this.insertValueIntoDoc("D" + int2Str(_row), FactureJour.BGR_ToDate);
this.insertValueIntoDoc("E" + int2Str(_row), FactureJour.FactureExternalId);
this.insertValueIntoDoc("F" + int2Str(_row), CustTrans.Invoice);
this.insertValueIntoDoc("G" + int2Str(_row), FactureJour.amountInclTax());
this.insertValueIntoDoc("H" + int2Str(_row), CustTrans.Closed);
this.insertValueIntoDoc("K" + int2Str(_row), CustTrans.InterestDays);
this.insertValueIntoDoc("M" + int2Str(_row), CustTrans.InterestAmount);
this.insertValueIntoDoc("I" + int2Str(_row), CustTrans.RemainAmount);
this.insertValueIntoDoc("J" + int2Str(_row), -CustTrans.RemainAmount);
this.insertValueIntoDoc("Data", CustJour.ContractDate);
this.insertValueIntoDoc("Itog2", ItogProc);
while select * from CustOpen
where CustOpen.AmountMST == CustTrans.RemainAmount &&
CustOpen.AccountNum == CustTrans.AccountNum
{
ItogFacture += CustOpen.AmountMST;
this.insertValueIntoDoc("J" + int2Str(_row), CustTrans.RemainAmount);
this.insertValueIntoDoc("Itog", ItogFacture);
}
Number++;
_row++;
}
}
}