ABAP Select data from SAP table PIN_HINCF160_F16_PDF 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 PIN_HINCF160_F16_PDF 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 PIN_HINCF160_F16_PDF. 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 PIN_HINCF160_F16_PDF 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_PIN_HINCF160_F16_PDF TYPE STANDARD TABLE OF PIN_HINCF160_F16_PDF, WA_PIN_HINCF160_F16_PDF TYPE PIN_HINCF160_F16_PDF, 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: <PIN_HINCF160_F16_PDF> TYPE PIN_HINCF160_F16_PDF. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_PIN_HINCF160_F16_PDF. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM PIN_HINCF160_F16_PDF INTO TABLE IT_PIN_HINCF160_F16_PDF. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM PIN_HINCF160_F16_PDF * INTO TABLE @DATA(IT_PIN_HINCF160_F16_PDF2). *--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_PIN_HINCF160_F16_PDF INDEX 1 INTO DATA(WA_PIN_HINCF160_F16_PDF2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_PIN_HINCF160_F16_PDF ASSIGNING <PIN_HINCF160_F16_PDF>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<PIN_HINCF160_F16_PDF>-DOC_TYPE = 1.
<PIN_HINCF160_F16_PDF>-ENAME1 = 1.
<PIN_HINCF160_F16_PDF>-ESTREET = 1.
<PIN_HINCF160_F16_PDF>-ECITY = 1.
<PIN_HINCF160_F16_PDF>-EPOCODE = 1.
ENDLOOP. LOOP AT IT_PIN_HINCF160_F16_PDF INTO WA_PIN_HINCF160_F16_PDF. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_PIN_HINCF160_F16_PDF-ESTATE, sy-vline,
WA_PIN_HINCF160_F16_PDF-ENAME, sy-vline,
WA_PIN_HINCF160_F16_PDF-DESIGN, sy-vline,
WA_PIN_HINCF160_F16_PDF-EMPNO, sy-vline,
WA_PIN_HINCF160_F16_PDF-PANNO, sy-vline,
WA_PIN_HINCF160_F16_PDF-TANNO, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PIN_HINCF160_F16_PDF 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_PIN_HINCF160_F16_PDF 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_PIN_HINCF160_F16_PDF INTO WA_PIN_HINCF160_F16_PDF. *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 PDATE, internal->external for field DOB CALL FUNCTION 'CONVERSION_EXIT_PDATE_OUTPUT' EXPORTING input = WA_PIN_HINCF160_F16_PDF-DOB IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_PIN_HINCF160_F16_PDF-DOB.
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_PIN_HINCF160_F16_PDF_STR,
DOC_TYPE TYPE STRING,
ENAME1 TYPE STRING,
ESTREET TYPE STRING,
ECITY TYPE STRING,
EPOCODE TYPE STRING,
ESTATE TYPE STRING,
ENAME TYPE STRING,
DESIGN TYPE STRING,
EMPNO TYPE STRING,
PANNO TYPE STRING,
TANNO TYPE STRING,
GIRNO TYPE STRING,
ICNUM TYPE STRING,
CNAME1 TYPE STRING,
CSTREET TYPE STRING,
CCITY TYPE STRING,
CPOCODE TYPE STRING,
CSTATE TYPE STRING,
FYBEGDA TYPE STRING,
FYENDDA TYPE STRING,
ASSM_START TYPE STRING,
ASSM_END TYPE STRING,
SAL_SEC17 TYPE STRING,
VAL_F12BA TYPE STRING,
PROF_F12BA TYPE STRING,
GROSS_SAL TYPE STRING,
SEC10_ALL TYPE STRING,
BALANCE TYPE STRING,
STD_DED TYPE STRING,
ETALL TYPE STRING,
PTAX TYPE STRING,
AGGR_DED TYPE STRING,
SALARIES TYPE STRING,
OTH_INCOME TYPE STRING,
GROSS_TOT_INCOME TYPE STRING,
SEC80_DED TYPE STRING,
TOT_INCOME TYPE STRING,
TAX_TOT_INCOME TYPE STRING,
TOT_EPF TYPE STRING,
TOT_SEC88 TYPE STRING,
SEC88_DED TYPE STRING,
SECB88_DED TYPE STRING,
SECC88_DED TYPE STRING,
P14_TEXT TYPE STRING,
CHAPVI_DED TYPE STRING,
TAX_BEF_RELIEF TYPE STRING,
SEC89_RELIEF TYPE STRING,
TAX_PAYABLE TYPE STRING,
TAX_DEDUCTED TYPE STRING,
EMPLOYER_TAX TYPE STRING,
TOTAL_TAX TYPE STRING,
NET_TAX_PAYABLE TYPE STRING,
TOTAL TYPE STRING,
TDS_PETD TYPE STRING,
TDS_IFOS TYPE STRING,
TOT_TAX_DEDUCTED TYPE STRING,
RP_NAME TYPE STRING,
RP_SOF TYPE STRING,
RP_DSG TYPE STRING,
AMT_IN_WORDS TYPE STRING,
REPODATE TYPE STRING,
RPLACE TYPE STRING,
FTEXT1 TYPE STRING,
FTEXT2 TYPE STRING,
HNUMB TYPE STRING,
LOCALITY TYPE STRING,
PIN TYPE STRING,
CITY TYPE STRING,
TELN TYPE STRING,
DOB TYPE STRING,
GENDER TYPE STRING,
FFNAME TYPE STRING,
FLNAME TYPE STRING,
SAL_WO_WORK TYPE STRING,
FIN_START TYPE STRING,
FIN_END TYPE STRING,
EDU_CESS TYPE STRING,
SURCHARGE TYPE STRING,
SEC80_CCC_CONMT TYPE STRING,
SEC80_CCC_DEDMT TYPE STRING,
SEC80_CCD_CONMT TYPE STRING,
SEC80_CCD_DEDMT TYPE STRING,
DED_S24 TYPE STRING,
BUS_PROF TYPE STRING,
ACKNOQ1_1 TYPE STRING,
ACKNOQ1_2 TYPE STRING,
ACKNOQ1_3 TYPE STRING,
ACKNOQ1_4 TYPE STRING,
ACKNOQ2_1 TYPE STRING,
ACKNOQ2_2 TYPE STRING,
ACKNOQ2_3 TYPE STRING,
ACKNOQ2_4 TYPE STRING,
ACKNOQ3_1 TYPE STRING,
ACKNOQ3_2 TYPE STRING,
ACKNOQ3_3 TYPE STRING,
ACKNOQ3_4 TYPE STRING,
ACKNOQ4_1 TYPE STRING,
ACKNOQ4_2 TYPE STRING,
ACKNOQ4_3 TYPE STRING,
ACKNOQ4_4 TYPE STRING,END OF T_EKKO_STR. DATA: WA_PIN_HINCF160_F16_PDF_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_PIN_HINCF160_F16_PDF_STR-DOC_TYPE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ENAME1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ESTREET sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ECITY sy-vline
WA_PIN_HINCF160_F16_PDF_STR-EPOCODE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ESTATE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ENAME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-DESIGN sy-vline
WA_PIN_HINCF160_F16_PDF_STR-EMPNO sy-vline
WA_PIN_HINCF160_F16_PDF_STR-PANNO sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TANNO sy-vline
WA_PIN_HINCF160_F16_PDF_STR-GIRNO sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ICNUM sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CNAME1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CSTREET sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CCITY sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CPOCODE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CSTATE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FYBEGDA sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FYENDDA sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ASSM_START sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ASSM_END sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SAL_SEC17 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-VAL_F12BA sy-vline
WA_PIN_HINCF160_F16_PDF_STR-PROF_F12BA sy-vline
WA_PIN_HINCF160_F16_PDF_STR-GROSS_SAL sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC10_ALL sy-vline
WA_PIN_HINCF160_F16_PDF_STR-BALANCE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-STD_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ETALL sy-vline
WA_PIN_HINCF160_F16_PDF_STR-PTAX sy-vline
WA_PIN_HINCF160_F16_PDF_STR-AGGR_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SALARIES sy-vline
WA_PIN_HINCF160_F16_PDF_STR-OTH_INCOME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-GROSS_TOT_INCOME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC80_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TOT_INCOME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TAX_TOT_INCOME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TOT_EPF sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TOT_SEC88 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC88_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SECB88_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SECC88_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-P14_TEXT sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CHAPVI_DED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TAX_BEF_RELIEF sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC89_RELIEF sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TAX_PAYABLE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TAX_DEDUCTED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-EMPLOYER_TAX sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TOTAL_TAX sy-vline
WA_PIN_HINCF160_F16_PDF_STR-NET_TAX_PAYABLE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TOTAL sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TDS_PETD sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TDS_IFOS sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TOT_TAX_DEDUCTED sy-vline
WA_PIN_HINCF160_F16_PDF_STR-RP_NAME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-RP_SOF sy-vline
WA_PIN_HINCF160_F16_PDF_STR-RP_DSG sy-vline
WA_PIN_HINCF160_F16_PDF_STR-AMT_IN_WORDS sy-vline
WA_PIN_HINCF160_F16_PDF_STR-REPODATE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-RPLACE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FTEXT1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FTEXT2 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-HNUMB sy-vline
WA_PIN_HINCF160_F16_PDF_STR-LOCALITY sy-vline
WA_PIN_HINCF160_F16_PDF_STR-PIN sy-vline
WA_PIN_HINCF160_F16_PDF_STR-CITY sy-vline
WA_PIN_HINCF160_F16_PDF_STR-TELN sy-vline
WA_PIN_HINCF160_F16_PDF_STR-DOB sy-vline
WA_PIN_HINCF160_F16_PDF_STR-GENDER sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FFNAME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FLNAME sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SAL_WO_WORK sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FIN_START sy-vline
WA_PIN_HINCF160_F16_PDF_STR-FIN_END sy-vline
WA_PIN_HINCF160_F16_PDF_STR-EDU_CESS sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SURCHARGE sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC80_CCC_CONMT sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC80_CCC_DEDMT sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC80_CCD_CONMT sy-vline
WA_PIN_HINCF160_F16_PDF_STR-SEC80_CCD_DEDMT sy-vline
WA_PIN_HINCF160_F16_PDF_STR-DED_S24 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-BUS_PROF sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ1_1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ1_2 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ1_3 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ1_4 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ2_1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ2_2 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ2_3 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ2_4 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ3_1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ3_2 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ3_3 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ3_4 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ4_1 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ4_2 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ4_3 sy-vline
WA_PIN_HINCF160_F16_PDF_STR-ACKNOQ4_4 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.