<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic ALV grid display in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549167#M853871</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;   can any one send me a simple program on ALV GRID Display?&lt;/P&gt;&lt;P&gt;Thanks in Advance.&lt;/P&gt;&lt;P&gt;Good answers will be rewared.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 15 Mar 2008 00:32:40 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-15T00:32:40Z</dc:date>
    <item>
      <title>ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549167#M853871</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;   can any one send me a simple program on ALV GRID Display?&lt;/P&gt;&lt;P&gt;Thanks in Advance.&lt;/P&gt;&lt;P&gt;Good answers will be rewared.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 00:32:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549167#M853871</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-15T00:32:40Z</dc:date>
    </item>
    <item>
      <title>Re: ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549168#M853872</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try This....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZTEST_ALV
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*

REPORT  ZTEST_ALV.

tables : vbap, ZSTRUCT_ALV.
type-pools: slis.

select-options: vbeln for vbap-vbeln.

data it type table of ZSTRUCT_ALV.

select vbeln posnr from vbap into table it where vbeln in vbeln.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
 EXPORTING
   I_STRUCTURE_NAME                  = 'ZSTRUCT_ALV'

  TABLES
    T_OUTTAB                          = it
          .
IF SY-SUBRC &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if helpful.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;AK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 02:42:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549168#M853872</guid>
      <dc:creator>ak_upadhyay</dc:creator>
      <dc:date>2008-03-15T02:42:47Z</dc:date>
    </item>
    <item>
      <title>Re: ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549169#M853873</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi i am narrating few things with pseudo code,&lt;/P&gt;&lt;P&gt;hope you can implement the program in the similar fashion..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TO display alv u need to have data in internal table...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fetch the data in to internal table...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this is as follows:&lt;/P&gt;&lt;P&gt;TYPE-POOLS: SLIS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Types: begin of zstruct,&lt;/P&gt;&lt;P&gt;           name type lfa1-name1,&lt;/P&gt;&lt;P&gt;           ktokk type lfa1-ktokk,&lt;/P&gt;&lt;P&gt;           lifnr  type lfa1-lifnr,&lt;/P&gt;&lt;P&gt;           end of ztruct.&lt;/P&gt;&lt;P&gt; DATA: lt_fieldcat TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA: ls_fieldcat LIKE LINE OF lt_fieldcat.&lt;/P&gt;&lt;P&gt;Data: itab type standard table of zstruct.&lt;/P&gt;&lt;P&gt;DATA: wa like line of itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select lifnr name1 ktokk into corresponding fields of table itab&lt;/P&gt;&lt;P&gt;from lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Now we need to build the field catalog for the internal table *as its a customised strucutre..&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;it is as follows.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT lt_fieldcat INTO ls_fieldcat.&lt;/P&gt;&lt;P&gt;    CASE ls_fieldcat-fieldname.&lt;/P&gt;&lt;P&gt;      WHEN 'NAME1'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-col_pos   = 3.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_l = 'NAME'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_s = 'NAM'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_m = 'NAME'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-ddictxt = 'M'.&lt;/P&gt;&lt;P&gt;      WHEN 'KTOKK'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-col_pos   = 1.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_l = 'ACCOUNT GROUP'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_s = 'AGGRP'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_m = "ACC GROUP'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-ddictxt = 'M'.&lt;/P&gt;&lt;P&gt;      WHEN 'LIFNR'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_l = 'VENDOR ACCOUNT NUMBER'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_s = 'VNO'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-seltext_m = 'VEN NO'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-tech = 'X'.&lt;/P&gt;&lt;P&gt;        ls_fieldcat-ddictxt = 'M'.&lt;/P&gt;&lt;P&gt;endcase.&lt;/P&gt;&lt;P&gt;MODIFY xt_fieldcat FROM ls_fieldcat&lt;/P&gt;&lt;P&gt;                            TRANSPORTING col_pos&lt;/P&gt;&lt;P&gt;                                         seltext_l&lt;/P&gt;&lt;P&gt;                                         seltext_s&lt;/P&gt;&lt;P&gt;                                         seltext_m&lt;/P&gt;&lt;P&gt;                                         ddictxt&lt;/P&gt;&lt;P&gt;                                         tech&lt;/P&gt;&lt;P&gt;                                         no_out&lt;/P&gt;&lt;P&gt;                                         fix_column&lt;/P&gt;&lt;P&gt;                                         outputlen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Now call the reuse alv grid display fm to display the data with the provided fieldcatalog and data table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       i_callback_program       = g_repid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        it_fieldcat              = lt_fieldcat&lt;/P&gt;&lt;P&gt;    &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   i_callback_pf_status_set = g_status_set&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    is_layout                = ls_layout&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        i_save                   = 'A'&lt;/P&gt;&lt;P&gt;        i_default                = c_true&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        t_outtab                 = itab&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        program_error            = 1&lt;/P&gt;&lt;P&gt;        OTHERS                   = 2.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hopefully this will help and do reward if needful..&lt;/P&gt;&lt;P&gt;Revert back if any issues with the code..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good day&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 02:54:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549169#M853873</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-15T02:54:16Z</dc:date>
    </item>
    <item>
      <title>Re: ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549170#M853874</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;These Link will solve your problems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Please give me general info on ALV.&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=58286" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=58286&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=76490" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=76490&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=20591" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=20591&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=66305" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=66305&lt;/A&gt; - this one discusses which way should you use - ABAP Objects calls or simple function modules.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. How do I program double click in ALV?&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=11601" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=11601&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=23010" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=23010&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. How do I add subtotals (I have problem to add them)...&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=20386" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=20386&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=85191" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=85191&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=88401" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=88401&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=17335" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=17335&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. How to add list heading like top-of-page in ABAP lists?&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=58775" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=58775&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=60550" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=60550&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=16629" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=16629&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. How to print page number / total number of pages X/XX in ALV? &lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=29597" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=29597&lt;/A&gt; (no direct solution)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;6. ALV printing problems. The favourite is: The first page shows the number of records selected but I don't need this.&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=64320" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=64320&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=44477" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=44477&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;7. How can I set the cell color in ALV? &lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=52107" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=52107&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;8. How do I print a logo/graphics in ALV?&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=81149" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=81149&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=35498" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=35498&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=5013" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=5013&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;9. How do I create and use input-enabled fields in ALV?&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=84933" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=84933&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=69878" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=69878&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;10. How can I use ALV for reports that are going to be run in background?&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=83243" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=83243&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=19224" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=19224&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;11. How can I display an icon in ALV? (Common requirement is traffic light icon).&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=79424" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=79424&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=24512" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=24512&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;12. How can I display a checkbox in ALV? &lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=88376" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=88376&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=40968" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=40968&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapfans.com/forums/viewtopic.php?t=6919" target="test_blank"&gt;http://www.sapfans.com/forums/viewtopic.php?t=6919&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Regards,&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Mehul Shah.&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 03:33:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549170#M853874</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-15T03:33:01Z</dc:date>
    </item>
    <item>
      <title>Re: ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549171#M853875</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;These is Standard ALV program: BCALV_GRID_EDIT_DELTA&lt;/P&gt;&lt;P&gt;Check it out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Regards,&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Mehul Shah.&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 03:37:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549171#M853875</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-15T03:37:46Z</dc:date>
    </item>
    <item>
      <title>Re: ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549172#M853876</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;      I attach a sample ALV program with all Events with complete functionality.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;report zbnstest. 
