ABAP Select data from SAP table CJITCTRLCYCLETP 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 CJITCTRLCYCLETP 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 CJITCTRLCYCLETP. 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 CJITCTRLCYCLETP 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_CJITCTRLCYCLETP TYPE STANDARD TABLE OF CJITCTRLCYCLETP,
      WA_CJITCTRLCYCLETP TYPE CJITCTRLCYCLETP,
      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: <CJITCTRLCYCLETP> TYPE CJITCTRLCYCLETP.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM CJITCTRLCYCLETP
*  INTO TABLE @DATA(IT_CJITCTRLCYCLETP2).
*--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_CJITCTRLCYCLETP INDEX 1 INTO DATA(WA_CJITCTRLCYCLETP2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_CJITCTRLCYCLETP ASSIGNING <CJITCTRLCYCLETP>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<CJITCTRLCYCLETP>-MANDT = 1.
<CJITCTRLCYCLETP>-JITCONTROLCYCLE = 1.
<CJITCTRLCYCLETP>-JITCTRLCYCLIFECYCSTS = 1.
<CJITCTRLCYCLETP>-JITCTRLCYCLIFECYCSTSTXT = 1.
<CJITCTRLCYCLETP>-PLANT = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_CJITCTRLCYCLETP-PLANTNAME, sy-vline,
WA_CJITCTRLCYCLETP-MATERIAL, sy-vline,
WA_CJITCTRLCYCLETP-PRODUCTNAME, sy-vline,
WA_CJITCTRLCYCLETP-JITCONTAINERQUANTITYINBSUNT, sy-vline,
WA_CJITCTRLCYCLETP-QUANTITYUNIT, sy-vline,
WA_CJITCTRLCYCLETP-PRODUCTIONSUPPLYAREA, sy-vline.
ENDLOOP. *Add any further fields from structure WA_CJITCTRLCYCLETP 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_CJITCTRLCYCLETP 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_CJITCTRLCYCLETP INTO WA_CJITCTRLCYCLETP. *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 JITCONTROLCYCLE CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_CJITCTRLCYCLETP-JITCONTROLCYCLE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CJITCTRLCYCLETP-JITCONTROLCYCLE.
WRITE:/ 'New Value:', ld_input.

*Conversion exit MATN1, internal->external for field MATERIAL CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = WA_CJITCTRLCYCLETP-MATERIAL IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CJITCTRLCYCLETP-MATERIAL.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

*Conversion exit MATN1, internal->external for field JITCONTAINER CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = WA_CJITCTRLCYCLETP-JITCONTAINER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_CJITCTRLCYCLETP-JITCONTAINER.
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_CJITCTRLCYCLETP_STR,
MANDT TYPE STRING,
JITCONTROLCYCLE TYPE STRING,
JITCTRLCYCLIFECYCSTS TYPE STRING,
JITCTRLCYCLIFECYCSTSTXT TYPE STRING,
PLANT TYPE STRING,
PLANTNAME TYPE STRING,
MATERIAL TYPE STRING,
PRODUCTNAME TYPE STRING,
JITCONTAINERQUANTITYINBSUNT TYPE STRING,
QUANTITYUNIT TYPE STRING,
PRODUCTIONSUPPLYAREA TYPE STRING,
PRODUCTIONSUPPLYAREANAME TYPE STRING,
JITEXTERNALREPLENISHMENT TYPE STRING,
JITOUTBCOMMUNICATIONGROUP TYPE STRING,
JITOUTBCOMMUNICATIONGROUPDESC TYPE STRING,
SUPPLIER TYPE STRING,
SUPPLIERNAME TYPE STRING,
BUSINESSPARTNER TYPE STRING,
BUSINESSPARTNER1 TYPE STRING,
BUSINESSPARTNER2 TYPE STRING,
RESPONSIBLE TYPE STRING,
STORAGELOCATION TYPE STRING,
UNLOADINGPOINTNAME TYPE STRING,
AUTOMOTIVELOADINGPOINT TYPE STRING,
REPLENISHMENTSTRATEGY TYPE STRING,
REPLENISHMENTSTRATEGYDESC TYPE STRING,
STORAGETYPE TYPE STRING,
STORAGETYPENAME TYPE STRING,
CONTROLCYCLEISPRIMARY TYPE STRING,
CONTROLCYCLEISSECONDARY TYPE STRING,
STORAGEBIN TYPE STRING,
STORINGPOSITIONNAME TYPE STRING,
JITCTRLCYCLECREATIONDATE TYPE STRING,
JITCTRLCYCLERELEASEDATE TYPE STRING,
LOCKDATE TYPE STRING,
JITCTRLCYCLERELEASETIME TYPE STRING,
JITCTRLCYCLELOCKTIME TYPE STRING,
JITOFFSTFROMSTARTOFPRODUCTION TYPE STRING,
LASTCHANGEDATETIME TYPE STRING,
LASTCHANGEDBYUSERNAME TYPE STRING,
USERDESCRIPTION TYPE STRING,
NUMBEROFLOADCARRIERS TYPE STRING,
JITCONTAINER TYPE STRING,
JITCONTAINERDESC TYPE STRING,
ISSUINGORRECEIVINGSTORAGELOC TYPE STRING,
INHPRODNREPLNMTSTRGYNAME TYPE STRING,
INHOUSEPRODUCTIONREPLNMTSTRGY TYPE STRING,
STORAGELOCATIONNAME TYPE STRING,
JITCALLPROFILE TYPE STRING,
JITCALLPROFILEDESC TYPE STRING,
JITACTIONCTRL TYPE STRING,
JITACTIONCTRLTEXT TYPE STRING,
THRESHOLD TYPE STRING,
JITREQQTYUPPERTOLERANCELVL TYPE STRING,
JITREQQTYLOWERTOLERANCELVL TYPE STRING,
HUNDREDINPERCENT TYPE STRING,
UNITOFMEASURENUMBEROFDECIMALS TYPE STRING,
MINIMUMQUANTITYMASS TYPE STRING,
ISPARTIALLYDELIVERED TYPE STRING,
MAXNUMBEROFOPENJITCALLDISPLAY TYPE STRING,
MAXNUMBEROFOPENJITCALLS TYPE STRING,
NUMBEROFACTIVEJITCALLS TYPE STRING,
WAREHOUSENUMBER TYPE STRING,
WAREHOUSE TYPE STRING,
WAREHOUSENAME TYPE STRING,
EWMWAREHOUSE TYPE STRING,
SOURCESTORAGETYPE TYPE STRING,
SOURCESTORAGETYPENAME TYPE STRING,
SOURCEPRODUCTIONSUPPLYAREA TYPE STRING,
SOURCESUPPLYAREANAME TYPE STRING,
SOURCESTORAGEBIN TYPE STRING,
REPLNMTLEADTIMEINWORKDAYS TYPE STRING,
REPLNMTLEADTIMEINHOURSANDMINS TYPE STRING,
REPLENISHMENTLEADTIME TYPE STRING,
JITCONTROLCYCLECATEGORY TYPE STRING,
JITCONTROLCYCLECATEGORYTEXT TYPE STRING,
REPLNMTPLANNINGPROCEDURE TYPE STRING,
JITPLANNINGPROCEDURETEXT TYPE STRING,
PLANNINGHORIZONINHOURSANDMINS TYPE STRING,
MINIMUMSTOCKQUANTITY TYPE STRING,
REPLNMTSAFETYTIMEINDAYS TYPE STRING,
SAFETYTIMEINHOURSANDMINS TYPE STRING,
REPLNMTSAFETYTIMEINMINS TYPE STRING,
PLANNINGHORIZONTIME TYPE STRING,
JITCALLLASTCREATIONDATETIME TYPE STRING,
JITINTERNALREPLENISHMENT TYPE STRING,
JITCTRLCYCLERELEASEDATETIME TYPE STRING,
JITCTRLCYCLELOCKDATETIME TYPE STRING,END OF T_EKKO_STR. DATA: WA_CJITCTRLCYCLETP_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_CJITCTRLCYCLETP_STR-MANDT sy-vline
WA_CJITCTRLCYCLETP_STR-JITCONTROLCYCLE sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLIFECYCSTS sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLIFECYCSTSTXT sy-vline
WA_CJITCTRLCYCLETP_STR-PLANT sy-vline
WA_CJITCTRLCYCLETP_STR-PLANTNAME sy-vline
WA_CJITCTRLCYCLETP_STR-MATERIAL sy-vline
WA_CJITCTRLCYCLETP_STR-PRODUCTNAME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCONTAINERQUANTITYINBSUNT sy-vline
WA_CJITCTRLCYCLETP_STR-QUANTITYUNIT sy-vline
WA_CJITCTRLCYCLETP_STR-PRODUCTIONSUPPLYAREA sy-vline
WA_CJITCTRLCYCLETP_STR-PRODUCTIONSUPPLYAREANAME sy-vline
WA_CJITCTRLCYCLETP_STR-JITEXTERNALREPLENISHMENT sy-vline
WA_CJITCTRLCYCLETP_STR-JITOUTBCOMMUNICATIONGROUP sy-vline
WA_CJITCTRLCYCLETP_STR-JITOUTBCOMMUNICATIONGROUPDESC sy-vline
WA_CJITCTRLCYCLETP_STR-SUPPLIER sy-vline
WA_CJITCTRLCYCLETP_STR-SUPPLIERNAME sy-vline
WA_CJITCTRLCYCLETP_STR-BUSINESSPARTNER sy-vline
WA_CJITCTRLCYCLETP_STR-BUSINESSPARTNER1 sy-vline
WA_CJITCTRLCYCLETP_STR-BUSINESSPARTNER2 sy-vline
WA_CJITCTRLCYCLETP_STR-RESPONSIBLE sy-vline
WA_CJITCTRLCYCLETP_STR-STORAGELOCATION sy-vline
WA_CJITCTRLCYCLETP_STR-UNLOADINGPOINTNAME sy-vline
WA_CJITCTRLCYCLETP_STR-AUTOMOTIVELOADINGPOINT sy-vline
WA_CJITCTRLCYCLETP_STR-REPLENISHMENTSTRATEGY sy-vline
WA_CJITCTRLCYCLETP_STR-REPLENISHMENTSTRATEGYDESC sy-vline
WA_CJITCTRLCYCLETP_STR-STORAGETYPE sy-vline
WA_CJITCTRLCYCLETP_STR-STORAGETYPENAME sy-vline
WA_CJITCTRLCYCLETP_STR-CONTROLCYCLEISPRIMARY sy-vline
WA_CJITCTRLCYCLETP_STR-CONTROLCYCLEISSECONDARY sy-vline
WA_CJITCTRLCYCLETP_STR-STORAGEBIN sy-vline
WA_CJITCTRLCYCLETP_STR-STORINGPOSITIONNAME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLECREATIONDATE sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLERELEASEDATE sy-vline
WA_CJITCTRLCYCLETP_STR-LOCKDATE sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLERELEASETIME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLELOCKTIME sy-vline
WA_CJITCTRLCYCLETP_STR-JITOFFSTFROMSTARTOFPRODUCTION sy-vline
WA_CJITCTRLCYCLETP_STR-LASTCHANGEDATETIME sy-vline
WA_CJITCTRLCYCLETP_STR-LASTCHANGEDBYUSERNAME sy-vline
WA_CJITCTRLCYCLETP_STR-USERDESCRIPTION sy-vline
WA_CJITCTRLCYCLETP_STR-NUMBEROFLOADCARRIERS sy-vline
WA_CJITCTRLCYCLETP_STR-JITCONTAINER sy-vline
WA_CJITCTRLCYCLETP_STR-JITCONTAINERDESC sy-vline
WA_CJITCTRLCYCLETP_STR-ISSUINGORRECEIVINGSTORAGELOC sy-vline
WA_CJITCTRLCYCLETP_STR-INHPRODNREPLNMTSTRGYNAME sy-vline
WA_CJITCTRLCYCLETP_STR-INHOUSEPRODUCTIONREPLNMTSTRGY sy-vline
WA_CJITCTRLCYCLETP_STR-STORAGELOCATIONNAME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCALLPROFILE sy-vline
WA_CJITCTRLCYCLETP_STR-JITCALLPROFILEDESC sy-vline
WA_CJITCTRLCYCLETP_STR-JITACTIONCTRL sy-vline
WA_CJITCTRLCYCLETP_STR-JITACTIONCTRLTEXT sy-vline
WA_CJITCTRLCYCLETP_STR-THRESHOLD sy-vline
WA_CJITCTRLCYCLETP_STR-JITREQQTYUPPERTOLERANCELVL sy-vline
WA_CJITCTRLCYCLETP_STR-JITREQQTYLOWERTOLERANCELVL sy-vline
WA_CJITCTRLCYCLETP_STR-HUNDREDINPERCENT sy-vline
WA_CJITCTRLCYCLETP_STR-UNITOFMEASURENUMBEROFDECIMALS sy-vline
WA_CJITCTRLCYCLETP_STR-MINIMUMQUANTITYMASS sy-vline
WA_CJITCTRLCYCLETP_STR-ISPARTIALLYDELIVERED sy-vline
WA_CJITCTRLCYCLETP_STR-MAXNUMBEROFOPENJITCALLDISPLAY sy-vline
WA_CJITCTRLCYCLETP_STR-MAXNUMBEROFOPENJITCALLS sy-vline
WA_CJITCTRLCYCLETP_STR-NUMBEROFACTIVEJITCALLS sy-vline
WA_CJITCTRLCYCLETP_STR-WAREHOUSENUMBER sy-vline
WA_CJITCTRLCYCLETP_STR-WAREHOUSE sy-vline
WA_CJITCTRLCYCLETP_STR-WAREHOUSENAME sy-vline
WA_CJITCTRLCYCLETP_STR-EWMWAREHOUSE sy-vline
WA_CJITCTRLCYCLETP_STR-SOURCESTORAGETYPE sy-vline
WA_CJITCTRLCYCLETP_STR-SOURCESTORAGETYPENAME sy-vline
WA_CJITCTRLCYCLETP_STR-SOURCEPRODUCTIONSUPPLYAREA sy-vline
WA_CJITCTRLCYCLETP_STR-SOURCESUPPLYAREANAME sy-vline
WA_CJITCTRLCYCLETP_STR-SOURCESTORAGEBIN sy-vline
WA_CJITCTRLCYCLETP_STR-REPLNMTLEADTIMEINWORKDAYS sy-vline
WA_CJITCTRLCYCLETP_STR-REPLNMTLEADTIMEINHOURSANDMINS sy-vline
WA_CJITCTRLCYCLETP_STR-REPLENISHMENTLEADTIME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCONTROLCYCLECATEGORY sy-vline
WA_CJITCTRLCYCLETP_STR-JITCONTROLCYCLECATEGORYTEXT sy-vline
WA_CJITCTRLCYCLETP_STR-REPLNMTPLANNINGPROCEDURE sy-vline
WA_CJITCTRLCYCLETP_STR-JITPLANNINGPROCEDURETEXT sy-vline
WA_CJITCTRLCYCLETP_STR-PLANNINGHORIZONINHOURSANDMINS sy-vline
WA_CJITCTRLCYCLETP_STR-MINIMUMSTOCKQUANTITY sy-vline
WA_CJITCTRLCYCLETP_STR-REPLNMTSAFETYTIMEINDAYS sy-vline
WA_CJITCTRLCYCLETP_STR-SAFETYTIMEINHOURSANDMINS sy-vline
WA_CJITCTRLCYCLETP_STR-REPLNMTSAFETYTIMEINMINS sy-vline
WA_CJITCTRLCYCLETP_STR-PLANNINGHORIZONTIME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCALLLASTCREATIONDATETIME sy-vline
WA_CJITCTRLCYCLETP_STR-JITINTERNALREPLENISHMENT sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLERELEASEDATETIME sy-vline
WA_CJITCTRLCYCLETP_STR-JITCTRLCYCLELOCKDATETIME sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.