ABAP Select data from SAP table AVICDCFOBJ 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 AVICDCFOBJ 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 AVICDCFOBJ. 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 AVICDCFOBJ 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_AVICDCFOBJ TYPE STANDARD TABLE OF AVICDCFOBJ, WA_AVICDCFOBJ TYPE AVICDCFOBJ, 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: <AVICDCFOBJ> TYPE AVICDCFOBJ. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_AVICDCFOBJ. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM AVICDCFOBJ INTO TABLE IT_AVICDCFOBJ. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM AVICDCFOBJ * INTO TABLE @DATA(IT_AVICDCFOBJ2). *--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_AVICDCFOBJ INDEX 1 INTO DATA(WA_AVICDCFOBJ2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_AVICDCFOBJ ASSIGNING <AVICDCFOBJ>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<AVICDCFOBJ>-MANDT = 1.
<AVICDCFOBJ>-CFOBJGUID = 1.
<AVICDCFOBJ>-CONDGUID = 1.
<AVICDCFOBJ>-CONDVALIDFROM = 1.
<AVICDCFOBJ>-REFGUID = 1.
ENDLOOP. LOOP AT IT_AVICDCFOBJ INTO WA_AVICDCFOBJ. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_AVICDCFOBJ-INTRENO, sy-vline,
WA_AVICDCFOBJ-RERF, sy-vline,
WA_AVICDCFOBJ-DERF, sy-vline,
WA_AVICDCFOBJ-TERF, sy-vline,
WA_AVICDCFOBJ-REHER, sy-vline,
WA_AVICDCFOBJ-RBEAR, sy-vline.
ENDLOOP. *Add any further fields from structure WA_AVICDCFOBJ 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_AVICDCFOBJ 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_AVICDCFOBJ INTO WA_AVICDCFOBJ. *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 FLOWTYPE CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-FLOWTYPE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-FLOWTYPE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field ORIGFLOWTYPE CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-ORIGFLOWTYPE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-ORIGFLOWTYPE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field REFFLOWREL CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-REFFLOWREL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-REFFLOWREL.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field CONDTYPE CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-CONDTYPE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-CONDTYPE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNOPY CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNOPY IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNOPY.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNORH CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNORH IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNORH.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNOAJ CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNOAJ IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNOAJ.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNOOA CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNOOA IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNOOA.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNOSR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNOSR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNOSR.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNOMR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNOMR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNOMR.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field TERMNOWT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-TERMNOWT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-TERMNOWT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field BOOK_FLOWTYPE CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-BOOK_FLOWTYPE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-BOOK_FLOWTYPE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field BOOK_REFFLOWREL CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-BOOK_REFFLOWREL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-BOOK_REFFLOWREL.
WRITE:/ 'New Value:', ld_input.
*Conversion exit EXCRT, internal->external for field CTRATE CALL FUNCTION 'CONVERSION_EXIT_EXCRT_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-CTRATE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-CTRATE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit EXCRT, internal->external for field CTRATEORIG CALL FUNCTION 'CONVERSION_EXIT_EXCRT_OUTPUT' EXPORTING input = WA_AVICDCFOBJ-CTRATEORIG IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_AVICDCFOBJ-CTRATEORIG.
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_AVICDCFOBJ_STR,
MANDT TYPE STRING,
CFOBJGUID TYPE STRING,
CONDGUID TYPE STRING,
CONDVALIDFROM TYPE STRING,
REFGUID TYPE STRING,
INTRENO TYPE STRING,
RERF TYPE STRING,
DERF TYPE STRING,
TERF TYPE STRING,
REHER TYPE STRING,
RBEAR TYPE STRING,
DBEAR TYPE STRING,
TBEAR TYPE STRING,
RBHER TYPE STRING,
BBWHR TYPE STRING,
BNWHR TYPE STRING,
DBERVON TYPE STRING,
SEXCLVON TYPE STRING,
SULTVON TYPE STRING,
DBERBIS TYPE STRING,
SINCLBIS TYPE STRING,
SULTBIS TYPE STRING,
DVALUT TYPE STRING,
SINCL TYPE STRING,
SVINCL TYPE STRING,
SVULT TYPE STRING,
DFAELL TYPE STRING,
SFINCL TYPE STRING,
SFULT TYPE STRING,
DDISPO TYPE STRING,
SINCLVERR TYPE STRING,
SULTVERR TYPE STRING,
ATAGE TYPE STRING,
ABASTAGE TYPE STRING,
APERTAGE TYPE STRING,
STGMETH TYPE STRING,
STGBASIS TYPE STRING,
SZBMETH TYPE STRING,
DBPERIOD TYPE STRING,
SPAEXCL TYPE STRING,
SPAULT TYPE STRING,
DEPERIOD TYPE STRING,
SPEINCL TYPE STRING,
SPEULT TYPE STRING,
SWHRKOND TYPE STRING,
BKOND TYPE STRING,
SSTAFF TYPE STRING,
SBASIS TYPE STRING,
JSOFVERR TYPE STRING,
AMMRHY TYPE STRING,
ATTRHY TYPE STRING,
SSORTZIT TYPE STRING,
SZEITANT TYPE STRING,
SSALBAS TYPE STRING,
SKONDGRP TYPE STRING,
LCNETAMOUNT TYPE STRING,
LCGROSSAMOUNT TYPE STRING,
LCTAXAMOUNT TYPE STRING,
LOCALCURR TYPE STRING,
CCNETAMOUNT TYPE STRING,
CCGROSSAMOUNT TYPE STRING,
CCTAXAMOUNT TYPE STRING,
CONDCURR TYPE STRING,
TAXTYPE TYPE STRING,
TAXGROUP TYPE STRING,
TXJCD TYPE STRING,
ISGROSS TYPE STRING,
TAXCOUNTRY TYPE STRING,
OBJNR TYPE STRING,
WHEREFROM TYPE STRING,
FLOWTYPE TYPE STRING,
ORIGFLOWTYPE TYPE STRING,
REFFLOWREL TYPE STRING,
CFSTATUS TYPE STRING,
FDLEV TYPE STRING,
FDUPD TYPE STRING,
FDELETE TYPE STRING,
ORIGDUEDATE TYPE STRING,
CONDTYPE TYPE STRING,
TERMNOPY TYPE STRING,
TERMNORH TYPE STRING,
TERMNOAJ TYPE STRING,
TERMNOOA TYPE STRING,
TERMNOSR TYPE STRING,
TERMNOMR TYPE STRING,
TERMNOWT TYPE STRING,
ORIGEXDUEDATE TYPE STRING,
SEAPSTATUS TYPE STRING,
POSTINGDATE TYPE STRING,
DOCUMENTDATE TYPE STRING,
VALUATIONDATE TYPE STRING,
REVERSAL_FOR TYPE STRING,
REVERSAL_BY TYPE STRING,
FOLLOWUP_FOR TYPE STRING,
BOOK_FLOWTYPE TYPE STRING,
BOOK_REFFLOWREL TYPE STRING,
TAXDATE TYPE STRING,
MODDUEDATE TYPE STRING,
CALCDUEDATE TYPE STRING,
CTRULE TYPE STRING,
CTLCNETAMOUNT TYPE STRING,
CTLCGROSSAMOUNT TYPE STRING,
CTLCTAXAMOUNT TYPE STRING,
CTRATE TYPE STRING,
CTRATEORIG TYPE STRING,
CTPOSTCDCURR TYPE STRING,
CTDATEREQ TYPE STRING,
CTDATEACT TYPE STRING,
CTDATEACTORIG TYPE STRING,
CTDATEFROMCFPOS TYPE STRING,
KZ TYPE STRING,END OF T_EKKO_STR. DATA: WA_AVICDCFOBJ_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_AVICDCFOBJ_STR-MANDT sy-vline
WA_AVICDCFOBJ_STR-CFOBJGUID sy-vline
WA_AVICDCFOBJ_STR-CONDGUID sy-vline
WA_AVICDCFOBJ_STR-CONDVALIDFROM sy-vline
WA_AVICDCFOBJ_STR-REFGUID sy-vline
WA_AVICDCFOBJ_STR-INTRENO sy-vline
WA_AVICDCFOBJ_STR-RERF sy-vline
WA_AVICDCFOBJ_STR-DERF sy-vline
WA_AVICDCFOBJ_STR-TERF sy-vline
WA_AVICDCFOBJ_STR-REHER sy-vline
WA_AVICDCFOBJ_STR-RBEAR sy-vline
WA_AVICDCFOBJ_STR-DBEAR sy-vline
WA_AVICDCFOBJ_STR-TBEAR sy-vline
WA_AVICDCFOBJ_STR-RBHER sy-vline
WA_AVICDCFOBJ_STR-BBWHR sy-vline
WA_AVICDCFOBJ_STR-BNWHR sy-vline
WA_AVICDCFOBJ_STR-DBERVON sy-vline
WA_AVICDCFOBJ_STR-SEXCLVON sy-vline
WA_AVICDCFOBJ_STR-SULTVON sy-vline
WA_AVICDCFOBJ_STR-DBERBIS sy-vline
WA_AVICDCFOBJ_STR-SINCLBIS sy-vline
WA_AVICDCFOBJ_STR-SULTBIS sy-vline
WA_AVICDCFOBJ_STR-DVALUT sy-vline
WA_AVICDCFOBJ_STR-SINCL sy-vline
WA_AVICDCFOBJ_STR-SVINCL sy-vline
WA_AVICDCFOBJ_STR-SVULT sy-vline
WA_AVICDCFOBJ_STR-DFAELL sy-vline
WA_AVICDCFOBJ_STR-SFINCL sy-vline
WA_AVICDCFOBJ_STR-SFULT sy-vline
WA_AVICDCFOBJ_STR-DDISPO sy-vline
WA_AVICDCFOBJ_STR-SINCLVERR sy-vline
WA_AVICDCFOBJ_STR-SULTVERR sy-vline
WA_AVICDCFOBJ_STR-ATAGE sy-vline
WA_AVICDCFOBJ_STR-ABASTAGE sy-vline
WA_AVICDCFOBJ_STR-APERTAGE sy-vline
WA_AVICDCFOBJ_STR-STGMETH sy-vline
WA_AVICDCFOBJ_STR-STGBASIS sy-vline
WA_AVICDCFOBJ_STR-SZBMETH sy-vline
WA_AVICDCFOBJ_STR-DBPERIOD sy-vline
WA_AVICDCFOBJ_STR-SPAEXCL sy-vline
WA_AVICDCFOBJ_STR-SPAULT sy-vline
WA_AVICDCFOBJ_STR-DEPERIOD sy-vline
WA_AVICDCFOBJ_STR-SPEINCL sy-vline
WA_AVICDCFOBJ_STR-SPEULT sy-vline
WA_AVICDCFOBJ_STR-SWHRKOND sy-vline
WA_AVICDCFOBJ_STR-BKOND sy-vline
WA_AVICDCFOBJ_STR-SSTAFF sy-vline
WA_AVICDCFOBJ_STR-SBASIS sy-vline
WA_AVICDCFOBJ_STR-JSOFVERR sy-vline
WA_AVICDCFOBJ_STR-AMMRHY sy-vline
WA_AVICDCFOBJ_STR-ATTRHY sy-vline
WA_AVICDCFOBJ_STR-SSORTZIT sy-vline
WA_AVICDCFOBJ_STR-SZEITANT sy-vline
WA_AVICDCFOBJ_STR-SSALBAS sy-vline
WA_AVICDCFOBJ_STR-SKONDGRP sy-vline
WA_AVICDCFOBJ_STR-LCNETAMOUNT sy-vline
WA_AVICDCFOBJ_STR-LCGROSSAMOUNT sy-vline
WA_AVICDCFOBJ_STR-LCTAXAMOUNT sy-vline
WA_AVICDCFOBJ_STR-LOCALCURR sy-vline
WA_AVICDCFOBJ_STR-CCNETAMOUNT sy-vline
WA_AVICDCFOBJ_STR-CCGROSSAMOUNT sy-vline
WA_AVICDCFOBJ_STR-CCTAXAMOUNT sy-vline
WA_AVICDCFOBJ_STR-CONDCURR sy-vline
WA_AVICDCFOBJ_STR-TAXTYPE sy-vline
WA_AVICDCFOBJ_STR-TAXGROUP sy-vline
WA_AVICDCFOBJ_STR-TXJCD sy-vline
WA_AVICDCFOBJ_STR-ISGROSS sy-vline
WA_AVICDCFOBJ_STR-TAXCOUNTRY sy-vline
WA_AVICDCFOBJ_STR-OBJNR sy-vline
WA_AVICDCFOBJ_STR-WHEREFROM sy-vline
WA_AVICDCFOBJ_STR-FLOWTYPE sy-vline
WA_AVICDCFOBJ_STR-ORIGFLOWTYPE sy-vline
WA_AVICDCFOBJ_STR-REFFLOWREL sy-vline
WA_AVICDCFOBJ_STR-CFSTATUS sy-vline
WA_AVICDCFOBJ_STR-FDLEV sy-vline
WA_AVICDCFOBJ_STR-FDUPD sy-vline
WA_AVICDCFOBJ_STR-FDELETE sy-vline
WA_AVICDCFOBJ_STR-ORIGDUEDATE sy-vline
WA_AVICDCFOBJ_STR-CONDTYPE sy-vline
WA_AVICDCFOBJ_STR-TERMNOPY sy-vline
WA_AVICDCFOBJ_STR-TERMNORH sy-vline
WA_AVICDCFOBJ_STR-TERMNOAJ sy-vline
WA_AVICDCFOBJ_STR-TERMNOOA sy-vline
WA_AVICDCFOBJ_STR-TERMNOSR sy-vline
WA_AVICDCFOBJ_STR-TERMNOMR sy-vline
WA_AVICDCFOBJ_STR-TERMNOWT sy-vline
WA_AVICDCFOBJ_STR-ORIGEXDUEDATE sy-vline
WA_AVICDCFOBJ_STR-SEAPSTATUS sy-vline
WA_AVICDCFOBJ_STR-POSTINGDATE sy-vline
WA_AVICDCFOBJ_STR-DOCUMENTDATE sy-vline
WA_AVICDCFOBJ_STR-VALUATIONDATE sy-vline
WA_AVICDCFOBJ_STR-REVERSAL_FOR sy-vline
WA_AVICDCFOBJ_STR-REVERSAL_BY sy-vline
WA_AVICDCFOBJ_STR-FOLLOWUP_FOR sy-vline
WA_AVICDCFOBJ_STR-BOOK_FLOWTYPE sy-vline
WA_AVICDCFOBJ_STR-BOOK_REFFLOWREL sy-vline
WA_AVICDCFOBJ_STR-TAXDATE sy-vline
WA_AVICDCFOBJ_STR-MODDUEDATE sy-vline
WA_AVICDCFOBJ_STR-CALCDUEDATE sy-vline
WA_AVICDCFOBJ_STR-CTRULE sy-vline
WA_AVICDCFOBJ_STR-CTLCNETAMOUNT sy-vline
WA_AVICDCFOBJ_STR-CTLCGROSSAMOUNT sy-vline
WA_AVICDCFOBJ_STR-CTLCTAXAMOUNT sy-vline
WA_AVICDCFOBJ_STR-CTRATE sy-vline
WA_AVICDCFOBJ_STR-CTRATEORIG sy-vline
WA_AVICDCFOBJ_STR-CTPOSTCDCURR sy-vline
WA_AVICDCFOBJ_STR-CTDATEREQ sy-vline
WA_AVICDCFOBJ_STR-CTDATEACT sy-vline
WA_AVICDCFOBJ_STR-CTDATEACTORIG sy-vline
WA_AVICDCFOBJ_STR-CTDATEFROMCFPOS sy-vline
WA_AVICDCFOBJ_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.