ABAP Select data from SAP table J_2GLPRPDREF into internal table
Get Example source ABAP code based on a different SAP table
Below is a number of ABAP code snippets to demonstrate how to select data from SAP J_2GLPRPDREF table and store it within an internal table, including using the newer @DATA inline declaration methods. It also shows you various ways to process this data using ABAP work area, inline declaration or field symbols including executing all the relevant CONVERSION_EXIT routines specific to J_2GLPRPDREF. See here for more generic Select statement tips.
Sometimes data within SAP is stored within the database table in a different format to what it is displayed to the user. These input/output conversation FM routines are what translates the data between the two formats.
There is also a full declaration of the J_2GLPRPDREF table where each field has a char/string type for you to simply copy and paste. This allows you to use processing that is only available to these field types such as the CONCATENATE statement.
DATA: IT_J_2GLPRPDREF TYPE STANDARD TABLE OF J_2GLPRPDREF, WA_J_2GLPRPDREF TYPE J_2GLPRPDREF, GD_STR TYPE STRING. DATA: lo_typedescr type REF TO cl_abap_typedescr. DATA: lv_fieldname type fieldname. FIELD-SYMBOLS: <FIELD> TYPE any. FIELD-SYMBOLS: <J_2GLPRPDREF> TYPE J_2GLPRPDREF. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_J_2GLPRPDREF. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM J_2GLPRPDREF INTO TABLE IT_J_2GLPRPDREF. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM J_2GLPRPDREF * INTO TABLE @DATA(IT_J_2GLPRPDREF2). *--Further methods of using ABAP code to select data from SAP database tables *You can also declare the header/work area using the in-line DATA declaration method READ TABLE IT_J_2GLPRPDREF INDEX 1 INTO DATA(WA_J_2GLPRPDREF2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_J_2GLPRPDREF ASSIGNING <J_2GLPRPDREF>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<J_2GLPRPDREF>-SELBX = 1.
<J_2GLPRPDREF>-PSTBX = 1.
<J_2GLPRPDREF>-ICONL = 1.
<J_2GLPRPDREF>-ICONS = 1.
<J_2GLPRPDREF>-MANDT = 1.
ENDLOOP. LOOP AT IT_J_2GLPRPDREF INTO WA_J_2GLPRPDREF. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_J_2GLPRPDREF-DOCUCATEG, sy-vline,
WA_J_2GLPRPDREF-SAPDOC, sy-vline,
WA_J_2GLPRPDREF-GJAHR, sy-vline,
WA_J_2GLPRPDREF-GIDOC, sy-vline,
WA_J_2GLPRPDREF-DEVID, sy-vline,
WA_J_2GLPRPDREF-CRDAT, sy-vline.
ENDLOOP. *Add any further fields from structure WA_J_2GLPRPDREF you want to display... WRITE:/ sy-uline. * Aternatively use generic code to Write field values (and NAME) to screen report DO. ASSIGN COMPONENT sy-index OF STRUCTURE wa_J_2GLPRPDREF TO <field>. IF sy-subrc <> 0. EXIT. ENDIF. WRITE:/ 'Field Value', <field>, sy-vline. gd_str = <field> . lo_typedescr ?= CL_ABAP_DATADESCR=>DESCRIBE_BY_DATA( <field> ). lv_fieldname = lo_typedescr->GET_RELATIVE_NAME( ). WRITE:/ 'Field Name', lv_fieldname. ENDDO. *Redo loop but convert all fields from internal to out value LOOP AT IT_J_2GLPRPDREF INTO WA_J_2GLPRPDREF. *Write horizonal line to screen report. WRITE:/ sy-uline. *Convert all fields to display/output versions using conversion routines PERFORM convert_all_field_values CHANGING wa_EKKO. ENDLOOP. *&---------------------------------------------------------------------* *& Form convert_all_field_values *&---------------------------------------------------------------------* FORM convert_all_field_values CHANGING p_EKKO LIKE wa_EKKO. DATA: ld_input(1000) TYPE c, ld_output(1000) TYPE C.
*Conversion exit ALPHA, internal->external for field SAPDOC CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_J_2GLPRPDREF-SAPDOC IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_J_2GLPRPDREF-SAPDOC.
WRITE:/ 'New Value:', ld_input.
*Conversion exit GJAHR, internal->external for field GJAHR CALL FUNCTION 'CONVERSION_EXIT_GJAHR_OUTPUT' EXPORTING input = WA_J_2GLPRPDREF-GJAHR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_J_2GLPRPDREF-GJAHR.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field GIDOC CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_J_2GLPRPDREF-GIDOC IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_J_2GLPRPDREF-GIDOC.
WRITE:/ 'New Value:', ld_input.
*Conversion exit SPDEV, internal->external for field DEVICE CALL FUNCTION 'CONVERSION_EXIT_SPDEV_OUTPUT' EXPORTING input = WA_J_2GLPRPDREF-DEVICE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_J_2GLPRPDREF-DEVICE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit SPDEV, internal->external for field TDDEST CALL FUNCTION 'CONVERSION_EXIT_SPDEV_OUTPUT' EXPORTING input = WA_J_2GLPRPDREF-TDDEST IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_J_2GLPRPDREF-TDDEST.
WRITE:/ 'New Value:', ld_input.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_J_2GLPRPDREF_STR,
SELBX TYPE STRING,
PSTBX TYPE STRING,
ICONL TYPE STRING,
ICONS TYPE STRING,
MANDT TYPE STRING,
DOCUCATEG TYPE STRING,
SAPDOC TYPE STRING,
GJAHR TYPE STRING,
GIDOC TYPE STRING,
DEVID TYPE STRING,
CRDAT TYPE STRING,
AEDAT TYPE STRING,
AENAM TYPE STRING,
STAT1 TYPE STRING,
DSIG1 TYPE STRING,
NXTZ1 TYPE STRING,
STAT2 TYPE STRING,
DSIG2 TYPE STRING,
NXTZ2 TYPE STRING,
STAT3 TYPE STRING,
DSIG3 TYPE STRING,
NXTZ3 TYPE STRING,
STAT4 TYPE STRING,
DSIG4 TYPE STRING,
NXTZ4 TYPE STRING,
BUKRS TYPE STRING,
PRNTSK TYPE STRING,
LOGPAPER TYPE STRING,
LOGKIND TYPE STRING,
DEVICE TYPE STRING,
LAYOUT TYPE STRING,
PUSER TYPE STRING,
CPRNTSK1 TYPE STRING,
CPRNTSK2 TYPE STRING,
DESCR TYPE STRING,
TITLE TYPE STRING,
MOVEMENT TYPE STRING,
PATH TYPE STRING,
ROUTINE TYPE STRING,
BWARTS TYPE STRING,
BLARTS TYPE STRING,
VGARTS TYPE STRING,
AUARTS TYPE STRING,
FKARTS TYPE STRING,
LFARTS TYPE STRING,
GITYPE TYPE STRING,
LINE_ITEMS TYPE STRING,
CLEARED TYPE STRING,
TAXES TYPE STRING,
PARTNER TYPE STRING,
FI_MODULE TYPE STRING,
PRIORITY TYPE STRING,
COA TYPE STRING,
LOGPAPER_T TYPE STRING,
TYPE TYPE STRING,
LOGKIND_T TYPE STRING,
MANUAL TYPE STRING,
ACTIVE TYPE STRING,
THIRDPARTY TYPE STRING,
STEXT TYPE STRING,
SERIES TYPE STRING,
COUNTER TYPE STRING,
LOWLIMIT TYPE STRING,
UPLIMIT TYPE STRING,
LASTDATE TYPE STRING,
RFPRNTSK TYPE STRING,
RWIND TYPE STRING,
STEXT_T TYPE STRING,
PRPROG TYPE STRING,
TDPAGESLCT TYPE STRING,
TDCOPIES TYPE STRING,
TDDEST TYPE STRING,
TDPREVIEW TYPE STRING,
TDNOPREV TYPE STRING,
TDNOPRINT TYPE STRING,
TDNEWID TYPE STRING,
TDPAGEFORM TYPE STRING,
TDDATASET TYPE STRING,
TDSUFFIX1 TYPE STRING,
TDSUFFIX2 TYPE STRING,
TDIMMED TYPE STRING,
TDDELETE TYPE STRING,
TDLIFETIME TYPE STRING,
TDSCHEDULE TYPE STRING,
TDSENDDATE TYPE STRING,
TDSENDTIME TYPE STRING,
TDTELELAND TYPE STRING,
TDTELENUM TYPE STRING,
TDTELENUME TYPE STRING,
TDTITLE TYPE STRING,
TDAPPL TYPE STRING,
TDPRINTER TYPE STRING,
TDDRIVER TYPE STRING,
TDABAP TYPE STRING,
TDOTFCALL TYPE STRING,
TDOTFTYPE TYPE STRING,
TDSPOOLID TYPE STRING,
TDFAXID TYPE STRING,
TDMAILID TYPE STRING,
TDPAGES TYPE STRING,
TDFORMS TYPE STRING,
TDDEVICE TYPE STRING,
TDWARNINGS TYPE STRING,
TDSCREEN TYPE STRING,
TDSCDRIVER TYPE STRING,
TDSCABAP TYPE STRING,
TDPROGRAM TYPE STRING,
TDTEST TYPE STRING,
TDSCRNPOS TYPE STRING,
TDCOVER TYPE STRING,
TDCOVTITLE TYPE STRING,
TDRECEIVER TYPE STRING,
TDDIVISION TYPE STRING,
TDAUTORITY TYPE STRING,
TDARMOD TYPE STRING,
TDIEXIT TYPE STRING,
USEREXIT TYPE STRING,
TDGETOTF TYPE STRING,
TDRTL TYPE STRING,
FAXFORMAT TYPE STRING,
TDFAXUSER TYPE STRING,
RQPOSNAME TYPE STRING,
TDFINAL TYPE STRING,
BCS_REQST TYPE STRING,
BCS_STATUS TYPE STRING,
LEGALDOC TYPE STRING,
AFIL1 TYPE STRING,
BFIL1 TYPE STRING,
AFIL2 TYPE STRING,
BFIL2 TYPE STRING,
AFIL3 TYPE STRING,
BFIL3 TYPE STRING,
AFIL4 TYPE STRING,
BFIL4 TYPE STRING,END OF T_EKKO_STR. DATA: WA_J_2GLPRPDREF_STR type T_EKKO_STR. DATA: ld_text TYPE string. LOOP AT IT_EKKO INTO WA_EKKO. MOVE-CORRESPONDING wa_EKKO TO WA_EKKO_STR. CONCATENATE: sy-vline
WA_J_2GLPRPDREF_STR-SELBX sy-vline
WA_J_2GLPRPDREF_STR-PSTBX sy-vline
WA_J_2GLPRPDREF_STR-ICONL sy-vline
WA_J_2GLPRPDREF_STR-ICONS sy-vline
WA_J_2GLPRPDREF_STR-MANDT sy-vline
WA_J_2GLPRPDREF_STR-DOCUCATEG sy-vline
WA_J_2GLPRPDREF_STR-SAPDOC sy-vline
WA_J_2GLPRPDREF_STR-GJAHR sy-vline
WA_J_2GLPRPDREF_STR-GIDOC sy-vline
WA_J_2GLPRPDREF_STR-DEVID sy-vline
WA_J_2GLPRPDREF_STR-CRDAT sy-vline
WA_J_2GLPRPDREF_STR-AEDAT sy-vline
WA_J_2GLPRPDREF_STR-AENAM sy-vline
WA_J_2GLPRPDREF_STR-STAT1 sy-vline
WA_J_2GLPRPDREF_STR-DSIG1 sy-vline
WA_J_2GLPRPDREF_STR-NXTZ1 sy-vline
WA_J_2GLPRPDREF_STR-STAT2 sy-vline
WA_J_2GLPRPDREF_STR-DSIG2 sy-vline
WA_J_2GLPRPDREF_STR-NXTZ2 sy-vline
WA_J_2GLPRPDREF_STR-STAT3 sy-vline
WA_J_2GLPRPDREF_STR-DSIG3 sy-vline
WA_J_2GLPRPDREF_STR-NXTZ3 sy-vline
WA_J_2GLPRPDREF_STR-STAT4 sy-vline
WA_J_2GLPRPDREF_STR-DSIG4 sy-vline
WA_J_2GLPRPDREF_STR-NXTZ4 sy-vline
WA_J_2GLPRPDREF_STR-BUKRS sy-vline
WA_J_2GLPRPDREF_STR-PRNTSK sy-vline
WA_J_2GLPRPDREF_STR-LOGPAPER sy-vline
WA_J_2GLPRPDREF_STR-LOGKIND sy-vline
WA_J_2GLPRPDREF_STR-DEVICE sy-vline
WA_J_2GLPRPDREF_STR-LAYOUT sy-vline
WA_J_2GLPRPDREF_STR-PUSER sy-vline
WA_J_2GLPRPDREF_STR-CPRNTSK1 sy-vline
WA_J_2GLPRPDREF_STR-CPRNTSK2 sy-vline
WA_J_2GLPRPDREF_STR-DESCR sy-vline
WA_J_2GLPRPDREF_STR-TITLE sy-vline
WA_J_2GLPRPDREF_STR-MOVEMENT sy-vline
WA_J_2GLPRPDREF_STR-PATH sy-vline
WA_J_2GLPRPDREF_STR-ROUTINE sy-vline
WA_J_2GLPRPDREF_STR-BWARTS sy-vline
WA_J_2GLPRPDREF_STR-BLARTS sy-vline
WA_J_2GLPRPDREF_STR-VGARTS sy-vline
WA_J_2GLPRPDREF_STR-AUARTS sy-vline
WA_J_2GLPRPDREF_STR-FKARTS sy-vline
WA_J_2GLPRPDREF_STR-LFARTS sy-vline
WA_J_2GLPRPDREF_STR-GITYPE sy-vline
WA_J_2GLPRPDREF_STR-LINE_ITEMS sy-vline
WA_J_2GLPRPDREF_STR-CLEARED sy-vline
WA_J_2GLPRPDREF_STR-TAXES sy-vline
WA_J_2GLPRPDREF_STR-PARTNER sy-vline
WA_J_2GLPRPDREF_STR-FI_MODULE sy-vline
WA_J_2GLPRPDREF_STR-PRIORITY sy-vline
WA_J_2GLPRPDREF_STR-COA sy-vline
WA_J_2GLPRPDREF_STR-LOGPAPER_T sy-vline
WA_J_2GLPRPDREF_STR-TYPE sy-vline
WA_J_2GLPRPDREF_STR-LOGKIND_T sy-vline
WA_J_2GLPRPDREF_STR-MANUAL sy-vline
WA_J_2GLPRPDREF_STR-ACTIVE sy-vline
WA_J_2GLPRPDREF_STR-THIRDPARTY sy-vline
WA_J_2GLPRPDREF_STR-STEXT sy-vline
WA_J_2GLPRPDREF_STR-SERIES sy-vline
WA_J_2GLPRPDREF_STR-COUNTER sy-vline
WA_J_2GLPRPDREF_STR-LOWLIMIT sy-vline
WA_J_2GLPRPDREF_STR-UPLIMIT sy-vline
WA_J_2GLPRPDREF_STR-LASTDATE sy-vline
WA_J_2GLPRPDREF_STR-RFPRNTSK sy-vline
WA_J_2GLPRPDREF_STR-RWIND sy-vline
WA_J_2GLPRPDREF_STR-STEXT_T sy-vline
WA_J_2GLPRPDREF_STR-PRPROG sy-vline
WA_J_2GLPRPDREF_STR-TDPAGESLCT sy-vline
WA_J_2GLPRPDREF_STR-TDCOPIES sy-vline
WA_J_2GLPRPDREF_STR-TDDEST sy-vline
WA_J_2GLPRPDREF_STR-TDPREVIEW sy-vline
WA_J_2GLPRPDREF_STR-TDNOPREV sy-vline
WA_J_2GLPRPDREF_STR-TDNOPRINT sy-vline
WA_J_2GLPRPDREF_STR-TDNEWID sy-vline
WA_J_2GLPRPDREF_STR-TDPAGEFORM sy-vline
WA_J_2GLPRPDREF_STR-TDDATASET sy-vline
WA_J_2GLPRPDREF_STR-TDSUFFIX1 sy-vline
WA_J_2GLPRPDREF_STR-TDSUFFIX2 sy-vline
WA_J_2GLPRPDREF_STR-TDIMMED sy-vline
WA_J_2GLPRPDREF_STR-TDDELETE sy-vline
WA_J_2GLPRPDREF_STR-TDLIFETIME sy-vline
WA_J_2GLPRPDREF_STR-TDSCHEDULE sy-vline
WA_J_2GLPRPDREF_STR-TDSENDDATE sy-vline
WA_J_2GLPRPDREF_STR-TDSENDTIME sy-vline
WA_J_2GLPRPDREF_STR-TDTELELAND sy-vline
WA_J_2GLPRPDREF_STR-TDTELENUM sy-vline
WA_J_2GLPRPDREF_STR-TDTELENUME sy-vline
WA_J_2GLPRPDREF_STR-TDTITLE sy-vline
WA_J_2GLPRPDREF_STR-TDAPPL sy-vline
WA_J_2GLPRPDREF_STR-TDPRINTER sy-vline
WA_J_2GLPRPDREF_STR-TDDRIVER sy-vline
WA_J_2GLPRPDREF_STR-TDABAP sy-vline
WA_J_2GLPRPDREF_STR-TDOTFCALL sy-vline
WA_J_2GLPRPDREF_STR-TDOTFTYPE sy-vline
WA_J_2GLPRPDREF_STR-TDSPOOLID sy-vline
WA_J_2GLPRPDREF_STR-TDFAXID sy-vline
WA_J_2GLPRPDREF_STR-TDMAILID sy-vline
WA_J_2GLPRPDREF_STR-TDPAGES sy-vline
WA_J_2GLPRPDREF_STR-TDFORMS sy-vline
WA_J_2GLPRPDREF_STR-TDDEVICE sy-vline
WA_J_2GLPRPDREF_STR-TDWARNINGS sy-vline
WA_J_2GLPRPDREF_STR-TDSCREEN sy-vline
WA_J_2GLPRPDREF_STR-TDSCDRIVER sy-vline
WA_J_2GLPRPDREF_STR-TDSCABAP sy-vline
WA_J_2GLPRPDREF_STR-TDPROGRAM sy-vline
WA_J_2GLPRPDREF_STR-TDTEST sy-vline
WA_J_2GLPRPDREF_STR-TDSCRNPOS sy-vline
WA_J_2GLPRPDREF_STR-TDCOVER sy-vline
WA_J_2GLPRPDREF_STR-TDCOVTITLE sy-vline
WA_J_2GLPRPDREF_STR-TDRECEIVER sy-vline
WA_J_2GLPRPDREF_STR-TDDIVISION sy-vline
WA_J_2GLPRPDREF_STR-TDAUTORITY sy-vline
WA_J_2GLPRPDREF_STR-TDARMOD sy-vline
WA_J_2GLPRPDREF_STR-TDIEXIT sy-vline
WA_J_2GLPRPDREF_STR-USEREXIT sy-vline
WA_J_2GLPRPDREF_STR-TDGETOTF sy-vline
WA_J_2GLPRPDREF_STR-TDRTL sy-vline
WA_J_2GLPRPDREF_STR-FAXFORMAT sy-vline
WA_J_2GLPRPDREF_STR-TDFAXUSER sy-vline
WA_J_2GLPRPDREF_STR-RQPOSNAME sy-vline
WA_J_2GLPRPDREF_STR-TDFINAL sy-vline
WA_J_2GLPRPDREF_STR-BCS_REQST sy-vline
WA_J_2GLPRPDREF_STR-BCS_STATUS sy-vline
WA_J_2GLPRPDREF_STR-LEGALDOC sy-vline
WA_J_2GLPRPDREF_STR-AFIL1 sy-vline
WA_J_2GLPRPDREF_STR-BFIL1 sy-vline
WA_J_2GLPRPDREF_STR-AFIL2 sy-vline
WA_J_2GLPRPDREF_STR-BFIL2 sy-vline
WA_J_2GLPRPDREF_STR-AFIL3 sy-vline
WA_J_2GLPRPDREF_STR-BFIL3 sy-vline
WA_J_2GLPRPDREF_STR-AFIL4 sy-vline
WA_J_2GLPRPDREF_STR-BFIL4 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.