************************************************************************ 
* TABLES AND DATA DECLARATION. 
************************************************************************ 
*TABLES: mara,makt.",marc. 
data syrepid like sy-repid. 
data sydatum(10). " LIKE sy-datum. 
data sypagno(3) type n. 
  

* WHEN USING MORE THAN ONE TABLE IN ALV WE NEEED TO DECLARE THE TYPE 
* GROUP (TYPE-POOLS---------&amp;gt;SLIS) 
type-pools : slis. 
  

************************************************************************ 
* INTERNAL TABLE DECLARATION. 
************************************************************************ 
* INTERNAL TABLE TO HOLD THE VALUES FROM THE MARA TABLE 
data: begin of t_mara occurs 0, 
matnr like mara-matnr, 
meins like mara-meins, 
mtart like mara-mtart, 
matkl like mara-matkl, 

end of t_mara. 

* INTERNAL TABLE TO HOLD THE CONTENTS FROM THE EKKO TABLE 
data : begin of t_marc occurs 0, 
matnr like mara-matnr, 
werks like marc-werks, 
minbe like marc-minbe. 
data: end of t_marc. 

* INTERNAL TABLE TO HOLD THE VALUES FROM MAKT TABLE. 
data : begin of t_makt occurs 0, 
matnr like mara-matnr, 
maktx like makt-maktx, 
spras like makt-spras, 
end of t_makt. 

