SlideShare une entreprise Scribd logo
1  sur  65
ABAP Advanced List
   Control Break Report
   ALV Report
Types of ABAP Report

1


                     3




                 1. Report Listing
     4           2. Drill-down Report
                 3. Control-break Report
                 4. ALV Report
Internal Table Processing Technique
        Control-Break Report
Control Break Report Technique

   AT   FIRST
   AT   NEW <Control Break field>
   AT   END OF <Control Break field>   ENDAT
   AT   LAST

 SUM
Program Structure
…
LOOP AT tab.
                             tab
*Print Header
 AT FIRST.
 …
                             name   qty
 ENDAT.
*Print Control Break Field
 AT NEW name.
 …
 ENDAT.
*Print Normal Data
 WRITE: / …
*Sub Total
 AT END OF name.
 …
 ENDAT.
*Report Total
 AT LAST.
 …
 ENDAT.
ENDLOOP.
Example I
sales
name    qty



A       10

A       20

A       30
B       5

B       10
Example I
…
LOOP AT SALES.
*Print Header
 AT FIRST.
 FORMAT COLOR 1.
 WRITE: / 'Name', 23 'Qty', 35 ' '.
 ULINE: /(35).
 FORMAT COLOR OFF.
 ENDAT.
*Print Control Break Field
 AT NEW NAME.
 WRITE: / SALES-NAME.
 ULINE: /(5).
 ENDAT.
*Print Normal Data
 WRITE: /15 SALES-QTY.
Example I
*Print Total for each group data
AT END OF NAME.
 ULINE: /(35).
 SUM.
 WRITE: /5 'Total' ,15 SALES-QTY COLOR 3.
ENDAT.
*Print Grand Total for the report
AT LAST.
 ULINE: /(35).
 SUM.
 WRITE: /2 'Grand Total', 15 SALES-QTY COLOR 7.
 ULINE: /(35).
ENDAT.
ENDLOOP.
Example II
sales
name    qty



A       10

A       20

A       30
B       5

B       10
Example II
…
LOOP AT SALES.
 AT FIRST.
 FORMAT COLOR 1.
 WRITE: / 'Name', 23 'Qty', 35 ' '.
 ULINE: /(35).
 FORMAT COLOR OFF.
 ENDAT.
 AT END OF NAME.
 SUM.
 WRITE: / SALES-NAME, 15 SALES-QTY.
 ULINE: /(35).
 ENDAT.
 AT LAST.
 SUM.
 WRITE: /5 'Total', 15 SALES-QTY.
 ULINE: /(35).
 ENDAT.
ENDLOOP.
Exercise I
ZSALES
 cust_id   prod_id   sale_date   qty
   1         A1      20020318    10
   1         A1      20020319    100
   1         A1      20020329    50
   1         A2      20020318    50
   1         A2      20020329    200
   3         X1      20020321    90
Exercise I
ID
     Product ID              Quantity
1
        A1                        10
        A1                       100
        A1                        50
        A2                        50
        A2                       200
         ------------------------------
         Total                  410

3
         X1                       90
        ------------------------------
         Total                    90
        ------------------------------
     Grand Total                 500
     ----------------------------------
Example Data for Example III
    spfli
    Carrid   Connid   Cityfrom   cityto   distance


     LH      0400       NY         BK       100

     LH      0402       BK         NY       540

     SQ      0110       SQ         BK       250
Example III
Data flight like spfli occurs 0 with Header line.
Select * from spfli into table flight.
loop at flight.
 at new carrid.                      LH 0400 0402
   write : / flight-carrid.          ___________
                                     SQ 0110
 endat.                              ___________
 write flight-connid.
 at end of carrid.
  uline / (25).
 endat.
endloop.
Internal Table Processing Example
 tab(internal table)
  ID   Name   prodno    Month     YTD      Accum


  1     A      01      100.00   400.00   1,000.00

  1     A      02      50.00    100.00    100.00

  1     A      03      100.00   100.00    100.00

  2     B      02      100.00   1,000.00 2,000.00

  2     B      03      100.00   100.00    100.00
ID           Name                Month             Y-T-D          Accumulated
   Product No.
------------------------------------------------------------------------------------
4               A
-----------------
        01                       100.00           400.00           1,000.00
        02                        50.00           100.00              100.00
        03                       100.00           100.00              100.00
                                ----------------------------------------------------
                                 250.00           600.00           1,200.00
2              B
-----------------
        02                       100.00         1,000.00          2,000.00
        03                       100.00           100.00             100.00
                                ----------------------------------------------------
                               200.00 1,100.00                  2,100.00
                               ----------------------------------------------------
      Total                    450.00         1,340.00           3,200.00
                               ----------------------------------------------------
ABAP Program
...
loop at tab.
   at first.
    write: / ‘ID’ , 10 ‘Name’, 30 ‘Month’, 50 ‘Y-T-D’ ,
             70 ‘Accumulated’.
    write: /5 ‘Product No’.
    uline /.
   endat.
   on change of tab-id.
    write: / tab-id, 10 tab-name.
    uline: /(20).
   endon.
   write: /5 tab-prodno, 30 tab-month, 50 tab-ytd,
           70 tab-accum.
ABAP Program
  at end of id.
     uline /30(60).
     sum.
     write: /30 tab-month, 50 tab-ytd, 70 tab-accum.
     skip.
 endat.
 at last.
    sum.
    uline /30(60).
    write: /10 ‘Total’, 30 tab-month, 50 tab-ytd, 70 tab-accum.
    uline /30(60).
 endat.
endloop.
Exercise II
ZCUSTOMERS
                             ZSALES
id   name      city
                              cust_id   prod_id   sale_date   qty
1    John    New York
                                1         A1      20020318    10
2    Peter    London
                                1         A1      20020319    100
3    David   Singapore
                                1         A1      20020329    50
                                1         A2      20020318    50
                                1         A2      20020329    200
                                3         X1      20020321    90
Exercise II
ID Name
____Product ID           Quantity
 1 John
    A1                       10
    A1                      100
    A1                        50
    A2                       50
    A2                     200
    ----------------------------
    Total                   410

3     Peter
        X1                       90
       ----------------------------
        Total                    90
       ----------------------------
    Grand Total                500
    -------------------------------
Control Break Report > 1 Level
                           Loop at tab.
tab   sort tab by f1 f2.    …             Group Header Level 1
                            at new f1.
f1    f2   f3                …
                            endat.        Group Header Level 2
A     1    1                at new f2.
                             …
A     1    2                endat.
                            write: / … “normal data
A     2    1                at end of f2.
                                                 Sub Total Level 2
                             …
