Friday 26 February 2016

Export To excel in NAV using Excel Buffer

Simple way to write export to excel in NAV

Name                 DataType             Subtype                Length
ExportToExcel Boolean
ExcelBuffer         Record              Excel Buffer
i                         Integer

Copy Entercell function from Standard Reports

1. Write a Code on Report -OnPostReport trigger
 
IF ExportToExcel THEN BEGIN
  ExcelBuffer.CreateBook;
  ExcelBuffer.CreateSheet('NAME','',' ',USERID);
  ExcelBuffer.AutoFit('A:K');
  ExcelBuffer.GiveUserControl;
END;

2.Write following code in First Data item -onPreDataItem
IF ExportToExcel THEN BEGIN
  i:=1;
  EnterCell(i,1,'Name',TRUE,FALSE,'');
  EnterCell(i,12,'Date',TRUE,FALSE,'');
End;
Continue like how many header fields are there.

3. Write the code in onAfterget trigger where You will get data to display.
 IF ExportToExcel THEN BEGIN
  i+=1;
  EnterCell(i,1,Item."No.",FALSE,FALSE,'');
  EnterCell(i,2,Item."No. 2",FALSE,FALSE,'@');
End;