<?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: Material Master with Outserts... in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132305#M112005</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is a sample program showing how you can join the tables.  You can add your condition for STKO-STKTX  to the where clause of the select statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

report zrich_0003 .

data: begin of itab occurs 0,
      matnr type mast-matnr,
      werks type mast-werks,
      posnr type stpo-posnr,
      idnrk type stpo-idnrk,
      end of itab.

select-options: s_matnr for itab-matnr,
                s_werks for itab-werks.

start-of-selection.


  select mast~matnr mast~werks stpo~posnr stpo~idnrk
           into table itab
                 from mast
                      inner join stko
                         on mast~stlnr = stko~stlnr
                        and mast~stlal = stko~stlal
                      inner join stpo
                         on stko~stlty = stpo~stlty
                        and stko~stlnr = stpo~stlnr
                              where mast~matnr in s_matnr
                                and mast~werks in s_werks.


  loop at itab.
    write:/ itab-matnr, itab-werks, itab-posnr, itab-idnrk.
  endloop.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 12 Jan 2006 16:56:59 GMT</pubDate>
    <dc:creator>RichHeilman</dc:creator>
    <dc:date>2006-01-12T16:56:59Z</dc:date>
    <item>
      <title>Material Master with Outserts...</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132304#M112004</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Friends,&lt;/P&gt;&lt;P&gt;I'm now working on a Interface, which will upload the Material Master Data to a .txt file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now they have asked me to add the Outsert field in the program to see that too in the file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Actually there is one existing program which gets the Outserts, so i have to merge these two programs into one.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The outsert(BOM component) is in the table: STPO-IDNRK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the selection screen i have 2 parmameters only&lt;/P&gt;&lt;P&gt;1.Valuation Area (MBEW-BWKEY),&lt;/P&gt;&lt;P&gt;2.file path&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I have to dispaly the outsert part numbers against eachmaterial number.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And the BOMs shd be of 'UNRESTRICTED' type. i.e, STKO-STKTX = UNRESTRICTED.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please help me..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;kp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jan 2006 16:30:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132304#M112004</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-01-12T16:30:25Z</dc:date>
    </item>
    <item>
      <title>Re: Material Master with Outserts...</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132305#M112005</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is a sample program showing how you can join the tables.  You can add your condition for STKO-STKTX  to the where clause of the select statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

report zrich_0003 .

data: begin of itab occurs 0,
      matnr type mast-matnr,
      werks type mast-werks,
      posnr type stpo-posnr,
      idnrk type stpo-idnrk,
      end of itab.

select-options: s_matnr for itab-matnr,
                s_werks for itab-werks.