B     2    1                endat.
B     2    2                at end of f1.
                             …                   Sub Total Level 1

B     3    3                endat.
                            …
C     3    4               Endloop.
Example IV (Control-break 2 Levels)

sales
name    date       qty



A       20070126   10

A       20070126   20

A       20070128   30
B       20070126   5

B       20070126   10
Example IV (Control-break 2 Levels)
…
AT NEW NAME.
 WRITE: / SALES-NAME.
 ULINE: /(5).
ENDAT.
AT NEW DATE.
 WRITE: /10 SALES-DATE.
 ULINE: /10(10).
ENDAT.
WRITE: /30 SALES-QTY.
AT END OF DATE.
 ULINE: /(50).
 SUM.
 WRITE: /15 'Sub Total(Date)' ,30 SALES-QTY COLOR COL_TOTAL.
ENDAT.
AT END OF NAME.
 ULINE: /(50).
 SUM.
 WRITE: /5 'Sub Total(Name)' ,30 SALES-QTY COLOR COL_TOTAL.
ENDAT.
…
Exercise III
ZSALES
cust_id   prod_id   sale_date   qty
  1         A1      20020318    10
  1         A1      20020319    100
  1         A1      20020329    50
  1         A2      20020318    50
  1         A2      20020329    200
  3         X1      20020321    90
Exercise III
ALV Report
ALV Report
   ALV Report Listing using Function Module
   ALV Report using Control (ABAP Object)
ALV Grid Listing
   Call function ‘REUSE_ALV_GRID_DISPLAY’
ALV Grid Listing Example
REPORT ZALV01 NO STANDARD PAGE HEADING.
* Internal table
DATA: GT_TAB LIKE SFLIGHT OCCURS 0 WITH HEADER LINE.
* Load Data from DB into internal table
SELECT * FROM SFLIGHT INTO TABLE GT_TAB.
* Call ABAP List Viewer function
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
         I_STRUCTURE_NAME   = 'SFLIGHT'
    TABLES
         T_OUTTAB           = GT_TAB.
ALV Example I
List/Grid Display
ALV List/Grid Display
REPORT ZALV02 NO STANDARD PAGE HEADING.
PARAMETERS: list radiobutton group grp1,
                grid radiobutton group grp1.
DATA: gt_tab LIKE sflight OCCURS 0 WITH HEADER LINE.
START-OF-SELECTION.
 SELECT * FROM sflight INTO TABLE gt_tab.
 IF list = 'X'.
* Call ALV List Viewer
  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
       EXPORTING
          I_STRUCTURE_NAME = 'SFLIGHT'
       TABLES
          T_OUTTAB                = GT_TAB.
 ELSE.
* Call ALV Grid Viewer
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
          I_STRUCTURE_NAME = 'SFLIGHT'
       TABLES
          T_OUTTAB                = GT_TAB.
 ENDIF..
ALV Report : Exercise I
ALV Example II
Using Field Catalog
ALV Field Catalog
REPORT ZALV03 NO STANDARD PAGE HEADING.
type-pools slis.
types: begin of i_structure,
       carrid like sflight-carrid,
       connid like sflight-connid,
       fldate like sflight-fldate,
       price like sflight-price,
       end of i_structure.

data: gt_fieldcat type slis_t_fieldcat_alv,
      gt_outtab type i_structure occurs 0 with header line.

initialization.
  perform field_cat_init using gt_fieldcat[].
ALV Field Catalog
FORM field_cat_init using rt_fieldcat type slis_t_fieldcat_alv.
 data: ls_fieldcat type slis_fieldcat_alv,
        pos type i value 1.
 clear LS_FIELDCAT.
*Column 1
 ls_fieldcat-col_pos         = pos.
 ls_fieldcat-fieldname       = 'CARRID'.
 ls_fieldcat-ref_fieldname = 'CARRID'.
 ls_fieldcat-ref_tabname = 'SFLIGHT'.
 ls_fieldcat-key              = 'X'.
 append ls_fieldcat to rt_fieldcat.
 clear ls_fieldcat.
 pos = pos + 1.
ALV Field Catalog
*Column 2
 ls_fieldcat-col_pos        = pos.
 ls_fieldcat-fieldname       = 'CONNID'.
 ls_fieldcat-ref_fieldname = 'CONNID'.
 ls_fieldcat-ref_tabname = 'SFLIGHT'.
 ls_fieldcat-key             = 'X'.
 append ls_fieldcat to rt_fieldcat.
 clear ls_fieldcat.
 pos = pos + 1.

*Column 3
 ls_fieldcat-col_pos        = pos.
 ls_fieldcat-fieldname       = 'FLDATE'.
 ls_fieldcat-ref_fieldname = 'FLDATE'.
 ls_fieldcat-ref_tabname = 'SFLIGHT'.
 ls_fieldcat-key             = 'X'.
 append ls_fieldcat to rt_fieldcat.
 clear ls_fieldcat.
 pos = pos + 1.
ALV Field Catalog

*Column 4
 ls_fieldcat-col_pos        = pos.
 ls_fieldcat-fieldname       = 'PRICE'.
 ls_fieldcat-ref_fieldname = 'PRICE'.
 ls_fieldcat-ref_tabname = 'SFLIGHT'.
 append ls_fieldcat to rt_fieldcat.
 clear ls_fieldcat.
 pos = pos + 1.
endform.
ALV Field Catalog
START-OF-SELECTION.
 SELECT carrid connid fldate price
  FROM SFLIGHT
   INTO TABLE GT_OUTTAB.
 CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
        I_STRUCTURE_NAME         = 'I_STRUCTURE'
        IT_FIELDCAT              = gt_fieldcat[]
    TABLES
        T_OUTTAB                 = gt_outtab.
ALV Field Catalog
ALV Report : Exercise II
ALV Example III
 Using Field Catalog
(Add Derived Column)
ALV Field Catalog – Add Field
…
types: begin of i_structure,
     carrid like sflight-carrid,
     connid like sflight-connid,
     fldate like sflight-fldate,
     price like sflight-price,
     avail_seat like SFLIGHT-SEATSOCC,
     end of i_structure.
…

START-OF-SELECTION.
 select * from sflight.
  move-corresponding sflight to gt_outtab.
  gt_outtab-avail_seat = sflight-seatsmax - sflight-seatsocc.
  append gt_outtab.
 endselect.
ALV Field Catalog – Add Field
form field_cat_init using rt_fieldcat type slis_t_fieldcat_alv.
…
*Column 4
 ls_fieldcat-col_pos         = pos.
 ls_fieldcat-fieldname       = 'PRICE'.
 ls_fieldcat-ref_fieldname = 'PRICE'.
 ls_fieldcat-ref_tabname = 'SFLIGHT'.
 append ls_fieldcat to rt_fieldcat.
 clear ls_fieldcat.
 pos = pos + 1.