* INTERNAL TABLE WHICH ACTUALLY MERGES ALL THE OTHER INTERNAL TABLES. 
data: begin of itab1 occurs 0, 
matnr like mara-matnr, 
meins like mara-meins, 
maktx like makt-maktx, 
spras like makt-spras, 
werks like marc-werks, 
minbe like marc-minbe, 
end of itab1. 
  

* THE FOLLOWING DECLARATION IS USED FOR DEFINING THE FIELDCAT 
* AND THE LAYOUT FOR THE ALV. 
* HERE AS slis_t_fieldcat_alv IS A INTERNAL TABLE WITHOUT A HEADER LINE 
* WE EXPLICITELY DEFINE AN INTERNAL TABLE OF THE SAME STRUCTURE AS THAT 
* OF slis_t_fieldcat_alv BUT WITH A HEADER LINE IN THE DEFINITION. 
* THIS IS DONE TO MAKE THE CODE SIMPLER. 
* OTHERWISE WE MAY HAVE TO DEFINE THE STRUCTURE AS IN THE NORMAL SAP 
* PROGRAMS. 
* IN THE FIELDCATALOG TABLE WE ACTUALLY PASS THE FIELDS FROM ONE OR 
* MORE TABLES AND CREATE A STRUCTURE 
* IN THE LAYOUT STRUCTURE WE BASICALLY DEFINE THE FORMATTING OPTIONS 
* LIKE DISPLAY IN THE ZEBRA PATTERN ,THE HOTSPOT OPTIONS ETC. 
data: fieldcatalog type slis_t_fieldcat_alv with header line, 
fieldlayout type slis_layout_alv. 
  

* DECLARING THE EVENTTABLE INTERNL TABLE FOR USING EVENTS LIKE 
* TOP-OF-PAGE ETC. 
data : eventstab type slis_t_event with header line. 

* DECLARING AN INTERNAL TABLE TO HOLD THE DATA FOR THE TOP-OF-PAGE 
data : heading type slis_t_listheader with header line. 
data : heading1 type slis_t_listheader with header line. 
data : heading2 type slis_t_listheader with header line. 
data : heading3 type slis_t_listheader with header line. 
data : heading4 type slis_t_listheader with header line. 
data : heading5 type slis_t_listheader with header line. 
data : heading6 type slis_t_listheader with header line. 
data : heading7 type slis_t_listheader with header line. 
data : heading8 type slis_t_listheader with header line. 
  

* STRUCTURE TO PASS THE COLOR ATTRIBUTES FOR DISPLAY. 
data : colorstruct type slis_coltypes. 
************************************************************************ 
* INITIALIZATION. * 
************************************************************************ 
initialization. 
syrepid = sy-repid. 
sypagno = sy-pagno. 
clear fieldcatalog. 
  

************************************************************************ 
* START-OF-SELECTION. * 
************************************************************************ 
start-of-selection. 
* SUBROUTINE TO POPULATE THE COLORSTRUCT 
perform fill_colorstruct using colorstruct. 
* SUBROUTINE TO POPULATE THE FIELDS OF THE FIELD CATALOGUE 
perform populate_fieldcatalog. 
* SUBROUTINE TO SELECT DATA FROM VARIOUS TABLES AND POPULATE IT IN THE 
* INTERNAL TABLE. 
perform selectdata_and_sort. 
* SUBROUTINE TO POPULATE THE LAYOUT STRUCTURE. 
perform populate_layout using fieldlayout. 
* SUBROUTINE TO CALL THE FUNCTION MERGE TO ENSURE PROPER DISPLAY. 
perform merge_fieldcatalog. 
* SUBROUTINE TO POPULATE THE EVENTSTAB. 
perform fill_eventstab tables eventstab. 
* SUBROUTINE TO POPULATE THE HEADING TABLES. 
perform fill_headingtable tables heading using 'HEADING'. 
perform fill_headingtable tables heading1 using 'HEADING1'. 
perform fill_headingtable tables heading2 using 'HEADING2'. 
perform fill_headingtable tables heading3 using 'HEADING3'. 
perform fill_headingtable tables heading4 using 'HEADING4'. 
perform fill_headingtable tables heading5 using 'HEADING5'. 
perform fill_headingtable tables heading6 using 'HEADING6'. 
perform fill_headingtable tables heading7 using 'HEADING7'. 
perform fill_headingtable tables heading8 using 'HEADING8'. 

