<?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: BDC Program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/3109557#M738251</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sunil,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check the links below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/forums" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/forums&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/forums" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/forums&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/forums" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/forums&lt;/A&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;REPORT zsdcidoc NO STANDARD PAGE HEADING LINE-SIZE 160.&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;OBJECT NAME: ZSDCIDOC&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OBJECT TYPE: Executable Program&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;DESCRIPTION: Create Sales Documents on variances in&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Consignment/InPlant physical inventory.&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;PROGRAM CHANGE LOG:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NAME DATE DESCRIPTION OF CHANGE&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;VOOTKURA 11/19/99 Initial release&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VOOTKURA 11/28/99 Don't create BDC session on errors&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VOOTKURA 01/10/2000 On Sales Ord, ReqDelDate=CountDate&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VOOTKURA 01/14/2000 Make ReqDelDate=PlannedCountDate&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;DB TABLES&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;Mod. By Date Description Transport *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NEMANIR 23/08/2006 Modified for Unicode Compliance DEVK914940 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;in lines 492, 527-529, 646 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VIGNESWARAN S 01/03/2007 Corrected BDC Recording To&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Sale Order *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;TABLES: mkpf, "Material Document Header&lt;/P&gt;&lt;P&gt;t9ip, "In-plants - user table&lt;/P&gt;&lt;P&gt;iseg, "Physical Inventory Document Items&lt;/P&gt;&lt;P&gt;ikpf. "Header: Physical Inventory Document&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tiseg OCCURS 0,&lt;/P&gt;&lt;P&gt;iblnr LIKE iseg-iblnr,&lt;/P&gt;&lt;P&gt;gjahr LIKE iseg-gjahr,&lt;/P&gt;&lt;P&gt;zeili LIKE iseg-zeili,&lt;/P&gt;&lt;P&gt;matnr LIKE iseg-matnr,&lt;/P&gt;&lt;P&gt;werks LIKE iseg-werks,&lt;/P&gt;&lt;P&gt;charg LIKE iseg-charg,&lt;/P&gt;&lt;P&gt;sobkz LIKE iseg-sobkz,&lt;/P&gt;&lt;P&gt;kunnr LIKE iseg-kunnr,&lt;/P&gt;&lt;P&gt;zldat LIKE iseg-zldat,&lt;/P&gt;&lt;P&gt;budat LIKE iseg-budat,&lt;/P&gt;&lt;P&gt;xzael LIKE iseg-xzael,&lt;/P&gt;&lt;P&gt;xdiff LIKE iseg-xdiff,&lt;/P&gt;&lt;P&gt;xnzae LIKE iseg-xnzae,&lt;/P&gt;&lt;P&gt;xloek LIKE iseg-xloek,&lt;/P&gt;&lt;P&gt;xamei LIKE iseg-xamei,&lt;/P&gt;&lt;P&gt;buchm LIKE iseg-buchm,&lt;/P&gt;&lt;P&gt;xnull LIKE iseg-xnull,&lt;/P&gt;&lt;P&gt;menge LIKE iseg-menge,&lt;/P&gt;&lt;P&gt;meins LIKE iseg-meins,&lt;/P&gt;&lt;P&gt;erfmg LIKE iseg-erfmg,&lt;/P&gt;&lt;P&gt;erfme LIKE iseg-erfme,&lt;/P&gt;&lt;P&gt;crdr_ind(1),&lt;/P&gt;&lt;P&gt;ord_type(4),&lt;/P&gt;&lt;P&gt;ord_rsn(3),&lt;/P&gt;&lt;P&gt;qty_p TYPE p DECIMALS 3, "03/02/00&lt;/P&gt;&lt;P&gt;qty(13),&lt;/P&gt;&lt;P&gt;qty_c(13),&lt;/P&gt;&lt;P&gt;uom_conv(3),&lt;/P&gt;&lt;P&gt;END OF tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: tiseg2 LIKE tiseg OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: tiseg3 LIKE tiseg OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table BDC_TAB has BDCDATA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: bdc_tab LIKE bdcdata OCCURS 5 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table MESSTAB - Message table for use in Call transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF messtab OCCURS 5.&lt;/P&gt;&lt;P&gt;INCLUDE STRUCTURE bdcmsgcoll.&lt;/P&gt;&lt;P&gt;DATA: END OF messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TXMSG has info on call trans output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF txmsg OCCURS 0,&lt;/P&gt;&lt;P&gt;tx(4),&lt;/P&gt;&lt;P&gt;success,&lt;/P&gt;&lt;P&gt;type LIKE vbak-auart,&lt;/P&gt;&lt;P&gt;reason(4),&lt;/P&gt;&lt;P&gt;zldat(10),&lt;/P&gt;&lt;P&gt;matnr LIKE iseg-matnr,&lt;/P&gt;&lt;P&gt;comments(100),&lt;/P&gt;&lt;P&gt;END OF txmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Structures&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: outrec LIKE tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ord_reason_zke(3) VALUE 'O05',&lt;/P&gt;&lt;P&gt;ord_reason_zkr(3) VALUE 'O05',&lt;/P&gt;&lt;P&gt;ord_reason_zmor(3) VALUE 'O08',&lt;/P&gt;&lt;P&gt;ord_reason_zmre(3) VALUE 'O08'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tx_va01_ok(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_va01_err(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_va01_sub(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_mi02_ok(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_mi02_err(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_mi02_sub(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;n(5) TYPE n VALUE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Miscellaneous&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: stock_ind LIKE iseg-sobkz,&lt;/P&gt;&lt;P&gt;inplant_customer LIKE t9ip-kunnr,&lt;/P&gt;&lt;P&gt;qty_p TYPE p DECIMALS 3,&lt;/P&gt;&lt;P&gt;qty_c(13),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;qty_c(13) type p decimals 3,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;qty_c type p decimals 3,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;vmsgno(3) TYPE n,&lt;/P&gt;&lt;P&gt;count_date(10), "Date of the document&lt;/P&gt;&lt;P&gt;bdc_open_flag,&lt;/P&gt;&lt;P&gt;call_mode,&lt;/P&gt;&lt;P&gt;msg LIKE message,&lt;/P&gt;&lt;P&gt;prt_cnt TYPE i,&lt;/P&gt;&lt;P&gt;session_name(12),&lt;/P&gt;&lt;P&gt;tx_rc,&lt;/P&gt;&lt;P&gt;loop_cnt TYPE i,&lt;/P&gt;&lt;P&gt;ikpf_gidat(10).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Parameter Definitions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK pgm.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_doc# LIKE zpinv-iblnr OBLIGATORY,&lt;/P&gt;&lt;P&gt;p_year LIKE iseg-gjahr OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_org LIKE vbak-vkorg DEFAULT '1000',&lt;/P&gt;&lt;P&gt;p_chnl LIKE vbak-vtweg DEFAULT '01',&lt;/P&gt;&lt;P&gt;p_div LIKE vbak-spart DEFAULT '00'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK pgm.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;*parameters: testmode as checkbox default space.&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;INITIALIZATION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;p_year = sy-datum(4).&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;START-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initialize&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM init.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get data from the Phy Inv Document (PID)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The PID entered should be for Consignment or In-plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM get_data_frm_phy_inv_doc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build transactions for order processing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM build_order_trans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Submit orders&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM submit_order_transactions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If orders went through, set delete indicator on the PID's&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF tx_va01_err IS INITIAL.&lt;/P&gt;&lt;P&gt;PERFORM set_pid_delete.&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;Wrapup&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM wrapup.&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;END-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;&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;FORM INIT *&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;........ *&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 init.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR: stock_ind,&lt;/P&gt;&lt;P&gt;inplant_customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call_mode = 'N'. "No display&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if testmode = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;call_mode = 'A'. "Display mode&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;ENDFORM. "INIT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM GET_DATA_FRM_PHY_INV_DOC *&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;........ *&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_phy_inv_doc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VALIDATE PID AT THE HEADER LEVEL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM validate_pid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GET DATA AT ITEM LEVEL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT * FROM iseg&lt;/P&gt;&lt;P&gt;INTO CORRESPONDING FIELDS OF TABLE tiseg&lt;/P&gt;&lt;P&gt;WHERE iblnr = p_doc# AND gjahr = p_year AND&lt;/P&gt;&lt;P&gt;xnzae &amp;lt;&amp;gt; 'X' AND "NOT RECOUNT&lt;/P&gt;&lt;P&gt;xloek &amp;lt;&amp;gt; 'X' AND "NOT DELETED&lt;/P&gt;&lt;P&gt;xzael = 'X' AND "COUNTED&lt;/P&gt;&lt;P&gt;zldat &amp;lt;&amp;gt; '00000000'. "COUNT POSTED "redundant?&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;WRITE: / 'NO QUALIFIED ENTRIES WERE FOUND FOR THE PHY INV DOCUMENT',&lt;/P&gt;&lt;P&gt;p_doc#.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Is it Consignment?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;LOOP AT tiseg FROM 1 TO 1.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;IF tiseg-sobkz &amp;lt;&amp;gt; 'W'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;In-Plant?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE * FROM t9ip&lt;/P&gt;&lt;P&gt;WHERE werks = tiseg-werks.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;MOVE t9ip-kunnr TO inplant_customer.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Neither&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CLEAR inplant_customer.&lt;/P&gt;&lt;P&gt;MESSAGE ID 'ZS' TYPE 'I' NUMBER '909' WITH p_doc#.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "GET_DATA_FRM_PHY_INV_DOC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM VALIDATE_PID *&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;........ *&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_pid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR inplant_customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VALIDATE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR ikpf_gidat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM ikpf&lt;/P&gt;&lt;P&gt;WHERE iblnr = p_doc# AND gjahr = p_year.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;WRITE: / 'NO ENTRY FOUND FOR THE PHY INV DOCUMENT', p_doc#.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF ikpf-zstat &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;WRITE: / 'THE PHY INV DOCUMENT', p_doc#,&lt;/P&gt;&lt;P&gt;'INDICATES THAT ALL ITEMS HAVE NOT BEEN COUNTED'.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF ikpf-lstat = 'X'.&lt;/P&gt;&lt;P&gt;WRITE: / 'THE PHY INV DOCUMENT', p_doc#,&lt;/P&gt;&lt;P&gt;'INDICATES THAT ALL ITEMS HAVE ALREADY BEEN DELETED'.&lt;/P&gt;&lt;P&gt;STOP.&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;Save Planned Count date "01/14/2000&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CONCATENATE ikpf-gidat&lt;EM&gt;4(2) '/' ikpf-gidat&lt;/EM&gt;6(2) '/'&lt;/P&gt;&lt;P&gt;ikpf-gidat(4) INTO ikpf_gidat.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "VALIDATE_PID&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;FORM BUILD_ORDER_TRANS *&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;........ *&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 build_order_trans.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get Sales details in to internal table TISEG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY iblnr zeili.&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;IF tiseg-buchm &amp;lt;&amp;gt; tiseg-menge.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BOOKED QTY - COUNTED&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;tiseg-qty = tiseg-buchm - tiseg-menge.&lt;/P&gt;&lt;P&gt;tiseg-qty_p = tiseg-qty. "03/02/00&lt;/P&gt;&lt;P&gt;MODIFY tiseg.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Now, prepare data for BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If inplant_customer is filled in, take that for customer number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF NOT inplant_customer IS INITIAL.&lt;/P&gt;&lt;P&gt;tiseg-kunnr = inplant_customer.&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;Convert UOM from internal to external presentation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;input = tiseg-meins&lt;/P&gt;&lt;P&gt;language = sy-langu&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;output = tiseg-uom_conv&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;unit_not_found = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Identify Order Type (Booked-counted&amp;lt;0,CR-ZKE-ZMRE else DR-ZKR-ZMOR)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF tiseg-qty_p &amp;lt; 0.&lt;/P&gt;&lt;P&gt;tiseg-crdr_ind = 'C'.&lt;/P&gt;&lt;P&gt;tiseg-qty = ABS( tiseg-qty ).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Consignment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF inplant_customer IS INITIAL.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZKR '.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zkr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;InPlant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZMRE'.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zmre.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSEIF tiseg-qty_p &amp;gt; 0.&lt;/P&gt;&lt;P&gt;tiseg-crdr_ind = 'D'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Consignment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF inplant_customer IS INITIAL.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZKE '.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zke.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;InPlant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZMOR'.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zmor.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;tiseg-crdr_ind = 'X'. "No orders on these&lt;/P&gt;&lt;P&gt;CLEAR: tiseg-ord_rsn, tiseg-ord_type.&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;Get qty in char format&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;qty_p = tiseg-qty.&lt;/P&gt;&lt;P&gt;MOVE qty_p TO: qty_c, tiseg-qty_c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Update tiseg with the new fields.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;MODIFY tiseg.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tiseg2[] = tiseg[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT tiseg WHERE crdr_ind = 'X'.&lt;/P&gt;&lt;P&gt;DELETE tiseg.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tiseg3[] = tiseg[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "BUILD_ORDER_TRANS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM SUBMIT_ORDER_TRANSACTIONS *&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;........ *&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 submit_order_transactions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY crdr_ind matnr.&lt;/P&gt;&lt;P&gt;n = 1.&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Change in CR/DR order type, save and call Trans&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ON CHANGE OF tiseg-crdr_ind.&lt;/P&gt;&lt;P&gt;IF n &amp;gt; 1.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc_save.&lt;/P&gt;&lt;P&gt;PERFORM call_trans USING 'VA01'.&lt;/P&gt;&lt;P&gt;n = 1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;outrec = tiseg.&lt;/P&gt;&lt;P&gt;IF n = 1.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc1. "Screen 1 &amp;amp; hdr of screen 2&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc2. "Materials on screen 2&lt;/P&gt;&lt;P&gt;n = n + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Last record, save and call Trans&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;AT LAST.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc_save.&lt;/P&gt;&lt;P&gt;PERFORM call_trans USING 'VA01'.&lt;/P&gt;&lt;P&gt;ENDAT.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "SUBMIT_ORDER_TRANSACTIONS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_BDC1 *&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;........ *&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_bdc1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Sales Order - Initial Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM dynpro USING: 'X' 'SAPMV45A' '0101' ,&lt;/P&gt;&lt;P&gt;' ' 'VBAK-AUART' outrec-ord_type,&lt;/P&gt;&lt;P&gt;' ' 'VBAK-VKORG' p_org , "Sales org&lt;/P&gt;&lt;P&gt;' ' 'VBAK-VTWEG' p_chnl , "Distr Channel&lt;/P&gt;&lt;P&gt;' ' 'VBAK-SPART' p_div , "Div&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' . "Enter&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE outrec-zldat&lt;EM&gt;4(2) '/' outrec-zldat&lt;/EM&gt;6(2) '/'&lt;/P&gt;&lt;P&gt;outrec-zldat(4) INTO count_date.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Phy Inv Credit/Debit: Overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'X' 'SAPMV45A' '0400' , ""Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' ,&lt;/P&gt;&lt;P&gt;' ' 'KUAGV-KUNNR' outrec-kunnr ,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'VBAK-BSTDK' count_date . " Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;' ' 'VBKD-BSTDK' count_date .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF outrec-ord_type &amp;lt;&amp;gt; 'ZKR '.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'RV45A-KETDAT' ikpf_gidat . "Planned deliv date 01/14/00&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;*****Start Added on 26/02/2007&lt;/P&gt;&lt;P&gt;***Pick Sales TAB in VA01 for updating Ordering Reason&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING : ' ' 'BDC_OKCODE' '=T&amp;#0;1',&lt;/P&gt;&lt;P&gt;'X' 'SAPMV45A' '4001',&lt;/P&gt;&lt;P&gt;' ' 'VBAK-AUGRU' outrec-ord_rsn. " 'C25'.&lt;/P&gt;&lt;P&gt;***Come back to Item Overview Tab in VA01 for inserting Plant&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING : 'X' 'SAPMV45A' '4001',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=T&amp;#0;2'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;End of Add on 26/02/2007&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;PERFORM dynpro USING : 'X' 'SAPMV45A' '4001',&lt;/P&gt;&lt;P&gt;' ' 'RV45A-DWERK' outrec-werks , "Deliv Plant&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' , "Hdr-Bus Data&lt;/P&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' .&lt;/P&gt;&lt;P&gt;ENDFORM. "FILL_BDC1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_BDC2 *&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_bdc2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF n = 4. "4 double entries per page&lt;/P&gt;&lt;P&gt;n = 2. "On the next page start from 2nd line&lt;/P&gt;&lt;P&gt;PERFORM ldynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/20' 0, "Create item&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'X' 'SAPMV45A' '0400' 0. "Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' 0.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM ldynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'VBAP-MATNR' outrec-matnr n, "Material&lt;/P&gt;&lt;P&gt;' ' 'RV45A-KWMENG' outrec-qty_c n, "Quantity&lt;/P&gt;&lt;P&gt;' ' 'VBAP-VRKME' outrec-uom_conv n, "UoM&lt;/P&gt;&lt;P&gt;' ' 'RV45A-ETDAT' ikpf_gidat n, "Del Date 1&lt;/P&gt;&lt;P&gt;' ' 'VBAP-CHARG' outrec-charg n. "Batch#&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM ldynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' 0, "Enter&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'X' 'SAPMV45A' '0400' 0. ""Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "FILL_BDC2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_BDC3 *&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_bdc_save.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/11' . "Save&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "FILL_BDC_SAVE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM DYNPRO&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; DYNBEGIN *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; NAME *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; VALUE *&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;*------Begin of SAP Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;FORM dynpro USING dynbegin TYPE c " Unicode change&lt;/P&gt;&lt;P&gt;name TYPE bdc_prog&lt;/P&gt;&lt;P&gt;value TYPE clike.&lt;/P&gt;&lt;P&gt;*------End of SAP Unicode chnages - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-program,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;'X' TO bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-fnam,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-fval.&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;IF NOT value IS INITIAL.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "DYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM LDYNPRO *&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; DYNBEGIN *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; NAME *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; VALUE *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; N *&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;*------Begin of SAP unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;FORM ldynpro USING dynbegin TYPE c "Unicode change&lt;/P&gt;&lt;P&gt;name TYPE bdc_prog&lt;/P&gt;&lt;P&gt;value TYPE clike&lt;/P&gt;&lt;P&gt;n TYPE n.&lt;/P&gt;&lt;P&gt;*------End of SAp Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-program,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;'X' TO bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF n &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;CONCATENATE name '(' n ')' INTO bdc_tab-fnam.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MOVE name TO bdc_tab-fnam.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;MOVE value TO bdc_tab-fval.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT value IS INITIAL.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "LDYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM BDC_INSERT *&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;........ *&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; TCODE *&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 bdc_insert USING tcode.&lt;/P&gt;&lt;P&gt;DATA: l_tcode TYPE sy-tcode. "Added on 26/02/2007&lt;/P&gt;&lt;P&gt;IF bdc_open_flag = ' '.&lt;/P&gt;&lt;P&gt;CONCATENATE 'ZS' p_doc# INTO session_name.&lt;/P&gt;&lt;P&gt;&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 = session_name&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = 'X'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;l_tcode = tcode. "Added on 26/02/2007&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;tcode = l_tcode&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;bdc_open_flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "bdc_insert using tcode&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM SET_PID_DELETE *&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;........ *&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 set_pid_delete.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set Delete Ind on the items covered by the prev trans&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REFRESH tiseg. CLEAR tiseg.&lt;/P&gt;&lt;P&gt;tiseg[] = tiseg2[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY iblnr zeili.&lt;/P&gt;&lt;P&gt;loop_cnt = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF loop_cnt = 1.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0701' ,&lt;/P&gt;&lt;P&gt;' ' 'RM07I-IBLNR' p_doc# ,&lt;/P&gt;&lt;P&gt;' ' 'RM07I-GJAHR' p_year , "Sales org&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' . "Enter&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tiseg-zeili &amp;lt;&amp;gt; 001.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0721' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_CURSOR' 'ISEG-BSTAR(01)',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/20' ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '1701' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_CURSOR' 'RM07I-ZEILE',&lt;/P&gt;&lt;P&gt;' ' 'RM07I-ZEILE' tiseg-zeili ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' .&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0721' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_CURSOR' 'ISEG-BSTAR(01)' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=DP'. "'/14' "Set Del ind&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF loop_cnt = sy-tfill.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0721' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/11' . "Save&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ADD 1 TO loop_cnt.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM call_trans USING 'MI02'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "SET_PID_DELETE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM CALL_TRANS *&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;........ *&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; TX *&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;*-------Begin of SAP Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;FORM call_trans USING tx TYPE char4. " Unicode change&lt;/P&gt;&lt;P&gt;*-------End of SAP Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;CASE tx.&lt;/P&gt;&lt;P&gt;WHEN 'VA01'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_va01_sub.&lt;/P&gt;&lt;P&gt;WHEN 'MI02'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_mi02_sub.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION tx USING bdc_tab&lt;/P&gt;&lt;P&gt;MODE call_mode&lt;/P&gt;&lt;P&gt;UPDATE 'S'&lt;/P&gt;&lt;P&gt;MESSAGES INTO messtab .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tx_rc = sy-subrc. "Save RC&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Errors, write to BDC session only on MI02 "12/28/99&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;perform bdc_insert using tx. "12/28/99&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;IF tx = 'VA01'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_va01_err.&lt;/P&gt;&lt;P&gt;ELSEIF tx = 'MI02'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_mi02_err.&lt;/P&gt;&lt;P&gt;PERFORM bdc_insert USING tx. "12/28/99&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CLEAR tx_rc.&lt;/P&gt;&lt;P&gt;IF tx = 'VA01'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_va01_ok.&lt;/P&gt;&lt;P&gt;ELSEIF tx = 'MI02'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_mi02_ok.&lt;/P&gt;&lt;P&gt;ENDIF.&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;Get messages for OK/Err tx's both&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;LOOP AT messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR txmsg.&lt;/P&gt;&lt;P&gt;txmsg-tx = tx.&lt;/P&gt;&lt;P&gt;IF NOT tx_rc IS INITIAL.&lt;/P&gt;&lt;P&gt;txmsg-success = 'X'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM get_message.&lt;/P&gt;&lt;P&gt;IF sy-tabix = sy-tfill.&lt;/P&gt;&lt;P&gt;CONCATENATE '==&amp;gt;' msg INTO txmsg-comments. "Last rec.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;txmsg-comments = msg.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE tx.&lt;/P&gt;&lt;P&gt;WHEN 'VA01'.&lt;/P&gt;&lt;P&gt;txmsg-type = outrec-ord_type.&lt;/P&gt;&lt;P&gt;txmsg-reason = outrec-ord_rsn.&lt;/P&gt;&lt;P&gt;txmsg-matnr = outrec-matnr.&lt;/P&gt;&lt;P&gt;txmsg-zldat = count_date.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;APPEND txmsg.&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;CLEAR txmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Clear BDC table and Message table for next transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;REFRESH: bdc_tab, messtab.&lt;/P&gt;&lt;P&gt;CLEAR: bdc_tab, messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "CALL_TRANS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM GET_MESSAGE *&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;........ *&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_message.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vmsgno = messtab-msgnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WRITE_MESSAGE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;msgid = messtab-msgid&lt;/P&gt;&lt;P&gt;msgno = vmsgno&lt;/P&gt;&lt;P&gt;msgty = messtab-msgtyp&lt;/P&gt;&lt;P&gt;msgv1 = messtab-msgv1&lt;/P&gt;&lt;P&gt;msgv2 = messtab-msgv2&lt;/P&gt;&lt;P&gt;msgv3 = messtab-msgv3&lt;/P&gt;&lt;P&gt;msgv4 = messtab-msgv4&lt;/P&gt;&lt;P&gt;msgv5 = messtab-fldname&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;messg = msg&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;ENDFORM. "get_message&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM WRAPUP *&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;........ *&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 wrapup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF bdc_open_flag = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM write_stats.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "WRAPUP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;FORM CLOSE_BDC *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*FORM close_bdc.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;not_open = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;queue_error = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*ENDFORM. "CLOSE_BDC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM WRITE_STATS *&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 write_stats.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REFRESH tiseg. CLEAR tiseg.&lt;/P&gt;&lt;P&gt;tiseg[] = tiseg3[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 7 ON.&lt;/P&gt;&lt;P&gt;WRITE: /3 'PHYSICAL INV DOCUMENT:', p_doc#,&lt;/P&gt;&lt;P&gt;45 'YEAR: ', p_year, ' '.&lt;/P&gt;&lt;P&gt;WRITE: /3 'ORDER TXs SUBd:', tx_va01_sub,&lt;/P&gt;&lt;P&gt;30 'Errored:', tx_va01_err.&lt;/P&gt;&lt;P&gt;WRITE: /3 'PID TXs SUBd: ', tx_mi02_sub,&lt;/P&gt;&lt;P&gt;30 'Errored:', tx_mi02_err.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 7 OFF.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 4 ON .&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;WRITE: /4 'MATERIAL NUMBER', 23 ' QUANTITY', 37 'UOM',&lt;/P&gt;&lt;P&gt;42 'PLANT', 71 ' '.&lt;/P&gt;&lt;P&gt;WRITE: /4 '***************', 23 ' *******&lt;STRONG&gt;', 37 '&lt;/STRONG&gt;**',&lt;/P&gt;&lt;P&gt;42 '*****', 71 ' '.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY ord_type matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ON CHANGE OF tiseg-ord_type.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;WRITE: /6 'ORDER TYPE:', tiseg-ord_type,&lt;/P&gt;&lt;P&gt;26 'COUNT DATE:', count_date,&lt;/P&gt;&lt;P&gt;52 'CUSTOMER:', tiseg-kunnr.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE: /4 tiseg-matnr, 23 tiseg-qty_c, 37 tiseg-uom_conv,&lt;/P&gt;&lt;P&gt;42 tiseg-werks, 71 ' '.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 4 OFF.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tx_va01_err &amp;gt; 0.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;WRITE: /2 'Correct ERR in Sales Orders (VA01 Tx) and',&lt;/P&gt;&lt;P&gt;'reexecute the program'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tx_mi02_err &amp;gt; 0.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;WRITE: /2 'ERR found in executing PID change (MI02 Tx)'.&lt;/P&gt;&lt;P&gt;IF bdc_open_flag = 'X'.&lt;/P&gt;&lt;P&gt;WRITE: /2 'Correct ERR and submit the BDC session created'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tx_va01_err = 0 AND tx_mi02_err = 0.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 5 ON INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;WRITE: /3 'ALL TRANSACTIONS WERE SUCCESSFUL '.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 3 ON INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;WRITE: /20 'MESSAGES RECEIVED DURING TRANSACTION PROCESSING', 170 ' '.&lt;/P&gt;&lt;P&gt;WRITE: /2 'TX ', 8 'ERR?', 15 'ORDER TYPE', 27 'REASON',&lt;/P&gt;&lt;P&gt;36 'COUNT DATE', 49 'MATERIAL NUMBER',&lt;/P&gt;&lt;P&gt;69 'MESSAGES RECEIVED FROM TRANSACTION ', 170 ' '.&lt;/P&gt;&lt;P&gt;WRITE: /2 '***&lt;STRONG&gt;', 8 '&lt;/STRONG&gt;**&lt;STRONG&gt;', 15 '&lt;/STRONG&gt;********&lt;STRONG&gt;', 27 '&lt;/STRONG&gt;*****',&lt;/P&gt;&lt;P&gt;36 '*********&lt;STRONG&gt;', 49 '&lt;/STRONG&gt;**************',&lt;/P&gt;&lt;P&gt;69 '********************************** ', 170 ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;LOOP AT txmsg.&lt;/P&gt;&lt;P&gt;IF txmsg-success = ' '.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 3 ON.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ON CHANGE OF txmsg-type.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-tx = 'VA01'.&lt;/P&gt;&lt;P&gt;WRITE: /2 txmsg-tx, 8 txmsg-success, 15 txmsg-type,&lt;/P&gt;&lt;P&gt;27 txmsg-reason, 36 txmsg-zldat.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-tx = 'MI02'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;uline.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;format color 7 on intensified on.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;WRITE: /2 txmsg-tx, 8 'CHANGE PID:', p_doc#, 'YEAR:', p_year.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-tx = 'VA01'.&lt;/P&gt;&lt;P&gt;WRITE: 49 txmsg-matnr.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-comments(3) = '==&amp;gt;'.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;WRITE 69 txmsg-comments.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;WRITE 69 txmsg-comments.&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;ULINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "WRITE_STATS&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;Ashok... &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;NAVEEN KUMAR GU...   &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Posts: 1,991 &lt;/P&gt;&lt;P&gt;Questions: 64 &lt;/P&gt;&lt;P&gt;Registered: 2/4/06 &lt;/P&gt;&lt;P&gt;Forum points: 3,014  &lt;/P&gt;&lt;P&gt;   &lt;/P&gt;&lt;P&gt;   Re: bdc for vao1   &lt;/P&gt;&lt;P&gt;Posted: Mar 28, 2007 8:30 PM    in response to: asha sap       Reply      E-mail this post  &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the sample code...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA : w_auart(4) TYPE c,&lt;/P&gt;&lt;P&gt;w_vkorg(4) TYPE c,&lt;/P&gt;&lt;P&gt;w_vtweg(2) TYPE c,&lt;/P&gt;&lt;P&gt;w_spart(2) TYPE c,&lt;/P&gt;&lt;P&gt;w_kunnr(10) TYPE c,&lt;/P&gt;&lt;P&gt;w_kunrg(10) TYPE c,&lt;/P&gt;&lt;P&gt;w_bstkd(35) TYPE c,&lt;/P&gt;&lt;P&gt;w_bstdk(10) TYPE c,&lt;/P&gt;&lt;P&gt;w_kwmeng(18) TYPE c,&lt;/P&gt;&lt;P&gt;w_zterm(4) TYPE c,&lt;/P&gt;&lt;P&gt;w_inco1(3) TYPE c,&lt;/P&gt;&lt;P&gt;w_inco2(28) TYPE c,&lt;/P&gt;&lt;P&gt;w_augru(3) TYPE c.&lt;/P&gt;&lt;P&gt;DATA : var1 TYPE string,&lt;/P&gt;&lt;P&gt;var2 TYPE c VALUE '(',&lt;/P&gt;&lt;P&gt;var3 TYPE c VALUE ')',&lt;/P&gt;&lt;P&gt;num(2) TYPE c,&lt;/P&gt;&lt;P&gt;flag(1) TYPE c.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF it_order, " Internal table Structure&lt;/P&gt;&lt;P&gt;auart(4) TYPE c, " Sales Order Type&lt;/P&gt;&lt;P&gt;vkorg(4) TYPE c, " Sales Organization&lt;/P&gt;&lt;P&gt;vtweg(2) TYPE c, " Distribution Channel&lt;/P&gt;&lt;P&gt;spart(2) TYPE c, " Division&lt;/P&gt;&lt;P&gt;kunnr(10) TYPE c, " Sold-to-Party&lt;/P&gt;&lt;P&gt;kunrg(10) TYPE c, " Ship-to-Party&lt;/P&gt;&lt;P&gt;bstkd(35) TYPE c, " Purchase Order No&lt;/P&gt;&lt;P&gt;bstdk(10) TYPE c, " Purchase Order Date&lt;/P&gt;&lt;P&gt;zterm(4) TYPE c, " Payment Terms&lt;/P&gt;&lt;P&gt;inco1(3) TYPE c, " Inco Terms1&lt;/P&gt;&lt;P&gt;inco2(20) TYPE c, " Inco Terms2&lt;/P&gt;&lt;P&gt;augru(3) TYPE c, " Order Reason&lt;/P&gt;&lt;P&gt;mabnr(18) TYPE c, " Material No&lt;/P&gt;&lt;P&gt;kwmeng(18) TYPE c, " Quantity&lt;/P&gt;&lt;P&gt;END OF it_order,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab LIKE STANDARD TABLE OF it_order WITH HEADER LINE.&lt;/P&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;PARAMETER filename LIKE rlgrap-filename.&lt;/P&gt;&lt;P&gt;PARAMETER session LIKE apqi-groupid.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the file path&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;def_filename = filename&lt;/P&gt;&lt;P&gt;def_path = ' '&lt;/P&gt;&lt;P&gt;mask = ',&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;mode = 'O'&lt;/P&gt;&lt;P&gt;title = 'Select File'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;filename = filename&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;selection_cancel = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CHECK sy-subrc = 0.&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;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;codepage = ' '&lt;/P&gt;&lt;P&gt;filename = filename&lt;/P&gt;&lt;P&gt;filetype = 'ASC'&lt;/P&gt;&lt;P&gt;headlen = ' '&lt;/P&gt;&lt;P&gt;line_exit = ' '&lt;/P&gt;&lt;P&gt;trunclen = ' '&lt;/P&gt;&lt;P&gt;user_form = ' '&lt;/P&gt;&lt;P&gt;user_prog = ' '&lt;/P&gt;&lt;P&gt;dat_d_format = ' '&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILELENGTH =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = itab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;conversion_error = 1&lt;/P&gt;&lt;P&gt;file_open_error = 2&lt;/P&gt;&lt;P&gt;file_read_error = 3&lt;/P&gt;&lt;P&gt;invalid_type = 4&lt;/P&gt;&lt;P&gt;no_batch = 5&lt;/P&gt;&lt;P&gt;unknown_error = 6&lt;/P&gt;&lt;P&gt;invalid_table_width = 7&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;customer_error = 9&lt;/P&gt;&lt;P&gt;OTHERS = 10.&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;PERFORM open_group.&lt;/P&gt;&lt;P&gt;LOOP AT itab.&lt;/P&gt;&lt;P&gt;CLEAR : w_auart,w_vkorg,w_vtweg,w_spart,w_kunnr,w_kunrg,&lt;/P&gt;&lt;P&gt;w_bstkd,w_bstdk,w_zterm,w_inco1,w_inco2,w_augru.&lt;/P&gt;&lt;P&gt;w_auart = itab-auart.&lt;/P&gt;&lt;P&gt;w_vkorg = itab-vkorg.&lt;/P&gt;&lt;P&gt;w_vtweg = itab-vtweg.&lt;/P&gt;&lt;P&gt;w_spart = itab-spart.&lt;/P&gt;&lt;P&gt;w_kunnr = itab-kunnr.&lt;/P&gt;&lt;P&gt;w_kunrg = itab-kunrg.&lt;/P&gt;&lt;P&gt;w_bstkd = itab-bstkd.&lt;/P&gt;&lt;P&gt;w_bstdk = itab-bstdk.&lt;/P&gt;&lt;P&gt;w_zterm = itab-zterm.&lt;/P&gt;&lt;P&gt;w_inco1 = itab-inco1.&lt;/P&gt;&lt;P&gt;w_inco2 = itab-inco2.&lt;/P&gt;&lt;P&gt;w_augru = itab-augru.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ON CHANGE OF itab-kunnr OR itab-kunrg OR itab-bstkd .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flag = 0.&lt;/P&gt;&lt;P&gt;num = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '0101'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'VBAK-AUART'.&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 'VBAK-AUART' " Order Type&lt;/P&gt;&lt;P&gt;itab-auart.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-VKORG' " Sales Organization&lt;/P&gt;&lt;P&gt;itab-vkorg.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-VTWEG' " Distribution Channel&lt;/P&gt;&lt;P&gt;itab-vtweg.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-SPART' " Division&lt;/P&gt;&lt;P&gt;itab-spart.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.&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 'VBKD-BSTKD' " PO Number&lt;/P&gt;&lt;P&gt;itab-bstkd.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-BSTDK' " PO Date&lt;/P&gt;&lt;P&gt;itab-bstdk.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'KUAGV-KUNNR' " Sold to Party&lt;/P&gt;&lt;P&gt;itab-kunnr.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'KUWEV-KUNNR' " Ship to Party&lt;/P&gt;&lt;P&gt;itab-kunrg.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-ZTERM' " Payment Terms&lt;/P&gt;&lt;P&gt;itab-zterm.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-INCO1' " Inco Terms1&lt;/P&gt;&lt;P&gt;itab-inco1.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-INCO2' " Inco Terms2&lt;/P&gt;&lt;P&gt;itab-inco2.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-AUGRU' " Order Reason&lt;/P&gt;&lt;P&gt;itab-augru.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;IF flag = 0.&lt;/P&gt;&lt;P&gt;LOOP AT itab WHERE bstkd = itab-bstkd AND kunnr = itab-kunnr .&lt;/P&gt;&lt;P&gt;var1 = 'RV45A-MABNR'.&lt;/P&gt;&lt;P&gt;CONCATENATE var1 var2 num var3 INTO var1.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING var1&lt;/P&gt;&lt;P&gt;itab-mabnr.&lt;/P&gt;&lt;P&gt;var1 = 'RV45A-KWMENG'.&lt;/P&gt;&lt;P&gt;CONCATENATE var1 var2 num var3 INTO var1.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING var1&lt;/P&gt;&lt;P&gt;itab-kwmeng.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.&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;num = 2.&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;ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONTINUE.&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;flag = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=SICH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_transaction USING 'VA01'.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;PERFORM close_group.&lt;/P&gt;&lt;P&gt;WRITE : / 'Session',session, 'was Created'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM open_group.&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 = session&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM close_group.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_transaction USING tcode.&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&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING program dynpro.&lt;/P&gt;&lt;P&gt;CLEAR bdcdata.&lt;/P&gt;&lt;P&gt;bdcdata-program = program.&lt;/P&gt;&lt;P&gt;bdcdata-dynpro = dynpro.&lt;/P&gt;&lt;P&gt;bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;APPEND bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&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; ' '.&lt;/P&gt;&lt;P&gt;CLEAR bdcdata.&lt;/P&gt;&lt;P&gt;bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;APPEND bdcdata.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;hope this will useful to you.........&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;reward points if useful&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;sunil kairam.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 06 Dec 2007 04:41:02 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-12-06T04:41:02Z</dc:date>
    <item>
      <title>BDC Program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/3109556#M738250</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could any give me program for Sales order for both call transaction and Session method with error handling separately&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With Regards,&lt;/P&gt;&lt;P&gt;Sunil&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Dec 2007 17:52:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/3109556#M738250</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-05T17:52:59Z</dc:date>
    </item>
    <item>
      <title>Re: BDC Program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/3109557#M738251</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sunil,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check the links below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/forums" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/forums&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/forums" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/forums&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/sdn/forums" target="test_blank"&gt;https://www.sdn.sap.com/irj/sdn/forums&lt;/A&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;REPORT zsdcidoc NO STANDARD PAGE HEADING LINE-SIZE 160.&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;OBJECT NAME: ZSDCIDOC&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OBJECT TYPE: Executable Program&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;DESCRIPTION: Create Sales Documents on variances in&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Consignment/InPlant physical inventory.&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;PROGRAM CHANGE LOG:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NAME DATE DESCRIPTION OF CHANGE&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;VOOTKURA 11/19/99 Initial release&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VOOTKURA 11/28/99 Don't create BDC session on errors&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VOOTKURA 01/10/2000 On Sales Ord, ReqDelDate=CountDate&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VOOTKURA 01/14/2000 Make ReqDelDate=PlannedCountDate&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;DB TABLES&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;Mod. By Date Description Transport *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NEMANIR 23/08/2006 Modified for Unicode Compliance DEVK914940 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;in lines 492, 527-529, 646 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VIGNESWARAN S 01/03/2007 Corrected BDC Recording To&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Sale Order *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;TABLES: mkpf, "Material Document Header&lt;/P&gt;&lt;P&gt;t9ip, "In-plants - user table&lt;/P&gt;&lt;P&gt;iseg, "Physical Inventory Document Items&lt;/P&gt;&lt;P&gt;ikpf. "Header: Physical Inventory Document&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tiseg OCCURS 0,&lt;/P&gt;&lt;P&gt;iblnr LIKE iseg-iblnr,&lt;/P&gt;&lt;P&gt;gjahr LIKE iseg-gjahr,&lt;/P&gt;&lt;P&gt;zeili LIKE iseg-zeili,&lt;/P&gt;&lt;P&gt;matnr LIKE iseg-matnr,&lt;/P&gt;&lt;P&gt;werks LIKE iseg-werks,&lt;/P&gt;&lt;P&gt;charg LIKE iseg-charg,&lt;/P&gt;&lt;P&gt;sobkz LIKE iseg-sobkz,&lt;/P&gt;&lt;P&gt;kunnr LIKE iseg-kunnr,&lt;/P&gt;&lt;P&gt;zldat LIKE iseg-zldat,&lt;/P&gt;&lt;P&gt;budat LIKE iseg-budat,&lt;/P&gt;&lt;P&gt;xzael LIKE iseg-xzael,&lt;/P&gt;&lt;P&gt;xdiff LIKE iseg-xdiff,&lt;/P&gt;&lt;P&gt;xnzae LIKE iseg-xnzae,&lt;/P&gt;&lt;P&gt;xloek LIKE iseg-xloek,&lt;/P&gt;&lt;P&gt;xamei LIKE iseg-xamei,&lt;/P&gt;&lt;P&gt;buchm LIKE iseg-buchm,&lt;/P&gt;&lt;P&gt;xnull LIKE iseg-xnull,&lt;/P&gt;&lt;P&gt;menge LIKE iseg-menge,&lt;/P&gt;&lt;P&gt;meins LIKE iseg-meins,&lt;/P&gt;&lt;P&gt;erfmg LIKE iseg-erfmg,&lt;/P&gt;&lt;P&gt;erfme LIKE iseg-erfme,&lt;/P&gt;&lt;P&gt;crdr_ind(1),&lt;/P&gt;&lt;P&gt;ord_type(4),&lt;/P&gt;&lt;P&gt;ord_rsn(3),&lt;/P&gt;&lt;P&gt;qty_p TYPE p DECIMALS 3, "03/02/00&lt;/P&gt;&lt;P&gt;qty(13),&lt;/P&gt;&lt;P&gt;qty_c(13),&lt;/P&gt;&lt;P&gt;uom_conv(3),&lt;/P&gt;&lt;P&gt;END OF tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: tiseg2 LIKE tiseg OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: tiseg3 LIKE tiseg OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table BDC_TAB has BDCDATA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: bdc_tab LIKE bdcdata OCCURS 5 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table MESSTAB - Message table for use in Call transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF messtab OCCURS 5.&lt;/P&gt;&lt;P&gt;INCLUDE STRUCTURE bdcmsgcoll.&lt;/P&gt;&lt;P&gt;DATA: END OF messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TXMSG has info on call trans output&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF txmsg OCCURS 0,&lt;/P&gt;&lt;P&gt;tx(4),&lt;/P&gt;&lt;P&gt;success,&lt;/P&gt;&lt;P&gt;type LIKE vbak-auart,&lt;/P&gt;&lt;P&gt;reason(4),&lt;/P&gt;&lt;P&gt;zldat(10),&lt;/P&gt;&lt;P&gt;matnr LIKE iseg-matnr,&lt;/P&gt;&lt;P&gt;comments(100),&lt;/P&gt;&lt;P&gt;END OF txmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Structures&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: outrec LIKE tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ord_reason_zke(3) VALUE 'O05',&lt;/P&gt;&lt;P&gt;ord_reason_zkr(3) VALUE 'O05',&lt;/P&gt;&lt;P&gt;ord_reason_zmor(3) VALUE 'O08',&lt;/P&gt;&lt;P&gt;ord_reason_zmre(3) VALUE 'O08'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: tx_va01_ok(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_va01_err(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_va01_sub(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_mi02_ok(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_mi02_err(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;tx_mi02_sub(3) TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;n(5) TYPE n VALUE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA DEFINITIONS - Miscellaneous&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: stock_ind LIKE iseg-sobkz,&lt;/P&gt;&lt;P&gt;inplant_customer LIKE t9ip-kunnr,&lt;/P&gt;&lt;P&gt;qty_p TYPE p DECIMALS 3,&lt;/P&gt;&lt;P&gt;qty_c(13),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;qty_c(13) type p decimals 3,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;qty_c type p decimals 3,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;vmsgno(3) TYPE n,&lt;/P&gt;&lt;P&gt;count_date(10), "Date of the document&lt;/P&gt;&lt;P&gt;bdc_open_flag,&lt;/P&gt;&lt;P&gt;call_mode,&lt;/P&gt;&lt;P&gt;msg LIKE message,&lt;/P&gt;&lt;P&gt;prt_cnt TYPE i,&lt;/P&gt;&lt;P&gt;session_name(12),&lt;/P&gt;&lt;P&gt;tx_rc,&lt;/P&gt;&lt;P&gt;loop_cnt TYPE i,&lt;/P&gt;&lt;P&gt;ikpf_gidat(10).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Parameter Definitions&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK pgm.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_doc# LIKE zpinv-iblnr OBLIGATORY,&lt;/P&gt;&lt;P&gt;p_year LIKE iseg-gjahr OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_org LIKE vbak-vkorg DEFAULT '1000',&lt;/P&gt;&lt;P&gt;p_chnl LIKE vbak-vtweg DEFAULT '01',&lt;/P&gt;&lt;P&gt;p_div LIKE vbak-spart DEFAULT '00'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK pgm.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;*parameters: testmode as checkbox default space.&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;INITIALIZATION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;p_year = sy-datum(4).&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;START-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initialize&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM init.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get data from the Phy Inv Document (PID)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The PID entered should be for Consignment or In-plant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM get_data_frm_phy_inv_doc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build transactions for order processing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM build_order_trans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Submit orders&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM submit_order_transactions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If orders went through, set delete indicator on the PID's&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF tx_va01_err IS INITIAL.&lt;/P&gt;&lt;P&gt;PERFORM set_pid_delete.&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;Wrapup&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM wrapup.&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;END-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;&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;FORM INIT *&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;........ *&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 init.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR: stock_ind,&lt;/P&gt;&lt;P&gt;inplant_customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call_mode = 'N'. "No display&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if testmode = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;call_mode = 'A'. "Display mode&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;ENDFORM. "INIT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM GET_DATA_FRM_PHY_INV_DOC *&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;........ *&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_phy_inv_doc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VALIDATE PID AT THE HEADER LEVEL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM validate_pid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GET DATA AT ITEM LEVEL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT * FROM iseg&lt;/P&gt;&lt;P&gt;INTO CORRESPONDING FIELDS OF TABLE tiseg&lt;/P&gt;&lt;P&gt;WHERE iblnr = p_doc# AND gjahr = p_year AND&lt;/P&gt;&lt;P&gt;xnzae &amp;lt;&amp;gt; 'X' AND "NOT RECOUNT&lt;/P&gt;&lt;P&gt;xloek &amp;lt;&amp;gt; 'X' AND "NOT DELETED&lt;/P&gt;&lt;P&gt;xzael = 'X' AND "COUNTED&lt;/P&gt;&lt;P&gt;zldat &amp;lt;&amp;gt; '00000000'. "COUNT POSTED "redundant?&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;WRITE: / 'NO QUALIFIED ENTRIES WERE FOUND FOR THE PHY INV DOCUMENT',&lt;/P&gt;&lt;P&gt;p_doc#.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Is it Consignment?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;LOOP AT tiseg FROM 1 TO 1.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;IF tiseg-sobkz &amp;lt;&amp;gt; 'W'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;In-Plant?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECT SINGLE * FROM t9ip&lt;/P&gt;&lt;P&gt;WHERE werks = tiseg-werks.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;MOVE t9ip-kunnr TO inplant_customer.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Neither&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CLEAR inplant_customer.&lt;/P&gt;&lt;P&gt;MESSAGE ID 'ZS' TYPE 'I' NUMBER '909' WITH p_doc#.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "GET_DATA_FRM_PHY_INV_DOC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM VALIDATE_PID *&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;........ *&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_pid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR inplant_customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;VALIDATE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR ikpf_gidat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT SINGLE * FROM ikpf&lt;/P&gt;&lt;P&gt;WHERE iblnr = p_doc# AND gjahr = p_year.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;WRITE: / 'NO ENTRY FOUND FOR THE PHY INV DOCUMENT', p_doc#.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF ikpf-zstat &amp;lt;&amp;gt; 'X'.&lt;/P&gt;&lt;P&gt;WRITE: / 'THE PHY INV DOCUMENT', p_doc#,&lt;/P&gt;&lt;P&gt;'INDICATES THAT ALL ITEMS HAVE NOT BEEN COUNTED'.&lt;/P&gt;&lt;P&gt;STOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF ikpf-lstat = 'X'.&lt;/P&gt;&lt;P&gt;WRITE: / 'THE PHY INV DOCUMENT', p_doc#,&lt;/P&gt;&lt;P&gt;'INDICATES THAT ALL ITEMS HAVE ALREADY BEEN DELETED'.&lt;/P&gt;&lt;P&gt;STOP.&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;Save Planned Count date "01/14/2000&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CONCATENATE ikpf-gidat&lt;EM&gt;4(2) '/' ikpf-gidat&lt;/EM&gt;6(2) '/'&lt;/P&gt;&lt;P&gt;ikpf-gidat(4) INTO ikpf_gidat.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "VALIDATE_PID&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;FORM BUILD_ORDER_TRANS *&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;........ *&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 build_order_trans.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get Sales details in to internal table TISEG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY iblnr zeili.&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;IF tiseg-buchm &amp;lt;&amp;gt; tiseg-menge.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BOOKED QTY - COUNTED&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;tiseg-qty = tiseg-buchm - tiseg-menge.&lt;/P&gt;&lt;P&gt;tiseg-qty_p = tiseg-qty. "03/02/00&lt;/P&gt;&lt;P&gt;MODIFY tiseg.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Now, prepare data for BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If inplant_customer is filled in, take that for customer number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF NOT inplant_customer IS INITIAL.&lt;/P&gt;&lt;P&gt;tiseg-kunnr = inplant_customer.&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;Convert UOM from internal to external presentation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;input = tiseg-meins&lt;/P&gt;&lt;P&gt;language = sy-langu&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;output = tiseg-uom_conv&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;unit_not_found = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Identify Order Type (Booked-counted&amp;lt;0,CR-ZKE-ZMRE else DR-ZKR-ZMOR)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF tiseg-qty_p &amp;lt; 0.&lt;/P&gt;&lt;P&gt;tiseg-crdr_ind = 'C'.&lt;/P&gt;&lt;P&gt;tiseg-qty = ABS( tiseg-qty ).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Consignment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF inplant_customer IS INITIAL.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZKR '.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zkr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;InPlant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZMRE'.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zmre.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSEIF tiseg-qty_p &amp;gt; 0.&lt;/P&gt;&lt;P&gt;tiseg-crdr_ind = 'D'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Consignment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF inplant_customer IS INITIAL.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZKE '.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zke.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;InPlant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;tiseg-ord_type = 'ZMOR'.&lt;/P&gt;&lt;P&gt;tiseg-ord_rsn = ord_reason_zmor.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;tiseg-crdr_ind = 'X'. "No orders on these&lt;/P&gt;&lt;P&gt;CLEAR: tiseg-ord_rsn, tiseg-ord_type.&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;Get qty in char format&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;qty_p = tiseg-qty.&lt;/P&gt;&lt;P&gt;MOVE qty_p TO: qty_c, tiseg-qty_c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Update tiseg with the new fields.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;MODIFY tiseg.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tiseg2[] = tiseg[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT tiseg WHERE crdr_ind = 'X'.&lt;/P&gt;&lt;P&gt;DELETE tiseg.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tiseg3[] = tiseg[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "BUILD_ORDER_TRANS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM SUBMIT_ORDER_TRANSACTIONS *&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;........ *&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 submit_order_transactions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY crdr_ind matnr.&lt;/P&gt;&lt;P&gt;n = 1.&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Change in CR/DR order type, save and call Trans&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ON CHANGE OF tiseg-crdr_ind.&lt;/P&gt;&lt;P&gt;IF n &amp;gt; 1.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc_save.&lt;/P&gt;&lt;P&gt;PERFORM call_trans USING 'VA01'.&lt;/P&gt;&lt;P&gt;n = 1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;outrec = tiseg.&lt;/P&gt;&lt;P&gt;IF n = 1.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc1. "Screen 1 &amp;amp; hdr of screen 2&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc2. "Materials on screen 2&lt;/P&gt;&lt;P&gt;n = n + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Last record, save and call Trans&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;AT LAST.&lt;/P&gt;&lt;P&gt;PERFORM fill_bdc_save.&lt;/P&gt;&lt;P&gt;PERFORM call_trans USING 'VA01'.&lt;/P&gt;&lt;P&gt;ENDAT.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "SUBMIT_ORDER_TRANSACTIONS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_BDC1 *&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;........ *&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_bdc1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Sales Order - Initial Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM dynpro USING: 'X' 'SAPMV45A' '0101' ,&lt;/P&gt;&lt;P&gt;' ' 'VBAK-AUART' outrec-ord_type,&lt;/P&gt;&lt;P&gt;' ' 'VBAK-VKORG' p_org , "Sales org&lt;/P&gt;&lt;P&gt;' ' 'VBAK-VTWEG' p_chnl , "Distr Channel&lt;/P&gt;&lt;P&gt;' ' 'VBAK-SPART' p_div , "Div&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' . "Enter&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE outrec-zldat&lt;EM&gt;4(2) '/' outrec-zldat&lt;/EM&gt;6(2) '/'&lt;/P&gt;&lt;P&gt;outrec-zldat(4) INTO count_date.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Phy Inv Credit/Debit: Overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'X' 'SAPMV45A' '0400' , ""Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' ,&lt;/P&gt;&lt;P&gt;' ' 'KUAGV-KUNNR' outrec-kunnr ,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'VBAK-BSTDK' count_date . " Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;' ' 'VBKD-BSTDK' count_date .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF outrec-ord_type &amp;lt;&amp;gt; 'ZKR '.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'RV45A-KETDAT' ikpf_gidat . "Planned deliv date 01/14/00&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;*****Start Added on 26/02/2007&lt;/P&gt;&lt;P&gt;***Pick Sales TAB in VA01 for updating Ordering Reason&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING : ' ' 'BDC_OKCODE' '=T&amp;#0;1',&lt;/P&gt;&lt;P&gt;'X' 'SAPMV45A' '4001',&lt;/P&gt;&lt;P&gt;' ' 'VBAK-AUGRU' outrec-ord_rsn. " 'C25'.&lt;/P&gt;&lt;P&gt;***Come back to Item Overview Tab in VA01 for inserting Plant&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING : 'X' 'SAPMV45A' '4001',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=T&amp;#0;2'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;End of Add on 26/02/2007&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;PERFORM dynpro USING : 'X' 'SAPMV45A' '4001',&lt;/P&gt;&lt;P&gt;' ' 'RV45A-DWERK' outrec-werks , "Deliv Plant&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' , "Hdr-Bus Data&lt;/P&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' .&lt;/P&gt;&lt;P&gt;ENDFORM. "FILL_BDC1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_BDC2 *&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_bdc2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF n = 4. "4 double entries per page&lt;/P&gt;&lt;P&gt;n = 2. "On the next page start from 2nd line&lt;/P&gt;&lt;P&gt;PERFORM ldynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/20' 0, "Create item&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'X' 'SAPMV45A' '0400' 0. "Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' 0.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM ldynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'VBAP-MATNR' outrec-matnr n, "Material&lt;/P&gt;&lt;P&gt;' ' 'RV45A-KWMENG' outrec-qty_c n, "Quantity&lt;/P&gt;&lt;P&gt;' ' 'VBAP-VRKME' outrec-uom_conv n, "UoM&lt;/P&gt;&lt;P&gt;' ' 'RV45A-ETDAT' ikpf_gidat n, "Del Date 1&lt;/P&gt;&lt;P&gt;' ' 'VBAP-CHARG' outrec-charg n. "Batch#&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM ldynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' 0, "Enter&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'X' 'SAPMV45A' '0400' 0. ""Changed on 22.01.07&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;'X' 'SAPMV45A' '4001' 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "FILL_BDC2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_BDC3 *&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_bdc_save.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/11' . "Save&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "FILL_BDC_SAVE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM DYNPRO&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; DYNBEGIN *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; NAME *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; VALUE *&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;*------Begin of SAP Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;FORM dynpro USING dynbegin TYPE c " Unicode change&lt;/P&gt;&lt;P&gt;name TYPE bdc_prog&lt;/P&gt;&lt;P&gt;value TYPE clike.&lt;/P&gt;&lt;P&gt;*------End of SAP Unicode chnages - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-program,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;'X' TO bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-fnam,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-fval.&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;IF NOT value IS INITIAL.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "DYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM LDYNPRO *&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; DYNBEGIN *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; NAME *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; VALUE *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; N *&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;*------Begin of SAP unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;FORM ldynpro USING dynbegin TYPE c "Unicode change&lt;/P&gt;&lt;P&gt;name TYPE bdc_prog&lt;/P&gt;&lt;P&gt;value TYPE clike&lt;/P&gt;&lt;P&gt;n TYPE n.&lt;/P&gt;&lt;P&gt;*------End of SAp Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;IF dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;MOVE: name TO bdc_tab-program,&lt;/P&gt;&lt;P&gt;value TO bdc_tab-dynpro,&lt;/P&gt;&lt;P&gt;'X' TO bdc_tab-dynbegin.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF n &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;CONCATENATE name '(' n ')' INTO bdc_tab-fnam.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MOVE name TO bdc_tab-fnam.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;MOVE value TO bdc_tab-fval.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF NOT value IS INITIAL.&lt;/P&gt;&lt;P&gt;APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "LDYNPRO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM BDC_INSERT *&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;........ *&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; TCODE *&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 bdc_insert USING tcode.&lt;/P&gt;&lt;P&gt;DATA: l_tcode TYPE sy-tcode. "Added on 26/02/2007&lt;/P&gt;&lt;P&gt;IF bdc_open_flag = ' '.&lt;/P&gt;&lt;P&gt;CONCATENATE 'ZS' p_doc# INTO session_name.&lt;/P&gt;&lt;P&gt;&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 = session_name&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = 'X'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;l_tcode = tcode. "Added on 26/02/2007&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;tcode = l_tcode&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;bdc_open_flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "bdc_insert using tcode&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM SET_PID_DELETE *&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;........ *&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 set_pid_delete.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set Delete Ind on the items covered by the prev trans&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REFRESH tiseg. CLEAR tiseg.&lt;/P&gt;&lt;P&gt;tiseg[] = tiseg2[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY iblnr zeili.&lt;/P&gt;&lt;P&gt;loop_cnt = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF loop_cnt = 1.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0701' ,&lt;/P&gt;&lt;P&gt;' ' 'RM07I-IBLNR' p_doc# ,&lt;/P&gt;&lt;P&gt;' ' 'RM07I-GJAHR' p_year , "Sales org&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' . "Enter&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tiseg-zeili &amp;lt;&amp;gt; 001.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0721' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_CURSOR' 'ISEG-BSTAR(01)',&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/20' ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '1701' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_CURSOR' 'RM07I-ZEILE',&lt;/P&gt;&lt;P&gt;' ' 'RM07I-ZEILE' tiseg-zeili ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/00' .&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0721' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_CURSOR' 'ISEG-BSTAR(01)' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '=DP'. "'/14' "Set Del ind&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF loop_cnt = sy-tfill.&lt;/P&gt;&lt;P&gt;PERFORM dynpro USING:&lt;/P&gt;&lt;P&gt;'X' 'SAPMM07I' '0721' ,&lt;/P&gt;&lt;P&gt;' ' 'BDC_OKCODE' '/11' . "Save&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ADD 1 TO loop_cnt.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM call_trans USING 'MI02'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "SET_PID_DELETE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM CALL_TRANS *&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;........ *&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; TX *&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;*-------Begin of SAP Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;FORM call_trans USING tx TYPE char4. " Unicode change&lt;/P&gt;&lt;P&gt;*-------End of SAP Unicode changes - &amp;lt;23/08/2006&amp;gt;&lt;/P&gt;&lt;P&gt;CASE tx.&lt;/P&gt;&lt;P&gt;WHEN 'VA01'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_va01_sub.&lt;/P&gt;&lt;P&gt;WHEN 'MI02'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_mi02_sub.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION tx USING bdc_tab&lt;/P&gt;&lt;P&gt;MODE call_mode&lt;/P&gt;&lt;P&gt;UPDATE 'S'&lt;/P&gt;&lt;P&gt;MESSAGES INTO messtab .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tx_rc = sy-subrc. "Save RC&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Errors, write to BDC session only on MI02 "12/28/99&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;perform bdc_insert using tx. "12/28/99&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;IF tx = 'VA01'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_va01_err.&lt;/P&gt;&lt;P&gt;ELSEIF tx = 'MI02'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_mi02_err.&lt;/P&gt;&lt;P&gt;PERFORM bdc_insert USING tx. "12/28/99&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CLEAR tx_rc.&lt;/P&gt;&lt;P&gt;IF tx = 'VA01'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_va01_ok.&lt;/P&gt;&lt;P&gt;ELSEIF tx = 'MI02'.&lt;/P&gt;&lt;P&gt;ADD 1 TO tx_mi02_ok.&lt;/P&gt;&lt;P&gt;ENDIF.&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;Get messages for OK/Err tx's both&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;LOOP AT messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR txmsg.&lt;/P&gt;&lt;P&gt;txmsg-tx = tx.&lt;/P&gt;&lt;P&gt;IF NOT tx_rc IS INITIAL.&lt;/P&gt;&lt;P&gt;txmsg-success = 'X'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM get_message.&lt;/P&gt;&lt;P&gt;IF sy-tabix = sy-tfill.&lt;/P&gt;&lt;P&gt;CONCATENATE '==&amp;gt;' msg INTO txmsg-comments. "Last rec.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;txmsg-comments = msg.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE tx.&lt;/P&gt;&lt;P&gt;WHEN 'VA01'.&lt;/P&gt;&lt;P&gt;txmsg-type = outrec-ord_type.&lt;/P&gt;&lt;P&gt;txmsg-reason = outrec-ord_rsn.&lt;/P&gt;&lt;P&gt;txmsg-matnr = outrec-matnr.&lt;/P&gt;&lt;P&gt;txmsg-zldat = count_date.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;APPEND txmsg.&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;CLEAR txmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Clear BDC table and Message table for next transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;REFRESH: bdc_tab, messtab.&lt;/P&gt;&lt;P&gt;CLEAR: bdc_tab, messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "CALL_TRANS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM GET_MESSAGE *&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;........ *&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_message.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vmsgno = messtab-msgnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WRITE_MESSAGE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;msgid = messtab-msgid&lt;/P&gt;&lt;P&gt;msgno = vmsgno&lt;/P&gt;&lt;P&gt;msgty = messtab-msgtyp&lt;/P&gt;&lt;P&gt;msgv1 = messtab-msgv1&lt;/P&gt;&lt;P&gt;msgv2 = messtab-msgv2&lt;/P&gt;&lt;P&gt;msgv3 = messtab-msgv3&lt;/P&gt;&lt;P&gt;msgv4 = messtab-msgv4&lt;/P&gt;&lt;P&gt;msgv5 = messtab-fldname&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;messg = msg&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;ENDFORM. "get_message&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM WRAPUP *&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;........ *&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 wrapup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF bdc_open_flag = 'X'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM write_stats.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "WRAPUP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;FORM CLOSE_BDC *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*FORM close_bdc.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;not_open = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;queue_error = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*ENDFORM. "CLOSE_BDC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM WRITE_STATS *&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 write_stats.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REFRESH tiseg. CLEAR tiseg.&lt;/P&gt;&lt;P&gt;tiseg[] = tiseg3[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 7 ON.&lt;/P&gt;&lt;P&gt;WRITE: /3 'PHYSICAL INV DOCUMENT:', p_doc#,&lt;/P&gt;&lt;P&gt;45 'YEAR: ', p_year, ' '.&lt;/P&gt;&lt;P&gt;WRITE: /3 'ORDER TXs SUBd:', tx_va01_sub,&lt;/P&gt;&lt;P&gt;30 'Errored:', tx_va01_err.&lt;/P&gt;&lt;P&gt;WRITE: /3 'PID TXs SUBd: ', tx_mi02_sub,&lt;/P&gt;&lt;P&gt;30 'Errored:', tx_mi02_err.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 7 OFF.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 4 ON .&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;WRITE: /4 'MATERIAL NUMBER', 23 ' QUANTITY', 37 'UOM',&lt;/P&gt;&lt;P&gt;42 'PLANT', 71 ' '.&lt;/P&gt;&lt;P&gt;WRITE: /4 '***************', 23 ' *******&lt;STRONG&gt;', 37 '&lt;/STRONG&gt;**',&lt;/P&gt;&lt;P&gt;42 '*****', 71 ' '.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT tiseg BY ord_type matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT tiseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ON CHANGE OF tiseg-ord_type.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;WRITE: /6 'ORDER TYPE:', tiseg-ord_type,&lt;/P&gt;&lt;P&gt;26 'COUNT DATE:', count_date,&lt;/P&gt;&lt;P&gt;52 'CUSTOMER:', tiseg-kunnr.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE: /4 tiseg-matnr, 23 tiseg-qty_c, 37 tiseg-uom_conv,&lt;/P&gt;&lt;P&gt;42 tiseg-werks, 71 ' '.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 4 OFF.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tx_va01_err &amp;gt; 0.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;WRITE: /2 'Correct ERR in Sales Orders (VA01 Tx) and',&lt;/P&gt;&lt;P&gt;'reexecute the program'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tx_mi02_err &amp;gt; 0.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;WRITE: /2 'ERR found in executing PID change (MI02 Tx)'.&lt;/P&gt;&lt;P&gt;IF bdc_open_flag = 'X'.&lt;/P&gt;&lt;P&gt;WRITE: /2 'Correct ERR and submit the BDC session created'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF tx_va01_err = 0 AND tx_mi02_err = 0.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 5 ON INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;WRITE: /3 'ALL TRANSACTIONS WERE SUCCESSFUL '.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT COLOR 3 ON INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;WRITE: /20 'MESSAGES RECEIVED DURING TRANSACTION PROCESSING', 170 ' '.&lt;/P&gt;&lt;P&gt;WRITE: /2 'TX ', 8 'ERR?', 15 'ORDER TYPE', 27 'REASON',&lt;/P&gt;&lt;P&gt;36 'COUNT DATE', 49 'MATERIAL NUMBER',&lt;/P&gt;&lt;P&gt;69 'MESSAGES RECEIVED FROM TRANSACTION ', 170 ' '.&lt;/P&gt;&lt;P&gt;WRITE: /2 '***&lt;STRONG&gt;', 8 '&lt;/STRONG&gt;**&lt;STRONG&gt;', 15 '&lt;/STRONG&gt;********&lt;STRONG&gt;', 27 '&lt;/STRONG&gt;*****',&lt;/P&gt;&lt;P&gt;36 '*********&lt;STRONG&gt;', 49 '&lt;/STRONG&gt;**************',&lt;/P&gt;&lt;P&gt;69 '********************************** ', 170 ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;LOOP AT txmsg.&lt;/P&gt;&lt;P&gt;IF txmsg-success = ' '.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 3 ON.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;FORMAT COLOR 6 ON.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ON CHANGE OF txmsg-type.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-tx = 'VA01'.&lt;/P&gt;&lt;P&gt;WRITE: /2 txmsg-tx, 8 txmsg-success, 15 txmsg-type,&lt;/P&gt;&lt;P&gt;27 txmsg-reason, 36 txmsg-zldat.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-tx = 'MI02'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;uline.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;format color 7 on intensified on.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;WRITE: /2 txmsg-tx, 8 'CHANGE PID:', p_doc#, 'YEAR:', p_year.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-tx = 'VA01'.&lt;/P&gt;&lt;P&gt;WRITE: 49 txmsg-matnr.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF txmsg-comments(3) = '==&amp;gt;'.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED ON.&lt;/P&gt;&lt;P&gt;WRITE 69 txmsg-comments.&lt;/P&gt;&lt;P&gt;FORMAT INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;WRITE 69 txmsg-comments.&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;ULINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "WRITE_STATS&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;Ashok... &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;NAVEEN KUMAR GU...   &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Posts: 1,991 &lt;/P&gt;&lt;P&gt;Questions: 64 &lt;/P&gt;&lt;P&gt;Registered: 2/4/06 &lt;/P&gt;&lt;P&gt;Forum points: 3,014  &lt;/P&gt;&lt;P&gt;   &lt;/P&gt;&lt;P&gt;   Re: bdc for vao1   &lt;/P&gt;&lt;P&gt;Posted: Mar 28, 2007 8:30 PM    in response to: asha sap       Reply      E-mail this post  &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the sample code...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA : w_auart(4) TYPE c,&lt;/P&gt;&lt;P&gt;w_vkorg(4) TYPE c,&lt;/P&gt;&lt;P&gt;w_vtweg(2) TYPE c,&lt;/P&gt;&lt;P&gt;w_spart(2) TYPE c,&lt;/P&gt;&lt;P&gt;w_kunnr(10) TYPE c,&lt;/P&gt;&lt;P&gt;w_kunrg(10) TYPE c,&lt;/P&gt;&lt;P&gt;w_bstkd(35) TYPE c,&lt;/P&gt;&lt;P&gt;w_bstdk(10) TYPE c,&lt;/P&gt;&lt;P&gt;w_kwmeng(18) TYPE c,&lt;/P&gt;&lt;P&gt;w_zterm(4) TYPE c,&lt;/P&gt;&lt;P&gt;w_inco1(3) TYPE c,&lt;/P&gt;&lt;P&gt;w_inco2(28) TYPE c,&lt;/P&gt;&lt;P&gt;w_augru(3) TYPE c.&lt;/P&gt;&lt;P&gt;DATA : var1 TYPE string,&lt;/P&gt;&lt;P&gt;var2 TYPE c VALUE '(',&lt;/P&gt;&lt;P&gt;var3 TYPE c VALUE ')',&lt;/P&gt;&lt;P&gt;num(2) TYPE c,&lt;/P&gt;&lt;P&gt;flag(1) TYPE c.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF it_order, " Internal table Structure&lt;/P&gt;&lt;P&gt;auart(4) TYPE c, " Sales Order Type&lt;/P&gt;&lt;P&gt;vkorg(4) TYPE c, " Sales Organization&lt;/P&gt;&lt;P&gt;vtweg(2) TYPE c, " Distribution Channel&lt;/P&gt;&lt;P&gt;spart(2) TYPE c, " Division&lt;/P&gt;&lt;P&gt;kunnr(10) TYPE c, " Sold-to-Party&lt;/P&gt;&lt;P&gt;kunrg(10) TYPE c, " Ship-to-Party&lt;/P&gt;&lt;P&gt;bstkd(35) TYPE c, " Purchase Order No&lt;/P&gt;&lt;P&gt;bstdk(10) TYPE c, " Purchase Order Date&lt;/P&gt;&lt;P&gt;zterm(4) TYPE c, " Payment Terms&lt;/P&gt;&lt;P&gt;inco1(3) TYPE c, " Inco Terms1&lt;/P&gt;&lt;P&gt;inco2(20) TYPE c, " Inco Terms2&lt;/P&gt;&lt;P&gt;augru(3) TYPE c, " Order Reason&lt;/P&gt;&lt;P&gt;mabnr(18) TYPE c, " Material No&lt;/P&gt;&lt;P&gt;kwmeng(18) TYPE c, " Quantity&lt;/P&gt;&lt;P&gt;END OF it_order,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab LIKE STANDARD TABLE OF it_order WITH HEADER LINE.&lt;/P&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;PARAMETER filename LIKE rlgrap-filename.&lt;/P&gt;&lt;P&gt;PARAMETER session LIKE apqi-groupid.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the file path&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;def_filename = filename&lt;/P&gt;&lt;P&gt;def_path = ' '&lt;/P&gt;&lt;P&gt;mask = ',&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;mode = 'O'&lt;/P&gt;&lt;P&gt;title = 'Select File'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;filename = filename&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;selection_cancel = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CHECK sy-subrc = 0.&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;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;codepage = ' '&lt;/P&gt;&lt;P&gt;filename = filename&lt;/P&gt;&lt;P&gt;filetype = 'ASC'&lt;/P&gt;&lt;P&gt;headlen = ' '&lt;/P&gt;&lt;P&gt;line_exit = ' '&lt;/P&gt;&lt;P&gt;trunclen = ' '&lt;/P&gt;&lt;P&gt;user_form = ' '&lt;/P&gt;&lt;P&gt;user_prog = ' '&lt;/P&gt;&lt;P&gt;dat_d_format = ' '&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FILELENGTH =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;data_tab = itab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;conversion_error = 1&lt;/P&gt;&lt;P&gt;file_open_error = 2&lt;/P&gt;&lt;P&gt;file_read_error = 3&lt;/P&gt;&lt;P&gt;invalid_type = 4&lt;/P&gt;&lt;P&gt;no_batch = 5&lt;/P&gt;&lt;P&gt;unknown_error = 6&lt;/P&gt;&lt;P&gt;invalid_table_width = 7&lt;/P&gt;&lt;P&gt;gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;customer_error = 9&lt;/P&gt;&lt;P&gt;OTHERS = 10.&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;PERFORM open_group.&lt;/P&gt;&lt;P&gt;LOOP AT itab.&lt;/P&gt;&lt;P&gt;CLEAR : w_auart,w_vkorg,w_vtweg,w_spart,w_kunnr,w_kunrg,&lt;/P&gt;&lt;P&gt;w_bstkd,w_bstdk,w_zterm,w_inco1,w_inco2,w_augru.&lt;/P&gt;&lt;P&gt;w_auart = itab-auart.&lt;/P&gt;&lt;P&gt;w_vkorg = itab-vkorg.&lt;/P&gt;&lt;P&gt;w_vtweg = itab-vtweg.&lt;/P&gt;&lt;P&gt;w_spart = itab-spart.&lt;/P&gt;&lt;P&gt;w_kunnr = itab-kunnr.&lt;/P&gt;&lt;P&gt;w_kunrg = itab-kunrg.&lt;/P&gt;&lt;P&gt;w_bstkd = itab-bstkd.&lt;/P&gt;&lt;P&gt;w_bstdk = itab-bstdk.&lt;/P&gt;&lt;P&gt;w_zterm = itab-zterm.&lt;/P&gt;&lt;P&gt;w_inco1 = itab-inco1.&lt;/P&gt;&lt;P&gt;w_inco2 = itab-inco2.&lt;/P&gt;&lt;P&gt;w_augru = itab-augru.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ON CHANGE OF itab-kunnr OR itab-kunrg OR itab-bstkd .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flag = 0.&lt;/P&gt;&lt;P&gt;num = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '0101'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'VBAK-AUART'.&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 'VBAK-AUART' " Order Type&lt;/P&gt;&lt;P&gt;itab-auart.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-VKORG' " Sales Organization&lt;/P&gt;&lt;P&gt;itab-vkorg.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-VTWEG' " Distribution Channel&lt;/P&gt;&lt;P&gt;itab-vtweg.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-SPART' " Division&lt;/P&gt;&lt;P&gt;itab-spart.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.&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 'VBKD-BSTKD' " PO Number&lt;/P&gt;&lt;P&gt;itab-bstkd.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-BSTDK' " PO Date&lt;/P&gt;&lt;P&gt;itab-bstdk.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'KUAGV-KUNNR' " Sold to Party&lt;/P&gt;&lt;P&gt;itab-kunnr.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'KUWEV-KUNNR' " Ship to Party&lt;/P&gt;&lt;P&gt;itab-kunrg.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-ZTERM' " Payment Terms&lt;/P&gt;&lt;P&gt;itab-zterm.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-INCO1' " Inco Terms1&lt;/P&gt;&lt;P&gt;itab-inco1.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBKD-INCO2' " Inco Terms2&lt;/P&gt;&lt;P&gt;itab-inco2.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'VBAK-AUGRU' " Order Reason&lt;/P&gt;&lt;P&gt;itab-augru.&lt;/P&gt;&lt;P&gt;ENDON.&lt;/P&gt;&lt;P&gt;IF flag = 0.&lt;/P&gt;&lt;P&gt;LOOP AT itab WHERE bstkd = itab-bstkd AND kunnr = itab-kunnr .&lt;/P&gt;&lt;P&gt;var1 = 'RV45A-MABNR'.&lt;/P&gt;&lt;P&gt;CONCATENATE var1 var2 num var3 INTO var1.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING var1&lt;/P&gt;&lt;P&gt;itab-mabnr.&lt;/P&gt;&lt;P&gt;var1 = 'RV45A-KWMENG'.&lt;/P&gt;&lt;P&gt;CONCATENATE var1 var2 num var3 INTO var1.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING var1&lt;/P&gt;&lt;P&gt;itab-kwmeng.&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.&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;num = 2.&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;ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONTINUE.&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;flag = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.&lt;/P&gt;&lt;P&gt;PERFORM bdc_field USING 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=SICH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM bdc_transaction USING 'VA01'.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;PERFORM close_group.&lt;/P&gt;&lt;P&gt;WRITE : / 'Session',session, 'was Created'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM open_group.&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 = session&lt;/P&gt;&lt;P&gt;user = sy-uname&lt;/P&gt;&lt;P&gt;keep = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM close_group.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_transaction USING tcode.&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&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_dynpro USING program dynpro.&lt;/P&gt;&lt;P&gt;CLEAR bdcdata.&lt;/P&gt;&lt;P&gt;bdcdata-program = program.&lt;/P&gt;&lt;P&gt;bdcdata-dynpro = dynpro.&lt;/P&gt;&lt;P&gt;bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;APPEND bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&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; ' '.&lt;/P&gt;&lt;P&gt;CLEAR bdcdata.&lt;/P&gt;&lt;P&gt;bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;APPEND bdcdata.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;hope this will useful to you.........&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;reward points if useful&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;sunil kairam.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Dec 2007 04:41:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program/m-p/3109557#M738251</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-06T04:41:02Z</dc:date>
    </item>
  </channel>
</rss>