*Column 5
 ls_fieldcat-col_pos            = pos.
 ls_fieldcat-fieldname          = 'AVAIL_SEAT'.
 ls_fieldcat-SELTEXT_L          = 'Available Seat'.
 ls_fieldcat-DDICTXT             = 'L'.
 *ls_fieldcat-ref_fieldname = 'SEATSOCC'.
 *ls_fieldcat-ref_tabname = 'SFLIGHT'.
 append ls_fieldcat to rt_fieldcat.
 clear ls_fieldcat.
 pos = pos + 1.
endform.
ALV Field Catalog – Add Field
ALV Report : Exercise III
ALV Example IV
   Using Field Catalog
(SELECT … INNER JOIN…)
ALV Field Catalog – Select … Inner Join …
…
types: begin of i_structure,
      carrid LIKE spfli-carrid,
      connid LIKE spfli-connid,
      fldate LIKE sflight-fldate,
      cityto LIKE spfli-cityto,
      price LIKE sflight-price,
      end of i_structure.
…

START-OF-SELECTION.
 SELECT spfli~carrid spfli~connid sflight~fldate
         spfli~cityto sflight~price
   INTO TABLE gt_outtab
    FROM spfli INNER JOIN sflight
     ON spfli~carrid = sflight~carrid AND
        spfli~connid = sflight~connid.
ALV Field Catalog
form field_cat_init using rt_fieldcat type slis_t_fieldcat_alv.
…
*Column 4
  ls_fieldcat-col_pos        = pos.
  ls_fieldcat-fieldname      = 'CITYTO'.
  ls_fieldcat-ref_fieldname = 'CITYTO'.
  ls_fieldcat-ref_tabname = 'SPFLI'.
  APPEND ls_fieldcat TO rt_fieldcat.
  CLEAR ls_fieldcat.
  pos = pos + 1.
*Column 5
  ls_fieldcat-col_pos        = pos.
  ls_fieldcat-fieldname      = 'PRICE'.
  ls_fieldcat-ref_fieldname = 'PRICE'.
  ls_fieldcat-ref_tabname = 'SFLIGHT'.
  APPEND ls_fieldcat TO rt_fieldcat.
  CLEAR ls_fieldcat.
  pos = pos + 1.
ENDFORM.                  "field_cat_init
ALV Report : Example IV
Exercise IV

ZCUSTOMERS
                                       ZSALES
id       name            city
                                        cust_id   prod_id   sale_date   qty
1        John          New York
                                          1         A1      20020318    10
2        Peter          London
                                          1         A1      20020319    100
3        David         Singapore
                                          1         A1      20020329    50
                                          1         A2      20020318    50
ZPRODUCTS
                                          1         A2      20020329    200
p_id      prod_name         on_hand       3         X1      20020321    90
    A1           Pen            100
    A2       Pencil             125
    B1       Ruler               80
    X1          Tape            120
ALV Report : Exercise IV


                                                         zsales-sale_date
zcustomers-id
                 zcustomers-name   zproducts-prod_name
                                                                            zsales-qty
ALV Technique
ALV : Variant
ALV : Variant
REPORT ZALV06 NO STANDARD PAGE HEADING.
type-pools slis.
types: begin of i_structure,
       carrid like sflight-carrid,
       connid like sflight-connid,
       fldate like sflight-fldate,
       price like sflight-price,
       end of i_structure.

data: gt_fieldcat type slis_t_fieldcat_alv,
      isvariant like DISVARIANT. "ADD
      gt_outtab type i_structure occurs 0 with header line.

initialization.
  perform field_cat_init using gt_fieldcat[].
  isvariant-report = 'ZALV06'. "ADD
ALV : Variant
START-OF-SELECTION.
 SELECT carrid connid fldate price
  FROM SFLIGHT
   INTO TABLE GT_OUTTAB.
 CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
        I_STRUCTURE_NAME           = 'I_STRUCTURE'
        IT_FIELDCAT                = gt_fieldcat[]
        IS_VARIANT                 = isvariant "ADD
        I_SAVE                  = 'A'   "ADD
                                 “ A = user&Global,U = user,X = global
     TABLES
        T_OUTTAB                = gt_outtab.
ALV : Zebra
ALV : Zebra
REPORT ZALV2 NO STANDARD PAGE HEADING.
type-pools slis.
types: begin of i_structure,
       carrid like sflight-carrid,
       connid like sflight-connid,
       fldate like sflight-fldate,
       price like sflight-price,
       end of i_structure.

data: gt_fieldcat type slis_t_fieldcat_alv,
      GT_LAYOUT TYPE SLIS_LAYOUT_ALV, "ADD
      gt_outtab type i_structure occurs 0 with header line.

initialization.
  perform field_cat_init using gt_fieldcat[].
  GT_LAYOUT-ZEBRA = 'X'. "ADD
ALV : Zebra
START-OF-SELECTION.
 SELECT carrid connid fldate price
  FROM SFLIGHT
   INTO TABLE GT_OUTTAB.
 CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
        I_STRUCTURE_NAME           = 'I_STRUCTURE'
        IT_FIELDCAT                = gt_fieldcat[]
        IS_LAYOUT                = GT_LAYOUT "ADD
     TABLES
        T_OUTTAB                 = gt_outtab.
ALV : Title
ALV : Title
REPORT ZALV2 NO STANDARD PAGE HEADING.
type-pools slis.
types: begin of i_structure,
       carrid like sflight-carrid,
       connid like sflight-connid,
       fldate like sflight-fldate,
       price like sflight-price,
       end of i_structure.

data: gt_fieldcat type slis_t_fieldcat_alv,
      GT_GID_TITLE TYPE LVC_TITLE, "ADD
      gt_outtab type i_structure occurs 0 with header line.

initialization.
  perform field_cat_init using gt_fieldcat[].
 concatenate 'Flight Information' ' for ALV Report' into GT_GID_TITLE. "ADD
ALV : Title

START-OF-SELECTION.
 SELECT carrid connid fldate price
  FROM SFLIGHT
   INTO TABLE GT_OUTTAB.
 CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
        I_STRUCTURE_NAME           = 'I_STRUCTURE'
        IT_FIELDCAT                = gt_fieldcat[]
        I_GRID_TITLE             = GT_GID_TITLE "ADD
     TABLES
        T_OUTTAB                 = gt_outtab.
Exercise
Exercise : Sale Order
                    KNA1
  VBAK




