Я пытаюсь автоматизировать отправку отчетов по факсу из базы данных в приложении, разработанном с использованием Delphi XE4 с использованием Async Professional Components.Отчеты обычно состоят из нескольких страниц, от двух до четырех страниц, включая титульный лист.Я следовал рекомендациям компонентов Async Professional и смог быстро отправлять факсы.Первая страница идет нормально, и отчеты об обновлении статуса принимаются на стороне получателя.Однако после первой страницы вторая страница усекается ниже верхней трети.Статус показывает прогресс передачи только для зависания на 100%, и передача никогда не кажется завершенной.Статус наконец показывает Fatal Timeout.Любое руководство, где проблема оценена.
function TfrmFaxDispatch.SendFax: Boolean;
var
Approutes: string;
SchRec: TSearchRec;
FaxPagesList: TStringList;
accession: string;
fax_number: string;
I: Integer;
begin
Approutes := ExtractFilePath(Application.ExeName);
FaxQry.Active := TRUE;
if FaxQry.RecordCount > 0 then
begin
fax_number := FaxQry.FieldByName('fax_number').AsString;
accession := FaxQry.FieldByName('accession_number').AsString;
if Get_Case_Status(accession) = PRELIM then
frmaedgeap.GenerateFinalDiagnosisReportFax(accession, TRUE, False)
else
frmaedgeap.GenerateFinalDiagnosisReportFax(accession, False, False);
FaxPagesList := TStringList.Create;
try
FaxPagesList.Sorted := TRUE;
FaxPagesList.Duplicates := dupIgnore;
if FindFirst(Approutes + 'APFReports\' + accession + '.*', faArchive,
SchRec) = 0 then
begin
repeat
FaxPagesList.Add(Approutes + 'APFReports\' + SchRec.Name);
until FindNext(SchRec) <> 0;
FindClose(SchRec);
end;
ApdSendFax1.PhoneNumber := fax_number;
ApdSendFax1.HeaderLine := DateTimeToStr(now) +
' AEdge Diagnostic Lab 123-3456';
ApdSendFax1.FaxFileList.Assign(FaxPagesList);
if ApdSendFax1.FaxFileList.Count > 0 then
begin
ApdSendFax1.ConcatFaxes(Approutes + 'APFReports\OUTFAX.APF');
ApdSendFax1.StartTransmit;
end;
finally
FaxPagesList.Free;
end;
end;
end;