<?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: Difference between call transaction &amp; session method? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654530#M880283</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI&lt;/P&gt;&lt;P&gt;Session Method works in Background and as well as in Foreground. Where as Call Transaction Method Works in Foreground.               (Note: No Display Mode is equal to Background Processing in call transaction method).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session Method can handle Multiple Applications at a time. Where as Call Transaction Method can handle only one Application.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session Method holds Log File by Default. Where as in Call Transaction Method no Log File by Default. We have to design Log File by using BDCMSGCOLL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session Method Updates the Database Synchronously. Call  Transaction Method Updates the Database Asynchronously. (Note: Asynchronous updation is Faster than Synchronous)&lt;/P&gt;&lt;P&gt; Session Method : &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;session method can work both foreground and background. &lt;/P&gt;&lt;P&gt;log file is created for this. &lt;/P&gt;&lt;P&gt;useful to transfer large amount of data. &lt;/P&gt;&lt;P&gt;in session method updation is synchronous and processing is asynchrounous. &lt;/P&gt;&lt;P&gt;it can be used for any no of applications at a time. &lt;/P&gt;&lt;P&gt;all the sessions, we have created are stored in a queue. &lt;/P&gt;&lt;P&gt;if we forget to set the processing then our session will be automatically deleted from the queue. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction  Method :&lt;/P&gt;&lt;P&gt;call transaction method is faster because we can can change the updation mode from synchronous to asynchronous (and asynchronous method is faster than synchronous method) &lt;/P&gt;&lt;P&gt;mode : n (acts as background ) &lt;/P&gt;&lt;P&gt;log file will not be created whereas the errors has to be handled explicitly using itab like bdcmsgcoll and we should use the function module 'FORMAT_MESSAGE' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;only one application will be considered. &lt;/P&gt;&lt;P&gt;lsmw does not support call transaction method because errors has to handled explicitly.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 08 Apr 2008 05:30:25 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-04-08T05:30:25Z</dc:date>
    <item>
      <title>Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654525#M880278</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI all,&lt;/P&gt;&lt;P&gt;Wha tis the Difference between call transaction &amp;amp; session method?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;JK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:22:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654525#M880278</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:22:25Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654526#M880279</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session method.&lt;/P&gt;&lt;P&gt;1) synchronous processing.&lt;/P&gt;&lt;P&gt;2) can tranfer large amount of data.&lt;/P&gt;&lt;P&gt;3) processing is slower.&lt;/P&gt;&lt;P&gt;4) error log is created&lt;/P&gt;&lt;P&gt;5) data is not updated until session is processed.&lt;/P&gt;&lt;P&gt;6)supports multiple transactions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction.&lt;/P&gt;&lt;P&gt;1) asynchronous processing&lt;/P&gt;&lt;P&gt;2) can transfer small amount of data&lt;/P&gt;&lt;P&gt;3) processing is faster.&lt;/P&gt;&lt;P&gt;4) errors need to be handled explicitly&lt;/P&gt;&lt;P&gt;5) data is updated automatically &lt;/P&gt;&lt;P&gt;6)supports single transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The most important aspects of the batch session interface are: - Asynchronous processing - Transfers data for multiple transactions - Synchronous database update During processing, no transaction is started until the previous transaction has been written to the database. - A batch input processing log is generated for each session - Sessions cannot be generated in parallel &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The most important aspects of the CALL TRANSACTION USING interface are: - Synchronous processing - Transfers data for a single transaction - Synchronous and asynchronous database updating both possible The program specifies which kind of updating is desired. - Separate LUW for the transaction The system performs a database commit immediately before and after the CALL TRANSACTION USING statement.  - No batch input processing log is generated. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;rgds,&lt;/P&gt;&lt;P&gt;bharat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:24:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654526#M880279</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:24:02Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654527#M880280</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI,,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here the differences betrween session and call transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;session method &lt;/P&gt;&lt;P&gt;1) asynchronous process&lt;/P&gt;&lt;P&gt;2)synchronous update&lt;/P&gt;&lt;P&gt;3)multiple transactions can be handled (Menas u can upload the data at a time formore than one t-code)&lt;/P&gt;&lt;P&gt;4)huge amount of data can be uploaded.&lt;/P&gt;&lt;P&gt;5)implicit error handling (Menas for errors SM35)&lt;/P&gt;&lt;P&gt;6)execute the session on a specific date. (by using hold date parameter)&lt;/P&gt;&lt;P&gt;7) Time requirement is more&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction:&lt;/P&gt;&lt;P&gt;1)asynchronous process&lt;/P&gt;&lt;P&gt;2)asynchronous /synchronous update&lt;/P&gt;&lt;P&gt;3) single transaction only handled&lt;/P&gt;&lt;P&gt;4)small amount of data uplaoded&lt;/P&gt;&lt;P&gt;5)explicit error handling (Menas all the error records move to internal table and validate)&lt;/P&gt;&lt;P&gt;6) Time requirement is low.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and also look at this link&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm" target="test_blank"&gt;http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:24:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654527#M880280</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:24:19Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654528#M880281</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;Session method. &lt;/P&gt;&lt;P&gt;1) synchronous processing. &lt;/P&gt;&lt;P&gt;2) can tranfer large amount of data. &lt;/P&gt;&lt;P&gt;3) processing is slower. &lt;/P&gt;&lt;P&gt;4) error log is created &lt;/P&gt;&lt;P&gt;5) data is not updated until session is processed. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction. &lt;/P&gt;&lt;P&gt;1) asynchronous processing &lt;/P&gt;&lt;P&gt;2) can transfer small amount of data &lt;/P&gt;&lt;P&gt;3) processing is faster. &lt;/P&gt;&lt;P&gt;4) errors need to be handled explicitly &lt;/P&gt;&lt;P&gt;5) data is updated automatically &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction is faster then session method. But usually we use session method in real time...because we can transfer large amount of data from internal table to database and if any errors in a session. Process will not complete until session get correct.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session method:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. This method is used to upload huge data&lt;/P&gt;&lt;P&gt;2 it has error log so that v can trace the errors easily.&lt;/P&gt;&lt;P&gt;3. it slower than call transaction method.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. This very fast than session method.&lt;/P&gt;&lt;P&gt;2. This is used to upload small volume of data.&lt;/P&gt;&lt;P&gt;3.Error tracing is bit difficult and v use MSGBDCCALL to get the error message.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLZ REWARD IF USEFUL&lt;/P&gt;&lt;P&gt;vivek&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:24:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654528#M880281</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:24:50Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654529#M880282</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Session method.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1) synchronous processing.&lt;/P&gt;&lt;P&gt;2) can tranfer large amount of data.&lt;/P&gt;&lt;P&gt;3) processing is slower.&lt;/P&gt;&lt;P&gt;4) error log is created&lt;/P&gt;&lt;P&gt;5) data is not updated until session is processed.&lt;/P&gt;&lt;P&gt;6)supports multiple transactions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Call transaction.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1) asynchronous processing&lt;/P&gt;&lt;P&gt;2) can transfer small amount of data&lt;/P&gt;&lt;P&gt;3) processing is faster.&lt;/P&gt;&lt;P&gt;4) errors need to be handled explicitly&lt;/P&gt;&lt;P&gt;5) data is updated automatically &lt;/P&gt;&lt;P&gt;6)supports single transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if useful.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;AK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:27:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654529#M880282</guid>
      <dc:creator>ak_upadhyay</dc:creator>
      <dc:date>2008-04-08T05:27:41Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654530#M880283</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI&lt;/P&gt;&lt;P&gt;Session Method works in Background and as well as in Foreground. Where as Call Transaction Method Works in Foreground.               (Note: No Display Mode is equal to Background Processing in call transaction method).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session Method can handle Multiple Applications at a time. Where as Call Transaction Method can handle only one Application.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session Method holds Log File by Default. Where as in Call Transaction Method no Log File by Default. We have to design Log File by using BDCMSGCOLL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session Method Updates the Database Synchronously. Call  Transaction Method Updates the Database Asynchronously. (Note: Asynchronous updation is Faster than Synchronous)&lt;/P&gt;&lt;P&gt; Session Method : &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;session method can work both foreground and background. &lt;/P&gt;&lt;P&gt;log file is created for this. &lt;/P&gt;&lt;P&gt;useful to transfer large amount of data. &lt;/P&gt;&lt;P&gt;in session method updation is synchronous and processing is asynchrounous. &lt;/P&gt;&lt;P&gt;it can be used for any no of applications at a time. &lt;/P&gt;&lt;P&gt;all the sessions, we have created are stored in a queue. &lt;/P&gt;&lt;P&gt;if we forget to set the processing then our session will be automatically deleted from the queue. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction  Method :&lt;/P&gt;&lt;P&gt;call transaction method is faster because we can can change the updation mode from synchronous to asynchronous (and asynchronous method is faster than synchronous method) &lt;/P&gt;&lt;P&gt;mode : n (acts as background ) &lt;/P&gt;&lt;P&gt;log file will not be created whereas the errors has to be handled explicitly using itab like bdcmsgcoll and we should use the function module 'FORMAT_MESSAGE' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;only one application will be considered. &lt;/P&gt;&lt;P&gt;lsmw does not support call transaction method because errors has to handled explicitly.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:30:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654530#M880283</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:30:25Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654531#M880284</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                        Session                           Call Transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Return Code      No                                    Yes&lt;/P&gt;&lt;P&gt;DB update         Sychnronous                    asychnronous&lt;/P&gt;&lt;P&gt;Processing&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:37:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654531#M880284</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:37:14Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654532#M880285</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session :&lt;/P&gt;&lt;P&gt;Return code : no&lt;/P&gt;&lt;P&gt;DB Update : Synchronous&lt;/P&gt;&lt;P&gt;Processing: Time delayed&lt;/P&gt;&lt;P&gt;Transactions : More than one can be handled&lt;/P&gt;&lt;P&gt;Error Log:   Will be created&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call Transaction&lt;/P&gt;&lt;P&gt;Return code :Yes&lt;/P&gt;&lt;P&gt;DB Update : ASynchronous&lt;/P&gt;&lt;P&gt;Processing: Immediately&lt;/P&gt;&lt;P&gt;Transactions :only one can be handled&lt;/P&gt;&lt;P&gt;Error Log:   Will not be created.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Sindhu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:42:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654532#M880285</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:42:20Z</dc:date>
    </item>
    <item>
      <title>Re: Difference between call transaction &amp; session method?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654533#M880286</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Janardhan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Session method.&lt;/P&gt;&lt;P&gt;1) synchronous processing.&lt;/P&gt;&lt;P&gt;2) can tranfer large amount of data.&lt;/P&gt;&lt;P&gt;3) processing is slower.&lt;/P&gt;&lt;P&gt;4) error log is created&lt;/P&gt;&lt;P&gt;5) data is not updated until session is processed.&lt;/P&gt;&lt;P&gt;6) Supports multiple transactions by using BDC_INSERT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call transaction.&lt;/P&gt;&lt;P&gt;1) asynchronous processing&lt;/P&gt;&lt;P&gt;2) can transfer small amount of data&lt;/P&gt;&lt;P&gt;3) processing is faster.&lt;/P&gt;&lt;P&gt;4) errors need to be handled explicitly&lt;/P&gt;&lt;P&gt;5) data is updated automatically &lt;/P&gt;&lt;P&gt;6)supports single transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To get a clear picture, youhave to work with these Programs...&lt;/P&gt;&lt;P&gt;I will provide you a BDC progarm..with call tarnscation and Session method.  Go through it and work with it....So that, you will get a brief ides abt these two methods...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let us start with Recording proces &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Before getting started with the Recording process...we have to know the transcation code. We do recording to record the screen number, screen values, Button values(OK codes) ...etc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example...while recording we create a record using some t-code (Say MM01) ...Now, we will create a materail master record using the Recording process. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let us see the process of recoding a single record with MM01 using SHDB(A tool used to record the details of T-code) &lt;/P&gt;&lt;P&gt;Go through these steps for recording by using SHDB. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How to use recording :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Go to SHDB&lt;/STRONG&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Click on New Recording &lt;/P&gt;&lt;P&gt;--&amp;gt; Provide any name in Recording , For ex: Z_CHAITU&lt;/P&gt;&lt;P&gt;--&amp;gt; Provide the Transaction name as &amp;#147;MM01&amp;#148; &lt;/P&gt;&lt;P&gt;--&amp;gt; Select the update mode as Synchrounous or Asynchrounus method&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Click on Start Recording button. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; It will display MM01 screen&amp;#133;.type the appropriate &lt;/P&gt;&lt;P&gt;information in it. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Type the Material no as : 4567E (Any no, But there should b 1 Character in it)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Type Checmical Industry in INDUSTRY SECTOR&lt;/P&gt;&lt;P&gt;--&amp;gt; Type COUPONS in MATERIAL TYPE&lt;/P&gt;&lt;P&gt;--&amp;gt; Now click on Select Views button. &lt;/P&gt;&lt;P&gt;--&amp;gt; Select BASIC DATA 1&lt;/P&gt;&lt;P&gt;--&amp;gt; Click on Ok button &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Under Basic data tab under Material, it will display the Material number.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Type the short description and &amp;#147;Provide EA as Base Unit Of Measure&amp;#148;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; CLICK ON BACK AND IT WILL ASK U TO SAVE THE DATA, CLICK ON YES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; Again click on Back, it will ask if u wish to save the changes to record entries. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&amp;gt; Click on Yes &lt;/P&gt;&lt;P&gt;--&amp;gt; Now, u will be in Initial screen&lt;/P&gt;&lt;P&gt;--&amp;gt; Select the record and Click on Program button&lt;/P&gt;&lt;P&gt;--&amp;gt; Now, provide any program name&lt;/P&gt;&lt;P&gt;--&amp;gt; Now, select &amp;#145;Transfer from recording&amp;#146;&lt;/P&gt;&lt;P&gt;--&amp;gt; Click on Tick mark &lt;/P&gt;&lt;P&gt;--&amp;gt; Give some short description&lt;/P&gt;&lt;P&gt;--&amp;gt; Type as Executable &lt;/P&gt;&lt;P&gt;--&amp;gt; Click on Source Code button &lt;/P&gt;&lt;P&gt;--&amp;gt; Automatically the code will appear in SE 38 program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U can try these steps with any T-code by knowing the Mandatory fields in it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;---&amp;gt; &lt;STRONG&gt;Now by following all the above steps ur done with the recording process to create a single record in MAterail master (MM01). Now, we use the same recording process and put this recording under Loop in report program.&lt;/STRONG&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So that, it will follow the same steps automatically to create materail master records from the flat file. If you have 10 records in flat file(Note pad) then it will do the same process for 10 times to upload 10 records from the flat file using the recoding process that we have done by using the SHDB&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;If you want then i will provide you with the sample program to upload the data for MK01 using Call transcation and Session method.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Call transcation method for MK01:&lt;/STRONG&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U can try these steps with any T-code by knowing the Mandatory fields in it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp; TITLE : BDC FOR MK01&lt;/P&gt;&lt;P&gt;*&amp;amp; DESCR : UPLOAD THE DATA THROUGH FLAT FILE&lt;/P&gt;&lt;P&gt;*&amp;amp; TRANSPORT : DOLK901203&lt;/P&gt;&lt;P&gt;*&amp;amp; VERSION : V1&lt;/P&gt;&lt;P&gt;*&amp;amp; DATE : 17th , JAN , 2008&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report Z24_BDC_MK01&lt;/P&gt;&lt;P&gt;no standard page heading line-size 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; DECLARATIONS OF STRUCTURE FOR MK01&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF TY_MK01 ,&lt;/P&gt;&lt;P&gt;KTOKK TYPE RF02K-KTOKK ,&lt;/P&gt;&lt;P&gt;NAME1 TYPE LFA1-NAME1 ,&lt;/P&gt;&lt;P&gt;SORTL TYPE LFA1-SORTL ,&lt;/P&gt;&lt;P&gt;PSTLZ TYPE LFA1-PSTLZ ,&lt;/P&gt;&lt;P&gt;LAND1 TYPE LFA1-LAND1 ,&lt;/P&gt;&lt;P&gt;END OF TY_MK01 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; DECLARATION OF INTERNAL TABLE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : T_MK01 TYPE STANDARD TABLE OF TY_MK01 INITIAL SIZE 0 ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;T_BDCDATA TYPE STANDARD TABLE OF BDCDATA INITIAL SIZE 0 ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;T_BDCMSGCOLL TYPE STANDARD TABLE OF BDCMSGCOLL INITIAL SIZE 0 ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;T_ERROR TYPE STANDARD TABLE OF TY_MK01 INITIAL SIZE 0 ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; DECLARATION OF WORK AREA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_MK01 TYPE TY_MK01 ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_BDCDATA TYPE BDCDATA ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_BDCMSGCOLL TYPE BDCMSGCOLL .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; DECLARATION OF SELECTION SCREEN&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS : P_FILE TYPE FILENAME .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; DECLARATION OF START-OF-SELECTION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&amp;amp;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM SUB_UPLOAD_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM SUB_POPULATE_BDC .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM SUB_ERROR_REC .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*include bdcrecx1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form SUB_UPLOAD_DATA&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form SUB_UPLOAD_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : L_FILE TYPE STRING .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;L_FILE = P_FILE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;filename = L_FILE&lt;/P&gt;&lt;P&gt;HAS_FIELD_SEPARATOR = 'X'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables&lt;/P&gt;&lt;P&gt;data_tab = T_MK01 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " SUB_UPLOAD_DATA&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form SUB_POPULATE_BDC&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form SUB_POPULATE_BDC .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT T_MK01 INTO W_MK01 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : L_MSG TYPE STRING .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REFRESH T_BDCDATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0107'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'RF02K-KTOKK'.&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 'RF02K-KTOKK'&lt;/P&gt;&lt;P&gt;W_MK01-KTOKK.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0110'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'LFA1-LAND1'.&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 'LFA1-NAME1'&lt;/P&gt;&lt;P&gt;W_MK01-NAME1.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-SORTL'&lt;/P&gt;&lt;P&gt;W_MK01-SORTL.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-PSTLZ'&lt;/P&gt;&lt;P&gt;W_MK01-PSTLZ.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-LAND1'&lt;/P&gt;&lt;P&gt;W_MK01-LAND1.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0120'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'LFA1-KUNNR'.&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_dynpro using 'SAPMF02K' '0130'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'RF02K-LIFNR'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=ENTR'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPLSPO1' '0300'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'=YES'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'MK01' USING T_BDCDATA MODE 'N' MESSAGES INTO T_BDCMSGCOLL .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF SY-SUBRC 0 .&lt;/P&gt;&lt;P&gt;APPEND W_MK01 TO T_ERROR .&lt;/P&gt;&lt;P&gt;ENDIF .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR W_BDCMSGCOLL .&lt;/P&gt;&lt;P&gt;READ TABLE T_BDCMSGCOLL INTO W_BDCMSGCOLL INDEX 1 .&lt;/P&gt;&lt;P&gt;CLEAR L_MSG .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;ID = W_BDCMSGCOLL-MSGID&lt;/P&gt;&lt;P&gt;LANG = SY-LANGU&lt;/P&gt;&lt;P&gt;NO = W_BDCMSGCOLL-MSGNR&lt;/P&gt;&lt;P&gt;V1 = W_BDCMSGCOLL-MSGV1&lt;/P&gt;&lt;P&gt;V2 = W_BDCMSGCOLL-MSGV2&lt;/P&gt;&lt;P&gt;V3 = W_BDCMSGCOLL-MSGV3&lt;/P&gt;&lt;P&gt;V4 = W_BDCMSGCOLL-MSGV4&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;MSG = L_MSG&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;NOT_FOUND = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;WRITE : / 'MESSAGE FOR ' , W_MK01-KTOKK ,'-------' , L_MSG .&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;endform. " SUB_POPULATE_BDC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Start new screen * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;CLEAR W_BDCDATA.&lt;/P&gt;&lt;P&gt;W_BDCDATA-PROGRAM = PROGRAM.&lt;/P&gt;&lt;P&gt;W_BDCDATA-DYNPRO = DYNPRO.&lt;/P&gt;&lt;P&gt;W_BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;APPEND W_BDCDATA TO T_BDCDATA .&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Insert field * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR W_BDCDATA.&lt;/P&gt;&lt;P&gt;W_BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;W_BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;APPEND W_BDCDATA TO T_BDCDATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form SUB_ERROR_REC&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; p1 text &lt;/P&gt;&lt;P&gt;&amp;lt;-- p2 text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;form SUB_ERROR_REC .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;filename = 'C:/ERRORS OF MK01.TXT'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE_FIELD_SEPARATOR = 'X'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables&lt;/P&gt;&lt;P&gt;data_tab = T_ERROR .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " SUB_ERROR_REC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Session Method for MK01:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;**&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&amp;amp; PURPOSE : This BDC report is used to upload all the vendor master&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;&amp;amp; data in to SAP using SESSION METHOD with handling the errors&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;**&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;**report Y035_SESSION_METHOD&lt;P&gt;&lt;/P&gt;&lt;P&gt;no standard page heading line-size 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Structure declaration&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Structure Declaration for source internal table&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF TY_UPLOAD,&lt;/P&gt;&lt;P&gt;LIFNR TYPE RF02K-LIFNR,&lt;/P&gt;&lt;P&gt;EKORG TYPE RF02K-EKORG,&lt;/P&gt;&lt;P&gt;KTOKK TYPE RF02K-KTOKK,&lt;/P&gt;&lt;P&gt;NAME1 TYPE LFA1-NAME1,&lt;/P&gt;&lt;P&gt;SORTL TYPE LFA1-SORTL,&lt;/P&gt;&lt;P&gt;LAND1 TYPE LFA1-LAND1,&lt;/P&gt;&lt;P&gt;SPRAS TYPE LFA1-SPRAS,&lt;/P&gt;&lt;P&gt;WAERS TYPE LFM1-WAERS,&lt;/P&gt;&lt;P&gt;END OF TY_UPLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Internal Table declaration&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*Internal Table Declaration for source table&lt;/P&gt;&lt;P&gt;DATA : T_UPLOAD TYPE STANDARD TABLE OF TY_UPLOAD INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal Table Declaration for bdcdata&lt;/P&gt;&lt;P&gt;T_BDCDATA TYPE STANDARD TABLE OF BDCDATA INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table declaration for BDCMSGCOLL (To handle the errors)&lt;/P&gt;&lt;P&gt;T_BDCMSG TYPE STANDARD TABLE OF BDCMSGCOLL,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table declaration for reprocess the errors&lt;/P&gt;&lt;P&gt;T_ERRORS TYPE STANDARD TABLE OF TY_UPLOAD INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Workarea declaration&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Work area delaration for source table&lt;/P&gt;&lt;P&gt;W_UPLOAD TYPE TY_UPLOAD,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Work area delaration for bdcdata&lt;/P&gt;&lt;P&gt;W_BDCDATA TYPE BDCDATA,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Work area delaration for BDCMSGCOLL&lt;/P&gt;&lt;P&gt;W_BDCMSG TYPE BDCMSGCOLL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Selection screen declaration&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Selection Screen declaration&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETERS : P_FLNAME TYPE FILENAME.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Start of selection declaration&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Start of selection declaration&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Upload the data&lt;/P&gt;&lt;P&gt;PERFORM SUB_UPLOAD_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Populate the BDC data&lt;/P&gt;&lt;P&gt;PERFORM SUB_POPULATE_BDC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Process the error records&lt;/P&gt;&lt;P&gt;PERFORM SUB_ERROR_RECORD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*include bdcrecx1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form SUB_UPLOAD_DATA&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This subroutine is used to upload the data &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM SUB_UPLOAD_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : L_FLNAME TYPE STRING.&lt;/P&gt;&lt;P&gt;L_FLNAME = P_FLNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;FILENAME = L_FLNAME&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FILETYPE = 'ASC' &lt;/P&gt;&lt;P&gt;HAS_FIELD_SEPARATOR = 'X'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;DATA_TAB = T_UPLOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " SUB_UPLOAD_DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form SUB_POPULATE_BDC&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This subroutine is used to populate the BDC data &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM SUB_POPULATE_BDC .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : L_MSG TYPE STRING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*To oper a sesion in SE35&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 = 'MAMA_SESSION'&lt;/P&gt;&lt;P&gt;USER = SY-UNAME&lt;/P&gt;&lt;P&gt;KEEP = 'X'&lt;/P&gt;&lt;P&gt;HOLDDATE = '20080129'&lt;/P&gt;&lt;P&gt;PROG = SY-CPROG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT T_UPLOAD INTO W_UPLOAD.&lt;/P&gt;&lt;P&gt;REFRESH T_BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0107'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR' 'RF02K-KTOKK'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RF02K-LIFNR' W_UPLOAD-LIFNR.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RF02K-EKORG' W_UPLOAD-EKORG.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'RF02K-KTOKK' W_UPLOAD-KTOKK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0110'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR' 'LFA1-SPRAS'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-NAME1' W_UPLOAD-NAME1.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-SORTL' W_UPLOAD-SORTL.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-LAND1' W_UPLOAD-LAND1.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFA1-SPRAS' W_UPLOAD-SPRAS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0120'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR' 'LFA1-KUNNR'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0310'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR' 'LFM1-WAERS'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'LFM1-WAERS' W_UPLOAD-WAERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMF02K' '0320'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_CURSOR' 'RF02K-LIFNR'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE' '=ENTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPLSPO1' '0300'.&lt;/P&gt;&lt;P&gt;perform bdc_field using 'BDC_OKCODE' '=YES'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Transfer data to the session&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;For multiple transcations u have to call this FM again and *provide diff T code...For Ex : MM01&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;CALL FUNCTION 'BDC_INSERT'&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;TCODE = 'MK01'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;dynprotab = T_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;*To close the session&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;ENDFORM. " SUB_POPULATE_BDC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Start new screen * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;CLEAR W_BDCDATA.&lt;/P&gt;&lt;P&gt;W_BDCDATA-PROGRAM = PROGRAM.&lt;/P&gt;&lt;P&gt;W_BDCDATA-DYNPRO = DYNPRO.&lt;/P&gt;&lt;P&gt;W_BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;APPEND W_BDCDATA TO T_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Insert field * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;CLEAR W_BDCDATA.&lt;/P&gt;&lt;P&gt;W_BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;W_BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;APPEND W_BDCDATA TO T_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form SUB_ERROR_RECORD&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This subroutine is used to process the error records &lt;/P&gt;&lt;P&gt;in to a file T_ERRORS &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM SUB_ERROR_RECORD .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;FILENAME = 'C:\MAMA_ERRORS.TXT'&lt;/P&gt;&lt;P&gt;WRITE_FIELD_SEPARATOR = 'X'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;DATA_TAB = T_ERRORS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " SUB_ERROR_RECORD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope the Explonation and information I had provided will resolve your issue. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if information is very Helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Krishna Chaitanya&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Apr 2008 05:43:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/difference-between-call-transaction-session-method/m-p/3654533#M880286</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-04-08T05:43:32Z</dc:date>
    </item>
  </channel>
</rss>