VBAP
Exercise : Control-break Report
             vbak-audat                             vbap-matnr
vbak-vbeln                vbak-kunnr   kna1-name1                vbap-netwr
Exercise : ALV Report

             vbak-audat

                                                    vbap-matnr   vbap-netwr
vbak-vbeln                vbak-kunnr   kna1-name1

Contenu connexe

Tendances

Sap abap interview questions
Sap abap interview questionsSap abap interview questions
Sap abap interview questions
kssr99
 
abap list viewer (alv)
abap list viewer (alv)abap list viewer (alv)
abap list viewer (alv)
Kranthi Kumar
 
User exit training
User exit trainingUser exit training
User exit training
Jen Ringel
 
1000 solved questions
1000 solved questions1000 solved questions
1000 solved questions
Kranthi Kumar
 
Sap abap modularization interview questions
Sap abap modularization interview questionsSap abap modularization interview questions
Sap abap modularization interview questions
Pradipta Mohanty
 
Step by Step guide for creating first ABAP report in SAP
Step by Step guide for creating first ABAP report in SAPStep by Step guide for creating first ABAP report in SAP
Step by Step guide for creating first ABAP report in SAP
nityaabap
 
Chapter 02 sap script forms
Chapter 02 sap script formsChapter 02 sap script forms
Chapter 02 sap script forms
Kranthi Kumar
 

Tendances (20)

Sap abap interview questions
Sap abap interview questionsSap abap interview questions
Sap abap interview questions
 
ABAP Advanced List
ABAP Advanced ListABAP Advanced List
ABAP Advanced List
 
List Processing in ABAP
List Processing in ABAPList Processing in ABAP
List Processing in ABAP
 
abap list viewer (alv)
abap list viewer (alv)abap list viewer (alv)
abap list viewer (alv)
 
User exit training
User exit trainingUser exit training
User exit training
 
ABAP for Beginners - www.sapdocs.info
ABAP for Beginners - www.sapdocs.infoABAP for Beginners - www.sapdocs.info
ABAP for Beginners - www.sapdocs.info
 
1000 solved questions
1000 solved questions1000 solved questions
1000 solved questions
 
Sap abap modularization interview questions
Sap abap modularization interview questionsSap abap modularization interview questions
Sap abap modularization interview questions
 
Type casting in ooabap
Type casting in ooabapType casting in ooabap
Type casting in ooabap
 
Step by Step guide for creating first ABAP report in SAP
Step by Step guide for creating first ABAP report in SAPStep by Step guide for creating first ABAP report in SAP
Step by Step guide for creating first ABAP report in SAP
 
Sap abap
Sap abapSap abap
Sap abap
 
Chapter 02 sap script forms
Chapter 02 sap script formsChapter 02 sap script forms
Chapter 02 sap script forms
 
ABAP Message, Debugging, File Transfer and Type Group
ABAP Message, Debugging, File Transfer and Type GroupABAP Message, Debugging, File Transfer and Type Group
ABAP Message, Debugging, File Transfer and Type Group
 
Dialog programming ABAP
Dialog programming ABAPDialog programming ABAP
Dialog programming ABAP
 
ABAP Programming Overview
ABAP Programming OverviewABAP Programming Overview
ABAP Programming Overview
 
Bapi step-by-step
Bapi step-by-stepBapi step-by-step
Bapi step-by-step
 
Field symbols
Field symbolsField symbols
Field symbols
 
05 internal tables
05 internal tables05 internal tables
05 internal tables
 
SAP ABAP data dictionary
SAP ABAP data dictionarySAP ABAP data dictionary
SAP ABAP data dictionary
 
Table maintenance generator and its modifications
Table maintenance generator and its modificationsTable maintenance generator and its modifications
Table maintenance generator and its modifications
 

En vedette

SAP Accounts Payable Payment | http://sapdocs.info
SAP Accounts Payable Payment | http://sapdocs.infoSAP Accounts Payable Payment | http://sapdocs.info
SAP Accounts Payable Payment | http://sapdocs.info
sapdocs. info
 

En vedette (16)

HR ABAP Programming Training Material | http://sapdocs.info
HR ABAP Programming Training Material | http://sapdocs.infoHR ABAP Programming Training Material | http://sapdocs.info
HR ABAP Programming Training Material | http://sapdocs.info
 
ABAP Event-driven Programming &Selection Screen
ABAP Event-driven Programming &Selection ScreenABAP Event-driven Programming &Selection Screen
ABAP Event-driven Programming &Selection Screen
 
HR ABAP Technical Overview | http://sapdocs.info/
HR ABAP Technical Overview | http://sapdocs.info/HR ABAP Technical Overview | http://sapdocs.info/
HR ABAP Technical Overview | http://sapdocs.info/
 
ABAP Open SQL & Internal Table
ABAP Open SQL & Internal TableABAP Open SQL & Internal Table
ABAP Open SQL & Internal Table
 
Introduction to ABAP
Introduction to ABAPIntroduction to ABAP
Introduction to ABAP
 
Modularization & Catch Statement
Modularization & Catch StatementModularization & Catch Statement
Modularization & Catch Statement
 
Abap hr programing
Abap hr programingAbap hr programing
Abap hr programing
 
SAP FICO BBP Sample Document PDF NEW!
SAP FICO BBP Sample Document PDF NEW!SAP FICO BBP Sample Document PDF NEW!
SAP FICO BBP Sample Document PDF NEW!
 
Ab1011 module pool programming
Ab1011   module pool programmingAb1011   module pool programming
Ab1011 module pool programming
 
Comparison between abap & abap hr
Comparison between abap & abap hrComparison between abap & abap hr
Comparison between abap & abap hr
 
SAP Accounts Reveivable Functions | http://sapdocs.info
SAP Accounts Reveivable Functions | http://sapdocs.infoSAP Accounts Reveivable Functions | http://sapdocs.info
SAP Accounts Reveivable Functions | http://sapdocs.info
 
Open SQL & Internal Table
Open SQL & Internal TableOpen SQL & Internal Table
Open SQL & Internal Table
 
SAP Accounts Reveivable Customer Master | http://sapdocs.info
SAP Accounts Reveivable Customer Master | http://sapdocs.infoSAP Accounts Reveivable Customer Master | http://sapdocs.info
SAP Accounts Reveivable Customer Master | http://sapdocs.info
 
SAP Accounts Reveivable Introduction | http://sapdocs.info
SAP Accounts Reveivable Introduction | http://sapdocs.infoSAP Accounts Reveivable Introduction | http://sapdocs.info
SAP Accounts Reveivable Introduction | http://sapdocs.info
 
