SAP MAM_20_OPERATION_SPLIT ABAP Select data from SAP table









Below is a number of ABAP code snippets to demonstrate how to select data from SAP MAM_20_OPERATION_SPLIT 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 MAM_20_OPERATION_SPLIT. 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 MAM_20_OPERATION_SPLIT 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_MAM_20_OPERATION_SPLIT TYPE STANDARD TABLE OF MAM_20_OPERATION_SPLIT,
      WA_MAM_20_OPERATION_SPLIT TYPE MAM_20_OPERATION_SPLIT,
      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: <MAM_20_OPERATION_SPLIT> TYPE MAM_20_OPERATION_SPLIT.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM MAM_20_OPERATION_SPLIT
*  INTO TABLE @DATA(IT_MAM_20_OPERATION_SPLIT2).
*--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_MAM_20_OPERATION_SPLIT INDEX 1 INTO DATA(WA_MAM_20_OPERATION_SPLIT2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_MAM_20_OPERATION_SPLIT ASSIGNING <MAM_20_OPERATION_SPLIT>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<MAM_20_OPERATION_SPLIT>-ACTIVITY = 1.
<MAM_20_OPERATION_SPLIT>-SPLIT = 1.
<MAM_20_OPERATION_SPLIT>-CAP_ID = 1.
<MAM_20_OPERATION_SPLIT>-CAP_COUNTER = 1.
<MAM_20_OPERATION_SPLIT>-CAP_MAIN_COUNT = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_MAM_20_OPERATION_SPLIT-CAP_CY_COUNT, sy-vline,
WA_MAM_20_OPERATION_SPLIT-WORKCENTER, sy-vline,
WA_MAM_20_OPERATION_SPLIT-RES_OBJID, sy-vline,
WA_MAM_20_OPERATION_SPLIT-PERSON_NO, sy-vline,
WA_MAM_20_OPERATION_SPLIT-EARL_START_DATE, sy-vline,
WA_MAM_20_OPERATION_SPLIT-EARL_START_TIME, sy-vline.
ENDLOOP. *Add any further fields from structure WA_MAM_20_OPERATION_SPLIT 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_MAM_20_OPERATION_SPLIT 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_MAM_20_OPERATION_SPLIT INTO WA_MAM_20_OPERATION_SPLIT. *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 NUMCV, internal->external for field ACTIVITY CALL FUNCTION 'CONVERSION_EXIT_NUMCV_OUTPUT' EXPORTING input = WA_MAM_20_OPERATION_SPLIT-ACTIVITY IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_MAM_20_OPERATION_SPLIT-ACTIVITY.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field ACTIVITY_UNIT CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_MAM_20_OPERATION_SPLIT-ACTIVITY_UNIT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_MAM_20_OPERATION_SPLIT-ACTIVITY_UNIT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field UN_WORK CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_MAM_20_OPERATION_SPLIT-UN_WORK IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_MAM_20_OPERATION_SPLIT-UN_WORK.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field DURATION_NORMAL_UNIT CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_MAM_20_OPERATION_SPLIT-DURATION_NORMAL_UNIT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_MAM_20_OPERATION_SPLIT-DURATION_NORMAL_UNIT.
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_MAM_20_OPERATION_SPLIT_STR,
ACTIVITY TYPE STRING,
SPLIT TYPE STRING,
CAP_ID TYPE STRING,
CAP_COUNTER TYPE STRING,
CAP_MAIN_COUNT TYPE STRING,
CAP_CY_COUNT TYPE STRING,
WORKCENTER TYPE STRING,
RES_OBJID TYPE STRING,
PERSON_NO TYPE STRING,
EARL_START_DATE TYPE STRING,
EARL_START_TIME TYPE STRING,
EARL_FIN_DATE TYPE STRING,
EARL_FIN_TIME TYPE STRING,
LATE_START_DATE TYPE STRING,
LATE_START_TIME TYPE STRING,
LATE_FIN_DATE TYPE STRING,
LATE_FIN_TIME TYPE STRING,
ACTUAL_START_DATE TYPE STRING,
ACTUAL_START_TIME TYPE STRING,
ACTUAL_END_DATE TYPE STRING,
ACTUAL_END_TIME TYPE STRING,
FCST_FIN_DATE TYPE STRING,
FCST_FIN_TIME TYPE STRING,
NO_ACTUAL_SPLIT TYPE STRING,
ROUTING_NO TYPE STRING,
ROUTING_COUNTER TYPE STRING,
EARL_SCHED_PROC_START_DATE TYPE STRING,
EARL_SCHED_PROC_START_TIME TYPE STRING,
EARL_SCHED_TEAR_START_DATE TYPE STRING,
EARL_SCHED_TEAR_START_TIME TYPE STRING,
LAST_SCHED_PROC_START_DATE TYPE STRING,
LAST_SCHED_PROC_START_TIME TYPE STRING,
LAST_SCHED_TEAR_START_DATE TYPE STRING,
LAST_SCHED_TEAR_START_TIME TYPE STRING,
ACTIVITY_QUANTITY TYPE STRING,
ACTIVITY_UNIT TYPE STRING,
ACTIVITY_UNIT_ISO TYPE STRING,
NO_OF_EMPLOYEE TYPE STRING,
WORK_ACTIVITY TYPE STRING,
UN_WORK TYPE STRING,
UN_WORK_ISO TYPE STRING,
DURATION_NORMAL TYPE STRING,
DURATION_NORMAL_UNIT TYPE STRING,
DURATION_NORMAL_ISO TYPE STRING,
PART_CONF TYPE STRING,
CHANGEABLE TYPE STRING,
WFM_CORE_GUID TYPE STRING,END OF T_EKKO_STR. DATA: WA_MAM_20_OPERATION_SPLIT_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_MAM_20_OPERATION_SPLIT_STR-ACTIVITY sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-SPLIT sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-CAP_ID sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-CAP_COUNTER sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-CAP_MAIN_COUNT sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-CAP_CY_COUNT sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-WORKCENTER sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-RES_OBJID sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-PERSON_NO sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_FIN_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_FIN_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LATE_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LATE_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LATE_FIN_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LATE_FIN_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTUAL_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTUAL_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTUAL_END_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTUAL_END_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-FCST_FIN_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-FCST_FIN_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-NO_ACTUAL_SPLIT sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ROUTING_NO sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ROUTING_COUNTER sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_SCHED_PROC_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_SCHED_PROC_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_SCHED_TEAR_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-EARL_SCHED_TEAR_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LAST_SCHED_PROC_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LAST_SCHED_PROC_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LAST_SCHED_TEAR_START_DATE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-LAST_SCHED_TEAR_START_TIME sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTIVITY_QUANTITY sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTIVITY_UNIT sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-ACTIVITY_UNIT_ISO sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-NO_OF_EMPLOYEE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-WORK_ACTIVITY sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-UN_WORK sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-UN_WORK_ISO sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-DURATION_NORMAL sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-DURATION_NORMAL_UNIT sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-DURATION_NORMAL_ISO sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-PART_CONF sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-CHANGEABLE sy-vline
WA_MAM_20_OPERATION_SPLIT_STR-WFM_CORE_GUID sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.


Search for further information about these or an SAP related objects



Comments on this SAP object

What made you want to lookup this SAP object? Please tell us what you were looking for and anything you would like to be included on this page!