<?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 Re: Transaction in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146832#M452919</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;check out the folowing code...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZWK22671&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zwk22671 LINE-COUNT 40(3)&lt;/P&gt;&lt;P&gt;                 LINE-SIZE 200&lt;/P&gt;&lt;P&gt;                 NO STANDARD PAGE HEADING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------" /&gt;&lt;P&gt;*TABLES&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : mkpf  ,  "MATERIAL DOCUMENT&lt;/P&gt;&lt;P&gt;         mseg  ,  "DOCUMENT SEGMENT : MATERIAL&lt;/P&gt;&lt;P&gt;         t156t ,  "MOVEMENT TYPE TEXT&lt;/P&gt;&lt;P&gt;         makt.    "MATERIAL DESCRIPTIONS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;**DECLARATION OF STRUCTURE , INTERNAL TABLES , VARIABLES&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*STRUCTURE OF INTERNAL TABLES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF xtab,&lt;/P&gt;&lt;P&gt;       mblnr TYPE mkpf-mblnr ,   "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;       mjahr TYPE mkpf-mjahr ,   "YEAR&lt;/P&gt;&lt;P&gt;       budat TYPE mkpf-budat ,   "POST DATE&lt;/P&gt;&lt;P&gt;       blart TYPE mkpf-blart ,   "DOCUMENT TYPE&lt;/P&gt;&lt;P&gt;       END OF xtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF ytab,&lt;/P&gt;&lt;P&gt;       mblnr TYPE mseg-mblnr ,   "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;       mjahr TYPE mseg-mjahr ,   "YEAR&lt;/P&gt;&lt;P&gt;       zeile TYPE mseg-zeile ,   "ITEM NUMBER&lt;/P&gt;&lt;P&gt;       bwart TYPE mseg-bwart ,   "MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;       btext TYPE t156t-btext ,  "MOVEMENT DESCRIPTION&lt;/P&gt;&lt;P&gt;       matnr TYPE mseg-matnr ,   "MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;       maktx TYPE makt-maktx ,   "MATERIAL DESCRIPTION&lt;/P&gt;&lt;P&gt;       meins TYPE mseg-meins ,   "UNIT OF MEASURE&lt;/P&gt;&lt;P&gt;       menge TYPE mseg-menge ,   "QUANTITY&lt;/P&gt;&lt;P&gt;       dmbtr TYPE mseg-dmbtr ,   "AMOUNT&lt;/P&gt;&lt;P&gt;       END OF ytab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*INTERNAL TABLE DECLARATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_tab1 LIKE STANDARD TABLE OF xtab WITH HEADER LINE.  "INTERNAL TABLE 1 : CONTAINS MATERIAL DETAILS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_tab2 LIKE STANDARD TABLE OF ytab WITH HEADER LINE.  "INTERNAL TABLE 2 : CONTAINS ITEMWISE MATERIAL DETAILS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VARIABLES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : v_color TYPE sy-tabix ,    "FOR SETTING COLOR FORMATS DURING GENERATING REPORT&lt;/P&gt;&lt;P&gt;       v_field(20) ,              "FOR STORING THE CLICKED FIELD NAME&lt;/P&gt;&lt;P&gt;       v_value(20) ,              "FOR STORING THE CLICKED FIELD VALUE&lt;/P&gt;&lt;P&gt;       v_mblnr TYPE mkpf-mblnr ,  "FOR VALIDATING DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;       v_mjahr TYPE mkpf-mjahr ,  "FOR VALIDATING DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;       v_bwart TYPE mseg-bwart ,  "FOR VALIDATING MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;       v_matnr TYPE mseg-matnr .  "FOR VALIDATING MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;**SELECTION-SCREEN&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS   : s_mblnr FOR mkpf-mblnr ,                          "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;                   s_mjahr FOR mkpf-mjahr OBLIGATORY,                "DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;                   s_bwart FOR mseg-bwart NO INTERVALS NO-EXTENSION, "MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;                   s_matnr FOR mseg-matnr .                          "MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK blk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AT SELECTION-SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM validation.  "PERFORMS VALIDATION OF SELECTION-SCREEN FIELDS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;*TOP-OF-PAGE&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM header.    "CREATES HEADER FOR THE BASIC LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;*END-OF-PAGE&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-PAGE.        "CREATES FOOTER FOR THE BASIC AND SECONDARY LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM footer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;*----&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;P&gt;  PERFORM generation_basic.  "GENERATES REPORT FOR BASIC LIST WHICH CONTAINS DOCUMENT NO , DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;  "POST DATE , DOCUMENT TYPE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;*----&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;P&gt;  PERFORM report_basic.      "DISPLAY REPORT FOR BASIC LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;*AT LINE-SELECTION&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM generation_secondary.  "GENERATES REPORT FOR SECONDARY LIST BASED ON THE DOCUMENT NUMBER AND DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;  "WHICH CONTAINS DOCUMENT NO , YEAR , ITEM NO , MOVEMENT TYPE , MOVEMENT DESCRIPTION ,&lt;/P&gt;&lt;P&gt;  "MATERIAL NUMBER , MATERIAL DESC , UNIT OF MEASURE , QUANTITY AND AMOUNT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;*TOP-OF-PAGE DURING LINE-SELECTION&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE DURING LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM header_secondary.      "CREATES HEADER FOR THE SECONDARY LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------" /&gt;&lt;P&gt;*AT USER-COMMAND&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT USER-COMMAND.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM user_secondary.        "SUBROUTINE FOR HANDLING USER EVENTS&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;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  VALIDATION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM validation .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MATERIAL DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE mblnr&lt;/P&gt;&lt;P&gt;    INTO v_mblnr&lt;/P&gt;&lt;P&gt;    FROM mkpf&lt;/P&gt;&lt;P&gt;   WHERE mblnr IN s_mblnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MATERIAL DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE mjahr&lt;/P&gt;&lt;P&gt;    INTO v_mjahr&lt;/P&gt;&lt;P&gt;    FROM mkpf&lt;/P&gt;&lt;P&gt;   WHERE mjahr IN s_mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT MATERIAL DOCUMENT YEAR' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE bwart&lt;/P&gt;&lt;P&gt;    INTO v_bwart&lt;/P&gt;&lt;P&gt;    FROM mseg&lt;/P&gt;&lt;P&gt;   WHERE bwart IN s_bwart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT MOVEMENT TYPE' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE matnr&lt;/P&gt;&lt;P&gt;    INTO v_matnr&lt;/P&gt;&lt;P&gt;    FROM mseg&lt;/P&gt;&lt;P&gt;   WHERE matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT MATERIAL NUMBER' TYPE 'E'.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  HEADER&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM header .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/30 'MATERIAL DOCUMENTS' COLOR 1.    "TITLE OF BASIC LIST&lt;/P&gt;&lt;P&gt;  WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1.&lt;/P&gt;&lt;P&gt;  WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;          3 'DOCUMENT NUMBER' ,&lt;/P&gt;&lt;P&gt;         23 sy-vline ,&lt;/P&gt;&lt;P&gt;         25 'YEAR' ,&lt;/P&gt;&lt;P&gt;         45 sy-vline ,&lt;/P&gt;&lt;P&gt;         47 'POST DATE' ,&lt;/P&gt;&lt;P&gt;         67 sy-vline ,&lt;/P&gt;&lt;P&gt;         69 'DOCTYP' ,&lt;/P&gt;&lt;P&gt;         89 sy-vline .&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;  WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " HEADER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FOOTER&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM footer .&lt;/P&gt;&lt;P&gt;  IF sy-lsind EQ 0.              "CHECKS WHICH LIST IS IT BASIC LIST OR SECONDARY (AND NO. OF SECONDARY LIST)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF sy-lsind EQ 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FOOTER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GENERATION_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM generation_basic .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT mkpf~mblnr          "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;         mkpf~mjahr          "DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;         mkpf~budat          "POST DATE&lt;/P&gt;&lt;P&gt;         mkpf~blart          "DOCUMENT TYPE&lt;/P&gt;&lt;P&gt;    INTO TABLE i_tab1&lt;/P&gt;&lt;P&gt;    FROM mkpf INNER JOIN mseg ON mkpf&lt;SUB&gt;mjahr EQ mseg&lt;/SUB&gt;mjahr AND&lt;/P&gt;&lt;P&gt;                                 mkpf&lt;SUB&gt;mblnr EQ mseg&lt;/SUB&gt;mblnr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   WHERE mkpf~mblnr IN s_mblnr&lt;/P&gt;&lt;P&gt;     AND mkpf~mjahr IN s_mjahr&lt;/P&gt;&lt;P&gt;     AND mseg~bwart IN s_bwart&lt;/P&gt;&lt;P&gt;     AND mseg~matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'MATERIAL DATA NOT FOUND'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM i_tab1 COMPARING mblnr mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GENERATION_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  REPORT_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM report_basic .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT i_tab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    v_color = sy-tabix MOD 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF v_color EQ 0.&lt;/P&gt;&lt;P&gt;      FORMAT COLOR 1 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      FORMAT COLOR 2 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;            3 i_tab1-mblnr ,&lt;/P&gt;&lt;P&gt;           23 sy-vline ,&lt;/P&gt;&lt;P&gt;           25 i_tab1-mjahr ,&lt;/P&gt;&lt;P&gt;           45 sy-vline ,&lt;/P&gt;&lt;P&gt;           47 i_tab1-budat ,&lt;/P&gt;&lt;P&gt;           67 sy-vline ,&lt;/P&gt;&lt;P&gt;           69 i_tab1-blart ,&lt;/P&gt;&lt;P&gt;           89 sy-vline .&lt;/P&gt;&lt;P&gt;    HIDE : i_tab1-mblnr , i_tab1-mjahr.  "STORING THE VALUE OF FIELDS CLICKED IN SYSTEM AREA&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;  WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " REPORT_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GENERATION_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM generation_secondary .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-lsind EQ 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SET PF-STATUS 'DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    GET CURSOR FIELD v_field VALUE v_value.    "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE v_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'I_TAB1-MBLNR'.                     "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT mseg~mblnr      "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;               mseg~mjahr      "DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;               mseg~zeile      "ITEM NUMBER&lt;/P&gt;&lt;P&gt;               mseg~bwart      "MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;               t156t~btext     "MOVEMENT DESCRIPTION&lt;/P&gt;&lt;P&gt;               mseg~matnr      "MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;               makt~maktx      "MATERIAL DESCRIPTION&lt;/P&gt;&lt;P&gt;               mseg~meins      "UNIT OF MEASURE&lt;/P&gt;&lt;P&gt;               mseg~menge      "QUANTITY&lt;/P&gt;&lt;P&gt;               mseg~dmbtr      "AMOUNT&lt;/P&gt;&lt;P&gt;          INTO TABLE i_tab2&lt;/P&gt;&lt;P&gt;          FROM ( ( mseg INNER JOIN t156t&lt;/P&gt;&lt;P&gt;            ON mseg&lt;SUB&gt;bwart EQ t156t&lt;/SUB&gt;bwart )&lt;/P&gt;&lt;P&gt;         INNER JOIN makt&lt;/P&gt;&lt;P&gt;            ON mseg&lt;SUB&gt;matnr  EQ makt&lt;/SUB&gt;matnr )&lt;/P&gt;&lt;P&gt;         WHERE mseg~mblnr  EQ i_tab1-mblnr&lt;/P&gt;&lt;P&gt;           AND mseg~mjahr  EQ i_tab1-mjahr&lt;/P&gt;&lt;P&gt;           AND t156t~spras EQ sy-langu&lt;/P&gt;&lt;P&gt;           AND makt~spras  EQ sy-langu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DELETE ADJACENT DUPLICATES FROM i_tab2 COMPARING mblnr mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_tab2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      v_color = sy-tabix MOD 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF v_color EQ 0.&lt;/P&gt;&lt;P&gt;        FORMAT COLOR 1 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        FORMAT COLOR 2 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;              3 i_tab2-mblnr ,&lt;/P&gt;&lt;P&gt;             12 sy-vline ,&lt;/P&gt;&lt;P&gt;             14 i_tab2-mjahr ,&lt;/P&gt;&lt;P&gt;             19 sy-vline   ,&lt;/P&gt;&lt;P&gt;             21 i_tab2-zeile ,&lt;/P&gt;&lt;P&gt;             30 sy-vline ,&lt;/P&gt;&lt;P&gt;             32 i_tab2-bwart ,&lt;/P&gt;&lt;P&gt;             40 sy-vline ,&lt;/P&gt;&lt;P&gt;             42 i_tab2-btext ,&lt;/P&gt;&lt;P&gt;             72 sy-vline ,&lt;/P&gt;&lt;P&gt;             74 i_tab2-matnr ,&lt;/P&gt;&lt;P&gt;             94 sy-vline ,&lt;/P&gt;&lt;P&gt;             96 i_tab2-maktx ,&lt;/P&gt;&lt;P&gt;             146 sy-vline ,&lt;/P&gt;&lt;P&gt;             148 i_tab2-meins ,&lt;/P&gt;&lt;P&gt;             153 sy-vline ,&lt;/P&gt;&lt;P&gt;             155 i_tab2-menge ,&lt;/P&gt;&lt;P&gt;             170 sy-vline ,&lt;/P&gt;&lt;P&gt;             172 i_tab2-dmbtr ,&lt;/P&gt;&lt;P&gt;             192 sy-vline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT RESET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF sy-lsind EQ 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    GET CURSOR FIELD v_field VALUE v_value.    "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE v_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'I_TAB2-MBLNR'.                     "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;        SET PARAMETER ID :                     "SETTING PARAMETER ID FOR DOCUMENT NUMBER AND YEAR.&lt;/P&gt;&lt;P&gt;        'MBN' FIELD i_tab2-mblnr ,&lt;/P&gt;&lt;P&gt;        'MJA' FIELD i_tab2-mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'MB03' AND SKIP FIRST&amp;lt;/b&amp;gt; SCREEN.  "CALLING TRABSACTION CODE 'MBO3'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;        MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;ENDFORM.                    " GENERATION_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  HEADER_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM header_secondary .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/50 'ITEMWISE MATERIAL DOCUMENTS' COLOR 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;          3 'DOCUMENT NO' ,&lt;/P&gt;&lt;P&gt;         12 sy-vline ,&lt;/P&gt;&lt;P&gt;         14 'YEAR' ,&lt;/P&gt;&lt;P&gt;         19 sy-vline   ,&lt;/P&gt;&lt;P&gt;         21 'ITEM NO.' ,&lt;/P&gt;&lt;P&gt;         30 sy-vline ,&lt;/P&gt;&lt;P&gt;         32 'MOV TYP' ,&lt;/P&gt;&lt;P&gt;         40 sy-vline ,&lt;/P&gt;&lt;P&gt;         42 'MOV DESCRIPTION' ,&lt;/P&gt;&lt;P&gt;         72 sy-vline ,&lt;/P&gt;&lt;P&gt;         74 'MATERIAL NO' ,&lt;/P&gt;&lt;P&gt;         94 sy-vline ,&lt;/P&gt;&lt;P&gt;         96 'MATERIAL DESCRIPTION' ,&lt;/P&gt;&lt;P&gt;         146 sy-vline ,&lt;/P&gt;&lt;P&gt;         148 'UOM' ,&lt;/P&gt;&lt;P&gt;         153 sy-vline ,&lt;/P&gt;&lt;P&gt;         155 'QUANTITY' ,&lt;/P&gt;&lt;P&gt;         170 sy-vline ,&lt;/P&gt;&lt;P&gt;         172 'AMOUNT' ,&lt;/P&gt;&lt;P&gt;         192 sy-vline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " HEADER_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  USER_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM user_secondary .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-ucomm EQ 'DISPLAY'.                      "EXECUTES ONLY IF 'DISPLAY DOCUMENTS' ITEM IS CLICKED ON APPLICATION TOOL BAR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-lsind EQ 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      GET CURSOR FIELD v_field VALUE v_value.    "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE v_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'I_TAB2-MBLNR'.                     "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED&lt;/P&gt;&lt;P&gt;          SET PARAMETER ID :&lt;/P&gt;&lt;P&gt;          'MBN' FIELD i_tab2-mblnr ,&lt;/P&gt;&lt;P&gt;          'MJA' FIELD i_tab2-mjahr.&lt;/P&gt;&lt;P&gt;          CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " USER_SECONDARY&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&amp;amp;      Module  USER_COMMAND_0100  INPUT&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*module USER_COMMAND_0100 input.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*if sy-ucomm eq 'SUBMIT'.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*submit zwk22671. " and return using selection-set 'MATERIAL VAR'.&lt;/P&gt;&lt;P&gt;*&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;*&lt;/P&gt;&lt;P&gt;*endmodule.                 " USER_COMMAND_0100  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Navneeth Bothra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 17 Apr 2007 06:47:30 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-04-17T06:47:30Z</dc:date>
    <item>
      <title>Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146827#M452914</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;I am creating a Vendor Detail list , If i double click the particular Vendor number i must get the XK03 screen that displays the particular vendor details , How to acheive this in Reporting ......I think interactive reporting must be used ? Can any one tell the step&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 06:39:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146827#M452914</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-17T06:39:51Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146828#M452915</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;kindly chk this link.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_ucomm.htm" target="test_blank"&gt;http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_ucomm.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds&lt;/P&gt;&lt;P&gt;Anversha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 06:41:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146828#M452915</guid>
      <dc:creator>anversha_s</dc:creator>
      <dc:date>2007-04-17T06:41:41Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146829#M452916</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;at line-selection.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'KUN' FIELD fs_customer-kunnr.&lt;/P&gt;&lt;P&gt;    CALL TRANSACTION 'XD03'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 06:43:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146829#M452916</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-17T06:43:01Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146830#M452917</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;See the sample code for calling an external Transaction.&lt;/P&gt;&lt;P&gt;First display the report with the data.&lt;/P&gt;&lt;P&gt;Hide that Vendor field(LIFNR) in the output loop.&lt;/P&gt;&lt;P&gt;In the At line-selection event write the like:&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  LINE_SEL&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;When double clicked on BELNR leave to transaction FB03&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form line_sel.&lt;/P&gt;&lt;P&gt;  data: lv_field(20),&lt;/P&gt;&lt;P&gt;        lv_value(10),&lt;/P&gt;&lt;P&gt;        lv_date(10),&lt;/P&gt;&lt;P&gt;        lv_gjahr like bsad-gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  get cursor field lv_field value lv_value.&lt;/P&gt;&lt;P&gt;  if lv_field = 'IT_REPORT-BELNR'.&lt;/P&gt;&lt;P&gt;    if not lv_value is initial.&lt;/P&gt;&lt;P&gt;      read current line field value it_report-budat into lv_date.&lt;/P&gt;&lt;P&gt;      lv_gjahr = lv_date+6(4).&lt;/P&gt;&lt;P&gt;      set parameter id 'BUK' field p_bukrs.&lt;/P&gt;&lt;P&gt;      set parameter id 'GJR' field lv_gjahr.&lt;/P&gt;&lt;P&gt;      set parameter id 'BLN' field lv_value.&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;  endif.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if useful&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;Anji&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 06:43:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146830#M452917</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-17T06:43:12Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146831#M452918</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;You need to use the GET CURSOR statment for this one.&lt;/P&gt;&lt;P&gt;In the AT LINE SELECTION event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;GET CURSOR FIELD FID OFFSET OFF      " FID will have the field name&lt;/P&gt;&lt;P&gt;             LINE LIN VALUE VAL LENGTH LEN.   " VAL will have he value of that field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SET PARAMETER ID &amp;lt;pid&amp;gt; FIELD &amp;lt;f&amp;gt;.   " You need to find the Parameter ID for the field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'XK03' AND SKIP FIRST SCREEN.&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; Sudheer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 06:46:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146831#M452918</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-17T06:46:08Z</dc:date>
    </item>
    <item>
      <title>Re: Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146832#M452919</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;check out the folowing code...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZWK22671&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;*&amp;amp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zwk22671 LINE-COUNT 40(3)&lt;/P&gt;&lt;P&gt;                 LINE-SIZE 200&lt;/P&gt;&lt;P&gt;                 NO STANDARD PAGE HEADING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------" /&gt;&lt;P&gt;*TABLES&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : mkpf  ,  "MATERIAL DOCUMENT&lt;/P&gt;&lt;P&gt;         mseg  ,  "DOCUMENT SEGMENT : MATERIAL&lt;/P&gt;&lt;P&gt;         t156t ,  "MOVEMENT TYPE TEXT&lt;/P&gt;&lt;P&gt;         makt.    "MATERIAL DESCRIPTIONS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;**DECLARATION OF STRUCTURE , INTERNAL TABLES , VARIABLES&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*STRUCTURE OF INTERNAL TABLES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF xtab,&lt;/P&gt;&lt;P&gt;       mblnr TYPE mkpf-mblnr ,   "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;       mjahr TYPE mkpf-mjahr ,   "YEAR&lt;/P&gt;&lt;P&gt;       budat TYPE mkpf-budat ,   "POST DATE&lt;/P&gt;&lt;P&gt;       blart TYPE mkpf-blart ,   "DOCUMENT TYPE&lt;/P&gt;&lt;P&gt;       END OF xtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF ytab,&lt;/P&gt;&lt;P&gt;       mblnr TYPE mseg-mblnr ,   "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;       mjahr TYPE mseg-mjahr ,   "YEAR&lt;/P&gt;&lt;P&gt;       zeile TYPE mseg-zeile ,   "ITEM NUMBER&lt;/P&gt;&lt;P&gt;       bwart TYPE mseg-bwart ,   "MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;       btext TYPE t156t-btext ,  "MOVEMENT DESCRIPTION&lt;/P&gt;&lt;P&gt;       matnr TYPE mseg-matnr ,   "MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;       maktx TYPE makt-maktx ,   "MATERIAL DESCRIPTION&lt;/P&gt;&lt;P&gt;       meins TYPE mseg-meins ,   "UNIT OF MEASURE&lt;/P&gt;&lt;P&gt;       menge TYPE mseg-menge ,   "QUANTITY&lt;/P&gt;&lt;P&gt;       dmbtr TYPE mseg-dmbtr ,   "AMOUNT&lt;/P&gt;&lt;P&gt;       END OF ytab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*INTERNAL TABLE DECLARATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_tab1 LIKE STANDARD TABLE OF xtab WITH HEADER LINE.  "INTERNAL TABLE 1 : CONTAINS MATERIAL DETAILS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_tab2 LIKE STANDARD TABLE OF ytab WITH HEADER LINE.  "INTERNAL TABLE 2 : CONTAINS ITEMWISE MATERIAL DETAILS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VARIABLES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : v_color TYPE sy-tabix ,    "FOR SETTING COLOR FORMATS DURING GENERATING REPORT&lt;/P&gt;&lt;P&gt;       v_field(20) ,              "FOR STORING THE CLICKED FIELD NAME&lt;/P&gt;&lt;P&gt;       v_value(20) ,              "FOR STORING THE CLICKED FIELD VALUE&lt;/P&gt;&lt;P&gt;       v_mblnr TYPE mkpf-mblnr ,  "FOR VALIDATING DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;       v_mjahr TYPE mkpf-mjahr ,  "FOR VALIDATING DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;       v_bwart TYPE mseg-bwart ,  "FOR VALIDATING MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;       v_matnr TYPE mseg-matnr .  "FOR VALIDATING MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;**SELECTION-SCREEN&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS   : s_mblnr FOR mkpf-mblnr ,                          "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;                   s_mjahr FOR mkpf-mjahr OBLIGATORY,                "DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;                   s_bwart FOR mseg-bwart NO INTERVALS NO-EXTENSION, "MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;                   s_matnr FOR mseg-matnr .                          "MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK blk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AT SELECTION-SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM validation.  "PERFORMS VALIDATION OF SELECTION-SCREEN FIELDS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;*TOP-OF-PAGE&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM header.    "CREATES HEADER FOR THE BASIC LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;*END-OF-PAGE&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-PAGE.        "CREATES FOOTER FOR THE BASIC AND SECONDARY LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM footer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;*----&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;P&gt;  PERFORM generation_basic.  "GENERATES REPORT FOR BASIC LIST WHICH CONTAINS DOCUMENT NO , DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;  "POST DATE , DOCUMENT TYPE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;*----&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;P&gt;  PERFORM report_basic.      "DISPLAY REPORT FOR BASIC LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;*AT LINE-SELECTION&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM generation_secondary.  "GENERATES REPORT FOR SECONDARY LIST BASED ON THE DOCUMENT NUMBER AND DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;  "WHICH CONTAINS DOCUMENT NO , YEAR , ITEM NO , MOVEMENT TYPE , MOVEMENT DESCRIPTION ,&lt;/P&gt;&lt;P&gt;  "MATERIAL NUMBER , MATERIAL DESC , UNIT OF MEASURE , QUANTITY AND AMOUNT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;*TOP-OF-PAGE DURING LINE-SELECTION&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE DURING LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM header_secondary.      "CREATES HEADER FOR THE SECONDARY LIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------" /&gt;&lt;P&gt;*AT USER-COMMAND&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT USER-COMMAND.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM user_secondary.        "SUBROUTINE FOR HANDLING USER EVENTS&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;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  VALIDATION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM validation .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MATERIAL DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE mblnr&lt;/P&gt;&lt;P&gt;    INTO v_mblnr&lt;/P&gt;&lt;P&gt;    FROM mkpf&lt;/P&gt;&lt;P&gt;   WHERE mblnr IN s_mblnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MATERIAL DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE mjahr&lt;/P&gt;&lt;P&gt;    INTO v_mjahr&lt;/P&gt;&lt;P&gt;    FROM mkpf&lt;/P&gt;&lt;P&gt;   WHERE mjahr IN s_mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT MATERIAL DOCUMENT YEAR' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE bwart&lt;/P&gt;&lt;P&gt;    INTO v_bwart&lt;/P&gt;&lt;P&gt;    FROM mseg&lt;/P&gt;&lt;P&gt;   WHERE bwart IN s_bwart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT MOVEMENT TYPE' TYPE 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*VALIDATING MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE matnr&lt;/P&gt;&lt;P&gt;    INTO v_matnr&lt;/P&gt;&lt;P&gt;    FROM mseg&lt;/P&gt;&lt;P&gt;   WHERE matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE 'ENTER CORRECT MATERIAL NUMBER' TYPE 'E'.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  HEADER&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM header .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/30 'MATERIAL DOCUMENTS' COLOR 1.    "TITLE OF BASIC LIST&lt;/P&gt;&lt;P&gt;  WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1.&lt;/P&gt;&lt;P&gt;  WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;          3 'DOCUMENT NUMBER' ,&lt;/P&gt;&lt;P&gt;         23 sy-vline ,&lt;/P&gt;&lt;P&gt;         25 'YEAR' ,&lt;/P&gt;&lt;P&gt;         45 sy-vline ,&lt;/P&gt;&lt;P&gt;         47 'POST DATE' ,&lt;/P&gt;&lt;P&gt;         67 sy-vline ,&lt;/P&gt;&lt;P&gt;         69 'DOCTYP' ,&lt;/P&gt;&lt;P&gt;         89 sy-vline .&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;  WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " HEADER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FOOTER&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM footer .&lt;/P&gt;&lt;P&gt;  IF sy-lsind EQ 0.              "CHECKS WHICH LIST IS IT BASIC LIST OR SECONDARY (AND NO. OF SECONDARY LIST)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF sy-lsind EQ 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FOOTER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GENERATION_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM generation_basic .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT mkpf~mblnr          "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;         mkpf~mjahr          "DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;         mkpf~budat          "POST DATE&lt;/P&gt;&lt;P&gt;         mkpf~blart          "DOCUMENT TYPE&lt;/P&gt;&lt;P&gt;    INTO TABLE i_tab1&lt;/P&gt;&lt;P&gt;    FROM mkpf INNER JOIN mseg ON mkpf&lt;SUB&gt;mjahr EQ mseg&lt;/SUB&gt;mjahr AND&lt;/P&gt;&lt;P&gt;                                 mkpf&lt;SUB&gt;mblnr EQ mseg&lt;/SUB&gt;mblnr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   WHERE mkpf~mblnr IN s_mblnr&lt;/P&gt;&lt;P&gt;     AND mkpf~mjahr IN s_mjahr&lt;/P&gt;&lt;P&gt;     AND mseg~bwart IN s_bwart&lt;/P&gt;&lt;P&gt;     AND mseg~matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'MATERIAL DATA NOT FOUND'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM i_tab1 COMPARING mblnr mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GENERATION_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  REPORT_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM report_basic .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT i_tab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    v_color = sy-tabix MOD 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF v_color EQ 0.&lt;/P&gt;&lt;P&gt;      FORMAT COLOR 1 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      FORMAT COLOR 2 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;            3 i_tab1-mblnr ,&lt;/P&gt;&lt;P&gt;           23 sy-vline ,&lt;/P&gt;&lt;P&gt;           25 i_tab1-mjahr ,&lt;/P&gt;&lt;P&gt;           45 sy-vline ,&lt;/P&gt;&lt;P&gt;           47 i_tab1-budat ,&lt;/P&gt;&lt;P&gt;           67 sy-vline ,&lt;/P&gt;&lt;P&gt;           69 i_tab1-blart ,&lt;/P&gt;&lt;P&gt;           89 sy-vline .&lt;/P&gt;&lt;P&gt;    HIDE : i_tab1-mblnr , i_tab1-mjahr.  "STORING THE VALUE OF FIELDS CLICKED IN SYSTEM AREA&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;  WRITE :/1(89) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " REPORT_BASIC&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GENERATION_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM generation_secondary .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-lsind EQ 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SET PF-STATUS 'DISPLAY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    GET CURSOR FIELD v_field VALUE v_value.    "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE v_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'I_TAB1-MBLNR'.                     "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT mseg~mblnr      "DOCUMENT NUMBER&lt;/P&gt;&lt;P&gt;               mseg~mjahr      "DOCUMENT YEAR&lt;/P&gt;&lt;P&gt;               mseg~zeile      "ITEM NUMBER&lt;/P&gt;&lt;P&gt;               mseg~bwart      "MOVEMENT TYPE&lt;/P&gt;&lt;P&gt;               t156t~btext     "MOVEMENT DESCRIPTION&lt;/P&gt;&lt;P&gt;               mseg~matnr      "MATERIAL NUMBER&lt;/P&gt;&lt;P&gt;               makt~maktx      "MATERIAL DESCRIPTION&lt;/P&gt;&lt;P&gt;               mseg~meins      "UNIT OF MEASURE&lt;/P&gt;&lt;P&gt;               mseg~menge      "QUANTITY&lt;/P&gt;&lt;P&gt;               mseg~dmbtr      "AMOUNT&lt;/P&gt;&lt;P&gt;          INTO TABLE i_tab2&lt;/P&gt;&lt;P&gt;          FROM ( ( mseg INNER JOIN t156t&lt;/P&gt;&lt;P&gt;            ON mseg&lt;SUB&gt;bwart EQ t156t&lt;/SUB&gt;bwart )&lt;/P&gt;&lt;P&gt;         INNER JOIN makt&lt;/P&gt;&lt;P&gt;            ON mseg&lt;SUB&gt;matnr  EQ makt&lt;/SUB&gt;matnr )&lt;/P&gt;&lt;P&gt;         WHERE mseg~mblnr  EQ i_tab1-mblnr&lt;/P&gt;&lt;P&gt;           AND mseg~mjahr  EQ i_tab1-mjahr&lt;/P&gt;&lt;P&gt;           AND t156t~spras EQ sy-langu&lt;/P&gt;&lt;P&gt;           AND makt~spras  EQ sy-langu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DELETE ADJACENT DUPLICATES FROM i_tab2 COMPARING mblnr mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_tab2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      v_color = sy-tabix MOD 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF v_color EQ 0.&lt;/P&gt;&lt;P&gt;        FORMAT COLOR 1 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        FORMAT COLOR 2 INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;              3 i_tab2-mblnr ,&lt;/P&gt;&lt;P&gt;             12 sy-vline ,&lt;/P&gt;&lt;P&gt;             14 i_tab2-mjahr ,&lt;/P&gt;&lt;P&gt;             19 sy-vline   ,&lt;/P&gt;&lt;P&gt;             21 i_tab2-zeile ,&lt;/P&gt;&lt;P&gt;             30 sy-vline ,&lt;/P&gt;&lt;P&gt;             32 i_tab2-bwart ,&lt;/P&gt;&lt;P&gt;             40 sy-vline ,&lt;/P&gt;&lt;P&gt;             42 i_tab2-btext ,&lt;/P&gt;&lt;P&gt;             72 sy-vline ,&lt;/P&gt;&lt;P&gt;             74 i_tab2-matnr ,&lt;/P&gt;&lt;P&gt;             94 sy-vline ,&lt;/P&gt;&lt;P&gt;             96 i_tab2-maktx ,&lt;/P&gt;&lt;P&gt;             146 sy-vline ,&lt;/P&gt;&lt;P&gt;             148 i_tab2-meins ,&lt;/P&gt;&lt;P&gt;             153 sy-vline ,&lt;/P&gt;&lt;P&gt;             155 i_tab2-menge ,&lt;/P&gt;&lt;P&gt;             170 sy-vline ,&lt;/P&gt;&lt;P&gt;             172 i_tab2-dmbtr ,&lt;/P&gt;&lt;P&gt;             192 sy-vline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT RESET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF sy-lsind EQ 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    GET CURSOR FIELD v_field VALUE v_value.    "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE v_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'I_TAB2-MBLNR'.                     "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;        SET PARAMETER ID :                     "SETTING PARAMETER ID FOR DOCUMENT NUMBER AND YEAR.&lt;/P&gt;&lt;P&gt;        'MBN' FIELD i_tab2-mblnr ,&lt;/P&gt;&lt;P&gt;        'MJA' FIELD i_tab2-mjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'MB03' AND SKIP FIRST&amp;lt;/b&amp;gt; SCREEN.  "CALLING TRABSACTION CODE 'MBO3'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;        MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;ENDFORM.                    " GENERATION_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  HEADER_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM header_secondary .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/50 'ITEMWISE MATERIAL DOCUMENTS' COLOR 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT COLOR 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/1 sy-vline ,&lt;/P&gt;&lt;P&gt;          3 'DOCUMENT NO' ,&lt;/P&gt;&lt;P&gt;         12 sy-vline ,&lt;/P&gt;&lt;P&gt;         14 'YEAR' ,&lt;/P&gt;&lt;P&gt;         19 sy-vline   ,&lt;/P&gt;&lt;P&gt;         21 'ITEM NO.' ,&lt;/P&gt;&lt;P&gt;         30 sy-vline ,&lt;/P&gt;&lt;P&gt;         32 'MOV TYP' ,&lt;/P&gt;&lt;P&gt;         40 sy-vline ,&lt;/P&gt;&lt;P&gt;         42 'MOV DESCRIPTION' ,&lt;/P&gt;&lt;P&gt;         72 sy-vline ,&lt;/P&gt;&lt;P&gt;         74 'MATERIAL NO' ,&lt;/P&gt;&lt;P&gt;         94 sy-vline ,&lt;/P&gt;&lt;P&gt;         96 'MATERIAL DESCRIPTION' ,&lt;/P&gt;&lt;P&gt;         146 sy-vline ,&lt;/P&gt;&lt;P&gt;         148 'UOM' ,&lt;/P&gt;&lt;P&gt;         153 sy-vline ,&lt;/P&gt;&lt;P&gt;         155 'QUANTITY' ,&lt;/P&gt;&lt;P&gt;         170 sy-vline ,&lt;/P&gt;&lt;P&gt;         172 'AMOUNT' ,&lt;/P&gt;&lt;P&gt;         192 sy-vline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE :/1(192) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT RESET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " HEADER_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  USER_SECONDARY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM user_secondary .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-ucomm EQ 'DISPLAY'.                      "EXECUTES ONLY IF 'DISPLAY DOCUMENTS' ITEM IS CLICKED ON APPLICATION TOOL BAR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-lsind EQ 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      GET CURSOR FIELD v_field VALUE v_value.    "GET THE FIELD VALUE AND NAME WHERE THE CURSOR WAS CLICKED&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE v_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN 'I_TAB2-MBLNR'.                     "DISPLAYS SECONDARY LIST ONLY IF DOCUMENT NUMBER IS CLICKED&lt;/P&gt;&lt;P&gt;          SET PARAMETER ID :&lt;/P&gt;&lt;P&gt;          'MBN' FIELD i_tab2-mblnr ,&lt;/P&gt;&lt;P&gt;          'MJA' FIELD i_tab2-mjahr.&lt;/P&gt;&lt;P&gt;          CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;          MESSAGE 'SELECT DOCUMENT NUMBER' TYPE 'E'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " USER_SECONDARY&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&amp;amp;      Module  USER_COMMAND_0100  INPUT&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*module USER_COMMAND_0100 input.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*if sy-ucomm eq 'SUBMIT'.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*submit zwk22671. " and return using selection-set 'MATERIAL VAR'.&lt;/P&gt;&lt;P&gt;*&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;*&lt;/P&gt;&lt;P&gt;*endmodule.                 " USER_COMMAND_0100  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Navneeth Bothra&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Apr 2007 06:47:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/transaction/m-p/2146832#M452919</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-17T06:47:30Z</dc:date>
    </item>
  </channel>
</rss>