* SUBROUTINE TO DISPLAY THE LIST. 
perform display_alv_list. 
  
  

************************************************************************ 
* FORMS 
************************************************************************ 
* IN THIS SUBROUTINE WE POPULATE THE FIELDCATALOG TABLE WITH THE NAMES 
* OF THE TABLE,FIELDNAME,WHETHER IT IS KEY FIELD OR NOT,HEADING AND 
* COLUMN JUSTIFICATION. 
form populate_fieldcatalog. 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'MATNR' 'X' . 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'MEINS' ' '. 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'MAKTX' ' ' . 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'MTART' ' ' . 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'MATKL' ' ' . 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'SPRAS' ' ' . 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'WERKS' ' ' . 
perform fill_fields_of_fieldcatalog tables fieldcatalog 
using 'ITAB1' 'MINBE' ' ' . 
endform. " POPULATE_FIELDCATALOG 
  

*---------------------------------------------------------------------* 
* FORM FILL_FIELDS_OF_FIELDCATALOG * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
* --&amp;gt; FIELDCATALOG * 
* --&amp;gt; P_TABNAME * 
* --&amp;gt; P_FIELDNAME * 
* --&amp;gt; P_KEY * 
* --&amp;gt; P_KEY * 
*---------------------------------------------------------------------* 
form fill_fields_of_fieldcatalog tables fieldcatalog 
structure fieldcatalog 
using p_tabname 
p_fieldname 
p_key. 
* p_no_out. 
fieldcatalog-tabname = p_tabname. 
fieldcatalog-fieldname = p_fieldname. 
fieldcatalog-key = p_key. 
fieldcatalog-emphasize = '1234'. 
*fieldcatalog-no_out = p_no_out. 
append fieldcatalog. 
endform. " FILL_FIELDSOFFIELDCATALOG 
  

*---------------------------------------------------------------------* 
* FORM POPULATE_LAYOUT * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
* --&amp;gt; FIELDLAYOUT * 
*---------------------------------------------------------------------* 
form populate_layout using fieldlayout type slis_layout_alv. 
fieldlayout-f2code = '&amp;amp;ETA' . 
fieldlayout-zebra = 'X'. 
* FOR THE WINDOW TITLE. 
fieldlayout-window_titlebar = 'ALV with Events'. 

fieldlayout-colwidth_optimize = 'X'. 
fieldlayout-no_vline = ' '. 
*fieldlayout-no_input = 'X'. 
fieldlayout-confirmation_prompt = ''. 
fieldlayout-key_hotspot = 'X'. 
* This removes the column headings if the flag is set to 'X' 
fieldlayout-no_colhead = ' '. 
*fieldlayout-hotspot_fieldname = 'MAKTX'. 
fieldlayout-detail_popup = 'X'. 
* fieldlayout-coltab_fieldname = 'X'. 
endform. " POPULATE_LAYOUT 

*---------------------------------------------------------------------* 
* FORM SELECTDATA_AND_SORT * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form selectdata_and_sort. 
select matnr meins mtart matkl from mara 
into corresponding fields of t_mara 
up to 500 rows . 

select matnr maktx spras from makt 
into corresponding fields of t_makt 
where matnr = t_mara-matnr and 
spras = sy-langu. 

select matnr werks minbe from marc 
into corresponding fields of t_marc 
where matnr = t_mara-matnr. 
append t_marc. 
endselect. 
append t_makt. 
endselect. 
append t_mara. 
endselect. 
perform populate_itab1. 
sort itab1 by matnr. 
endform. " SELECTDATA_AND_SORT 

*---------------------------------------------------------------------* 
* FORM MERGE_FIELDCATALOG * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form merge_fieldcatalog. 
call function 'REUSE_ALV_FIELDCATALOG_MERGE' 
exporting 
i_program_name = syrepid 
i_internal_tabname = 'ITAB1' 
* i_structure_name = 'COLORSTRUCT' 
* I_CLIENT_NEVER_DISPLAY = 'X' 
i_inclname = syrepid 
changing 
ct_fieldcat = fieldcatalog[] 
exceptions 
inconsistent_interface = 1 
program_error = 2 
others = 3. 
endform. " MERGE_FIELDCATALOG 
  

