<?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 reports in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597482#M866324</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi all,&lt;/P&gt;&lt;P&gt;can anybody give me an alv report example using OOPS concept.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;uday&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 26 Mar 2008 11:21:33 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-26T11:21:33Z</dc:date>
    <item>
      <title>ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597482#M866324</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi all,&lt;/P&gt;&lt;P&gt;can anybody give me an alv report example using OOPS concept.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;uday&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:21:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597482#M866324</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:21:33Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597483#M866325</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi use the sample example..&lt;/P&gt;&lt;P&gt;REPORT ALV_LIGHTS.&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_alv,&lt;/P&gt;&lt;P&gt;        lights(1) TYPE c, "Exception, Holding the value of the lights&lt;/P&gt;&lt;P&gt;        text(20) TYPE c,  "some text&lt;/P&gt;&lt;P&gt;       END OF ty_alv.&lt;/P&gt;&lt;P&gt;DATA: gs_alv TYPE ty_alv,&lt;/P&gt;&lt;P&gt;gt_alv TYPE TABLE OF ty_alv,&lt;/P&gt;&lt;P&gt;gr_alv TYPE REF TO cl_salv_table,&lt;/P&gt;&lt;P&gt;gr_columns TYPE REF TO cl_salv_columns_table.&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;gs_alv-lights = '1'.    "Color red&lt;/P&gt;&lt;P&gt;gs_alv-text = 'RED SIGNAL'.&lt;/P&gt;&lt;P&gt;APPEND gs_alv TO gt_alv.&lt;/P&gt;&lt;P&gt; gs_alv-lights = '2'.    "Color yellow&lt;/P&gt;&lt;P&gt;gs_alv-text = 'YELLOW SIGNAL'.&lt;/P&gt;&lt;P&gt;APPEND gs_alv TO gt_alv.&lt;/P&gt;&lt;P&gt; gs_alv-lights = '3'.    "Color green&lt;/P&gt;&lt;P&gt;gs_alv-text = 'GREEN SIGNAL'.&lt;/P&gt;&lt;P&gt;APPEND gs_alv TO gt_alv.&lt;/P&gt;&lt;P&gt; CALL METHOD cl_salv_table=&amp;gt;factory&lt;/P&gt;&lt;P&gt;  IMPORTING&lt;/P&gt;&lt;P&gt;    r_salv_table = gr_alv&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    t_table      = gt_alv.  gr_columns = gr_alv-&amp;gt;get_columns( ).&lt;/P&gt;&lt;P&gt;    gr_columns-&amp;gt;set_exception_column( value = 'LIGHTS' ).&lt;/P&gt;&lt;P&gt;    CALL METHOD gr_alv-&amp;gt;display.&lt;/P&gt;&lt;P&gt;check this ..&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ALV/ColumnExcl.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ALV/ColumnExcl.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ALV/ALVTreeDemo/ALVTreeDemo.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ALV/ALVTreeDemo/ALVTreeDemo.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;venkat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: venkat  appikonda on Mar 26, 2008 12:25 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:24:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597483#M866325</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:24:31Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597484#M866326</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;&lt;/P&gt;&lt;P&gt; Goto SE38 give BCALV* and press F4 u will get the list of standard ALV with oops.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Prashant&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:25:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597484#M866326</guid>
      <dc:creator>former_member386202</dc:creator>
      <dc:date>2008-03-26T11:25:31Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597485#M866327</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;look at : BCALV_DND_02_CL1&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:25:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597485#M866327</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:25:35Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597486#M866328</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;see these examples.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;example1:&lt;/STRONG&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA:t_mara TYPE TABLE OF mara.
DATA:FCAT TYPE LVC_T_FCAT.

DATA:G_CONTAINER TYPE SCRFNAME VALUE 'TABC',"TABC is *container in screen 101
     GRID  TYPE REF TO CL_GUI_ALV_GRID,
     G_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER.

set screen 101.

MODULE STATUS_0101 output.
  IF G_CUSTOM_CONTAINER IS INITIAL.
    CREATE OBJECT G_CUSTOM_CONTAINER   "CREATING OBJECT FOR CUSTOM CONTAINER
           EXPORTING CONTAINER_NAME = G_CONTAINER.
    CREATE OBJECT GRID    "CREATING GRID IN WRKBNCH SCREEN
           EXPORTING I_PARENT = G_CUSTOM_CONTAINER.
    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
      EXPORTING
        I_STRUCTURE_NAME = 'MARA'
      CHANGING
        CT_FIELDCAT      = FCAT[].

    SELECT * from mara into table t_mara.

    CALL METHOD GRID-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
      CHANGING
        IT_FIELDCATALOG = FCAT[]
        IT_OUTTAB       = t_MARA.
  ENDIF.
ENDMODULE.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flow logic of screen 101:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
PROCESS BEFORE OUTPUT.
 MODULE STATUS_0101.

PROCESS AFTER INPUT.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;***************************************************************************&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;example2:&lt;/STRONG&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA:G_DOCKING_CONTAINER_1 TYPE REF TO CL_GUI_DOCKING_CONTAINER,
     g_grid TYPE REF TO CL_GUI_ALV_GRID.

DATA:itab like sflight occurs 0 with header line,
      okcode like sy-ucomm.

select * from sflight into table itab.

set screen 101.

MODULE STATUS_0101 OUTPUT.
  SET PF-STATUS 'MENU'.
  SET TITLEBAR 'TIT'.
  perform create_and_init_controls.
ENDMODULE.                 " STATUS_0101  OUTPUT


FORM create_and_init_controls .
  CREATE OBJECT G_DOCKING_CONTAINER_1
    EXPORTING
      REPID       = sy-repid
      DYNNR       = '101'
      SIDE        = cl_gui_docking_container=&amp;gt;DOCK_AT_top
      EXTENSION   = 100.

  CREATE OBJECT G_GRID
    EXPORTING
      I_PARENT          = G_DOCKING_CONTAINER_1.

  CALL METHOD G_GRID-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
    EXPORTING
      I_STRUCTURE_NAME              = 'SFLIGHT'
    CHANGING
    IT_OUTTAB                     = itab[].
ENDFORM.                    " create_and_init_controls


MODULE user_command_0101 INPUT.
  CASE okcode.
    WHEN 'BACK'.
      SET SCREEN 0.
  ENDCASE.
ENDMODULE.                 " user_command_0101  INPUT

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;flow logic of screen 101:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
PROCESS BEFORE OUTPUT.
 MODULE STATUS_0101.

