ABAP Select data from SAP table PA0795 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 PA0795 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 PA0795. 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 PA0795 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_PA0795 TYPE STANDARD TABLE OF PA0795,
      WA_PA0795 TYPE PA0795,
      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: <PA0795> TYPE PA0795.

*Process all fields in table header/work area as string values
  PERFORM process_as_string_field_values CHANGING wa_PA0795.

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM PA0795
  INTO TABLE IT_PA0795.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM PA0795
*  INTO TABLE @DATA(IT_PA07952).
*--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_PA0795 INDEX 1 INTO DATA(WA_PA07952).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_PA0795 ASSIGNING <PA0795>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<PA0795>-MANDT = 1.
<PA0795>-PERNR = 1.
<PA0795>-SUBTY = 1.
<PA0795>-OBJPS = 1.
<PA0795>-SPRPS = 1.
ENDLOOP.

LOOP AT IT_PA0795 INTO WA_PA0795.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_PA0795-ENDDA, sy-vline,
WA_PA0795-BEGDA, sy-vline,
WA_PA0795-SEQNR, sy-vline,
WA_PA0795-AEDTM, sy-vline,
WA_PA0795-UNAME, sy-vline,
WA_PA0795-HISTO, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PA0795 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_PA0795 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_PA0795 INTO WA_PA0795. *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_PA0795_STR,
MANDT TYPE STRING,
PERNR TYPE STRING,
SUBTY TYPE STRING,
OBJPS TYPE STRING,
SPRPS TYPE STRING,
ENDDA TYPE STRING,
BEGDA TYPE STRING,
SEQNR TYPE STRING,
AEDTM TYPE STRING,
UNAME TYPE STRING,
HISTO TYPE STRING,
ITXEX TYPE STRING,
REFEX TYPE STRING,
ORDEX TYPE STRING,
ITBLD TYPE STRING,
PREAS TYPE STRING,
FLAG1 TYPE STRING,
FLAG2 TYPE STRING,
FLAG3 TYPE STRING,
FLAG4 TYPE STRING,
RESE1 TYPE STRING,
RESE2 TYPE STRING,
GRPVL TYPE STRING,
TYPEC TYPE STRING,
CTNUM TYPE STRING,
CTBEG TYPE STRING,
CTEND TYPE STRING,
CSTAT TYPE STRING,
RENCD TYPE STRING,
SBG01 TYPE STRING,
SEN01 TYPE STRING,
SCD01 TYPE STRING,
SCL01 TYPE STRING,
SDN01 TYPE STRING,
SST01 TYPE STRING,
SHQ01 TYPE STRING,
SBG02 TYPE STRING,
SEN02 TYPE STRING,
SCD02 TYPE STRING,
SCL02 TYPE STRING,
SDN02 TYPE STRING,
SST02 TYPE STRING,
SHQ02 TYPE STRING,
SBG03 TYPE STRING,
SEN03 TYPE STRING,
SCD03 TYPE STRING,
SCL03 TYPE STRING,
SDN03 TYPE STRING,
SST03 TYPE STRING,
SHQ03 TYPE STRING,
SBG04 TYPE STRING,
SEN04 TYPE STRING,
SCD04 TYPE STRING,
SCL04 TYPE STRING,
SDN04 TYPE STRING,
SST04 TYPE STRING,
SHQ04 TYPE STRING,
SBG05 TYPE STRING,
SEN05 TYPE STRING,
SCD05 TYPE STRING,
SCL05 TYPE STRING,
SDN05 TYPE STRING,
SST05 TYPE STRING,
SHQ05 TYPE STRING,
SBG06 TYPE STRING,
SEN06 TYPE STRING,
SCD06 TYPE STRING,
SCL06 TYPE STRING,
SDN06 TYPE STRING,
SST06 TYPE STRING,
SHQ06 TYPE STRING,
SBG07 TYPE STRING,
SEN07 TYPE STRING,
SCD07 TYPE STRING,
SCL07 TYPE STRING,
SDN07 TYPE STRING,
SST07 TYPE STRING,
SHQ07 TYPE STRING,
SBG08 TYPE STRING,
SEN08 TYPE STRING,
SCD08 TYPE STRING,
SCL08 TYPE STRING,
SDN08 TYPE STRING,
SST08 TYPE STRING,
SHQ08 TYPE STRING,
SBG09 TYPE STRING,
SEN09 TYPE STRING,
SCD09 TYPE STRING,
SCL09 TYPE STRING,
SDN09 TYPE STRING,
SST09 TYPE STRING,
SHQ09 TYPE STRING,
SBG10 TYPE STRING,
SEN10 TYPE STRING,
SCD10 TYPE STRING,
SCL10 TYPE STRING,
SDN10 TYPE STRING,
SST10 TYPE STRING,
SHQ10 TYPE STRING,
SBG11 TYPE STRING,
SEN11 TYPE STRING,
SCD11 TYPE STRING,
SCL11 TYPE STRING,
SDN11 TYPE STRING,
SST11 TYPE STRING,
SHQ11 TYPE STRING,
SBG12 TYPE STRING,
SEN12 TYPE STRING,
SCD12 TYPE STRING,
SCL12 TYPE STRING,
SDN12 TYPE STRING,
SST12 TYPE STRING,
SHQ12 TYPE STRING,
SBG13 TYPE STRING,
SEN13 TYPE STRING,
SCD13 TYPE STRING,
SCL13 TYPE STRING,
SDN13 TYPE STRING,
SST13 TYPE STRING,
SHQ13 TYPE STRING,
SBG14 TYPE STRING,
SEN14 TYPE STRING,
SCD14 TYPE STRING,
SCL14 TYPE STRING,
SDN14 TYPE STRING,
SST14 TYPE STRING,
SHQ14 TYPE STRING,
SBG15 TYPE STRING,
SEN15 TYPE STRING,
SCD15 TYPE STRING,
SCL15 TYPE STRING,
SDN15 TYPE STRING,
SST15 TYPE STRING,
SHQ15 TYPE STRING,
SBG16 TYPE STRING,
SEN16 TYPE STRING,
SCD16 TYPE STRING,
SCL16 TYPE STRING,
SDN16 TYPE STRING,
SST16 TYPE STRING,
SHQ16 TYPE STRING,
SBG17 TYPE STRING,
SEN17 TYPE STRING,
SCD17 TYPE STRING,
SCL17 TYPE STRING,
SDN17 TYPE STRING,
SST17 TYPE STRING,
SHQ17 TYPE STRING,
SBG18 TYPE STRING,
SEN18 TYPE STRING,
SCD18 TYPE STRING,
SCL18 TYPE STRING,
SDN18 TYPE STRING,
SST18 TYPE STRING,
SHQ18 TYPE STRING,
SBG19 TYPE STRING,
SEN19 TYPE STRING,
SCD19 TYPE STRING,
SCL19 TYPE STRING,
SDN19 TYPE STRING,
SST19 TYPE STRING,
SHQ19 TYPE STRING,
SBG20 TYPE STRING,
SEN20 TYPE STRING,
SCD20 TYPE STRING,
SCL20 TYPE STRING,
SDN20 TYPE STRING,
SST20 TYPE STRING,
SHQ20 TYPE STRING,END OF T_EKKO_STR. DATA: WA_PA0795_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_PA0795_STR-MANDT sy-vline
WA_PA0795_STR-PERNR sy-vline
WA_PA0795_STR-SUBTY sy-vline
WA_PA0795_STR-OBJPS sy-vline
WA_PA0795_STR-SPRPS sy-vline
WA_PA0795_STR-ENDDA sy-vline
WA_PA0795_STR-BEGDA sy-vline
WA_PA0795_STR-SEQNR sy-vline
WA_PA0795_STR-AEDTM sy-vline
WA_PA0795_STR-UNAME sy-vline
WA_PA0795_STR-HISTO sy-vline
WA_PA0795_STR-ITXEX sy-vline
WA_PA0795_STR-REFEX sy-vline
WA_PA0795_STR-ORDEX sy-vline
WA_PA0795_STR-ITBLD sy-vline
WA_PA0795_STR-PREAS sy-vline
WA_PA0795_STR-FLAG1 sy-vline
WA_PA0795_STR-FLAG2 sy-vline
WA_PA0795_STR-FLAG3 sy-vline
WA_PA0795_STR-FLAG4 sy-vline
WA_PA0795_STR-RESE1 sy-vline
WA_PA0795_STR-RESE2 sy-vline
WA_PA0795_STR-GRPVL sy-vline
WA_PA0795_STR-TYPEC sy-vline
WA_PA0795_STR-CTNUM sy-vline
WA_PA0795_STR-CTBEG sy-vline
WA_PA0795_STR-CTEND sy-vline
WA_PA0795_STR-CSTAT sy-vline
WA_PA0795_STR-RENCD sy-vline
WA_PA0795_STR-SBG01 sy-vline
WA_PA0795_STR-SEN01 sy-vline
WA_PA0795_STR-SCD01 sy-vline
WA_PA0795_STR-SCL01 sy-vline
WA_PA0795_STR-SDN01 sy-vline
WA_PA0795_STR-SST01 sy-vline
WA_PA0795_STR-SHQ01 sy-vline
WA_PA0795_STR-SBG02 sy-vline
WA_PA0795_STR-SEN02 sy-vline
WA_PA0795_STR-SCD02 sy-vline
WA_PA0795_STR-SCL02 sy-vline
WA_PA0795_STR-SDN02 sy-vline
WA_PA0795_STR-SST02 sy-vline
WA_PA0795_STR-SHQ02 sy-vline
WA_PA0795_STR-SBG03 sy-vline
WA_PA0795_STR-SEN03 sy-vline
WA_PA0795_STR-SCD03 sy-vline
WA_PA0795_STR-SCL03 sy-vline
WA_PA0795_STR-SDN03 sy-vline
WA_PA0795_STR-SST03 sy-vline
WA_PA0795_STR-SHQ03 sy-vline
WA_PA0795_STR-SBG04 sy-vline
WA_PA0795_STR-SEN04 sy-vline
WA_PA0795_STR-SCD04 sy-vline
WA_PA0795_STR-SCL04 sy-vline
WA_PA0795_STR-SDN04 sy-vline
WA_PA0795_STR-SST04 sy-vline
WA_PA0795_STR-SHQ04 sy-vline
WA_PA0795_STR-SBG05 sy-vline
WA_PA0795_STR-SEN05 sy-vline
WA_PA0795_STR-SCD05 sy-vline
WA_PA0795_STR-SCL05 sy-vline
WA_PA0795_STR-SDN05 sy-vline
WA_PA0795_STR-SST05 sy-vline
WA_PA0795_STR-SHQ05 sy-vline
WA_PA0795_STR-SBG06 sy-vline
WA_PA0795_STR-SEN06 sy-vline
WA_PA0795_STR-SCD06 sy-vline
WA_PA0795_STR-SCL06 sy-vline
WA_PA0795_STR-SDN06 sy-vline
WA_PA0795_STR-SST06 sy-vline
WA_PA0795_STR-SHQ06 sy-vline
WA_PA0795_STR-SBG07 sy-vline
WA_PA0795_STR-SEN07 sy-vline
WA_PA0795_STR-SCD07 sy-vline
WA_PA0795_STR-SCL07 sy-vline
WA_PA0795_STR-SDN07 sy-vline
WA_PA0795_STR-SST07 sy-vline
WA_PA0795_STR-SHQ07 sy-vline
WA_PA0795_STR-SBG08 sy-vline
WA_PA0795_STR-SEN08 sy-vline
WA_PA0795_STR-SCD08 sy-vline
WA_PA0795_STR-SCL08 sy-vline
WA_PA0795_STR-SDN08 sy-vline
WA_PA0795_STR-SST08 sy-vline
WA_PA0795_STR-SHQ08 sy-vline
WA_PA0795_STR-SBG09 sy-vline
WA_PA0795_STR-SEN09 sy-vline
WA_PA0795_STR-SCD09 sy-vline
WA_PA0795_STR-SCL09 sy-vline
WA_PA0795_STR-SDN09 sy-vline
WA_PA0795_STR-SST09 sy-vline
WA_PA0795_STR-SHQ09 sy-vline
WA_PA0795_STR-SBG10 sy-vline
WA_PA0795_STR-SEN10 sy-vline
WA_PA0795_STR-SCD10 sy-vline
WA_PA0795_STR-SCL10 sy-vline
WA_PA0795_STR-SDN10 sy-vline
WA_PA0795_STR-SST10 sy-vline
WA_PA0795_STR-SHQ10 sy-vline
WA_PA0795_STR-SBG11 sy-vline
WA_PA0795_STR-SEN11 sy-vline
WA_PA0795_STR-SCD11 sy-vline
WA_PA0795_STR-SCL11 sy-vline
WA_PA0795_STR-SDN11 sy-vline
WA_PA0795_STR-SST11 sy-vline
WA_PA0795_STR-SHQ11 sy-vline
WA_PA0795_STR-SBG12 sy-vline
WA_PA0795_STR-SEN12 sy-vline
WA_PA0795_STR-SCD12 sy-vline
WA_PA0795_STR-SCL12 sy-vline
WA_PA0795_STR-SDN12 sy-vline
WA_PA0795_STR-SST12 sy-vline
WA_PA0795_STR-SHQ12 sy-vline
WA_PA0795_STR-SBG13 sy-vline
WA_PA0795_STR-SEN13 sy-vline
WA_PA0795_STR-SCD13 sy-vline
WA_PA0795_STR-SCL13 sy-vline
WA_PA0795_STR-SDN13 sy-vline
WA_PA0795_STR-SST13 sy-vline
WA_PA0795_STR-SHQ13 sy-vline
WA_PA0795_STR-SBG14 sy-vline
WA_PA0795_STR-SEN14 sy-vline
WA_PA0795_STR-SCD14 sy-vline
WA_PA0795_STR-SCL14 sy-vline
WA_PA0795_STR-SDN14 sy-vline
WA_PA0795_STR-SST14 sy-vline
WA_PA0795_STR-SHQ14 sy-vline
WA_PA0795_STR-SBG15 sy-vline
WA_PA0795_STR-SEN15 sy-vline
WA_PA0795_STR-SCD15 sy-vline
WA_PA0795_STR-SCL15 sy-vline
WA_PA0795_STR-SDN15 sy-vline
WA_PA0795_STR-SST15 sy-vline
WA_PA0795_STR-SHQ15 sy-vline
WA_PA0795_STR-SBG16 sy-vline
WA_PA0795_STR-SEN16 sy-vline
WA_PA0795_STR-SCD16 sy-vline
WA_PA0795_STR-SCL16 sy-vline
WA_PA0795_STR-SDN16 sy-vline
WA_PA0795_STR-SST16 sy-vline
WA_PA0795_STR-SHQ16 sy-vline
WA_PA0795_STR-SBG17 sy-vline
WA_PA0795_STR-SEN17 sy-vline
WA_PA0795_STR-SCD17 sy-vline
WA_PA0795_STR-SCL17 sy-vline
WA_PA0795_STR-SDN17 sy-vline
WA_PA0795_STR-SST17 sy-vline
WA_PA0795_STR-SHQ17 sy-vline
WA_PA0795_STR-SBG18 sy-vline
WA_PA0795_STR-SEN18 sy-vline
WA_PA0795_STR-SCD18 sy-vline
WA_PA0795_STR-SCL18 sy-vline
WA_PA0795_STR-SDN18 sy-vline
WA_PA0795_STR-SST18 sy-vline
WA_PA0795_STR-SHQ18 sy-vline
WA_PA0795_STR-SBG19 sy-vline
WA_PA0795_STR-SEN19 sy-vline
WA_PA0795_STR-SCD19 sy-vline
WA_PA0795_STR-SCL19 sy-vline
WA_PA0795_STR-SDN19 sy-vline
WA_PA0795_STR-SST19 sy-vline
WA_PA0795_STR-SHQ19 sy-vline
WA_PA0795_STR-SBG20 sy-vline
WA_PA0795_STR-SEN20 sy-vline
WA_PA0795_STR-SCD20 sy-vline
WA_PA0795_STR-SCL20 sy-vline
WA_PA0795_STR-SDN20 sy-vline
WA_PA0795_STR-SST20 sy-vline
WA_PA0795_STR-SHQ20 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.