<?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: luw in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449124#M828478</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;luw&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The Open SQL statements INSERT, UPDATE, MODIFY, and DELETE allow you to program database changes that extend over several dialog steps. Even if you have not explicitly programmed a database commit, the implicit database commit that occurs after a screen has been processed concludes the database LUW. The following diagram shows the individual database LUWs in a typical screen sequence:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Under this procedure, you cannot roll back the database changes from previous dialog steps. It is therefore only suitable for programs in which there is no logical relationship between the individual dialog steps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, the database changes in individual dialog steps normally depend on those in other dialog steps, and must therefore all be executed or rolled back together. These dependent database changes form logical units, and can be grouped into a single database LUW using the bundling techniques listed below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A logical unit consisting of dialog steps, whose changes are written to the database in a single database LUW is called an SAP LUW. Unlike a database LUW, an SAP LUW can span several dialog steps, and be executed using a series of different work processes. If an SAP LUW contains database changes, you should either write all of them or none at all to the database. To ensure that this happens, you must include a database commit when your transaction has ended successfully, and a database rollback in case the program detects an error. However, since database changes from a database LUW cannot be reversed in a subsequent database LUW, you must make all of the database changes for the SAP LUW in a single database LUW. To maintain data integrity, you must bundle all of you database changes in the final database LUW of the SAP LUW. The following diagram illustrates this principle:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The bundling technique for database changes within an SAP LUW ensures that you can still reverse them. It also means that you can distribute a transaction across more than one work process, and even across more than one R/3 System. The possibilities for bundling database changes within an SAP LUW are listed below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The simplest form of bundling would be to process a whole application within a single dialog step. Here, the system checks the user&amp;#146;s input and updates the database without a database commit occurring within the dialog step itself. Of course, this is not suitable for complex business processes. Instead, the R/3 Basis system contains the following bundling techniques.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bundling using Function Modules for Updates&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you call a function module using the CALL FUNCTION... IN UPDATE TASK statement, the function module is flagged for execution using a special update work process. This means that you can write the Open SQL statements for the database changes in the function module instead of in your program, and call the function module at the point in the program where you would otherwise have included the statements. When you call a function module using the IN UPDATE TASK addition, it and its interface parameters are stored as a log entry in a special database table called VBLOG. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The function module is executed using an update work process when the program reaches the COMMIT WORK statement. After the COMMIT WORK statement, the dialog work process is free to receive further user input. The dialog part of the transaction finishes with the COMMIT WORK statement. The update part of the SAP LUW then begins, and this is the responsibility of the update work process. The SAP LUW is complete once the update process has committed or rolled back all of the database changes. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further information about how to create function modules for use in update, refer to Creating Function Modules for Database Updates &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;During the update, errors only occur in exceptional cases, since the system checks for all logical errors, such as incorrect entries, in the dialog phase of the SAP LUW. If a logical error occurs, the program can terminate the update using the ROLLBACK WORK statement. Then, the function modules are not called, and the log entry is deleted from table VBLOG. Errors during the update itself are usually technical, for example, memory shortage. If a technical error occurs, the update work process triggers a database rollback, and places the log entry back into VBLOG. It then sends a mail to the user whose dialog originally generated the VBLOG entry with details of the termination. These errors must be corrected by the system administrator. After this, the returned VBLOG entries can be processed again. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further information about update administration, see Update Administration&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This technique of bundling database changes in the last database LUW of the SAP LUW allows you to update the database asynchronously, reducing the response times in the dialog work process. You can, for example, decouple the update entirely from the dialog work process and use a central update work process on a remote database server. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bundling Using Subroutines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The statement PERFORM ON COMMIT calls a subroutine in the dialog work process. However, it is not executed until the system reaches the next COMMIT WORK statement. Here, as well, the ABAP statement COMMIT WORK defines the end of the SAP LUW, since all statements in a subroutine called with PERFORM ON COMMIT that make database changes are executed in the database LUW of the corresponding dialog step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The advantage of this bundling technique against CALL FUNCTION... IN UPDATE TASK is better performance, since the update data does not have to be written into an extra table. The disadvantage, however, is that you cannot pass parameters in a PERFORM... ON COMMIT statement. Data is passed using global variables and ABAP memory. There is a considerable danger of data inconsistency when you use this method to pass data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bundling Using Function Modules in Other R/3 Systems&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Function modules that you call using CALL FUNCTION... IN BACKGROUND TASK DESTINATION... are registered for background execution in another R/3 System when the program reaches the next COMMIT WORK statement (using Remote Function Call). After the COMMIT WORK, the dialog process does not wait for these function modules to be executed (asynchronous update). All of the function modules that you register in this way are executed together in a single database LUW. These updates are useful, for example, when you need to maintain identical data in more than one database.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further details, refer to the keyword documentation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For more details of RFC processing, refer to the Remote Communications section of the Basis Services documentation. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;From a business point-of-view, an SAP logical unit of work (SAP-LUW ) consists of an SAP&lt;/P&gt;&lt;P&gt;transaction a user executes online (first part of LUW) and the corresponding update (second part of&lt;/P&gt;&lt;P&gt;LUW). In online processing, the user can proceed with the next SAP transaction after saving, usually&lt;/P&gt;&lt;P&gt;at the end of the transaction processing (online part). The user therefore starts an additional SAPLUW&lt;/P&gt;&lt;P&gt;while the update from the first SAP-LUW was running. This is asynchronous transaction&lt;/P&gt;&lt;P&gt;processing.&lt;/P&gt;&lt;P&gt;n In online processing, the user can proceed with the next SAP transaction after saving, usually at the&lt;/P&gt;&lt;P&gt;end of the transaction processing (online part). The user therefore starts an additional SAP-LUW&lt;/P&gt;&lt;P&gt;while the update from the first SAP-LUW was running. This is called asynchronous transaction&lt;/P&gt;&lt;P&gt;processing.&lt;/P&gt;&lt;P&gt;n The processing of batch input sessions, however, is synchronous. This means SAP-LUW 2 is&lt;/P&gt;&lt;P&gt;not started until the update for SAP-LUW 1 is completed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Processing mode "A" for call transaction:&lt;/P&gt;&lt;P&gt;After the first part of the SAP-LUW is completed and the changes are marked, the next SAP-LUW&lt;/P&gt;&lt;P&gt;can be started immediately. This means that external data imported using call transaction could be&lt;/P&gt;&lt;P&gt;imported partially in parallel (overlapping import), if the update takes longer than the calling of the&lt;/P&gt;&lt;P&gt;next record to be processed.&lt;/P&gt;&lt;P&gt;n We do not recommend the use of asynchronous processing with CT; if you do use it, test it&lt;/P&gt;&lt;P&gt;thoroughly beforehand.&lt;/P&gt;&lt;P&gt;SAP Notes on updating / locks:&lt;/P&gt;&lt;P&gt;&amp;amp;#159; Lock table 17267, 13907, 97760&lt;/P&gt;&lt;P&gt;&amp;amp;#159; Update / repeat update 70085&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When the parameter XCALL is selected, processing is through 'Call Transaction .. Using ..?. The&lt;/P&gt;&lt;P&gt;transactions are not stored in a batch input session, instead, processing begins immediately. If&lt;/P&gt;&lt;P&gt;processing with 'Call Transaction .. Using ..' was not successful, the cause of the error is logged, and&lt;/P&gt;&lt;P&gt;the transaction is then saved in a batch input session.&lt;/P&gt;&lt;P&gt;n You can use parameter ANZ_MODE to control the display mode (see CT method).&lt;/P&gt;&lt;P&gt;n The parameter UPDATE specifies the update mode (see CT method).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Database rollback segments are buffer areas that store the ?before image? of the database during a&lt;/P&gt;&lt;P&gt;database logical unit of work (LUW) (DB - LUW = database processing step). The ?before image? is&lt;/P&gt;&lt;P&gt;the change information needed to restore the database to a consistent state, if an error occurs during&lt;/P&gt;&lt;P&gt;this small processing step.&lt;/P&gt;&lt;P&gt;n The call of BDC_INSERT to fill the batch input session causes database changes that fill the&lt;/P&gt;&lt;P&gt;rollback segments. To restrict the growth of these segments, we recommend you trigger a database&lt;/P&gt;&lt;P&gt;commit at regular intervals (every 100 or 1000 loops). To do this, use the ABAP command&lt;/P&gt;&lt;P&gt;COMMIT WORK, which resets the rollback segments&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;do reward if helpful&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 25 Feb 2008 07:45:39 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-02-25T07:45:39Z</dc:date>
    <item>
      <title>luw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449121#M828475</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi frds plz tell e&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;what is luw concept where do u use?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;plz respond this mail  sudhakarbabu786@rediffmail.com&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Feb 2008 07:32:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449121#M828475</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-25T07:32:05Z</dc:date>
    </item>
    <item>
      <title>Re: luw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449122#M828476</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;check u r mail...i have sent u some notes..&lt;/P&gt;&lt;P&gt;hope it is helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Feb 2008 07:36:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449122#M828476</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-25T07:36:50Z</dc:date>
    </item>
    <item>
      <title>Re: luw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449123#M828477</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;/P&gt;&lt;P&gt;Check these links on LUW's&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_nw04/helpdata/en/41/7af4bfa79e11d1950f0000e82de14a/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_nw04/helpdata/en/41/7af4bfa79e11d1950f0000e82de14a/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_47x200/helpdata/en/41/7af4c2a79e11d1950f0000e82de14a/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_47x200/helpdata/en/41/7af4c2a79e11d1950f0000e82de14a/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_47x200/helpdata/en/41/7af4b9a79e11d1950f0000e82de14a/frameset.htm" target="test_blank"&gt;http://help.sap.com/saphelp_47x200/helpdata/en/41/7af4b9a79e11d1950f0000e82de14a/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;An SAP LUW is a logical unit consisting of dialog steps, whose changes are written to the database in a single database LUW. &lt;/P&gt;&lt;P&gt;There are various bundling techniques that you can use to ensure that all of the database updates belonging to an SAP LUW are made in the same single database LUW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let one user is modifying a record and the second user is trying to delete the same record at the same time. If the second user is successful in deleting the record, then the first user will face problem in modifying the record. To avoid such problems, SAP has introduced LUW (Logical unit of Work)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LUW is defined as Locking Mechanism to protect transaction integrity.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Types of LUWs:&lt;/P&gt;&lt;P&gt;Database transaction or LUW.&lt;/P&gt;&lt;P&gt;Update transaction or SAPLUW.&lt;/P&gt;&lt;P&gt;ABAP/4 Transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;database transaction&lt;/P&gt;&lt;P&gt;Database transaction or LUW is defined as a period in which operation requested must be performed as one unit. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;At the end of LUW, either the database changes are committed or rolled back.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SAP LUW&lt;/P&gt;&lt;P&gt;One SAP LUW can have several databases LUW. So a set of database transactions either committed or rolled back. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The special ABAP/4 command &amp;#145;Commit work&amp;#146; marks the end of SAP LUW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ABAP/4 Transaction&lt;/P&gt;&lt;P&gt;It is made up of a set of related task combined under one transaction code. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ABAP/4 transaction functions like one complete object containing screens, menus and transaction code.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Feb 2008 07:38:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449123#M828477</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-25T07:38:49Z</dc:date>
    </item>
    <item>
      <title>Re: luw</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449124#M828478</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;luw&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The Open SQL statements INSERT, UPDATE, MODIFY, and DELETE allow you to program database changes that extend over several dialog steps. Even if you have not explicitly programmed a database commit, the implicit database commit that occurs after a screen has been processed concludes the database LUW. The following diagram shows the individual database LUWs in a typical screen sequence:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Under this procedure, you cannot roll back the database changes from previous dialog steps. It is therefore only suitable for programs in which there is no logical relationship between the individual dialog steps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, the database changes in individual dialog steps normally depend on those in other dialog steps, and must therefore all be executed or rolled back together. These dependent database changes form logical units, and can be grouped into a single database LUW using the bundling techniques listed below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A logical unit consisting of dialog steps, whose changes are written to the database in a single database LUW is called an SAP LUW. Unlike a database LUW, an SAP LUW can span several dialog steps, and be executed using a series of different work processes. If an SAP LUW contains database changes, you should either write all of them or none at all to the database. To ensure that this happens, you must include a database commit when your transaction has ended successfully, and a database rollback in case the program detects an error. However, since database changes from a database LUW cannot be reversed in a subsequent database LUW, you must make all of the database changes for the SAP LUW in a single database LUW. To maintain data integrity, you must bundle all of you database changes in the final database LUW of the SAP LUW. The following diagram illustrates this principle:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The bundling technique for database changes within an SAP LUW ensures that you can still reverse them. It also means that you can distribute a transaction across more than one work process, and even across more than one R/3 System. The possibilities for bundling database changes within an SAP LUW are listed below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The simplest form of bundling would be to process a whole application within a single dialog step. Here, the system checks the user&amp;#146;s input and updates the database without a database commit occurring within the dialog step itself. Of course, this is not suitable for complex business processes. Instead, the R/3 Basis system contains the following bundling techniques.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bundling using Function Modules for Updates&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you call a function module using the CALL FUNCTION... IN UPDATE TASK statement, the function module is flagged for execution using a special update work process. This means that you can write the Open SQL statements for the database changes in the function module instead of in your program, and call the function module at the point in the program where you would otherwise have included the statements. When you call a function module using the IN UPDATE TASK addition, it and its interface parameters are stored as a log entry in a special database table called VBLOG. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The function module is executed using an update work process when the program reaches the COMMIT WORK statement. After the COMMIT WORK statement, the dialog work process is free to receive further user input. The dialog part of the transaction finishes with the COMMIT WORK statement. The update part of the SAP LUW then begins, and this is the responsibility of the update work process. The SAP LUW is complete once the update process has committed or rolled back all of the database changes. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further information about how to create function modules for use in update, refer to Creating Function Modules for Database Updates &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;During the update, errors only occur in exceptional cases, since the system checks for all logical errors, such as incorrect entries, in the dialog phase of the SAP LUW. If a logical error occurs, the program can terminate the update using the ROLLBACK WORK statement. Then, the function modules are not called, and the log entry is deleted from table VBLOG. Errors during the update itself are usually technical, for example, memory shortage. If a technical error occurs, the update work process triggers a database rollback, and places the log entry back into VBLOG. It then sends a mail to the user whose dialog originally generated the VBLOG entry with details of the termination. These errors must be corrected by the system administrator. After this, the returned VBLOG entries can be processed again. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further information about update administration, see Update Administration&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This technique of bundling database changes in the last database LUW of the SAP LUW allows you to update the database asynchronously, reducing the response times in the dialog work process. You can, for example, decouple the update entirely from the dialog work process and use a central update work process on a remote database server. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bundling Using Subroutines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The statement PERFORM ON COMMIT calls a subroutine in the dialog work process. However, it is not executed until the system reaches the next COMMIT WORK statement. Here, as well, the ABAP statement COMMIT WORK defines the end of the SAP LUW, since all statements in a subroutine called with PERFORM ON COMMIT that make database changes are executed in the database LUW of the corresponding dialog step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The advantage of this bundling technique against CALL FUNCTION... IN UPDATE TASK is better performance, since the update data does not have to be written into an extra table. The disadvantage, however, is that you cannot pass parameters in a PERFORM... ON COMMIT statement. Data is passed using global variables and ABAP memory. There is a considerable danger of data inconsistency when you use this method to pass data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bundling Using Function Modules in Other R/3 Systems&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Function modules that you call using CALL FUNCTION... IN BACKGROUND TASK DESTINATION... are registered for background execution in another R/3 System when the program reaches the next COMMIT WORK statement (using Remote Function Call). After the COMMIT WORK, the dialog process does not wait for these function modules to be executed (asynchronous update). All of the function modules that you register in this way are executed together in a single database LUW. These updates are useful, for example, when you need to maintain identical data in more than one database.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For further details, refer to the keyword documentation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For more details of RFC processing, refer to the Remote Communications section of the Basis Services documentation. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;From a business point-of-view, an SAP logical unit of work (SAP-LUW ) consists of an SAP&lt;/P&gt;&lt;P&gt;transaction a user executes online (first part of LUW) and the corresponding update (second part of&lt;/P&gt;&lt;P&gt;LUW). In online processing, the user can proceed with the next SAP transaction after saving, usually&lt;/P&gt;&lt;P&gt;at the end of the transaction processing (online part). The user therefore starts an additional SAPLUW&lt;/P&gt;&lt;P&gt;while the update from the first SAP-LUW was running. This is asynchronous transaction&lt;/P&gt;&lt;P&gt;processing.&lt;/P&gt;&lt;P&gt;n In online processing, the user can proceed with the next SAP transaction after saving, usually at the&lt;/P&gt;&lt;P&gt;end of the transaction processing (online part). The user therefore starts an additional SAP-LUW&lt;/P&gt;&lt;P&gt;while the update from the first SAP-LUW was running. This is called asynchronous transaction&lt;/P&gt;&lt;P&gt;processing.&lt;/P&gt;&lt;P&gt;n The processing of batch input sessions, however, is synchronous. This means SAP-LUW 2 is&lt;/P&gt;&lt;P&gt;not started until the update for SAP-LUW 1 is completed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Processing mode "A" for call transaction:&lt;/P&gt;&lt;P&gt;After the first part of the SAP-LUW is completed and the changes are marked, the next SAP-LUW&lt;/P&gt;&lt;P&gt;can be started immediately. This means that external data imported using call transaction could be&lt;/P&gt;&lt;P&gt;imported partially in parallel (overlapping import), if the update takes longer than the calling of the&lt;/P&gt;&lt;P&gt;next record to be processed.&lt;/P&gt;&lt;P&gt;n We do not recommend the use of asynchronous processing with CT; if you do use it, test it&lt;/P&gt;&lt;P&gt;thoroughly beforehand.&lt;/P&gt;&lt;P&gt;SAP Notes on updating / locks:&lt;/P&gt;&lt;P&gt;&amp;amp;#159; Lock table 17267, 13907, 97760&lt;/P&gt;&lt;P&gt;&amp;amp;#159; Update / repeat update 70085&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When the parameter XCALL is selected, processing is through 'Call Transaction .. Using ..?. The&lt;/P&gt;&lt;P&gt;transactions are not stored in a batch input session, instead, processing begins immediately. If&lt;/P&gt;&lt;P&gt;processing with 'Call Transaction .. Using ..' was not successful, the cause of the error is logged, and&lt;/P&gt;&lt;P&gt;the transaction is then saved in a batch input session.&lt;/P&gt;&lt;P&gt;n You can use parameter ANZ_MODE to control the display mode (see CT method).&lt;/P&gt;&lt;P&gt;n The parameter UPDATE specifies the update mode (see CT method).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Database rollback segments are buffer areas that store the ?before image? of the database during a&lt;/P&gt;&lt;P&gt;database logical unit of work (LUW) (DB - LUW = database processing step). The ?before image? is&lt;/P&gt;&lt;P&gt;the change information needed to restore the database to a consistent state, if an error occurs during&lt;/P&gt;&lt;P&gt;this small processing step.&lt;/P&gt;&lt;P&gt;n The call of BDC_INSERT to fill the batch input session causes database changes that fill the&lt;/P&gt;&lt;P&gt;rollback segments. To restrict the growth of these segments, we recommend you trigger a database&lt;/P&gt;&lt;P&gt;commit at regular intervals (every 100 or 1000 loops). To do this, use the ABAP command&lt;/P&gt;&lt;P&gt;COMMIT WORK, which resets the rollback segments&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;do reward if helpful&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Feb 2008 07:45:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/luw/m-p/3449124#M828478</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-25T07:45:39Z</dc:date>
    </item>
  </channel>
</rss>

