Über die Nutzung von Includes ist es möglich beliebigen Code im SAP abzulegen und darauf zuzugreifen. Folgende Schritte sind notwendig:
- SE80 -> neues INCLUDE anlegen (Bsp.: ZCSSINCLUDE)
- CSS-Code im INCLUDE eintragen
- Aktvieren! (Ja, das funktioniert.)
- CSS-Code (INCLUDE) im ABAP-Code lesen
* Name des INCLUDEs mit dem CSS-Code CONSTANTS: co_cssinclude TYPE char12 VALUE 'ZCSSINCLUDE'. * String für CSS-Daten DATA: lv_css TYPE string. * Prüfen, ob INCLUDE im System (TADIR) aktiv vorhanden SELECT SINGLE obj_name INTO @DATA(lv_obj_name) FROM tadir WHERE obj_name = @co_w3css AND pgmid = 'R3TR' AND object = 'PROG'. IF sy-subrc = 0. * Stringtab für Code DATA: it_incl_code TYPE stringtab. * Code des INCLUDEs lesen READ REPORT co_w3css INTO it_incl_code. IF sy-subrc = 0. * String-Tabelle mit CSS-Code in String wandeln, Trennzeichen ist CRLF lv_css = REDUCE string( INIT s = || FOR <s> IN it_incl_code NEXT s = COND #( WHEN s IS INITIAL THEN |{ <s> }| ELSE |{ s }{ cl_abap_char_utilities=>cr_lf }{ <s> }| ) ). ENDIF. ENDIF. * HTML mit CSS-INCLUDE DATA(lv_html) = '<!DOCTYPE html>' && '<html>' && '<title>Lagermaterialkatalog</title>' && '<meta name="viewport" content="width=device-width, initial-scale=1">' && '<style>' && lv_css && '</style>' && '<body>' && '</body>' && '</html>'.