* IN THIS FUNCTION THE MINIMUM PARAMETERS THAT WE NEED TO PASS IS AS 
* FOLLOWS:- 
* i_callback_program --&amp;gt; CALLING PROGRAM NAME 
* i_structure_name --&amp;gt; STRUCTURE NAME. 
* is_layout --&amp;gt; LAYOUT NAME. 
* it_fieldcat ---&amp;gt; BODY OF THE FIELD CATALOGUE INTERNAL TABLE 
form display_alv_list. 
call function 'REUSE_ALV_LIST_DISPLAY' 
exporting 
* I_INTERFACE_CHECK = ' ' 
i_callback_program = syrepid 
* I_CALLBACK_PF_STATUS_SET = ' ' 
* I_CALLBACK_USER_COMMAND = ' ' 
i_structure_name = 'ITAB1' 
is_layout = fieldlayout 
it_fieldcat = fieldcatalog[] 
* IT_EXCLUDING = 
* IT_SPECIAL_GROUPS = 
* IT_SORT = 
* IT_FILTER = 
* IS_SEL_HIDE = 
* I_DEFAULT = 'X' 
* THE FOLLOWING PARAMETER IS SET AS 'A' INORDER TO DISPLAY THE STANDARD 
* TOOL BAR 
i_save = 'A' 
* IS_VARIANT = ' ' 
it_events = eventstab[] 
* IT_EVENT_EXIT = 
* IS_PRINT = 
* I_SCREEN_START_COLUMN = 0 
* I_SCREEN_START_LINE = 0 
* I_SCREEN_END_COLUMN = 0 
* I_SCREEN_END_LINE = 0 
* IMPORTING 
* E_EXIT_CAUSED_BY_CALLER = 
* ES_EXIT_CAUSED_BY_USER = 
tables 
t_outtab = itab1 
exceptions 
program_error = 1 
others = 2. 
endform. " DISPLAY_ALV_LIST 
*&amp;amp;---------------------------------------------------------------------* 
*&amp;amp; Form POPULATE_ITAB1 
*&amp;amp;---------------------------------------------------------------------* 
* text 
*----------------------------------------------------------------------* 
* --&amp;gt; p1 text 
* &amp;lt;-- p2 text 
*----------------------------------------------------------------------* 
form populate_itab1. 
loop at t_mara. 
loop at t_makt where matnr = t_mara-matnr. 
loop at t_marc where matnr = t_mara-matnr. 
move-corresponding t_mara to itab1. 
move-corresponding t_makt to itab1. 
move-corresponding t_marc to itab1. 
append itab1. 
endloop. 
endloop. 
endloop. 
endform. " POPULATE_ITAB1 
*&amp;amp;---------------------------------------------------------------------* 
*&amp;amp; Form FILL_EVENTSTAB 
*&amp;amp;---------------------------------------------------------------------* 
* text 
*----------------------------------------------------------------------* 
* --&amp;gt;P_EVENTSTAB text * 
*----------------------------------------------------------------------* 
form fill_eventstab tables p_eventstab structure eventstab. 
* WHEN THE FOLLOWING FUNCTION IS CALLED THE SYSTEM POPULATES THE 
* INTERNAL TABLE EVENTSTAB WITH A LIST OF EVENTS NAME. 
* AS SHOWN BELOW WHEN USING I_LIST_TYPE = 0 THE FUNCTION RETURNS 14 
* EVENTS NAME. 
call function 'REUSE_ALV_EVENTS_GET' 
exporting 
i_list_type = 0 
importing 
et_events = p_eventstab[] 
exceptions 
list_type_wrong = 1 
others = 2. 

* BY CALLING THE ABOVE FUNCTION WE FIRST POPULATE THE EVENTSTAB WITH 
* THE PREDEFINED EVENTS AND THEN WE MOVE THE FORM NAME AS SHOWN BELOW. 
* WE ASSIGN A FORM NAME TO THE EVENT AS REQUIRED BY THE USER. 
* FORM NAME CAN BE ANYTHING.THE PERFORM STATEMENT FOR THIS FORM 
* IS DYNAMICALY CALLED. 

