OBJECT Report 50126 ALF Export Setup Tabs to Excel { OBJECT-PROPERTIES { Date=20.02.18; Time=[ 9:50:13]; Modified=Yes; Version List=1.0; } PROPERTIES { ProcessingOnly=Yes; OnPreReport=BEGIN TempExcelBuffer.DELETEALL; RowNo := 1; ColNo := 1; EnterCell(RowNo,ColNo,FORMAT(COMPANYPROPERTY.URLNAME+';'+TENANTID+';'+USERID+';'+FORMAT(TIME)),TempExcelBuffer."Cell Type"::Text,TRUE,FALSE,TRUE); StartRowNo := 3; END; OnPostReport=BEGIN GlobalRecRef.OPEN(DATABASE::"General Ledger Setup"); GlobalRecRef.FINDFIRST; FillHeader(StartRowNo,GlobalRecRef); StartRowNo := FillLine(StartRowNo,GlobalRecRef) + 2; GlobalRecRef.CLOSE; GlobalRecRef.OPEN(DATABASE::"Sales & Receivables Setup"); GlobalRecRef.FINDFIRST; FillHeader(StartRowNo,GlobalRecRef); StartRowNo := FillLine(StartRowNo,GlobalRecRef) + 2; GlobalRecRef.CLOSE; GlobalRecRef.OPEN(DATABASE::"Purchases & Payables Setup"); GlobalRecRef.FINDFIRST; FillHeader(StartRowNo,GlobalRecRef); StartRowNo := FillLine(StartRowNo,GlobalRecRef) + 2; GlobalRecRef.CLOSE; GlobalRecRef.OPEN(DATABASE::"Inventory Setup"); GlobalRecRef.FINDFIRST; FillHeader(StartRowNo,GlobalRecRef); StartRowNo := FillLine(StartRowNo,GlobalRecRef) + 2; GlobalRecRef.CLOSE; TempExcelBuffer.CreateNewBook(SheetName); TempExcelBuffer.WriteSheet(SheetName,'',''); TempExcelBuffer.CloseBook; TempExcelBuffer.OpenExcel; TempExcelBuffer.GiveUserControl; // please comment this line for Cloud app END; UseRequestPage=No; } DATASET { } REQUESTPAGE { PROPERTIES { } CONTROLS { } } LABELS { } CODE { VAR TempExcelBuffer@1000 : TEMPORARY Record 370; RowNo@1001 : Integer; ColNo@1002 : Integer; GlobalRecRef@1003 : RecordRef; StartRowNo@1004 : Integer; SheetName@1005 : TextConst 'ENU="ENU=ALF Export Setup Tabs to Excel"'; LOCAL PROCEDURE EnterCell@1(RowNo@1000 : Integer;ColumnNo@1001 : Integer;CellValue@1002 : Text[250];CellType@1003 : 'Number,Text,Date,Time';Bold@1004 : Boolean;Italic@1005 : Boolean;Underline@1006 : Boolean); BEGIN TempExcelBuffer.INIT; TempExcelBuffer.VALIDATE("Row No.",RowNo); TempExcelBuffer.VALIDATE("Column No.",ColumnNo); TempExcelBuffer."Cell Value as Text" := CellValue; TempExcelBuffer."Cell Type" := CellType; TempExcelBuffer.Bold := Bold; TempExcelBuffer.Italic := Italic; TempExcelBuffer.Underline := Underline; TempExcelBuffer.INSERT; END; LOCAL PROCEDURE FillHeader@4(StartRowNo@1001 : Integer;LocalRecRef@1002 : RecordRef); VAR LocalFieldRef@1000 : FieldRef; BEGIN RowNo := StartRowNo; ColNo := 1; EnterCell(RowNo,ColNo,LocalRecRef.CAPTION + ' ('+FORMAT(LocalRecRef.NUMBER)+')',TempExcelBuffer."Cell Type"::Text,TRUE,TRUE,TRUE); ColNo := 2; EnterCell(RowNo,ColNo,'VALUE',TempExcelBuffer."Cell Type"::Text,TRUE,TRUE,TRUE); ColNo := 3; EnterCell(RowNo,ColNo,'CLASS',TempExcelBuffer."Cell Type"::Text,TRUE,TRUE,TRUE); ColNo := 4; EnterCell(RowNo,ColNo,'OPTION',TempExcelBuffer."Cell Type"::Text,TRUE,TRUE,TRUE); ColNo := 1; FOR RowNo := (1 + StartRowNo) TO (LocalRecRef.FIELDCOUNT + StartRowNo) DO BEGIN LocalFieldRef := LocalRecRef.FIELDINDEX(RowNo - StartRowNo); EnterCell(RowNo,ColNo,LocalFieldRef.CAPTION + ' ('+FORMAT(LocalFieldRef.NUMBER)+')',TempExcelBuffer."Cell Type"::Text,TRUE,FALSE,FALSE); END; END; LOCAL PROCEDURE FillLine@6(StartRowNo@1001 : Integer;LocalRecRef@1002 : RecordRef) : Integer; VAR LocalFieldRef@1000 : FieldRef; BEGIN FOR RowNo := (1 + StartRowNo) TO (LocalRecRef.FIELDCOUNT + StartRowNo) DO BEGIN LocalFieldRef := LocalRecRef.FIELDINDEX(RowNo - StartRowNo); ColNo := 2; EnterCell(RowNo,ColNo,FORMAT(LocalFieldRef.VALUE),TempExcelBuffer."Cell Type"::Text,FALSE,FALSE,FALSE); ColNo := 3; EnterCell(RowNo,ColNo,FORMAT(LocalFieldRef.CLASS),TempExcelBuffer."Cell Type"::Text,FALSE,FALSE,FALSE); ColNo := 4; EnterCell(RowNo,ColNo,FORMAT(LocalFieldRef.OPTIONCAPTION),TempExcelBuffer."Cell Type"::Text,FALSE,FALSE,FALSE); END; EXIT(RowNo); END; BEGIN { //Please add these properties for Cloud app //Caption = 'ALF Export Setup Tabs to Excel'; //UsageCategory = ReportsAndAnalysis; //ApplicationArea = All,Basic,Suite; } END. } RDLDATA { } }