SAP HR Time Management User Guide | www.sapdocs.info
SAP HR Time Management User Guide | www.sapdocs.infoSAP HR Time Management User Guide | www.sapdocs.info
SAP HR Time Management User Guide | www.sapdocs.info
 
SAP Accounts Payable Payment | http://sapdocs.info
SAP Accounts Payable Payment | http://sapdocs.infoSAP Accounts Payable Payment | http://sapdocs.info
SAP Accounts Payable Payment | http://sapdocs.info
 

Similaire à 07.Advanced Abap

07.advanced abap
07.advanced abap07.advanced abap
07.advanced abap
Phong Ho
 
Custo de produção do eucalipto
Custo de produção do eucaliptoCusto de produção do eucalipto
Custo de produção do eucalipto
Josiady Souza
 
helath net Q1
helath net  Q1helath net  Q1
helath net Q1
finance18
 
StarPort_Capabilities_List_Rev_6
StarPort_Capabilities_List_Rev_6StarPort_Capabilities_List_Rev_6
StarPort_Capabilities_List_Rev_6
kelliemcdaniel
 
3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx
3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx
3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx
gilbertkpeters11344
 
KLIMA Software - Some DEMO Results Outputs in SERBIAN Language
KLIMA Software - Some DEMO Results Outputs in SERBIAN LanguageKLIMA Software - Some DEMO Results Outputs in SERBIAN Language
KLIMA Software - Some DEMO Results Outputs in SERBIAN Language
KLIMA Software
 
SAP T-Accounts Posting Simulation - Example
SAP T-Accounts Posting Simulation - ExampleSAP T-Accounts Posting Simulation - Example
SAP T-Accounts Posting Simulation - Example
Michael Knowles
 

Similaire à 07.Advanced Abap (20)

07.advanced abap
07.advanced abap07.advanced abap
07.advanced abap
 
T liner simulation parametric study of a thermal-liner by Julio c. banks, MSM...
T liner simulation parametric study of a thermal-liner by Julio c. banks, MSM...T liner simulation parametric study of a thermal-liner by Julio c. banks, MSM...
T liner simulation parametric study of a thermal-liner by Julio c. banks, MSM...
 
SAV
SAVSAV
SAV
 
Inline command emc内部inline命令集
Inline command emc内部inline命令集Inline command emc内部inline命令集
Inline command emc内部inline命令集
 
Custo de produção do eucalipto
Custo de produção do eucaliptoCusto de produção do eucalipto
Custo de produção do eucalipto
 
Zi fi final prog
Zi fi final progZi fi final prog
Zi fi final prog
 
Make your data dance
Make your data danceMake your data dance
Make your data dance
 
Microeconomics-The cost of production.ppt
Microeconomics-The cost of production.pptMicroeconomics-The cost of production.ppt
Microeconomics-The cost of production.ppt
 
En business plan
En business planEn business plan
En business plan
 
helath net Q1
helath net  Q1helath net  Q1
helath net Q1
 
StarPort_Capabilities_List_Rev_6
StarPort_Capabilities_List_Rev_6StarPort_Capabilities_List_Rev_6
StarPort_Capabilities_List_Rev_6
 
03 cost curves
03 cost curves03 cost curves
03 cost curves
 
3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx
3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx
3117t13 A;signment Print ViewEsercise 17-1 4 Activity-bas.docx
 
OpenWorld 2018 - Common Application Developer Disasters
OpenWorld 2018 - Common Application Developer DisastersOpenWorld 2018 - Common Application Developer Disasters
OpenWorld 2018 - Common Application Developer Disasters
 
04 comb ex
04 comb ex04 comb ex
04 comb ex
 
KLIMA Software - Some DEMO Results Outputs in SERBIAN Language
KLIMA Software - Some DEMO Results Outputs in SERBIAN LanguageKLIMA Software - Some DEMO Results Outputs in SERBIAN Language
KLIMA Software - Some DEMO Results Outputs in SERBIAN Language
 
Amos command
Amos commandAmos command
Amos command
 
Vending machine
Vending machine Vending machine
Vending machine
 
SAP T-Accounts Posting Simulation - Example
SAP T-Accounts Posting Simulation - ExampleSAP T-Accounts Posting Simulation - Example
SAP T-Accounts Posting Simulation - Example
 
Atmospheric crude tower simulation
Atmospheric crude tower simulationAtmospheric crude tower simulation
Atmospheric crude tower simulation
 

Plus de sapdocs. info

Plus de sapdocs. info (20)

SAP PM Master Data Training Guide
SAP PM Master Data Training GuideSAP PM Master Data Training Guide
SAP PM Master Data Training Guide
 
SAP SD Certification (C_TSCM62_66) Preparation Training Notes
SAP SD Certification (C_TSCM62_66) Preparation Training NotesSAP SD Certification (C_TSCM62_66) Preparation Training Notes
SAP SD Certification (C_TSCM62_66) Preparation Training Notes
 
Variant Configuration in SAP PP: Beginner's Guide
Variant Configuration in SAP PP: Beginner's GuideVariant Configuration in SAP PP: Beginner's Guide
Variant Configuration in SAP PP: Beginner's Guide
 
SAP PP MRP Guide for Beginners
SAP PP MRP Guide for BeginnersSAP PP MRP Guide for Beginners
SAP PP MRP Guide for Beginners
 
SAP ECC 6.0 PM Configuration Manual - www.sapdocs.info
SAP ECC 6.0 PM Configuration Manual - www.sapdocs.infoSAP ECC 6.0 PM Configuration Manual - www.sapdocs.info
SAP ECC 6.0 PM Configuration Manual - www.sapdocs.info
 
SAP PM Training Manual - www.sapdocs.info
SAP PM Training Manual - www.sapdocs.infoSAP PM Training Manual - www.sapdocs.info
SAP PM Training Manual - www.sapdocs.info
 
ABAP Basico para Consultores Funcionales
ABAP Basico para Consultores FuncionalesABAP Basico para Consultores Funcionales
ABAP Basico para Consultores Funcionales
 
SAP Configuration Guide for Functional Modules (Based on IDES)
SAP Configuration Guide for Functional Modules (Based on IDES)SAP Configuration Guide for Functional Modules (Based on IDES)
SAP Configuration Guide for Functional Modules (Based on IDES)
 
SAP FI-AP TCODES & MENU PATHS
SAP FI-AP TCODES & MENU PATHSSAP FI-AP TCODES & MENU PATHS
SAP FI-AP TCODES & MENU PATHS
 
SAP FI-AR TCODES & MENU PATHS
SAP FI-AR TCODES & MENU PATHSSAP FI-AR TCODES & MENU PATHS
SAP FI-AR TCODES & MENU PATHS
 