PROCESS AFTER INPUT.
 MODULE user_command_0101.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;rgds,&lt;/P&gt;&lt;P&gt;bharat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:26:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597486#M866328</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:26:54Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597487#M866329</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;U&gt;Sample Alv reports with OOPS concept:&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;got ot &lt;STRONG&gt;se38&lt;/STRONG&gt; and check out the following for your reference:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BC_ALV_GRID_CONTROL&lt;/P&gt;&lt;P&gt;BC_ALVHIERGRID1_D100&lt;/P&gt;&lt;P&gt;BC_ALVHIERGRID1_D210&lt;/P&gt;&lt;P&gt;BC_ALVHIERGRID1_HIER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BC_ALV_DEMO_HTML_D0100&lt;/P&gt;&lt;P&gt;BC_ALV_GRID_CONTROL&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL_D100&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL_D210&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL_HIER&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL_SAP_TEMPL&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL_SAP_TEMPL_F01&lt;/P&gt;&lt;P&gt;BC_ALVEXCEL_SAP_TEMPL_TOP&lt;/P&gt;&lt;P&gt;BC_ALVEXCELTOP&lt;/P&gt;&lt;P&gt;BC_ALVHIERGRID1_D100&lt;/P&gt;&lt;P&gt;BC_ALVHIERGRID1_D210&lt;/P&gt;&lt;P&gt;BC_ALVHIERGRID1_HIER&lt;/P&gt;&lt;P&gt;BC_ALVHIERTOP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please take a look at the report I made using OO ALV:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;code&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Report ZFI_VENDOR_PYMT_INQUIRY&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp; PROGRAM TYPE : Report&lt;/P&gt;&lt;P&gt;*&amp;amp; RICEF ID : 536&lt;/P&gt;&lt;P&gt;*&amp;amp; TITLE : ZFI_VENDOR_PYMT_INQUIRY&lt;/P&gt;&lt;P&gt;*&amp;amp; SAP Module : FI - AP&lt;/P&gt;&lt;P&gt;*&amp;amp; CREATION DATE : 08/09/2007&lt;/P&gt;&lt;P&gt;*&amp;amp; AUTHOR : Aris Hidalgo&lt;/P&gt;&lt;P&gt;*&amp;amp; DESIGNER : Aris Hidalgo&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; DESCRIPTION :&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;STRONG&gt;$&lt;/STRONG&gt;*********************************************************************&lt;/P&gt;&lt;P&gt;*$ CHANGE HISTORY&lt;/P&gt;&lt;P&gt;*$----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;*$ DATE | T-Num | Description | Reference&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;| | | &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;$&lt;/STRONG&gt;*********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT zfi_vendor_pymt_inquiry&lt;/P&gt;&lt;P&gt;NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;MESSAGE-ID zfi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data Dictionary Table/s * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;TABLES: lfa1,&lt;/P&gt;&lt;P&gt;bkpf,&lt;/P&gt;&lt;P&gt;bsak,&lt;/P&gt;&lt;P&gt;payr,&lt;/P&gt;&lt;P&gt;zcheck_monitor.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_event_receiver DEFINITION DEFERRED.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Global Data/s * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;DATA: gt_fieldcat TYPE lvc_t_fcat,&lt;/P&gt;&lt;P&gt;ok_code TYPE syst-ucomm,&lt;/P&gt;&lt;P&gt;save_ok TYPE syst-ucomm,&lt;/P&gt;&lt;P&gt;g_repid TYPE syst-repid,&lt;/P&gt;&lt;P&gt;gs_layout TYPE lvc_s_layo,&lt;/P&gt;&lt;P&gt;gv_container TYPE scrfname VALUE 'CUSTOM_CONTROL',&lt;/P&gt;&lt;P&gt;grid1 TYPE REF TO cl_gui_alv_grid,&lt;/P&gt;&lt;P&gt;custom_container TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;P&gt;event_receiver TYPE REF TO lcl_event_receiver,&lt;/P&gt;&lt;P&gt;gs_disvariant TYPE disvariant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Global Structure/s * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;TYPES: BEGIN OF t_output,&lt;/P&gt;&lt;P&gt;bukrs TYPE bsak-bukrs,&lt;/P&gt;&lt;P&gt;lifnr TYPE lfa1-lifnr,&lt;/P&gt;&lt;P&gt;name1 TYPE lfa1-name1,&lt;/P&gt;&lt;P&gt;lnrza TYPE lfa1-name1, "Name of alternate payee&lt;/P&gt;&lt;P&gt;augbl TYPE bsak-augbl,&lt;/P&gt;&lt;P&gt;belnr TYPE bsak-belnr,&lt;/P&gt;&lt;P&gt;buzei TYPE bsak-buzei,&lt;/P&gt;&lt;P&gt;budat TYPE bsak-budat,&lt;/P&gt;&lt;P&gt;bldat TYPE bsak-bldat,&lt;/P&gt;&lt;P&gt;dmbtr TYPE bsak-dmbtr,&lt;/P&gt;&lt;P&gt;wrbtr TYPE bsak-wrbtr,&lt;/P&gt;&lt;P&gt;waers TYPE bsak-waers,&lt;/P&gt;&lt;P&gt;zchect TYPE zcheck_monitor-zchect,&lt;/P&gt;&lt;P&gt;zaldt TYPE payr-zaldt,&lt;/P&gt;&lt;P&gt;xblnr TYPE bsak-xblnr,&lt;/P&gt;&lt;P&gt;sgtxt TYPE bsak-sgtxt,&lt;/P&gt;&lt;P&gt;zuonr TYPE bsak-zuonr,&lt;/P&gt;&lt;P&gt;blart TYPE bsak-blart,&lt;/P&gt;&lt;P&gt;zrcdap TYPE zcheck_monitor-zrcdap,&lt;/P&gt;&lt;P&gt;zrlsvd TYPE zcheck_monitor-zrlsvd,&lt;/P&gt;&lt;P&gt;zbancd TYPE zcheck_monitor-zbancd,&lt;/P&gt;&lt;P&gt;usnam TYPE bkpf-usnam,&lt;/P&gt;&lt;P&gt;gjahr TYPE bsak-gjahr,&lt;/P&gt;&lt;P&gt;END OF t_output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Global Internal Table/s * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;DATA: gt_output TYPE STANDARD TABLE OF t_output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Global Work Area/s * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;DATA: wa_output LIKE LINE OF gt_output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_bukrs FOR bsak-bukrs OBLIGATORY,&lt;/P&gt;&lt;P&gt;s_lifnr FOR bsak-lifnr,&lt;/P&gt;&lt;P&gt;s_ktokk FOR lfa1-ktokk,&lt;/P&gt;&lt;P&gt;s_sortl FOR lfa1-sortl.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b2.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_belnr FOR bkpf-belnr,&lt;/P&gt;&lt;P&gt;s_bldat FOR bsak-bldat,&lt;/P&gt;&lt;P&gt;s_budat FOR bkpf-budat,&lt;/P&gt;&lt;P&gt;s_blart FOR bsak-blart,&lt;/P&gt;&lt;P&gt;s_umskz FOR bsak-umskz,&lt;/P&gt;&lt;P&gt;s_xblnr FOR bsak-xblnr,&lt;/P&gt;&lt;P&gt;s_usnam FOR bkpf-usnam,&lt;/P&gt;&lt;P&gt;s_gjahr FOR bsak-gjahr NO INTERVALS NO-DISPLAY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b3.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b4 WITH FRAME TITLE text-026.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_zchect FOR zcheck_monitor-zchect,&lt;/P&gt;&lt;P&gt;s_zaldt FOR payr-zaldt.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b4.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*/ CLASS DEFINITION/S&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_data_def DEFINITION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_data_def DEFINITION ABSTRACT.&lt;/P&gt;&lt;P&gt;PROTECTED SECTION.&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_vendor_details,&lt;/P&gt;&lt;P&gt;bukrs TYPE bsik-bukrs,&lt;/P&gt;&lt;P&gt;umskz TYPE bsik-umskz,&lt;/P&gt;&lt;P&gt;augdt TYPE bsik-augdt,&lt;/P&gt;&lt;P&gt;augbl TYPE bsik-augbl,&lt;/P&gt;&lt;P&gt;belnr TYPE bsik-belnr,&lt;/P&gt;&lt;P&gt;buzei TYPE bsik-buzei,&lt;/P&gt;&lt;P&gt;budat TYPE bsik-budat,&lt;/P&gt;&lt;P&gt;bldat TYPE bsik-bldat,&lt;/P&gt;&lt;P&gt;xblnr TYPE bsik-xblnr,&lt;/P&gt;&lt;P&gt;blart TYPE bsik-blart,&lt;/P&gt;&lt;P&gt;dmbtr TYPE bsik-dmbtr,&lt;/P&gt;&lt;P&gt;wrbtr TYPE bsik-wrbtr,&lt;/P&gt;&lt;P&gt;waers TYPE bsik-waers,&lt;/P&gt;&lt;P&gt;sgtxt TYPE bsik-sgtxt,&lt;/P&gt;&lt;P&gt;zuonr TYPE bsik-zuonr,&lt;/P&gt;&lt;P&gt;shkzg TYPE bsik-shkzg,&lt;/P&gt;&lt;P&gt;gjahr TYPE bsik-gjahr,&lt;/P&gt;&lt;P&gt;empfb TYPE bsik-empfb,&lt;/P&gt;&lt;P&gt;ktokk TYPE lfa1-ktokk,&lt;/P&gt;&lt;P&gt;sortl TYPE lfa1-sortl,&lt;/P&gt;&lt;P&gt;lifnr TYPE lfa1-lifnr,&lt;/P&gt;&lt;P&gt;name1 TYPE lfa1-name1,&lt;/P&gt;&lt;P&gt;lnrza TYPE lfa1-lnrza,&lt;/P&gt;&lt;P&gt;usnam TYPE bkpf-usnam,&lt;/P&gt;&lt;P&gt;END OF t_vendor_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_bkpf,&lt;/P&gt;&lt;P&gt;bukrs TYPE bkpf-bukrs,&lt;/P&gt;&lt;P&gt;belnr TYPE bkpf-belnr,&lt;/P&gt;&lt;P&gt;gjahr TYPE bkpf-gjahr,&lt;/P&gt;&lt;P&gt;usnam TYPE bkpf-usnam,&lt;/P&gt;&lt;P&gt;END OF t_bkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_alt_payee,&lt;/P&gt;&lt;P&gt;lifnr TYPE lfa1-lifnr,&lt;/P&gt;&lt;P&gt;name1 TYPE lfa1-name1,&lt;/P&gt;&lt;P&gt;END OF t_alt_payee.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_payment_details,&lt;/P&gt;&lt;P&gt;zzbukr TYPE zcheck_monitor-zzbukr,&lt;/P&gt;&lt;P&gt;zvblnr TYPE zcheck_monitor-zvblnr,&lt;/P&gt;&lt;P&gt;zchect TYPE zcheck_monitor-zchect,&lt;/P&gt;&lt;P&gt;zrcdap TYPE zcheck_monitor-zrcdap,&lt;/P&gt;&lt;P&gt;zrlsvd TYPE zcheck_monitor-zrlsvd,&lt;/P&gt;&lt;P&gt;zbancd TYPE zcheck_monitor-zbancd,&lt;/P&gt;&lt;P&gt;END OF t_payment_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_payr,&lt;/P&gt;&lt;P&gt;zbukr TYPE payr-zbukr,&lt;/P&gt;&lt;P&gt;chect TYPE payr-chect,&lt;/P&gt;&lt;P&gt;vblnr TYPE payr-vblnr,&lt;/P&gt;&lt;P&gt;zaldt TYPE payr-zaldt,&lt;/P&gt;&lt;P&gt;END OF t_payr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS-DATA: gt_vendor_details TYPE STANDARD TABLE OF t_vendor_details,&lt;/P&gt;&lt;P&gt;gt_bkpf TYPE HASHED TABLE OF t_bkpf&lt;/P&gt;&lt;P&gt;WITH UNIQUE KEY bukrs belnr gjahr,&lt;/P&gt;&lt;P&gt;gt_alt_payee TYPE HASHED TABLE OF t_alt_payee&lt;/P&gt;&lt;P&gt;WITH UNIQUE KEY lifnr,&lt;/P&gt;&lt;P&gt;gt_payment_details TYPE STANDARD TABLE OF t_payment_details,&lt;/P&gt;&lt;P&gt;gt_payr TYPE STANDARD TABLE OF t_payr,&lt;/P&gt;&lt;P&gt;gr_zvblnr TYPE RANGE OF zcheck_monitor-zvblnr,&lt;/P&gt;&lt;P&gt;wa_zvblnr LIKE LINE OF gr_zvblnr.&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_data_def DEFINITION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_get_data DEFINITION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_get_data DEFINITION INHERITING FROM lcl_data_def.&lt;/P&gt;&lt;P&gt;PUBLIC SECTION.&lt;/P&gt;&lt;P&gt;METHODS: get_records,&lt;/P&gt;&lt;P&gt;get_altpayee_name,&lt;/P&gt;&lt;P&gt;get_payment_details_1,&lt;/P&gt;&lt;P&gt;get_payment_details_2,&lt;/P&gt;&lt;P&gt;process_data,&lt;/P&gt;&lt;P&gt;get_check_num.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PRIVATE SECTION.&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_bsas,&lt;/P&gt;&lt;P&gt;bukrs TYPE bsas-bukrs,&lt;/P&gt;&lt;P&gt;belnr TYPE bsas-belnr,&lt;/P&gt;&lt;P&gt;gjahr TYPE bsas-gjahr,&lt;/P&gt;&lt;P&gt;buzei TYPE bsas-buzei,&lt;/P&gt;&lt;P&gt;augbl TYPE bsas-augbl,&lt;/P&gt;&lt;P&gt;END OF t_bsas.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_bsak,&lt;/P&gt;&lt;P&gt;bukrs TYPE bsak-bukrs,&lt;/P&gt;&lt;P&gt;belnr TYPE bsak-belnr,&lt;/P&gt;&lt;P&gt;gjahr TYPE bsak-gjahr,&lt;/P&gt;&lt;P&gt;buzei TYPE bsak-buzei,&lt;/P&gt;&lt;P&gt;augbl TYPE bsak-augbl,&lt;/P&gt;&lt;P&gt;lifnr TYPE bsak-lifnr,&lt;/P&gt;&lt;P&gt;empfb TYPE bsak-empfb,&lt;/P&gt;&lt;P&gt;END OF t_bsak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_payr_dum,&lt;/P&gt;&lt;P&gt;zbukr TYPE payr-zbukr,&lt;/P&gt;&lt;P&gt;vblnr TYPE payr-vblnr,&lt;/P&gt;&lt;P&gt;gjahr TYPE payr-gjahr,&lt;/P&gt;&lt;P&gt;chect TYPE payr-chect,&lt;/P&gt;&lt;P&gt;zaldt TYPE payr-zaldt,&lt;/P&gt;&lt;P&gt;END OF t_payr_dum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_alt_payee2,&lt;/P&gt;&lt;P&gt;lifnr TYPE lfa1-lifnr,&lt;/P&gt;&lt;P&gt;name1 TYPE lfa1-name1,&lt;/P&gt;&lt;P&gt;lnrza TYPE lfa1-lnrza,&lt;/P&gt;&lt;P&gt;END OF t_alt_payee2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: lt_vendor_details_dum TYPE STANDARD TABLE OF t_vendor_details,&lt;/P&gt;&lt;P&gt;lt_bsas TYPE SORTED TABLE OF t_bsas&lt;/P&gt;&lt;P&gt;WITH NON-UNIQUE KEY bukrs belnr gjahr,&lt;/P&gt;&lt;P&gt;lt_bsak TYPE SORTED TABLE OF t_bsak&lt;/P&gt;&lt;P&gt;WITH NON-UNIQUE KEY bukrs belnr gjahr,&lt;/P&gt;&lt;P&gt;lt_payr TYPE SORTED TABLE OF t_payr_dum&lt;/P&gt;&lt;P&gt;WITH NON-UNIQUE KEY zbukr vblnr gjahr,&lt;/P&gt;&lt;P&gt;lt_alt_payee2 TYPE HASHED TABLE OF t_alt_payee2&lt;/P&gt;&lt;P&gt;WITH UNIQUE KEY lifnr,&lt;/P&gt;&lt;P&gt;lt_alt_payee_dum LIKE lt_alt_payee2,&lt;/P&gt;&lt;P&gt;lt_payment_details TYPE SORTED TABLE OF t_payment_details&lt;/P&gt;&lt;P&gt;WITH NON-UNIQUE KEY zzbukr zvblnr zchect.&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_get_data DEFINITION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_alv_routines DEFINITION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_alv_routines DEFINITION INHERITING FROM lcl_data_def.&lt;/P&gt;&lt;P&gt;PUBLIC SECTION.&lt;/P&gt;&lt;P&gt;METHODS: build_fieldcat FINAL.&lt;/P&gt;&lt;P&gt;CLASS-DATA: wa_fieldcat LIKE LINE OF gt_fieldcat.&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_alv_routines DEFINITION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_event_receiver DEFINITION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_event_receiver DEFINITION INHERITING FROM lcl_alv_routines FINAL.&lt;/P&gt;&lt;P&gt;PUBLIC SECTION.&lt;/P&gt;&lt;P&gt;METHODS: handle_hotspot_click&lt;/P&gt;&lt;P&gt;FOR EVENT hotspot_click OF cl_gui_alv_grid&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;e_row_id&lt;/P&gt;&lt;P&gt;e_column_id&lt;/P&gt;&lt;P&gt;es_row_no.&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_event_receiver DEFINITION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*/ CLASS IMPLEMENTATIONS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_get_data IMPLEMENTATION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_get_data IMPLEMENTATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD get_records &lt;/P&gt;&lt;P&gt;METHOD get_records.&lt;/P&gt;&lt;P&gt;IF s_zchect] IS INITIAL AND s_zaldt[ IS INITIAL.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERCENTAGE = 0 &lt;/P&gt;&lt;P&gt;text = text-031.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get records from BSIK(Open Items) &lt;/P&gt;&lt;P&gt;SELECT bsik~bukrs bsik~umskz bsik~augdt bsik~augbl bsik~belnr&lt;/P&gt;&lt;P&gt;bsik~buzei bsik~budat bsik~bldat bsik~xblnr bsik~blart&lt;/P&gt;&lt;P&gt;bsik~dmbtr bsik~wrbtr bsik~waers bsik~sgtxt bsik~zuonr&lt;/P&gt;&lt;P&gt;bsik~shkzg bsik~gjahr bsik~empfb lfa1~ktokk lfa1~sortl&lt;/P&gt;&lt;P&gt;lfa1~lifnr lfa1~name1 lfa1~lnrza&lt;/P&gt;&lt;P&gt;FROM bsik&lt;/P&gt;&lt;P&gt;INNER JOIN lfa1&lt;/P&gt;&lt;P&gt;ON lfa1~lifnr = bsik~lifnr&lt;/P&gt;&lt;P&gt;INTO TABLE gt_vendor_details&lt;/P&gt;&lt;P&gt;WHERE bsik~mandt = sy-mandt&lt;/P&gt;&lt;P&gt;AND bsik~lifnr IN s_lifnr&lt;/P&gt;&lt;P&gt;AND bsik~bukrs IN s_bukrs&lt;/P&gt;&lt;P&gt;AND bsik~gjahr IN s_gjahr&lt;/P&gt;&lt;P&gt;AND bsik~belnr IN s_belnr&lt;/P&gt;&lt;P&gt;AND bsik~budat IN s_budat&lt;/P&gt;&lt;P&gt;AND bsik~bldat IN s_bldat&lt;/P&gt;&lt;P&gt;AND bsik~blart IN s_blart&lt;/P&gt;&lt;P&gt;AND bsik~umskz IN s_umskz&lt;/P&gt;&lt;P&gt;AND bsik~xblnr IN s_xblnr&lt;/P&gt;&lt;P&gt;AND lfa1~ktokk IN s_ktokk&lt;/P&gt;&lt;P&gt;AND lfa1~sortl IN s_sortl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get records from BSAK(Cleared Items) &lt;/P&gt;&lt;P&gt;SELECT bsak~bukrs bsak~umskz bsak~augdt bsak~augbl bsak~belnr&lt;/P&gt;&lt;P&gt;bsak~buzei bsak~budat bsak~bldat bsak~xblnr bsak~blart&lt;/P&gt;&lt;P&gt;bsak~dmbtr bsak~wrbtr bsak~waers bsak~sgtxt bsak~zuonr&lt;/P&gt;&lt;P&gt;bsak~shkzg bsak~gjahr bsak~empfb lfa1~ktokk lfa1~sortl&lt;/P&gt;&lt;P&gt;lfa1~lifnr lfa1~name1 lfa1~lnrza&lt;/P&gt;&lt;P&gt;FROM bsak&lt;/P&gt;&lt;P&gt;INNER JOIN lfa1&lt;/P&gt;&lt;P&gt;ON lfa1~lifnr = bsak~lifnr&lt;/P&gt;&lt;P&gt;APPENDING table gt_vendor_details&lt;/P&gt;&lt;P&gt;WHERE bsak~mandt = sy-mandt&lt;/P&gt;&lt;P&gt;AND bsak~lifnr IN s_lifnr&lt;/P&gt;&lt;P&gt;AND bsak~bukrs IN s_bukrs&lt;/P&gt;&lt;P&gt;AND bsak~gjahr IN s_gjahr&lt;/P&gt;&lt;P&gt;AND bsak~belnr IN s_belnr&lt;/P&gt;&lt;P&gt;AND bsak~budat IN s_budat&lt;/P&gt;&lt;P&gt;AND bsak~bldat IN s_bldat&lt;/P&gt;&lt;P&gt;AND bsak~blart IN s_blart&lt;/P&gt;&lt;P&gt;AND bsak~umskz IN s_umskz&lt;/P&gt;&lt;P&gt;AND bsak~xblnr IN s_xblnr&lt;/P&gt;&lt;P&gt;AND lfa1~ktokk IN s_ktokk&lt;/P&gt;&lt;P&gt;AND lfa1~sortl IN s_sortl.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CALL METHOD me-&amp;gt;get_payment_details_2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get records from BSAK(Cleared Items) &lt;/P&gt;&lt;P&gt;SELECT bsak~bukrs bsak~umskz bsak~augdt bsak~augbl bsak~belnr&lt;/P&gt;&lt;P&gt;bsak~buzei bsak~budat bsak~bldat bsak~xblnr bsak~blart&lt;/P&gt;&lt;P&gt;bsak~dmbtr bsak~wrbtr bsak~waers bsak~sgtxt bsak~zuonr&lt;/P&gt;&lt;P&gt;bsak~shkzg bsak~gjahr bsak~empfb lfa1~ktokk lfa1~sortl&lt;/P&gt;&lt;P&gt;lfa1~lifnr lfa1~name1 lfa1~lnrza&lt;/P&gt;&lt;P&gt;FROM bsak&lt;/P&gt;&lt;P&gt;INNER JOIN lfa1&lt;/P&gt;&lt;P&gt;ON lfa1~lifnr = bsak~lifnr&lt;/P&gt;&lt;P&gt;INTO TABLE gt_vendor_details&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN gt_payment_details&lt;/P&gt;&lt;P&gt;WHERE bsak~mandt = sy-mandt&lt;/P&gt;&lt;P&gt;AND bsak~lifnr IN s_lifnr&lt;/P&gt;&lt;P&gt;AND bsak~bukrs = gt_payment_details-zzbukr&lt;/P&gt;&lt;P&gt;AND bsak~gjahr IN s_gjahr&lt;/P&gt;&lt;P&gt;AND bsak~belnr IN s_belnr&lt;/P&gt;&lt;P&gt;AND bsak~budat IN s_budat&lt;/P&gt;&lt;P&gt;AND bsak~bldat IN s_bldat&lt;/P&gt;&lt;P&gt;AND bsak~blart IN s_blart&lt;/P&gt;&lt;P&gt;AND bsak~umskz IN s_umskz&lt;/P&gt;&lt;P&gt;AND bsak~xblnr IN s_xblnr&lt;/P&gt;&lt;P&gt;AND lfa1~ktokk IN s_ktokk&lt;/P&gt;&lt;P&gt;AND lfa1~sortl IN s_sortl&lt;/P&gt;&lt;P&gt;AND bsak~augbl = gt_payment_details-zvblnr.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT gt_vendor_details[] IS INITIAL.&lt;/P&gt;&lt;P&gt;CALL METHOD me-&amp;gt;get_altpayee_name.&lt;/P&gt;&lt;P&gt;CALL METHOD me-&amp;gt;get_payment_details_1.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERCENTAGE = 0 &lt;/P&gt;&lt;P&gt;text = text-032.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Process data &lt;/P&gt;&lt;P&gt;CALL METHOD me-&amp;gt;process_data.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "get_records&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD get_altpayee_name &lt;/P&gt;&lt;P&gt;METHOD get_altpayee_name.&lt;/P&gt;&lt;P&gt;SELECT lifnr name1&lt;/P&gt;&lt;P&gt;FROM lfa1&lt;/P&gt;&lt;P&gt;INTO TABLE gt_alt_payee&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN gt_vendor_details&lt;/P&gt;&lt;P&gt;WHERE lifnr = gt_vendor_details-lnrza.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "get_altpayee_name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD get_payment_details_1 &lt;/P&gt;&lt;P&gt;METHOD get_payment_details_1.&lt;/P&gt;&lt;P&gt;IF s_zchect] IS INITIAL AND s_zaldt[ IS INITIAL.&lt;/P&gt;&lt;P&gt;SELECT zzbukr zvblnr zchect zrcdap zrlsvd zbancd&lt;/P&gt;&lt;P&gt;FROM zcheck_monitor&lt;/P&gt;&lt;P&gt;INTO TABLE gt_payment_details&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN gt_vendor_details&lt;/P&gt;&lt;P&gt;WHERE zzbukr = gt_vendor_details-bukrs&lt;/P&gt;&lt;P&gt;AND zvblnr = gt_vendor_details-augbl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DELETE gt_payment_details WHERE zvblnr IS INITIAL.&lt;/P&gt;&lt;P&gt;IF NOT gt_payment_details[] IS INITIAL.&lt;/P&gt;&lt;P&gt;SELECT zbukr chect vblnr zaldt&lt;/P&gt;&lt;P&gt;FROM payr&lt;/P&gt;&lt;P&gt;INTO TABLE gt_payr&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN gt_payment_details&lt;/P&gt;&lt;P&gt;WHERE zbukr = gt_payment_details-zzbukr&lt;/P&gt;&lt;P&gt;AND vblnr = gt_payment_details-zvblnr&lt;/P&gt;&lt;P&gt;AND chect = gt_payment_details-zchect&lt;/P&gt;&lt;P&gt;AND zaldt IN s_zaldt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DELETE gt_payr WHERE vblnr IS INITIAL.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "get_payment_details_1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD get_payment_details_2 &lt;/P&gt;&lt;P&gt;METHOD get_payment_details_2.&lt;/P&gt;&lt;P&gt;SELECT zzbukr zvblnr zchect&lt;/P&gt;&lt;P&gt;zrcdap zrlsvd zbancd&lt;/P&gt;&lt;P&gt;FROM zcheck_monitor&lt;/P&gt;&lt;P&gt;INTO TABLE gt_payment_details&lt;/P&gt;&lt;P&gt;WHERE zzbukr IN s_bukrs&lt;/P&gt;&lt;P&gt;AND zchect IN s_zchect.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT gt_payment_details[] IS INITIAL.&lt;/P&gt;&lt;P&gt;SELECT zbukr chect vblnr zaldt&lt;/P&gt;&lt;P&gt;FROM payr&lt;/P&gt;&lt;P&gt;INTO TABLE gt_payr&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN gt_payment_details&lt;/P&gt;&lt;P&gt;WHERE zbukr = gt_payment_details-zzbukr&lt;/P&gt;&lt;P&gt;AND vblnr = gt_payment_details-zvblnr&lt;/P&gt;&lt;P&gt;AND chect = gt_payment_details-zchect&lt;/P&gt;&lt;P&gt;AND zaldt IN s_zaldt.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "get_payment_details_2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD process_data &lt;/P&gt;&lt;P&gt;METHOD process_data.&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;fs_vendor_details&amp;gt; LIKE LINE OF gt_vendor_details,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_bkpf&amp;gt; LIKE LINE OF gt_bkpf,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_alt_payee&amp;gt; LIKE LINE OF gt_alt_payee,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details&amp;gt; LIKE LINE OF gt_payment_details,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payr&amp;gt; LIKE LINE OF gt_payr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;fs_vendor_details_dum&amp;gt; LIKE LINE OF lt_vendor_details_dum,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_bsas&amp;gt; LIKE LINE OF lt_bsas,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_bsak&amp;gt; LIKE LINE OF lt_bsak,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payr2&amp;gt; LIKE LINE OF lt_payr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_alt_payee_dum&amp;gt; LIKE LINE OF lt_alt_payee_dum,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_alt_payee2&amp;gt; LIKE LINE OF lt_alt_payee2,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details2&amp;gt; LIKE LINE OF lt_payment_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Limit records to check number specified &lt;/P&gt;&lt;P&gt;IF NOT s_zchect[] IS INITIAL.&lt;/P&gt;&lt;P&gt;LOOP AT gt_payment_details ASSIGNING &amp;lt;fs_payment_details&amp;gt;.&lt;/P&gt;&lt;P&gt;wa_zvblnr-sign = 'I'.&lt;/P&gt;&lt;P&gt;wa_zvblnr-option = 'EQ'.&lt;/P&gt;&lt;P&gt;MOVE &amp;lt;fs_payment_details&amp;gt;-zvblnr TO wa_zvblnr-low.&lt;/P&gt;&lt;P&gt;APPEND wa_zvblnr TO gr_zvblnr.&lt;/P&gt;&lt;P&gt;CLEAR wa_zvblnr.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;DELETE gt_vendor_details WHERE NOT augbl IN gr_zvblnr.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Limit records to check date specified &lt;/P&gt;&lt;P&gt;IF NOT s_zaldt[] IS INITIAL.&lt;/P&gt;&lt;P&gt;REFRESH gr_zvblnr.&lt;/P&gt;&lt;P&gt;LOOP AT gt_payr ASSIGNING &amp;lt;fs_payr&amp;gt;.&lt;/P&gt;&lt;P&gt;wa_zvblnr-sign = 'I'.&lt;/P&gt;&lt;P&gt;wa_zvblnr-option = 'EQ'.&lt;/P&gt;&lt;P&gt;MOVE &amp;lt;fs_payr&amp;gt;-vblnr TO wa_zvblnr-low.&lt;/P&gt;&lt;P&gt;APPEND wa_zvblnr TO gr_zvblnr.&lt;/P&gt;&lt;P&gt;CLEAR wa_zvblnr.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;IF gr_zvblnr[] IS INITIAL.&lt;/P&gt;&lt;P&gt;REFRESH gt_vendor_details.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;DELETE gt_vendor_details WHERE NOT augbl IN gr_zvblnr.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT gt_vendor_details[] IS INITIAL.&lt;/P&gt;&lt;P&gt;SELECT bukrs belnr gjahr usnam&lt;/P&gt;&lt;P&gt;FROM bkpf&lt;/P&gt;&lt;P&gt;INTO TABLE gt_bkpf&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN gt_vendor_details&lt;/P&gt;&lt;P&gt;WHERE bukrs = gt_vendor_details-bukrs&lt;/P&gt;&lt;P&gt;AND belnr = gt_vendor_details-belnr&lt;/P&gt;&lt;P&gt;AND gjahr = gt_vendor_details-gjahr&lt;/P&gt;&lt;P&gt;AND usnam IN s_usnam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT gt_bkpf[] IS INITIAL.&lt;/P&gt;&lt;P&gt;lt_vendor_details_dum] = gt_vendor_details[.&lt;/P&gt;&lt;P&gt;DELETE lt_vendor_details_dum WHERE blart 'ZP'&lt;/P&gt;&lt;P&gt;AND blart 'KZ'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get check number(For check cutting) &lt;/P&gt;&lt;P&gt;IF NOT lt_vendor_details_dum[] IS INITIAL.&lt;/P&gt;&lt;P&gt;CALL METHOD me-&amp;gt;get_check_num.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DELETE gt_vendor_details WHERE blart = 'KZ'&lt;/P&gt;&lt;P&gt;OR blart = 'ZP'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT gt_payment_details BY zzbukr zvblnr.&lt;/P&gt;&lt;P&gt;SORT gt_vendor_details BY bukrs augbl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT gt_vendor_details ASSIGNING &amp;lt;fs_vendor_details&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Limit records to be passed according to username(If applicable) &lt;/P&gt;&lt;P&gt;READ TABLE gt_bkpf ASSIGNING &amp;lt;fs_bkpf&amp;gt; WITH TABLE KEY bukrs = &amp;lt;fs_vendor_details&amp;gt;-bukrs&lt;/P&gt;&lt;P&gt;belnr = &amp;lt;fs_vendor_details&amp;gt;-belnr&lt;/P&gt;&lt;P&gt;gjahr = &amp;lt;fs_vendor_details&amp;gt;-gjahr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE &amp;lt;fs_bkpf&amp;gt;-usnam TO wa_output-usnam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF &amp;lt;fs_vendor_details&amp;gt;-shkzg = 'H'. "Credit&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-dmbtr = &amp;lt;fs_vendor_details&amp;gt;-dmbtr * -1.&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-wrbtr = &amp;lt;fs_vendor_details&amp;gt;-wrbtr * -1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pass records to output table &lt;/P&gt;&lt;P&gt;MOVE: &amp;lt;fs_vendor_details&amp;gt;-bukrs TO wa_output-bukrs,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-lifnr TO wa_output-lifnr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-name1 TO wa_output-name1,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-augbl TO wa_output-augbl,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-belnr TO wa_output-belnr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-buzei TO wa_output-buzei,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-budat TO wa_output-budat,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-bldat TO wa_output-bldat,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-dmbtr TO wa_output-dmbtr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-wrbtr TO wa_output-wrbtr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-waers TO wa_output-waers,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-xblnr TO wa_output-xblnr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-sgtxt TO wa_output-sgtxt,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-zuonr TO wa_output-zuonr,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-blart TO wa_output-blart,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_vendor_details&amp;gt;-gjahr TO wa_output-gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pass name of alternate payee &lt;/P&gt;&lt;P&gt;IF NOT &amp;lt;fs_vendor_details&amp;gt;-lnrza IS INITIAL.&lt;/P&gt;&lt;P&gt;READ TABLE gt_alt_payee ASSIGNING &amp;lt;fs_alt_payee&amp;gt;&lt;/P&gt;&lt;P&gt;WITH TABLE KEY lifnr = &amp;lt;fs_vendor_details&amp;gt;-lnrza.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;MOVE &amp;lt;fs_alt_payee&amp;gt;-name1 TO wa_output-lnrza.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MOVE &amp;lt;fs_vendor_details&amp;gt;-empfb TO wa_output-lnrza.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pass payment details &lt;/P&gt;&lt;P&gt;IF NOT &amp;lt;fs_vendor_details&amp;gt;-augbl IS INITIAL.&lt;/P&gt;&lt;P&gt;READ TABLE gt_payment_details ASSIGNING &amp;lt;fs_payment_details&amp;gt;&lt;/P&gt;&lt;P&gt;WITH KEY zzbukr = &amp;lt;fs_vendor_details&amp;gt;-bukrs&lt;/P&gt;&lt;P&gt;zvblnr = &amp;lt;fs_vendor_details&amp;gt;-augbl&lt;/P&gt;&lt;P&gt;BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;MOVE: &amp;lt;fs_payment_details&amp;gt;-zchect TO wa_output-zchect,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details&amp;gt;-zrcdap TO wa_output-zrcdap,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details&amp;gt;-zrlsvd TO wa_output-zrlsvd,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details&amp;gt;-zbancd TO wa_output-zbancd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pass payment date &lt;/P&gt;&lt;P&gt;READ TABLE gt_payr ASSIGNING &amp;lt;fs_payr&amp;gt; WITH KEY zbukr = &amp;lt;fs_vendor_details&amp;gt;-bukrs&lt;/P&gt;&lt;P&gt;chect = wa_output-zchect&lt;/P&gt;&lt;P&gt;vblnr = &amp;lt;fs_vendor_details&amp;gt;-augbl.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;MOVE &amp;lt;fs_payr&amp;gt;-zaldt TO wa_output-zaldt.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CONTINUE.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Routine for moving check number if transaction is check-cutting &lt;/P&gt;&lt;P&gt;IF wa_output-zchect IS INITIAL.&lt;/P&gt;&lt;P&gt;READ TABLE lt_bsas ASSIGNING &amp;lt;fs_bsas&amp;gt; WITH TABLE KEY bukrs = &amp;lt;fs_vendor_details&amp;gt;-bukrs&lt;/P&gt;&lt;P&gt;belnr = &amp;lt;fs_vendor_details&amp;gt;-augbl&lt;/P&gt;&lt;P&gt;gjahr = &amp;lt;fs_vendor_details&amp;gt;-gjahr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;READ TABLE lt_bsak ASSIGNING &amp;lt;fs_bsak&amp;gt; WITH TABLE KEY bukrs = &amp;lt;fs_bsas&amp;gt;-bukrs&lt;/P&gt;&lt;P&gt;belnr = &amp;lt;fs_bsas&amp;gt;-augbl&lt;/P&gt;&lt;P&gt;gjahr = &amp;lt;fs_bsas&amp;gt;-gjahr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;IF wa_output-lnrza IS INITIAL.&lt;/P&gt;&lt;P&gt;READ TABLE lt_alt_payee_dum ASSIGNING &amp;lt;fs_alt_payee_dum&amp;gt; WITH TABLE KEY lifnr = &amp;lt;fs_bsak&amp;gt;-lifnr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;READ TABLE lt_alt_payee2 ASSIGNING &amp;lt;fs_alt_payee2&amp;gt; WITH TABLE KEY lifnr = &amp;lt;fs_alt_payee_dum&amp;gt;-lnrza.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;wa_output-lnrza = &amp;lt;fs_alt_payee2&amp;gt;-name1.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;wa_output-lnrza = &amp;lt;fs_bsak&amp;gt;-empfb.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;READ TABLE lt_payr ASSIGNING &amp;lt;fs_payr2&amp;gt; WITH TABLE KEY zbukr = &amp;lt;fs_bsak&amp;gt;-bukrs&lt;/P&gt;&lt;P&gt;vblnr = &amp;lt;fs_bsak&amp;gt;-augbl&lt;/P&gt;&lt;P&gt;gjahr = &amp;lt;fs_bsak&amp;gt;-gjahr.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;wa_output-zchect = &amp;lt;fs_payr2&amp;gt;-chect.&lt;/P&gt;&lt;P&gt;wa_output-zaldt = &amp;lt;fs_payr2&amp;gt;-zaldt.&lt;/P&gt;&lt;P&gt;READ TABLE lt_payment_details ASSIGNING &amp;lt;fs_payment_details2&amp;gt; WITH TABLE KEY zzbukr = &amp;lt;fs_payr2&amp;gt;-zbukr&lt;/P&gt;&lt;P&gt;zvblnr = &amp;lt;fs_payr2&amp;gt;-vblnr&lt;/P&gt;&lt;P&gt;zchect = &amp;lt;fs_payr2&amp;gt;-chect.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;MOVE: &amp;lt;fs_payment_details2&amp;gt;-zrcdap TO wa_output-zrcdap,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details2&amp;gt;-zrlsvd TO wa_output-zrlsvd,&lt;/P&gt;&lt;P&gt;&amp;lt;fs_payment_details2&amp;gt;-zbancd TO wa_output-zbancd.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;APPEND wa_output TO gt_output.&lt;/P&gt;&lt;P&gt;CLEAR wa_output.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CONTINUE.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "process_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD get_check_num &lt;/P&gt;&lt;P&gt;METHOD get_check_num.&lt;/P&gt;&lt;P&gt;SELECT bukrs belnr gjahr&lt;/P&gt;&lt;P&gt;buzei augbl&lt;/P&gt;&lt;P&gt;FROM bsas&lt;/P&gt;&lt;P&gt;INTO TABLE lt_bsas&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN lt_vendor_details_dum&lt;/P&gt;&lt;P&gt;WHERE bukrs = lt_vendor_details_dum-bukrs&lt;/P&gt;&lt;P&gt;AND belnr = lt_vendor_details_dum-augbl&lt;/P&gt;&lt;P&gt;AND gjahr = lt_vendor_details_dum-gjahr&lt;/P&gt;&lt;P&gt;AND buzei BETWEEN '001' AND '999'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT lt_bsas[] IS INITIAL.&lt;/P&gt;&lt;P&gt;SELECT bukrs belnr gjahr&lt;/P&gt;&lt;P&gt;buzei augbl lifnr&lt;/P&gt;&lt;P&gt;empfb&lt;/P&gt;&lt;P&gt;FROM bsak&lt;/P&gt;&lt;P&gt;INTO TABLE lt_bsak&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN lt_bsas&lt;/P&gt;&lt;P&gt;WHERE bukrs = lt_bsas-bukrs&lt;/P&gt;&lt;P&gt;AND belnr = lt_bsas-augbl&lt;/P&gt;&lt;P&gt;AND gjahr = lt_bsas-gjahr&lt;/P&gt;&lt;P&gt;AND buzei BETWEEN '001' AND '999'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT lt_bsak[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get check number and check date &lt;/P&gt;&lt;P&gt;SELECT zbukr vblnr gjahr chect zaldt&lt;/P&gt;&lt;P&gt;FROM payr&lt;/P&gt;&lt;P&gt;INTO TABLE lt_payr&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN lt_bsak&lt;/P&gt;&lt;P&gt;WHERE zbukr = lt_bsak-bukrs&lt;/P&gt;&lt;P&gt;AND vblnr = lt_bsak-augbl&lt;/P&gt;&lt;P&gt;AND gjahr = lt_bsak-gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT lt_payr[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get check details &lt;/P&gt;&lt;P&gt;SELECT zzbukr zvblnr zchect&lt;/P&gt;&lt;P&gt;zrcdap zrlsvd zbancd&lt;/P&gt;&lt;P&gt;FROM zcheck_monitor&lt;/P&gt;&lt;P&gt;INTO TABLE lt_payment_details&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN lt_payr&lt;/P&gt;&lt;P&gt;WHERE zzbukr = lt_payr-zbukr&lt;/P&gt;&lt;P&gt;AND zvblnr = lt_payr-vblnr&lt;/P&gt;&lt;P&gt;AND zchect = lt_payr-chect.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT lifnr name1 lnrza&lt;/P&gt;&lt;P&gt;FROM lfa1&lt;/P&gt;&lt;P&gt;INTO TABLE lt_alt_payee_dum&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN lt_bsak&lt;/P&gt;&lt;P&gt;WHERE lifnr = lt_bsak-lifnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get alternate payee &lt;/P&gt;&lt;P&gt;SELECT lifnr name1 lnrza&lt;/P&gt;&lt;P&gt;FROM lfa1&lt;/P&gt;&lt;P&gt;INTO TABLE lt_alt_payee2&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN lt_alt_payee_dum&lt;/P&gt;&lt;P&gt;WHERE lifnr = lt_alt_payee_dum-lnrza.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "get_check_num&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_get_data IMPLEMENTATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_alv_routines IMPLEMENTATION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_alv_routines IMPLEMENTATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD build_fieldcat &lt;/P&gt;&lt;P&gt;METHOD build_fieldcat.&lt;/P&gt;&lt;P&gt;DEFINE m_fieldcat.&lt;/P&gt;&lt;P&gt;add 1 to wa_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;wa_fieldcat-fieldname = &amp;amp;1.&lt;/P&gt;&lt;P&gt;wa_fieldcat-tabname = &amp;amp;2.&lt;/P&gt;&lt;P&gt;wa_fieldcat-coltext = &amp;amp;3.&lt;/P&gt;&lt;P&gt;wa_fieldcat-outputlen = &amp;amp;4.&lt;/P&gt;&lt;P&gt;wa_fieldcat-fix_column = &amp;amp;5.&lt;/P&gt;&lt;P&gt;wa_fieldcat-just = &amp;amp;6.&lt;/P&gt;&lt;P&gt;wa_fieldcat-do_sum = &amp;amp;7.&lt;/P&gt;&lt;P&gt;wa_fieldcat-emphasize = &amp;amp;8.&lt;/P&gt;&lt;P&gt;wa_fieldcat-hotspot = &amp;amp;9.&lt;/P&gt;&lt;P&gt;append wa_fieldcat to gt_fieldcat.&lt;/P&gt;&lt;P&gt;clear wa_fieldcat.&lt;/P&gt;&lt;P&gt;END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;m_fieldcat 'BUKRS' 'gt_output' text-006 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'LIFNR' 'gt_output' text-007 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'NAME1' 'gt_output' text-008 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'LNRZA' 'gt_output' text-009 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'ZCHECT' 'gt_output' text-015 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'ZALDT' 'gt_output' text-016 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'DMBTR' 'gt_output' text-013 '' '' 'R' 'X' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'WRBTR' 'gt_output' text-014 '' '' 'R' 'X' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'AUGBL' 'gt_output' text-010 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'BELNR' 'gt_output' text-011 '' '' '' '' 'C410' 'X'.&lt;/P&gt;&lt;P&gt;m_fieldcat 'BUZEI' 'gt_output' text-029 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'BUDAT' 'gt_output' text-012 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'BLDAT' 'gt_output' text-028 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'WAERS' 'gt_output' text-030 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'XBLNR' 'gt_output' text-017 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'SGTXT' 'gt_output' text-018 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'ZUONR' 'gt_output' text-019 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'BLART' 'gt_output' text-020 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'ZRCDAP' 'gt_output' text-021 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'ZRLSVD' 'gt_output' text-022 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'ZBANCD' 'gt_output' text-023 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;m_fieldcat 'USNAM' 'gt_output' text-024 '' '' '' '' '' ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMETHOD. "build_fieldcat&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_alv_routines IMPLEMENTATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_event_receiver IMPLEMENTATION &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;CLASS lcl_event_receiver IMPLEMENTATION.&lt;/P&gt;&lt;P&gt;METHOD handle_hotspot_click.&lt;/P&gt;&lt;P&gt;CLEAR wa_output.&lt;/P&gt;&lt;P&gt;READ TABLE gt_output INDEX e_row_id INTO wa_output.&lt;/P&gt;&lt;P&gt;IF NOT wa_output-belnr IS INITIAL&lt;/P&gt;&lt;P&gt;AND e_column_id = 'BELNR'.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'BLN' FIELD wa_output-belnr.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'BUK' FIELD wa_output-bukrs.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'GJR' FIELD wa_output-gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Display accounting document &lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMETHOD. "handle_hotspot_click&lt;/P&gt;&lt;P&gt;ENDCLASS. "lcl_event_receiver IMPLEMENTATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;DATA: o_lcl_get_data TYPE REF TO lcl_get_data.&lt;/P&gt;&lt;P&gt;CREATE OBJECT o_lcl_get_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD o_lcl_get_data-&amp;gt;get_records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;IF NOT gt_output[] IS INITIAL.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERCENTAGE = 0 &lt;/P&gt;&lt;P&gt;text = text-033.&lt;/P&gt;&lt;P&gt;CALL SCREEN 100.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MESSAGE i000 WITH text-025.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Module STATUS_0100 OUTPUT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;MODULE status_0100 OUTPUT.&lt;/P&gt;&lt;P&gt;SET PF-STATUS '100'.&lt;/P&gt;&lt;P&gt;SET TITLEBAR 'TITLE100'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: o_lcl_alv_routines TYPE REF TO lcl_alv_routines.&lt;/P&gt;&lt;P&gt;CREATE OBJECT o_lcl_alv_routines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;g_repid = sy-repid.&lt;/P&gt;&lt;P&gt;IF custom_container IS INITIAL.&lt;/P&gt;&lt;P&gt;CREATE OBJECT custom_container&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;container_name = gv_container&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;cntl_error = 1&lt;/P&gt;&lt;P&gt;cntl_system_error = 2&lt;/P&gt;&lt;P&gt;create_error = 3&lt;/P&gt;&lt;P&gt;lifetime_error = 4&lt;/P&gt;&lt;P&gt;lifetime_dynpro_dynpro_link = 5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_INFORM'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;titel = g_repid&lt;/P&gt;&lt;P&gt;txt2 = sy-subrc&lt;/P&gt;&lt;P&gt;txt1 = text-004.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CREATE OBJECT grid1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_parent = custom_container.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build fieldcatalog for initial display &lt;/P&gt;&lt;P&gt;CALL METHOD o_lcl_alv_routines-&amp;gt;build_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sort output table &lt;/P&gt;&lt;P&gt;SORT gt_output BY bukrs lifnr zchect zaldt augbl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gs_disvariant-report = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Display initial window &lt;/P&gt;&lt;P&gt;CALL METHOD grid1-&amp;gt;set_table_for_first_display&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_structure_name = '' &lt;/P&gt;&lt;P&gt;is_layout = gs_layout&lt;/P&gt;&lt;P&gt;i_save = 'A'&lt;/P&gt;&lt;P&gt;is_variant = gs_disvariant&lt;/P&gt;&lt;P&gt;CHANGING&lt;/P&gt;&lt;P&gt;it_outtab = gt_output&lt;/P&gt;&lt;P&gt;it_fieldcatalog = gt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CREATE OBJECT event_receiver.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Trigger event when user clicks hotspot field &lt;/P&gt;&lt;P&gt;SET HANDLER event_receiver-&amp;gt;handle_hotspot_click FOR grid1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CALL METHOD cl_gui_control=&amp;gt;set_focus&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;control = grid1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_0100 OUTPUT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Module USER_COMMAND_0100 INPUT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;MODULE user_command_0100 INPUT.&lt;/P&gt;&lt;P&gt;save_ok = ok_code.&lt;/P&gt;&lt;P&gt;CASE save_ok.&lt;/P&gt;&lt;P&gt;WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.&lt;/P&gt;&lt;P&gt;CALL METHOD custom_container-&amp;gt;free.&lt;/P&gt;&lt;P&gt;CALL METHOD cl_gui_cfw=&amp;gt;flush.&lt;/P&gt;&lt;P&gt;IF sy-subrc 0.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'POPUP_TO_INFORM'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;titel = g_repid&lt;/P&gt;&lt;P&gt;txt2 = sy-subrc&lt;/P&gt;&lt;P&gt;txt1 = text-005.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_0100 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;[/code]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps...&lt;/P&gt;&lt;P&gt;&lt;EM&gt;please reward points if useful.&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:29:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597487#M866329</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:29:43Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597488#M866330</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;Goto Se38 --&amp;gt; Input BCALV* and press F4, you can  have number of ALV programs using OO ABAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sriram Ponna.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:30:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597488#M866330</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:30:04Z</dc:date>
    </item>
    <item>
      <title>Re: ALV reports</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597489#M866331</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;&lt;/P&gt;&lt;P&gt;here i have take one custom control on screen 100 and its name is CC_ALV...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZALV_OOP
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*