start-of-selection.


  select mast~matnr mast~werks stpo~posnr stpo~idnrk
           into table itab
                 from mast
                      inner join stko
                         on mast~stlnr = stko~stlnr
                        and mast~stlal = stko~stlal
                      inner join stpo
                         on stko~stlty = stpo~stlty
                        and stko~stlnr = stpo~stlnr
                              where mast~matnr in s_matnr
                                and mast~werks in s_werks.


  loop at itab.
    write:/ itab-matnr, itab-werks, itab-posnr, itab-idnrk.
  endloop.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jan 2006 16:56:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132305#M112005</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2006-01-12T16:56:59Z</dc:date>
    </item>
    <item>
      <title>Re: Material Master with Outserts...</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132306#M112006</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Rich,&lt;/P&gt;&lt;P&gt;Thanks for the reply.......&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a diffrent thing to work on ........&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a look on the existing code....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To that I have to add a field - OUTSERT (STPO-IDNRK)...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if anything is unclear....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT Z2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table definitions ----------------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: AUSP,                          " Characteristic Values&lt;/P&gt;&lt;P&gt;        CABN,                          " Characteristic&lt;/P&gt;&lt;P&gt;        CAWN,                          " Characteristic values&lt;/P&gt;&lt;P&gt;        CAWNT,                         " Value Texts&lt;/P&gt;&lt;P&gt;        LFA1,                          " Vendor master (general section)&lt;/P&gt;&lt;P&gt;        MAKT,                          " Material Descriptions&lt;/P&gt;&lt;P&gt;        MARA,                          " Material Master: General Data&lt;/P&gt;&lt;P&gt;        MARM,                          " Units of Measure&lt;/P&gt;&lt;P&gt;        MBEW,                          " Material Valuation&lt;/P&gt;&lt;P&gt;        MVKE,                          " Material Master: Sales Data&lt;/P&gt;&lt;P&gt;        TVMST,                         " Materials: SD Status: Texts&lt;/P&gt;&lt;P&gt;        TVM3T,           " Material pricing group 3: Description&lt;/P&gt;&lt;P&gt;        TVM5T,           " Material pricing group 5: Description&lt;/P&gt;&lt;P&gt;        KOTD001,         " Conditions: Substitution - Sample Structure&lt;/P&gt;&lt;P&gt;        KONDD.           " Material Substitution - Data Division&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TITLE1.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: S_BWKEY FOR MBEW-BWKEY&lt;/P&gt;&lt;P&gt;                MEMORY ID DEFAULT_BWKEY OBLIGATORY&lt;/P&gt;&lt;P&gt;                No-Extension No Intervals.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS:&lt;/P&gt;&lt;P&gt;  MATLFILE(100) LOWER CASE OBLIGATORY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DEFAULT '/sapinterface/ebus/mfile'.               &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Constants ------------------------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;   ZERO_DEC_3         TYPE P DECIMALS 3 VALUE 0,&lt;/P&gt;&lt;P&gt;   ZEROS(9)           TYPE N            VALUE 0,&lt;/P&gt;&lt;P&gt;   REC_TYPE(2)                          VALUE 'MM',&lt;/P&gt;&lt;P&gt;   DELIMETER_QUOTE                      VALUE '"',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   BEGIN OF DEFAULTS,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     BWTAR            LIKE MBEW-BWTAR   VALUE SPACE,&lt;/P&gt;&lt;P&gt;     VKORG            LIKE MVKE-VKORG   VALUE '1000',&lt;/P&gt;&lt;P&gt;     VTWEG            LIKE MVKE-VTWEG   VALUE '10',&lt;/P&gt;&lt;P&gt;   END OF DEFAULTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants:&lt;/P&gt;&lt;P&gt;  c_uncpath_material(43)&lt;/P&gt;&lt;P&gt;    value '/sapinterface/unconverted/zvppo102_matlfile', &lt;/P&gt;&lt;P&gt;  c_final_path(44)&lt;/P&gt;&lt;P&gt;    value '/sapinterface/ebusiness/' ,                   &lt;/P&gt;&lt;P&gt;  c_uncpath(26)&lt;/P&gt;&lt;P&gt;    value '/sapinterface/unconverted/' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Elements --------------------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: PROGNAME                       LIKE SY-REPID,&lt;/P&gt;&lt;P&gt;      PROG_START_DATE                LIKE SY-DATUM,&lt;/P&gt;&lt;P&gt;      PROG_START_TIME                LIKE SY-UZEIT,&lt;/P&gt;&lt;P&gt;      WRITE_COUNT                    TYPE I,&lt;/P&gt;&lt;P&gt;      OUTFILE(100),&lt;/P&gt;&lt;P&gt;      WK_STPRS                       LIKE MBEW-STPRS,&lt;/P&gt;&lt;P&gt;      WK_AUSP                        LIKE AUSP,&lt;/P&gt;&lt;P&gt;      WK_CABN                        LIKE CABN,&lt;/P&gt;&lt;P&gt;      WK_MARA                        LIKE MARA,&lt;/P&gt;&lt;P&gt;      WK_MARM                        LIKE MARM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF MATERIAL_DATA,&lt;/P&gt;&lt;P&gt;        DELIMITER_START,&lt;/P&gt;&lt;P&gt;        REC_TYPE                     LIKE REC_TYPE,&lt;/P&gt;&lt;P&gt;        MATNR                        LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;        MAKTX                        LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;        SMATN                        LIKE KONDD-SMATN,&lt;/P&gt;&lt;P&gt;        SMATN_START                  LIKE KOTD001-DATAB,&lt;/P&gt;&lt;P&gt;        SMATN_END                    LIKE KOTD001-DATBI,&lt;/P&gt;&lt;P&gt;        VMSTA                        LIKE MVKE-VMSTA,&lt;/P&gt;&lt;P&gt;        VMSTB                        LIKE TVMST-VMSTB,&lt;/P&gt;&lt;P&gt;        LAEDA                        LIKE MARA-LAEDA,&lt;/P&gt;&lt;P&gt;        AENAM                        LIKE MARA-AENAM,&lt;/P&gt;&lt;P&gt;        VENDOR_NUM                   LIKE MARA-MFRNR,&lt;/P&gt;&lt;P&gt;        VENDOR_NM                    LIKE LFA1-NAME1,&lt;/P&gt;&lt;P&gt;        PROD_LINE_CD                 LIKE MVKE-MVGR5,&lt;/P&gt;&lt;P&gt;        PROD_LINE_DSC(20),&lt;/P&gt;&lt;P&gt;        DEA_SCH_ID                   LIKE MVKE-MVGR3,&lt;/P&gt;&lt;P&gt;        DEA_SCH_DSC(20),&lt;/P&gt;&lt;P&gt;        NORMT                        LIKE MARA-NORMT,&lt;/P&gt;&lt;P&gt;        STPRS(13),&lt;/P&gt;&lt;P&gt;        LOGO_DESC(30),&lt;/P&gt;&lt;P&gt;        PRESCRIPT_FLAG(1),&lt;/P&gt;&lt;P&gt;        THER_CLASS(5),&lt;/P&gt;&lt;P&gt;        THER_CLASS_DSC(30),&lt;/P&gt;&lt;P&gt;        THER_SUB_CLASS(5),&lt;/P&gt;&lt;P&gt;        THER_SUB_CLASS_DSC(30),&lt;/P&gt;&lt;P&gt;        THER_EQUIV(2),&lt;/P&gt;&lt;P&gt;        ITEM_PACKAGE_SIZE(10),&lt;/P&gt;&lt;P&gt;        ITEM_PACKAGE_TYPE(2),&lt;/P&gt;&lt;P&gt;        DOSAGE_FORM(3),&lt;/P&gt;&lt;P&gt;        DOSAGE_FORM_DSC(30),&lt;/P&gt;&lt;P&gt;        DOSE_ADMIN(3),&lt;/P&gt;&lt;P&gt;        DOSE_ADMIN_DSC(30),&lt;/P&gt;&lt;P&gt;        BOTTLE_SIZE(6),&lt;/P&gt;&lt;P&gt;        BRAND_NAME(25),&lt;/P&gt;&lt;P&gt;        BRAND_DISTR(20),&lt;/P&gt;&lt;P&gt;        BRAND_COLOR(20),&lt;/P&gt;&lt;P&gt;        BRAND_SHAPE(15),&lt;/P&gt;&lt;P&gt;        ANDA_DATE                    LIKE SY-DATUM,&lt;/P&gt;&lt;P&gt;        ANDA_NUMBER(9),&lt;/P&gt;&lt;P&gt;        BIO_STUDY,&lt;/P&gt;&lt;P&gt;        DESI_INDICATOR,&lt;/P&gt;&lt;P&gt;        DRUG_TERM_DT                 LIKE SY-DATUM,&lt;/P&gt;&lt;P&gt;        FDA_APPRV_DT                 LIKE SY-DATUM,&lt;/P&gt;&lt;P&gt;        ITEM_REG_NM(30),&lt;/P&gt;&lt;P&gt;        MARKET_DT                    LIKE SY-DATUM,&lt;/P&gt;&lt;P&gt;        PRODUCT_COLOR(20),&lt;/P&gt;&lt;P&gt;        PRODUCT_FLAVOR(15),&lt;/P&gt;&lt;P&gt;        PRODUCT_SHAPE(15),&lt;/P&gt;&lt;P&gt;        PRODUCT_STRENGTH(18),&lt;/P&gt;&lt;P&gt;        MEINS                        LIKE MARA-MEINS,&lt;/P&gt;&lt;P&gt;        BEGIN OF BASE_MEASURES,&lt;/P&gt;&lt;P&gt;          WEIGHT(15),                  "* like mara-brgew&lt;/P&gt;&lt;P&gt;          WT_UNIT                    LIKE MARA-GEWEI,&lt;/P&gt;&lt;P&gt;          VOLUM(15),                   "* like mara-volum,&lt;/P&gt;&lt;P&gt;          VOL_UNIT                   LIKE MARA-VOLEH,&lt;/P&gt;&lt;P&gt;          PKG_LENGTH(15),              "* like mara-laeng&lt;/P&gt;&lt;P&gt;          PKG_WIDTH(15),               "* like mara-breit&lt;/P&gt;&lt;P&gt;          PKG_HEIGHT(15),              "* like mara-hoehe&lt;/P&gt;&lt;P&gt;          DIM_UNIT                   LIKE MARA-MEABM,&lt;/P&gt;&lt;P&gt;        END OF BASE_MEASURES,&lt;/P&gt;&lt;P&gt;        INR_CRTN_COUNT(6),             "* like marm-umrez&lt;/P&gt;&lt;P&gt;        INR_CRTN_MEASURES            LIKE MATERIAL_DATA-BASE_MEASURES,&lt;/P&gt;&lt;P&gt;        CASE_COUNT(6),                 "* like marm-umrez&lt;/P&gt;&lt;P&gt;        CASE_MEASURES                LIKE MATERIAL_DATA-BASE_MEASURES,&lt;/P&gt;&lt;P&gt;        ITEM_NOTE(500),&lt;/P&gt;&lt;P&gt;        DELIMITER_END,&lt;/P&gt;&lt;P&gt;      END OF MATERIAL_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : F_M_uncFILE(100) . " Material file(unconverted)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: W_BRM(3) Value 'SVG'.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;*--- Initialize text fields for selection screen.&lt;/P&gt;&lt;P&gt;  TITLE1 = 'Set Default'.&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'DEFAULT_BWKEY' FIELD W_SVG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;PERFORM INITIAL_STUFF.&lt;/P&gt;&lt;P&gt;PERFORM MAIN_SELECT.&lt;/P&gt;&lt;P&gt;PERFORM WRAPUP.&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;Select all material master records for finished products.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM MAIN_SELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT MATNR&lt;/P&gt;&lt;P&gt;         BISMT&lt;/P&gt;&lt;P&gt;         LAEDA&lt;/P&gt;&lt;P&gt;         AENAM&lt;/P&gt;&lt;P&gt;         MEINS&lt;/P&gt;&lt;P&gt;         BRGEW&lt;/P&gt;&lt;P&gt;         GEWEI&lt;/P&gt;&lt;P&gt;         VOLUM&lt;/P&gt;&lt;P&gt;         VOLEH&lt;/P&gt;&lt;P&gt;         LAENG&lt;/P&gt;&lt;P&gt;         BREIT&lt;/P&gt;&lt;P&gt;         HOEHE&lt;/P&gt;&lt;P&gt;         MEABM&lt;/P&gt;&lt;P&gt;         NORMT&lt;/P&gt;&lt;P&gt;    INTO (MATERIAL_DATA-MATNR,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-SMATN,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-LAEDA,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-AENAM,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-MEINS,&lt;/P&gt;&lt;P&gt;          WK_MARA-BRGEW,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-BASE_MEASURES-WT_UNIT,&lt;/P&gt;&lt;P&gt;          WK_MARA-VOLUM,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-BASE_MEASURES-VOL_UNIT,&lt;/P&gt;&lt;P&gt;          WK_MARA-LAENG,&lt;/P&gt;&lt;P&gt;          WK_MARA-BREIT,&lt;/P&gt;&lt;P&gt;          WK_MARA-HOEHE,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-BASE_MEASURES-DIM_UNIT,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-NORMT)&lt;/P&gt;&lt;P&gt;    FROM  MARA&lt;/P&gt;&lt;P&gt;    WHERE MTART = 'FERT'               "* Finished product&lt;/P&gt;&lt;P&gt;    OR MTART = 'HAWA'                  "NIELSSA1 01/25/00&lt;/P&gt;&lt;P&gt;    ORDER BY MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;  Assign default values for fields which may not be available.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM ASSIGN_DEFAULTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;  Get related data from other tables.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM GET_MATERIAL_DESCRIPTION.&lt;/P&gt;&lt;P&gt;    PERFORM GET_STANDARD_PRICE.&lt;/P&gt;&lt;P&gt;    PERFORM GET_MVKE.&lt;/P&gt;&lt;P&gt;    PERFORM GET_MARM.&lt;/P&gt;&lt;P&gt;    PERFORM GET_AUSP.&lt;/P&gt;&lt;P&gt;    PERFORM GET_SUBSTITUTE_MATNR.&lt;/P&gt;&lt;P&gt;    PERFORM GET_BASIC_DATA_TEXT.&lt;/P&gt;&lt;P&gt;    PERFORM GET_VENDOR_NAME.&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;Check for double quotation, Replace the double quotation with a space&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SEARCH MATERIAL_DATA FOR '"'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;      REPLACE '"' WITH ' ' INTO MATERIAL_DATA.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MATERIAL_DATA-DELIMITER_START              = DELIMETER_QUOTE.&lt;/P&gt;&lt;P&gt;    MATERIAL_DATA-DELIMITER_END                = DELIMETER_QUOTE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;  Write output record.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    ADD 1 TO WRITE_COUNT.&lt;/P&gt;&lt;P&gt;       &lt;/P&gt;&lt;P&gt;    TRANSFER MATERIAL_DATA TO F_M_UNCFILE .  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;  Reinitialize work variables.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR: MATERIAL_DATA,&lt;/P&gt;&lt;P&gt;           WK_STPRS,&lt;/P&gt;&lt;P&gt;           WK_AUSP,&lt;/P&gt;&lt;P&gt;           WK_CABN,&lt;/P&gt;&lt;P&gt;           WK_MARA,&lt;/P&gt;&lt;P&gt;           WK_MARM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " main_select&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;Assign numeric fields to character fields for output.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM ASSIGN_DEFAULTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-REC_TYPE                     = REC_TYPE.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-BASE_MEASURES-WEIGHT         = WK_MARA-BRGEW.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-BASE_MEASURES-VOLUM          = WK_MARA-VOLUM.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-BASE_MEASURES-PKG_LENGTH     = WK_MARA-LAENG.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-BASE_MEASURES-PKG_WIDTH      = WK_MARA-BREIT.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-BASE_MEASURES-PKG_HEIGHT     = WK_MARA-HOEHE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Set character fields to 0 in case not found on DB.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-ANDA_NUMBER                  = ZEROS. "* ???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-ITEM_PACKAGE_SIZE            = 0.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-INR_CRTN_COUNT               = 0.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-CASE_COUNT                   = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-INR_CRTN_MEASURES-WEIGHT     = ZERO_DEC_3.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-INR_CRTN_MEASURES-VOLUM      = ZERO_DEC_3.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-INR_CRTN_MEASURES-PKG_LENGTH = ZERO_DEC_3.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-INR_CRTN_MEASURES-PKG_WIDTH  = ZERO_DEC_3.&lt;/P&gt;&lt;P&gt;  MATERIAL_DATA-INR_CRTN_MEASURES-PKG_HEIGHT = ZERO_DEC_3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE-CORRESPONDING MATERIAL_DATA-INR_CRTN_MEASURES&lt;/P&gt;&lt;P&gt;    TO MATERIAL_DATA-CASE_MEASURES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " assign_defaults&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_VENDOR_NAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE NAME1&lt;/P&gt;&lt;P&gt;    INTO MATERIAL_DATA-VENDOR_NM&lt;/P&gt;&lt;P&gt;    FROM LFA1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHERE LIFNR = MATERIAL_DATA-VENDOR_NUM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_vendor_name&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_MATERIAL_DESCRIPTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE MAKTX&lt;/P&gt;&lt;P&gt;    INTO MATERIAL_DATA-MAKTX&lt;/P&gt;&lt;P&gt;    FROM MAKT&lt;/P&gt;&lt;P&gt;   WHERE MATNR = MATERIAL_DATA-MATNR&lt;/P&gt;&lt;P&gt;     AND SPRAS = SY-LANGU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_material_description&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_STANDARD_PRICE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: l_vprsv like mbew-vprsv,             &lt;/P&gt;&lt;P&gt;      l_verpr like mbew-verpr.             &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear: l_Vprsv, l_verpr.                   &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE VPRSV VERPR stprs          &lt;/P&gt;&lt;P&gt;  into (l_vprsv, l_verpr, WK_stprs)        &lt;/P&gt;&lt;P&gt;    FROM MBEW&lt;/P&gt;&lt;P&gt;   WHERE MATNR = MATERIAL_DATA-MATNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AND BWKEY IN S_BWKEY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     AND BWTAR = DEFAULTS-BWTAR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   IF L_VPRSV = 'V'.                  &lt;/P&gt;&lt;P&gt;       WK_STPRS = L_VERPR.            &lt;/P&gt;&lt;P&gt;   ENDIF.                             &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   MATERIAL_DATA-STPRS = WK_STPRS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_standard_price&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_MVKE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE MVGR3&lt;/P&gt;&lt;P&gt;                VMSTA&lt;/P&gt;&lt;P&gt;                MVGR5&lt;/P&gt;&lt;P&gt;    INTO (MATERIAL_DATA-DEA_SCH_ID,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-VMSTA,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-PROD_LINE_CD)&lt;/P&gt;&lt;P&gt;    FROM MVKE&lt;/P&gt;&lt;P&gt;   WHERE MATNR = MATERIAL_DATA-MATNR&lt;/P&gt;&lt;P&gt;     AND VKORG = DEFAULTS-VKORG&lt;/P&gt;&lt;P&gt;     AND VTWEG = DEFAULTS-VTWEG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    PERFORM GET_DEA_ID_DSC.&lt;/P&gt;&lt;P&gt;    PERFORM GET_PROD_LINE_DSC.&lt;/P&gt;&lt;P&gt;    PERFORM GET_VMSTB.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_mvke&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_DEA_ID_DSC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE BEZEI&lt;/P&gt;&lt;P&gt;    INTO MATERIAL_DATA-DEA_SCH_DSC&lt;/P&gt;&lt;P&gt;    FROM TVM3T&lt;/P&gt;&lt;P&gt;   WHERE SPRAS = SY-LANGU&lt;/P&gt;&lt;P&gt;     AND MVGR3 = MATERIAL_DATA-DEA_SCH_ID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_dea_id_dsc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_PROD_LINE_DSC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE BEZEI&lt;/P&gt;&lt;P&gt;    INTO MATERIAL_DATA-PROD_LINE_DSC&lt;/P&gt;&lt;P&gt;    FROM TVM5T&lt;/P&gt;&lt;P&gt;   WHERE SPRAS = SY-LANGU&lt;/P&gt;&lt;P&gt;     AND MVGR5 = MATERIAL_DATA-PROD_LINE_CD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " form get_prod_line_dsc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_VMSTB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE VMSTB&lt;/P&gt;&lt;P&gt;    INTO MATERIAL_DATA-VMSTB&lt;/P&gt;&lt;P&gt;    FROM TVMST&lt;/P&gt;&lt;P&gt;   WHERE SPRAS = SY-LANGU&lt;/P&gt;&lt;P&gt;     AND VMSTA = MATERIAL_DATA-VMSTA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " form get_vmstb&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;Get measurements, etc. for inner carton and case from the MARM table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_MARM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT MEINH   " alternative unit of measure for stockkeeping unit&lt;/P&gt;&lt;P&gt;         UMREZ   " numerator for conversion to base units of measure&lt;/P&gt;&lt;P&gt;         LAENG                         " length&lt;/P&gt;&lt;P&gt;         BREIT                         " width&lt;/P&gt;&lt;P&gt;         HOEHE                         " height&lt;/P&gt;&lt;P&gt;         MEABM   " unit of dimension for length/width/height&lt;/P&gt;&lt;P&gt;         VOLUM                         " volume&lt;/P&gt;&lt;P&gt;         VOLEH                         " volume unit&lt;/P&gt;&lt;P&gt;         BRGEW                         " gross weight&lt;/P&gt;&lt;P&gt;         GEWEI                         " unit of weight&lt;/P&gt;&lt;P&gt;    INTO (WK_MARM-MEINH,&lt;/P&gt;&lt;P&gt;          WK_MARM-UMREZ,&lt;/P&gt;&lt;P&gt;          WK_MARM-LAENG,&lt;/P&gt;&lt;P&gt;          WK_MARM-BREIT,&lt;/P&gt;&lt;P&gt;          WK_MARM-HOEHE,&lt;/P&gt;&lt;P&gt;          WK_MARM-MEABM,&lt;/P&gt;&lt;P&gt;          WK_MARM-VOLUM,&lt;/P&gt;&lt;P&gt;          WK_MARM-VOLEH,&lt;/P&gt;&lt;P&gt;          WK_MARM-BRGEW,&lt;/P&gt;&lt;P&gt;          WK_MARM-GEWEI)&lt;/P&gt;&lt;P&gt;    FROM MARM&lt;/P&gt;&lt;P&gt;   WHERE MATNR = MATERIAL_DATA-MATNR&lt;/P&gt;&lt;P&gt;     AND MEINH IN ('CS', 'PAK').&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM EVALUATE_MEINH.&lt;/P&gt;&lt;P&gt;    CLEAR WK_MARM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_marm&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;Populate output record fields based on alternative unit of measure.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM EVALUATE_MEINH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE WK_MARM-MEINH.&lt;/P&gt;&lt;P&gt;    WHEN 'CS'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_COUNT                   = WK_MARM-UMREZ.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-WEIGHT         = WK_MARM-BRGEW.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-WT_UNIT        = WK_MARM-GEWEI.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-VOLUM          = WK_MARM-VOLUM.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-VOL_UNIT       = WK_MARM-VOLEH.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-PKG_LENGTH     = WK_MARM-LAENG.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-PKG_WIDTH      = WK_MARM-BREIT.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-PKG_HEIGHT     = WK_MARM-HOEHE.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-CASE_MEASURES-DIM_UNIT       = WK_MARM-MEABM.&lt;/P&gt;&lt;P&gt;    WHEN 'PAK'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_COUNT               = WK_MARM-UMREZ.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-WEIGHT     = WK_MARM-BRGEW.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-WT_UNIT    = WK_MARM-GEWEI.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-VOLUM      = WK_MARM-VOLUM.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-VOL_UNIT   = WK_MARM-VOLEH.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-PKG_LENGTH = WK_MARM-LAENG.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-PKG_WIDTH  = WK_MARM-BREIT.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-PKG_HEIGHT = WK_MARM-HOEHE.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-INR_CRTN_MEASURES-DIM_UNIT   = WK_MARM-MEABM.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " evaluate_meinh&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;Get characterics from the AUSP &amp;amp; CABN tables.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_AUSP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Get object number for classification lookup.           &lt;/P&gt;&lt;P&gt;  data: l_objek like ausp-objek.                            &lt;/P&gt;&lt;P&gt;  clear l_objek.                                            &lt;/P&gt;&lt;P&gt;  select cuobj into l_objek from inob up to 1 rows          &lt;/P&gt;&lt;P&gt;   where klart = '001'                                      &lt;/P&gt;&lt;P&gt;     and obtab = 'MARA'                                     &lt;/P&gt;&lt;P&gt;     and objek = material_data-matnr.                       &lt;/P&gt;&lt;P&gt;  endselect.                                                &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT A~ATINN                       " internal characteristic&lt;/P&gt;&lt;P&gt;         A~ATWRT                       " characteristic value&lt;/P&gt;&lt;P&gt;         A~ATAWE                       " unit of measurement&lt;/P&gt;&lt;P&gt;         A~ATAW1                       " unit of measurement&lt;/P&gt;&lt;P&gt;         A~ATFLV        " internal floating point from (value if date)&lt;/P&gt;&lt;P&gt;         C~ATNAM                       " characteristic name&lt;/P&gt;&lt;P&gt;  INTO (WK_AUSP-ATINN,&lt;/P&gt;&lt;P&gt;        WK_AUSP-ATWRT,&lt;/P&gt;&lt;P&gt;        WK_AUSP-ATAWE,&lt;/P&gt;&lt;P&gt;        WK_AUSP-ATAW1,&lt;/P&gt;&lt;P&gt;        WK_AUSP-ATFLV,&lt;/P&gt;&lt;P&gt;        WK_CABN-ATNAM)&lt;/P&gt;&lt;P&gt;  FROM AUSP AS A INNER JOIN&lt;/P&gt;&lt;P&gt;       CABN AS C ON A&lt;SUB&gt;ATINN = C&lt;/SUB&gt;ATINN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  where a~objek = l_objek                                   &lt;/P&gt;&lt;P&gt;    AND C~ATNAM LIKE 'MM_%'&lt;/P&gt;&lt;P&gt;    AND A~LKENZ = SPACE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM EVALUATE_CHARACTERISTIC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_ausp&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;Populate output record fields based on characteristic type.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM EVALUATE_CHARACTERISTIC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  SIZE_TEMP TYPE I. "NIELSSA1 01/31/00&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE WK_CABN-ATNAM.&lt;/P&gt;&lt;P&gt;    when 'MM_BOTTLE_SIZE'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-BOTTLE_SIZE        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_BRAND_COLOR'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-BRAND_COLOR        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  when 'MM_BRAND_DISTR'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'MM_BRAND_DISTRIBUTOR'. "NIELSSA1 01/25/00&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-BRAND_DISTR        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_BRAND_NAME'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-BRAND_NAME         = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_BRAND_SHAPE'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-BRAND_SHAPE        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    WHEN 'MM_DOSAGE_FORM'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-DOSAGE_FORM        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;      PERFORM GET_CHARACTERISTIC_DSC&lt;/P&gt;&lt;P&gt;        USING WK_AUSP-ATINN&lt;/P&gt;&lt;P&gt;              WK_AUSP-ATWRT&lt;/P&gt;&lt;P&gt;        CHANGING MATERIAL_DATA-DOSAGE_FORM_DSC.&lt;/P&gt;&lt;P&gt;    when 'MM_DOSE_ADMINISTRATION'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-DOSE_ADMIN         = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;      PERFORM GET_CHARACTERISTIC_DSC&lt;/P&gt;&lt;P&gt;        USING WK_AUSP-ATINN&lt;/P&gt;&lt;P&gt;              WK_AUSP-ATWRT&lt;/P&gt;&lt;P&gt;        CHANGING MATERIAL_DATA-DOSE_ADMIN_DSC.&lt;/P&gt;&lt;P&gt;    WHEN 'MM_ITEM_PACKAGE_SIZE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SIZE_TEMP = WK_AUSP-ATFLV.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-ITEM_PACKAGE_SIZE  = SIZE_TEMP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'MM_ITEM_PACKAGE_TYPE'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-ITEM_PACKAGE_TYPE  = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_LOGO_DESC'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-LOGO_DESC          = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_PRESCRIPTION_FLAG'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-PRESCRIPT_FLAG     = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_THERAPEUTIC_CLASS'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-THER_CLASS         = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;      PERFORM GET_CHARACTERISTIC_DSC&lt;/P&gt;&lt;P&gt;        USING WK_AUSP-ATINN&lt;/P&gt;&lt;P&gt;              WK_AUSP-ATWRT&lt;/P&gt;&lt;P&gt;        CHANGING MATERIAL_DATA-THER_CLASS_DSC.&lt;/P&gt;&lt;P&gt;    when 'MM_THERAPEUTIC_SUB_CLASS'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-THER_SUB_CLASS     = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;      PERFORM GET_CHARACTERISTIC_DSC&lt;/P&gt;&lt;P&gt;        USING WK_AUSP-ATINN&lt;/P&gt;&lt;P&gt;              WK_AUSP-ATWRT&lt;/P&gt;&lt;P&gt;        CHANGING MATERIAL_DATA-THER_SUB_CLASS_DSC.&lt;/P&gt;&lt;P&gt;    WHEN 'MM_THERAPEUTIC_RATING'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-THER_EQUIV         = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_ANDA_DATE'.&lt;/P&gt;&lt;P&gt;      PERFORM CONVERT_TO_DATE USING WK_AUSP-ATFLV&lt;/P&gt;&lt;P&gt;                              CHANGING MATERIAL_DATA-ANDA_DATE.&lt;/P&gt;&lt;P&gt;    when 'MM_ANDA_NUMBER'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-ANDA_NUMBER        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_BIO_STUDY'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-BIO_STUDY          = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_DESI_INDICATOR'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-DESI_INDICATOR     = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_DRUG_TERMINATION_DATE'.&lt;/P&gt;&lt;P&gt;      PERFORM CONVERT_TO_DATE USING WK_AUSP-ATFLV&lt;/P&gt;&lt;P&gt;                              CHANGING MATERIAL_DATA-DRUG_TERM_DT.&lt;/P&gt;&lt;P&gt;    when 'MM_FDA_APPROVAL_DATE'.&lt;/P&gt;&lt;P&gt;      PERFORM CONVERT_TO_DATE USING WK_AUSP-ATFLV&lt;/P&gt;&lt;P&gt;                              CHANGING MATERIAL_DATA-FDA_APPRV_DT.&lt;/P&gt;&lt;P&gt;    when 'MM_ITEM_REGULATORY_NAME'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-ITEM_REG_NM        = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_MARKET_DATE'.&lt;/P&gt;&lt;P&gt;      PERFORM CONVERT_TO_DATE USING WK_AUSP-ATFLV&lt;/P&gt;&lt;P&gt;                              CHANGING MATERIAL_DATA-MARKET_DT.&lt;/P&gt;&lt;P&gt;    when 'MM_PRODUCT_COLOR'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-PRODUCT_COLOR      = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_PRODUCT_FLAVOR'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-PRODUCT_FLAVOR     = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_PRODUCT_SHAPE'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-PRODUCT_SHAPE      = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;    when 'MM_PRODUCT_STRENGTH'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-PRODUCT_STRENGTH   = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'MM_VENDOR'.&lt;/P&gt;&lt;P&gt;      MATERIAL_DATA-VENDOR_NUM = WK_AUSP-ATWRT.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR SIZE_TEMP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " evaluate_characteristic&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;Get descriptive text from CAWN &amp;amp; CAWNT for characteristics.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_CHARACTERISTIC_DSC USING PARM_ATINN&lt;/P&gt;&lt;P&gt;                                  PARM_ATWRT&lt;/P&gt;&lt;P&gt;                         CHANGING PARM_DSC_TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR PARM_DSC_TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE ATWTB&lt;/P&gt;&lt;P&gt;   INTO  PARM_DSC_TEXT&lt;/P&gt;&lt;P&gt;   FROM  CAWN  AS C1 INNER JOIN&lt;/P&gt;&lt;P&gt;         CAWNT AS C2  ON C1&lt;SUB&gt;ATINN = C2&lt;/SUB&gt;ATINN&lt;/P&gt;&lt;P&gt;                     AND C1&lt;SUB&gt;ATZHL = C2&lt;/SUB&gt;ATZHL&lt;/P&gt;&lt;P&gt;  WHERE C1~ATINN = PARM_ATINN&lt;/P&gt;&lt;P&gt;    AND C1~ATWRT = PARM_ATWRT&lt;/P&gt;&lt;P&gt;    AND C2~SPRAS = SY-LANGU&lt;/P&gt;&lt;P&gt;    AND C2~ADZHL = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_characteristic_dsc&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;Call function CTCV_CONVERT_FLOAT_TO_DATE to convert floating point&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;number to a date in yyyymmdd format.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;form convert_to_date using    date&lt;/P&gt;&lt;P&gt;                     changing conv_date.&lt;/P&gt;&lt;P&gt;  clear conv_date.&lt;/P&gt;&lt;P&gt;  data: wrk_date(30) type c."Format YYYYMMDD changing it to MMDDYYYY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'CTCV_CONVERT_FLOAT_TO_DATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            float  = date&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            date   = wrk_date&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            others = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONV_DATE = WRK_DATE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " convert_to_date&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;Get substitute material number.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_SUBSTITUTE_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE SMATN&lt;/P&gt;&lt;P&gt;                DATAB&lt;/P&gt;&lt;P&gt;                DATBI&lt;/P&gt;&lt;P&gt;    INTO (MATERIAL_DATA-SMATN,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-SMATN_START,&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-SMATN_END)&lt;/P&gt;&lt;P&gt;    FROM KOTD001 INNER JOIN&lt;/P&gt;&lt;P&gt;         KONDD   ON KOTD001~KNUMH = KONDD~KNUMH&lt;/P&gt;&lt;P&gt;   WHERE KAPPL  = 'V'                  "* Sales/Distribution&lt;/P&gt;&lt;P&gt;     AND KSCHL  = 'A001'               "* Material Entered&lt;/P&gt;&lt;P&gt;     AND MATWA  = MATERIAL_DATA-MATNR&lt;/P&gt;&lt;P&gt;     AND DATBI &amp;gt;= SY-DATUM&lt;/P&gt;&lt;P&gt;     AND DATAB &amp;lt;= SY-DATUM&lt;/P&gt;&lt;P&gt;     AND SUGRD  = SPACE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_substitute_matnr.&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;Get basic data text for material item note.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If this is longer than 500 bytes, it will be truncated at 500.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM GET_BASIC_DATA_TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:   BEGIN OF TEXT_HEADER.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE THEAD.     "* SAPscript: Text Header&lt;/P&gt;&lt;P&gt;  DATA:   END   OF TEXT_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:   BEGIN OF TEXT_LINES OCCURS 100.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE TLINE.     "* SAPscript: text lines&lt;/P&gt;&lt;P&gt;  DATA:   END   OF TEXT_LINES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:   ITEM_NOTE_LENGTH TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set up text header for call to READ_TEXT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TEXT_HEADER-TDOBJECT = 'MATERIAL'.&lt;/P&gt;&lt;P&gt;  TEXT_HEADER-TDNAME   = MATERIAL_DATA-MATNR.&lt;/P&gt;&lt;P&gt;  TEXT_HEADER-TDID     = 'GRUN'.       "* Basic data text&lt;/P&gt;&lt;P&gt;  TEXT_HEADER-TDSPRAS  = SY-LANGU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'READ_TEXT'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        CLIENT                  = SY-MANDT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          ID                      = TEXT_HEADER-TDID&lt;/P&gt;&lt;P&gt;          LANGUAGE                = TEXT_HEADER-TDSPRAS&lt;/P&gt;&lt;P&gt;          NAME                    = TEXT_HEADER-TDNAME&lt;/P&gt;&lt;P&gt;          OBJECT                  = TEXT_HEADER-TDOBJECT&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        ARCHIVE_HANDLE          = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        HEADER                  =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;          LINES                   = TEXT_LINES&lt;/P&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;P&gt;          ID                      = 1&lt;/P&gt;&lt;P&gt;          LANGUAGE                = 2&lt;/P&gt;&lt;P&gt;          NAME                    = 3&lt;/P&gt;&lt;P&gt;          NOT_FOUND               = 4&lt;/P&gt;&lt;P&gt;          OBJECT                  = 5&lt;/P&gt;&lt;P&gt;          REFERENCE_CHECK         = 6&lt;/P&gt;&lt;P&gt;          WRONG_ACCESS_TO_ARCHIVE = 7&lt;/P&gt;&lt;P&gt;          OTHERS                  = 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE SY-SUBRC.&lt;/P&gt;&lt;P&gt;    WHEN 0.&lt;/P&gt;&lt;P&gt;      LOOP AT TEXT_LINES.&lt;/P&gt;&lt;P&gt;        IF SY-TABIX = 1.&lt;/P&gt;&lt;P&gt;          MATERIAL_DATA-ITEM_NOTE = TEXT_LINES-TDLINE.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        Pass up to 500 bytes to Siebel.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          ITEM_NOTE_LENGTH = STRLEN( MATERIAL_DATA-ITEM_NOTE ).&lt;/P&gt;&lt;P&gt;          IF ITEM_NOTE_LENGTH &amp;gt; 498.&lt;/P&gt;&lt;P&gt;            EXIT.&lt;/P&gt;&lt;P&gt;          ELSE.&lt;/P&gt;&lt;P&gt;            CONCATENATE MATERIAL_DATA-ITEM_NOTE&lt;/P&gt;&lt;P&gt;                        TEXT_LINES-TDLINE&lt;/P&gt;&lt;P&gt;                   INTO MATERIAL_DATA-ITEM_NOTE&lt;/P&gt;&lt;P&gt;                        SEPARATED BY SPACE.&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;    WHEN 4.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Not found; this is normal if no text was entered.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      MESSAGE E000(38) WITH 'Bad call to function READ_TEXT'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " get_substitute_matnr&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;Open files, set initial conditions, etc.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM INITIAL_STUFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data : w_length type i . " MUDIGAN1 DEVK991428&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PROGNAME = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE: / 'Program:              ', PROGNAME.&lt;/P&gt;&lt;P&gt;  WRITE: / 'Execution start date: ', SY-DATUM.&lt;/P&gt;&lt;P&gt;  WRITE: / 'Execution start time: ', SY-UZEIT.&lt;/P&gt;&lt;P&gt;  WRITE: / .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'Z_SET_INTERFACE_FILENAME'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            INTERFACE_NAME = MATLFILE&lt;/P&gt;&lt;P&gt;            DATE_TIME_SW   = 'X'&lt;/P&gt;&lt;P&gt;            EXTENSION_TYPE = 'txt'&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            PATHNAME       = OUTFILE&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            OTHERS         = 1.&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;&lt;/P&gt;&lt;P&gt;  f_m_uncfile = outfile .&lt;/P&gt;&lt;P&gt;  clear w_length.&lt;/P&gt;&lt;P&gt;  w_length = strlen( matlfile ).&lt;/P&gt;&lt;P&gt;  replace matlfile with c_uncpath_material into F_M_UNCFILE length&lt;/P&gt;&lt;P&gt;                                                           w_length .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  open dataset F_m_UNCFILE for output in text mode .&lt;/P&gt;&lt;P&gt;  if sy-subrc &amp;lt;&amp;gt; 0 .&lt;/P&gt;&lt;P&gt;    MESSAGE E000(38) WITH 'Unable to open file ' F_m_UNCFILE.&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.                               " initial_stuff.&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;Close files, etc.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM WRAPUP.&lt;/P&gt;&lt;P&gt;   CLOSE DATASET F_M_UNCFILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   PERFORM CONVERT_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE: / 'Material interface file name: ', OUTFILE,&lt;/P&gt;&lt;P&gt;         /,&lt;/P&gt;&lt;P&gt;         / 'Number of records written to material file: ', WRITE_COUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This form is included for testing and is performed if the test_rec&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;checkbox is checked.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM WRITE_FORMATTED_TEST_RECORD.&lt;/P&gt;&lt;P&gt;  WRITE: /,&lt;/P&gt;&lt;P&gt;         / 'Beginning of new record  :',&lt;/P&gt;&lt;P&gt;         / 'Start Delimiter                 :|' NO-GAP,&lt;/P&gt;&lt;P&gt;               MATERIAL_DATA-DELIMITER_START NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Record Type                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;               MATERIAL_DATA-REC_TYPE NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Material Number                 :|' NO-GAP,&lt;/P&gt;&lt;P&gt;               MATERIAL_DATA-MATNR NO-GAP USING NO EDIT MASK, '|',&lt;/P&gt;&lt;P&gt;         / 'Material Description            :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-MAKTX NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Substitute Material Number      :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-SMATN NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Substitute Start Date           :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-SMATN_START NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Substitute End Date             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-SMATN_END NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Status Code                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-VMSTA NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Status Description              :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-VMSTB NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Date of last change             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-LAEDA NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'User who changed record         :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-AENAM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Manufacturer Number             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;               MATERIAL_DATA-VENDOR_NUM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Vendor Name                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-VENDOR_NM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Product Line Code               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PROD_LINE_CD NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Product Line Description        :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PROD_LINE_DSC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'DEA Schedule ID                 :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DEA_SCH_ID NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'DEA Schedule Description        :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DEA_SCH_DSC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Labeller Code                   :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-NORMT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Standard Price                  :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-STPRS NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Logo Description                :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-LOGO_DESC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Prescription Flag               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PRESCRIPT_FLAG NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Therapeutic Class               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-THER_CLASS NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Therapeutic Class Description   :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-THER_CLASS_DSC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Therapeutic Subclass            :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-THER_SUB_CLASS NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Therapeutic Subclass Description:|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-THER_SUB_CLASS_DSC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Therapeutic Equivalence         :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-THER_EQUIV NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Item Package Size               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-ITEM_PACKAGE_SIZE NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Item Package Type               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-ITEM_PACKAGE_TYPE NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Dosage Form                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DOSAGE_FORM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Dosage Form Description         :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DOSAGE_FORM_DSC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Dose Administration             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DOSE_ADMIN NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Dose Administration Description :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DOSE_ADMIN_DSC NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Bottle Size                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BOTTLE_SIZE NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Brand Name                      :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BRAND_NAME NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Brand Distributor               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BRAND_DISTR NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Brand Color                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BRAND_COLOR NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Brand Shape                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BRAND_SHAPE NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'ANDA Date                       :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-ANDA_DATE      NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'ANDA Number                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-ANDA_NUMBER    NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Bio Study                       :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BIO_STUDY      NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'DESI Indicator                  :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DESI_INDICATOR NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Drug Term Date                  :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-DRUG_TERM_DT   NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'FDA Approval Date               :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-FDA_APPRV_DT   NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Item Regulatory Name            :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-ITEM_REG_NM    NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Market Date                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-MARKET_DT      NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Product Color                   :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PRODUCT_COLOR  NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Product Flavor                  :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PRODUCT_FLAVOR NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Product Shape                   :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PRODUCT_SHAPE  NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Product Strength                :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-PRODUCT_STRENGTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Unit of Measure            :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-MEINS NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Weight                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-WEIGHT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Weight Unit                :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-WT_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Volume                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-VOLUM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Volume Unit                :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-VOL_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Package Length             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-PKG_LENGTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Package Width              :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-PKG_WIDTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Package Height             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-PKG_HEIGHT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Base Dimension Unit             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-BASE_MEASURES-DIM_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Count              :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_COUNT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Weight             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-WEIGHT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Weight Unit        :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-WT_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Volume             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-VOLUM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Volume Unit        :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-VOL_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Package Length     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-PKG_LENGTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Package Width      :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-PKG_WIDTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Package Height     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-PKG_HEIGHT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Inner Carton Dimension Unit     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-INR_CRTN_MEASURES-DIM_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Count                      :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_COUNT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Weight                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-WEIGHT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Weight Unit                :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-WT_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Volume                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-VOLUM NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Volume Unit                :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-VOL_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Length                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-PKG_LENGTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Width                      :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-PKG_WIDTH NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Height                     :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-PKG_HEIGHT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Case Dimension Unit             :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-CASE_MEASURES-DIM_UNIT NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'Item Note                       :|' NO-GAP,&lt;/P&gt;&lt;P&gt;                MATERIAL_DATA-ITEM_NOTE NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         / 'End Delimiter                   :|' NO-GAP,&lt;/P&gt;&lt;P&gt;               MATERIAL_DATA-DELIMITER_END NO-GAP, '|',&lt;/P&gt;&lt;P&gt;         /.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " write_formatted_test_record&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;Copy the output files to the appropriate archive folder.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM COPY_TO_ARCHIVE USING C_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    ARCHFILE(100),&lt;/P&gt;&lt;P&gt;    COPYFILES(255),&lt;/P&gt;&lt;P&gt;    ITAB LIKE BTCXPM OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;    W_LENGTH TYPE I ,  " MUDIGAN1 DEVK991428&lt;/P&gt;&lt;P&gt;    W_INFILE(100),     " MUDIGAN1 DEVK991428&lt;/P&gt;&lt;P&gt;    W_OUTFILE(100).    " MUDIGAN1 DEVK991428&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BUILD_ARCHIVE_NAME USING C_FILE&lt;/P&gt;&lt;P&gt;                          CHANGING ARCHFILE.&lt;/P&gt;&lt;P&gt; CONCATENATE C_FILE C_UNCPATH INTO COPYFILES SEPARATED BY SPACE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'SXPG_COMMAND_EXECUTE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           COMMANDNAME                   = 'ZUNIXCOPY'       &lt;/P&gt;&lt;P&gt;           ADDITIONAL_PARAMETERS         = COPYFILES&lt;/P&gt;&lt;P&gt;           OPERATINGSYSTEM               = SY-OPSYS&lt;/P&gt;&lt;P&gt;           STDOUT                        = 'X'&lt;/P&gt;&lt;P&gt;           STDERR                        = 'X'&lt;/P&gt;&lt;P&gt;           TERMINATIONWAIT               = 'X'&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;           EXEC_PROTOCOL                 = ITAB&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;           NO_PERMISSION                 = 1&lt;/P&gt;&lt;P&gt;           COMMAND_NOT_FOUND             = 2&lt;/P&gt;&lt;P&gt;           PARAMETERS_TOO_LONG           = 3&lt;/P&gt;&lt;P&gt;           SECURITY_RISK                 = 4&lt;/P&gt;&lt;P&gt;           WRONG_CHECK_CALL_INTERFACE    = 5&lt;/P&gt;&lt;P&gt;           PROGRAM_START_ERROR           = 6&lt;/P&gt;&lt;P&gt;           PROGRAM_TERMINATION_ERROR     = 7&lt;/P&gt;&lt;P&gt;           X_ERROR                       = 8&lt;/P&gt;&lt;P&gt;           PARAMETER_EXPECTED            = 9&lt;/P&gt;&lt;P&gt;           TOO_MANY_PARAMETERS           = 10&lt;/P&gt;&lt;P&gt;           ILLEGAL_COMMAND               = 11&lt;/P&gt;&lt;P&gt;           WRONG_ASYNCHRONOUS_PARAMETERS = 12&lt;/P&gt;&lt;P&gt;           CANT_ENQ_TBTCO_ENTRY          = 13&lt;/P&gt;&lt;P&gt;           JOBCOUNT_GENERATION_ERROR     = 14&lt;/P&gt;&lt;P&gt;           OTHERS                        = 15.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;w_length = strlen( c_final_path ).&lt;/P&gt;&lt;P&gt;replace c_final_path with ' ' into c_file length w_length.&lt;/P&gt;&lt;P&gt;shift c_file left deleting leading space .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;concatenate c_uncpath c_file into w_infile .&lt;/P&gt;&lt;P&gt;concatenate archfile c_file into w_outfile .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'Z_CONVERT_UNIX2DOS'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    INFILE                    = w_infile&lt;/P&gt;&lt;P&gt;    OUTFILE                   = w_outfile&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   ERROR                     = 1&lt;/P&gt;&lt;P&gt;   IDENTICAL_FILENAMES       = 2&lt;/P&gt;&lt;P&gt;   NO_INPUT_FILE             = 3&lt;/P&gt;&lt;P&gt;   OTHERS                    = 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    SKIP.&lt;/P&gt;&lt;P&gt;    WRITE: / C_FILE, 'copied to', ARCHFILE.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE E000(38) WITH 'Archive file copy failed.'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " copy_to_archive.&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;Build Archive file pathnames.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;FORM BUILD_ARCHIVE_NAME USING P_PATH&lt;/P&gt;&lt;P&gt;                     CHANGING P_ARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    NODECOUNT TYPE I,&lt;/P&gt;&lt;P&gt;    LASTNODE TYPE I,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    BEGIN OF NODES OCCURS 25,&lt;/P&gt;&lt;P&gt;       NODENAME(100),                                       &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    END OF NODES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SPLIT P_PATH AT '/' INTO TABLE NODES.                     &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE NODES LINES NODECOUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR P_ARCH.&lt;/P&gt;&lt;P&gt;  LASTNODE = NODECOUNT - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT NODES.&lt;/P&gt;&lt;P&gt;    CASE SY-TABIX.&lt;/P&gt;&lt;P&gt;      WHEN LASTNODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   CONCATENATE P_ARCH NODES-NODENAME '/archive/' INTO P_ARCH. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     WHEN NODECOUNT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CONCATENATE P_ARCH NODES-NODENAME '/' INTO P_ARCH.   &lt;/P&gt;&lt;P&gt;&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;ENDFORM.                               " build_archive_name&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_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; Move output files from unconverted directory to final destination&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; directory and convert from UNIX to DOS format in the process.&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_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE MATLFILE '.txt' INTO OUTFILE.                    &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Convert customer file from Unix to DOS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'Z_CONVERT_UNIX2DOS'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      INFILE                    = F_M_UNCFILE&lt;/P&gt;&lt;P&gt;      OUTFILE                   = outFILE&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      ERROR                     = 1&lt;/P&gt;&lt;P&gt;      IDENTICAL_FILENAMES       = 2&lt;/P&gt;&lt;P&gt;      NO_INPUT_FILE             = 3&lt;/P&gt;&lt;P&gt;      OTHERS                    = 4.&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;    write: /'Error converting file. Input file: ', F_M_UNCFILE.&lt;/P&gt;&lt;P&gt;    write: /'                      Output file: ', outFILE.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CONVERT_FILE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thnks,&lt;/P&gt;&lt;P&gt;kp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Jan 2006 17:27:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/material-master-with-outserts/m-p/1132306#M112006</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-01-12T17:27:24Z</dc:date>
    </item>
  </channel>
</rss>