SAP CO Configuration Guide - Exclusive Document
SAP CO Configuration Guide - Exclusive DocumentSAP CO Configuration Guide - Exclusive Document
SAP CO Configuration Guide - Exclusive Document
 
SAP PP End User Document - www.sapdocs.info
SAP PP End User Document - www.sapdocs.infoSAP PP End User Document - www.sapdocs.info
SAP PP End User Document - www.sapdocs.info
 
SAP MM Configuration - Real Project Documentation
SAP MM Configuration - Real Project DocumentationSAP MM Configuration - Real Project Documentation
SAP MM Configuration - Real Project Documentation
 
SAP FI AP: Configuration & End User Guide
SAP FI AP: Configuration & End User GuideSAP FI AP: Configuration & End User Guide
SAP FI AP: Configuration & End User Guide
 
SAP FI AR: End User Guide for Beginners
SAP FI AR: End User Guide for BeginnersSAP FI AR: End User Guide for Beginners
SAP FI AR: End User Guide for Beginners
 
SAP FI AP: End User Guide for Beginners
SAP FI AP: End User Guide for BeginnersSAP FI AP: End User Guide for Beginners
SAP FI AP: End User Guide for Beginners
 
SAP FI Asset Accounting: End User Guide for Beginners
SAP FI Asset Accounting: End User Guide for BeginnersSAP FI Asset Accounting: End User Guide for Beginners
SAP FI Asset Accounting: End User Guide for Beginners
 
Variant Configurition in SAP: Beginners Guide | www.sapdocs.info
Variant Configurition in SAP: Beginners Guide | www.sapdocs.infoVariant Configurition in SAP: Beginners Guide | www.sapdocs.info
Variant Configurition in SAP: Beginners Guide | www.sapdocs.info
 
Exclusive SAP Basis Training Book | www.sapdocs.info
Exclusive SAP Basis Training Book | www.sapdocs.infoExclusive SAP Basis Training Book | www.sapdocs.info
Exclusive SAP Basis Training Book | www.sapdocs.info
 
SAP Plant Maintenance Training Material | www.sapdocs.info
SAP Plant Maintenance Training Material | www.sapdocs.infoSAP Plant Maintenance Training Material | www.sapdocs.info
SAP Plant Maintenance Training Material | www.sapdocs.info
 

Dernier

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 

Dernier (20)

General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-IIFood Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 

