<?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: ALE in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825428#M919960</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prasad,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The bestway  to approach is with BDC. I tried by giving the same message type while creating model view in customer distribution model. The customer distribution model is not accepting the same message type. So, it is not possible to upload data to the same client. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward me if useful..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 09 May 2008 07:17:19 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-05-09T07:17:19Z</dc:date>
    <item>
      <title>ALE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825425#M919957</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a doubt regarding uploading of data into the same system. Can we transfer the data from local system to a client using ALE-Idoc. We can do this by BDC. But, I have doubt whether we can do by using ALE i.e., by giving same host in sender and receiver in distribution model.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Prasad.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 May 2008 01:32:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825425#M919957</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-09T01:32:37Z</dc:date>
    </item>
    <item>
      <title>Re: ALE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825426#M919958</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prasad,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes we can give the same host in sender and receiver side in Distribution model using ALE-IDocs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Refer this link once.........&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.saptechnical.com/Tutorials/ALE/MaterialMaster/Distribute1.htm" target="test_blank"&gt;http://www.saptechnical.com/Tutorials/ALE/MaterialMaster/Distribute1.htm&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if it useful.....&lt;/P&gt;&lt;P&gt;Lakshmi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 May 2008 04:22:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825426#M919958</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-09T04:22:05Z</dc:date>
    </item>
    <item>
      <title>Re: ALE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825427#M919959</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;1.In same host it is possible to have sender and Receiver.&lt;/P&gt;&lt;P&gt; 2.The distribution model can be distributed in same Client and In different Client.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further Details:&lt;/P&gt;&lt;P&gt;Data Creation in Idoc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system. Instead of calling a program in the destination system directly, the data is first packed into an IDoc and then sent to the receiving system, where it is analyzed and properly processed. Therefore an IDoc data exchange is always an &lt;/P&gt;&lt;P&gt;asynchronous process. The significant difference between simple RFC-calls and IDoc data exchange is the fact, that every action performed on IDocs are protocolled by R/3 and IDocs can be reprocessed if an error occurred in one of the message steps. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;While IDocs have to be understood as a data exchange protocol, EDI and ALE are typical use cases for IDocs. R/3 uses IDocs for both EDI and ALE to deliver data to the receiving system. ALE is basically the scheduling mechanism that defines when and between which partners and what kind of data will be exchanged on a regular or event triggered basis. Such a set-up is called an ALE-scenario. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IDoc is a intermediate document to exchange data between two SAP Systems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*IDocs are structured ASCII files (or a virtual equivalent). &lt;/P&gt;&lt;P&gt;*Electronic Interchange Document&lt;/P&gt;&lt;P&gt;*They are the file format used by SAP R/3 to exchange data with foreign systems.&lt;/P&gt;&lt;P&gt;*Data Is transmitted in ASCII format, i.e. human readable form&lt;/P&gt;&lt;P&gt;*IDocs exchange messages&lt;/P&gt;&lt;P&gt;*IDocs are used like classical interface files&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IDOC types are templates for specific message types depending on what is the business document, you want to exchange.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WE30 - you can create a IDOC type.&lt;/P&gt;&lt;P&gt;An IDOC with data, will have to be triggered by the application that is trying to send out the data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FOr testing you can use WE19.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How to create idoc?&lt;/P&gt;&lt;P&gt;*WE30 - you can create a IDOC type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For more information in details on the same along with the examples can be viewed on:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404" target="test_blank"&gt;http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/presentation.html" target="test_blank"&gt;http://www.sappoint.com/presentation.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/idoc_search.html" target="test_blank"&gt;http://www.allsaplinks.com/idoc_search.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/idoc_abap.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/idoc_abap.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.erpgenie.com/sapedi/idoc_abap.htm" target="test_blank"&gt;http://www.erpgenie.com/sapedi/idoc_abap.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To Create Idoc we need to follow these steps:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create Segment ( WE31)&lt;/P&gt;&lt;P&gt;Create Idoc Type ( WE30 )&lt;/P&gt;&lt;P&gt;Create Message Type ( WE81 )&lt;/P&gt;&lt;P&gt;Assign Idoc Type to Message Type ( WE82 )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Creating a Segment&lt;/P&gt;&lt;P&gt;Go to transaction code WE31&lt;/P&gt;&lt;P&gt;Enter the name for your segment type and click on the Create icon&lt;/P&gt;&lt;P&gt;Type the short text&lt;/P&gt;&lt;P&gt;Enter the variable names and data elements&lt;/P&gt;&lt;P&gt;Save it and go back&lt;/P&gt;&lt;P&gt;Go to Edit -&amp;gt; Set Release&lt;/P&gt;&lt;P&gt;Follow steps to create more number of segments&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create IDOC Type&lt;/P&gt;&lt;P&gt;Go to transaction code WE30&lt;/P&gt;&lt;P&gt;Enter the Object Name, select Basic type and click Create icon&lt;/P&gt;&lt;P&gt;Select the create new option and enter a description for your basic IDOC type and press enter&lt;/P&gt;&lt;P&gt;Select the IDOC Name and click Create icon&lt;/P&gt;&lt;P&gt;The system prompts us to enter a segment type and its attributes&lt;/P&gt;&lt;P&gt;Choose the appropriate values and press Enter&lt;/P&gt;&lt;P&gt;The system transfers the name of the segment type to the IDOC editor.&lt;/P&gt;&lt;P&gt;Follow these steps to add more number of segments to Parent or as Parent-child relation&lt;/P&gt;&lt;P&gt;Save it and go back&lt;/P&gt;&lt;P&gt;Go to Edit -&amp;gt; Set release&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create Message Type&lt;/P&gt;&lt;P&gt;Go to transaction code WE81&lt;/P&gt;&lt;P&gt;Change the details from Display mode to Change mode&lt;/P&gt;&lt;P&gt;After selection, the system will give this message &amp;#147;The table is cross-client (see Help for further info)&amp;#148;. Press Enter&lt;/P&gt;&lt;P&gt;Click New Entries to create new Message Type&lt;/P&gt;&lt;P&gt;Fill details&lt;/P&gt;&lt;P&gt;Save it and go back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Assign Message Type to IDoc Type&lt;/P&gt;&lt;P&gt;Go to transaction code WE82&lt;/P&gt;&lt;P&gt;Change the details from Display mode to Change mode&lt;/P&gt;&lt;P&gt;After selection, the system will give this message &amp;#147;The table is cross-client (see Help for further info)&amp;#148;. Press Enter.&lt;/P&gt;&lt;P&gt;Click New Entries to create new Message Type.&lt;/P&gt;&lt;P&gt;Fill details&lt;/P&gt;&lt;P&gt;Save it and go back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check these out..&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="2402859"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check below link. It will give the step by step procedure for IDOC creation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.supinfo-projects.com/cn/2005/idocs_en/2/" target="test_blank"&gt;http://www.supinfo-projects.com/cn/2005/idocs_en/2/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALE/ IDOC&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc" target="test_blank"&gt;http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419" target="test_blank"&gt;http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.netweaverguru.com/EDI/HTML/IDocBook.htm" target="test_blank"&gt;http://www.netweaverguru.com/EDI/HTML/IDocBook.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/index.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/abap/ale.pdf" target="test_blank"&gt;http://www.sappoint.com/abap/ale.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/abap/ale2.pdf" target="test_blank"&gt;http://www.sappoint.com/abap/ale2.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/idoc_abap.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/idoc_abap.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/idoc_sample.html" target="test_blank"&gt;http://www.allsaplinks.com/idoc_sample.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/abap.html" target="test_blank"&gt;http://www.sappoint.com/abap.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc" target="test_blank"&gt;http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419" target="test_blank"&gt;http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.netweaverguru.com/EDI/HTML/IDocBook.htm" target="test_blank"&gt;http://www.netweaverguru.com/EDI/HTML/IDocBook.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/index.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/idoc_sample.html" target="test_blank"&gt;http://www.allsaplinks.com/idoc_sample.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.docs" target="test_blank"&gt;http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.docs&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;go trough these links.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc" target="test_blank"&gt;http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419" target="test_blank"&gt;http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.netweaverguru.com/EDI/HTML/IDocBook.htm" target="test_blank"&gt;http://www.netweaverguru.com/EDI/HTML/IDocBook.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/index.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/abap/ale.pdf" target="test_blank"&gt;http://www.sappoint.com/abap/ale.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/abap/ale2.pdf" target="test_blank"&gt;http://www.sappoint.com/abap/ale2.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/idoc_abap.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/idoc_abap.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/idoc_sample.html" target="test_blank"&gt;http://www.allsaplinks.com/idoc_sample.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sappoint.com/abap.html" target="test_blank"&gt;http://www.sappoint.com/abap.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc" target="test_blank"&gt;http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419" target="test_blank"&gt;http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.netweaverguru.com/EDI/HTML/IDocBook.htm" target="test_blank"&gt;http://www.netweaverguru.com/EDI/HTML/IDocBook.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/index.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/idoc_sample.html" target="test_blank"&gt;http://www.allsaplinks.com/idoc_sample.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm" target="test_blank"&gt;http://http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;An IDoc is simply a data container that is used to exchange information between any two processes that can understand the syntax and semantics of the data...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1.IDOCs are stored in the database. In the SAP system, IDOCs are stored in database tables. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2.IDOCs are independent of the sending and receiving systems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3.IDOCs are independent of the direction of data exchange.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The two available process for IDOCs are&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Outbound Process&lt;/P&gt;&lt;P&gt;Inbound Process&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AND There are basically two types of IDOCs.&lt;/P&gt;&lt;P&gt;Basic IDOCs&lt;/P&gt;&lt;P&gt;Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Extended IDOCs&lt;/P&gt;&lt;P&gt;Extending the functionality by adding more segments to existing Basic IDOCs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To Create Idoc we need to follow these steps:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Create Segment ( WE31)&lt;/P&gt;&lt;P&gt;Create Idoc Type ( WE30)&lt;/P&gt;&lt;P&gt;Create Message Type ( WE81)&lt;/P&gt;&lt;P&gt;Assign Idoc Type to Message Type ( WE82)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;imp links&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/idoc_sample.html" target="test_blank"&gt;http://www.allsaplinks.com/idoc_sample.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/sapedi/idoc_abap.htm" target="test_blank"&gt;http://www.sapgenie.com/sapedi/idoc_abap.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.sap.com/www.sappoint.com" target="test_blank"&gt;www.sappoint.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;--here u can find the ppts and basic seetings for ALE&lt;/P&gt;&lt;P&gt;&lt;A href="http://sappoint.com/presentation.html" target="test_blank"&gt;http://sappoint.com/presentation.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.sap.com/www.sapgenie.com" target="test_blank"&gt;www.sapgenie.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/ale/index.htm" target="test_blank"&gt;http://www.sapgenie.com/ale/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WE30 - you can create a IDOC type.&lt;/P&gt;&lt;P&gt;An IDOC with data, will have to be triggered by the application that is trying to send out the data.&lt;/P&gt;&lt;P&gt;Try this..Hope this will help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SAP ALE &amp;amp; IDOC&amp;lt;&amp;lt;&amp;lt;&amp;lt; &lt;/P&gt;&lt;P&gt;Steps to configuration(Basis) &amp;gt;&amp;gt; &lt;/P&gt;&lt;P&gt;1. Create Logical System (LS) for each applicable ALE-enabled client &lt;/P&gt;&lt;P&gt;2. Link client to Logical System on the respective servers &lt;/P&gt;&lt;P&gt;3. Create background user, to be used by ALE(with authorizaton for ALE postings) &lt;/P&gt;&lt;P&gt;4. Create RFC Destinations(SM59) &lt;/P&gt;&lt;P&gt;5. Ports in Idoc processing(WE21) &lt;/P&gt;&lt;P&gt;6. Generate partner profiles for sending system &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The functional configuration(Tcode: SALE) &lt;/P&gt;&lt;P&gt;&amp;#149; Create a Customer Distribution Model (CDM); &lt;/P&gt;&lt;P&gt;&amp;#149; Add appropriate message types and filters to the CDM; &lt;/P&gt;&lt;P&gt;&amp;#149; Generate outbound partner profiles; &lt;/P&gt;&lt;P&gt;&amp;#149; Distribute the CDM to the receiving systems; and &lt;/P&gt;&lt;P&gt;&amp;#149; Generate inbound partner profiles on each of the clients. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Steps to customize a new IDoc &amp;gt;&amp;gt;&amp;gt; &lt;/P&gt;&lt;P&gt;1. Define IDoc Segment (WE31) &lt;/P&gt;&lt;P&gt;2. Convert Segments into an IDoc type (WE30) &lt;/P&gt;&lt;P&gt;3. Create a Message Type (WE81) &lt;/P&gt;&lt;P&gt;4. Create valid Combination of Message &amp;amp; IDoc type(WE82) &lt;/P&gt;&lt;P&gt;5. Define Processing Code(WE41 for OUT / WE42 for IN) &lt;/P&gt;&lt;P&gt;6. Define Partner Profile(WE20) &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Important Transaction Codes: &lt;/P&gt;&lt;P&gt;SALE - IMG ALE Configuration root &lt;/P&gt;&lt;P&gt;WE20 - Manually maintain partner profiles &lt;/P&gt;&lt;P&gt;BD64 - Maintain customer distribution model &lt;/P&gt;&lt;P&gt;BD71 - Distribute customer distribution model &lt;/P&gt;&lt;P&gt;SM59 - Create RFC Destinations &lt;/P&gt;&lt;P&gt;BDM5 - Consistency check (Transaction scenarios) &lt;/P&gt;&lt;P&gt;BD82 - Generate Partner Profiles &lt;/P&gt;&lt;P&gt;BD61 - Activate Change Pointers - Globally &lt;/P&gt;&lt;P&gt;BD50 - Activate Change Pointer for Msg Type &lt;/P&gt;&lt;P&gt;BD52 - Activate change pointer per change.doc object &lt;/P&gt;&lt;P&gt;BD59 - Allocation object type -&amp;gt; IDOC type &lt;/P&gt;&lt;P&gt;BD56 - Maintain IDOC Segment Filters &lt;/P&gt;&lt;P&gt;BD53 - Reduction of Message Types &lt;/P&gt;&lt;P&gt;BD21 - Select Change Pointer &lt;/P&gt;&lt;P&gt;BD87 - Status Monitor for ALE Messages &lt;/P&gt;&lt;P&gt;BDM5 - Consistency check (Transaction scenarios) &lt;/P&gt;&lt;P&gt;BD62 - Define rules &lt;/P&gt;&lt;P&gt;BD79 - Maintain rules &lt;/P&gt;&lt;P&gt;BD55 - Defining settings for IDoc conversion &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WEDI - ALE IDoc Administration &lt;/P&gt;&lt;P&gt;WE21 - Ports in Idoc processing &lt;/P&gt;&lt;P&gt;WE60 - IDoc documentation &lt;/P&gt;&lt;P&gt;SARA - IDoc archiving (Object type IDOC) &lt;/P&gt;&lt;P&gt;WE47 - IDoc status maintenance &lt;/P&gt;&lt;P&gt;WE07 - IDoc statistics &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BALE - ALE Distribution Administration &lt;/P&gt;&lt;P&gt;WE05 - IDoc overview &lt;/P&gt;&lt;P&gt;BD87 - Inbound IDoc reprocessing &lt;/P&gt;&lt;P&gt;BD88 - Outbound IDoc reprocessing &lt;/P&gt;&lt;P&gt;BDM2 - IDoc Trace &lt;/P&gt;&lt;P&gt;BDM7 - IDoc Audit Analysis &lt;/P&gt;&lt;P&gt;BD21 - Create IDocs from change pointers &lt;/P&gt;&lt;P&gt;SM58 - Schedule RFC Failures &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Basic config for Distributed data: &lt;/P&gt;&lt;P&gt;BD64: Maintain a Distributed Model &lt;/P&gt;&lt;P&gt;BD82: Generate Partner Profile &lt;/P&gt;&lt;P&gt;BD64: Distribute the distribution Model &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Programs &lt;/P&gt;&lt;P&gt;RBDMIDOC &amp;#150; Creating IDoc Type from Change Pointers &lt;/P&gt;&lt;P&gt;RSEOUT00 &amp;#150; Process all selected IDocs (EDI) &lt;/P&gt;&lt;P&gt;RBDAPP01 - Inbound Processing of IDocs Ready for Transfer &lt;/P&gt;&lt;P&gt;RSARFCEX - Execute Calls Not Yet Executed &lt;/P&gt;&lt;P&gt;RBDMOIND - Status Conversion with Successful tRFC Execution &lt;/P&gt;&lt;P&gt;RBDMANIN - Start error handling for non-posted IDocs &lt;/P&gt;&lt;P&gt;RBDSTATE - Send Audit Confirmations &lt;/P&gt;&lt;P&gt;FOr testing you can use WE19. &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are two filtering in IDoc. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Segment Filtering:&lt;/P&gt;&lt;P&gt;Segment filtering can be achieved using T/Code BD56. Here you can suppress a whole segment irrespective of data inside it . You have to give Message Type / Sender Prrtner / Receiver Partner.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data Filtering:&lt;/P&gt;&lt;P&gt;Data filtering can be done in dustribution model (BD64) where you can restrict whole IDOCS or partials IDOCS to be send based on data in fields inside IDOC depending on whether the segment in which you filter is at the highest level or at a lower level. For example in MATMAS if you put a filter of E1MARCM for a particular plant , only data for this plant will go and other plants will be ignored.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check this link for more information. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com//saphelp_470/helpdata/EN/0b/2a611c507d11d18ee90000e8366fc2/frameset.htm" target="test_blank"&gt;http://help.sap.com//saphelp_470/helpdata/EN/0b/2a611c507d11d18ee90000e8366fc2/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Shiva&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 May 2008 04:26:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825427#M919959</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-09T04:26:11Z</dc:date>
    </item>
    <item>
      <title>Re: ALE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825428#M919960</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Prasad,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The bestway  to approach is with BDC. I tried by giving the same message type while creating model view in customer distribution model. The customer distribution model is not accepting the same message type. So, it is not possible to upload data to the same client. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward me if useful..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 May 2008 07:17:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825428#M919960</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-09T07:17:19Z</dc:date>
    </item>
    <item>
      <title>Re: ALE</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825429#M919961</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi , &lt;/P&gt;&lt;P&gt;For ur refernce i am attaching client - client scenario ..&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------------------------" /&gt;&lt;P&gt;MASTER DATA TRANSFERMATION BETWEEN 2 DIFF CLIENTS &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	For this scenario Client 800 is the Sender and 810 is the receiving system&lt;/P&gt;&lt;P&gt;1. Creating Logical Systems&lt;/P&gt;&lt;P&gt;o	Login using 800 client&lt;/P&gt;&lt;P&gt;o	Go to T. Code SALE&lt;/P&gt;&lt;P&gt;o	Expand Sending and Receiving Systems&lt;/P&gt;&lt;P&gt;o	Expand Logical Systems&lt;/P&gt;&lt;P&gt;o	Click on Define Logical System&lt;/P&gt;&lt;P&gt;o	Click on New Entries&lt;/P&gt;&lt;P&gt;o	Create STUD_S, STUD_R Logical Systems&lt;/P&gt;&lt;P&gt;o	Save and come back&lt;/P&gt;&lt;P&gt;o	Assign the STUD_S Logical System to client 800&lt;/P&gt;&lt;P&gt;o	Assign the STUD_R Logical System to client 810&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Creating the RFCs&lt;/P&gt;&lt;P&gt;o	Go to T. Code SM59&lt;/P&gt;&lt;P&gt;o	Expand R/3 Connections&lt;/P&gt;&lt;P&gt;o	Enter RFC Name as STUD_S&lt;/P&gt;&lt;P&gt;o	Connection Type as 3&lt;/P&gt;&lt;P&gt;o	Language as EN&lt;/P&gt;&lt;P&gt;o	Client as 800&lt;/P&gt;&lt;P&gt;o	User as  SAPUSER&lt;/P&gt;&lt;P&gt;o	PWD as abap&lt;/P&gt;&lt;P&gt;o	Target host as sap&lt;/P&gt;&lt;P&gt;o	Click on Remote logon button to test the RFC&lt;/P&gt;&lt;P&gt;o	Enter RFC Name as STUD_R&lt;/P&gt;&lt;P&gt;o	Connection Type as 3&lt;/P&gt;&lt;P&gt;o	Language as EN&lt;/P&gt;&lt;P&gt;o	Client as 800&lt;/P&gt;&lt;P&gt;o	User as  SATISH&lt;/P&gt;&lt;P&gt;o	PWD as abap&lt;/P&gt;&lt;P&gt;o	Target host as sap&lt;/P&gt;&lt;P&gt;o	Click on Remote logon button to test the RFC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Creating the Message Type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE81&lt;/P&gt;&lt;P&gt;o	Click on change, continue&lt;/P&gt;&lt;P&gt;o	Click on New Entries button&lt;/P&gt;&lt;P&gt;o	Give message type as ZBAPI_STUD_MAS and description&lt;/P&gt;&lt;P&gt;o	Save and back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. Creating the Segment&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE31&lt;/P&gt;&lt;P&gt;o	Give segment name as ZBAPI_STUD_SEG&lt;/P&gt;&lt;P&gt;o	Enter Short Text&lt;/P&gt;&lt;P&gt;o	Enter the Field Name and Data Element in the text boxes&lt;/P&gt;&lt;P&gt;o	Save, continue,&lt;/P&gt;&lt;P&gt;o	Click on Edit -&amp;gt; Set Release.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. Creating the Basic IDOC Object&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. code WE30&lt;/P&gt;&lt;P&gt;o	Give obj. name as ZBAPI_STUD_IDOC&lt;/P&gt;&lt;P&gt;o	Click on create&lt;/P&gt;&lt;P&gt;o	Select create new radio button, give description and continue&lt;/P&gt;&lt;P&gt;o	Select the IDOC obj name and click on create button&lt;/P&gt;&lt;P&gt;o	Enter the segment name which is create earlier&lt;/P&gt;&lt;P&gt;o	Select the check box if you want to make the segment mandatory&lt;/P&gt;&lt;P&gt;o	Enter 1 in minimum number 99999 in maximum number, continue&lt;/P&gt;&lt;P&gt;o	Save and back&lt;/P&gt;&lt;P&gt;o	Click on Edit -&amp;gt; Set Release&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;6. Creating Customer Distribution Model&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code BD64&lt;/P&gt;&lt;P&gt;o	Click on change and Create model view button&lt;/P&gt;&lt;P&gt;o	Enter the short text and Technical name as ZSTUDENT&lt;/P&gt;&lt;P&gt;o	Select the model and click on Add Message Type Button &lt;/P&gt;&lt;P&gt;o	Give the Sender as STUD_S, &lt;/P&gt;&lt;P&gt;o	               Receiver as STUD_R, &lt;/P&gt;&lt;P&gt;o	               Message Type as ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;o	Select the model view &amp;amp; click on Environment -&amp;gt; Generate Partner Profiles&lt;/P&gt;&lt;P&gt;o	Select Transfer IDOC Immediately and Trigger Immediately radio buttons&lt;/P&gt;&lt;P&gt;o	Click on Execute&lt;/P&gt;&lt;P&gt;o	You should get a list in green color which means it executed successfully.&lt;/P&gt;&lt;P&gt;o	Back to main screen, select the model view&lt;/P&gt;&lt;P&gt;o	Click Edit-&amp;gt;Model view-&amp;gt;Distribute&lt;/P&gt;&lt;P&gt;o	Click on continue&lt;/P&gt;&lt;P&gt;o	You should get a list saying model view is distributed successfully.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;7. Checking the Port&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE21&lt;/P&gt;&lt;P&gt;o	Expand Transactional RFC&lt;/P&gt;&lt;P&gt;o	Find the port from the list which is created using BD64 for STUD_R (Receiving system) RFC Destination.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;8. Checking the Partner Profiles.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE20&lt;/P&gt;&lt;P&gt;o	Expand Partner Type LS&lt;/P&gt;&lt;P&gt;o	Select the Partner profile STUD_R&lt;/P&gt;&lt;P&gt;o	Double click on Message Type ZBAPI_STUD_MAS in Outbound parmtrs.&lt;/P&gt;&lt;P&gt;o	Check Receiver Port is assigned correctly&lt;/P&gt;&lt;P&gt;o	Check the Basic type as your Basic IDOC object.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;9. Assigning the Message Type to Basic IDOC Object&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE82&lt;/P&gt;&lt;P&gt;o	Click on Change &amp;amp; continue, New Entries button&lt;/P&gt;&lt;P&gt;o	Give the Message type as ZBAPI_STUD_MAS &lt;/P&gt;&lt;P&gt;o	Give Basic Type as ZBAPI_STUD_IDOC&lt;/P&gt;&lt;P&gt;o	Release as 46C&lt;/P&gt;&lt;P&gt;o	Save and back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;10. Creating Inbound Function Module (Posting Program)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code SE37&lt;/P&gt;&lt;P&gt;o	Create a function Module IDOC_INPUT_ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;o	Set the Processing type as Remote Enabled Module and mode as start immed, in Attributes Tab.&lt;/P&gt;&lt;P&gt;o	Import Parameters&lt;/P&gt;&lt;P&gt;INPUT_METHOD	            LIKE	BDWFAP_PAR-INPUTMETHD&lt;/P&gt;&lt;P&gt;MASS_PROCESSING	LIKE	BDWFAP_PAR-MASS_PROC&lt;/P&gt;&lt;P&gt;NO_APPLICATION_LOG	LIKE	SY-DATAR&lt;/P&gt;&lt;P&gt;MASSSAVEINFOS	            LIKE	MASSSAVINF &lt;/P&gt;&lt;P&gt;o	Export Parameters&lt;/P&gt;&lt;P&gt;WORKFLOW_RESULT		LIKE	BDWF_PARAM-RESULT&lt;/P&gt;&lt;P&gt;APPLICATION_VARIABLE	LIKE	BDWF_PARAM-APPL_VAR&lt;/P&gt;&lt;P&gt;IN_UPDATE_TASK		LIKE	BDWFAP_PAR-UPDATETASK&lt;/P&gt;&lt;P&gt;CALL_TRANSACTION_DONE  LIKE	BDWFAP_PAR-CALLTRANS&lt;/P&gt;&lt;P&gt;o	Tables&lt;/P&gt;&lt;P&gt;IDOC_CONTRL	LIKE	EDIDC&lt;/P&gt;&lt;P&gt;IDOC_DATA		LIKE	EDIDD&lt;/P&gt;&lt;P&gt;IDOC_STATUS	LIKE	BDIDOCSTAT&lt;/P&gt;&lt;P&gt;RETURN_VARIABLES	LIKE	BDWFRETVAR&lt;/P&gt;&lt;P&gt;SERIALIZATION_INFO	LIKE	BDI_SER&lt;/P&gt;&lt;P&gt;o	Exceptions&lt;/P&gt;&lt;P&gt;WRONG_FUNCTION_CALLED&lt;/P&gt;&lt;P&gt;o	Source Code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: FIRST_TRANC LIKE MARA_UEB-TRANC,&lt;/P&gt;&lt;P&gt;      ZBAPI_STUD_SEG like zbapi_stud.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ZBAPI_STUD LIKE ZBAPI_STUD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: I_ZBAPI_STUD LIKE ZBAPI_STUD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: C_TRUE                         VALUE 'X'.&lt;/P&gt;&lt;P&gt;  DATA: C_FALSE                        VALUE ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF T_IDOC_ROLLNO OCCURS 0,&lt;/P&gt;&lt;P&gt;        DOCNUM LIKE EDIDC-DOCNUM,&lt;/P&gt;&lt;P&gt;        ROLLNO LIKE ZBAPI_STUD-ROLLNO,&lt;/P&gt;&lt;P&gt;      END   OF T_IDOC_ROLLNO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DEFINE APPEND_RESFIELDS.&lt;/P&gt;&lt;P&gt;    PERFORM APPEND_RES_FIELDS TABLES T_MFIELDRES&lt;/P&gt;&lt;P&gt;                                     T_RES_FIELDS&lt;/P&gt;&lt;P&gt;                              USING  &amp;amp;1&lt;/P&gt;&lt;P&gt;                                     COUNTER-D_IND.&lt;/P&gt;&lt;P&gt;  END-OF-DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: I_MARA_UEB LIKE MARA_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_ZSTUD_UEB LIKE ZBAPI_STUD.&lt;/P&gt;&lt;P&gt;  DATA: I_MAKT_UEB LIKE MAKT_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MARC_UEB LIKE MARC_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MARD_UEB LIKE MARD_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MFHM_UEB LIKE MFHM_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MARM_UEB LIKE MARM_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MEAN_UEB LIKE MEA1_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MBEW_UEB LIKE MBEW_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_STEU_UEB LIKE STEU_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_STEUMM_UEB LIKE STEUMM_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MLGN_UEB LIKE MLGN_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MLGT_UEB LIKE MLGT_UEB.      " //br010797 neu zu 4.0&lt;/P&gt;&lt;P&gt;  DATA: I_MPGD_UEB LIKE MPGD_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MPOP_UEB LIKE MPOP_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MVEG_UEB LIKE MVEG_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MVEU_UEB LIKE MVEU_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MVKE_UEB LIKE MVKE_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_MPRW_UEB LIKE MPRW_UEB.&lt;/P&gt;&lt;P&gt;  DATA: I_LTX1_UEB LIKE LTX1_UEB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: HELP_MARC_UEB LIKE MARC_UEB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: T_MARA_UEB LIKE MARA_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MAKT_UEB LIKE MAKT_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MARC_UEB LIKE MARC_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MARD_UEB LIKE MARD_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MFHM_UEB LIKE MFHM_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MARM_UEB LIKE MARM_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MEAN_UEB LIKE MEA1_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MBEW_UEB LIKE MBEW_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_STEU_UEB LIKE STEU_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_STEUMM_UEB LIKE STEUMM_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MLGN_UEB LIKE MLGN_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MLGT_UEB LIKE MLGT_UEB OCCURS 0.    " //br010797 neu zu 4.0&lt;/P&gt;&lt;P&gt;  DATA: T_MPGD_UEB LIKE MPGD_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MPOP_UEB LIKE MPOP_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MVEG_UEB LIKE MVEG_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MVEU_UEB LIKE MVEU_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MVKE_UEB LIKE MVKE_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MPRW_UEB LIKE MPRW_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_LTX1_UEB LIKE LTX1_UEB OCCURS 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal fields/ tables&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA: FLAG_ERROR_HAPPENED.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA: flag_material_exists. "//br210397 zu 4.0 keine Verwendung mehr&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: FLAG_EXIT_TO_BE_DONE.&lt;/P&gt;&lt;P&gt;  DATA: HELP_TABIX LIKE SY-TABIX.&lt;/P&gt;&lt;P&gt;  DATA: HELP_TRANC LIKE MARA_UEB-TRANC.&lt;/P&gt;&lt;P&gt;  DATA: HELP_ALAND LIKE STEU_UEB-ALAND.&lt;/P&gt;&lt;P&gt;  DATA: HELP_VKORG LIKE MVKE-VKORG.&lt;/P&gt;&lt;P&gt;  DATA: HELP_WERKS LIKE T001W-WERKS.&lt;/P&gt;&lt;P&gt;  DATA: HELP_LFDNR LIKE STEU_UEB-LFDNR.&lt;/P&gt;&lt;P&gt;  DATA: LAST_MARC_TRANC LIKE MARA_UEB-TRANC.&lt;/P&gt;&lt;P&gt;  DATA: LAST_MLGN_TRANC LIKE MARA_UEB-TRANC.    " //br010797 neu zu 4.0&lt;/P&gt;&lt;P&gt;  DATA: LAST_TEXT_TRANC LIKE MARA_UEB-TRANC.&lt;/P&gt;&lt;P&gt;  DATA: CURRENT_TABIX LIKE SY-TABIX.&lt;/P&gt;&lt;P&gt;  DATA: GENERAL_SUBRC LIKE SY-SUBRC.&lt;/P&gt;&lt;P&gt;  DATA: HELP_FACTOR TYPE P DECIMALS 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: USER_SEGMENTS LIKE EDIDD OCCURS 0 WITH HEADER LINE.  " insert&lt;/P&gt;&lt;P&gt;  DATA: CUST_SEGMENT LIKE EDIDD.&lt;/P&gt;&lt;P&gt;  DATA: I_MFIELDRES LIKE MFIELDRES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA: I_MERRDAT LIKE MERRDAT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: I_EDIDD LIKE EDIDD.&lt;/P&gt;&lt;P&gt;                                       " //br neu zu 3.1g&lt;/P&gt;&lt;P&gt;  DATA: T_RES_FIELDS LIKE DELFIELDS OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: T_MFIELDRES LIKE MFIELDRES OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_MERRDAT LIKE MERRDAT OCCURS 0.&lt;/P&gt;&lt;P&gt;  DATA: T_EDIDD LIKE EDIDD OCCURS 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA: BEGIN OF t_matnr OCCURS 0, "//br210397 zu 4.0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        matnr LIKE mara-matnr,   " wird nicht mehr verwendet                                                &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      END OF t_matnr.            "&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: BEGIN OF COUNTER,&lt;/P&gt;&lt;P&gt;          TRANC LIKE MARA_UEB-TRANC,&lt;/P&gt;&lt;P&gt;          D_IND LIKE MARA_UEB-D_IND,&lt;/P&gt;&lt;P&gt;        END OF COUNTER.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATA: BEGIN OF t_idoc_tranc OCCURS 0,                          " 4.0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        docnum LIKE edidc-docnum,                              "&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        tranc  LIKE mara_ueb-tranc,                            "&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      END OF t_idoc_tranc.                                     "&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA T_IDOC_TRANC LIKE MATIDOCTRANC OCCURS 0 WITH HEADER LINE."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: FLAG_FITS.&lt;/P&gt;&lt;P&gt;  DATA: APPLICATION_SUBRC LIKE SY-SUBRC.&lt;/P&gt;&lt;P&gt;  DATA FLAG_MUSS_PRUEFEN LIKE SY-DATAR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA MAX_ERRORS LIKE T130S-ANZUM.    " 4.0&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;note 419281&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA : FLG_MASS.&lt;/P&gt;&lt;P&gt;  CLEAR : FLG_MASS.&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS: .            " 4.0&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ALE-distribution unity : IDOC status set by locking      "note0361838&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  data:                                                     "note0361838&lt;/P&gt;&lt;P&gt;    it_dsp_idocstat like bdidocstat                         "note0361838&lt;/P&gt;&lt;P&gt;      occurs 0 with header line.                            "note0361838&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;Initialize data - general&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  REFRESH T_MFIELDRES.&lt;/P&gt;&lt;P&gt;  REFRESH T_IDOC_TRANC.&lt;/P&gt;&lt;P&gt;  REFRESH T_IDOC_TRANC.                "JH/02.02.98/4.0C  KPr100004993&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REFRESH t_idoc_tranc_segment.   " //br 40 : unnötig&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REFRESH matnr_tranc.            "    -"-&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REFRESH t_matnr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  COUNTER-TRANC = 1.&lt;/P&gt;&lt;P&gt;  COUNTER-D_IND = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH T_MARA_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MAKT_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MARC_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MARD_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MFHM_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MARM_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MEAN_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MBEW_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_STEU_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_STEUMM_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MLGN_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MLGT_UEB.                  " //br010797 neu zu 4.0&lt;/P&gt;&lt;P&gt;  REFRESH T_MPGD_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MPOP_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MVEG_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MVEU_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MVKE_UEB.&lt;/P&gt;&lt;P&gt;  REFRESH T_MPRW_UEB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; REFRESH VKORG_ALAND.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; REFRESH WERKS_ALAND.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR APPLICATION_SUBRC.&lt;/P&gt;&lt;P&gt;  REFRESH T_MERRDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check if right function is called&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  READ TABLE IDOC_CONTRL INDEX 1.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF  IDOC_CONTRL-IDOCTP &amp;lt;&amp;gt; 'ZBAPI_STUD_IDOC'.&lt;/P&gt;&lt;P&gt;      RAISE WRONG_FUNCTION_CALLED.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  LOOP AT IDOC_CONTRL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Initialize data - per IDOC&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  t_idoc_tranc-docnum = counter-tranc.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    T_IDOC_TRANC-DOCNUM = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;P&gt;    T_IDOC_TRANC-FIRST_TRANC_IDOC = COUNTER-TRANC + 2.&lt;/P&gt;&lt;P&gt;    APPEND T_IDOC_TRANC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Select segments which belong to IDOC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    REFRESH T_EDIDD.&lt;/P&gt;&lt;P&gt;    LOOP AT IDOC_DATA WHERE DOCNUM = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;P&gt;      APPEND IDOC_DATA TO T_EDIDD.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   BUSINESS TRANSACTION EVENT (header / data)         "note0388000&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     call function 'OPEN_FI_PERFORM_MGV00200_E'         "note0388000&lt;/P&gt;&lt;P&gt;          exporting                                     "note0388000&lt;/P&gt;&lt;P&gt;              idoc_header       = idoc_contrl           "note0388000&lt;/P&gt;&lt;P&gt;              FLG_APPEND_STATUS = 'X'                   "note0388000&lt;/P&gt;&lt;P&gt;          tables                                        "note0388000&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;(DEL)       idoc_data         = idoc_data "note0388000 note0418561&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              idoc_data         = t_edidd               "note0418561&lt;/P&gt;&lt;P&gt;              idoc_status       = idoc_status           "note0388000&lt;/P&gt;&lt;P&gt;          exceptions                                    "note0388000&lt;/P&gt;&lt;P&gt;              others       = 1.                         "note0388000&lt;/P&gt;&lt;P&gt;     if sy-subrc = 1.                                   "note0388000&lt;/P&gt;&lt;P&gt;        continue.                                       "note0388000&lt;/P&gt;&lt;P&gt;     endif.                                             "note0388000&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Within one IDOC: loop through data segments:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Prepare internal tables for the current material&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT T_EDIDD INTO IDOC_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Transform from CoreData to Normal Data if necesary&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CASE IDOC_DATA-SEGNAM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       WHEN 'E1MARAC'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*--COMMENTED BY SATISH&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         PERFORM MOVE_E1MARAC_TO_E1MARAM USING IDOC_DATA.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       WHEN 'E1MAKTC'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         PERFORM MOVE_E1MAKTC_TO_E1MAKTM USING IDOC_DATA.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*--COMMENTES ENDED BY SATISH&lt;/P&gt;&lt;P&gt;         WHEN 'ZBAPI_STUD_SEG'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          PERFORM MOVE_E1MARAC_TO_E1MARAM USING IDOC_DATA.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            CLEAR I_ZBAPI_STUD.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Second: Move E1MARAC into E1MARAM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            I_ZBAPI_STUD = IDOC_DATA-SDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Third: Move E1MARAM back into IDOC-line&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            IDOC_DATA-SDATA =  I_ZBAPI_STUD.&lt;/P&gt;&lt;P&gt;            IDOC_DATA-SEGNAM = 'ZBAPI_STUD_SEG'.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CURRENT_TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;      COUNTER-D_IND = COUNTER-D_IND + 1.&lt;/P&gt;&lt;P&gt;      COUNTER-TRANC = COUNTER-TRANC + 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE IDOC_DATA-SEGNAM.&lt;/P&gt;&lt;P&gt;         WHEN 'ZBAPI_STUD_SEG'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        Initialize data - per material&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          COUNTER-D_IND = 1.&lt;/P&gt;&lt;P&gt;          FIRST_TRANC = COUNTER-TRANC.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        interpret segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          ZBAPI_STUD_SEG = IDOC_DATA-SDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          MOVE-CORRESPONDING ZBAPI_STUD TO I_ZSTUD_UEB.&lt;/P&gt;&lt;P&gt;          T_IDOC_ROLLNO-DOCNUM  = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;P&gt;          T_IDOC_ROLLNO-ROLLNO  = I_ZSTUD_UEB-ROLLNO.&lt;/P&gt;&lt;P&gt;          APPEND T_IDOC_ROLLNO.&lt;/P&gt;&lt;P&gt;       ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            if not ZBAPI_STUD_SEG is initial.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ZBAPI_STUD-MANDT  = ZBAPI_STUD_SEG-MANDT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ZBAPI_STUD-ROLLNO = ZBAPI_STUD_SEG-ROLLNO.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ZBAPI_STUD-FNAME  = ZBAPI_STUD_SEG-FNAME.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             ZBAPI_STUD-LNAME  = ZBAPI_STUD_SEG-LNAME.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              INSERT ZBAPI_STUD FROM ZBAPI_STUD_SEG.&lt;/P&gt;&lt;P&gt;              COMMIT WORK.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- ALE ditribution unity : update IDOC status                "note03618&lt;/P&gt;&lt;P&gt;      LOOP AT it_dsp_idocstat.                                  "note036&lt;/P&gt;&lt;P&gt;         LOOP AT IDOC_STATUS WHERE DOCNUM = it_dsp_idocstat.    "note036&lt;/P&gt;&lt;P&gt;            DELETE idoc_status INDEX sy-tabix.                  "note036&lt;/P&gt;&lt;P&gt;         ENDLOOP.                                               "note036&lt;/P&gt;&lt;P&gt;         APPEND it_dsp_idocstat TO idoc_status.                 "note036&lt;/P&gt;&lt;P&gt;      ENDLOOP.                                                  "note036&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--GENERATING THE IDOC STATUS&lt;/P&gt;&lt;P&gt;  PERFORM HANDLE_ERROR_EXT             " //br40&lt;/P&gt;&lt;P&gt;              TABLES                                        "&lt;/P&gt;&lt;P&gt;                 IDOC_CONTRL                                "&lt;/P&gt;&lt;P&gt;                 IDOC_STATUS                                "&lt;/P&gt;&lt;P&gt;                 RETURN_VARIABLES                           "&lt;/P&gt;&lt;P&gt;                 T_MERRDAT                                  "&lt;/P&gt;&lt;P&gt;                 T_IDOC_TRANC                               "&lt;/P&gt;&lt;P&gt;                 T_IDOC_ROLLNO          "JH/4.0C/KPr100004993&lt;/P&gt;&lt;P&gt;              USING                                         "&lt;/P&gt;&lt;P&gt;                 GENERAL_SUBRC                              "&lt;/P&gt;&lt;P&gt;                 NO_APPLICATION_LOG                         "&lt;/P&gt;&lt;P&gt;                 MASSSAVEINFOS         "wk/40c&lt;/P&gt;&lt;P&gt;              CHANGING                                      "&lt;/P&gt;&lt;P&gt;                 WORKFLOW_RESULT.                           "&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              PERFORM HANDLE_ERROR&lt;/P&gt;&lt;P&gt;                          TABLES&lt;/P&gt;&lt;P&gt;                             IDOC_CONTRL&lt;/P&gt;&lt;P&gt;                             IDOC_STATUS&lt;/P&gt;&lt;P&gt;                             RETURN_VARIABLES&lt;/P&gt;&lt;P&gt;                             T_MERRDAT&lt;/P&gt;&lt;P&gt;                             T_IDOC_ROLLNO     "JH/4.0C/KPr100004993&lt;/P&gt;&lt;P&gt;                          USING&lt;/P&gt;&lt;P&gt;                             APPLICATION_SUBRC&lt;/P&gt;&lt;P&gt;                          CHANGING&lt;/P&gt;&lt;P&gt;                             WORKFLOW_RESULT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT T_IDOC_ROLLNO BY ROLLNO. "note 315124&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;React on general error&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: I_MERRDAT LIKE MERRDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF GENERAL_SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGTY = 'E'.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGID = SY-MSGID.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGNO = SY-MSGNO.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGV1 = SY-MSGV1.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGV2 = SY-MSGV2.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGV3 = SY-MSGV3.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGV4 = SY-MSGV4.&lt;/P&gt;&lt;P&gt;    APPEND I_MERRDAT TO T_MERRDAT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT T_MERRDAT INTO  I_MERRDAT&lt;/P&gt;&lt;P&gt;                    WHERE MSGTY = 'S'  "success&lt;/P&gt;&lt;P&gt;                    OR    MSGTY = 'D'  "dummy&lt;/P&gt;&lt;P&gt;                    OR    MSGTY = 'I'  "Information " //br011097 zu 3.1I&lt;/P&gt;&lt;P&gt;                    OR    MSGTY = 'H'  "dummy       " 4.0&lt;/P&gt;&lt;P&gt;                    OR    MSGTY = 'W'. "warning&lt;/P&gt;&lt;P&gt;    DELETE T_MERRDAT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFUNCTION.&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  handle_error_ext&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM HANDLE_ERROR_EXT&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;           IDOC_CONTRL                   STRUCTURE EDIDC&lt;/P&gt;&lt;P&gt;           IDOC_STATUS                   STRUCTURE BDIDOCSTAT&lt;/P&gt;&lt;P&gt;           RETURN_VARIABLES              STRUCTURE BDWFRETVAR&lt;/P&gt;&lt;P&gt;           T_MERRDAT                     STRUCTURE MERRDAT&lt;/P&gt;&lt;P&gt;           IDOC_TRANC                    STRUCTURE MATIDOCTRANC&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;JH/02.02.98/4.0C  KPr100004993 (Anfang)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           T_IDOC_ROLLNO                 STRUCTURE T_IDOC_ROLLNO&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;JH/02.02.98/4.0C  KPr100004993 (Ende)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        USING&lt;/P&gt;&lt;P&gt;           GENERAL_SUBRC                 LIKE SY-SUBRC&lt;/P&gt;&lt;P&gt;           NO_APPLICATION_LOG            LIKE SY-DATAR&lt;/P&gt;&lt;P&gt;           MASSSAVEINFOS                 LIKE MASSSAVINF&lt;/P&gt;&lt;P&gt;        CHANGING&lt;/P&gt;&lt;P&gt;           WORKFLOW_RESULT               LIKE BDWF_PARAM-RESULT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA FLAG_ERROR_HAPPENED.&lt;/P&gt;&lt;P&gt;  DATA I_MERRDAT LIKE MERRDAT.&lt;/P&gt;&lt;P&gt;  DATA IDOC_INDEX_2_SUBRC LIKE SY-SUBRC.&lt;/P&gt;&lt;P&gt;  DATA AL_HANDLES TYPE BAL_T_LOGH. "//br99&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT T_IDOC_ROLLNO BY ROLLNO.                        "note 315124&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;React on general error&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF GENERAL_SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    REFRESH T_MERRDAT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  i_merrdat-tranc = 0.                              " //br261197&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE IDOC_TRANC INDEX 1.     " zu 40b&lt;/P&gt;&lt;P&gt;    I_MERRDAT-TRANC = IDOC_TRANC-FIRST_TRANC_IDOC.          "&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGTY = 'E'.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGID = SY-MSGID.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGNO = SY-MSGNO.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGV1 = SY-MSGV1. I_MERRDAT-MSGV2 = SY-MSGV2.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGV3 = SY-MSGV3. I_MERRDAT-MSGV4 = SY-MSGV4.&lt;/P&gt;&lt;P&gt;    APPEND I_MERRDAT TO T_MERRDAT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: C_TRUE,&lt;/P&gt;&lt;P&gt;      C_FALSE VALUE 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If error happened ==&amp;gt; Rollback whole work....&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT T_MERRDAT INTO I_MERRDAT WHERE MSGTY NA 'SDHWI'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    FLAG_ERROR_HAPPENED = C_TRUE.&lt;/P&gt;&lt;P&gt;    ROLLBACK WORK.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    FLAG_ERROR_HAPPENED = C_FALSE.&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;----------------------------------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set IDOC status&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;two cases:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;single IDOC-processing: ==&amp;gt; error can be written in IDOC status&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;package processing ==&amp;gt; anononymous "package error" for all IDOCs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;----------------------------------------------------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  READ TABLE IDOC_CONTRL INDEX 2.&lt;/P&gt;&lt;P&gt;  IDOC_INDEX_2_SUBRC = SY-SUBRC.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;    IF 1 = 2.                          "//br40&lt;/P&gt;&lt;P&gt;      MESSAGE E051(B1).                                     "&lt;/P&gt;&lt;P&gt;    ENDIF.                                                  "&lt;/P&gt;&lt;P&gt;    CLEAR I_MERRDAT.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGID = 'B1'.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGTY = 'E'.&lt;/P&gt;&lt;P&gt;    I_MERRDAT-MSGNO = '051'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF IDOC_INDEX_2_SUBRC NE 0 OR FLAG_ERROR_HAPPENED = C_FALSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Nur in diesen Fällen wird Application Log geschrieben&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Delete all Successes and Dummy records from t_merrdat&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DELETE t_merrdat WHERE msgty = 'S'  "success         " testweise&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   OR    msgty = 'D'. "dummy           "&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT T_MERRDAT INTO I_MERRDAT WHERE MSGTY = 'D'.     "&lt;/P&gt;&lt;P&gt;      I_MERRDAT-MSGTY = 'S'.                                "&lt;/P&gt;&lt;P&gt;      MODIFY T_MERRDAT FROM I_MERRDAT.                      "&lt;/P&gt;&lt;P&gt;    ENDLOOP.                                                "&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WORKFLOW_RESULT = 0.&lt;/P&gt;&lt;P&gt;  LOOP AT IDOC_CONTRL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Set IDOC status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR IDOC_STATUS.&lt;/P&gt;&lt;P&gt;    IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;P&gt;    IF FLAG_ERROR_HAPPENED = C_FALSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Application log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM WRITE_APPL_LOG TABLES IDOC_TRANC&lt;/P&gt;&lt;P&gt;                                    T_MERRDAT&lt;/P&gt;&lt;P&gt;                                    IDOC_STATUS&lt;/P&gt;&lt;P&gt;                             USING  IDOC_CONTRL&lt;/P&gt;&lt;P&gt;                                    FLAG_ERROR_HAPPENED&lt;/P&gt;&lt;P&gt;                                    NO_APPLICATION_LOG&lt;/P&gt;&lt;P&gt;                                    MASSSAVEINFOS&lt;/P&gt;&lt;P&gt;                                    AL_HANDLES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    idoc_status-status = '53'.       "OK!&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    APPEND idoc_status.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;JH/02.02.98/4.0C  KPr100004993 (Anfang)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Fill Return variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR RETURN_VARIABLES.&lt;/P&gt;&lt;P&gt;      RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;P&gt;      RETURN_VARIABLES-WF_PARAM = 'Processed_IDOCs'.&lt;/P&gt;&lt;P&gt;      APPEND RETURN_VARIABLES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Verknüpfungseintrag anlegen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      READ TABLE T_IDOC_ROLLNO WITH KEY ROLLNO = IDOC_CONTRL-DOCNUM&lt;/P&gt;&lt;P&gt;                              BINARY SEARCH.&lt;/P&gt;&lt;P&gt;      IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;        RETURN_VARIABLES-DOC_NUMBER = T_IDOC_ROLLNO-ROLLNO.&lt;/P&gt;&lt;P&gt;        RETURN_VARIABLES-WF_PARAM = 'Appl_Objects'.&lt;/P&gt;&lt;P&gt;        APPEND RETURN_VARIABLES.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;JH/02.02.98/4.0C  KPr100004993 (Ende)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF IDOC_INDEX_2_SUBRC NE 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Application Log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM WRITE_APPL_LOG TABLES IDOC_TRANC&lt;/P&gt;&lt;P&gt;                                      T_MERRDAT&lt;/P&gt;&lt;P&gt;                                      IDOC_STATUS&lt;/P&gt;&lt;P&gt;                               USING  IDOC_CONTRL&lt;/P&gt;&lt;P&gt;                                      FLAG_ERROR_HAPPENED&lt;/P&gt;&lt;P&gt;                                      NO_APPLICATION_LOG&lt;/P&gt;&lt;P&gt;                                      MASSSAVEINFOS&lt;/P&gt;&lt;P&gt;                                      AL_HANDLES.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGID = I_MERRDAT-MSGID.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGTY = I_MERRDAT-MSGTY.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGNO = I_MERRDAT-MSGNO.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGV1 = I_MERRDAT-MSGV1.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGV2 = I_MERRDAT-MSGV2.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGV3 = I_MERRDAT-MSGV3.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-MSGV4 = I_MERRDAT-MSGV4.&lt;/P&gt;&lt;P&gt;        IDOC_STATUS-STATUS = '51'.     "ERROR!&lt;/P&gt;&lt;P&gt;        APPEND IDOC_STATUS.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Fill Return variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR RETURN_VARIABLES.&lt;/P&gt;&lt;P&gt;      RETURN_VARIABLES-DOC_NUMBER = IDOC_CONTRL-DOCNUM.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    return_variables-wf_param = c_wf_par_processed_idocs.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      RETURN_VARIABLES-WF_PARAM = 'Error_IDOCs'.&lt;/P&gt;&lt;P&gt;      APPEND RETURN_VARIABLES.&lt;/P&gt;&lt;P&gt;      WORKFLOW_RESULT = 99999.&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;  APPEND idoc_status.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NO_APPLICATION_LOG IS INITIAL.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAL_DB_SAVE'                           "//br99&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              I_IN_UPDATE_TASK = ' '&lt;/P&gt;&lt;P&gt;              I_SAVE_ALL       = ' '&lt;/P&gt;&lt;P&gt;              I_T_LOG_HANDLE   = AL_HANDLES.&lt;/P&gt;&lt;UL&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;            LOG_NOT_FOUND    = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            SAVE_NOT_ALLOWED = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            NUMBERING_ERROR  = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            OTHERS           = 4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAL_GLB_MEMORY_REFRESH'                "//br99&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            I_AUTHORIZATION          =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              I_REFRESH_ALL            = ' '&lt;/P&gt;&lt;P&gt;              I_T_LOGS_TO_BE_REFRESHED = AL_HANDLES.&lt;/P&gt;&lt;UL&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_AUTHORIZED           = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            OTHERS                   = 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " handle_error&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Save, check and activate&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;11. Assigning the Inbound Function Module to Basic Type &amp;amp; Message Type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE57&lt;/P&gt;&lt;P&gt;o	Click on change, continue, continue and New Entries Button&lt;/P&gt;&lt;P&gt;o	Enter the Module as IDOC_INPUT_ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;o	Type as &amp;#147;F&amp;#148;&lt;/P&gt;&lt;P&gt;o	Basic Type as ZBAPI_STUD_IDOC&lt;/P&gt;&lt;P&gt;o	Message Type as ZBAPI_STUD_MAS.&lt;/P&gt;&lt;P&gt;o	Direction as 2&lt;/P&gt;&lt;P&gt;o	Save and back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now Login in 810 client&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;12. Assigning the Inbound Function Module in ALE Table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code BD51&lt;/P&gt;&lt;P&gt;o	Click on continue, New Entries button&lt;/P&gt;&lt;P&gt;o	Give the Inbound Function Module IDOC_INPUT_ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;o	Give Input t. as 0 (zero)&lt;/P&gt;&lt;P&gt;o	Save and back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;13. Creating Process Code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE42&lt;/P&gt;&lt;P&gt;o	Click on Change, New Entries Button&lt;/P&gt;&lt;P&gt;o	Give Process Code name as ZSTUD, give Description &amp;amp; Save&lt;/P&gt;&lt;P&gt;o	Select Processing with ALE Services Radio button&lt;/P&gt;&lt;P&gt;o	Select Processing by Function Module Radio button&lt;/P&gt;&lt;P&gt;o	Click the ALE Table (arrow Icon) in Identification&lt;/P&gt;&lt;P&gt;o	Give the Function Module Name ZIDOC_INPUT_ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;o	Give maximum number of repeats 0&lt;/P&gt;&lt;P&gt;o	Save and back, back&lt;/P&gt;&lt;P&gt;o	Select the process code from the list &amp;amp; click on Logical Messages Icon&lt;/P&gt;&lt;P&gt;o	Give the Message Type as ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;o	Save &amp;amp; Back, Save &amp;amp; Back, Save &amp;amp; Back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;14. Changing the Customer Distribution model in Receiving system&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code BD64&lt;/P&gt;&lt;P&gt;o	Click on change and Create model view button&lt;/P&gt;&lt;P&gt;o	Select the model view &amp;amp; click on Environment -&amp;gt; Generate Partner Profiles&lt;/P&gt;&lt;P&gt;o	Select Transfer IDOC Immediately and Trigger Immediately radio buttons&lt;/P&gt;&lt;P&gt;o	Click on Execute&lt;/P&gt;&lt;P&gt;o	You should get a list in green color which means it executed successfully.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;15. Assigning the Process Code to Message Type in Receiving System&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o	Go to T. Code WE20&lt;/P&gt;&lt;P&gt;o	Expand Partner Type LS&lt;/P&gt;&lt;P&gt;o	Select the Partner Profile STUD_S&lt;/P&gt;&lt;P&gt;o	Double click on Message Type ZBAPI_STUD_MAS in Inbound parmtrs.&lt;/P&gt;&lt;P&gt;o	Give the Process Code as ZSTUD&lt;/P&gt;&lt;P&gt;o	Click on Trigger Immediately Radio button&lt;/P&gt;&lt;P&gt;o	Save &amp;amp; Back&lt;/P&gt;&lt;P&gt;o	Save &amp;amp; Back&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;16. Creating the Selection Program (Outbound Program)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	Login in client 800.&lt;/P&gt;&lt;P&gt;&amp;#149;	Go to T. Code SE38&lt;/P&gt;&lt;P&gt;&amp;#149;	Create a Report Program as   ZSTUD_SEND with the following code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZSTUD_SEND&lt;/P&gt;&lt;P&gt;       NO STANDARD PAGE HEADING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: ZBAPI_STUD.&lt;/P&gt;&lt;P&gt;DATA: IT_STUD LIKE ZBAPI_STUD OCCURS 0 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-H01.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: S_ROLLNO FOR ZBAPI_STUD-ROLLNO.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN:BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-H02.&lt;/P&gt;&lt;P&gt;PARAMETERS:  P_MESTYP LIKE EDIDC-MESTYP,&lt;/P&gt;&lt;P&gt;             P_RCVPRN LIKE TBDLST-LOGSYS.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN:END OF BLOCK B2.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN:END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM CREATE_STUDENT.&lt;/P&gt;&lt;P&gt;  PERFORM CREATE_IDOC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CREATE_STUDENT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      sending student&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM CREATE_STUDENT.&lt;/P&gt;&lt;P&gt;SELECT * FROM ZBAPI_STUD&lt;/P&gt;&lt;P&gt;   INTO TABLE IT_STUD&lt;/P&gt;&lt;P&gt;   WHERE ROLLNO IN S_ROLLNO.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CREATE_STUDENT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CREATE_IDOC&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      IDOC Creation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM CREATE_IDOC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IMAS_DATA LIKE EDIDD OCCURS 10 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       IMAS_CON LIKE EDIDC OCCURS 10 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       ICOM_CON LIKE EDIDC OCCURS 10 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IMAS_CON-RCVPRT = 'LS'.&lt;/P&gt;&lt;P&gt;IMAS_CON-RCVPRN = P_RCVPRN.&lt;/P&gt;&lt;P&gt;IMAS_CON-IDOCTP = 'ZBAPI_STUD_IDOC'.&lt;/P&gt;&lt;P&gt;IMAS_CON-MESTYP = P_MESTYP.&lt;/P&gt;&lt;P&gt;IMAS_CON-DIRECT = 1.&lt;/P&gt;&lt;P&gt;APPEND IMAS_CON.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT IT_STUD.&lt;/P&gt;&lt;P&gt;  IMAS_DATA-SEGNAM = 'ZBAPI_STUD_SEG'.&lt;/P&gt;&lt;P&gt;  IMAS_DATA-SDATA = IT_STUD.&lt;/P&gt;&lt;P&gt;  APPEND IMAS_DATA.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;          MASTER_IDOC_CONTROL            = IMAS_CON&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        OBJ_TYPE                       = ''&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        CHNUM                          = ''&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;          COMMUNICATION_IDOC_CONTROL     = ICOM_CON&lt;/P&gt;&lt;P&gt;          MASTER_IDOC_DATA               = IMAS_DATA&lt;/P&gt;&lt;UL&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;        ERROR_IN_IDOC_CONTROL          = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        ERROR_WRITING_IDOC_STATUS      = 2&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        ERROR_IN_IDOC_DATA             = 3&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        SENDING_LOGICAL_SYSTEM_UNKNOWN = 4&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        OTHERS                         = 5&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT  ICOM_CON.&lt;/P&gt;&lt;P&gt;  WRITE &lt;span class="lia-unicode-emoji" title=":confused_face:"&gt;😕&lt;/span&gt; 'IDOC: ', ICOM_CON-DOCNUM, 'CREATED SUCCESSFULLY'.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CREATE_IDOC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;17. Transferring the student records from 800 to 810 client &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	Execute Report Program   ZSTUD_SEND&lt;/P&gt;&lt;P&gt;&amp;#149;	Give the Range of Roll Nos to Transfer&lt;/P&gt;&lt;P&gt;&amp;#149;	Give Message Type as    ZBAPI_STUD_MAS&lt;/P&gt;&lt;P&gt;&amp;#149;	Give Receiver Logical system as   STUD_R&lt;/P&gt;&lt;P&gt;&amp;#149;	Execute&lt;/P&gt;&lt;P&gt;&amp;#149;	You should get the IDOC Number&lt;/P&gt;&lt;P&gt;&amp;#149;	Take the IDOC Number and go to T. Code WE05 &amp;amp; Execute&lt;/P&gt;&lt;P&gt;&amp;#149;	In Outbox you can see the IDOC Status&lt;/P&gt;&lt;P&gt;&amp;#149;	Select the status record in left side window&lt;/P&gt;&lt;P&gt;&amp;#149;	Double click on the Status record in right side window&lt;/P&gt;&lt;P&gt;&amp;#149;	You can see the Control Record, Data Record and Status Records for that IDOC&lt;/P&gt;&lt;P&gt;&amp;#149;	If the ICON is green and the status code is 3, it means the IDOC is passed to PORT Successfully.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now Login in 810 client&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;#149;	Go to T. Code WE05 &amp;amp; Execute&lt;/P&gt;&lt;P&gt;&amp;#149;	You can see the status record in left side window&lt;/P&gt;&lt;P&gt;&amp;#149;	If the status no is 53 and color is green, it means the IDOC is Posted to Application successfully.&lt;/P&gt;&lt;P&gt;&amp;#149;	You can see the Log Information by double clicking on the status record in right side window.&lt;/P&gt;&lt;P&gt;&amp;#149;	Now in left side window, you can see the Control Record, Data Record &amp;amp; Status Record of the IDOC&lt;/P&gt;&lt;P&gt;&amp;#149;	Now go to T. Code SE16&lt;/P&gt;&lt;P&gt;&amp;#149;	Give the table name ZBAPI_STUD &amp;amp; press F7&lt;/P&gt;&lt;P&gt;&amp;#149;	See the contents of the table&lt;/P&gt;&lt;P&gt;&amp;#149;	The table is updated with the students records transferred from 800 client with our selection program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------------------" /&gt;&lt;P&gt;Reward if usefu&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Jagadeesh.G&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 May 2008 07:24:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/ale/m-p/3825429#M919961</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-05-09T07:24:46Z</dc:date>
    </item>
  </channel>
</rss>

