<?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: Error while running FM 'CS_BOM_EXPL_MAT_V2' in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579272#M589699</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;First check Like CS01,CS02,CS03,CS11,CS12,CS13 Transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess you don't have authrization to see Bill of materials.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 07 Aug 2007 17:28:17 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-08-07T17:28:17Z</dc:date>
    <item>
      <title>Error while running FM 'CS_BOM_EXPL_MAT_V2'</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579271#M589698</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;While executing the FM 'CS_BOM_EXPL_MAT_V2' the FM is given me an exception 'MISSING authorization. the sy-subrc eq 4. What cud b the reason?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Aug 2007 17:17:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579271#M589698</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-07T17:17:36Z</dc:date>
    </item>
    <item>
      <title>Re: Error while running FM 'CS_BOM_EXPL_MAT_V2'</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579272#M589699</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;First check Like CS01,CS02,CS03,CS11,CS12,CS13 Transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess you don't have authrization to see Bill of materials.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Aug 2007 17:28:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579272#M589699</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-07T17:28:17Z</dc:date>
    </item>
    <item>
      <title>Re: Error while running FM 'CS_BOM_EXPL_MAT_V2'</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579273#M589700</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is it anythin wrng with the parametsr i hav given for the FM??&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;   aumng                       = 0&lt;/P&gt;&lt;P&gt;     capid                       = c_pc01&lt;/P&gt;&lt;P&gt;   cuobj                       = 000000000000000&lt;/P&gt;&lt;P&gt;   cuovs                       = 0&lt;/P&gt;&lt;P&gt;     datuv                       = p_valid&lt;/P&gt;&lt;P&gt;   emeng                       = '1'&lt;/P&gt;&lt;P&gt;     mktls                       = 'X'&lt;/P&gt;&lt;P&gt;     mehrs                       = 'X'&lt;/P&gt;&lt;P&gt;     mtnrv                       = s_matnr-low&lt;/P&gt;&lt;P&gt;     stpst                       = 0&lt;/P&gt;&lt;P&gt;     svwvo                       = 'X'&lt;/P&gt;&lt;P&gt;     werks                       = p_werks&lt;/P&gt;&lt;P&gt;     vrsvo                       = 'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TOPMAT                      = wa_cscmat&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DSTST                       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      stb                         = t_stpo&lt;/P&gt;&lt;P&gt;   matcat                         = t_cscmat&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     alt_not_found               = 1&lt;/P&gt;&lt;P&gt;     call_invalid                = 2&lt;/P&gt;&lt;P&gt;     material_not_found          = 3&lt;/P&gt;&lt;P&gt;     missing_authorization       = 4&lt;/P&gt;&lt;P&gt;     no_bom_found                = 5&lt;/P&gt;&lt;P&gt;     no_plant_data               = 6&lt;/P&gt;&lt;P&gt;     no_suitable_bom_found       = 7&lt;/P&gt;&lt;P&gt;     conversion_error            = 8&lt;/P&gt;&lt;P&gt;     OTHERS                      = 9&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Aug 2007 18:18:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579273#M589700</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-07T18:18:23Z</dc:date>
    </item>
    <item>
      <title>Re: Error while running FM 'CS_BOM_EXPL_MAT_V2'</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579274#M589701</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the below FM and I used like this :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              capid                 = 'PP01'&lt;/P&gt;&lt;P&gt;              datuv                 = sy-datum&lt;/P&gt;&lt;P&gt;              mktls                 = 'X'&lt;/P&gt;&lt;P&gt;              mehrs                 = 'X'&lt;/P&gt;&lt;P&gt;              mtnrv                 = t_mast-matnr&lt;/P&gt;&lt;P&gt;              stlal                 = '01'&lt;/P&gt;&lt;P&gt;              stlan                 = '1'&lt;/P&gt;&lt;P&gt;              stpst                 = 0&lt;/P&gt;&lt;P&gt;              svwvo                 = 'X'&lt;/P&gt;&lt;P&gt;              werks                 = p_werks&lt;/P&gt;&lt;P&gt;              vrsvo                 = 'X'&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              stb                   = t_stb&lt;/P&gt;&lt;P&gt;              matcat                = t_matcat&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              alt_not_found         = 1&lt;/P&gt;&lt;P&gt;              call_invalid          = 2&lt;/P&gt;&lt;P&gt;              material_not_found    = 3&lt;/P&gt;&lt;P&gt;              missing_authorization = 4&lt;/P&gt;&lt;P&gt;              no_bom_found          = 5&lt;/P&gt;&lt;P&gt;              no_plant_data         = 6&lt;/P&gt;&lt;P&gt;              no_suitable_bom_found = 7&lt;/P&gt;&lt;P&gt;              conversion_error      = 8&lt;/P&gt;&lt;P&gt;              OTHERS                = 9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For more information check the below program :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: mast,&lt;/P&gt;&lt;P&gt;        stko,&lt;/P&gt;&lt;P&gt;        stpo,&lt;/P&gt;&lt;P&gt;        T418,&lt;/P&gt;&lt;P&gt;        makt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TYPE - POOLS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPE-POOLS: slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;constants : c_tcode(4) type c value 'CS03',&lt;/P&gt;&lt;P&gt;            gc_formname_top_of_page TYPE slis_formname&lt;/P&gt;&lt;P&gt;            VALUE 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : v_maktx like makt-maktx,&lt;/P&gt;&lt;P&gt;       wa_stko like stko.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Objekttyp 'Material'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   otyp_mat(1) TYPE c VALUE '1',&lt;/P&gt;&lt;P&gt;   ootyp_mat(1) TYPE c VALUE 'M',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Objekttyp 'kein Objekt'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   otyp_noo(1) TYPE c VALUE '2',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Objekttyp 'Dokument'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   otyp_doc(1) TYPE c VALUE '3',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Objekttyp 'Klasse'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   otyp_kla(1) TYPE c VALUE '4',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Objekttyp 'Intramaterial'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   otyp_ntm(1) TYPE c VALUE '5'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; maximal anzeigbare Menge&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data:   max_num(7)  TYPE p DECIMALS 3 VALUE '9999999999.999',&lt;/P&gt;&lt;P&gt;        ueberl_kz(1) TYPE c VALUE '*',&lt;/P&gt;&lt;P&gt;        min_num(7)  TYPE p DECIMALS 3 VALUE '9999999999.999-',&lt;/P&gt;&lt;P&gt;        b_flag(1) TYPE c VALUE 'X',&lt;/P&gt;&lt;P&gt;        ecfld(250) TYPE c,&lt;/P&gt;&lt;P&gt;        v_flag type c.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ALV Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: gt_fieldcat TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;      gs_layout   TYPE slis_layout_alv,&lt;/P&gt;&lt;P&gt;      gs_keyinfo  TYPE slis_keyinfo_alv,&lt;/P&gt;&lt;P&gt;      gt_sp_group TYPE slis_t_sp_group_alv,&lt;/P&gt;&lt;P&gt;      gt_events   TYPE slis_t_event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: g_repid LIKE sy-repid.&lt;/P&gt;&lt;P&gt;DATA: gt_list_top_of_page TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;            g_tabname_header TYPE slis_tabname,&lt;/P&gt;&lt;P&gt;            g_tabname_item   TYPE slis_tabname,&lt;/P&gt;&lt;P&gt;            g_save(1) TYPE c,&lt;/P&gt;&lt;P&gt;            gx_variant LIKE disvariant,&lt;/P&gt;&lt;P&gt;            g_variant LIKE disvariant,&lt;/P&gt;&lt;P&gt;            g_default(1) TYPE c,&lt;/P&gt;&lt;P&gt;            g_exit(1) TYPE c.&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;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Includes                                                             *&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;&lt;/P&gt;&lt;P&gt;INCLUDE .&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table Declaration                                           *&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;&lt;/P&gt;&lt;P&gt;DATA: t_mast LIKE STANDARD TABLE OF mast WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA: t_makt LIKE STANDARD TABLE OF makt WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BOM Function module Related&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: t_matcat  LIKE cscmat OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Level by Level Function module&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: t_stb  LIKE stpox OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Relevant data from FM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF hd_tab OCCURS 0,&lt;/P&gt;&lt;P&gt;         stufe LIKE stpox-stufe,&lt;/P&gt;&lt;P&gt;         vwegx LIKE stpox-vwegx,&lt;/P&gt;&lt;P&gt;      END OF hd_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Final Output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF alv_stb OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE stpox_alv.&lt;/P&gt;&lt;P&gt;DATA:   info(3)   TYPE c,&lt;/P&gt;&lt;P&gt;      END OF alv_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF stb_orig.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE stpox.&lt;/P&gt;&lt;P&gt;DATA: END OF stb_orig.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF stb_add.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE stpol_add.&lt;/P&gt;&lt;P&gt;DATA: END OF stb_add.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for STPO&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- BOM Line item&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_stpo,&lt;/P&gt;&lt;P&gt;       stlty TYPE stpo-stlty,&lt;/P&gt;&lt;P&gt;       stlnr TYPE stpo-stlnr,&lt;/P&gt;&lt;P&gt;       stlkn TYPE stpo-stlkn,&lt;/P&gt;&lt;P&gt;       stpoz TYPE stpo-stpoz,&lt;/P&gt;&lt;P&gt;       idnrk TYPE stpo-idnrk,&lt;/P&gt;&lt;P&gt;       meins TYPE stpo-meins,&lt;/P&gt;&lt;P&gt;       menge TYPE stpo-menge, "Component Qty&lt;/P&gt;&lt;P&gt;       END OF ty_stpo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: t_stpo TYPE STANDARD TABLE OF ty_stpo WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- BOM Header&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_stko,&lt;/P&gt;&lt;P&gt;       stlty TYPE stko-stlty,&lt;/P&gt;&lt;P&gt;       stlnr TYPE stko-stlnr,&lt;/P&gt;&lt;P&gt;       stlal TYPE stko-stlal,&lt;/P&gt;&lt;P&gt;       stkoz TYPE stko-stkoz,&lt;/P&gt;&lt;P&gt;       bmein TYPE stko-bmein,&lt;/P&gt;&lt;P&gt;       bmeng TYPE stko-bmeng,&lt;/P&gt;&lt;P&gt;       END OF ty_stko.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: t_stko TYPE STANDARD TABLE OF ty_stko WITH HEADER LINE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : t_makt like makt occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF cl_clstab OCCURS 0,                          "YHG079407&lt;/P&gt;&lt;P&gt;         class LIKE klah-class,                             "YHG079407&lt;/P&gt;&lt;P&gt;         klart LIKE klah-klart,                             "YHG079407&lt;/P&gt;&lt;P&gt;         chked LIKE csdata-xfeld,                           "YHG079407&lt;/P&gt;&lt;P&gt;         noobj LIKE csdata-xfeld,                           "YHG079407&lt;/P&gt;&lt;P&gt;         dsply LIKE csdata-xfeld,                           "YHG079407&lt;/P&gt;&lt;P&gt;      END OF cl_clstab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- Header table&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_main_material,&lt;/P&gt;&lt;P&gt;       matnr TYPE mast-matnr, "Material&lt;/P&gt;&lt;P&gt;       werks TYPE mast-werks, "Plant&lt;/P&gt;&lt;P&gt;       maktx TYPE makt-maktx, "Description&lt;/P&gt;&lt;P&gt;       stlal TYPE mast-stlal, "Alternative BOM&lt;/P&gt;&lt;P&gt;       stlnr TYPE stko-stlnr, "BOM Number&lt;/P&gt;&lt;P&gt;       bmein TYPE stko-bmein, "UOM&lt;/P&gt;&lt;P&gt;       bmeng TYPE stko-bmeng, "Base Qty&lt;/P&gt;&lt;P&gt;       expand(1) TYPE c,      "Expanding Field&lt;/P&gt;&lt;P&gt;       END OF ty_main_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: t_main_material TYPE STANDARD TABLE OF ty_main_material WITH&lt;/P&gt;&lt;P&gt;      HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- Item (Component) Table&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF ty_item_material,&lt;/P&gt;&lt;P&gt;       matnr TYPE mast-matnr, "Material&lt;/P&gt;&lt;P&gt;       werks TYPE mast-werks, "Plant&lt;/P&gt;&lt;P&gt;       idnrk TYPE stpo-idnrk, "Component (Material)&lt;/P&gt;&lt;P&gt;       maktx TYPE makt-maktx, "Description&lt;/P&gt;&lt;P&gt;       stlal TYPE mast-stlal, "Alternative BOM&lt;/P&gt;&lt;P&gt;       stlnr TYPE stpo-stlnr, "BOM Number&lt;/P&gt;&lt;P&gt;       meins TYPE stpo-meins, "UOM&lt;/P&gt;&lt;P&gt;       menge TYPE stpo-menge, "Base Qty&lt;/P&gt;&lt;P&gt;       END OF ty_item_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: t_item_material TYPE STANDARD TABLE OF ty_item_material WITH&lt;/P&gt;&lt;P&gt;      HEADER LINE.&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;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;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;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_werks LIKE marc-werks DEFAULT '1000' OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS s_stlal FOR mast-stlal .&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS s_stlan FOR mast-stlan DEFAULT '1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_bomlst RADIOBUTTON GROUP g1 DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS s_matnr FOR mast-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_compon RADIOBUTTON GROUP g1.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_idnrk FOR stpo-idnrk.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of block b03 with frame title text-b03.&lt;/P&gt;&lt;P&gt;selection-screen begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(40) text-005.&lt;/P&gt;&lt;P&gt;parameters: p_all radiobutton group r1 default 'X'.&lt;/P&gt;&lt;P&gt;selection-screen end of line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of line.&lt;/P&gt;&lt;P&gt;selection-screen comment 1(40) text-006.&lt;/P&gt;&lt;P&gt;parameters: p_one radiobutton group r1 .&lt;/P&gt;&lt;P&gt;selection-screen end of line.&lt;/P&gt;&lt;P&gt;selection-screen end of block b03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_vari LIKE disvariant-variant.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b3.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;At slection screen events                                            *&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;*-- Process on value request&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_vari.&lt;/P&gt;&lt;P&gt;  PERFORM f4_for_variant.&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;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Intitialisation&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;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  g_repid = sy-repid.&lt;/P&gt;&lt;P&gt;  g_tabname_header = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;P&gt;  g_tabname_item   = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;*-- define keyinformation&lt;/P&gt;&lt;P&gt;  CLEAR gs_keyinfo.&lt;/P&gt;&lt;P&gt;  gs_keyinfo-header01 = 'MATNR'.&lt;/P&gt;&lt;P&gt;  gs_keyinfo-item01   = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM e03_eventtab_build USING gt_events[].&lt;/P&gt;&lt;P&gt;  PERFORM e04_comment_build  USING gt_list_top_of_page[].&lt;/P&gt;&lt;P&gt;  PERFORM e07_sp_group_build USING gt_sp_group[].&lt;/P&gt;&lt;P&gt;  PERFORM e08_layout_build   USING gs_layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set Options: save variants userspecific or general&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  g_save = 'A'.&lt;/P&gt;&lt;P&gt;  PERFORM variant_init.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get default variant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  gx_variant = g_variant.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            i_save     = g_save&lt;/P&gt;&lt;P&gt;       CHANGING&lt;/P&gt;&lt;P&gt;            cs_variant = gx_variant&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            not_found  = 2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    p_vari = gx_variant-variant.&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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="16" type="ul"&gt;&lt;P&gt;S T A R T - O F - S E L E C T I O N *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if p_all = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the data from MAST and MAKT Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    if p_bomlst = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Get the data Based On Material #&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      perform get_data.&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Get the data Based On Component&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      perform get_data_component.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Single Level Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- Moved the fiedl catalog here inorder to change the layout based on&lt;/P&gt;&lt;P&gt;*-- Selection&lt;/P&gt;&lt;P&gt;    PERFORM e01_fieldcat_init  USING gt_fieldcat[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM select_data.&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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="12" type="ul"&gt;&lt;P&gt;E N D - O F - S  E  L  E  C  T  I  O  N *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&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;  if p_one = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;User Command&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;at line-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Interactive to CS03 Transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  case sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'PICK' or 'F2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if not alv_stb-idnrk is initial .&lt;/P&gt;&lt;P&gt;        if not alv_stb-werks is initial.&lt;/P&gt;&lt;P&gt;          if not alv_stb-objty is initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            SET PARAMETER ID 'MAT' FIELD alv_stb-idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            SET PARAMETER ID 'WRK' FIELD alv_stb-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            SET PARAMETER ID 'CSV' FIELD alv_stb-OBJTY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            call transaction c_tcode and skip first screen.&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;      clear alv_stb.&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;&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  get_data&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      Get data from MAST and MAKT Table&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;FORM get_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data : wa_lines type sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH : T_MAST,&lt;/P&gt;&lt;P&gt;            t_STB,&lt;/P&gt;&lt;P&gt;            t_MATCAT,&lt;/P&gt;&lt;P&gt;            alv_STB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR : T_MAST,&lt;/P&gt;&lt;P&gt;            t_STB,&lt;/P&gt;&lt;P&gt;            t_MATCAT,&lt;/P&gt;&lt;P&gt;            alv_STB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the data from MAST Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get all the information from MAST - BOM Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM mast INTO TABLE t_mast WHERE matnr IN s_matnr AND&lt;/P&gt;&lt;P&gt;                                             werks = p_werks  AND&lt;/P&gt;&lt;P&gt;                                             stlan IN s_stlan AND&lt;/P&gt;&lt;P&gt;                                             stlal IN s_stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  describe table t_mast lines  wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if wa_lines is initial.&lt;/P&gt;&lt;P&gt;    Write:/2 'List contains no data'.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at t_mast.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear : v_maktx.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Start of change  Seshu&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Reason - Remove the new page option&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    if sy-tabix ne 1.&lt;/P&gt;&lt;P&gt;      skip 1.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; End of Change  Seshu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the material Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select single maktx from makt into  v_maktx&lt;/P&gt;&lt;P&gt;                             where matnr = t_mast-matnr&lt;/P&gt;&lt;P&gt;                             and   spras = 'E'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the material details from STKO Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select single * from stko into wa_stko&lt;/P&gt;&lt;P&gt;                    where STLTY = 'M'&lt;/P&gt;&lt;P&gt;                    and   STLNR = t_mast-stlnr&lt;/P&gt;&lt;P&gt;                    and   STLAL = t_mast-stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Main Header for Each Material&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    format color 5 on.&lt;/P&gt;&lt;P&gt;    write:/2 'Material',20 'Material Description',65 'Alternative BOM',&lt;/P&gt;&lt;P&gt;         90 'Base Qty', 115 'Base Unit'.&lt;/P&gt;&lt;P&gt;    format color 5 off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    format color 1 on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    write:/2 t_mast-matnr,20 v_maktx,65 wa_stko-STLAL, 85 wa_stko-BMENG,&lt;/P&gt;&lt;P&gt;           115 wa_stko-BMEIN.&lt;/P&gt;&lt;P&gt;    format color 1 off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Use the Function Module and get the format level by level&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform get_level_level.&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Top of page                                                  *&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;top-of-page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform report_header .&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  report_header&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM report_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  new-page line-size 160 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  format color col_heading intensified on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  write:/ sy-uline(160) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Write Company Name.&lt;/P&gt;&lt;P&gt;  perform calc_col_and_write using    text-h00&lt;/P&gt;&lt;P&gt;                                      sy-linsz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Write Report Title.&lt;/P&gt;&lt;P&gt;  perform calc_col_and_write using    sy-title&lt;/P&gt;&lt;P&gt;                                      sy-linsz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Write User Id, Date / Time, Program Id, Page etc.&lt;/P&gt;&lt;P&gt;  perform write_other_hdr_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  write:/ sy-uline(160) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " report_header&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  calc_col_and_write&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;P_TEXT_H00  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_SY_LINSZ  text&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;FORM calc_col_and_write USING    P_TEXT&lt;/P&gt;&lt;P&gt;                                 P_LINSZ.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data: col1 type i,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         col2 type i,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          len  type i,&lt;/P&gt;&lt;P&gt;          str  type i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  str  = strlen( p_text ).&lt;/P&gt;&lt;P&gt;  col1 = ( p_linsz / 2 ) - ( str / 2 ) .&lt;/P&gt;&lt;P&gt;  len  = p_linsz - col1 - 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  write: at  /1  '|'.&lt;/P&gt;&lt;P&gt;  write: at  col1 p_text,&lt;/P&gt;&lt;P&gt;         at  sy-colno(len) space.&lt;/P&gt;&lt;P&gt;  write  at  160 '|'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " calc_col_and_write&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  write_other_hdr_details&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM write_other_hdr_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data: col1 type i,&lt;/P&gt;&lt;P&gt;          col2 type i,&lt;/P&gt;&lt;P&gt;          len  type i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  col1 = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  write:/1 '|'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  write: at  col1 'UserId  : ',&lt;/P&gt;&lt;P&gt;                  sy-uname.&lt;/P&gt;&lt;P&gt;  len = sy-linsz - 1.&lt;/P&gt;&lt;P&gt;  write at sy-colno(len) space.&lt;/P&gt;&lt;P&gt;  col2 = sy-linsz - 18.&lt;/P&gt;&lt;P&gt;  write: at col2 'Date: ',&lt;/P&gt;&lt;P&gt;                 sy-datum mm/dd/yyyy.&lt;/P&gt;&lt;P&gt;  write: at sy-linsz '|'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  write:/1 '|'.&lt;/P&gt;&lt;P&gt;  write: at  col1 'ReportId: ',&lt;/P&gt;&lt;P&gt;                  sy-repid.&lt;/P&gt;&lt;P&gt;  write at sy-colno(len) space.&lt;/P&gt;&lt;P&gt;  col2 = sy-linsz - 18.&lt;/P&gt;&lt;P&gt;  write: at col2 'Page: ',&lt;/P&gt;&lt;P&gt;                  sy-pagno.&lt;/P&gt;&lt;P&gt;  write: at sy-linsz '|'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " write_other_hdr_details&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  get_data_component&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      Get the data based on Component level&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;FORM get_data_component.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data wa_lines type i.&lt;/P&gt;&lt;P&gt;*-- Get the BOM item details&lt;/P&gt;&lt;P&gt;  SELECT  stlty stlnr stlkn stpoz idnrk meins menge&lt;/P&gt;&lt;P&gt;          FROM stpo&lt;/P&gt;&lt;P&gt;          INTO TABLE t_stpo&lt;/P&gt;&lt;P&gt;  WHERE   idnrk IN s_idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR wa_lines.&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE t_stpo LINES wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF wa_lines &amp;gt; 0.&lt;/P&gt;&lt;P&gt;      SELECT  stlty stlnr stlal stkoz bmein bmeng&lt;/P&gt;&lt;P&gt;              FROM stko&lt;/P&gt;&lt;P&gt;              INTO TABLE t_stko&lt;/P&gt;&lt;P&gt;              FOR ALL ENTRIES IN t_stpo&lt;/P&gt;&lt;P&gt;      WHERE stlnr = t_stpo-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR wa_lines.&lt;/P&gt;&lt;P&gt;      DELETE ADJACENT DUPLICATES FROM t_stko COMPARING ALL FIELDS.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE t_stko LINES wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF wa_lines &amp;gt; 0.&lt;/P&gt;&lt;P&gt;*-- Get the BOM item details&lt;/P&gt;&lt;P&gt;        SELECT * FROM mast INTO TABLE t_mast FOR ALL ENTRIES IN t_stko&lt;/P&gt;&lt;P&gt;                                            WHERE werks = p_werks  AND&lt;/P&gt;&lt;P&gt;                                              stlnr = t_stko-stlnr&lt;/P&gt;&lt;P&gt;                                              and stlal in s_stlal.&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;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;    Write:/2 'List contains no data'.&lt;/P&gt;&lt;P&gt;    stop.&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;  loop at t_mast.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear : v_maktx.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Start of change  Seshu&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Reason - Remove the new page option&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    if sy-tabix ne 1.&lt;/P&gt;&lt;P&gt;      skip 1.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; End of change    Seshu&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the material Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select single maktx from makt into  v_maktx&lt;/P&gt;&lt;P&gt;                             where matnr = t_mast-matnr&lt;/P&gt;&lt;P&gt;                             and   spras = 'E'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the material details from STKO Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select single * from stko into wa_stko&lt;/P&gt;&lt;P&gt;                    where STLTY = 'M'&lt;/P&gt;&lt;P&gt;                    and   STLNR = t_mast-stlnr&lt;/P&gt;&lt;P&gt;                    and   STLAL = t_mast-stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Main Header for Each Material&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    format color 5 on.&lt;/P&gt;&lt;P&gt;    write:/2 'Material',20 'Material Description',65 'Alternative BOM',&lt;/P&gt;&lt;P&gt;         90 'Base Qty', 115 'Base Unit'.&lt;/P&gt;&lt;P&gt;    format color 5 off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    format color 1 on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    write:/2 t_mast-matnr,20 v_maktx,65 wa_stko-STLAL, 85 wa_stko-BMENG,&lt;/P&gt;&lt;P&gt;           115 wa_stko-BMEIN.&lt;/P&gt;&lt;P&gt;    format color 1 off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Use the Function Module and get the format level by level&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform get_level_level.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear : t_mast.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data_component&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  obj_ident&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM obj_ident.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; weder Mat noch Doc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CHECK: T_stb-objty NE otyp_mat,&lt;/P&gt;&lt;P&gt;         T_stb-objty NE ootyp_mat,&lt;/P&gt;&lt;P&gt;         T_stb-objty NE otyp_doc,&lt;/P&gt;&lt;P&gt;         T_stb-objty NE otyp_ntm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ?T418-WA schon ok&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; nein&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF T_stb-postp NE t418-postp.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    T418 einlesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM t418_lesen USING T_stb-postp.&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;  PERFORM cl_clstab_maint.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ?MatNr-Eingabe bei diesem PosTyp moeglich&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  und keine Textposition&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; trifft zu&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF     t418-matin NE '-'&lt;/P&gt;&lt;P&gt;     AND t418-txpos IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    aktuelles Objekt ist Material NLAG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    T_stb-objty = '1'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    PosKurztext in ObjKurztext uebernehmen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    T_stb-ojtxp = T_stb-potx1.&lt;/P&gt;&lt;P&gt;    MODIFY T_stb.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF T_stb-objty IS INITIAL.&lt;/P&gt;&lt;P&gt;      T_stb-objty = '2'.&lt;/P&gt;&lt;P&gt;      MODIFY T_stb.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " obj_ident&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  t418_lesen&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;P_T_STB_POSTP  text&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;FORM t418_lesen USING   lkl_postp LIKE stpo-postp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; T418-WA initialisieren&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR:&lt;/P&gt;&lt;P&gt;     t418.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Key angeben&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  t418-postp = lkl_postp.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; PosTypDefinition lesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  READ TABLE t418.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " t418_lesen&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  cl_clstab_maint&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM cl_clstab_maint.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; nur fuer Klassenpositionen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CHECK t_STB-OBJTY EQ OTYP_KLA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Teilkey der Klassenpositionentabelle&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CL_CLSTAB-CLASS = t_STB-CLASS.&lt;/P&gt;&lt;P&gt;  CL_CLSTAB-KLART = t_STB-KLART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Klassenpositionentabelle lesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  READ TABLE CL_CLSTAB&lt;/P&gt;&lt;P&gt;     WITH KEY CL_CLSTAB(21)&lt;/P&gt;&lt;P&gt;     BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; aktuelle Klassenposition bereits in Klassenpositionentabelle&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; nein&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Klassenposition in Klassenpositionentabelle hinzufuegen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    INSERT CL_CLSTAB INDEX SY-TABIX.&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.                    " cl_clstab_maint&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  alv_stb_prep&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      Printing the data as LEVEL BY LEVEL&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;FORM alv_stb_prep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR:&lt;/P&gt;&lt;P&gt;      alv_stb,&lt;/P&gt;&lt;P&gt;      stb_orig,&lt;/P&gt;&lt;P&gt;      stb_add.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF t_stb-hdnfo IS INITIAL.&lt;/P&gt;&lt;P&gt;    stb_orig = t_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF t_stb-mngko &amp;gt;= max_num.&lt;/P&gt;&lt;P&gt;      stb_add-ovfls = ueberl_kz.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF t_stb-mngko &amp;lt;= min_num.&lt;/P&gt;&lt;P&gt;        stb_add-ovfls = ueberl_kz.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        CLEAR: stb_add-ovfls.&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 t_stb-xtlnr IS INITIAL.&lt;/P&gt;&lt;P&gt;      stb_add-bomfl = b_flag.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF    NOT t_stb-knobj IS INITIAL&lt;/P&gt;&lt;P&gt;       OR NOT t_stb-class IS INITIAL&lt;/P&gt;&lt;P&gt;       OR NOT t_stb-kzclb IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      stb_add-knofl = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    CHECK t_stb-stufe &amp;gt; 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    alv_stb-info = 'C30'.&lt;/P&gt;&lt;P&gt;    IF t_stb-ttidx &amp;lt;&amp;gt; t_matcat-index.&lt;/P&gt;&lt;P&gt;      READ TABLE t_matcat INDEX t_stb-ttidx.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    stb_orig-hdnfo = t_stb-hdnfo.&lt;/P&gt;&lt;P&gt;    stb_orig-stufe = t_stb-stufe - 1 .&lt;/P&gt;&lt;P&gt;    stb_orig-ojtxp = t_stb-ojtxb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT t_stb-altst IS INITIAL.&lt;/P&gt;&lt;P&gt;      stb_orig-stlal = t_stb-stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF stb_orig-stlal(1) EQ '0'.&lt;/P&gt;&lt;P&gt;        stb_orig-stlal(1) = ' '.&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;    stb_orig-idnrk = t_matcat-matnr.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR:&lt;/P&gt;&lt;P&gt;    stb_add-dobjt,&lt;/P&gt;&lt;P&gt;    stb_add-objic.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE t_stb-objty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN otyp_mat.&lt;/P&gt;&lt;P&gt;      WRITE: stb_orig-idnrk TO ecfld.&lt;/P&gt;&lt;P&gt;      stb_add-objic = '@A6@'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'M'.&lt;/P&gt;&lt;P&gt;      WRITE: stb_orig-idnrk TO ecfld.&lt;/P&gt;&lt;P&gt;      stb_add-objic = '@A6@'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN otyp_noo.&lt;/P&gt;&lt;P&gt;      WRITE: stb_orig-potx1 TO ecfld.&lt;/P&gt;&lt;P&gt;      stb_add-objic = '@0Q@'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN otyp_doc.&lt;/P&gt;&lt;P&gt;      write stb_orig-doknr to ecfld.                        "note 489354&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF ecfld CP '*# '. ENDIF.                             "note 489354&lt;/P&gt;&lt;P&gt;      sy-fdpos = sy-fdpos + 1.                              "note 489354&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE&lt;/P&gt;&lt;P&gt;*d      stb_orig-doknr                                      "note 489354&lt;/P&gt;&lt;P&gt;        stb_orig-dokar&lt;/P&gt;&lt;P&gt;        stb_orig-doktl&lt;/P&gt;&lt;P&gt;        stb_orig-dokvr&lt;/P&gt;&lt;P&gt;*d      INTO ecfld                                          "note 489354&lt;/P&gt;&lt;P&gt;        INTO ecfld+sy-fdpos                                 "note 489354&lt;/P&gt;&lt;P&gt;        SEPARATED BY space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      stb_add-objic = '@AR@'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN otyp_kla.&lt;/P&gt;&lt;P&gt;      CONCATENATE&lt;/P&gt;&lt;P&gt;        stb_orig-class&lt;/P&gt;&lt;P&gt;        stb_orig-klart&lt;/P&gt;&lt;P&gt;        INTO ecfld&lt;/P&gt;&lt;P&gt;        SEPARATED BY space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      stb_add-objic = '@7C@'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN otyp_ntm.&lt;/P&gt;&lt;P&gt;      WRITE: stb_orig-intrm TO ecfld.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*d CONDENSE ecfld.                                          "note 515408&lt;/P&gt;&lt;P&gt;  stb_add-dobjt = ecfld(40).&lt;/P&gt;&lt;P&gt;  CLEAR: ecfld.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE stb_orig-stufe TO stb_add-dstuf NO-SIGN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*d  MOVE-CORRESPONDING stb_orig TO alv_stb.                 "note 331962&lt;/P&gt;&lt;P&gt;  MOVE-CORRESPONDING stb_add TO alv_stb.&lt;/P&gt;&lt;P&gt;  MOVE-CORRESPONDING stb_orig TO alv_stb.                   "note 331962&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND alv_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " alv_stb_prep&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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  get_level_level&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_level_level.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH : T_STB,&lt;/P&gt;&lt;P&gt;            T_MATCAT,&lt;/P&gt;&lt;P&gt;            ALV_STB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR : T_STB,&lt;/P&gt;&lt;P&gt;          T_MATCAT,&lt;/P&gt;&lt;P&gt;          ALV_STB.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            capid                 = 'PP01'&lt;/P&gt;&lt;P&gt;            datuv                 = sy-datum&lt;/P&gt;&lt;P&gt;            mktls                 = 'X'&lt;/P&gt;&lt;P&gt;            mehrs                 = 'X'&lt;/P&gt;&lt;P&gt;            mtnrv                 = t_mast-matnr&lt;/P&gt;&lt;P&gt;            stlal                 = '01'&lt;/P&gt;&lt;P&gt;            stlan                 = '1'&lt;/P&gt;&lt;P&gt;            stpst                 = 0&lt;/P&gt;&lt;P&gt;            svwvo                 = 'X'&lt;/P&gt;&lt;P&gt;            werks                 = p_werks&lt;/P&gt;&lt;P&gt;            vrsvo                 = 'X'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            stb                   = t_stb&lt;/P&gt;&lt;P&gt;            matcat                = t_matcat&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            alt_not_found         = 1&lt;/P&gt;&lt;P&gt;            call_invalid          = 2&lt;/P&gt;&lt;P&gt;            material_not_found    = 3&lt;/P&gt;&lt;P&gt;            missing_authorization = 4&lt;/P&gt;&lt;P&gt;            no_bom_found          = 5&lt;/P&gt;&lt;P&gt;            no_plant_data         = 6&lt;/P&gt;&lt;P&gt;            no_suitable_bom_found = 7&lt;/P&gt;&lt;P&gt;            conversion_error      = 8&lt;/P&gt;&lt;P&gt;            OTHERS                = 9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: hd_tab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        Entry der KlassenstatusTab. initialisieren&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         cl_clstab,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        Entry 'Objekte von Klassen' initialisieren&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         cl_objmemo.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  REFRESH: hd_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT t_matcat BY index ASCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the All levels&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  loop at t_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT t_stb-hdnfo IS INITIAL.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Object Identification&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM obj_ident.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE hd_tab&lt;/P&gt;&lt;P&gt;        WITH KEY stufe = t_stb-stufe&lt;/P&gt;&lt;P&gt;                 vwegx = t_stb-vwegx&lt;/P&gt;&lt;P&gt;        BINARY SEARCH&lt;/P&gt;&lt;P&gt;        TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    ?gibt es diesen Satz schon&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    nein&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       dann in SFP-Infosatzverweistab. aufnehmen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*d       APPEND HD_TAB.                                       "HGH054648&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      hd_tab-stufe = t_stb-stufe.&lt;/P&gt;&lt;P&gt;                                                            "HGH054648&lt;/P&gt;&lt;P&gt;      hd_tab-vwegx = t_stb-vwegx.&lt;/P&gt;&lt;P&gt;                                                            "HGH054648&lt;/P&gt;&lt;P&gt;      INSERT hd_tab                                         "HGH054648&lt;/P&gt;&lt;P&gt;        INTO hd_tab                                         "HGH054648&lt;/P&gt;&lt;P&gt;        INDEX sy-tabix.                                     "HGH054648&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       PosNr initialisieren&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR: t_stb-posnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       SFP-InfosatzKz setzen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      t_stb-hdnfo = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        stb-objty = otyp_mat.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                                            "HGE246532&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       als SFP-Infosatz in die STB aufnehmen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      append t_stb.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*del  ENDIF.&lt;/P&gt;&lt;P&gt;    clear t_stb.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT t_stb ASCENDING BY stufe&lt;/P&gt;&lt;P&gt;              index ASCENDING&lt;/P&gt;&lt;P&gt;*del        POSNR ASCENDING.                                  "HGC062735&lt;/P&gt;&lt;P&gt;              posnr ASCENDING                               "HGC062735&lt;/P&gt;&lt;P&gt;              hdnfo DESCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_stb.&lt;/P&gt;&lt;P&gt;    T_stb-index = sy-tabix.&lt;/P&gt;&lt;P&gt;    MODIFY T_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM alv_stb_prep.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Displays the Value as Level by Level&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at ALV_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if sy-tabix = 1.&lt;/P&gt;&lt;P&gt;      format color 3 on.&lt;/P&gt;&lt;P&gt;      write:/2 'Level',12 'Item',22 'Component',&lt;/P&gt;&lt;P&gt;      42 'Material Description',82 'Base Qty',&lt;/P&gt;&lt;P&gt;      107 'Base Unit',120 'Assembly Indicator'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      format color 3 on.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if alv_stb-MEINs is initial.&lt;/P&gt;&lt;P&gt;      v_flag = 'X'.&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;    if v_flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      format color 5 on.&lt;/P&gt;&lt;P&gt;      write:/2 ALV_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;             42 alv_stb-OJTXP.&lt;/P&gt;&lt;P&gt;      format color 1 off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;P&gt;      if alv_stb-STUFE = '1'.&lt;/P&gt;&lt;P&gt;        format color 1 on.&lt;/P&gt;&lt;P&gt;        write:/2 ALV_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;               42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;               107 alv_stb-MEINs, 120 alv_stb-bomfl .&lt;/P&gt;&lt;P&gt;        format color 1 off.&lt;/P&gt;&lt;P&gt;      elseif alv_stb-STUFE = '2'.&lt;/P&gt;&lt;P&gt;        format color 2 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;               42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;               107 alv_stb-MEINs,120 alv_stb-bomfl.&lt;/P&gt;&lt;P&gt;        format color 2 off.&lt;/P&gt;&lt;P&gt;      elseif alv_stb-STUFE = '3'.&lt;/P&gt;&lt;P&gt;        format color 3 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;                42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;                107 alv_stb-MEINs,120 alv_stb-bomfl .&lt;/P&gt;&lt;P&gt;        format color 3 off.&lt;/P&gt;&lt;P&gt;      elseif alv_stb-STUFE = '4'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        format color 4 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;                42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;                107 alv_stb-MEINs,120 alv_stb-bomfl .&lt;/P&gt;&lt;P&gt;        format color 4 off.&lt;/P&gt;&lt;P&gt;      elseif alv_stb-STUFE = '5'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        format color 5 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;                42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;                107 alv_stb-MEINs,120 alv_stb-bomfl .&lt;/P&gt;&lt;P&gt;        format color 5 off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      elseif alv_stb-STUFE = '6'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        format color 7 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;               42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;               107 alv_stb-MEINs,120 alv_stb-bomfl.&lt;/P&gt;&lt;P&gt;        format color 6 off.&lt;/P&gt;&lt;P&gt;      elseif alv_stb-STUFE = '7'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        format color 7 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;               42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;               107 alv_stb-MEINs,120 alv_stb-bomfl .&lt;/P&gt;&lt;P&gt;        format color  7 off.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        format color 1 on.&lt;/P&gt;&lt;P&gt;        write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,&lt;/P&gt;&lt;P&gt;                42 alv_stb-OJTXP,72 alv_stb-mngko,&lt;/P&gt;&lt;P&gt;                107 alv_stb-MEINs,120 alv_stb-bomfl .&lt;/P&gt;&lt;P&gt;        format color  1 off.&lt;/P&gt;&lt;P&gt;      endif.&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;    hide: alv_stb.&lt;/P&gt;&lt;P&gt;    clear : alv_stb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear v_flag.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_level_level&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  f4_for_variant&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM f4_for_variant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_VARIANT_F4'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              is_variant          = g_variant&lt;/P&gt;&lt;P&gt;              i_save              = g_save&lt;/P&gt;&lt;P&gt;              i_tabname_header    = g_tabname_header&lt;/P&gt;&lt;P&gt;              i_tabname_item      = g_tabname_item&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          it_default_fieldcat =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;         IMPORTING&lt;/P&gt;&lt;P&gt;              e_exit              = g_exit&lt;/P&gt;&lt;P&gt;              es_variant          = gx_variant&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              not_found = 2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 2.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE 'S'      NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF g_exit = space.&lt;/P&gt;&lt;P&gt;      p_vari = gx_variant-variant.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f4_for_variant&lt;/P&gt;&lt;P&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;      FORM E03_EVENTTAB_BUILD                                       *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ........                                                      *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  E03_LT_EVENTS                                                 *&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;FORM e03_eventtab_build USING e03_lt_events TYPE slis_t_event.&lt;/P&gt;&lt;P&gt;  DATA: ls_event TYPE slis_alv_event.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            i_list_type = 0&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            et_events   = e03_lt_events.&lt;/P&gt;&lt;P&gt;  READ TABLE e03_lt_events WITH KEY name = slis_ev_top_of_page&lt;/P&gt;&lt;P&gt;                           INTO ls_event.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    MOVE gc_formname_top_of_page TO ls_event-form.&lt;/P&gt;&lt;P&gt;    APPEND ls_event TO e03_lt_events.&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;*----&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;      FORM E04_COMMENT_BUILD                                        *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ........                                                      *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  E04_LT_TOP_OF_PAGE                                            *&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;FORM e04_comment_build USING e04_lt_top_of_page TYPE slis_t_listheader.&lt;/P&gt;&lt;P&gt;  DATA: ls_line TYPE slis_listheader.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Listenüberschrift: Typ H&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR ls_line.&lt;/P&gt;&lt;P&gt;  ls_line-typ  = 'H'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;LS_LINE-KEY:  not used for this type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_line-info = text-001.&lt;/P&gt;&lt;P&gt;  APPEND ls_line TO e04_lt_top_of_page.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Kopfinfo: Typ S&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR ls_line.&lt;/P&gt;&lt;P&gt;  ls_line-typ  = 'S'.&lt;/P&gt;&lt;P&gt;  ls_line-key  = text-050.&lt;/P&gt;&lt;P&gt;  ls_line-info = text-010.&lt;/P&gt;&lt;P&gt;  APPEND ls_line TO e04_lt_top_of_page.&lt;/P&gt;&lt;P&gt;  ls_line-key  = text-051.&lt;/P&gt;&lt;P&gt;  APPEND ls_line TO e04_lt_top_of_page.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Aktionsinfo: Typ A&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR ls_line.&lt;/P&gt;&lt;P&gt;  ls_line-typ  = 'A'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;LS_LINE-KEY:  not used for this type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_line-info = text-002.&lt;/P&gt;&lt;P&gt;  APPEND ls_line TO  e04_lt_top_of_page.&lt;/P&gt;&lt;P&gt;ENDFORM.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM E07_SP_GROUP_BUILD                                       *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ........                                                      *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  E07_LT_SP_GROUP                                               *&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;FORM e07_sp_group_build USING e07_lt_sp_group TYPE slis_t_sp_group_alv.&lt;/P&gt;&lt;P&gt;  DATA: ls_sp_group TYPE slis_sp_group_alv.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR  ls_sp_group.&lt;/P&gt;&lt;P&gt;  ls_sp_group-sp_group = 'A'.&lt;/P&gt;&lt;P&gt;  ls_sp_group-text     = text-005.&lt;/P&gt;&lt;P&gt;  APPEND ls_sp_group TO e07_lt_sp_group.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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  e08_layout_build&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;P_GT_LAYOUT[]  text&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;FORM e08_layout_build USING    gs_layout TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  gs_layout-f2code            = 'GDET'. "define hotspot&lt;/P&gt;&lt;P&gt;  gs_layout-zebra             = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-no_hotspot        = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-detail_popup      = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-no_input          = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-no_colhead        = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-lights_condense   = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-totals_only       = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-key_hotspot       = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-group_buttons     = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-no_vline          = ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; gs_layout-max_linesize   = '350'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  gs_layout-no_totalline      = ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; gs_layout-totals_text      = 'UnRes Total'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; gs_layout-subtotals_text   = 'Material Type Total'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  gs_layout-numc_sum          = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-no_unit_splitting = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-no_sumchoice      = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-no_subchoice      = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-totals_before_items = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-no_subtotals = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-totals_only = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-item_text = ' '.&lt;/P&gt;&lt;P&gt;  gs_layout-default_item = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-expand_fieldname = 'EXPAND'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " e08_layout_build&lt;/P&gt;&lt;P&gt;&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  VARIANT_INIT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM variant_init.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR g_variant.&lt;/P&gt;&lt;P&gt;  g_variant-report = g_repid.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " VARIANT_INIT&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;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM E01_FIELDCAT_INIT                                        *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ........                                                      *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  E01_LT_FIELDCAT                                               *&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;FORM e01_fieldcat_init USING e01_lt_fieldcat TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;  DATA: ls_fieldcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'MATNR'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname      = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = 'X'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'MAST'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'Main Material'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-no_out       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-no_sum       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-sp_group = 'A'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;**&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'WERKS'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname      = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-key          = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'MAST'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'Plant'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-no_out       = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-no_sum       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-sp_group = 'A'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'MAKTX'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'MAKT'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'Material Description'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'STLAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STKO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic =  'Alt.BOM'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'STLNR'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'BOM #'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STPO'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-no_out       = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'BMENG'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STKO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic =  'Base Qty'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'BMEIN'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_MAIN_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STKO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic =  'Base Qty'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLEAR ls_fieldcat.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-fieldname = 'MATNR'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'Book Value'.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; w_fieldcat-reptext_ddic = 'Total &lt;SPAN __jive_emoticon_name="minus"&gt;&lt;/SPAN&gt; Value'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'IDNRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STPO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'BOM Component'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-reptext_ddic = 'Total &lt;SPAN __jive_emoticon_name="minus"&gt;&lt;/SPAN&gt; Value'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'MAST'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-no_out       = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'Plant'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'MAKTX'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'MAKT'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'BOM Component Description'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-just = 'L'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-outputlen = 40.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'STLAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STKO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-no_out       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic =  'Alt.BOM'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'STLNR'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STPO'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-no_out       = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'BOM #'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'MENGE'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STPO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic = 'Component Qty'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname = 'T_ITEM_MATERIAL'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = 'STPO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-reptext_ddic =  'Base Qty'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-just = 'R'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; w_fieldcat-outputlen = 16.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND ls_fieldcat TO e01_lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  select_data&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM select_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: wa_lines TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_bomlst = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT * FROM makt INTO TABLE t_makt WHERE matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get all the information from MAST - BOM Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT * FROM mast INTO TABLE t_mast WHERE matnr IN s_matnr AND&lt;/P&gt;&lt;P&gt;                                               werks = p_werks  AND&lt;/P&gt;&lt;P&gt;                                               stlan IN s_stlan AND&lt;/P&gt;&lt;P&gt;                                               stlal IN s_stlal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR wa_lines.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE t_mast LINES wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF wa_lines &amp;gt; 0.&lt;/P&gt;&lt;P&gt;        SELECT  stlty stlnr stlal stkoz bmein bmeng&lt;/P&gt;&lt;P&gt;                FROM stko&lt;/P&gt;&lt;P&gt;                INTO TABLE t_stko&lt;/P&gt;&lt;P&gt;                FOR ALL ENTRIES IN t_mast&lt;/P&gt;&lt;P&gt;        WHERE stlnr = t_mast-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR wa_lines.&lt;/P&gt;&lt;P&gt;        DESCRIBE TABLE t_mast LINES wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF wa_lines &amp;gt; 0.&lt;/P&gt;&lt;P&gt;*-- Get the BOM item details&lt;/P&gt;&lt;P&gt;          SELECT  stlty stlnr stlkn stpoz idnrk meins menge&lt;/P&gt;&lt;P&gt;                  FROM stpo&lt;/P&gt;&lt;P&gt;                  INTO TABLE t_stpo&lt;/P&gt;&lt;P&gt;                  FOR ALL ENTRIES IN t_stko&lt;/P&gt;&lt;P&gt;          WHERE   stlty = t_stko-stlty AND&lt;/P&gt;&lt;P&gt;                  stlnr = t_stko-stlnr AND&lt;/P&gt;&lt;P&gt;                  idnrk IN s_idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT * FROM makt APPENDING TABLE   t_makt&lt;/P&gt;&lt;P&gt;                  FOR ALL ENTRIES IN t_stpo&lt;/P&gt;&lt;P&gt;                  WHERE matnr = t_stpo-idnrk.&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;      ENDIF.&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;*-- Move into the internal table according to selection&lt;/P&gt;&lt;P&gt;*-- for Material BOM list - Add the materials in the header and the&lt;/P&gt;&lt;P&gt;*-- list in the items table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT t_mast.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE t_mast-werks TO t_main_material-werks.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-matnr TO t_main_material-matnr.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlal TO t_main_material-stlal.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlnr TO t_main_material-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE t_stko WITH KEY stlnr = t_mast-stlnr&lt;/P&gt;&lt;P&gt;                                 stlal = t_mast-stlal.&lt;/P&gt;&lt;P&gt;      MOVE t_stko-bmeng TO t_main_material-bmeng.&lt;/P&gt;&lt;P&gt;      MOVE t_stko-bmein to t_main_material-bmein.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE t_makt WITH KEY matnr = t_mast-matnr&lt;/P&gt;&lt;P&gt;                                 spras = 'EN'.&lt;/P&gt;&lt;P&gt;      MOVE t_makt-maktx TO t_main_material-maktx. "Description&lt;/P&gt;&lt;P&gt;      t_main_material-expand = space.&lt;/P&gt;&lt;P&gt;      APPEND t_main_material.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*-- Move the&lt;/P&gt;&lt;P&gt;    LOOP AT t_mast.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-matnr TO t_item_material-matnr.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-werks TO t_item_material-werks.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlal TO t_item_material-stlal.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlnr TO t_item_material-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT t_stpo WHERE stlnr = t_mast-stlnr.&lt;/P&gt;&lt;P&gt;        MOVE t_stpo-menge TO t_item_material-menge.&lt;/P&gt;&lt;P&gt;        MOVE t_stpo-meins to t_item_material-meins.&lt;/P&gt;&lt;P&gt;        MOVE t_stpo-idnrk TO t_item_material-idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ TABLE t_makt WITH KEY matnr = t_stpo-idnrk&lt;/P&gt;&lt;P&gt;                                   spras = 'EN'.&lt;/P&gt;&lt;P&gt;        MOVE t_makt-maktx TO t_item_material-maktx. "Description&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND t_item_material.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;*-- Now the components where used list selected&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 BOM description&lt;/P&gt;&lt;P&gt;    SELECT * FROM makt INTO TABLE t_makt WHERE matnr IN s_idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get all the information from MAST - BOM Table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SELECT * FROM mast INTO TABLE t_mast FOR ALL ENTRIES IN t_stko&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WHERE matnr IN s_matnr AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                              werks = p_werks  AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                              stlan IN s_stlan AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                              stlal IN s_stlal.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*-- Get the BOM item details&lt;/P&gt;&lt;P&gt;    SELECT  stlty stlnr stlkn stpoz idnrk meins menge&lt;/P&gt;&lt;P&gt;            FROM stpo&lt;/P&gt;&lt;P&gt;            INTO TABLE t_stpo&lt;/P&gt;&lt;P&gt;    WHERE   idnrk IN s_idnrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR wa_lines.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE t_stpo LINES wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF wa_lines &amp;gt; 0.&lt;/P&gt;&lt;P&gt;        SELECT  stlty stlnr stlal stkoz bmein bmeng&lt;/P&gt;&lt;P&gt;                FROM stko&lt;/P&gt;&lt;P&gt;                INTO TABLE t_stko&lt;/P&gt;&lt;P&gt;                FOR ALL ENTRIES IN t_stpo&lt;/P&gt;&lt;P&gt;        WHERE stlnr = t_stpo-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR wa_lines.&lt;/P&gt;&lt;P&gt;        DELETE ADJACENT DUPLICATES FROM t_stko COMPARING ALL FIELDS.&lt;/P&gt;&lt;P&gt;        DESCRIBE TABLE t_stko LINES wa_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF wa_lines &amp;gt; 0.&lt;/P&gt;&lt;P&gt;*-- Get the BOM item details&lt;/P&gt;&lt;P&gt;         SELECT * FROM mast INTO TABLE t_mast FOR ALL ENTRIES IN t_stko&lt;/P&gt;&lt;P&gt;                                             WHERE werks = p_werks  AND&lt;/P&gt;&lt;P&gt;                                               stlnr = t_stko-stlnr AND&lt;/P&gt;&lt;P&gt;                                                       matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT * FROM makt APPENDING TABLE   t_makt&lt;/P&gt;&lt;P&gt;                  FOR ALL ENTRIES IN t_mast&lt;/P&gt;&lt;P&gt;                  WHERE matnr = t_mast-matnr.&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;      ENDIF.&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;*-- Move into the internal table according to selection&lt;/P&gt;&lt;P&gt;*-- for Material BOM list - Add the materials in the header and the&lt;/P&gt;&lt;P&gt;*-- list in the items table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT t_mast.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE t_mast-werks TO t_main_material-werks.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-matnr TO t_main_material-matnr.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlal TO t_main_material-stlal.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlnr TO t_main_material-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE t_stko WITH KEY stlnr = t_mast-stlnr&lt;/P&gt;&lt;P&gt;                                 stlal = t_mast-stlal.&lt;/P&gt;&lt;P&gt;      MOVE t_stko-bmeng TO t_main_material-bmeng.&lt;/P&gt;&lt;P&gt;      MOVE t_stko-bmein to t_main_material-bmein.&lt;/P&gt;&lt;P&gt;      READ TABLE t_makt WITH KEY matnr = t_mast-matnr&lt;/P&gt;&lt;P&gt;                                 spras = 'EN'.&lt;/P&gt;&lt;P&gt;      MOVE t_makt-maktx TO t_main_material-maktx. "Description&lt;/P&gt;&lt;P&gt;      t_main_material-expand = space.&lt;/P&gt;&lt;P&gt;      APPEND t_main_material.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*-- Move the&lt;/P&gt;&lt;P&gt;    LOOP AT t_mast.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-matnr TO t_item_material-matnr.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-werks TO t_item_material-werks.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlal TO t_item_material-stlal.&lt;/P&gt;&lt;P&gt;      MOVE t_mast-stlnr TO t_item_material-stlnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT t_stpo WHERE stlnr = t_mast-stlnr.&lt;/P&gt;&lt;P&gt;        MOVE t_stpo-menge TO t_item_material-menge.&lt;/P&gt;&lt;P&gt;        MOVE t_stpo-idnrk TO t_item_material-idnrk.&lt;/P&gt;&lt;P&gt;        MOVE t_stpo-meins to t_item_material-meins.&lt;/P&gt;&lt;P&gt;        READ TABLE t_makt WITH KEY matnr = t_stpo-idnrk&lt;/P&gt;&lt;P&gt;                                   spras = 'EN'.&lt;/P&gt;&lt;P&gt;        MOVE t_makt-maktx TO t_item_material-maktx. "Description&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND t_item_material.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF. "p_bomlst&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  alv&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM alv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call ABAP/4 List Viewer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            i_callback_program       = g_repid&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_CALLBACK_PF_STATUS_SET = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_CALLBACK_USER_COMMAND  = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            is_layout                = gs_layout&lt;/P&gt;&lt;P&gt;            it_fieldcat              = gt_fieldcat[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IT_EXCLUDING             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           it_special_groups        = gt_sp_group[]&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IT_SORT                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IT_FILTER                =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IS_SEL_HIDE              =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_SCREEN_START_COLUMN    = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_SCREEN_START_LINE      = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_SCREEN_END_COLUMN      = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_SCREEN_END_LINE        = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          i_default                = g_default&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            i_save                   = g_save&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           is_variant               = g_variant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            it_events                = gt_events[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IT_EVENT_EXIT            =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            i_tabname_header         = g_tabname_header&lt;/P&gt;&lt;P&gt;            i_tabname_item           = g_tabname_item&lt;/P&gt;&lt;P&gt;            is_keyinfo               = gs_keyinfo&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IS_PRINT                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          E_EXIT_CAUSED_BY_CALLER  =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            t_outtab_header          = t_main_material&lt;/P&gt;&lt;P&gt;            t_outtab_item            = t_item_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " alv&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Text elements :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;P_ALL	?...&lt;/P&gt;&lt;P&gt;P_BOMLST	BOM Components List&lt;/P&gt;&lt;P&gt;P_COMPON	Components Where Used List&lt;/P&gt;&lt;P&gt;P_ONE	?...&lt;/P&gt;&lt;P&gt;P_VARI	Layout&lt;/P&gt;&lt;P&gt;P_WERKS	Plant&lt;/P&gt;&lt;P&gt;S_IDNRK	Component&lt;/P&gt;&lt;P&gt;S_MATNR	Material&lt;/P&gt;&lt;P&gt;S_STLAL	Alternative BOM&lt;/P&gt;&lt;P&gt;S_STLAN	BOM usage&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Text symbols :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;001	Enter The Required Parameters&lt;/P&gt;&lt;P&gt;002	To Display the Components List Report&lt;/P&gt;&lt;P&gt;003	Enter the Selection Variant  (Hierarchal ALV)&lt;/P&gt;&lt;P&gt;005	Multi Level&lt;/P&gt;&lt;P&gt;006	Single Level&lt;/P&gt;&lt;P&gt;B03	Enter Report Option&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Aug 2007 18:34:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579274#M589701</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-07T18:34:45Z</dc:date>
    </item>
    <item>
      <title>Re: Error while running FM 'CS_BOM_EXPL_MAT_V2'</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579275#M589702</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;pblm solved.!! no authorization to view the plant details&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Aug 2007 06:28:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-while-running-fm-cs-bom-expl-mat-v2/m-p/2579275#M589702</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-08T06:28:46Z</dc:date>
    </item>
  </channel>
</rss>