07.Advanced Abap

  • 1. ABAP Advanced List  Control Break Report  ALV Report
  • 2. Types of ABAP Report 1 3 1. Report Listing 4 2. Drill-down Report 3. Control-break Report 4. ALV Report
  • 3. Internal Table Processing Technique Control-Break Report
  • 4. Control Break Report Technique  AT FIRST  AT NEW <Control Break field>  AT END OF <Control Break field> ENDAT  AT LAST  SUM
  • 5. Program Structure … LOOP AT tab. tab *Print Header AT FIRST. … name qty ENDAT. *Print Control Break Field AT NEW name. … ENDAT. *Print Normal Data WRITE: / … *Sub Total AT END OF name. … ENDAT. *Report Total AT LAST. … ENDAT. ENDLOOP.
  • 6. Example I sales name qty A 10 A 20 A 30 B 5 B 10
  • 7. Example I … LOOP AT SALES. *Print Header AT FIRST. FORMAT COLOR 1. WRITE: / 'Name', 23 'Qty', 35 ' '. ULINE: /(35). FORMAT COLOR OFF. ENDAT. *Print Control Break Field AT NEW NAME. WRITE: / SALES-NAME. ULINE: /(5). ENDAT. *Print Normal Data WRITE: /15 SALES-QTY.
  • 8. Example I *Print Total for each group data AT END OF NAME. ULINE: /(35). SUM. WRITE: /5 'Total' ,15 SALES-QTY COLOR 3. ENDAT. *Print Grand Total for the report AT LAST. ULINE: /(35). SUM. WRITE: /2 'Grand Total', 15 SALES-QTY COLOR 7. ULINE: /(35). ENDAT. ENDLOOP.
  • 9. Example II sales name qty A 10 A 20 A 30 B 5 B 10
  • 10. Example II … LOOP AT SALES. AT FIRST. FORMAT COLOR 1. WRITE: / 'Name', 23 'Qty', 35 ' '. ULINE: /(35). FORMAT COLOR OFF. ENDAT. AT END OF NAME. SUM. WRITE: / SALES-NAME, 15 SALES-QTY. ULINE: /(35). ENDAT. AT LAST. SUM. WRITE: /5 'Total', 15 SALES-QTY. ULINE: /(35). ENDAT. ENDLOOP.
  • 11. Exercise I ZSALES cust_id prod_id sale_date qty 1 A1 20020318 10 1 A1 20020319 100 1 A1 20020329 50 1 A2 20020318 50 1 A2 20020329 200 3 X1 20020321 90
  • 12. Exercise I ID Product ID Quantity 1 A1 10 A1 100 A1 50 A2 50 A2 200 ------------------------------ Total 410 3 X1 90 ------------------------------ Total 90 ------------------------------ Grand Total 500 ----------------------------------
  • 13. Example Data for Example III spfli Carrid Connid Cityfrom cityto distance LH 0400 NY BK 100 LH 0402 BK NY 540 SQ 0110 SQ BK 250
  • 14. Example III Data flight like spfli occurs 0 with Header line. Select * from spfli into table flight. loop at flight. at new carrid. LH 0400 0402 write : / flight-carrid. ___________ SQ 0110 endat. ___________ write flight-connid. at end of carrid. uline / (25). endat. endloop.
  • 15. Internal Table Processing Example tab(internal table) ID Name prodno Month YTD Accum 1 A 01 100.00 400.00 1,000.00 1 A 02 50.00 100.00 100.00 1 A 03 100.00 100.00 100.00 2 B 02 100.00 1,000.00 2,000.00 2 B 03 100.00 100.00 100.00
  • 16. ID Name Month Y-T-D Accumulated Product No. ------------------------------------------------------------------------------------ 4 A ----------------- 01 100.00 400.00 1,000.00 02 50.00 100.00 100.00 03 100.00 100.00 100.00 ---------------------------------------------------- 250.00 600.00 1,200.00 2 B ----------------- 02 100.00 1,000.00 2,000.00 03 100.00 100.00 100.00 ---------------------------------------------------- 200.00 1,100.00 2,100.00 ---------------------------------------------------- Total 450.00 1,340.00 3,200.00 ----------------------------------------------------
  • 17. ABAP Program ... loop at tab. at first. write: / ‘ID’ , 10 ‘Name’, 30 ‘Month’, 50 ‘Y-T-D’ , 70 ‘Accumulated’. write: /5 ‘Product No’. uline /. endat. on change of tab-id. write: / tab-id, 10 tab-name. uline: /(20). endon. write: /5 tab-prodno, 30 tab-month, 50 tab-ytd, 70 tab-accum.
  • 18. ABAP Program at end of id. uline /30(60). sum. write: /30 tab-month, 50 tab-ytd, 70 tab-accum. skip. endat. at last. sum. uline /30(60). write: /10 ‘Total’, 30 tab-month, 50 tab-ytd, 70 tab-accum. uline /30(60). endat. endloop.
  • 19. Exercise II ZCUSTOMERS ZSALES id name city cust_id prod_id sale_date qty 1 John New York 1 A1 20020318 10 2 Peter London 1 A1 20020319 100 3 David Singapore 1 A1 20020329 50 1 A2 20020318 50 1 A2 20020329 200 3 X1 20020321 90
  • 20. Exercise II ID Name ____Product ID Quantity 1 John A1 10 A1 100 A1 50 A2 50 A2 200 ---------------------------- Total 410 3 Peter X1 90 ---------------------------- Total 90 ---------------------------- Grand Total 500 -------------------------------
  • 21. Control Break Report > 1 Level Loop at tab. tab sort tab by f1 f2. … Group Header Level 1 at new f1. f1 f2 f3 … endat. Group Header Level 2 A 1 1 at new f2. … A 1 2 endat. write: / … “normal data A 2 1 at end of f2. Sub Total Level 2 … B 2 1 endat. B 2 2 at end of f1. … Sub Total Level 1 B 3 3 endat. … C 3 4 Endloop.
  • 22. Example IV (Control-break 2 Levels) sales name date qty A 20070126 10 A 20070126 20 A 20070128 30 B 20070126 5 B 20070126 10
  • 23. Example IV (Control-break 2 Levels) … AT NEW NAME. WRITE: / SALES-NAME. ULINE: /(5). ENDAT. AT NEW DATE. WRITE: /10 SALES-DATE. ULINE: /10(10). ENDAT. WRITE: /30 SALES-QTY. AT END OF DATE. ULINE: /(50). SUM. WRITE: /15 'Sub Total(Date)' ,30 SALES-QTY COLOR COL_TOTAL. ENDAT. AT END OF NAME. ULINE: /(50). SUM. WRITE: /5 'Sub Total(Name)' ,30 SALES-QTY COLOR COL_TOTAL. ENDAT. …
  • 24. Exercise III ZSALES cust_id prod_id sale_date qty 1 A1 20020318 10 1 A1 20020319 100 1 A1 20020329 50 1 A2 20020318 50 1 A2 20020329 200 3 X1 20020321 90
  • 27. ALV Report  ALV Report Listing using Function Module  ALV Report using Control (ABAP Object)
  • 28. ALV Grid Listing  Call function ‘REUSE_ALV_GRID_DISPLAY’
  • 29. ALV Grid Listing Example REPORT ZALV01 NO STANDARD PAGE HEADING. * Internal table DATA: GT_TAB LIKE SFLIGHT OCCURS 0 WITH HEADER LINE. * Load Data from DB into internal table SELECT * FROM SFLIGHT INTO TABLE GT_TAB. * Call ABAP List Viewer function CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'SFLIGHT' TABLES T_OUTTAB = GT_TAB.
  • 31. ALV List/Grid Display REPORT ZALV02 NO STANDARD PAGE HEADING. PARAMETERS: list radiobutton group grp1, grid radiobutton group grp1. DATA: gt_tab LIKE sflight OCCURS 0 WITH HEADER LINE. START-OF-SELECTION. SELECT * FROM sflight INTO TABLE gt_tab. IF list = 'X'. * Call ALV List Viewer CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'SFLIGHT' TABLES T_OUTTAB = GT_TAB. ELSE. * Call ALV Grid Viewer CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'SFLIGHT' TABLES T_OUTTAB = GT_TAB. ENDIF..
  • 32. ALV Report : Exercise I
  • 33. ALV Example II Using Field Catalog
  • 34. ALV Field Catalog REPORT ZALV03 NO STANDARD PAGE HEADING. type-pools slis. types: begin of i_structure, carrid like sflight-carrid, connid like sflight-connid, fldate like sflight-fldate, price like sflight-price, end of i_structure. data: gt_fieldcat type slis_t_fieldcat_alv, gt_outtab type i_structure occurs 0 with header line. initialization. perform field_cat_init using gt_fieldcat[].
  • 35. ALV Field Catalog FORM field_cat_init using rt_fieldcat type slis_t_fieldcat_alv. data: ls_fieldcat type slis_fieldcat_alv, pos type i value 1. clear LS_FIELDCAT. *Column 1 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'CARRID'. ls_fieldcat-ref_fieldname = 'CARRID'. ls_fieldcat-ref_tabname = 'SFLIGHT'. ls_fieldcat-key = 'X'. append ls_fieldcat to rt_fieldcat. clear ls_fieldcat. pos = pos + 1.
  • 36. ALV Field Catalog *Column 2 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'CONNID'. ls_fieldcat-ref_fieldname = 'CONNID'. ls_fieldcat-ref_tabname = 'SFLIGHT'. ls_fieldcat-key = 'X'. append ls_fieldcat to rt_fieldcat. clear ls_fieldcat. pos = pos + 1. *Column 3 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'FLDATE'. ls_fieldcat-ref_fieldname = 'FLDATE'. ls_fieldcat-ref_tabname = 'SFLIGHT'. ls_fieldcat-key = 'X'. append ls_fieldcat to rt_fieldcat. clear ls_fieldcat. pos = pos + 1.
  • 37. ALV Field Catalog *Column 4 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'PRICE'. ls_fieldcat-ref_fieldname = 'PRICE'. ls_fieldcat-ref_tabname = 'SFLIGHT'. append ls_fieldcat to rt_fieldcat. clear ls_fieldcat. pos = pos + 1. endform.
  • 38. ALV Field Catalog START-OF-SELECTION. SELECT carrid connid fldate price FROM SFLIGHT INTO TABLE GT_OUTTAB. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'I_STRUCTURE' IT_FIELDCAT = gt_fieldcat[] TABLES T_OUTTAB = gt_outtab.
  • 40. ALV Report : Exercise II
  • 41. ALV Example III Using Field Catalog (Add Derived Column)
  • 42. ALV Field Catalog – Add Field … types: begin of i_structure, carrid like sflight-carrid, connid like sflight-connid, fldate like sflight-fldate, price like sflight-price, avail_seat like SFLIGHT-SEATSOCC, end of i_structure. … START-OF-SELECTION. select * from sflight. move-corresponding sflight to gt_outtab. gt_outtab-avail_seat = sflight-seatsmax - sflight-seatsocc. append gt_outtab. endselect.
  • 43. ALV Field Catalog – Add Field form field_cat_init using rt_fieldcat type slis_t_fieldcat_alv. … *Column 4 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'PRICE'. ls_fieldcat-ref_fieldname = 'PRICE'. ls_fieldcat-ref_tabname = 'SFLIGHT'. append ls_fieldcat to rt_fieldcat. clear ls_fieldcat. pos = pos + 1. *Column 5 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'AVAIL_SEAT'. ls_fieldcat-SELTEXT_L = 'Available Seat'. ls_fieldcat-DDICTXT = 'L'. *ls_fieldcat-ref_fieldname = 'SEATSOCC'. *ls_fieldcat-ref_tabname = 'SFLIGHT'. append ls_fieldcat to rt_fieldcat. clear ls_fieldcat. pos = pos + 1. endform.
  • 44. ALV Field Catalog – Add Field
  • 45. ALV Report : Exercise III
  • 46. ALV Example IV Using Field Catalog (SELECT … INNER JOIN…)
  • 47. ALV Field Catalog – Select … Inner Join … … types: begin of i_structure, carrid LIKE spfli-carrid, connid LIKE spfli-connid, fldate LIKE sflight-fldate, cityto LIKE spfli-cityto, price LIKE sflight-price, end of i_structure. … START-OF-SELECTION. SELECT spfli~carrid spfli~connid sflight~fldate spfli~cityto sflight~price INTO TABLE gt_outtab FROM spfli INNER JOIN sflight ON spfli~carrid = sflight~carrid AND spfli~connid = sflight~connid.
  • 48. ALV Field Catalog form field_cat_init using rt_fieldcat type slis_t_fieldcat_alv. … *Column 4 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'CITYTO'. ls_fieldcat-ref_fieldname = 'CITYTO'. ls_fieldcat-ref_tabname = 'SPFLI'. APPEND ls_fieldcat TO rt_fieldcat. CLEAR ls_fieldcat. pos = pos + 1. *Column 5 ls_fieldcat-col_pos = pos. ls_fieldcat-fieldname = 'PRICE'. ls_fieldcat-ref_fieldname = 'PRICE'. ls_fieldcat-ref_tabname = 'SFLIGHT'. APPEND ls_fieldcat TO rt_fieldcat. CLEAR ls_fieldcat. pos = pos + 1. ENDFORM. "field_cat_init
  • 49. ALV Report : Example IV
  • 50. Exercise IV ZCUSTOMERS ZSALES id name city cust_id prod_id sale_date qty 1 John New York 1 A1 20020318 10 2 Peter London 1 A1 20020319 100 3 David Singapore 1 A1 20020329 50 1 A2 20020318 50 ZPRODUCTS 1 A2 20020329 200 p_id prod_name on_hand 3 X1 20020321 90 A1 Pen 100 A2 Pencil 125 B1 Ruler 80 X1 Tape 120
  • 51. ALV Report : Exercise IV zsales-sale_date zcustomers-id zcustomers-name zproducts-prod_name zsales-qty
  • 54. ALV : Variant REPORT ZALV06 NO STANDARD PAGE HEADING. type-pools slis. types: begin of i_structure, carrid like sflight-carrid, connid like sflight-connid, fldate like sflight-fldate, price like sflight-price, end of i_structure. data: gt_fieldcat type slis_t_fieldcat_alv, isvariant like DISVARIANT. "ADD gt_outtab type i_structure occurs 0 with header line. initialization. perform field_cat_init using gt_fieldcat[]. isvariant-report = 'ZALV06'. "ADD
  • 55. ALV : Variant START-OF-SELECTION. SELECT carrid connid fldate price FROM SFLIGHT INTO TABLE GT_OUTTAB. CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'I_STRUCTURE' IT_FIELDCAT = gt_fieldcat[] IS_VARIANT = isvariant "ADD I_SAVE = 'A' "ADD “ A = user&Global,U = user,X = global TABLES T_OUTTAB = gt_outtab.
  • 57. ALV : Zebra REPORT ZALV2 NO STANDARD PAGE HEADING. type-pools slis. types: begin of i_structure, carrid like sflight-carrid, connid like sflight-connid, fldate like sflight-fldate, price like sflight-price, end of i_structure. data: gt_fieldcat type slis_t_fieldcat_alv, GT_LAYOUT TYPE SLIS_LAYOUT_ALV, "ADD gt_outtab type i_structure occurs 0 with header line. initialization. perform field_cat_init using gt_fieldcat[]. GT_LAYOUT-ZEBRA = 'X'. "ADD
  • 58. ALV : Zebra START-OF-SELECTION. SELECT carrid connid fldate price FROM SFLIGHT INTO TABLE GT_OUTTAB. CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'I_STRUCTURE' IT_FIELDCAT = gt_fieldcat[] IS_LAYOUT = GT_LAYOUT "ADD TABLES T_OUTTAB = gt_outtab.
  • 60. ALV : Title REPORT ZALV2 NO STANDARD PAGE HEADING. type-pools slis. types: begin of i_structure, carrid like sflight-carrid, connid like sflight-connid, fldate like sflight-fldate, price like sflight-price, end of i_structure. data: gt_fieldcat type slis_t_fieldcat_alv, GT_GID_TITLE TYPE LVC_TITLE, "ADD gt_outtab type i_structure occurs 0 with header line. initialization. perform field_cat_init using gt_fieldcat[]. concatenate 'Flight Information' ' for ALV Report' into GT_GID_TITLE. "ADD
  • 61. ALV : Title START-OF-SELECTION. SELECT carrid connid fldate price FROM SFLIGHT INTO TABLE GT_OUTTAB. CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' EXPORTING I_STRUCTURE_NAME = 'I_STRUCTURE' IT_FIELDCAT = gt_fieldcat[] I_GRID_TITLE = GT_GID_TITLE "ADD TABLES T_OUTTAB = gt_outtab.
  • 63. Exercise : Sale Order KNA1 VBAK VBAP
  • 64. Exercise : Control-break Report vbak-audat vbap-matnr vbak-vbeln vbak-kunnr kna1-name1 vbap-netwr
  • 65. Exercise : ALV Report vbak-audat vbap-matnr vbap-netwr vbak-vbeln vbak-kunnr kna1-name1