ABAP2XLS
Excel-Dateien lassen sich ohne weiteres aus SAP heraus erzeugen. Es gibt die Möglichkeit, dies per OLE (Object Linking and Embedding) oder mittels DOI (Desktop Office Integration) tun. Diese beiden Methoden haben jedoch zwei große Nachteile:
- Die Anwendung/ Erstellung von Excel-Dateien ist recht kompliziert und aufwändig
- Dateien können nur Online, also im Dialog mit dem Anwender erzeugt werden. Die Erzeugung von Excel-Dateien im Hintergrund ist nicht möglich.
ABAP2XLS bildet die meisten Funktionen – und das sind sehr viele!! – mit eigenen Klassen und Methoden ab. Die Entwicklung wird von einer Gruppe sehr engagierter SAP-Programmierer stetig weiter geführt und verbessert.
Eine kurze Übersicht über die Funktionen und das Entwicklerteam gibt es im SCN – ABAP2XLS. Die Möglichkeiten sind wirklich fantastisch. Es können jede Menge Funktionen und Formatierungen vorgenommen werden.
Demo-Programm
Folgendes Demo-Programm zeigt, wie einfach es ist, eine Excel-Datei mithilfe von ABAP2XLS zu erzeugen:
REPORT zdemo_excel1. DATA: lo_excel TYPE REF TO zcl_excel, lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_hyperlink TYPE REF TO zcl_excel_hyperlink, column_dimension TYPE REF TO zcl_excel_worksheet_columndime. CONSTANTS: gc_save_file_name TYPE string VALUE '01_HelloWorld.xlsx'. INCLUDE zdemo_excel_outputopt_incl. START-OF-SELECTION. " Creates active sheet CREATE OBJECT lo_excel. " Get active sheet lo_worksheet = lo_excel->get_active_worksheet( ). lo_worksheet->set_cell( ip_column = 'B' ip_row = 2 ip_value = 'Hello world' ). lo_worksheet->set_cell( ip_column = 'B' ip_row = 3 ip_value = sy-datum ). lo_worksheet->set_cell( ip_column = 'C' ip_row = 3 ip_value = sy-uzeit ). lo_hyperlink = zcl_excel_hyperlink=>create_external_link( iv_url = 'http://www.abap2xlsx.org' ). lo_worksheet->set_cell( ip_column = 'B' ip_row = 4 ip_value = 'Click here to visit abap2xlsx homepage' ip_hyperlink = lo_hyperlink ). column_dimension = lo_worksheet->get_column_dimension( ip_column = 'B' ). column_dimension->set_width( ip_width = 11 ). *** Create output lcl_output=>output( lo_excel ).
Die Umfangreiche Demo-Sammlung ist in einem eigenen Show-Center untergebracht, in dem der Quelltext als auch die Ausgabe angezeigt werden:
- 7. December: Excel Racing Simulation – Root Vole Race - 7. Dezember 2024
- 5. December: ABAPConf - 5. Dezember 2024
- 4. December: Only a lazy developer is a good developer - 4. Dezember 2024