REPORT  zalv_oop.

*----------------------------------------------------------------------*
*       CLASS lcl_event_handler DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS lcl_event_handler DEFINITION .
  PUBLIC SECTION .
    METHODS:

*--Double-click control
    handle_double_click
    FOR EVENT double_click OF cl_gui_alv_grid
    IMPORTING e_row e_column es_row_no.

  PRIVATE SECTION.
ENDCLASS.                    "lcl_event_handler DEFINITION


*----------------------------------------------------------------------*
*       CLASS lcl_event_handler IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS lcl_event_handler IMPLEMENTATION .


*--Handle Double Click
  METHOD handle_double_click .
    PERFORM handle_double_click USING e_row e_column es_row_no .
  ENDMETHOD .                    "handle_double_click

ENDCLASS .                    "lcl_event_handler IMPLEMENTATION

TABLES : mseg.

DATA : BEGIN OF itab OCCURS 0,
        mblnr LIKE mseg-mblnr,
        matnr LIKE mseg-matnr,
        menge LIKE mseg-menge,
       END OF itab.

DATA : gr_alvgrid TYPE REF TO cl_gui_alv_grid,
       gr_ccontainer TYPE REF TO cl_gui_custom_container,
       gt_fcat TYPE lvc_t_fcat,
       gs_layo TYPE lvc_s_layo.