read table p_eventstab with key name = slis_ev_top_of_page. 
if sy-subrc = 0 . 
move 'TOP_OF_PAGE' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_top_of_coverpage. 
if sy-subrc = 0 . 
move 'TOP_OF_COVERPAGE' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_end_of_coverpage . 
if sy-subrc = 0 . 
move 'END_OF_COVERPAGE' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_foreign_top_of_page. 
if sy-subrc = 0 . 
move 'FOREIGN_TOP_OF_PAGE' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_foreign_end_of_page. 
if sy-subrc = 0 . 
move 'FOREIGN_END_OF_PAGE' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_list_modify. 
if sy-subrc = 0 . 
move 'LIST_MODIFY' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_top_of_list. 
if sy-subrc = 0 . 
move 'TOP_OF_LIST' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_end_of_page. 
if sy-subrc = 0 . 
move 'END_OF_PAGE' to p_eventstab-form. 
append p_eventstab. 
endif. 

read table p_eventstab with key name = slis_ev_end_of_list . 
if sy-subrc = 0 . 
move 'END_OF_LIST' to p_eventstab-form. 
append p_eventstab. 
endif. 
endform. " FILL_EVENTSTAB 
*&amp;amp;---------------------------------------------------------------------* 
*&amp;amp; Form FILL_HEADINGTABLE 
*&amp;amp;---------------------------------------------------------------------* 
* text 
*----------------------------------------------------------------------* 
* --&amp;gt;P_HEADING text * 
*----------------------------------------------------------------------* 
form fill_headingtable tables p_heading structure heading 
using tablename. 
case tablename. 
when 'HEADING'. 
p_heading-typ = 'H'. 
concatenate 
' REPORT NAME:-' syrepid 
' ABB Industry Pte Ltd' into p_heading-info. 
append p_heading. 
write sy-datum using edit mask '__/__/____' to sydatum. 

concatenate 
' DATE:-' sydatum ' USER: ' sy-uname 'PAGE NO:' sypagno 
into p_heading-info. 
append p_heading. 
when 'HEADING1'. 
p_heading-typ = 'H'. 
p_heading-info = 'TOP-OF-COVER-PAGE'. 
append p_heading. 
when 'HEADING2'. 
p_heading-typ = 'H'. 
p_heading-info = 'END-OF-COVER-PAGE'. 
append p_heading. 
when 'HEADING3'. 
p_heading-typ = 'H'. 
p_heading-info = 'FOREIGN-TOP-OF-PAGE'. 
append p_heading. 
when 'HEADING4'. 
p_heading-typ = 'H'. 
p_heading-info = 'FOREIGN-END-OF-PAGE'. 
append p_heading. 
* WHEN 'HEADING5'. 
* P_HEADING-TYP = 'H'. 
* P_HEADING-INFO = 'LIST-MODIFY'. 
* APPEND P_HEADING. 
when 'HEADING6'. 
p_heading-typ = 'H'. 
p_heading-info = 'END-OF-PAGE'. 
append p_heading. 
when 'HEADING7'. 
p_heading-typ = 'H'. 
p_heading-info = 'END-OF-LIST'. 
append p_heading. 
when 'HEADING8'. 
p_heading-typ = 'H'. 
p_heading-info = 'TOP-OF-LIST'. 
append p_heading. 
endcase. 
endform. " FILL_HEADINGTABLE 

*---------------------------------------------------------------------* 
* FORM TOP_OF_PAGE * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form top_of_page. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading[] 
exceptions 
others = 1. 
endform. 
*&amp;amp;---------------------------------------------------------------------* 
*&amp;amp; Form FILL_COLORSTRUCT 
*&amp;amp;---------------------------------------------------------------------* 
* text 
*----------------------------------------------------------------------* 
* --&amp;gt;P_COLORSTRUCT text * 
*----------------------------------------------------------------------* 
form fill_colorstruct using p_colorstruct type slis_coltypes . 
p_colorstruct-heacolfir-col = 6. 
p_colorstruct-heacolfir-int = 1. 
p_colorstruct-heacolfir-inv = 1. 
endform. " FILL_COLORSTRUCT 

*---------------------------------------------------------------------* 
* FORM TOP_OF_COVERPAGE * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form top_of_coverpage. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading1[] 
exceptions 
others = 1. 
endform. 

*---------------------------------------------------------------------* 
* FORM END_OF_COVERPAGE * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form end_of_coverpage. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading2[] 
exceptions 
others = 1. 
endform. 

