ABAP Select data from SAP table FCLM_BAM_S_ENTITY_AMD 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 FCLM_BAM_S_ENTITY_AMD 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 FCLM_BAM_S_ENTITY_AMD. 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 FCLM_BAM_S_ENTITY_AMD 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_FCLM_BAM_S_ENTITY_AMD TYPE STANDARD TABLE OF FCLM_BAM_S_ENTITY_AMD,
      WA_FCLM_BAM_S_ENTITY_AMD TYPE FCLM_BAM_S_ENTITY_AMD,
      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: <FCLM_BAM_S_ENTITY_AMD> TYPE FCLM_BAM_S_ENTITY_AMD.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM FCLM_BAM_S_ENTITY_AMD
*  INTO TABLE @DATA(IT_FCLM_BAM_S_ENTITY_AMD2).
*--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_FCLM_BAM_S_ENTITY_AMD INDEX 1 INTO DATA(WA_FCLM_BAM_S_ENTITY_AMD2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_FCLM_BAM_S_ENTITY_AMD ASSIGNING <FCLM_BAM_S_ENTITY_AMD>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<FCLM_BAM_S_ENTITY_AMD>-MANDT = 1.
<FCLM_BAM_S_ENTITY_AMD>-ACC_ID = 1.
<FCLM_BAM_S_ENTITY_AMD>-REVISION = 1.
<FCLM_BAM_S_ENTITY_AMD>-BANKS = 1.
<FCLM_BAM_S_ENTITY_AMD>-BANKL = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_FCLM_BAM_S_ENTITY_AMD-ACC_NUM, sy-vline,
WA_FCLM_BAM_S_ENTITY_AMD-ACC_TYPE_ID, sy-vline,
WA_FCLM_BAM_S_ENTITY_AMD-VALID_FROM, sy-vline,
WA_FCLM_BAM_S_ENTITY_AMD-VALID_TO, sy-vline,
WA_FCLM_BAM_S_ENTITY_AMD-IBAN, sy-vline,
WA_FCLM_BAM_S_ENTITY_AMD-STATUS, sy-vline.
ENDLOOP. *Add any further fields from structure WA_FCLM_BAM_S_ENTITY_AMD 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_FCLM_BAM_S_ENTITY_AMD 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_FCLM_BAM_S_ENTITY_AMD INTO WA_FCLM_BAM_S_ENTITY_AMD. *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 PRCTR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FCLM_BAM_S_ENTITY_AMD-PRCTR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FCLM_BAM_S_ENTITY_AMD-PRCTR.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field SEGMENT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FCLM_BAM_S_ENTITY_AMD-SEGMENT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FCLM_BAM_S_ENTITY_AMD-SEGMENT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field BANK_CONTACT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FCLM_BAM_S_ENTITY_AMD-BANK_CONTACT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FCLM_BAM_S_ENTITY_AMD-BANK_CONTACT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field REL_MANAGER CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FCLM_BAM_S_ENTITY_AMD-REL_MANAGER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FCLM_BAM_S_ENTITY_AMD-REL_MANAGER.
WRITE:/ 'New Value:', ld_input.

*Conversion exit AU132, internal->external for field AMT_DIFF CALL FUNCTION 'CONVERSION_EXIT_AU132_OUTPUT' EXPORTING input = WA_FCLM_BAM_S_ENTITY_AMD-AMT_DIFF IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FCLM_BAM_S_ENTITY_AMD-AMT_DIFF.
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_FCLM_BAM_S_ENTITY_AMD_STR,
MANDT TYPE STRING,
ACC_ID TYPE STRING,
REVISION TYPE STRING,
BANKS TYPE STRING,
BANKL TYPE STRING,
ACC_NUM TYPE STRING,
ACC_TYPE_ID TYPE STRING,
VALID_FROM TYPE STRING,
VALID_TO TYPE STRING,
IBAN TYPE STRING,
STATUS TYPE STRING,
CASH_POOL TYPE STRING,
CASH_POOL_ID TYPE STRING,
BUKRS TYPE STRING,
PRCTR TYPE STRING,
GSBER TYPE STRING,
SEGMENT TYPE STRING,
BENEFICIAL TYPE STRING,
BANK_CONTACT TYPE STRING,
REL_MANAGER TYPE STRING,
COMPANY_CONTACT TYPE STRING,
ACCOUNT_SUPERVISOR TYPE STRING,
EDBSUM TYPE STRING,
IDBSUM TYPE STRING,
BS_UPLOAD_TIME TYPE STRING,
CREATED_AT TYPE STRING,
CREATED_BY TYPE STRING,
OPENED_AT TYPE STRING,
OPENED_BY TYPE STRING,
CHANGED_AT TYPE STRING,
CHANGED_BY TYPE STRING,
REVIEWED_AT TYPE STRING,
REVIEWED_BY TYPE STRING,
CLOSED_AT TYPE STRING,
CLOSED_BY TYPE STRING,
DELETED_FLAG TYPE STRING,
IMPORTING_CHANNEL TYPE STRING,
CUTOFF_TIME_D TYPE STRING,
CUTOFF_TIME_C TYPE STRING,
PLANNED_CLOSING_DATE TYPE STRING,
UPLOAD_BS_FLAG TYPE STRING,
CREATED_AT_DAT TYPE STRING,
CREATED_AT_TIM TYPE STRING,
OPENED_AT_DAT TYPE STRING,
OPENED_AT_TIM TYPE STRING,
CHANGED_AT_DAT TYPE STRING,
CHANGED_AT_TIM TYPE STRING,
CLOSED_AT_DAT TYPE STRING,
CLOSED_AT_TIM TYPE STRING,
CONTROL_KEY TYPE STRING,
IBAN_VALID_FROM TYPE STRING,
OBJNR TYPE STRING,
VGTYP TYPE STRING,
PROCSTAT_ACT TYPE STRING,
BALSTAT_ACT TYPE STRING,
SERSTAT_ACT TYPE STRING,
RECONSTAT_ACT TYPE STRING,
EXP_NUMBER TYPE STRING,
EXP_RHYTH TYPE STRING,
CALENDAR TYPE STRING,
SORT_IDX TYPE STRING,
AMT_DIFF TYPE STRING,
WAERS TYPE STRING,
CASH_POOL_ID_PARTICIPANT TYPE STRING,
CASH_POOL_TARGET_AMT_MAX TYPE STRING,
CASH_POOL_TARGET_AMT_MIN TYPE STRING,
CASH_POOL_TRANSFER_AMT_MIN TYPE STRING,
PAYMENT_METHOD_L TYPE STRING,
PAYMENT_METHOD_P TYPE STRING,
PAYMENT_SERVICE_PROVIDER TYPE STRING,
TOLERANCE_GROUP TYPE STRING,
RECONCILE_INTRADAY TYPE STRING,
EXT_RULE_ID TYPE STRING,
PLANNING_LEVEL TYPE STRING,
BSR_GROUP TYPE STRING,
RECONCILE_ENDOFDAY TYPE STRING,
SGTXT TYPE STRING,
CASH_POOL_TRANSFER_AMT_MAX TYPE STRING,
CONTRACT_TYPE TYPE STRING,
OPEN_REQUEST_ID TYPE STRING,
DUMMY_FCLM_BAM_AMD_INCL_EEW_PS TYPE STRING,
CURRENCY TYPE STRING,
REQUESTID TYPE STRING,
DESCRIPTION TYPE STRING,
CURRENCYDESP TYPE STRING,
COMPANYCODEDESP TYPE STRING,
STATUSDESP TYPE STRING,
ACCOUNTTYPEDESP TYPE STRING,
CREATEDBYDESP TYPE STRING,
OPENEDBYDESP TYPE STRING,
CHANGEDBYDESP TYPE STRING,
REVIEWEDBYDESP TYPE STRING,
CLOSEDBYDESP TYPE STRING,
ETAG TYPE STRING,
CONTROLLINGAREA TYPE STRING,
CONTROLLINGAREADESP TYPE STRING,
PROFITCENTERDESP TYPE STRING,
BUSINESSAREADESP TYPE STRING,
SEGMENTDESP TYPE STRING,
BANKCOUNTRYDESP TYPE STRING,
CASHPOOLDESP TYPE STRING,
RELATIONSHIPMANAGERDESP TYPE STRING,
BANKCONTACTDESP TYPE STRING,
ACCOUNTSUPERVISORDESP TYPE STRING,
COMPANYCONTACTDESP TYPE STRING,
EODIMPORTDESP TYPE STRING,
INTRADAYIMPORTDESP TYPE STRING,END OF T_EKKO_STR. DATA: WA_FCLM_BAM_S_ENTITY_AMD_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_FCLM_BAM_S_ENTITY_AMD_STR-MANDT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ACC_ID sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-REVISION sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BANKS sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BANKL sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ACC_NUM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ACC_TYPE_ID sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-VALID_FROM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-VALID_TO sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-IBAN sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-STATUS sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL_ID sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BUKRS sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PRCTR sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-GSBER sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-SEGMENT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BENEFICIAL sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BANK_CONTACT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-REL_MANAGER sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-COMPANY_CONTACT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ACCOUNT_SUPERVISOR sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-EDBSUM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-IDBSUM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BS_UPLOAD_TIME sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CREATED_AT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CREATED_BY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OPENED_AT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OPENED_BY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CHANGED_AT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CHANGED_BY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-REVIEWED_AT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-REVIEWED_BY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CLOSED_AT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CLOSED_BY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-DELETED_FLAG sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-IMPORTING_CHANNEL sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CUTOFF_TIME_D sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CUTOFF_TIME_C sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PLANNED_CLOSING_DATE sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-UPLOAD_BS_FLAG sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CREATED_AT_DAT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CREATED_AT_TIM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OPENED_AT_DAT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OPENED_AT_TIM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CHANGED_AT_DAT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CHANGED_AT_TIM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CLOSED_AT_DAT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CLOSED_AT_TIM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CONTROL_KEY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-IBAN_VALID_FROM sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OBJNR sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-VGTYP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PROCSTAT_ACT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BALSTAT_ACT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-SERSTAT_ACT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-RECONSTAT_ACT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-EXP_NUMBER sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-EXP_RHYTH sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CALENDAR sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-SORT_IDX sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-AMT_DIFF sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-WAERS sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL_ID_PARTICIPANT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL_TARGET_AMT_MAX sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL_TARGET_AMT_MIN sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL_TRANSFER_AMT_MIN sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PAYMENT_METHOD_L sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PAYMENT_METHOD_P sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PAYMENT_SERVICE_PROVIDER sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-TOLERANCE_GROUP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-RECONCILE_INTRADAY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-EXT_RULE_ID sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PLANNING_LEVEL sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BSR_GROUP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-RECONCILE_ENDOFDAY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-SGTXT sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASH_POOL_TRANSFER_AMT_MAX sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CONTRACT_TYPE sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OPEN_REQUEST_ID sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-DUMMY_FCLM_BAM_AMD_INCL_EEW_PS sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CURRENCY sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-REQUESTID sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-DESCRIPTION sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CURRENCYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-COMPANYCODEDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-STATUSDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ACCOUNTTYPEDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CREATEDBYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-OPENEDBYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CHANGEDBYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-REVIEWEDBYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CLOSEDBYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ETAG sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CONTROLLINGAREA sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CONTROLLINGAREADESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-PROFITCENTERDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BUSINESSAREADESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-SEGMENTDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BANKCOUNTRYDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-CASHPOOLDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-RELATIONSHIPMANAGERDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-BANKCONTACTDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-ACCOUNTSUPERVISORDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-COMPANYCONTACTDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-EODIMPORTDESP sy-vline
WA_FCLM_BAM_S_ENTITY_AMD_STR-INTRADAYIMPORTDESP sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.