DATA gr_event_handler TYPE REF TO lcl_event_handler .

DATA : ok_code LIKE sy-ucomm.

DATA : t_mat LIKE mara-matnr.


DATA: variant TYPE disvariant.


SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_mblnr FOR mseg-mblnr.
SELECTION-SCREEN : END OF BLOCK blk1.


START-OF-SELECTION.

  SET SCREEN 100.


  CREATE OBJECT gr_event_handler .
  PERFORM get_data.

  PERFORM dis_data.


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  get_data
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM get_data.

  SELECT mblnr matnr menge FROM mseg INTO CORRESPONDING FIELDS OF TABLE itab
   WHERE mblnr IN s_mblnr.

  variant-report = sy-repid.
  variant-username = sy-uname.

ENDFORM.                    "get_data

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  dis_data
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM dis_data.

  IF gr_alvgrid IS INITIAL.

    CREATE OBJECT gr_ccontainer
      EXPORTING
        container_name              = 'CC_ALV'
      EXCEPTIONS
        cntl_error                  = 1
        cntl_system_error           = 2
        create_error                = 3
        lifetime_error              = 4
        lifetime_dynpro_dynpro_link = 5
        OTHERS                      = 6.
    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.

    CREATE OBJECT gr_alvgrid
      EXPORTING
        i_parent          = gr_ccontainer
      EXCEPTIONS
        error_cntl_create = 1
        error_cntl_init   = 2
        error_cntl_link   = 3
        error_dp_create   = 4
        OTHERS            = 5.
    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.

    PERFORM create_fcat CHANGING gt_fcat.

    PERFORM create_layout CHANGING gs_layo.

    CALL METHOD gr_alvgrid-&amp;gt;set_table_for_first_display
      EXPORTING
