ABAP Select data from SAP table VNJIT_D_PG_HDR 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 VNJIT_D_PG_HDR 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 VNJIT_D_PG_HDR. 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 VNJIT_D_PG_HDR 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_VNJIT_D_PG_HDR TYPE STANDARD TABLE OF VNJIT_D_PG_HDR, WA_VNJIT_D_PG_HDR TYPE VNJIT_D_PG_HDR, 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: <VNJIT_D_PG_HDR> TYPE VNJIT_D_PG_HDR. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_VNJIT_D_PG_HDR. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM VNJIT_D_PG_HDR INTO TABLE IT_VNJIT_D_PG_HDR. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM VNJIT_D_PG_HDR * INTO TABLE @DATA(IT_VNJIT_D_PG_HDR2). *--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_VNJIT_D_PG_HDR INDEX 1 INTO DATA(WA_VNJIT_D_PG_HDR2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_VNJIT_D_PG_HDR ASSIGNING <VNJIT_D_PG_HDR>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<VNJIT_D_PG_HDR>-MANDT = 1.
<VNJIT_D_PG_HDR>-DB_KEY = 1.
<VNJIT_D_PG_HDR>-PCKG_GRP_DEF_UUID = 1.
<VNJIT_D_PG_HDR>-PCKG_GRP_ID = 1.
<VNJIT_D_PG_HDR>-STATUS = 1.
ENDLOOP. LOOP AT IT_VNJIT_D_PG_HDR INTO WA_VNJIT_D_PG_HDR. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_VNJIT_D_PG_HDR-KUNNR, sy-vline,
WA_VNJIT_D_PG_HDR-ABLAD, sy-vline,
WA_VNJIT_D_PG_HDR-VSTEL, sy-vline,
WA_VNJIT_D_PG_HDR-PLANNED_SHIPPING_DT, sy-vline,
WA_VNJIT_D_PG_HDR-REQUIREMENT_DATE, sy-vline,
WA_VNJIT_D_PG_HDR-LEDAT, sy-vline.
ENDLOOP. *Add any further fields from structure WA_VNJIT_D_PG_HDR 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_VNJIT_D_PG_HDR 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_VNJIT_D_PG_HDR INTO WA_VNJIT_D_PG_HDR. *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 PCKG_GRP_ID CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_VNJIT_D_PG_HDR-PCKG_GRP_ID IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_VNJIT_D_PG_HDR-PCKG_GRP_ID.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field KUNNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_VNJIT_D_PG_HDR-KUNNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_VNJIT_D_PG_HDR-KUNNR.
WRITE:/ 'New Value:', ld_input.
*Conversion exit CUNIT, internal->external for field GEWEI CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_VNJIT_D_PG_HDR-GEWEI IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_VNJIT_D_PG_HDR-GEWEI.
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_VNJIT_D_PG_HDR_STR,
MANDT TYPE STRING,
DB_KEY TYPE STRING,
PCKG_GRP_DEF_UUID TYPE STRING,
PCKG_GRP_ID TYPE STRING,
STATUS TYPE STRING,
KUNNR TYPE STRING,
ABLAD TYPE STRING,
VSTEL TYPE STRING,
PLANNED_SHIPPING_DT TYPE STRING,
REQUIREMENT_DATE TYPE STRING,
LEDAT TYPE STRING,
GROSS_WEIGHT TYPE STRING,
GEWEI TYPE STRING,
CUST_SUP_AREA TYPE STRING,
FLDPO TYPE STRING,
WERKS TYPE STRING,
CUSTOMERUUID TYPE STRING,
MATERIALAVAILABILITYDATETIME TYPE STRING,
PRODUCTIONSTARTDATE TYPE STRING,
PRODUCTIONENDDATE TYPE STRING,
JITCOMPONENTISREORDERED TYPE STRING,
JITALTVHNDLGUNITID TYPE STRING,
JITALTVHNDLGUNITIDSHRT TYPE STRING,
CREA_DATE_TIME TYPE STRING,
CREA_UNAME TYPE STRING,
LCHG_DATE_TIME TYPE STRING,
LCHG_UNAME TYPE STRING,
DUMMY_NJIT_PCKGGRP_INCL_EEW_PS TYPE STRING,
ARCHIVING_STATUS TYPE STRING,
JITARCHIVINGSTATUS TYPE STRING,
JITPACKAGELEVEL TYPE STRING,
REPETITIVEMANUFACTURINGISALLWD TYPE STRING,
JITPACKINGGROUPISNESTED TYPE STRING,
LGORT TYPE STRING,
DELI_CREA_STAT TYPE STRING,
PICK_STAT TYPE STRING,
GOODS_MVMT_STAT TYPE STRING,
PKG_GRP_STAT TYPE STRING,
STK_TRNSFR_STAT TYPE STRING,
R2P_STAT TYPE STRING,
CP_STAT TYPE STRING,
BILL_STAT TYPE STRING,
HU_STAT TYPE STRING,
R2PCK_STAT TYPE STRING,
PACK_STAT TYPE STRING,
KZ TYPE STRING,END OF T_EKKO_STR. DATA: WA_VNJIT_D_PG_HDR_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_VNJIT_D_PG_HDR_STR-MANDT sy-vline
WA_VNJIT_D_PG_HDR_STR-DB_KEY sy-vline
WA_VNJIT_D_PG_HDR_STR-PCKG_GRP_DEF_UUID sy-vline
WA_VNJIT_D_PG_HDR_STR-PCKG_GRP_ID sy-vline
WA_VNJIT_D_PG_HDR_STR-STATUS sy-vline
WA_VNJIT_D_PG_HDR_STR-KUNNR sy-vline
WA_VNJIT_D_PG_HDR_STR-ABLAD sy-vline
WA_VNJIT_D_PG_HDR_STR-VSTEL sy-vline
WA_VNJIT_D_PG_HDR_STR-PLANNED_SHIPPING_DT sy-vline
WA_VNJIT_D_PG_HDR_STR-REQUIREMENT_DATE sy-vline
WA_VNJIT_D_PG_HDR_STR-LEDAT sy-vline
WA_VNJIT_D_PG_HDR_STR-GROSS_WEIGHT sy-vline
WA_VNJIT_D_PG_HDR_STR-GEWEI sy-vline
WA_VNJIT_D_PG_HDR_STR-CUST_SUP_AREA sy-vline
WA_VNJIT_D_PG_HDR_STR-FLDPO sy-vline
WA_VNJIT_D_PG_HDR_STR-WERKS sy-vline
WA_VNJIT_D_PG_HDR_STR-CUSTOMERUUID sy-vline
WA_VNJIT_D_PG_HDR_STR-MATERIALAVAILABILITYDATETIME sy-vline
WA_VNJIT_D_PG_HDR_STR-PRODUCTIONSTARTDATE sy-vline
WA_VNJIT_D_PG_HDR_STR-PRODUCTIONENDDATE sy-vline
WA_VNJIT_D_PG_HDR_STR-JITCOMPONENTISREORDERED sy-vline
WA_VNJIT_D_PG_HDR_STR-JITALTVHNDLGUNITID sy-vline
WA_VNJIT_D_PG_HDR_STR-JITALTVHNDLGUNITIDSHRT sy-vline
WA_VNJIT_D_PG_HDR_STR-CREA_DATE_TIME sy-vline
WA_VNJIT_D_PG_HDR_STR-CREA_UNAME sy-vline
WA_VNJIT_D_PG_HDR_STR-LCHG_DATE_TIME sy-vline
WA_VNJIT_D_PG_HDR_STR-LCHG_UNAME sy-vline
WA_VNJIT_D_PG_HDR_STR-DUMMY_NJIT_PCKGGRP_INCL_EEW_PS sy-vline
WA_VNJIT_D_PG_HDR_STR-ARCHIVING_STATUS sy-vline
WA_VNJIT_D_PG_HDR_STR-JITARCHIVINGSTATUS sy-vline
WA_VNJIT_D_PG_HDR_STR-JITPACKAGELEVEL sy-vline
WA_VNJIT_D_PG_HDR_STR-REPETITIVEMANUFACTURINGISALLWD sy-vline
WA_VNJIT_D_PG_HDR_STR-JITPACKINGGROUPISNESTED sy-vline
WA_VNJIT_D_PG_HDR_STR-LGORT sy-vline
WA_VNJIT_D_PG_HDR_STR-DELI_CREA_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-PICK_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-GOODS_MVMT_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-PKG_GRP_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-STK_TRNSFR_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-R2P_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-CP_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-BILL_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-HU_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-R2PCK_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-PACK_STAT sy-vline
WA_VNJIT_D_PG_HDR_STR-KZ sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.