ABAP Select data from SAP table PACMTCTYPSTATGRP 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 PACMTCTYPSTATGRP 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 PACMTCTYPSTATGRP. 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 PACMTCTYPSTATGRP 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_PACMTCTYPSTATGRP TYPE STANDARD TABLE OF PACMTCTYPSTATGRP,
      WA_PACMTCTYPSTATGRP TYPE PACMTCTYPSTATGRP,
      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: <PACMTCTYPSTATGRP> TYPE PACMTCTYPSTATGRP.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM PACMTCTYPSTATGRP
*  INTO TABLE @DATA(IT_PACMTCTYPSTATGRP2).
*--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_PACMTCTYPSTATGRP INDEX 1 INTO DATA(WA_PACMTCTYPSTATGRP2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_PACMTCTYPSTATGRP ASSIGNING <PACMTCTYPSTATGRP>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<PACMTCTYPSTATGRP>-MANDT = 1.
<PACMTCTYPSTATGRP>-TCTYP = 1.
<PACMTCTYPSTATGRP>-TDTPV = 1.
<PACMTCTYPSTATGRP>-TDTPC = 1.
<PACMTCTYPSTATGRP>-STATGR = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_PACMTCTYPSTATGRP-TXTGR, sy-vline,
WA_PACMTCTYPSTATGRP-INCPO, sy-vline,
WA_PACMTCTYPSTATGRP-DEFWAERS, sy-vline,
WA_PACMTCTYPSTATGRP-DEFKURST, sy-vline,
WA_PACMTCTYPSTATGRP-NUMKI, sy-vline,
WA_PACMTCTYPSTATGRP-TCUNCGR, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PACMTCTYPSTATGRP 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_PACMTCTYPSTATGRP 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_PACMTCTYPSTATGRP INTO WA_PACMTCTYPSTATGRP. *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_PACMTCTYPSTATGRP_STR,
MANDT TYPE STRING,
TCTYP TYPE STRING,
TDTPV TYPE STRING,
TDTPC TYPE STRING,
STATGR TYPE STRING,
TXTGR TYPE STRING,
INCPO TYPE STRING,
DEFWAERS TYPE STRING,
DEFKURST TYPE STRING,
NUMKI TYPE STRING,
TCUNCGR TYPE STRING,
TCSACHV TYPE STRING,
GBATCH TYPE STRING,
TCTDID TYPE STRING,
WCHUN TYPE STRING,
WCHQU TYPE STRING,
LIVAR TYPE STRING,
KAPPL_NA TYPE STRING,
KALSMK_MGT TYPE STRING,
KALSMP_MGT TYPE STRING,
TC_URL TYPE STRING,
USE_CASE TYPE STRING,
CEACT TYPE STRING,
PDACT TYPE STRING,
PPROT TYPE STRING,
PUSER TYPE STRING,
PAUSW TYPE STRING,
ATNAM 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_INCO TYPE STRING,
BTBSTA_DEF TYPE STRING,
FOL_DOC_DIR TYPE STRING,
TC_TYPE_BLOCK TYPE STRING,
PZUGR 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,
CONSOL_CONTEXT TYPE STRING,
FREEZE_GROUP TYPE STRING,
CALL_OFF_PARTY 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,
ITEM_REL_TYPE 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,
CONTRACT_TYPE TYPE STRING,
CONTRACT_SUB_TYPE TYPE STRING,END OF T_EKKO_STR. DATA: WA_PACMTCTYPSTATGRP_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_PACMTCTYPSTATGRP_STR-MANDT sy-vline
WA_PACMTCTYPSTATGRP_STR-TCTYP sy-vline
WA_PACMTCTYPSTATGRP_STR-TDTPV sy-vline
WA_PACMTCTYPSTATGRP_STR-TDTPC sy-vline
WA_PACMTCTYPSTATGRP_STR-STATGR sy-vline
WA_PACMTCTYPSTATGRP_STR-TXTGR sy-vline
WA_PACMTCTYPSTATGRP_STR-INCPO sy-vline
WA_PACMTCTYPSTATGRP_STR-DEFWAERS sy-vline
WA_PACMTCTYPSTATGRP_STR-DEFKURST sy-vline
WA_PACMTCTYPSTATGRP_STR-NUMKI sy-vline
WA_PACMTCTYPSTATGRP_STR-TCUNCGR sy-vline
WA_PACMTCTYPSTATGRP_STR-TCSACHV sy-vline
WA_PACMTCTYPSTATGRP_STR-GBATCH sy-vline
WA_PACMTCTYPSTATGRP_STR-TCTDID sy-vline
WA_PACMTCTYPSTATGRP_STR-WCHUN sy-vline
WA_PACMTCTYPSTATGRP_STR-WCHQU sy-vline
WA_PACMTCTYPSTATGRP_STR-LIVAR sy-vline
WA_PACMTCTYPSTATGRP_STR-KAPPL_NA sy-vline
WA_PACMTCTYPSTATGRP_STR-KALSMK_MGT sy-vline
WA_PACMTCTYPSTATGRP_STR-KALSMP_MGT sy-vline
WA_PACMTCTYPSTATGRP_STR-TC_URL sy-vline
WA_PACMTCTYPSTATGRP_STR-USE_CASE sy-vline
WA_PACMTCTYPSTATGRP_STR-CEACT sy-vline
WA_PACMTCTYPSTATGRP_STR-PDACT sy-vline
WA_PACMTCTYPSTATGRP_STR-PPROT sy-vline
WA_PACMTCTYPSTATGRP_STR-PUSER sy-vline
WA_PACMTCTYPSTATGRP_STR-PAUSW sy-vline
WA_PACMTCTYPSTATGRP_STR-ATNAM sy-vline
WA_PACMTCTYPSTATGRP_STR-TCCAT sy-vline
WA_PACMTCTYPSTATGRP_STR-TKONN_EX_ACT sy-vline
WA_PACMTCTYPSTATGRP_STR-TKONN_EX_CHECK sy-vline
WA_PACMTCTYPSTATGRP_STR-TC_CHANGE_CHECK sy-vline
WA_PACMTCTYPSTATGRP_STR-POFOST sy-vline
WA_PACMTCTYPSTATGRP_STR-BTBSTA_DEF_INCO sy-vline
WA_PACMTCTYPSTATGRP_STR-BTBSTA_DEF sy-vline
WA_PACMTCTYPSTATGRP_STR-FOL_DOC_DIR sy-vline
WA_PACMTCTYPSTATGRP_STR-TC_TYPE_BLOCK sy-vline
WA_PACMTCTYPSTATGRP_STR-PZUGR sy-vline
WA_PACMTCTYPSTATGRP_STR-TCGROUP sy-vline
WA_PACMTCTYPSTATGRP_STR-DELIVDEF sy-vline
WA_PACMTCTYPSTATGRP_STR-PRICE_DEFAULT sy-vline
WA_PACMTCTYPSTATGRP_STR-PARGR sy-vline
WA_PACMTCTYPSTATGRP_STR-CLOSING_RULE sy-vline
WA_PACMTCTYPSTATGRP_STR-WB2_BEZOB sy-vline
WA_PACMTCTYPSTATGRP_STR-ASSO_OFF sy-vline
WA_PACMTCTYPSTATGRP_STR-PRCHGRP sy-vline
WA_PACMTCTYPSTATGRP_STR-BWREL sy-vline
WA_PACMTCTYPSTATGRP_STR-PRICING_TYPE sy-vline
WA_PACMTCTYPSTATGRP_STR-TCVARIANT sy-vline
WA_PACMTCTYPSTATGRP_STR-GTS_RELEVANT sy-vline
WA_PACMTCTYPSTATGRP_STR-EVENT_RELEVANT sy-vline
WA_PACMTCTYPSTATGRP_STR-LIGRU sy-vline
WA_PACMTCTYPSTATGRP_STR-PLANT_CONTROL sy-vline
WA_PACMTCTYPSTATGRP_STR-PURCHASE_PLANT sy-vline
WA_PACMTCTYPSTATGRP_STR-CONTEXT sy-vline
WA_PACMTCTYPSTATGRP_STR-TYPE_USAGE sy-vline
WA_PACMTCTYPSTATGRP_STR-REP_GROUP sy-vline
WA_PACMTCTYPSTATGRP_STR-AR_OBJECT sy-vline
WA_PACMTCTYPSTATGRP_STR-ITEM_HANDLING sy-vline
WA_PACMTCTYPSTATGRP_STR-CHANGE_DOC sy-vline
WA_PACMTCTYPSTATGRP_STR-DOCUMENT_INDEX sy-vline
WA_PACMTCTYPSTATGRP_STR-DOC_INDEX_DELETE sy-vline
WA_PACMTCTYPSTATGRP_STR-PARTNER_HI sy-vline
WA_PACMTCTYPSTATGRP_STR-BATCH_DET_ACT sy-vline
WA_PACMTCTYPSTATGRP_STR-TXZUF sy-vline
WA_PACMTCTYPSTATGRP_STR-SINGLE_ORG_DATA sy-vline
WA_PACMTCTYPSTATGRP_STR-CONSOL_CONTEXT sy-vline
WA_PACMTCTYPSTATGRP_STR-FREEZE_GROUP sy-vline
WA_PACMTCTYPSTATGRP_STR-CALL_OFF_PARTY sy-vline
WA_PACMTCTYPSTATGRP_STR-WRART sy-vline
WA_PACMTCTYPSTATGRP_STR-LFART_C sy-vline
WA_PACMTCTYPSTATGRP_STR-LFART_V sy-vline
WA_PACMTCTYPSTATGRP_STR-LFART sy-vline
WA_PACMTCTYPSTATGRP_STR-SET_VARIANT sy-vline
WA_PACMTCTYPSTATGRP_STR-GTS_CHECK sy-vline
WA_PACMTCTYPSTATGRP_STR-FLOW_DISPLAY sy-vline
WA_PACMTCTYPSTATGRP_STR-FLOW_SIZE sy-vline
WA_PACMTCTYPSTATGRP_STR-RELEASE_LOG sy-vline
WA_PACMTCTYPSTATGRP_STR-PURPOSE sy-vline
WA_PACMTCTYPSTATGRP_STR-ITEM_REL_TYPE sy-vline
WA_PACMTCTYPSTATGRP_STR-LOCK_FOL_DOCS sy-vline
WA_PACMTCTYPSTATGRP_STR-SETTL_PURPOSE sy-vline
WA_PACMTCTYPSTATGRP_STR-BATCH_CLASS sy-vline
WA_PACMTCTYPSTATGRP_STR-PPE_GROUP_CODE sy-vline
WA_PACMTCTYPSTATGRP_STR-DELIVDEF_TYPE sy-vline
WA_PACMTCTYPSTATGRP_STR-TRMRISK_CTRL sy-vline
WA_PACMTCTYPSTATGRP_STR-TIME_CONTROL sy-vline
WA_PACMTCTYPSTATGRP_STR-CONTRACT_TYPE sy-vline
WA_PACMTCTYPSTATGRP_STR-CONTRACT_SUB_TYPE sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.