*        I_BUFFER_ACTIVE               =
*        I_BYPASSING_BUFFER            =
*        I_CONSISTENCY_CHECK           =
*        I_STRUCTURE_NAME              =
        is_variant                    = variant
        i_save                        = 'A'
*        I_DEFAULT                     = 'X'
        is_layout                     = gs_layo
*        IS_PRINT                      =
*        IT_SPECIAL_GROUPS             =
*        IT_TOOLBAR_EXCLUDING          =
*        IT_HYPERLINK                  =
*        IT_ALV_GRAPHICS               =
*        IT_EXCEPT_QINFO               =
*        IR_SALV_ADAPTER               =
      CHANGING
        it_outtab                     = itab[]
        it_fieldcatalog               = gt_fcat
*        IT_SORT                       =
*        IT_FILTER                     =
*      EXCEPTIONS
*        INVALID_PARAMETER_COMBINATION = 1
*        PROGRAM_ERROR                 = 2
*        TOO_MANY_LINES                = 3
*        others                        = 4
            .
    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.

    SET HANDLER gr_event_handler-&amp;gt;handle_double_click FOR gr_alvgrid .

  ENDIF.
ENDFORM.                    "dis_data
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  create_fcat
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      &amp;lt;--P_GT_FCAT  text
*----------------------------------------------------------------------*
FORM create_fcat  CHANGING pt_fcat TYPE lvc_t_fcat.

  DATA : ls_fcat TYPE lvc_s_fcat.

  ls_fcat-fieldname = 'MBLNR'.
  ls_fcat-coltext = 'Material Doc.'.
  APPEND ls_fcat TO pt_fcat.

  ls_fcat-fieldname = 'MATNR'.
  ls_fcat-coltext = 'Material'.
  APPEND ls_fcat TO pt_fcat.

  ls_fcat-fieldname = 'MENGE'.
  ls_fcat-coltext = 'Quantity'.
  APPEND ls_fcat TO pt_fcat.

