ABAP Select data from SAP table P44_STAT_BCS 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 P44_STAT_BCS 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 P44_STAT_BCS. 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 P44_STAT_BCS 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_P44_STAT_BCS TYPE STANDARD TABLE OF P44_STAT_BCS, WA_P44_STAT_BCS TYPE P44_STAT_BCS, 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: <P44_STAT_BCS> TYPE P44_STAT_BCS. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_P44_STAT_BCS. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM P44_STAT_BCS INTO TABLE IT_P44_STAT_BCS. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM P44_STAT_BCS * INTO TABLE @DATA(IT_P44_STAT_BCS2). *--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_P44_STAT_BCS INDEX 1 INTO DATA(WA_P44_STAT_BCS2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_P44_STAT_BCS ASSIGNING <P44_STAT_BCS>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<P44_STAT_BCS>-VUOSI = 1.
<P44_STAT_BCS>-NELJ = 1.
<P44_STAT_BCS>-JAKSOAP = 1.
<P44_STAT_BCS>-JAKSOLP = 1.
<P44_STAT_BCS>-TEOLALA = 1.
ENDLOOP. LOOP AT IT_P44_STAT_BCS INTO WA_P44_STAT_BCS. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_P44_STAT_BCS-OSASTOID, sy-vline,
WA_P44_STAT_BCS-YRITYSID, sy-vline,
WA_P44_STAT_BCS-TOIMIPID, sy-vline,
WA_P44_STAT_BCS-VASTID, sy-vline,
WA_P44_STAT_BCS-VAATIVTP, sy-vline,
WA_P44_STAT_BCS-VAATIVLK, sy-vline.
ENDLOOP. *Add any further fields from structure WA_P44_STAT_BCS 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_P44_STAT_BCS 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_P44_STAT_BCS INTO WA_P44_STAT_BCS. *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.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_P44_STAT_BCS_STR,
VUOSI TYPE STRING,
NELJ TYPE STRING,
JAKSOAP TYPE STRING,
JAKSOLP TYPE STRING,
TEOLALA TYPE STRING,
OSASTOID TYPE STRING,
YRITYSID TYPE STRING,
TOIMIPID TYPE STRING,
VASTID TYPE STRING,
VAATIVTP TYPE STRING,
VAATIVLK TYPE STRING,
KUNTANRO TYPE STRING,
PKL TYPE STRING,
HETU TYPE STRING,
OMAHENRO TYPE STRING,
SP TYPE STRING,
TSALKPVM TYPE STRING,
TSLOPPVM TYPE STRING,
TSKESTO TYPE STRING,
TSLAJI TYPE STRING,
AMMID TYPE STRING,
KOKEMVL TYPE STRING,
TESEK TYPE STRING,
TSOPETT TYPE STRING,
TSMUUT TYPE STRING,
KOKEMV TYPE STRING,
TEHTID TYPE STRING,
LOMAOIKV TYPE STRING,
LOMAOIK TYPE STRING,
TUPALKJA TYPE STRING,
TYOAIKAM TYPE STRING,
SVTAIKA TYPE STRING,
PALKKPER TYPE STRING,
PRVAATIV TYPE STRING,
TVR TYPE STRING,
TEHTPALK TYPE STRING,
HEKOPALK TYPE STRING,
PERTUPA TYPE STRING,
TYKOLISA TYPE STRING,
AMTUTLIS TYPE STRING,
KAUPALK TYPE STRING,
KAKAUPAL TYPE STRING,
KKPALKKA TYPE STRING,
KKSUORPK TYPE STRING,
KKSUORPM TYPE STRING,
LISPALVV TYPE STRING,
KOKPPALK TYPE STRING,
ERIVALIS TYPE STRING,
PJARMUPA TYPE STRING,
SOVPALK TYPE STRING,
ERISEURP TYPE STRING,
KISUORP TYPE STRING,
MUUKYHT TYPE STRING,
AIKATUN TYPE STRING,
AIKAPALK TYPE STRING,
URAKTUN TYPE STRING,
URAKPALK TYPE STRING,
PALKTUN TYPE STRING,
PALKPALK TYPE STRING,
YLITUN TYPE STRING,
YLIKOR TYPE STRING,
SUNNTUN TYPE STRING,
LISSUKO TYPE STRING,
LISTAIKA TYPE STRING,
LISOLOS TYPE STRING,
TYLYHK TYPE STRING,
TEHDTUN TYPE STRING,
PALKYHT TYPE STRING,
SUORPALK TYPE STRING,
LUONEDUT TYPE STRING,
TESKES TYPE STRING,
KURTUPA TYPE STRING,
TAYTETUN TYPE STRING,
TAYTEPAL TYPE STRING,
EPLRAHAP TYPE STRING,
LUONEDUV TYPE STRING,
TULOSJAV TYPE STRING,
TULOSEIV TYPE STRING,
VOITTOPK TYPE STRING,
TEHDTUNV TYPE STRING,
TTRPALKV TYPE STRING,
VLPALKV TYPE STRING,
VPPALKV TYPE STRING,
SAIPALKV TYPE STRING,
MUUEPLV TYPE STRING,
SUNYLILV TYPE STRING,
YLITUNV TYPE STRING,
VTAULPAL TYPE STRING,
VTUOTPA1 TYPE STRING,
VTUOTPA2 TYPE STRING,END OF T_EKKO_STR. DATA: WA_P44_STAT_BCS_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_P44_STAT_BCS_STR-VUOSI sy-vline
WA_P44_STAT_BCS_STR-NELJ sy-vline
WA_P44_STAT_BCS_STR-JAKSOAP sy-vline
WA_P44_STAT_BCS_STR-JAKSOLP sy-vline
WA_P44_STAT_BCS_STR-TEOLALA sy-vline
WA_P44_STAT_BCS_STR-OSASTOID sy-vline
WA_P44_STAT_BCS_STR-YRITYSID sy-vline
WA_P44_STAT_BCS_STR-TOIMIPID sy-vline
WA_P44_STAT_BCS_STR-VASTID sy-vline
WA_P44_STAT_BCS_STR-VAATIVTP sy-vline
WA_P44_STAT_BCS_STR-VAATIVLK sy-vline
WA_P44_STAT_BCS_STR-KUNTANRO sy-vline
WA_P44_STAT_BCS_STR-PKL sy-vline
WA_P44_STAT_BCS_STR-HETU sy-vline
WA_P44_STAT_BCS_STR-OMAHENRO sy-vline
WA_P44_STAT_BCS_STR-SP sy-vline
WA_P44_STAT_BCS_STR-TSALKPVM sy-vline
WA_P44_STAT_BCS_STR-TSLOPPVM sy-vline
WA_P44_STAT_BCS_STR-TSKESTO sy-vline
WA_P44_STAT_BCS_STR-TSLAJI sy-vline
WA_P44_STAT_BCS_STR-AMMID sy-vline
WA_P44_STAT_BCS_STR-KOKEMVL sy-vline
WA_P44_STAT_BCS_STR-TESEK sy-vline
WA_P44_STAT_BCS_STR-TSOPETT sy-vline
WA_P44_STAT_BCS_STR-TSMUUT sy-vline
WA_P44_STAT_BCS_STR-KOKEMV sy-vline
WA_P44_STAT_BCS_STR-TEHTID sy-vline
WA_P44_STAT_BCS_STR-LOMAOIKV sy-vline
WA_P44_STAT_BCS_STR-LOMAOIK sy-vline
WA_P44_STAT_BCS_STR-TUPALKJA sy-vline
WA_P44_STAT_BCS_STR-TYOAIKAM sy-vline
WA_P44_STAT_BCS_STR-SVTAIKA sy-vline
WA_P44_STAT_BCS_STR-PALKKPER sy-vline
WA_P44_STAT_BCS_STR-PRVAATIV sy-vline
WA_P44_STAT_BCS_STR-TVR sy-vline
WA_P44_STAT_BCS_STR-TEHTPALK sy-vline
WA_P44_STAT_BCS_STR-HEKOPALK sy-vline
WA_P44_STAT_BCS_STR-PERTUPA sy-vline
WA_P44_STAT_BCS_STR-TYKOLISA sy-vline
WA_P44_STAT_BCS_STR-AMTUTLIS sy-vline
WA_P44_STAT_BCS_STR-KAUPALK sy-vline
WA_P44_STAT_BCS_STR-KAKAUPAL sy-vline
WA_P44_STAT_BCS_STR-KKPALKKA sy-vline
WA_P44_STAT_BCS_STR-KKSUORPK sy-vline
WA_P44_STAT_BCS_STR-KKSUORPM sy-vline
WA_P44_STAT_BCS_STR-LISPALVV sy-vline
WA_P44_STAT_BCS_STR-KOKPPALK sy-vline
WA_P44_STAT_BCS_STR-ERIVALIS sy-vline
WA_P44_STAT_BCS_STR-PJARMUPA sy-vline
WA_P44_STAT_BCS_STR-SOVPALK sy-vline
WA_P44_STAT_BCS_STR-ERISEURP sy-vline
WA_P44_STAT_BCS_STR-KISUORP sy-vline
WA_P44_STAT_BCS_STR-MUUKYHT sy-vline
WA_P44_STAT_BCS_STR-AIKATUN sy-vline
WA_P44_STAT_BCS_STR-AIKAPALK sy-vline
WA_P44_STAT_BCS_STR-URAKTUN sy-vline
WA_P44_STAT_BCS_STR-URAKPALK sy-vline
WA_P44_STAT_BCS_STR-PALKTUN sy-vline
WA_P44_STAT_BCS_STR-PALKPALK sy-vline
WA_P44_STAT_BCS_STR-YLITUN sy-vline
WA_P44_STAT_BCS_STR-YLIKOR sy-vline
WA_P44_STAT_BCS_STR-SUNNTUN sy-vline
WA_P44_STAT_BCS_STR-LISSUKO sy-vline
WA_P44_STAT_BCS_STR-LISTAIKA sy-vline
WA_P44_STAT_BCS_STR-LISOLOS sy-vline
WA_P44_STAT_BCS_STR-TYLYHK sy-vline
WA_P44_STAT_BCS_STR-TEHDTUN sy-vline
WA_P44_STAT_BCS_STR-PALKYHT sy-vline
WA_P44_STAT_BCS_STR-SUORPALK sy-vline
WA_P44_STAT_BCS_STR-LUONEDUT sy-vline
WA_P44_STAT_BCS_STR-TESKES sy-vline
WA_P44_STAT_BCS_STR-KURTUPA sy-vline
WA_P44_STAT_BCS_STR-TAYTETUN sy-vline
WA_P44_STAT_BCS_STR-TAYTEPAL sy-vline
WA_P44_STAT_BCS_STR-EPLRAHAP sy-vline
WA_P44_STAT_BCS_STR-LUONEDUV sy-vline
WA_P44_STAT_BCS_STR-TULOSJAV sy-vline
WA_P44_STAT_BCS_STR-TULOSEIV sy-vline
WA_P44_STAT_BCS_STR-VOITTOPK sy-vline
WA_P44_STAT_BCS_STR-TEHDTUNV sy-vline
WA_P44_STAT_BCS_STR-TTRPALKV sy-vline
WA_P44_STAT_BCS_STR-VLPALKV sy-vline
WA_P44_STAT_BCS_STR-VPPALKV sy-vline
WA_P44_STAT_BCS_STR-SAIPALKV sy-vline
WA_P44_STAT_BCS_STR-MUUEPLV sy-vline
WA_P44_STAT_BCS_STR-SUNYLILV sy-vline
WA_P44_STAT_BCS_STR-YLITUNV sy-vline
WA_P44_STAT_BCS_STR-VTAULPAL sy-vline
WA_P44_STAT_BCS_STR-VTUOTPA1 sy-vline
WA_P44_STAT_BCS_STR-VTUOTPA2 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.