*---------------------------------------------------------------------* 
* FORM FOREIGN_TOP_OF_PAGE * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form foreign_top_of_page. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading3[] 
exceptions 
others = 1. 

endform. 

*---------------------------------------------------------------------* 
* FORM FOREIGN_END_OF_PAGE * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form foreign_end_of_page. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading4[] 
exceptions 
others = 1. 
endform. 

*---------------------------------------------------------------------* 
* FORM LIST_MODIFY * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
*FORM LIST_MODIFY. 
* CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' 
* EXPORTING 
* IT_LIST_COMMENTARY = HEADING5[] 
* EXCEPTIONS 
* OTHERS = 1. 
*ENDFORM. 

*---------------------------------------------------------------------* 
* FORM END_OF_PAGE * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form end_of_page. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading6[] 
exceptions 
others = 1. 
endform. 

*---------------------------------------------------------------------* 
* FORM END_OF_LIST * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form end_of_list. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading7[] 
exceptions 
others = 1. 
endform. 

*---------------------------------------------------------------------* 
* FORM TOP_OF_LIST * 
*---------------------------------------------------------------------* 
* ........ * 
*---------------------------------------------------------------------* 
form top_of_list. 
call function 'REUSE_ALV_COMMENTARY_WRITE' 
exporting 
it_list_commentary = heading8[] 
exceptions 
others = 1. 
endform. 

