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

ALV Grid List with page break



 
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: Sat Jan 26, 2008 5:28 pm    Post subject: ALV Grid List with page break Reply with quote

Code:
REPORT z_demo_alv_sort_2.
*---------------------------------------------------------------------*
* This program lists orders (VBAK) with sort for 'Sales organization' *
* (VKORG), 'sold-to-party' (KUNNR) and 'Document number' (VBELN)      *
*---------------------------------------------------------------------*
* Author : Michel PIOUD                                               *
* Email : [email protected]  HomePage : http://www.geocities.com/mpioud *
*---------------------------------------------------------------------*
TYPES :
  BEGIN OF ty_vbak,
    vkorg TYPE vbak-vkorg,             " Sales organization
    kunnr TYPE vbak-kunnr,             " Sold-to party
    vbeln TYPE vbak-vbeln,             " Sales document
    audat TYPE vbak-audat,             " Document date
  END OF ty_vbak.

DATA :
  vbak    TYPE vbak,
  gt_vbak TYPE TABLE OF ty_vbak.

SELECT-OPTIONS :
  s_vkorg FOR vbak-vkorg,              " Sales organization
  s_kunnr FOR vbak-kunnr,              " Sold-to party
  s_vbeln FOR vbak-vbeln.              " Sales document

SELECTION-SCREEN SKIP.

SELECTION-SCREEN : BEGIN OF LINE, COMMENT 1(35) v_1 FOR FIELD p_page.
PARAMETERS p_page RADIOBUTTON GROUP optn.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN : BEGIN OF LINE, COMMENT 1(35) v_2 FOR FIELD p_ligne.
PARAMETERS p_ligne RADIOBUTTON GROUP optn.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN : BEGIN OF LINE, COMMENT 1(35) v_3 FOR FIELD p_nthng.
PARAMETERS p_nthng RADIOBUTTON GROUP optn.
SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN :
  SKIP, BEGIN OF LINE,COMMENT 5(27) v_4 FOR FIELD p_max.
PARAMETERS p_max(2) TYPE n DEFAULT '20' OBLIGATORY.
SELECTION-SCREEN END OF LINE.

*---------------------------------------------------------------------*
INITIALIZATION.

  v_1 = 'New page at ''Sales Org.'' break'.
  v_2 = 'Underline at ''Sales Org.'' break'.
  v_3 = 'Nothing'.
  v_4 = 'Maximum of records to read'.

*---------------------------------------------------------------------*
START-OF-SELECTION.

  PERFORM f_read_data.

  PERFORM f_display_data.

*---------------------------------------------------------------------*
*      Form  f_read_data
*---------------------------------------------------------------------*
FORM f_read_data.

  SELECT vkorg kunnr vbeln audat
      UP TO p_max ROWS
    INTO TABLE gt_vbak
    FROM vbak
   WHERE kunnr IN s_kunnr
     AND vbeln IN s_vbeln
     AND vkorg IN s_vkorg.

ENDFORM.                               " F_READ_DATA
*---------------------------------------------------------------------*
*      Form  f_display_data
*---------------------------------------------------------------------*
FORM f_display_data.

  TYPE-POOLS: slis.                    " ALV Global types

* Macro definition
  DEFINE m_fieldcat.
    add 1 to ls_fieldcat-col_pos.
    ls_fieldcat-fieldname   = &1.
    ls_fieldcat-ref_tabname = 'VBAK'.
    append ls_fieldcat to lt_fieldcat.
  END-OF-DEFINITION.

  DEFINE m_sort.
    add 1 to ls_sort-spos.
    ls_sort-fieldname = &1.
    ls_sort-up        = 'X'.
    ls_sort-group     = &2.
    append ls_sort to lt_sort.
  END-OF-DEFINITION.

  DATA:
    ls_fieldcat TYPE slis_fieldcat_alv,
    lt_fieldcat TYPE slis_t_fieldcat_alv,
    lt_sort     TYPE slis_t_sortinfo_alv,
    ls_sort     TYPE slis_sortinfo_alv,
    ls_layout   TYPE slis_layout_alv,
    ls_grid_settings TYPE lvc_s_glay.
*
  ls_grid_settings-top_p_only = 'X'.

  m_fieldcat 'VKORG'.
  m_fieldcat 'KUNNR'.
  m_fieldcat 'VBELN'.
  m_fieldcat 'AUDAT'.

  IF p_page = 'X'.
    m_sort 'VKORG' '*'.                " Sort by vkorg + Page break
  ELSEIF p_ligne = 'X'.
    m_sort 'VKORG' 'UL'.               " Sort by vkorg + Underline
  ELSE.
    m_sort 'VKORG' ' '.                " Sort by vkorg
  ENDIF.
  m_sort 'KUNNR' ' '.                  " Sort by kunnr
  m_sort 'VBELN' ' '.                  " Sort by vbeln

  ls_layout-colwidth_optimize = 'X'.
  ls_layout-zebra             = 'X'.
  ls_layout-cell_merge        = 'X'.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
            i_callback_program     = sy-cprog
            i_callback_top_of_page = 'TOP_OF_PAGE'
            is_layout              = ls_layout
            i_grid_settings        = ls_grid_settings
            it_fieldcat            = lt_fieldcat
            it_sort                = lt_sort
       TABLES
            t_outtab               = gt_vbak.

ENDFORM.                               " F_DISPLAY_DATA
*---------------------------------------------------------------------*
*       FORM top_of_page                                              *
*---------------------------------------------------------------------*
FORM top_of_page.                                           "#EC CALLED

  ULINE.
  WRITE : sy-title(65) CENTERED, 'Page :' , sy-pagno .
  ULINE.

ENDFORM.
**************** END OF PROGRAM Z_DEMO_ALV_SORT_2 *********************
 
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.