Quantcast
Channel: Dynamics User Group
Viewing all articles
Browse latest Browse all 15740

Best performance in a Form

$
0
0

In Form 13382 I create a new Filter field = X:

When form 13382 is executed, one  XML file is generated for each Vendor.

But for each File is taking a lot of time (15 seconds for each) is to much for genertae 3000 xml file.

This is the C/AL I created in Form Buton  

What is wrong on this code for tacking so long?


<Control1110010> - OnPush()
IF ISSERVICETIER THEN
  FileName := RBMgt.EnvironFileName('','xml');

TempFileName := FileName + '.tmp';

 IF X <> '' THEN
    Vendor.SETCURRENTKEY("No.");
    Vendor.SETFILTER(Vendor."No.",X);
    Vendor.SETRANGE("SAFT Vendor Entries",TRUE);
    Vendor.SETRANGE("SAFT Date Filter", StartingDate, LastDate );

IF Vendor.FINDSET THEN


REPEAT
  CLEAR(FTAT);
  FileName := 'C:\'+ Vendor."VAT Registration No."+ 'SAFT'+Vendor."No."+'.xml'; // To have a file per vendor
  Vend_L.SETCURRENTKEY("No.");
  Vend_L.SETFILTER("No.",Vendor."No.");
  Vend_L.FINDFIRST;
  FTAT.SETTABLEVIEW(Vend_L);


  IF LastDate < StartingDate THEN
    ERROR(Text13301,StartingDate);

  OutputFile.TEXTMODE(TRUE);
  OutputFile.WRITEMODE(TRUE);
  IF NOT ISSERVICETIER THEN OutputFile.QUERYREPLACE(TRUE);
  OutputFile.CREATE(TempFileName);
  OutputFile.CREATEOUTSTREAM(OutputStream);
  FTAT.SetData(LastDate,StartingDate);
  FTAT.SETDESTINATION(OutputStream);
  FTAT.EXPORT;

  OutputFile.CLOSE;


  IF ISSERVICETIER THEN BEGIN
    ToFile := Text1110005;
    DOWNLOAD(TempFileName,Text000,'',Text001,ToFile);
  END ELSE
  CheckANDModifyFile(TempFileName,FileName);

UNTIL Vendor.NEXT = 0;
CurrForm.CLOSE;

 

Thanks


Viewing all articles
Browse latest Browse all 15740

Trending Articles