SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

Test ALV Display With Header & Footer



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ALV Grid / ALV Tree / ALV List
View previous topic :: View next topic  
Author Message
admin
Администратор
Администратор



Joined: 01 Sep 2007
Posts: 1639

PostPosted: Fri Dec 21, 2007 12:02 am    Post subject: Test ALV Display With Header & Footer Reply with quote

Code:
*Program to Test ALV Display With Header & Footer.
*&---------------------------------------------------------------------*
*& Report  ZRJR02                                                      *
*&---------------------------------------------------------------------*
REPORT  ZRJR02                                  .

*Table declaration.
TABLES:ZEMP_MST,ZDEPT_MST,ZDESG_MST,ZSL_TXN.

*Varriable declaration.
TYPE-POOLS SLIS.
DATA : POS TYPE I.
DATA  REPID  LIKE SY-REPID.

DATA : F1 TYPE SLIS_T_FIELDCAT_ALV,
       F2 TYPE SLIS_FIELDCAT_ALV,
       L_LAYOUT TYPE SLIS_LAYOUT_ALV.
DATA  L_POS TYPE I VALUE 1.               "position of the column
DATA  GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
*DATA  GT_SORT TYPE SLIS_T_SORTINFO_ALV.

data:  GT_EVENTS    TYPE SLIS_T_EVENT,
       FS_EVENTCAT LIKE LINE OF GT_EVENTs.

*Internal table declaration.
*DATA  BEGIN OF IT_SORT OCCURS 5.
*      INCLUDE TYPE SLIS_SORTINFO_ALV.
*DATA  END OF IT_SORT.

DATA:BEGIN OF ITAB OCCURS 0,
      ZEMPNO    LIKE ZEMP_MST-ZEMPNO,
      ZEMPNAME  LIKE ZEMP_MST-ZEMPNAME,
      ZDEPTCD   LIKE ZEMP_MST-ZDEPTCD,
      ZDEPTNAME LIKE ZDEPT_MST-ZDEPTNAME,
      ZDESGCD   LIKE ZEMP_MST-ZDESGCD,
      ZDESGNAME LIKE ZDESG_MST-ZDESGNAME,
     END OF ITAB.
REFRESH ITAB.CLEAR ITAB.

START-OF-SELECTION.

SELECT A~ZEMPNO A~ZEMPNAME A~ZDEPTCD B~ZDEPTNAME A~ZDESGCD C~ZDESGNAME
       FROM ZEMP_MST AS A
         INNER JOIN ZDEPT_MST AS B
           ON A~ZDEPTCD EQ B~ZDEPTCD
         INNER JOIN ZDESG_MST AS C
           ON A~ZDESGCD EQ C~ZDESGCD
       INTO CORRESPONDING FIELDS OF TABLE ITAB.
IF SY-SUBRC <> 0.
   MESSAGE E899(M3) WITH 'No records'.
ENDIF.

perform f_build_eventcat.
PERFORM LAYOUT.

END-OF-SELECTION.

*&---------------------------------------------------------------------*
*&      Form  LAYOUT
*&---------------------------------------------------------------------*
FORM LAYOUT .
  PERFORM FCAT USING 'ZEMPNO'    'ITAB' '' 'Emp.No.'   'ZEMPNO'    'ZEMP_MST'  ''.
  PERFORM FCAT USING 'ZEMPNAME'  'ITAB' '' 'Emp. Name' 'ZEMPNAME'  'ZEMP_MST'  ''.
  PERFORM FCAT USING 'ZDEPTCD'   'ITAB' '' 'Dept.Code' 'ZDEPTCD'   'ZEMP_MST'  ''.
  PERFORM FCAT USING 'ZDEPTNAME' 'ITAB' '' 'Dept.Name' 'ZDEPTNAME' 'ZDEPT_MST' ''.
  PERFORM FCAT USING 'ZDESGCD'   'ITAB' '' 'Desg.Code' 'ZDESGCD'   'ZEMP_MST'  ''.
  PERFORM FCAT USING 'ZDESGNAME' 'ITAB' '' 'Desg.Name' 'ZDESGNAME' 'ZDESG_MST' ''.

*  PERFORM LSORT USING  'ZEMPNO' 'IDATA' ''.
*  PERFORM LSORT USING  'ZEMPNAME' 'IDATA' ''.

*  MOVE IT_SORT[] TO GT_SORT[].

  REPID = SY-REPID.
  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
         I_CALLBACK_PROGRAM       = REPID
         IT_FIELDCAT              = F1
*         IT_SORT                  = GT_SORT
         I_SAVE                   = 'X'
         IT_EVENTS                = GT_EVENTS[]

     TABLES
          T_OUTTAB                 = ITAB.
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM.                    " LAYOUT


*&---------------------------------------------------------------------*
*&      Form  FCAT
*&---------------------------------------------------------------------*
FORM FCAT USING P_FIELD P_TABLE P_SUM P_TEXT P_RFIELD P_RTABLE P_DISP.
  ADD 1 TO POS.
  F2-COL_POS       = POS.
  F2-FIELDNAME     = P_FIELD.
  F2-TABNAME       = P_TABLE.
  F2-SELTEXT_L     = P_TEXT.
  F2-REF_FIELDNAME = P_RFIELD.
  F2-REF_TABNAME   = P_RTABLE.
  F2-DO_SUM        = P_SUM.
  F2-NO_OUT        = P_DISP.
  APPEND F2 TO F1.
  CLEAR F2.
ENDFORM.                " FCAT

*&---------------------------------------------------------------------*
*&      Form  LSORT
*&---------------------------------------------------------------------*
*FORM LSORT USING P_FIELD P_TABLE P_UP.
*  ADD 1 TO L_POS.
*  IT_SORT-SPOS      = L_POS.
*  IT_SORT-FIELDNAME = P_FIELD.
*  IT_SORT-TABNAME   = P_TABLE.
*  IT_SORT-UP        = P_UP.
*  APPEND IT_SORT.
*ENDFORM.                    " LSORT
*-------------
FORM F_BUILD_EVENTCAT .
 CLEAR: GT_EVENTS.  REFRESH: GT_EVENTS.

  CLEAR: FS_EVENTCAT.
  FS_EVENTCAT-NAME = 'TOP_OF_PAGE'.
  FS_EVENTCAT-FORM = 'F_REPORT_HEADER_ALV'.
  APPEND FS_EVENTCAT TO GT_EVENTS.


  CLEAR: FS_EVENTCAT.
  FS_EVENTCAT-NAME = 'END_OF_LIST'.
  FS_EVENTCAT-FORM = 'F_WRITE_SUMMARY'.
  APPEND FS_EVENTCAT TO GT_EVENTS.

ENDFORM.                    " F_BUILD_EVENTCAT

FORM F_REPORT_HEADER_ALV.
CALL FUNCTION 'Z_YHEAD_PRINT'
 EXPORTING
   TITLE1        = 'XYZ Limited'
   TITLE2        = 'Employee Master'
   TITLE3        = 'Created on '
   COLOR         = 'X'
          .
ENDFORM.

*&---------------------------------------------------------------------*
*&      Form  F_WRITE_SUMMARY
*&---------------------------------------------------------------------*
*       Write summary before exit
*----------------------------------------------------------------------*
FORM F_WRITE_SUMMARY .

write:/ 'Welcome to XYZ Limited'.
write:/ 'This is a test program to display Report in ALV Format'.

ENDFORM.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ALV Grid / ALV Tree / ALV List All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.