*--- End of Program&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Balakumar .G.&lt;/P&gt;&lt;P&gt;Reward points if helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 04:02:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549172#M853876</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-15T04:02:06Z</dc:date>
    </item>
    <item>
      <title>Re: ALV grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549173#M853877</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Have on the following code, you can c the logo also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;THIS IS TO DISPLAY THE HEADER WITH LOGO.&lt;/P&gt;&lt;P&gt;Follow the below step for uploading the image file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Steps for uploading Logo :-: &lt;/P&gt;&lt;P&gt;1. Goto the transaction OAER &lt;/P&gt;&lt;P&gt;2. Enter the class name as 'PICTURES' &lt;/P&gt;&lt;P&gt;3. Enter the class type as 'OT' &lt;/P&gt;&lt;P&gt;4. Enter the object key as the name of the logo(e.g. tripodsm.gif) you wish to give &lt;/P&gt;&lt;P&gt;5. Execute &lt;/P&gt;&lt;P&gt;6. Then in the new screen select Standard doc. types in bottom window &lt;/P&gt;&lt;P&gt;Click on the Screen icon &lt;/P&gt;&lt;P&gt;Now, it will ask for the file path where you have to upload the logo &lt;/P&gt;&lt;P&gt;7. Now you can use this logo in REUSE_ALV_COMMENTARY_WRITE &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;it_list_commentary = i_header&lt;/P&gt;&lt;P&gt;i_logo = 'tripodsm.gif'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES VBAK.&lt;/P&gt;&lt;P&gt;TYPE-POOLS SLIS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF T_VBAK,&lt;/P&gt;&lt;P&gt;      VBELN TYPE VBAK-VBELN,&lt;/P&gt;&lt;P&gt;      ERDAT TYPE VBAK-ERDAT,&lt;/P&gt;&lt;P&gt;      ERNAM TYPE VBAK-ERNAM,&lt;/P&gt;&lt;P&gt;      AUDAT TYPE VBAK-AUDAT,&lt;/P&gt;&lt;P&gt;      VBTYP TYPE VBAK-VBTYP,&lt;/P&gt;&lt;P&gt;      NETWR TYPE VBAK-NETWR,&lt;/P&gt;&lt;P&gt;      VKORG TYPE VBAK-VKORG,&lt;/P&gt;&lt;P&gt;      VKGRP TYPE VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;      LINE_COLOR(4) TYPE C,&lt;/P&gt;&lt;P&gt;      END OF T_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: IT_VBAK TYPE STANDARD TABLE OF T_VBAK INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;      WA_VBAK TYPE T_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV Data Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      GD_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      GD_REPID TYPE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;PERFORM BLD_FLDCAT.&lt;/P&gt;&lt;P&gt;PERFORM BLD_LAYOUT.&lt;/P&gt;&lt;P&gt;PERFORM DISPLAY_ALV_REPORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build Field Catalog for ALV Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORM BLD_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_M = 'Sales Document'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 0.&lt;/P&gt;&lt;P&gt;*FLDCAT-EMPHASIZE = 'C411'.&lt;/P&gt;&lt;P&gt;FLDCAT-OUTPUTLEN = 20.&lt;/P&gt;&lt;P&gt;FLDCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'ERDAT'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_L = 'Record Date created'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 1.&lt;/P&gt;&lt;P&gt;FLDCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'ERNAM'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_L = 'Cteated Object Person Name'.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'AUDAT'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_M = 'Document Date'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 3.&lt;/P&gt;&lt;P&gt;FLDCAT-EMPHASIZE = 'C110'.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'VBTYP'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_L = 'SD Document category'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 4.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_L = 'Net Value of the SO in Document Currency'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 5.&lt;/P&gt;&lt;P&gt;FLDCAT-OUTPUTLEN = 60.&lt;/P&gt;&lt;P&gt;FLDCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;FLDCAT-DATATYPE = 'CURR'.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'VKORG'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_L = 'Sales Organization'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 6.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLDCAT-FIELDNAME = 'VKGRP'.&lt;/P&gt;&lt;P&gt;FLDCAT-SELTEXT_M = 'Sales Group'.&lt;/P&gt;&lt;P&gt;FLDCAT-COL_POS = 7.&lt;/P&gt;&lt;P&gt;FLDCAT-EMPHASIZE = 'C801'.&lt;/P&gt;&lt;P&gt;APPEND FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build Layout for ALV Grid Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BLD_LAYOUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_LAYOUT-NO_INPUT = 'X'.&lt;/P&gt;&lt;P&gt;GD_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.&lt;/P&gt;&lt;P&gt;GD_LAYOUT-INFO_FIELDNAME = 'LINE_COLOR'.&lt;/P&gt;&lt;P&gt;GD_LAYOUT-WINDOW_TITLEBAR = 'GRID DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_LAYOUT-CONFIRMATION_PROMPT = 'X'.  &amp;#147; This asks the confirmation before leaving the screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display report using ALV grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DISPLAY_ALV_REPORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;P&gt;   I_CALLBACK_PROGRAM                = GD_REPID&lt;/P&gt;&lt;P&gt;   IS_LAYOUT                         = GD_LAYOUT&lt;/P&gt;&lt;P&gt;   I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;   I_GRID_TITLE                      = 'SALES DOCUMENT HEADER'&lt;/P&gt;&lt;P&gt;   IT_FIELDCAT                       = FLDCAT[]&lt;/P&gt;&lt;P&gt;   I_SAVE                            = 'X'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    T_OUTTAB                          = IT_VBAK&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   PROGRAM_ERROR                     = 1&lt;/P&gt;&lt;P&gt;   OTHERS                            = 2.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Retrieve data from VBAK table and populate itab IT_VBAK&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA LD_COLOR(1) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT VBELN ERDAT ERNAM AUDAT VBTYP NETWR VKORG&lt;/P&gt;&lt;P&gt;UP TO 20 ROWS&lt;/P&gt;&lt;P&gt;FROM VBAK&lt;/P&gt;&lt;P&gt;INTO TABLE IT_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT IT_VBAK INTO WA_VBAK.&lt;/P&gt;&lt;P&gt;LD_COLOR = LD_COLOR + 1.&lt;/P&gt;&lt;P&gt;IF LD_COLOR = 8.&lt;/P&gt;&lt;P&gt;  LD_COLOR = 1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CONCATENATE 'C' LD_COLOR '10' INTO WA_VBAK-LINE_COLOR.&lt;/P&gt;&lt;P&gt;MODIFY IT_VBAK FROM WA_VBAK.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;DATA: T_HEADER TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;      W_HEADER TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'H'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = 'WELCOME HEADER LIST'.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'REPORT:'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = SY-REPID.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'DATE:'.&lt;/P&gt;&lt;P&gt;CONCATENATE SY-DATUM&lt;EM&gt;6(2) ' / ' SY-DATUM&lt;/EM&gt;4(2) ' / ' SY-DATUM(4) INTO W_HEADER-INFO.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    IT_LIST_COMMENTARY       = T_HEADER&lt;/P&gt;&lt;P&gt;    I_LOGO		= &amp;#145;TRIPODSM.GIF&amp;#146;.	&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Chandu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Mar 2008 04:25:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-display/m-p/3549173#M853877</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-15T04:25:26Z</dc:date>
    </item>
  </channel>
</rss>