ENDFORM.                    " create_fcat
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  create_layout
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      &amp;lt;--P_GS_LAYO  text
*----------------------------------------------------------------------*
FORM create_layout  CHANGING ps_layo TYPE lvc_s_layo.

  ps_layo-zebra = 'X'.
ENDFORM.                    " create_layout
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'ZALV_OOP'.
*  SET TITLEBAR 'xxx'.

ENDMODULE.                 " STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  USER_COMMAND_0100  INPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.

  ok_code = sy-ucomm.

  CASE ok_code.
    WHEN 'BACK' OR 'UP' OR 'CANC'.
      LEAVE PROGRAM.
  ENDCASE.

ENDMODULE.                 " USER_COMMAND_0100  INPUT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  handle_double_click
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      --&amp;gt;I_ROW      text
*      --&amp;gt;I_COLUMN   text
*      --&amp;gt;IS_ROW_NO  text
*----------------------------------------------------------------------*
FORM handle_double_click USING i_row TYPE lvc_s_row
                               i_column TYPE lvc_s_col
                               is_row_no TYPE lvc_s_roid.

  READ TABLE itab INDEX is_row_no-row_id .

  IF sy-subrc = 0 .
    IF i_column = 'MATNR'.
      t_mat = itab-matnr.
      SET PARAMETER ID 'MAT' FIELD t_mat.
      CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.
      SET PARAMETER ID 'MAT' FIELD space.

    ELSEIF i_column = 'MBLNR'.

      CALL TRANSACTION 'MIGO'.
    ENDIF .
  ENDIF.
ENDFORM .                    "handle_double_click
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if usefull...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 11:34:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-reports/m-p/3597489#M866331</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T11:34:59Z</dc:date>
    </item>
  </channel>
</rss>

