<?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: Copy Material Master Record -- All Answers will be rewarded in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602411#M270462</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have a look at standard SAP program RV15CC03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 02 Oct 2006 15:10:20 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-10-02T15:10:20Z</dc:date>
    <item>
      <title>Copy Material Master Record -- All Answers will be rewarded</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602407#M270458</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to copy the set of materials from one plant to another plant.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Say I need to copy Materials from plant 1123 to 1128.&lt;/P&gt;&lt;P&gt;Say some 10000 materials approximately.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;one way is to create using MM01 with the reference Material. However this is not possible as different material numbers can have different Views.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there a smart way to do this. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please let me know Marting...I will Reward all Answers&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Marting&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Oct 2006 14:45:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602407#M270458</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-10-02T14:45:50Z</dc:date>
    </item>
    <item>
      <title>Re: Copy Material Master Record -- All Answers will be rewarded</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602408#M270459</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;refer the links below &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap.ittoolbox.com/documents/popular-q-and-a/copying-material-from-one-plant-to-another-2487" target="test_blank"&gt;http://sap.ittoolbox.com/documents/popular-q-and-a/copying-material-from-one-plant-to-another-2487&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;by using BAPI &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/bapi-to-copy-materials-from-one-plant-to-another.htm" target="test_blank"&gt;http://www.sap-img.com/abap/bapi-to-copy-materials-from-one-plant-to-another.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Vivek&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Oct 2006 14:51:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602408#M270459</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-10-02T14:51:33Z</dc:date>
    </item>
    <item>
      <title>Re: Copy Material Master Record -- All Answers will be rewarded</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602409#M270460</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try this sample program in which it will copy one material to another material it will work&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZM_MAT_EXT_TO_PLANT&lt;/P&gt;&lt;P&gt;       NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;       LINE-SIZE 255&lt;/P&gt;&lt;P&gt;       MESSAGE-ID ZI.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Program     : ZM_MAT_EXT_TO_PLANT                                   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Author      : warun kumar todimala P                                              *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Type        : Extend Material from one plant to another using BDC   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Description : The program will use BDC CALL TRANSACTION to extend   *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               material from one plant to another plant. If error    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               occurs, an error session will be created with name    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               given on selection screen. So that it can be manually *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               processed using SM35                                  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; TCODE used  : MM01 - Create Material                                *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; SAP Request : D51K912730                                            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Date        : 13SEP2006                                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  C H A N G E   L O G                                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Date  | Req No    | Initial  | Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;14SEP06  D51K912772             Plant validation from T001W          *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                Warehouse view validation            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;18SEP06  D51K912817             Change for xl file                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Tables Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;TABLES: MARA,  "General Material Data&lt;/P&gt;&lt;P&gt;        MARC,  "Plant Data for Material&lt;/P&gt;&lt;P&gt;        MVKE,  "Sales Data for Material&lt;/P&gt;&lt;P&gt;        MBEW,  "Material Valuation&lt;/P&gt;&lt;P&gt;        MARD,  "Storage Location Data for Material&lt;/P&gt;&lt;P&gt;        MAKT,  "Material Descriptions&lt;/P&gt;&lt;P&gt;        T100,  "Messages&lt;/P&gt;&lt;P&gt;        T130M, "Transaction control parameters: mat. master maintenance&lt;/P&gt;&lt;P&gt;        MLGN.  "Material Data for Each Warehouse Number&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;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;*--Internal table for Sales data for material&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF INT_MVKE OCCURS 0,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MVKE-MATNR,&lt;/P&gt;&lt;P&gt;        VKORG LIKE MVKE-VKORG,&lt;/P&gt;&lt;P&gt;        VTWEG LIKE MVKE-VTWEG,&lt;/P&gt;&lt;P&gt;        VMSTA LIKE MVKE-VMSTA,&lt;/P&gt;&lt;P&gt;        VMSTD LIKE MVKE-VMSTD,&lt;/P&gt;&lt;P&gt;        DWERK LIKE MVKE-DWERK,&lt;/P&gt;&lt;P&gt;        KONDM LIKE MVKE-KONDM,&lt;/P&gt;&lt;P&gt;        PRODH LIKE MVKE-PRODH,&lt;/P&gt;&lt;P&gt;        MTPOS LIKE MVKE-MTPOS,&lt;/P&gt;&lt;P&gt;      END OF INT_MVKE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Internal table for material if input file is given&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_MAT,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MATERIALID-MATNR_EXT,&lt;/P&gt;&lt;P&gt;        SLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;        TLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;       END OF T_MAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_VALID_MAT,&lt;/P&gt;&lt;P&gt;       MATNR LIKE MATERIALID-MATNR_EXT,&lt;/P&gt;&lt;P&gt;      END OF  T_VALID_MAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF IT_RMAT OCCURS 0,&lt;/P&gt;&lt;P&gt;        MATNR  LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;        TLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;        SLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;      END OF IT_RMAT.&lt;/P&gt;&lt;P&gt;*--Warehouse data&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF INT_WAREH OCCURS 0,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MLGN-MATNR,&lt;/P&gt;&lt;P&gt;        LGNUM LIKE MLGN-LGNUM,&lt;/P&gt;&lt;P&gt;        LTKZA LIKE MLGN-LTKZA,&lt;/P&gt;&lt;P&gt;        LTKZE LIKE MLGN-LTKZE,&lt;/P&gt;&lt;P&gt;        LGBKZ LIKE MLGN-LGBKZ,&lt;/P&gt;&lt;P&gt;     END OF INT_WAREH.&lt;/P&gt;&lt;P&gt;*--Marked for deletion&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_MAR_DEL,&lt;/P&gt;&lt;P&gt;       MATNR LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;       LVORM LIKE MARA-LVORM,&lt;/P&gt;&lt;P&gt;      END OF  T_MAR_DEL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Range for material FOR input file in&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;in internal format&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;RANGES: R_MATNR FOR MARA-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Internal table for Material Valuation&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF INT_MBEW OCCURS 0,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MBEW-MATNR,&lt;/P&gt;&lt;P&gt;        VPRSV LIKE MBEW-VPRSV,&lt;/P&gt;&lt;P&gt;        STPRS LIKE MBEW-STPRS,&lt;/P&gt;&lt;P&gt;        BKLAS LIKE MBEW-BKLAS,&lt;/P&gt;&lt;P&gt;        ZPLD1 LIKE MBEW-ZPLD1,&lt;/P&gt;&lt;P&gt;        ZPLD2 LIKE MBEW-ZPLD2,&lt;/P&gt;&lt;P&gt;      END OF INT_MBEW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Types for inal internal table contains all the data used to extend&lt;/P&gt;&lt;P&gt;*--the material(s)&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_FINAL,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;        MTART LIKE MARA-MTART,&lt;/P&gt;&lt;P&gt;        VPSTA LIKE MARA-VPSTA,&lt;/P&gt;&lt;P&gt;        MBRSH LIKE MARA-MBRSH,&lt;/P&gt;&lt;P&gt;        MEINS LIKE MARA-MEINS,&lt;/P&gt;&lt;P&gt;        MATKL LIKE MARA-MATKL,&lt;/P&gt;&lt;P&gt;        GEWEI LIKE MARA-GEWEI,&lt;/P&gt;&lt;P&gt;        RAUBE LIKE MARA-RAUBE,&lt;/P&gt;&lt;P&gt;        SPART LIKE MARA-SPART,&lt;/P&gt;&lt;P&gt;        PRDHA LIKE MARA-PRDHA,&lt;/P&gt;&lt;P&gt;        MAGRV LIKE MARA-MAGRV,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MARC-WERKS,&lt;/P&gt;&lt;P&gt;        PSTAT LIKE MARC-PSTAT,&lt;/P&gt;&lt;P&gt;        PLIFZ LIKE MARC-PLIFZ,&lt;/P&gt;&lt;P&gt;        SSQSS LIKE MARC-SSQSS,&lt;/P&gt;&lt;P&gt;        LADGR LIKE MARC-LADGR,&lt;/P&gt;&lt;P&gt;        SERNP LIKE MARC-SERNP,&lt;/P&gt;&lt;P&gt;        PERIV LIKE MARC-PERIV,&lt;/P&gt;&lt;P&gt;        STAWN LIKE MARC-STAWN,&lt;/P&gt;&lt;P&gt;        HERKL LIKE MARC-HERKL,&lt;/P&gt;&lt;P&gt;        EKGRP LIKE MARC-EKGRP,&lt;/P&gt;&lt;P&gt;        DISMM LIKE MARC-DISMM,&lt;/P&gt;&lt;P&gt;        DISPO LIKE MARC-DISPO,&lt;/P&gt;&lt;P&gt;        DISLS LIKE MARC-DISLS,&lt;/P&gt;&lt;P&gt;        LGPRO LIKE MARC-LGPRO,&lt;/P&gt;&lt;P&gt;        FHORI LIKE MARC-FHORI,&lt;/P&gt;&lt;P&gt;        DZEIT LIKE MARC-DZEIT,&lt;/P&gt;&lt;P&gt;        BWSCL LIKE MARC-BWSCL,&lt;/P&gt;&lt;P&gt;        AWSLS LIKE MARC-AWSLS,&lt;/P&gt;&lt;P&gt;        LGFSB LIKE MARC-LGFSB,&lt;/P&gt;&lt;P&gt;        MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;       TLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;       SLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;        VKORG LIKE MVKE-VKORG,&lt;/P&gt;&lt;P&gt;        VTWEG LIKE MVKE-VTWEG,&lt;/P&gt;&lt;P&gt;        VMSTA LIKE MVKE-VMSTA,&lt;/P&gt;&lt;P&gt;        VMSTD LIKE MVKE-VMSTD,&lt;/P&gt;&lt;P&gt;        DWERK LIKE MVKE-DWERK,&lt;/P&gt;&lt;P&gt;        KONDM LIKE MVKE-KONDM,&lt;/P&gt;&lt;P&gt;        PRODH LIKE MVKE-PRODH,&lt;/P&gt;&lt;P&gt;        MTPOS LIKE MVKE-MTPOS,&lt;/P&gt;&lt;P&gt;        VPRSV LIKE MBEW-VPRSV,&lt;/P&gt;&lt;P&gt;        STPRS LIKE MBEW-STPRS,&lt;/P&gt;&lt;P&gt;        BKLAS LIKE MBEW-BKLAS,&lt;/P&gt;&lt;P&gt;        ZPLD1 LIKE MBEW-ZPLD1,&lt;/P&gt;&lt;P&gt;        ZPLD2 LIKE MBEW-ZPLD2,&lt;/P&gt;&lt;P&gt;        LGNUM LIKE MLGN-LGNUM,&lt;/P&gt;&lt;P&gt;        LTKZA LIKE MLGN-LTKZA,&lt;/P&gt;&lt;P&gt;        LTKZE LIKE MLGN-LTKZE,&lt;/P&gt;&lt;P&gt;        LGBKZ LIKE MLGN-LGBKZ,&lt;/P&gt;&lt;P&gt;    END OF T_FINAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_LOG,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MATERIALID-MATNR_EXT,&lt;/P&gt;&lt;P&gt;        MTART LIKE MARA-MTART,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MARC-WERKS,&lt;/P&gt;&lt;P&gt;        MSG(480),&lt;/P&gt;&lt;P&gt;        MSGTYP TYPE C,&lt;/P&gt;&lt;P&gt;       END OF T_LOG.&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_INVALID,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MATERIALID-MATNR_EXT,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MARC-WERKS,&lt;/P&gt;&lt;P&gt;        MSG(100),&lt;/P&gt;&lt;P&gt;       END OF T_INVALID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Internal to for mateial descriptions&lt;/P&gt;&lt;P&gt;*DATA: BEGIN OF INT_MAT_DES OCCURS 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       MATNR LIKE MAKT-MATNR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     END OF INT_MAT_DES.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF IT_FINAL1 OCCURS 0,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MATERIALID-MATNR_EXT,&lt;/P&gt;&lt;P&gt;        MTART LIKE MARA-MTART,&lt;/P&gt;&lt;P&gt;        MBRSH LIKE MARA-MBRSH,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MARC-WERKS,&lt;/P&gt;&lt;P&gt;        PSTAT LIKE MARC-PSTAT,&lt;/P&gt;&lt;P&gt;        LGPRO LIKE MARC-LGPRO,&lt;/P&gt;&lt;P&gt;        LGFSB LIKE MARC-LGFSB,&lt;/P&gt;&lt;P&gt;       TLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;       SLGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;      END OF IT_FINAL1.&lt;/P&gt;&lt;P&gt;*--Internal table for Storage Location Data&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF INT_MARD OCCURS 0,&lt;/P&gt;&lt;P&gt;        MATNR LIKE MARD-MATNR,&lt;/P&gt;&lt;P&gt;        WERKS LIKE MARD-WERKS,&lt;/P&gt;&lt;P&gt;        LGORT LIKE MARD-LGORT,&lt;/P&gt;&lt;P&gt;       END OF INT_MARD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--For Views&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF T_XBILDTAB.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE MBILDTAB.&lt;/P&gt;&lt;P&gt;TYPES: END   OF T_XBILDTAB.&lt;/P&gt;&lt;P&gt;*--Internal table for VIEWS&lt;/P&gt;&lt;P&gt;DATA: IT_XBILDTAB TYPE STANDARD TABLE OF  T_XBILDTAB WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Final internal table contains all the data used to extend the&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; material(s)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: IT_FINAL  TYPE STANDARD TABLE OF T_FINAL WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_TPLANT TYPE STANDARD TABLE OF T_FINAL WITH HEADER LINE,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    int_fplant TYPE STANDARD TABLE OF t_final WITH HEADER LINE,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IT_TOTAL  TYPE STANDARD TABLE OF T_FINAL WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      WA_FINAL   TYPE T_FINAL,&lt;/P&gt;&lt;P&gt;      WA_TPLANT  TYPE T_FINAL,&lt;/P&gt;&lt;P&gt;      INT_TEST   TYPE STANDARD TABLE OF T_FINAL WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      WA_T130M   LIKE T130M,&lt;/P&gt;&lt;P&gt;*--table for bdcdata to store the bdc data&lt;/P&gt;&lt;P&gt;       IT_BDCDATA TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;*--table for messages come from the 'CALL TRANSACTION'&lt;/P&gt;&lt;P&gt;      IT_MESSTAB  LIKE BDCMSGCOLL OCCURS 0   WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_SREP     TYPE STANDARD TABLE OF T_LOG WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_EREP     TYPE STANDARD TABLE OF T_LOG WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_AVL      TYPE STANDARD TABLE OF T_LOG WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_ERR      TYPE STANDARD TABLE OF T_LOG WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_DUPREC   TYPE STANDARD TABLE OF T_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_MAT      TYPE STANDARD TABLE OF T_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_MAT1     TYPE STANDARD TABLE OF T_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_DELREC   TYPE STANDARD TABLE OF T_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_MAR_DEL  TYPE STANDARD TABLE OF T_MAR_DEL WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_DELREC35 TYPE STANDARD TABLE OF T_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_VALID_REC TYPE STANDARD TABLE OF T_VALID_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_IN_VALID TYPE STANDARD TABLE OF T_VALID_MAT WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_INVALID  TYPE STANDARD TABLE OF T_INVALID WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      IT_INVALID1 TYPE STANDARD TABLE OF T_INVALID WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Standard views&lt;/P&gt;&lt;P&gt;       IT_T133A TYPE STANDARD TABLE OF T133A WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       IT_T134  TYPE STANDARD TABLE OF  T_XBILDTAB WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Global variables declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;   GV_TRANS_CODE TYPE SY-TCODE VALUE 'MM01',"Tcode&lt;/P&gt;&lt;P&gt;   GV_MTART LIKE MARA-MTART,                "Material type&lt;/P&gt;&lt;P&gt;   GV_MATNR LIKE MATERIALID-MATNR_EXT,      "40 char material&lt;/P&gt;&lt;P&gt;   HOLDDATE LIKE SY-DATUM,                  "Holdate for session&lt;/P&gt;&lt;P&gt;   GV_SES_OPEN,                             "Session open check&lt;/P&gt;&lt;P&gt;   GV_LAST LIKE MBILDTAB-GUIFU,             "View code&lt;/P&gt;&lt;P&gt;   GV_VIEW_CODE LIKE MBILDTAB-GUIFU,        "Function code&lt;/P&gt;&lt;P&gt;   GV_PURCH_VIEW TYPE I,                    "Purch view&lt;/P&gt;&lt;P&gt;   GV_FIRST_VIEW(2) TYPE N,                 "First view&lt;/P&gt;&lt;P&gt;   GV_OKCODE TYPE SY-UCOMM,                 "Ok code&lt;/P&gt;&lt;P&gt;   GV_MSG1(150),                            "Message&lt;/P&gt;&lt;P&gt;   GV_CNTR TYPE I VALUE '1',                "Counter&lt;/P&gt;&lt;P&gt;   GV_VIEW_CNT LIKE SY-TABIX,               "View count&lt;/P&gt;&lt;P&gt;   GV_NXT_VIEW LIKE MBILDTAB-GUIFU,         "Function code&lt;/P&gt;&lt;P&gt;   GV_ERCNT TYPE I,                         "Error records  count&lt;/P&gt;&lt;P&gt;   GV_SCNT  TYPE I,                         "Success records count&lt;/P&gt;&lt;P&gt;   GV_VALIDREC  TYPE I,                     "Valid record count&lt;/P&gt;&lt;P&gt;   GV_DUPREC  TYPE I,                       "Duplicate record count&lt;/P&gt;&lt;P&gt;   GV_AVL   TYPE I,                         "Available records count&lt;/P&gt;&lt;P&gt;   GV_MSG(120),                             "Message&lt;/P&gt;&lt;P&gt;   GV_INREC   TYPE I,                       "Input records count&lt;/P&gt;&lt;P&gt;   GV_MAR_DEL TYPE I,                       "Marked for deletion&lt;/P&gt;&lt;P&gt;   GV_FILE_STR TYPE STRING,                 "Hold file name except 'txt'&lt;/P&gt;&lt;P&gt;   GV_LAST_4_CHARS TYPE STRING,             "To hold '.txt' from inpfile&lt;/P&gt;&lt;P&gt;   GV_TCNT TYPE I,                          "Total record count&lt;/P&gt;&lt;P&gt;   GV_INVALID_REC TYPE I,                   "Invalide record count&lt;/P&gt;&lt;P&gt;   GV_FILE_CRT_Y_OR_NO  TYPE C.             "file created or not&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CONSTANTS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;      TCODE_MM01 LIKE TSTC-TCODE VALUE 'MM01',&lt;/P&gt;&lt;P&gt;      C_UPDATE TYPE C VALUE 'A'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;S E L E C T - O P T I O N S&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: COMMENT 1(25) TEXT-009.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: POSITION 33.&lt;/P&gt;&lt;P&gt;PARAMETER  P_WH  AS CHECKBOX DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: END OF LINE.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS   : S_MATNR  FOR MARA-MATNR.&lt;/P&gt;&lt;P&gt;PARAMETERS       : P_FWERKS LIKE MARC-WERKS OBLIGATORY,&lt;/P&gt;&lt;P&gt;                   P_TWERKS LIKE MARC-WERKS OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&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: BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: COMMENT 1(25) TEXT-004.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: POSITION 32.&lt;/P&gt;&lt;P&gt;*--Input file&lt;/P&gt;&lt;P&gt;PARAMETERS: P_IFILE LIKE RLGRAP-FILENAME. "input file&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: END OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: COMMENT 1(25) TEXT-005.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: POSITION 32.&lt;/P&gt;&lt;P&gt;*--Unix output file&lt;/P&gt;&lt;P&gt;PARAMETERS: P_OFILE LIKE RLGRAP-FILENAME LOWER CASE DEFAULT&lt;/P&gt;&lt;P&gt;               './sap_out/matextplnt'. "Output file in UNIX&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: END OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: COMMENT 1(25) TEXT-012.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: POSITION 32.&lt;/P&gt;&lt;P&gt;*--PC file ( used to create the files from internal tables)&lt;/P&gt;&lt;P&gt;PARAMETERS: P_PCFILE LIKE RLGRAP-FILENAME LOWER CASE OBLIGATORY&lt;/P&gt;&lt;P&gt;            DEFAULT 'C:\'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: END OF LINE.&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 : BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.&lt;/P&gt;&lt;P&gt;*--Session Name&lt;/P&gt;&lt;P&gt;PARAMETERS       : P_GROUP LIKE APQI-GROUPID DEFAULT 'MAT_Extension'.&lt;/P&gt;&lt;P&gt;*--Mode (like All Screen - A)&lt;/P&gt;&lt;P&gt;PARAMETERS P_MODE LIKE CTU_PARAMS-DISMODE DEFAULT 'N'.&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;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-            A T   S E L E C T I O N   S C R E E N&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF ( P_IFILE = ' ' ) AND ( S_MATNR[] IS INITIAL ).&lt;/P&gt;&lt;P&gt;    MESSAGE E000(ZI) WITH 'Please Enter the Material or Input file'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--download the data from pc file&lt;/P&gt;&lt;P&gt;  IF P_IFILE NE ' '.&lt;/P&gt;&lt;P&gt;    PERFORM VALIDATE_IN_FILE.&lt;/P&gt;&lt;P&gt;    PERFORM GET_DATA_FRM_FILE.&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;Validate selection screen entries&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM VALIDATE_SEL_SCREEN_ENTRIES.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-            A T   S E L E C T I O N   S C R E E N --- Value Request&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--F4 help for input flie&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_IFILE.&lt;/P&gt;&lt;P&gt;  PERFORM VALUE_REQUEST_FOR_PC_FILE USING P_IFILE.&lt;/P&gt;&lt;P&gt;*--F4 help for pc file&lt;/P&gt;&lt;P&gt;*AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_PCFILE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; PERFORM VALUE_REQUEST_FOR_PC_FILE USING P_PCFILE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*--F4 help for Unix file&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_OFILE.&lt;/P&gt;&lt;P&gt;  PERFORM VALUE_REQ_FOR_UNIX_FILE USING P_OFILE.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               T  O  P     O F      P A G E&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;  PERFORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;S E L E C T - O P T I O N S&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Fecth the data from the Data Base tables&lt;/P&gt;&lt;P&gt;  PERFORM GET_DATA.&lt;/P&gt;&lt;P&gt;*--Process the above data to create the final internal table&lt;/P&gt;&lt;P&gt;  PERFORM PROCESS_DATA.&lt;/P&gt;&lt;P&gt;*--Extend the data to plant&lt;/P&gt;&lt;P&gt;  PERFORM EXTEND_DATA_2_PLANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end of selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM MAT_CONV_FOR_ALL_INT_TABLES.&lt;/P&gt;&lt;P&gt;*--Success&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_SREP   LINES  GV_SCNT.&lt;/P&gt;&lt;P&gt;*--Error&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_EREP   LINES  GV_ERCNT.&lt;/P&gt;&lt;P&gt;*--Already existing&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_AVL    LINES  GV_AVL.&lt;/P&gt;&lt;P&gt;*--Input&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_MAT     LINES  GV_INREC.&lt;/P&gt;&lt;P&gt;*--Valid&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_FINAL1  LINES  GV_VALIDREC.&lt;/P&gt;&lt;P&gt;*--Duplicate&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_DUPREC  LINES  GV_DUPREC.&lt;/P&gt;&lt;P&gt;*--Marked for deletion&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_DELREC LINES  GV_MAR_DEL.&lt;/P&gt;&lt;P&gt;*--Invalid&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_INVALID LINES  GV_INVALID_REC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GV_TCNT =&lt;/P&gt;&lt;P&gt;  GV_ERCNT + GV_SCNT + GV_AVL + GV_INVALID_REC + GV_DUPREC +&lt;/P&gt;&lt;P&gt;  GV_MAR_DEL + GV_VALIDREC + GV_INREC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF  GV_TCNT NE 0.&lt;/P&gt;&lt;P&gt;*--create output PC files for each internal table&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILES_CREATION.&lt;/P&gt;&lt;P&gt;*--Create Unix file all internal tables&lt;/P&gt;&lt;P&gt;    PERFORM OUT_UNIX_FILE. "create unix file for output.&lt;/P&gt;&lt;P&gt;*--Create the report&lt;/P&gt;&lt;P&gt;    PERFORM REPORT_DIS.&lt;/P&gt;&lt;P&gt;*--Clear the contents&lt;/P&gt;&lt;P&gt;    CLEAR: IT_SREP,&lt;/P&gt;&lt;P&gt;           IT_EREP,&lt;/P&gt;&lt;P&gt;           IT_AVL,&lt;/P&gt;&lt;P&gt;           IT_MAT,&lt;/P&gt;&lt;P&gt;           IT_FINAL1,&lt;/P&gt;&lt;P&gt;           IT_DUPREC,&lt;/P&gt;&lt;P&gt;           IT_DELREC,&lt;/P&gt;&lt;P&gt;           IT_INVALID.&lt;/P&gt;&lt;P&gt;    REFRESH:&lt;/P&gt;&lt;P&gt;           IT_SREP,&lt;/P&gt;&lt;P&gt;           IT_EREP,&lt;/P&gt;&lt;P&gt;           IT_AVL,&lt;/P&gt;&lt;P&gt;           IT_MAT,&lt;/P&gt;&lt;P&gt;           IT_FINAL1,&lt;/P&gt;&lt;P&gt;           IT_DUPREC,&lt;/P&gt;&lt;P&gt;           IT_DELREC,&lt;/P&gt;&lt;P&gt;           IT_INVALID.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR 6 INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;    WRITE:/ 'No Data found for the Selection Criteria'(007).&lt;/P&gt;&lt;P&gt;    FORMAT RESET.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_data&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Fetch the data from required data base tables&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GET_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_TABIX LIKE SY-TABIX.&lt;/P&gt;&lt;P&gt;**--Material type is in BAPI structures filling.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF P_IFILE NE ' '.&lt;/P&gt;&lt;P&gt;    PERFORM CONVERT_MAT_FRM_FILE.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Ranges for the plants&lt;/P&gt;&lt;P&gt;  RANGES:R_WERKS FOR MARC-WERKS.&lt;/P&gt;&lt;P&gt;  R_WERKS-SIGN = 'I'.&lt;/P&gt;&lt;P&gt;  R_WERKS-OPTION = 'EQ'.&lt;/P&gt;&lt;P&gt;  R_WERKS-LOW = P_FWERKS.&lt;/P&gt;&lt;P&gt;  APPEND R_WERKS.&lt;/P&gt;&lt;P&gt;  R_WERKS-SIGN = 'I'.&lt;/P&gt;&lt;P&gt;  R_WERKS-OPTION = 'EQ'.&lt;/P&gt;&lt;P&gt;  R_WERKS-LOW = P_TWERKS.&lt;/P&gt;&lt;P&gt;  APPEND R_WERKS.&lt;/P&gt;&lt;P&gt;  CLEAR R_WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Fetch the data for the given selection from the DB table MARA &amp;amp; MARC&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; (General Material Data)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF P_IFILE NE ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT R~MATNR "R = MARA&lt;/P&gt;&lt;P&gt;           R~VPSTA&lt;/P&gt;&lt;P&gt;           R~MTART&lt;/P&gt;&lt;P&gt;           R~MATKL&lt;/P&gt;&lt;P&gt;           R~MBRSH&lt;/P&gt;&lt;P&gt;           R~MEINS&lt;/P&gt;&lt;P&gt;           R~GEWEI&lt;/P&gt;&lt;P&gt;           R~RAUBE&lt;/P&gt;&lt;P&gt;           R~SPART&lt;/P&gt;&lt;P&gt;           R~PRDHA&lt;/P&gt;&lt;P&gt;           R~MAGRV&lt;/P&gt;&lt;P&gt;           C~MATNR "C = MARC&lt;/P&gt;&lt;P&gt;           C~WERKS&lt;/P&gt;&lt;P&gt;           C~PSTAT&lt;/P&gt;&lt;P&gt;           C~PLIFZ&lt;/P&gt;&lt;P&gt;           C~SSQSS&lt;/P&gt;&lt;P&gt;           C~LADGR&lt;/P&gt;&lt;P&gt;           C~SERNP&lt;/P&gt;&lt;P&gt;           C~PERIV&lt;/P&gt;&lt;P&gt;           C~STAWN&lt;/P&gt;&lt;P&gt;           C~HERKL&lt;/P&gt;&lt;P&gt;           C~EKGRP&lt;/P&gt;&lt;P&gt;           C~DISMM&lt;/P&gt;&lt;P&gt;           C~DISPO&lt;/P&gt;&lt;P&gt;           C~DISLS&lt;/P&gt;&lt;P&gt;           C~LGPRO&lt;/P&gt;&lt;P&gt;           C~FHORI&lt;/P&gt;&lt;P&gt;           C~DZEIT&lt;/P&gt;&lt;P&gt;           C~BWSCL&lt;/P&gt;&lt;P&gt;           C~AWSLS&lt;/P&gt;&lt;P&gt;           C~LGFSB&lt;/P&gt;&lt;P&gt;      INTO CORRESPONDING FIELDS OF TABLE IT_TOTAL&lt;/P&gt;&lt;P&gt;      FROM  ( MARA AS R&lt;/P&gt;&lt;P&gt;               INNER JOIN MARC AS C ON C&lt;SUB&gt;MATNR = R&lt;/SUB&gt;MATNR )&lt;/P&gt;&lt;P&gt;      WHERE R~MATNR IN R_MATNR  AND&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         R~MTART IN S_MTART  AND&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            C~WERKS IN R_WERKS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IT_TOTAL.&lt;/P&gt;&lt;P&gt;      LV_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      READ TABLE IT_RMAT WITH KEY MATNR = IT_TOTAL-MATNR.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC =  0.&lt;/P&gt;&lt;P&gt;        IT_TOTAL-TLGORT = IT_RMAT-TLGORT.&lt;/P&gt;&lt;P&gt;        IT_TOTAL-SLGORT = IT_RMAT-SLGORT.&lt;/P&gt;&lt;P&gt;        MODIFY IT_TOTAL INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;      ENDIF.&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;&lt;/P&gt;&lt;P&gt;    SELECT R~MATNR "R = MARA&lt;/P&gt;&lt;P&gt;           R~VPSTA&lt;/P&gt;&lt;P&gt;           R~MTART&lt;/P&gt;&lt;P&gt;           R~MATKL&lt;/P&gt;&lt;P&gt;           R~MBRSH&lt;/P&gt;&lt;P&gt;           R~MEINS&lt;/P&gt;&lt;P&gt;           R~GEWEI&lt;/P&gt;&lt;P&gt;           R~RAUBE&lt;/P&gt;&lt;P&gt;           R~SPART&lt;/P&gt;&lt;P&gt;           R~PRDHA&lt;/P&gt;&lt;P&gt;           R~MAGRV&lt;/P&gt;&lt;P&gt;           C~MATNR "C = MARC&lt;/P&gt;&lt;P&gt;           C~WERKS&lt;/P&gt;&lt;P&gt;           C~PSTAT&lt;/P&gt;&lt;P&gt;           C~PLIFZ&lt;/P&gt;&lt;P&gt;           C~SSQSS&lt;/P&gt;&lt;P&gt;           C~LADGR&lt;/P&gt;&lt;P&gt;           C~SERNP&lt;/P&gt;&lt;P&gt;           C~PERIV&lt;/P&gt;&lt;P&gt;           C~STAWN&lt;/P&gt;&lt;P&gt;           C~HERKL&lt;/P&gt;&lt;P&gt;           C~EKGRP&lt;/P&gt;&lt;P&gt;           C~DISMM&lt;/P&gt;&lt;P&gt;           C~DISPO&lt;/P&gt;&lt;P&gt;           C~DISLS&lt;/P&gt;&lt;P&gt;           C~LGPRO&lt;/P&gt;&lt;P&gt;           C~FHORI&lt;/P&gt;&lt;P&gt;           C~DZEIT&lt;/P&gt;&lt;P&gt;           C~BWSCL&lt;/P&gt;&lt;P&gt;           C~AWSLS&lt;/P&gt;&lt;P&gt;           C~LGFSB&lt;/P&gt;&lt;P&gt;      INTO CORRESPONDING FIELDS OF TABLE IT_TOTAL&lt;/P&gt;&lt;P&gt;      FROM  ( MARA AS R&lt;/P&gt;&lt;P&gt;               INNER JOIN MARC AS C ON C&lt;SUB&gt;MATNR = R&lt;/SUB&gt;MATNR )&lt;/P&gt;&lt;P&gt;      WHERE R~MATNR IN S_MATNR  AND&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         R~MTART IN S_MTART  AND&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            C~WERKS IN R_WERKS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.  "  if P_IFILE ne ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_TOTAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT IT_TOTAL BY WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IT_FINAL[]  = IT_TOTAL[].&lt;/P&gt;&lt;P&gt;    IT_TPLANT[] = IT_TOTAL[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT IT_FINAL  BY WERKS.&lt;/P&gt;&lt;P&gt;    SORT IT_TPLANT BY WERKS.&lt;/P&gt;&lt;P&gt;*Logic 1&lt;/P&gt;&lt;P&gt;*--Delete all entries having the plant value equal to 'to plant' value&lt;/P&gt;&lt;P&gt;*--So, IT_FINAL have only from plant data. But in which some data&lt;/P&gt;&lt;P&gt;*--already in 'to plant'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DELETE IT_FINAL WHERE WERKS = P_TWERKS.&lt;/P&gt;&lt;P&gt;*Logic 2&lt;/P&gt;&lt;P&gt;*--Delete all entries having the plant value equal to 'from plant' value&lt;/P&gt;&lt;P&gt;    DELETE IT_TPLANT WHERE WERKS = P_FWERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF NOT IT_FINAL[] IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SORT IT_FINAL BY MATNR WERKS.&lt;/P&gt;&lt;P&gt;    SORT IT_TPLANT BY MATNR WERKS.&lt;/P&gt;&lt;P&gt;*Logic 3&lt;/P&gt;&lt;P&gt;*--Delete all the material from the 'IT_FINAL', which is already&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; extended to 'to plnat'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; In Logic 1 and Logic 2, just deleted the materials having the plant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; value equal same. Here 'IT_FINAL' contains materials of 'from plant'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; only,because 'to plant' materials have been deleted in the  'Logic1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; But it contains the materials already extended to 'to plant', So we&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Need to delete those. And it is done in the below Logic. From now&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 'IT_FINAL table contains materials that are to be extended.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; (Already extended materials have been deleted)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT IT_TPLANT.&lt;/P&gt;&lt;P&gt;      READ TABLE IT_FINAL&lt;/P&gt;&lt;P&gt;           WITH KEY MATNR = IT_TPLANT-MATNR&lt;/P&gt;&lt;P&gt;                    WERKS = P_FWERKS&lt;/P&gt;&lt;P&gt;                    BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      LV_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;*--continue the process. This materil to be extend for other views&lt;/P&gt;&lt;P&gt;        IF IT_FINAL-PSTAT = IT_TPLANT-PSTAT.&lt;/P&gt;&lt;P&gt;          IT_AVL-MATNR   = IT_TPLANT-MATNR.&lt;/P&gt;&lt;P&gt;          IT_AVL-WERKS   = P_TWERKS.&lt;/P&gt;&lt;P&gt;          IT_AVL-MTART   = IT_TPLANT-MTART.&lt;/P&gt;&lt;P&gt;          IT_AVL-MSG     = 'Material already in plant'.&lt;/P&gt;&lt;P&gt;          IT_AVL-MSGTYP = 'E'.&lt;/P&gt;&lt;P&gt;          APPEND IT_AVL.&lt;/P&gt;&lt;P&gt;          CLEAR IT_AVL.&lt;/P&gt;&lt;P&gt;          DELETE IT_FINAL INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;          CLEAR IT_FINAL.&lt;/P&gt;&lt;P&gt;*--If the material already exist in the target plant, check for the&lt;/P&gt;&lt;P&gt;*--warehouse view. If only warehoues view does not exist and checked&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; warehouse not required, then consider that the record is exist&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;in target plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        ELSEIF IT_FINAL-PSTAT CA 'S' AND IT_TPLANT-PSTAT NA 'S'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If warehouse view does not require, then no need to copy again&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          IF P_WH = 'X'.&lt;/P&gt;&lt;P&gt;            IT_AVL-MATNR   = IT_TPLANT-MATNR.&lt;/P&gt;&lt;P&gt;            IT_AVL-WERKS   = P_TWERKS.&lt;/P&gt;&lt;P&gt;            IT_AVL-MTART   = IT_TPLANT-MTART.&lt;/P&gt;&lt;P&gt;            IT_AVL-MSG     = 'Material already in plant'.&lt;/P&gt;&lt;P&gt;            IT_AVL-MSGTYP = 'E'.&lt;/P&gt;&lt;P&gt;            APPEND IT_AVL.&lt;/P&gt;&lt;P&gt;            CLEAR IT_AVL.&lt;/P&gt;&lt;P&gt;            DELETE IT_FINAL INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;            CLEAR IT_FINAL.&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;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Logic 4 ( Get the data from MARD, MVKE, MBEW and MAKT)&lt;/P&gt;&lt;P&gt;  IF NOT IT_FINAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;*--Get the data from DB tabel MVKE (Sales Data for Material)&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; for all the materials in 'IT_FINAL'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT&lt;/P&gt;&lt;P&gt;         MATNR&lt;/P&gt;&lt;P&gt;         VKORG&lt;/P&gt;&lt;P&gt;         VTWEG&lt;/P&gt;&lt;P&gt;         VMSTA&lt;/P&gt;&lt;P&gt;         VMSTD&lt;/P&gt;&lt;P&gt;         DWERK&lt;/P&gt;&lt;P&gt;         KONDM&lt;/P&gt;&lt;P&gt;         PRODH&lt;/P&gt;&lt;P&gt;         MTPOS&lt;/P&gt;&lt;P&gt;         FROM  MVKE&lt;/P&gt;&lt;P&gt;         INTO  TABLE INT_MVKE&lt;/P&gt;&lt;P&gt;         FOR   ALL ENTRIES IN IT_FINAL&lt;/P&gt;&lt;P&gt;         WHERE MATNR = IT_FINAL-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Get the data from DB table MBEW (Material Valuation)&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; for all the materials in 'IT_FINAL'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT&lt;/P&gt;&lt;P&gt;        MATNR&lt;/P&gt;&lt;P&gt;        VPRSV&lt;/P&gt;&lt;P&gt;        STPRS&lt;/P&gt;&lt;P&gt;        BKLAS&lt;/P&gt;&lt;P&gt;        ZPLD1&lt;/P&gt;&lt;P&gt;        ZPLD2&lt;/P&gt;&lt;P&gt;        FROM MBEW&lt;/P&gt;&lt;P&gt;        INTO TABLE INT_MBEW&lt;/P&gt;&lt;P&gt;        FOR ALL ENTRIES IN IT_FINAL&lt;/P&gt;&lt;P&gt;        WHERE MATNR = IT_FINAL-MATNR AND&lt;/P&gt;&lt;P&gt;              BWKEY = IT_FINAL-WERKS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Start of change by Hema on 09/21/06&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Since basic view is not required to copy, no need description also&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*--Get the data from DB table MAKT (Material Descriptions)&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; for all the materials in 'IT_FINAL'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SELECT MATNR&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          MAKTX&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          FROM MAKT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          INTO CORRESPONDING FIELDS OF TABLE INT_MAT_DES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          FOR ALL ENTRIES IN IT_FINAL&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          WHERE MATNR =  IT_FINAL-MATNR AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                SPRAS =  SY-LANGU.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of change by Hema on 09/21/06&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*--Get the warehouse data.&lt;/P&gt;&lt;P&gt;    SELECT MATNR&lt;/P&gt;&lt;P&gt;           LTKZA&lt;/P&gt;&lt;P&gt;           LTKZE&lt;/P&gt;&lt;P&gt;           LGBKZ&lt;/P&gt;&lt;P&gt;           INTO CORRESPONDING FIELDS OF TABLE INT_WAREH&lt;/P&gt;&lt;P&gt;           FROM MLGN&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN IT_FINAL&lt;/P&gt;&lt;P&gt;           WHERE MATNR = IT_FINAL-MATNR.&lt;/P&gt;&lt;P&gt;*--&lt;/P&gt;&lt;P&gt;    SELECT  SINGLE * FROM T130M&lt;/P&gt;&lt;P&gt;            INTO WA_T130M&lt;/P&gt;&lt;P&gt;            WHERE TCODE = GV_TRANS_CODE.&lt;/P&gt;&lt;P&gt;*--Sort the internal table by material&lt;/P&gt;&lt;P&gt;    SORT INT_MARD     BY MATNR WERKS.&lt;/P&gt;&lt;P&gt;    SORT INT_MVKE     BY MATNR.&lt;/P&gt;&lt;P&gt;    SORT INT_MBEW     BY MATNR.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SORT INT_MAT_DES  BY MATNR.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SORT INT_WAREH     BY MATNR.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  process_data&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Fill the final internal with data from all the internal tables&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM PROCESS_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_LINES TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Logic 5: Fill the 'IT_FINAL' table from the 'int_mard', 'int_mvke'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'int_mat_des' and int_mbew' as follows.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT IT_FINAL.&lt;/P&gt;&lt;P&gt;*--Copy Target storage locaction to Prod.Stor.Loc and stor.Loc.for EP&lt;/P&gt;&lt;P&gt;    IT_FINAL-LGPRO = IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;    IT_FINAL-LGFSB = IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE INT_MVKE WITH KEY MATNR = IT_FINAL-MATNR&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;      IT_FINAL-VKORG = INT_MVKE-VKORG.&lt;/P&gt;&lt;P&gt;      IT_FINAL-VTWEG = INT_MVKE-VTWEG.&lt;/P&gt;&lt;P&gt;      IT_FINAL-VMSTA = INT_MVKE-VMSTA.&lt;/P&gt;&lt;P&gt;      IT_FINAL-VMSTD = INT_MVKE-VMSTD.&lt;/P&gt;&lt;P&gt;      IT_FINAL-DWERK = INT_MVKE-DWERK.&lt;/P&gt;&lt;P&gt;      IT_FINAL-KONDM = INT_MVKE-KONDM.&lt;/P&gt;&lt;P&gt;      IT_FINAL-PRODH = INT_MVKE-PRODH.&lt;/P&gt;&lt;P&gt;      IT_FINAL-MTPOS = INT_MVKE-MTPOS.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   READ TABLE INT_MAT_DES WITH KEY MATNR = IT_FINAL-MATNR&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                BINARY SEARCH.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IT_FINAL-MAKTX = INT_MAT_DES-MAKTX.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE INT_MBEW WITH KEY MATNR = IT_FINAL-MATNR&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;      IT_FINAL-VPRSV = INT_MBEW-VPRSV.&lt;/P&gt;&lt;P&gt;      IT_FINAL-STPRS = INT_MBEW-STPRS.&lt;/P&gt;&lt;P&gt;      IT_FINAL-BKLAS = INT_MBEW-BKLAS.&lt;/P&gt;&lt;P&gt;      IT_FINAL-ZPLD1 = INT_MBEW-ZPLD1.&lt;/P&gt;&lt;P&gt;      IT_FINAL-ZPLD2 = INT_MBEW-ZPLD2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE INT_WAREH WITH KEY MATNR = IT_FINAL-MATNR&lt;/P&gt;&lt;P&gt;                            BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;      IT_FINAL-LGNUM = INT_WAREH-LGNUM.&lt;/P&gt;&lt;P&gt;      IT_FINAL-LTKZA = INT_WAREH-LTKZA.&lt;/P&gt;&lt;P&gt;      IT_FINAL-LTKZE = INT_WAREH-LTKZE.&lt;/P&gt;&lt;P&gt;      IT_FINAL-LGBKZ = INT_WAREH-LGBKZ.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    MODIFY IT_FINAL&lt;/P&gt;&lt;P&gt;           TRANSPORTING&lt;/P&gt;&lt;P&gt;                        VKORG&lt;/P&gt;&lt;P&gt;                        VTWEG&lt;/P&gt;&lt;P&gt;                        VMSTA&lt;/P&gt;&lt;P&gt;                        VMSTD&lt;/P&gt;&lt;P&gt;                        LGPRO&lt;/P&gt;&lt;P&gt;                        LGFSB&lt;/P&gt;&lt;P&gt;                        DWERK&lt;/P&gt;&lt;P&gt;                        KONDM&lt;/P&gt;&lt;P&gt;                        PRODH&lt;/P&gt;&lt;P&gt;                        MTPOS&lt;/P&gt;&lt;P&gt;                        MAKTX&lt;/P&gt;&lt;P&gt;                        VPRSV&lt;/P&gt;&lt;P&gt;                        STPRS&lt;/P&gt;&lt;P&gt;                        BKLAS&lt;/P&gt;&lt;P&gt;                        ZPLD1&lt;/P&gt;&lt;P&gt;                        ZPLD2&lt;/P&gt;&lt;P&gt;                        LGNUM&lt;/P&gt;&lt;P&gt;                        LTKZA&lt;/P&gt;&lt;P&gt;                        LTKZE&lt;/P&gt;&lt;P&gt;                        LGBKZ.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " process_data&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  value_request_for_pc_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--F4 help for the file names.&lt;/P&gt;&lt;P&gt;FORM VALUE_REQUEST_FOR_PC_FILE  USING  P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      PROGRAM_NAME  = SY-CPROG&lt;/P&gt;&lt;P&gt;      DYNPRO_NUMBER = SY-DYNNR&lt;/P&gt;&lt;P&gt;      FIELD_NAME    = ' '&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      FILE_NAME     = P_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " value_request_for_pc_file&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  extend_data_2_plant&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Use the final internal table to extend the material from one plant 2&lt;/P&gt;&lt;P&gt;*--another using the following logic which involved in 'four performs'&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM EXTEND_DATA_2_PLANT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF INT_VIEWS OCCURS 0.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE MBILDTAB.&lt;/P&gt;&lt;P&gt;  DATA  END OF INT_VIEWS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_FINAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IT_FINAL.&lt;/P&gt;&lt;P&gt;      GV_MTART = IT_FINAL-MTART.&lt;/P&gt;&lt;P&gt;*--Get the 32 char Lenth Material number&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     PERFORM MATERIAL_CON USING IT_FINAL-MATNR.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CALL FUNCTION 'CONVERSION_EXIT_MATN2_OUTPUT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          INPUT  = IT_FINAL-MATNR&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          OUTPUT = GV_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Get the views for the current material&lt;/P&gt;&lt;P&gt;      PERFORM GET_THE_VIEWS_4_MAT.&lt;/P&gt;&lt;P&gt;*--Fill bdctable for all view available in 'copy from material'&lt;/P&gt;&lt;P&gt;      PERFORM CREATE_DATA_FOR_VIEWS.&lt;/P&gt;&lt;P&gt;*--Use the above structures and call the 'MM01' to extend the material&lt;/P&gt;&lt;P&gt;      PERFORM EXTEND_MAT_2_PLANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR: GV_FIRST_VIEW, GV_NXT_VIEW,  GV_MATNR.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*--close the session if open&lt;/P&gt;&lt;P&gt;    IF GV_SES_OPEN EQ 'X'.&lt;/P&gt;&lt;P&gt;      PERFORM CLOSE_GRP.&lt;/P&gt;&lt;P&gt;      SKIP 1.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Session Created', 40 P_GROUP COLOR 4.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    SKIP 2.&lt;/P&gt;&lt;P&gt;    WRITE:/5 TEXT-010 COLOR 4.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   'No Data exists for the given selection'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_EREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_EREP.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERSION_EXIT_MATN2_OUTPUT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          INPUT  = IT_EREP-MATNR&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          OUTPUT = IT_EREP-MATNR.&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;      ELSE.&lt;/P&gt;&lt;P&gt;        MODIFY IT_EREP.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " extend_data_2_plant&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_the_views_4_mat&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Get the views for current material&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GET_THE_VIEWS_4_MAT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_BILDSEQUENZ   TYPE T133A-BILDS,&lt;/P&gt;&lt;P&gt;        LV_PSTAT LIKE T134-PSTAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: T130M,&lt;/P&gt;&lt;P&gt;         LV_BILDSEQUENZ,&lt;/P&gt;&lt;P&gt;         IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Get the Build sequece for particular Material type&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BILDSEQUENZ_IDENTIFY'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;     BRANCHE                = IT_FINAL-MBRSH&lt;/P&gt;&lt;P&gt;     MATERIALART            = IT_FINAL-MTART&lt;/P&gt;&lt;P&gt;     TCODE_REF              = WA_T130M-TRREF&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     KZRFB                  = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;P&gt;     BILDSEQUENZ            = LV_BILDSEQUENZ&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     KZ_BILDS_CHANGED       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     WRONG_CALL             = 1&lt;/P&gt;&lt;P&gt;     NOT_FOUND              = 2&lt;/P&gt;&lt;P&gt;     OTHERS                 = 3&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;*--Get the actual number views for the current material will stored&lt;/P&gt;&lt;P&gt;*--in the internal table 'IT_XBILDTAB'.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'SELECTION_VIEWS_FIND'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        BILDSEQUENZ     = LV_BILDSEQUENZ&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PFLEGESTATUS    = IT_FINAL-VPSTA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PFLEGESTATUS    = IT_FINAL-PSTAT&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        BILDTAB         = IT_XBILDTAB&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        CALL_WRONG      = 1&lt;/P&gt;&lt;P&gt;        EMPTY_SELECTION = 2&lt;/P&gt;&lt;P&gt;        OTHERS          = 3.&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;*--Build actual table for view sequence&lt;/P&gt;&lt;P&gt;  SELECT SINGLE PSTAT FROM T134&lt;/P&gt;&lt;P&gt;                INTO LV_PSTAT&lt;/P&gt;&lt;P&gt;                WHERE MTART = GV_MTART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'SELECTION_VIEWS_FIND'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      BILDSEQUENZ     = '01'&lt;/P&gt;&lt;P&gt;      PFLEGESTATUS    = LV_PSTAT&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      BILDTAB         = IT_T134&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      CALL_WRONG      = 1&lt;/P&gt;&lt;P&gt;      EMPTY_SELECTION = 2&lt;/P&gt;&lt;P&gt;      OTHERS          = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_XBILDTAB[] IS INITIAL.&lt;/P&gt;&lt;P&gt;*--Delete the Basic(SP01),&lt;/P&gt;&lt;P&gt;*--Classification(SP02)&lt;/P&gt;&lt;P&gt;*--Sales: Sales Organization Data(SP03)&lt;/P&gt;&lt;P&gt;*--Sales: General/Plant Data(SP04)&lt;/P&gt;&lt;P&gt;*--Sales Text(SP05)&lt;/P&gt;&lt;P&gt;*--Production Resources and Tools(SP12) which are not required&lt;/P&gt;&lt;P&gt;    LOOP AT IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;      CASE IT_XBILDTAB-GUIFU.&lt;/P&gt;&lt;P&gt;        WHEN 'SP01'.&lt;/P&gt;&lt;P&gt;          DELETE IT_XBILDTAB." WITH KEY GUIFU = 'SP01'.&lt;/P&gt;&lt;P&gt;        WHEN 'SP02'.&lt;/P&gt;&lt;P&gt;          DELETE IT_XBILDTAB." WITH KEY GUIFU = 'SP02'.&lt;/P&gt;&lt;P&gt;        WHEN 'SP03'.&lt;/P&gt;&lt;P&gt;          DELETE IT_XBILDTAB." WITH KEY GUIFU = 'SP03'.&lt;/P&gt;&lt;P&gt;        WHEN 'SP04'.&lt;/P&gt;&lt;P&gt;          DELETE IT_XBILDTAB." WITH KEY GUIFU = 'SP04'.&lt;/P&gt;&lt;P&gt;        WHEN 'SP05'.&lt;/P&gt;&lt;P&gt;          DELETE IT_XBILDTAB." WITH KEY GUIFU = 'SP05'.&lt;/P&gt;&lt;P&gt;        WHEN 'SP12'.&lt;/P&gt;&lt;P&gt;          DELETE IT_XBILDTAB." WITH KEY GUIFU = 'SP12'.&lt;/P&gt;&lt;P&gt;        WHEN 'SP14'.&lt;/P&gt;&lt;P&gt;*--If 'do not copy warehouse' is ticked, delete the view from table.&lt;/P&gt;&lt;P&gt;*--problem is, if that view is last view then Save problem will&lt;/P&gt;&lt;P&gt;*--come in the BDC.&lt;/P&gt;&lt;P&gt;          IF P_WH EQ 'X'.&lt;/P&gt;&lt;P&gt;            DELETE IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Get the first view of the material to select that view from Views&lt;/P&gt;&lt;P&gt;*-- List of the MM01&lt;/P&gt;&lt;P&gt;  LOOP AT IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;    READ TABLE IT_T134 WITH KEY GUIFU = IT_XBILDTAB-GUIFU.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;      GV_FIRST_VIEW = SY-TABIX.&lt;/P&gt;&lt;P&gt;      GV_NXT_VIEW   = IT_XBILDTAB-GUIFU.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&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_the_views_4_mat&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CREATE_DATA_FOR_VIEWS&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM CREATE_DATA_FOR_VIEWS .&lt;/P&gt;&lt;P&gt;  DATA: LV_LAST_VIEW_NO TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_XBILDTAB LINES LV_LAST_VIEW_NO.&lt;/P&gt;&lt;P&gt;  LOOP AT IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;    IF LV_LAST_VIEW_NO EQ SY-TABIX.&lt;/P&gt;&lt;P&gt;      MOVE IT_XBILDTAB-GUIFU TO GV_LAST.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Hit the Basic view in the 'View selection Pop up', i.e very beginning&lt;/P&gt;&lt;P&gt;*--in Tcode: MM01. So that, only views which already in (Copy from)&lt;/P&gt;&lt;P&gt;*--Material can extend to the Target Plant. Int.,table IT_XBILDTAB&lt;/P&gt;&lt;P&gt;*--contains these views. Here flexibilty is that, not all views are&lt;/P&gt;&lt;P&gt;*--extended, whether the 'copy from material' contains or not.&lt;/P&gt;&lt;P&gt;*--i.e Dynamic selection of views.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--So in order to ease the Dynamic selection (of views), first&lt;/P&gt;&lt;P&gt;*--Hit the Basic view in the 'View selection Pop up'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM FILL_BASIC_VIEW.&lt;/P&gt;&lt;P&gt;  PERFORM FILL_ORG_DATA USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_XBILDTAB.&lt;/P&gt;&lt;P&gt;    MOVE IT_XBILDTAB-GUIFU TO GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE IT_XBILDTAB-GUIFU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Purchasing view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP06'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_PURCH_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Purchase Order Text View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP07'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_PURCH_ORD_TEXT USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --MRP1 View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP08'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM FILL_MRP1_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --MRP2 View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP09'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_MRP2_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Forecast View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP10'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_FORECAST_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'SP11'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        IF  GV_FLG NE 'Y'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM FILL_WORKSCHED_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        ENDIF.&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;     --General Plant Data / Storage View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP13'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_PLANT_STRGE_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Warehouse Management View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP14'.&lt;/P&gt;&lt;P&gt;        IF P_WH &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   -- If the 'do not warehouse' check box unchecked on sele screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          PERFORM FILL_WAREHOUSE_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Quality Management View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP15'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_QUALITY_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     -- Accounting View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP16'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_ACCOUNTING_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Costing View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP17'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_COSTING_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --Plant/Storage Location Stock View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WHEN 'SP18'.&lt;/P&gt;&lt;P&gt;        PERFORM FILL_PLANT_ST_LOC_STK_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    CLEAR GV_OKCODE.&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CREATE_DATA_FOR_VIEWS&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_basic_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_BASIC_VIEW .&lt;/P&gt;&lt;P&gt;  DATA FIELD_STR(40).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0060'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                'RMMG1-MATNR'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '/00'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'RMMG1-MATNR'&lt;/P&gt;&lt;P&gt;                                GV_MATNR."nt_final-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'RMMG1_REF-MATNR'&lt;/P&gt;&lt;P&gt;                                 GV_MATNR."IT_FINAL-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0070'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                'MSICHTAUSW-DYTXT(01)'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=ENTR'.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'MSICHTAUSW-KZSEL(' GV_FIRST_VIEW ')' INTO FIELD_STR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING FIELD_STR 'X'.&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.                    " fill_basic_view&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_purch_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Purchasing view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_ORG_DATA USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0080'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                'RMMG1_REF-WERKS'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'RMMG1-WERKS'&lt;/P&gt;&lt;P&gt;                                 P_TWERKS.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'RMMG1_REF-WERKS'&lt;/P&gt;&lt;P&gt;                                  P_FWERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_NXT_VIEW EQ 'SP08'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1-LGORT'&lt;/P&gt;&lt;P&gt;                                  IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1_REF-LGORT'&lt;/P&gt;&lt;P&gt;                                  IT_FINAL-SLGORT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_org_data&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_purch_ord_text&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Purchase order text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_PURCH_ORD_TEXT USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP07'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3050'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&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.                    " fill_purch_ord_text&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_MRP1_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; MRP1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_MRP1_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP08'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_NXT_VIEW EQ 'SP06'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0081'.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1-LGORT'&lt;/P&gt;&lt;P&gt;                                   IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1_REF-LGORT'&lt;/P&gt;&lt;P&gt;                                   IT_FINAL-SLGORT.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTR'.&lt;/P&gt;&lt;P&gt;    CLEAR GV_NXT_VIEW.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3006'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'MARC-LGPRO'&lt;/P&gt;&lt;P&gt;                                IT_FINAL-LGPRO.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'MARC-LGFSB'&lt;/P&gt;&lt;P&gt;                                IT_FINAL-LGFSB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_MRP1_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_MRP2_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Fill MRP2 View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_MRP2_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP09'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3006'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_MRP2_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_forecast_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Forecast view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_FORECAST_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP10'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_NXT_VIEW EQ 'SP06'.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0081'.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1-LGORT'&lt;/P&gt;&lt;P&gt;                                   IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1_REF-LGORT'&lt;/P&gt;&lt;P&gt;                                   IT_FINAL-SLGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTR'.&lt;/P&gt;&lt;P&gt;    CLEAR GV_NXT_VIEW.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_forecast_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_plant_strge_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Plant Storage view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_PLANT_STRGE_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP13'.&lt;/P&gt;&lt;P&gt;  IF GV_NXT_VIEW EQ 'SP06'.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0081'.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1-LGORT'&lt;/P&gt;&lt;P&gt;                                   IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'RMMG1_REF1-LGORT'&lt;/P&gt;&lt;P&gt;                                   IT_FINAL-SLGORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTR'.&lt;/P&gt;&lt;P&gt;    CLEAR GV_NXT_VIEW.&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 BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_plant_strge_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_warehouse_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Wareshoue view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_WAREHOUSE_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=SP14'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '0081'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=ENTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&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.                    " fill_warehouse_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_quality_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Quality View&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_QUALITY_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                    '=SP15'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;P&gt;*--Hit the Inspection.Setup Screen&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE' '=PB01'.&lt;/P&gt;&lt;P&gt;*--Press continue on the Inspection.Setup Screen&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLQPLS' '0100'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE' '=WEIT'.&lt;/P&gt;&lt;P&gt;*--Back to quality screen&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD     USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&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.                    " fill_quality_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_accounting_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Accouting view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_ACCOUNTING_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP16'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3002'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&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.                    " fill_accounting_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_costing_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Costing view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_COSTING_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP17'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                        '=BU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_costing_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_plant_st_loc_stk_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Plant Storage location view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_PLANT_ST_LOC_STK_VIEW USING GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_plant_st_loc_stk_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_dynpro&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Populate the BDCDATA for the Screen&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;  CLEAR IT_BDCDATA.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-PROGRAM  = PROGRAM.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-DYNPRO   = DYNPRO.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND IT_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.               "bdc_dynpro&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_field&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Populate the BDCDATA for the field&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;  IF FVAL &amp;lt;&amp;gt; SPACE.&lt;/P&gt;&lt;P&gt;    CLEAR IT_BDCDATA.&lt;/P&gt;&lt;P&gt;    IT_BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;    IT_BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;    APPEND IT_BDCDATA.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.             "bdc_field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  EXTEND_MAT_2_PLANT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM EXTEND_MAT_2_PLANT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_CHECK,&lt;/P&gt;&lt;P&gt;        LV_MSG1(480),&lt;/P&gt;&lt;P&gt;        LV_MSG2(120).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION TCODE_MM01 USING IT_BDCDATA&lt;/P&gt;&lt;P&gt;                   MODE   P_MODE&lt;/P&gt;&lt;P&gt;                   UPDATE C_UPDATE&lt;/P&gt;&lt;P&gt;                   MESSAGES INTO IT_MESSTAB.&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;    IF GV_CNTR EQ 1.&lt;/P&gt;&lt;P&gt;      PERFORM OPEN-SESSION.&lt;/P&gt;&lt;P&gt;      GV_SES_OPEN = 'X'.&lt;/P&gt;&lt;P&gt;      CLEAR GV_CNTR.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        TCODE     = TCODE_MM01&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        DYNPROTAB = IT_BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM ERROR_MSG.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IT_SREP-MATNR   = GV_MATNR.&lt;/P&gt;&lt;P&gt;    IT_SREP-MTART   = IT_FINAL-MTART.&lt;/P&gt;&lt;P&gt;    IT_SREP-WERKS   = P_TWERKS.&lt;/P&gt;&lt;P&gt;    IT_SREP-MSG     = 'Material Extended'.&lt;/P&gt;&lt;P&gt;    IT_SREP-MSGTYP  = 'S'.&lt;/P&gt;&lt;P&gt;    APPEND IT_SREP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: IT_BDCDATA, IT_MESSTAB.&lt;/P&gt;&lt;P&gt;  CLEAR:  IT_BDCDATA, IT_MESSTAB, GV_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " EXTEND_MAT_2_PLANT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  OUT_UNIX_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Based on the internal table data availability, that internal table&lt;/P&gt;&lt;P&gt;*--will passed to the Fun Mod 'GUI_DOWNLOAD' for creating the xl file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM OUT_UNIX_FILE.&lt;/P&gt;&lt;P&gt;  DATA:LV_REC(8) TYPE C.&lt;/P&gt;&lt;P&gt;  CONCATENATE P_OFILE SY-DATUM SY-UZEIT INTO P_OFILE.&lt;/P&gt;&lt;P&gt;  CONDENSE P_OFILE NO-GAPS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  OPEN DATASET P_OFILE FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    WRITE GV_INREC TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Input Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_DUPREC TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Duplicate Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_AVL TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Existing Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_MAR_DEL TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Records Marked for deletion:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_INVALID_REC TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Invalid Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_VALIDREC TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Valid Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_SCNT TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Success Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE GV_ERCNT TO LV_REC.&lt;/P&gt;&lt;P&gt;    CONCATENATE 'Total Error Records:' LV_REC INTO GV_MSG.&lt;/P&gt;&lt;P&gt;    TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;    CLEAR: LV_REC, GV_MSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   --Input Records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT IT_MAT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Input Records *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_MAT.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_MAT TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&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;   --Aready available records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT IT_AVL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Available Records *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_AVL.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_AVL TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Duplicate Records&lt;/P&gt;&lt;P&gt;    IF NOT IT_DUPREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Duplicate Records *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_DUPREC.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_DUPREC TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Marterial Marked for deletion.&lt;/P&gt;&lt;P&gt;    IF NOT IT_DELREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Material Marked for deletion *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_DELREC.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_DELREC TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Invalid Material&lt;/P&gt;&lt;P&gt;    IF NOT IT_INVALID[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Invalid Materials *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_INVALID.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_INVALID TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   -- Valid Records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT IT_FINAL1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Valid Records *******:' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_FINAL1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        concatenate P_TWERKS IT_FINAL-matnr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    IT_FINAL-tlgort into gv_msg.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&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;   --Success Records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT IT_SREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Successful Materials *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_SREP.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_SREP TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&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;   --Error Records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT IT_EREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      WRITE '******* Error Records List *******' TO GV_MSG.&lt;/P&gt;&lt;P&gt;      TRANSFER GV_MSG TO P_OFILE.&lt;/P&gt;&lt;P&gt;      CLEAR GV_MSG.&lt;/P&gt;&lt;P&gt;      LOOP AT IT_EREP.&lt;/P&gt;&lt;P&gt;        TRANSFER IT_EREP TO P_OFILE.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    WRITE:/5 TEXT-010, 40 P_OFILE COLOR 4.  "Output File Created i.e.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    WRITE:/5 TEXT-011, 40 P_OFILE."Output File open problem i.e. p_fileo&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;ENDFORM.                    " OUT_UNIX_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  report_dis&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--write the report output on to the screen&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM REPORT_DIS .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SKIP 1.&lt;/P&gt;&lt;P&gt;  WRITE:/5 'Material extension FROM',&lt;/P&gt;&lt;P&gt;        35  P_FWERKS,&lt;/P&gt;&lt;P&gt;        41 'TO',&lt;/P&gt;&lt;P&gt;        44  P_TWERKS.&lt;/P&gt;&lt;P&gt;  SKIP 1.&lt;/P&gt;&lt;P&gt;  WRITE:&lt;/P&gt;&lt;P&gt;        /5 'Total Records       :',  GV_INREC,&lt;/P&gt;&lt;P&gt;        /5 'Available Records   :',  GV_AVL,&lt;/P&gt;&lt;P&gt;        /5 'Duplicate Records   :',  GV_DUPREC,&lt;/P&gt;&lt;P&gt;        /5 'Invalide Records    :',  GV_INVALID_REC,&lt;/P&gt;&lt;P&gt;        /5 'Marked for deletion :',  GV_MAR_DEL,&lt;/P&gt;&lt;P&gt;        /5 'Valid Records       :',  GV_VALIDREC,&lt;/P&gt;&lt;P&gt;        /5 'Success Records     :',  GV_SCNT,&lt;/P&gt;&lt;P&gt;        /5 'Errors Records      :',  GV_ERCNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Total input records&lt;/P&gt;&lt;P&gt;  IF NOT IT_MAT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Total Input Records:', GV_INREC COLOR 2.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Material' COLOR 4.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_MAT.&lt;/P&gt;&lt;P&gt;      WRITE:/5 IT_MAT-MATNR.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Already existing records&lt;/P&gt;&lt;P&gt;  IF NOT IT_AVL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Available Records       :', GV_AVL COLOR 2.&lt;/P&gt;&lt;P&gt;    WRITE:/5(35)   'Material'  COLOR 5,&lt;/P&gt;&lt;P&gt;           42(4)   'Type'      COLOR 3,&lt;/P&gt;&lt;P&gt;           48(5)   'Plant'     COLOR 1,&lt;/P&gt;&lt;P&gt;           55(255) 'Msg' COLOR 4.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_AVL.&lt;/P&gt;&lt;P&gt;      WRITE:/5 IT_AVL-MATNR,&lt;/P&gt;&lt;P&gt;            42 IT_AVL-MTART,&lt;/P&gt;&lt;P&gt;            48 IT_AVL-WERKS,&lt;/P&gt;&lt;P&gt;            55 IT_AVL-MSG.                                  " COLOR 4.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Duplicate Records&lt;/P&gt;&lt;P&gt;  IF NOT IT_DUPREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Duplicate Records:', GV_DUPREC COLOR 3.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Material' COLOR 5.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_DUPREC.&lt;/P&gt;&lt;P&gt;      WRITE:/5 IT_DUPREC-MATNR.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Invalid records&lt;/P&gt;&lt;P&gt;  IF NOT IT_INVALID[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Invalid Records       :', GV_INVALID_REC COLOR 2.&lt;/P&gt;&lt;P&gt;    WRITE:/5(35) 'Material'  COLOR 5,&lt;/P&gt;&lt;P&gt;           42    'Plant'     COLOR 3,&lt;/P&gt;&lt;P&gt;           49    'Msg'       COLOR 4.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_INVALID.&lt;/P&gt;&lt;P&gt;      WRITE:/5 IT_INVALID-MATNR,&lt;/P&gt;&lt;P&gt;            42 IT_INVALID-WERKS,&lt;/P&gt;&lt;P&gt;            49 IT_INVALID-MSG.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Materials Marked for deletion&lt;/P&gt;&lt;P&gt;  IF NOT IT_DELREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Material for deletion', GV_MAR_DEL COLOR 5.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Material' COLOR 4.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_DELREC.&lt;/P&gt;&lt;P&gt;      WRITE:/5 IT_DELREC-MATNR.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--write the successfully extended records on to the screen&lt;/P&gt;&lt;P&gt;  IF NOT IT_SREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Successful Materials   :', GV_SCNT COLOR 3.&lt;/P&gt;&lt;P&gt;    WRITE:/5(35)   'Material'  COLOR 5,&lt;/P&gt;&lt;P&gt;           42(4)   'Type'      COLOR 3,&lt;/P&gt;&lt;P&gt;           48(5)   'Plant'     COLOR 1,&lt;/P&gt;&lt;P&gt;           55(255) 'Message' COLOR 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IT_SREP.&lt;/P&gt;&lt;P&gt;      WRITE:/5  IT_SREP-MATNR,&lt;/P&gt;&lt;P&gt;             42 IT_SREP-MTART,&lt;/P&gt;&lt;P&gt;             48 IT_SREP-WERKS,&lt;/P&gt;&lt;P&gt;             55 IT_SREP-MSG.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--write the error records on to the screen&lt;/P&gt;&lt;P&gt;  IF NOT IT_EREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Errors                 :', GV_ERCNT COLOR 4.&lt;/P&gt;&lt;P&gt;    WRITE:/5(35)   'Material'  COLOR 5,&lt;/P&gt;&lt;P&gt;           42(4)   'Type'      COLOR 3,&lt;/P&gt;&lt;P&gt;           48(5)   'Plant'     COLOR 1,&lt;/P&gt;&lt;P&gt;           55(7)   'Msg Type'  COLOR 4,&lt;/P&gt;&lt;P&gt;           64(120) 'Message'   COLOR 4.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_EREP.&lt;/P&gt;&lt;P&gt;      WRITE:/5(35) IT_EREP-MATNR,&lt;/P&gt;&lt;P&gt;            42(4) IT_EREP-MTART,&lt;/P&gt;&lt;P&gt;            48(5) IT_EREP-WERKS,&lt;/P&gt;&lt;P&gt;            55(7) IT_EREP-MSGTYP,&lt;/P&gt;&lt;P&gt;            64(120) IT_EREP-MSG.                            " COLOR 4.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;**-- Valid Records&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF NOT IT_FINAL1[] IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  SKIP 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; WRITE:/5 'Valid Records :', gv_validrec COLOR 2.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WRITE:/5(35)   'Material'  COLOR 5,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          42(4)   'Type'      COLOR 3,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          48(5)   'Plant'     COLOR 1,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          55      'Src Stor loc' COLOR 3,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          69      'Tar stor loc' COLOR 5.&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;   LOOP AT IT_FINAL1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     WRITE:/5 IT_FINAL1-MATNR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           42 IT_FINAL1-MTART,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           48 IT_FINAL1-WERKS,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           59 IT_FINAL1-SLGORT,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           69 IT_FINAL1-TLGORT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " report_dis&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  top_of_page&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'Z_REPORT_HEADER'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;     TITLE         = SY-TITLE&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TITLE2        = ''&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TITLE3        = ''&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     COLOR         = 'X'&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.                    " top_of_page&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  open-session&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Creat a Session in 'SM35' for the name given in the selection screen&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM OPEN-SESSION .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  HOLDDATE = SY-DATUM - 1.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      CLIENT   = SY-MANDT&lt;/P&gt;&lt;P&gt;      GROUP    = P_GROUP&lt;/P&gt;&lt;P&gt;      USER     = SY-UNAME&lt;/P&gt;&lt;P&gt;      KEEP     = 'X'&lt;/P&gt;&lt;P&gt;      HOLDDATE = HOLDDATE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " open-session&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  close_grp&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM CLOSE_GRP .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " close_grp&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GET_DATA_FRM_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GET_DATA_FRM_FILE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: L_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  L_FILE = P_IFILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME                = L_FILE&lt;/P&gt;&lt;P&gt;      FILETYPE                = 'ASC'&lt;/P&gt;&lt;P&gt;      HAS_FIELD_SEPARATOR     = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB                = IT_MAT1&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      FILE_OPEN_ERROR         = 1&lt;/P&gt;&lt;P&gt;      FILE_READ_ERROR         = 2&lt;/P&gt;&lt;P&gt;      NO_BATCH                = 3&lt;/P&gt;&lt;P&gt;      GUI_REFUSE_FILETRANSFER = 4&lt;/P&gt;&lt;P&gt;      INVALID_TYPE            = 5&lt;/P&gt;&lt;P&gt;      NO_AUTHORITY            = 6&lt;/P&gt;&lt;P&gt;      UNKNOWN_ERROR           = 7&lt;/P&gt;&lt;P&gt;      BAD_DATA_FORMAT         = 8&lt;/P&gt;&lt;P&gt;      HEADER_NOT_ALLOWED      = 9&lt;/P&gt;&lt;P&gt;      SEPARATOR_NOT_ALLOWED   = 10&lt;/P&gt;&lt;P&gt;      HEADER_TOO_LONG         = 11&lt;/P&gt;&lt;P&gt;      UNKNOWN_DP_ERROR        = 12&lt;/P&gt;&lt;P&gt;      ACCESS_DENIED           = 13&lt;/P&gt;&lt;P&gt;      DP_OUT_OF_MEMORY        = 14&lt;/P&gt;&lt;P&gt;      DISK_FULL               = 15&lt;/P&gt;&lt;P&gt;      DP_TIMEOUT              = 16&lt;/P&gt;&lt;P&gt;      OTHERS                  = 17.&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;    MESSAGE E000(ZI) WITH 'Unable to Upload the input file'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF IT_MAT1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    MESSAGE E000(ZI) WITH 'Input file is empty'.&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.                    " GET_DATA_FRM_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  convert_mat_frm_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM CONVERT_MAT_FRM_FILE .&lt;/P&gt;&lt;P&gt;  DATA: LV_CNT TYPE I,&lt;/P&gt;&lt;P&gt;        LV_MAT(35),&lt;/P&gt;&lt;P&gt;        LV_TABIX TYPE SY-TABIX,&lt;/P&gt;&lt;P&gt;        LV_MAT1 LIKE MARC-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF IT_EXIN OCCURS 0,&lt;/P&gt;&lt;P&gt;         MATNR_INT LIKE MATERIALID-MATNR_INT,&lt;/P&gt;&lt;P&gt;         MATNR_EXT LIKE MATERIALID-MATNR_EXT,&lt;/P&gt;&lt;P&gt;        END OF IT_EXIN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH R_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_MAT1.&lt;/P&gt;&lt;P&gt;    TRANSLATE IT_MAT1-MATNR TO UPPER CASE.&lt;/P&gt;&lt;P&gt;    TRANSLATE IT_MAT1-TLGORT TO UPPER CASE.&lt;/P&gt;&lt;P&gt;    TRANSLATE IT_MAT1-SLGORT TO UPPER CASE.&lt;/P&gt;&lt;P&gt;    MODIFY IT_MAT1.&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;  IF NOT IT_MAT1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;*--Duplicate records&lt;/P&gt;&lt;P&gt;    SORT IT_MAT BY MATNR.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_MAT1.&lt;/P&gt;&lt;P&gt;      LV_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      AT NEW MATNR.&lt;/P&gt;&lt;P&gt;        CLEAR LV_CNT.&lt;/P&gt;&lt;P&gt;      ENDAT.&lt;/P&gt;&lt;P&gt;      LV_CNT = LV_CNT + 1.&lt;/P&gt;&lt;P&gt;      IF  LV_CNT &amp;gt; 1.&lt;/P&gt;&lt;P&gt;        IT_DUPREC = IT_MAT1.&lt;/P&gt;&lt;P&gt;        APPEND IT_DUPREC.&lt;/P&gt;&lt;P&gt;        IT_MAT = IT_MAT1.&lt;/P&gt;&lt;P&gt;        APPEND IT_MAT.&lt;/P&gt;&lt;P&gt;        DELETE IT_MAT1 INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;        CLEAR: IT_DUPREC, LV_TABIX.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        IT_MAT = IT_MAT1.&lt;/P&gt;&lt;P&gt;        APPEND IT_MAT.&lt;/P&gt;&lt;P&gt;      ENDIF.&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;    SELECT MATNR_INT&lt;/P&gt;&lt;P&gt;           MATNR_EXT&lt;/P&gt;&lt;P&gt;           INTO CORRESPONDING FIELDS OF TABLE IT_EXIN&lt;/P&gt;&lt;P&gt;           FROM MATERIALID&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN IT_MAT1&lt;/P&gt;&lt;P&gt;           WHERE MATNR_EXT = IT_MAT1-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT IT_MAT1.&lt;/P&gt;&lt;P&gt;      LV_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      READ TABLE IT_EXIN WITH KEY MATNR_EXT = IT_MAT1-MATNR.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;*--35 char material.&lt;/P&gt;&lt;P&gt;        IT_INVALID-MATNR = IT_MAT1-MATNR.&lt;/P&gt;&lt;P&gt;        IT_INVALID-MSG   = 'Invalid Material'.&lt;/P&gt;&lt;P&gt;        APPEND IT_INVALID.&lt;/P&gt;&lt;P&gt;        DELETE IT_MAT1 INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;        CLEAR LV_TABIX.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_EXIN[] IS INITIAL.&lt;/P&gt;&lt;P&gt;*--Get the valid records&lt;/P&gt;&lt;P&gt;    SELECT MATNR&lt;/P&gt;&lt;P&gt;       INTO CORRESPONDING FIELDS OF TABLE IT_VALID_REC&lt;/P&gt;&lt;P&gt;       FROM MARC&lt;/P&gt;&lt;P&gt;       FOR ALL ENTRIES IN IT_EXIN&lt;/P&gt;&lt;P&gt;       WHERE MATNR = IT_EXIN-MATNR_INT&lt;/P&gt;&lt;P&gt;       AND   WERKS = P_FWERKS.&lt;/P&gt;&lt;P&gt;*--Find for invalid records&lt;/P&gt;&lt;P&gt;    LOOP AT IT_EXIN.&lt;/P&gt;&lt;P&gt;      LV_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      READ TABLE IT_VALID_REC WITH KEY MATNR = IT_EXIN-MATNR_INT."18chr&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        IT_INVALID-MATNR = IT_EXIN-MATNR_EXT.               "18 CHAR&lt;/P&gt;&lt;P&gt;        IT_INVALID-WERKS = P_FWERKS.&lt;/P&gt;&lt;P&gt;        IT_INVALID-MSG = 'Material not in Source plant'.&lt;/P&gt;&lt;P&gt;        APPEND IT_INVALID.&lt;/P&gt;&lt;P&gt;        DELETE IT_RMAT INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;        CLEAR: LV_TABIX, IT_INVALID.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;*--18 Char&lt;/P&gt;&lt;P&gt;        R_MATNR-LOW     = IT_EXIN-MATNR_INT.&lt;/P&gt;&lt;P&gt;        R_MATNR-SIGN    = 'I'.&lt;/P&gt;&lt;P&gt;        R_MATNR-OPTION  = 'EQ'.&lt;/P&gt;&lt;P&gt;        APPEND R_MATNR.&lt;/P&gt;&lt;P&gt;        CLEAR R_MATNR.&lt;/P&gt;&lt;P&gt;        READ TABLE IT_MAT WITH KEY MATNR = IT_EXIN-MATNR_EXT.&lt;/P&gt;&lt;P&gt;        IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;          IT_RMAT-MATNR  = IT_EXIN-MATNR_INT.&lt;/P&gt;&lt;P&gt;          IT_RMAT-TLGORT = IT_MAT-TLGORT.&lt;/P&gt;&lt;P&gt;          IT_RMAT-SLGORT = IT_MAT-SLGORT.&lt;/P&gt;&lt;P&gt;          APPEND IT_RMAT.&lt;/P&gt;&lt;P&gt;          CLEAR IT_RMAT.&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;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*--Get the material marked for deletion&lt;/P&gt;&lt;P&gt;    SELECT MATNR&lt;/P&gt;&lt;P&gt;           LVORM&lt;/P&gt;&lt;P&gt;           INTO CORRESPONDING FIELDS OF TABLE IT_MAR_DEL&lt;/P&gt;&lt;P&gt;           FROM MARA&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN IT_EXIN&lt;/P&gt;&lt;P&gt;           WHERE MATNR = IT_EXIN-MATNR_INT&lt;/P&gt;&lt;P&gt;           AND   LVORM &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;*--Marked for deletion.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_EXIN.&lt;/P&gt;&lt;P&gt;      LV_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      READ TABLE IT_MAR_DEL WITH KEY MATNR = IT_EXIN-MATNR_INT.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;        IT_DELREC-MATNR = IT_EXIN-MATNR_EXT.&lt;/P&gt;&lt;P&gt;        APPEND IT_DELREC.&lt;/P&gt;&lt;P&gt;        DELETE IT_EXIN INDEX LV_TABIX.&lt;/P&gt;&lt;P&gt;        CLEAR: LV_TABIX, IT_DELREC.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Total Records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF R_MATNR[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    WRITE:/5 'Input file is empty'.&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;ENDFORM.                    " convert_mat_frm_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  ERROR_MSG&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ERROR_MSG .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_MSG2(120).&lt;/P&gt;&lt;P&gt;  DATA:LV_LINES LIKE SY-TABIX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE IT_MESSTAB LINES LV_LINES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE IT_MESSTAB WITH KEY MSGTYP = 'E'.&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;    READ TABLE IT_MESSTAB INDEX LV_LINES.&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; LOOP AT IT_MESSTAB.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        ID        = IT_MESSTAB-MSGID&lt;/P&gt;&lt;P&gt;        LANG      = 'E'&lt;/P&gt;&lt;P&gt;        NO        = IT_MESSTAB-MSGNR&lt;/P&gt;&lt;P&gt;        V1        = IT_MESSTAB-MSGV1&lt;/P&gt;&lt;P&gt;        V2        = IT_MESSTAB-MSGV2&lt;/P&gt;&lt;P&gt;        V3        = IT_MESSTAB-MSGV3&lt;/P&gt;&lt;P&gt;        V4        = IT_MESSTAB-MSGV4&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        MSG       = LV_MSG2&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        NOT_FOUND = 1&lt;/P&gt;&lt;P&gt;        OTHERS    = 2.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE LV_MSG2 GV_MSG1 INTO GV_MSG1 SEPARATED BY SPACE.&lt;/P&gt;&lt;P&gt;    CLEAR LV_MSG2.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDLOOP.&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;  IT_EREP-MATNR   = GV_MATNR.&lt;/P&gt;&lt;P&gt;  IT_EREP-MTART   = IT_FINAL-MTART.&lt;/P&gt;&lt;P&gt;  IT_EREP-WERKS   = P_FWERKS.&lt;/P&gt;&lt;P&gt;  IT_EREP-MSG     = GV_MSG1.&lt;/P&gt;&lt;P&gt;  IT_EREP-MSGTYP  = IT_MESSTAB-MSGTYP.&lt;/P&gt;&lt;P&gt;  APPEND IT_EREP.&lt;/P&gt;&lt;P&gt;  CLEAR IT_EREP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " ERROR_MSG&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_purch_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_GV_VIEW_CODE  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_PURCH_VIEW  USING    P_GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP06'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3006'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_purch_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_WorkSched_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_GV_VIEW_CODE  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FILL_WORKSCHED_VIEW  USING    GV_VIEW_CODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE '=' GV_VIEW_CODE INTO GV_OKCODE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 GV_OKCODE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*GV_FLG = 'Y'.&lt;/P&gt;&lt;P&gt;  PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                '=SP11'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BDC_DYNPRO      USING 'SAPLMGMM' '3000'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 'MAKT-MAKTX'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'MAKT-MAKTX'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '15-MB      BOEING'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'MARC-PERKZ'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 'P'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'MARC-PERIV'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 'GF'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'MARC-MTVFP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '02'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'MARC-WZEIT'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '90'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GV_VIEW_CODE EQ GV_LAST.&lt;/P&gt;&lt;P&gt;    PERFORM BDC_FIELD       USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&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.                    " fill_WorkSched_view&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  VALUE_REQ_FOR_UNIX_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_P_EFILE  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM VALUE_REQ_FOR_UNIX_FILE  USING   P_EFILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      DIRECTORY        = ' '&lt;/P&gt;&lt;P&gt;      FILEMASK         = ' '&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      SERVERFILE       = P_EFILE&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      CANCELED_BY_USER = 1&lt;/P&gt;&lt;P&gt;      OTHERS           = 2.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALUE_REQ_FOR_UNIX_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  VALIDATE_SEL_SCREEN_ENTRIES&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM VALIDATE_SEL_SCREEN_ENTRIES .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: LV_TWERKS LIKE MARC-WERKS,&lt;/P&gt;&lt;P&gt;        LV_FWERKS LIKE MARC-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF P_TWERKS &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE WERKS INTO LV_TWERKS&lt;/P&gt;&lt;P&gt;    FROM T001W&lt;/P&gt;&lt;P&gt;    WHERE WERKS EQ P_TWERKS.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE E000 WITH 'Enter Valid Target Plant'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF P_FWERKS &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE WERKS INTO LV_FWERKS&lt;/P&gt;&lt;P&gt;     FROM T001W&lt;/P&gt;&lt;P&gt;     WHERE WERKS EQ P_FWERKS.&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE E000 WITH 'Enter Valid Source Plant'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATE_SEL_SCREEN_ENTRIES&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  PC_FILES_CREATION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM PC_FILES_CREATION .&lt;/P&gt;&lt;P&gt;  DATA L_FILE TYPE STRING.&lt;/P&gt;&lt;P&gt;*--Input file&lt;/P&gt;&lt;P&gt;  IF NOT IT_MAT[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Input' '.'&lt;/P&gt;&lt;P&gt;         GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_MAT USING L_FILE.&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;      SKIP 1.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Input file creatd @:', 40 L_FILE COLOR 4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    GV_FILE_CRT_Y_OR_NO = ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Available records&lt;/P&gt;&lt;P&gt;  IF NOT IT_AVL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Available' '.'&lt;/P&gt;&lt;P&gt;GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_AVL USING L_FILE.&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Available recs file created @:', 40 L_FILE COLOR 4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;      GV_FILE_CRT_Y_OR_NO = ' '.&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;*--Duplicate records&lt;/P&gt;&lt;P&gt;  IF NOT IT_DUPREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Dup_rec' '.'&lt;/P&gt;&lt;P&gt;  GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_DUPREC USING L_FILE.&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Duplicate records file created @:', 40 L_FILE COLOR 4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;      GV_FILE_CRT_Y_OR_NO = ' '.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Invalid records&lt;/P&gt;&lt;P&gt;  IF NOT IT_INVALID[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Invalid' '.'&lt;/P&gt;&lt;P&gt;   GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_INVALID USING L_FILE .&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Invalid records file created @:', 40  L_FILE COLOR 4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;      GV_FILE_CRT_Y_OR_NO = ' '.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Marked for deletion&lt;/P&gt;&lt;P&gt;  IF NOT IT_DELREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Marc_for_del' '.'&lt;/P&gt;&lt;P&gt;   GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_DELREC USING L_FILE .&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE:/5 'Marc for deletion records file created @:', 40 L_FILE COLOR&lt;/P&gt;&lt;P&gt;4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;      GV_FILE_CRT_Y_OR_NO = ' '.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Success file&lt;/P&gt;&lt;P&gt;  IF NOT IT_SREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Success' '.'&lt;/P&gt;&lt;P&gt;GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_SREP USING L_FILE.&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Success file created @:',  40 L_FILE COLOR 4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;      GV_FILE_CRT_Y_OR_NO  = ' '.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--Error file&lt;/P&gt;&lt;P&gt;  IF NOT IT_EREP[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    CONCATENATE GV_FILE_STR SY-DATUM SY-UZEIT '_' 'Error' '.'&lt;/P&gt;&lt;P&gt;GV_LAST_4_CHARS INTO L_FILE.&lt;/P&gt;&lt;P&gt;    CONDENSE L_FILE NO-GAPS.&lt;/P&gt;&lt;P&gt;    PERFORM PC_FILE TABLES IT_EREP USING L_FILE.&lt;/P&gt;&lt;P&gt;    IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;P&gt;      WRITE:/5 'Error file created @:', 40 L_FILE COLOR 4.&lt;/P&gt;&lt;P&gt;      CLEAR L_FILE.&lt;/P&gt;&lt;P&gt;      GV_FILE_CRT_Y_OR_NO = ' '.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF NOT IT_FINAL1[] IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CONCATENATE GV_FILE_STR '\' 'valid' '.' GV_LAST_4_CHARS INTO L_FILE&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;   PERFORM PC_FILE TABLES IT_FINAL1 USING L_FILE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     WRITE:/5 'Valid records file created @:', L_FILE COLOR 4.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     CLEAR L_FILE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   GV_FILE_CRT_Y_OR_NO = ' '.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " PC_FILES_CREATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  PC_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_IT_SREP  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_L_FILE  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM PC_FILE  TABLES P_INT_TAB USING  P_L_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      FILENAME              = P_L_FILE&lt;/P&gt;&lt;P&gt;      FILETYPE              = 'ASC'&lt;/P&gt;&lt;P&gt;      WRITE_FIELD_SEPARATOR = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      DATA_TAB              = P_INT_TAB.&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;    WRITE:/5 'PC File creation Problem', P_L_FILE.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    GV_FILE_CRT_Y_OR_NO = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR: P_INT_TAB.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   REFRESH: P_INT_TAB.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " PC_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  VALIDATE_IN_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM VALIDATE_IN_FILE .&lt;/P&gt;&lt;P&gt;  DATA: L_POS TYPE I,&lt;/P&gt;&lt;P&gt;        L_TXT(3) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SPLIT P_IFILE AT '.' INTO GV_FILE_STR  GV_LAST_4_CHARS.&lt;/P&gt;&lt;P&gt;  IF GV_LAST_4_CHARS NE 'txt'.&lt;/P&gt;&lt;P&gt;    MESSAGE E000 WITH 'Please give .txt input file'.&lt;/P&gt;&lt;P&gt;    CLEAR: GV_FILE_STR, GV_LAST_4_CHARS.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SPLIT P_PCFILE AT '.' INTO GV_FILE_STR GV_LAST_4_CHARS.&lt;/P&gt;&lt;P&gt;  IF GV_LAST_4_CHARS NE 'xls'.&lt;/P&gt;&lt;P&gt;    MESSAGE E000 WITH 'Please give .xls input file'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATE_IN_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  MAT_CONV_FOR_ALL_INT_TABLES&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM MAT_CONV_FOR_ALL_INT_TABLES .&lt;/P&gt;&lt;P&gt;  DATA: LV_MAT LIKE MATERIALID-MATNR_EXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_AVL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;*--Convert available records into 35 chars.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_AVL.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERSION_EXIT_MATN2_OUTPUT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          INPUT  = IT_AVL-MATNR&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          OUTPUT = IT_AVL-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY IT_AVL TRANSPORTING MATNR.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_DUPREC[] IS INITIAL.&lt;/P&gt;&lt;P&gt;*--Convert duplicate records into 35 chars.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_DUPREC.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERSION_EXIT_MATN2_OUTPUT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          INPUT  = IT_DUPREC-MATNR&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          OUTPUT = IT_DUPREC-MATNR.&lt;/P&gt;&lt;P&gt;      MODIFY IT_DUPREC TRANSPORTING MATNR.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT IT_FINAL[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT IT_FINAL.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'CONVERSION_EXIT_MATN2_OUTPUT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          INPUT  = IT_FINAL-MATNR&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          OUTPUT = IT_FINAL1-MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IT_FINAL1-MTART  = IT_FINAL-MTART.&lt;/P&gt;&lt;P&gt;      IT_FINAL1-MBRSH  = IT_FINAL-MBRSH.&lt;/P&gt;&lt;P&gt;      IT_FINAL1-WERKS  = IT_FINAL-WERKS.&lt;/P&gt;&lt;P&gt;      IT_FINAL1-LGPRO  = IT_FINAL-LGPRO.&lt;/P&gt;&lt;P&gt;      IT_FINAL1-LGFSB  = IT_FINAL-LGFSB.&lt;/P&gt;&lt;P&gt;      IT_FINAL1-TLGORT = IT_FINAL-TLGORT.&lt;/P&gt;&lt;P&gt;      IT_FINAL1-SLGORT = IT_FINAL-SLGORT.&lt;/P&gt;&lt;P&gt;      APPEND IT_FINAL1.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&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.                    " MAT_CONV_FOR_ALL_INT_TABLES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;warun&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Oct 2006 14:53:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602409#M270460</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-10-02T14:53:04Z</dc:date>
    </item>
    <item>
      <title>Re: Copy Material Master Record -- All Answers will be rewarded</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602410#M270461</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can use BAPI &amp;lt;b&amp;gt;BAPI_MATERIAL_SAVEDATA&amp;lt;/b&amp;gt; to extend material to another plant. For sample code, please check this link.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/bapi-to-copy-materials-from-one-plant-to-another.htm" target="test_blank"&gt;http://www.sap-img.com/abap/bapi-to-copy-materials-from-one-plant-to-another.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also you can use FM &amp;lt;b&amp;gt;MATERIAL_MAINTAIN_DARK&amp;lt;/b&amp;gt;. It has a good documentation. Please check this links for sample codes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.4ap.de/abap/material_maintain_dark.php" target="test_blank"&gt;http://www.4ap.de/abap/material_maintain_dark.php&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://projectmanagement.ittoolbox.com/groups/technical-functional/SAP-R3-LOG-MM/262781#" target="test_blank"&gt;http://projectmanagement.ittoolbox.com/groups/technical-functional/SAP-R3-LOG-MM/262781#&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ferry Lianto&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Oct 2006 15:04:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602410#M270461</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-10-02T15:04:33Z</dc:date>
    </item>
    <item>
      <title>Re: Copy Material Master Record -- All Answers will be rewarded</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602411#M270462</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have a look at standard SAP program RV15CC03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Oct 2006 15:10:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/copy-material-master-record-all-answers-will-be-rewarded/m-p/1602411#M270462</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-10-02T15:10:20Z</dc:date>
    </item>
  </channel>
</rss>

