ABAP Select data from SAP table V_TB2BE 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 V_TB2BE 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 V_TB2BE. 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 V_TB2BE 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_V_TB2BE TYPE STANDARD TABLE OF V_TB2BE, WA_V_TB2BE TYPE V_TB2BE, 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: <V_TB2BE> TYPE V_TB2BE. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_V_TB2BE. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM V_TB2BE INTO TABLE IT_V_TB2BE. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM V_TB2BE * INTO TABLE @DATA(IT_V_TB2BE2). *--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_V_TB2BE INDEX 1 INTO DATA(WA_V_TB2BE2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_V_TB2BE ASSIGNING <V_TB2BE>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<V_TB2BE>-MANDT = 1.
<V_TB2BE>-TCTYP = 1.
<V_TB2BE>-TDTPV = 1.
<V_TB2BE>-TDTPC = 1.
<V_TB2BE>-STATGR = 1.
ENDLOOP. LOOP AT IT_V_TB2BE INTO WA_V_TB2BE. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_V_TB2BE-BEZEI, sy-vline,
WA_V_TB2BE-BEZEI_STAT, sy-vline,
WA_V_TB2BE-BEZEI_EINK, sy-vline,
WA_V_TB2BE-BEZEI_VERK, sy-vline,
WA_V_TB2BE-VTEXT, sy-vline,
WA_V_TB2BE-INCPO, sy-vline.
ENDLOOP. *Add any further fields from structure WA_V_TB2BE 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_V_TB2BE 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_V_TB2BE INTO WA_V_TB2BE. *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_V_TB2BE_STR,
MANDT TYPE STRING,
TCTYP TYPE STRING,
TDTPV TYPE STRING,
TDTPC TYPE STRING,
STATGR TYPE STRING,
BEZEI TYPE STRING,
BEZEI_STAT TYPE STRING,
BEZEI_EINK TYPE STRING,
BEZEI_VERK TYPE STRING,
VTEXT TYPE STRING,
INCPO TYPE STRING,
DEFWAERS TYPE STRING,
DEFKURST TYPE STRING,
LTEXT TYPE STRING,
CURVW TYPE STRING,
NUMKI TYPE STRING,
TCUNCGR TYPE STRING,
TCSACHV TYPE STRING,
GBATCH TYPE STRING,
WCHUN TYPE STRING,
WCHQU TYPE STRING,
LIVAR TYPE STRING,
KAPPL_NA TYPE STRING,
KALSMK_MGT TYPE STRING,
KALSMP_MGT TYPE STRING,
TCCAT TYPE STRING,
TKONN_EX_ACT TYPE STRING,
TKONN_EX_CHECK TYPE STRING,
TC_CHANGE_CHECK TYPE STRING,
POFOST TYPE STRING,
BTBSTA_DEF TYPE STRING,
BEZEI_BTBSTA_DEF TYPE STRING,
FOL_DOC_DIR TYPE STRING,
TC_TYPE_BLOCK TYPE STRING,
PZUGR TYPE STRING,
BTBSTA_DEF_INCO TYPE STRING,
TCGROUP TYPE STRING,
DELIVDEF TYPE STRING,
PRICE_DEFAULT TYPE STRING,
PARGR TYPE STRING,
CLOSING_RULE TYPE STRING,
WB2_BEZOB TYPE STRING,
ASSO_OFF TYPE STRING,
PRCHGRP TYPE STRING,
BWREL TYPE STRING,
PRICING_TYPE TYPE STRING,
TCVARIANT TYPE STRING,
GTS_RELEVANT TYPE STRING,
EVENT_RELEVANT TYPE STRING,
LIGRU TYPE STRING,
PLANT_CONTROL TYPE STRING,
PURCHASE_PLANT TYPE STRING,
CONTEXT TYPE STRING,
TYPE_USAGE TYPE STRING,
REP_GROUP TYPE STRING,
AR_OBJECT TYPE STRING,
ITEM_HANDLING TYPE STRING,
CHANGE_DOC TYPE STRING,
DOCUMENT_INDEX TYPE STRING,
DOC_INDEX_DELETE TYPE STRING,
PARTNER_HI TYPE STRING,
BATCH_DET_ACT TYPE STRING,
TXZUF TYPE STRING,
SINGLE_ORG_DATA TYPE STRING,
FREEZE_GROUP TYPE STRING,
FREEZE_TEXT TYPE STRING,
CALL_OFF_PARTY TYPE STRING,
USE_CASE TYPE STRING,
WRART TYPE STRING,
LFART_C TYPE STRING,
LFART_V TYPE STRING,
LFART TYPE STRING,
SET_VARIANT TYPE STRING,
GTS_CHECK TYPE STRING,
FLOW_DISPLAY TYPE STRING,
FLOW_SIZE TYPE STRING,
RELEASE_LOG TYPE STRING,
PURPOSE TYPE STRING,
LOCK_FOL_DOCS TYPE STRING,
SETTL_PURPOSE TYPE STRING,
BATCH_CLASS TYPE STRING,
PPE_GROUP_CODE TYPE STRING,
DELIVDEF_TYPE TYPE STRING,
TRMRISK_CTRL TYPE STRING,
TIME_CONTROL TYPE STRING,
CEACT TYPE STRING,
PDACT TYPE STRING,
PPROT TYPE STRING,
PUSER TYPE STRING,
PAUSW TYPE STRING,
ATNAM TYPE STRING,
PARTNER_POP_UP TYPE STRING,
ITMAC TYPE STRING,END OF T_EKKO_STR. DATA: WA_V_TB2BE_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_V_TB2BE_STR-MANDT sy-vline
WA_V_TB2BE_STR-TCTYP sy-vline
WA_V_TB2BE_STR-TDTPV sy-vline
WA_V_TB2BE_STR-TDTPC sy-vline
WA_V_TB2BE_STR-STATGR sy-vline
WA_V_TB2BE_STR-BEZEI sy-vline
WA_V_TB2BE_STR-BEZEI_STAT sy-vline
WA_V_TB2BE_STR-BEZEI_EINK sy-vline
WA_V_TB2BE_STR-BEZEI_VERK sy-vline
WA_V_TB2BE_STR-VTEXT sy-vline
WA_V_TB2BE_STR-INCPO sy-vline
WA_V_TB2BE_STR-DEFWAERS sy-vline
WA_V_TB2BE_STR-DEFKURST sy-vline
WA_V_TB2BE_STR-LTEXT sy-vline
WA_V_TB2BE_STR-CURVW sy-vline
WA_V_TB2BE_STR-NUMKI sy-vline
WA_V_TB2BE_STR-TCUNCGR sy-vline
WA_V_TB2BE_STR-TCSACHV sy-vline
WA_V_TB2BE_STR-GBATCH sy-vline
WA_V_TB2BE_STR-WCHUN sy-vline
WA_V_TB2BE_STR-WCHQU sy-vline
WA_V_TB2BE_STR-LIVAR sy-vline
WA_V_TB2BE_STR-KAPPL_NA sy-vline
WA_V_TB2BE_STR-KALSMK_MGT sy-vline
WA_V_TB2BE_STR-KALSMP_MGT sy-vline
WA_V_TB2BE_STR-TCCAT sy-vline
WA_V_TB2BE_STR-TKONN_EX_ACT sy-vline
WA_V_TB2BE_STR-TKONN_EX_CHECK sy-vline
WA_V_TB2BE_STR-TC_CHANGE_CHECK sy-vline
WA_V_TB2BE_STR-POFOST sy-vline
WA_V_TB2BE_STR-BTBSTA_DEF sy-vline
WA_V_TB2BE_STR-BEZEI_BTBSTA_DEF sy-vline
WA_V_TB2BE_STR-FOL_DOC_DIR sy-vline
WA_V_TB2BE_STR-TC_TYPE_BLOCK sy-vline
WA_V_TB2BE_STR-PZUGR sy-vline
WA_V_TB2BE_STR-BTBSTA_DEF_INCO sy-vline
WA_V_TB2BE_STR-TCGROUP sy-vline
WA_V_TB2BE_STR-DELIVDEF sy-vline
WA_V_TB2BE_STR-PRICE_DEFAULT sy-vline
WA_V_TB2BE_STR-PARGR sy-vline
WA_V_TB2BE_STR-CLOSING_RULE sy-vline
WA_V_TB2BE_STR-WB2_BEZOB sy-vline
WA_V_TB2BE_STR-ASSO_OFF sy-vline
WA_V_TB2BE_STR-PRCHGRP sy-vline
WA_V_TB2BE_STR-BWREL sy-vline
WA_V_TB2BE_STR-PRICING_TYPE sy-vline
WA_V_TB2BE_STR-TCVARIANT sy-vline
WA_V_TB2BE_STR-GTS_RELEVANT sy-vline
WA_V_TB2BE_STR-EVENT_RELEVANT sy-vline
WA_V_TB2BE_STR-LIGRU sy-vline
WA_V_TB2BE_STR-PLANT_CONTROL sy-vline
WA_V_TB2BE_STR-PURCHASE_PLANT sy-vline
WA_V_TB2BE_STR-CONTEXT sy-vline
WA_V_TB2BE_STR-TYPE_USAGE sy-vline
WA_V_TB2BE_STR-REP_GROUP sy-vline
WA_V_TB2BE_STR-AR_OBJECT sy-vline
WA_V_TB2BE_STR-ITEM_HANDLING sy-vline
WA_V_TB2BE_STR-CHANGE_DOC sy-vline
WA_V_TB2BE_STR-DOCUMENT_INDEX sy-vline
WA_V_TB2BE_STR-DOC_INDEX_DELETE sy-vline
WA_V_TB2BE_STR-PARTNER_HI sy-vline
WA_V_TB2BE_STR-BATCH_DET_ACT sy-vline
WA_V_TB2BE_STR-TXZUF sy-vline
WA_V_TB2BE_STR-SINGLE_ORG_DATA sy-vline
WA_V_TB2BE_STR-FREEZE_GROUP sy-vline
WA_V_TB2BE_STR-FREEZE_TEXT sy-vline
WA_V_TB2BE_STR-CALL_OFF_PARTY sy-vline
WA_V_TB2BE_STR-USE_CASE sy-vline
WA_V_TB2BE_STR-WRART sy-vline
WA_V_TB2BE_STR-LFART_C sy-vline
WA_V_TB2BE_STR-LFART_V sy-vline
WA_V_TB2BE_STR-LFART sy-vline
WA_V_TB2BE_STR-SET_VARIANT sy-vline
WA_V_TB2BE_STR-GTS_CHECK sy-vline
WA_V_TB2BE_STR-FLOW_DISPLAY sy-vline
WA_V_TB2BE_STR-FLOW_SIZE sy-vline
WA_V_TB2BE_STR-RELEASE_LOG sy-vline
WA_V_TB2BE_STR-PURPOSE sy-vline
WA_V_TB2BE_STR-LOCK_FOL_DOCS sy-vline
WA_V_TB2BE_STR-SETTL_PURPOSE sy-vline
WA_V_TB2BE_STR-BATCH_CLASS sy-vline
WA_V_TB2BE_STR-PPE_GROUP_CODE sy-vline
WA_V_TB2BE_STR-DELIVDEF_TYPE sy-vline
WA_V_TB2BE_STR-TRMRISK_CTRL sy-vline
WA_V_TB2BE_STR-TIME_CONTROL sy-vline
WA_V_TB2BE_STR-CEACT sy-vline
WA_V_TB2BE_STR-PDACT sy-vline
WA_V_TB2BE_STR-PPROT sy-vline
WA_V_TB2BE_STR-PUSER sy-vline
WA_V_TB2BE_STR-PAUSW sy-vline
WA_V_TB2BE_STR-ATNAM sy-vline
WA_V_TB2BE_STR-PARTNER_POP_UP sy-vline
WA_V_TB2BE_STR-ITMAC sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.