Can I create my own logical unit of work (LUW)?

Good day, everyone!
This is an off-shoot to a Why does the NOCOMMIT parameter not work in HR_INFOTYPE_OPERATION? yesterday in this forum.
It appears that the FM I'm calling is going to do a commit, no matter what.  The only thing I can tell is that the NOCOMMIT parameter is used to do a rollback only in the event of a problem.
What I'd like to do is somehow "encapsulate" my call to this function with my own "LUW" designation so that, depending on what a user selects in a selection screen (run as test only? checkbox) I can rollback changes on my own.  Unfortunately, I don't know if this is even possible and, if so, how to do it.  I need to do something because the end users running this function would like to be able to do a "test run" of all the address transactions to see if there's any errors, data that still needs cleaned up, etc.
Any ideas?  Points awarded for all helpful answers, as always.

Hai Dave Packard
Go through the following Link
For Logical database
Logical Unit of Work (LUW)
A Logical Unit of Work (LUW or database transaction) is an inseparable sequence of database operations which must be executed either in its entirety or not at all. For the database system, it thus constitutes a unit.
LUWs help to guarantee database integrity. When an LUW has been successfully concluded, the database is once again in a correct state. If, however, an error occurs within an LUW, all database changes made since the beginning of the LUW are canceled and the database is then in the same state as before the LUW started.
An LUW begins
each time you start a transaction
when the database changes of the previous LUW have been confirmed (database commit) or
when the database changes of the previous LUW have been cancelled (database rollback)
An LUW ends
when the database changes have been confirmed (database commit) or
when the database changes have been canceled (database rollback)
Database commit and rollback
Within an LUW, database changes are not made until after a database commit. Prior to this, any database change can be canceled by a database rollback.
In the R/3 System, a database commit is triggered either automatically or by the ABAP/4 command COMMIT WORK or the appropriate Native SQL command for the database system.
Similarly, a database rollback is triggered either automatically or by the ABAP/4 command ROLLBACK WORK or the appropriate Native SQL command for the database system.
A database commit is triggered automatically by
each screen change, and especially after the ABAP/4 commands CALL SCREEN, CALL DIALOG, CALL TRANSACTION, MESSAGE or
a Remote Function Call
A database rollback is triggered automatically by
errors which occur at runtime or
the ABAP/4 command MESSAGE with the message type 'A'
After each database commit or rollback, the database locks set in the LUW are released (see Database Locking).
Thanks & regards
Sreenivasulu P
Message was edited by: Sreenivasulu Ponnadi

Similar Messages

  • Number of data records per logical unit of works (LUW)

    When initialising opening stocks by default there are 5,000 data records per LUW.  For our extract this works out to 204 LUW.  Is there any optimium setting of number of LUW or data records per LUW? Thanks

    Niten
    See the below link
    URGENT! - Data Packet Size
    Assign points if has really helped you.
    Regs
    Gopi

  • Logical unit of works

    Can some one tell me abt logical unit of work(LUW).

    Hi,
    A Logical Unit of Work (LUW or database transaction) is an inseparable sequence of database operations which must be executed either in its entirety or not at all. For the database system, it thus constitutes a unit.
    LUWs help to guarantee database integrity. When an LUW has been successfully concluded, the database is once again in a correct state. If, however, an error occurs within an LUW, all database changes made since the beginning of the LUW are canceled and the database is then in the same state as before the LUW started.
    An LUW begins
    o each time you start a transaction
    o when the database changes of the previous LUW have been confirmed (database commit) or
    o when the database changes of the previous LUW have been cancelled (database rollback)
    An LUW ends
    o when the database changes have been confirmed (database commit) or
    o when the database changes have been canceled (database rollback)
    Two types of LUW are:
    1)      DB LUW - A database LUW is the mechanism used by the database to ensure that its data is always consistent. A database LUW is an inseparable sequence of database operations that ends with a database commit. The database LUW is either fully executed by the database system or not at all. Once a database LUW has been successfully executed, the database will be in a consistent state. If an error occurs within a database LUW, all of the database changes since the beginning of the database LUW are reversed. This leaves the database in the state it had before the transaction started.
    2)      SAP LUW - 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.
    More on this .
    http://help.sap.com/saphelp_nw2004s/helpdata/en/41/7af4b9a79e11d1950f0000e82de14a/frameset.htm
    Regards,
    Raghav

  • Differences between Commit work, Logical Unit of Work and Roll back work

    Hi all,
    Can any one explain me in details what is the difference between Commit Work, Logical Unit of Work and Roll back work. Pls explain by providing some example.
    and also explain me where and when these are used and what are the importance of using these.
    Thanks in advance.
    Regards
    Ramana Prasad.T

    Hi Ramana Prasad,
    A Logical Unit of Work (LUW or database transaction) is an inseparable sequence of database operations which must be executed either in its entirety or not at all. For the database system, it thus constitutes a unit.
    LUWs help to guarantee database integrity. When an LUW has been successfully concluded, the database is once again in a correct state. If, however, an error occurs within an LUW, all database changes made since the beginning of the LUW are canceled and the database is then in the same state as before the LUW started.
    An LUW begins
    o each time you start a transaction
    o when the database changes of the previous LUW have been confirmed (database
    commit) or
    o when the database changes of the previous LUW have been cancelled (database rollback)
    An LUW ends
    o when the database changes have been confirmed (database commit) or
    o when the database changes have been canceled (database rollback)
    COMMIT WORK.
    Executes a database commit and thus closes a logical processing unit or Logical Unit of Work ( LUW ) (see also Transaction processing ). This means that
    all database changes are made irrevocable and cannot be reversed with ROLLBACK WORK and
    all database locks are released.
    COMMIT WORK also
    calls the subroutines specified by PERFORM ... ON COMMIT * executes asynchronously any update requests (see CALL FUNCTION ... IN UPDATE TASK ) specified in these subroutines or started just before,
    processes the function modules specified in CALL FUNCTION ... IN BACKGROUND TASK ,
    cancels all existing locks (see SAP locking concept ) if no update requests exist,
    closes all open database cursors (see OPEN CURSOR ) and
    resets the time slice counter to 0.
    COMMIT WORK belongs to the Open SQL command set.
    Return code value
    The SY-SUBRC is set to 0.
    ROLLBACK WORK.
    Closes a logical processing unit by reversing all database changes made since the last COMMIT .
    You use this statement if you cannot be certain that all the database changes have been executed correctly.
    The update routines are not performed.
    ROLLBACK WORK belongs to the Open SQL command set.
    Note
    If the ROLLBACK statement occurs within a SELECT loop, the processing cannot continue because the database cursor is invalid. After the ROLLBACK statement, you should therefore ensure that all SELECT processing has been explicitly terminated.
    <b>Plz. Avoid Duplicate Threads.</b>
    Hope this resolves your query.
    Reward all the helpful answers.
    Regards

  • Can we create our own loops? Basic question.

    Hi,
    Can we create our own loops in Logic Pro. I see in all the tutorials. They are either taking input from external instruments OR use existing apple loops.
    I have tried FL studio demo to create our own loops. But there is no trial version for Logic Pro. Need your inputs before I purchase it.
    Thank you.
    Anji

    Yes you can!
    It is as simple as selecting a Region (optional trimming recommended) and choose the Export command.
    A Dialog window opens up that lets you enter the metadata
    Apple had its separate "Apple Loop Utility" app (now only available in the developer package) that allowed you to create loops in a standalone app. The built-in loop capability in Logic uses part of that engine.
    Hope that helps
    Edgar Rothermich
    http://DingDingMusic.com/Manuals/
    'I may receive some form of compensation, financial or otherwise, from my recommendation or link.'

  • Can I create my own attributes in iDS?

    I know to store my photo I can use the jpegPhoto attribute, but what about if I want to store other binary objects like maybe my fingerprints, can I create my own attributes for it, and how?
    Or I can't do that?

    You can use Directory Server Console to create new attributes. After adding new attributes to your schema, you must create a new object class to contain them.
    Creating object class:
    1.Click Create on the Object Classes tab.
    2.Enter a unique name for the object class in the Name text box.
    3.Enter an object identifier for the new object class in the OID (Optional) text box.
    4.Select a parent object for the object class from the Parent drop-down menu.
    5.To add an attribute that must be present in entries that use the new object class,highlight the attribute in the Available Attributes list and then click the Add
    button to the left of the Required Attributes box.
    6.To add an attribute that may be present in entries that use the new object class,highlight the attribute in the Available Attributes list and then click the Add
    button to the left of the Allowed Attributes box.
    7.To remove an attribute that you previously added, highlight the attribute in the Required Attributes list or the Allowed Attributes list and then click the
    corresponding Remove button.You cannot remove either allowed or required attributes that are inherited
    from the parent object classes.
    8.Click to OK.
    To create a new attribute:
    1. Display the Attributes tab.
    2. Click Create.
    The Create Attribute dialog box is displayed.
    3. Enter a unique name for the attribute in the Attribute Name text box.
    4. Enter an object identifier for the attribute in the Attribute OID (Optional) text box.
    5. Select a syntax that describes the data to be held by the attribute from the Syntax drop-down menu.
    6. If you want the attribute to be multi-valued,select the Multi-Valued checkbox.The Directory Server allows more than one instance of a multi-valued attribute
    per entry.
    7.Click OK
    This is repersenting binary data.
    You can represent binary data, such as a JPEG image, in LDIF using one of the following methods:
    The standard LDIF notation, the lesser than (<) symbol. For example:
    jpegphoto: < file:/path/to/photo
    If you use this standard notation, you do not need to specify the ldapmodify -b parameter. However, you must add the following line to the beginning of your LDIF file, or your LDIF update statements:
    version:1
    For example, you could use the following ldapmodify command:
    prompt% ldapmodify -D userDN -w user_passwd
    version: 1
    dn: cn=Barney Fife,ou=People,dc=siroe,dc=comchangetype: modify
    add: userCertificate
    userCertificate;binary:< file: BarneysCert
    Using base 64 encoding. You identify base 64 encoded data by using the ::
    symbol. For example:
    jpegPhoto:: encoded_data
    In addition to binary data, other values that must be base 64-encoded include:
    Any value that begins with a semicolon (;) or a space
    Any value that contains non-ASCII data, including new lines Use the ldif command-line utility with the -b parameter to convert binary data to LDIF format:
    ldif -b attribute_name
    where attribute_name is the name of the attribute to which you are supplying the binary data. The binary data is read from standard input and the results are written to standard output. Thus, you should use redirection operators to select input and output files.
    The ldif command-line utility will take any input and format it with the correct line continuation and appropriate attribute information. The ldif utility also assesses whether the input requires base 64 encoding. For example:
    ldif -b jpegPhoto < mark.jpg > out.ldif
    This example takes a binary file containing a JPEG-formatted image and converts it into LDIF format for the attribute named jpegPhoto. The output is saved to
    out.ldif.
    The -b option specifies that the ldif utility should interpret the entire input as a single binary value. If -b is not present, each line is considered to be a separate input value.

  • Can I create my own categories in a Numbers checkbook?

    Can I create my own categories in a Numbers checkbook? If so, how?
    I would be most grateful for anyone's help with this matter.
    Respectfully,

    Hi 'sounder,
    This topic has been discussed several times since the beginning of the year. Click here for a prebuilt search that will pull up several useful discussions.
    Regards,
    Barry

  • I have the retail iCloud account. How can I delete it? And how can I create my own account?

    I have the retail iCloud account. How can I delete it? And how can I create my own account?

    Welcome to Apple Support Communities
    To delete the iCloud account, open Settings > iCloud, scroll to the bottom and select Delete account. Then, log in with the Apple ID you want to use with iCloud

  • How can i create my own component

    hello all,
    how can i create my own componet,
    say for example i want to create my own JTextField.
    give me links, or give me a examples
    thanks
    daya

    http://www.onjava.com/pub/a/onjava/2004/08/11/desktop.html

  • How can i create my own t-code

    hi ,
    how can i create my own t-code with a specified applications? may i know the t-code for create a t-code
    Edited by: amarnath popuri on Nov 24, 2008 10:53 AM

    Hi amarnath popuri
    Use t-code SE93 to create a t-code.
    Check below link.
    http://help.sap.com/erp2005_ehp_02/helpdata/EN/43/2c43b427bf601fe10000000a422035/frameset.htm
    Regards
    Ashok

  • How can I create my own toolbar like SmartBar??

    I would like to know how can I create my own toolbar that works like the default smart bar.
    I need to work with a smart bar, but i have to create it, and it has to work like the default one.
    the smart bar should be able to navigate along my different forms/canvases.
    Can someone help me??
    With regards
    Tiago Valador

    Tiagor,
    you can't change the smart bar. All you can do is to create a hrizontal toolbar canvas.
    Frank

  • How can i create my own file from the Adobe Export PDF to Word ?

    How can I create my own file from the file of the Adobe Export PDF to Wodrd?

    If there is handwritten content in your PDF then ExportPDF can't convert that to word.
    ~Deepak

  • Complex Splits - Can I Create my Own?

    Hi,
    Im just wondering if in Mainstage 2. can i creat my own complex splits with the freedom of what ever instruments i want. Like one side would be dragndrop sample kit, the middle would be an ultra beat, and the third, right side, woulc be a keyboard. is that possible?

    Ok Great. I figured out how to make as many splits i as want to. Thats good.
    However.
         Now im trying to lower the octave of just one of the instruments im using my novation sl 61 key. for example. i am just trying to make a basic split with a drum and bass. so i found the drum noise i want. say its breaks remix. or big beat remix. depending on what you have on your computer. so then im trying to use a bass noise from the c3 all the way up c1-b2 is the drum... Anyway. the noise that i hit it on the bass is still to high pitched. i need to keep the mapping the same as it is understanding the split for the keyboard, but i just need to lower the octave just the bass noise. i hope that makes sense.

  • What is luw (logical unit of work)

    pls tell me what is luw (logical unit of work)
    what r the types of luw .
    2 what ispurpose of code inspector and extended program check
    pls expalin the diffrence b/w those two
    3what are the candidate keys in db tables
    4 what is the difference b/w  occurs 1 and occurs 2 clauses
    data : begin of itab occurs 0 .
    data : itab type standard table of structure type initial size 1 with header line
    pls tell diffrence between theese two statements
    5can u pls tell what is the client in sap
    pls tell answers to questions
    pls dont give any websites addresses to see answers
    6 what is the transaction from database point of view
    7 what is the variant in alv reports
    how do we use reuse_alv_grid_variant_get fun module in alvs

    hi,
      this gives complete idea
      SAP LUW
    Since, as a rule, an application program is processed by several work processes in succession, and every change of the work process is linked with an implicit database commit , an application program is not automatically linked with a single database LUW. This applies in particular to dialog-oriented applications, in which one database LUW is assigned to one dialog step.
    To ensure the data consistency of application programs that are executed across different work processes, the application statements are not directly executed in an SAP LUW, rather, are first registered and then executed by a single work process, that is, in a single database LUW.
    Two techniques are available for bundling the change statements in a database LUW:
    Bundling via function modules (update)
    Through the statement CALL FUNCTION...IN UPDATE TASK, an update function module is registered for subsequent execution in an update work process.
    Bundling via function modules (transactional RFC)
    Through the statement CALL FUNCTION... IN BACKGROUND TASK DESTINATION, a remote- compatible function module is registered for subsequent asynchronous execution via the RFC interface (transactional RFC ).
    Bundling via subprograms
    Through the statement PERFORM ... ON COMMIT, a subprogram is registered for subsequent execution in a different work process.
    Statements for SAP LUWs
    A SAP LUW is controlled via the Open SQL statements COMMIT WORK, ROLLBACK WORK and SET UPDATE TASK LOCAL.
    Note
    A function module can be classified either as an update function module or remote-compatible, but not both at the same time. The update helps realize SAP LUWs within an SAP System, while the transactional RFC creates LUWs in distributed systems.
    COMMIT WORK
    Variants:
    1. COMMIT WORK [AND WAIT].
    2. COMMIT CONNECTION con.
    Effect
    Terminates an SAP LUW and stores the changes.
    Variant 1
    COMMIT WORK [AND WAIT].
    Effect
    The statement COMMIT WORK completes the current SAP LUW and opens a new one, storing all change requests for the currenta SAP LUW in the process. In this case, COMMIT WORK performs the following actions:
    It executes all subroutines registered using PERFORM ON COMMIT.
    It triggers an internal event in Object Services that ensures the registration of changes in persistent objects as the last update function module, as well as the subsequent initialization of persistent object attributes.
    It initiates the processing of all registered update function modules in the update work process.
    This executes all high-priority update function modules registered using CALL FUNCTION ... IN UPDATE TASK in the order of their registration and in a common database LUW. If you do not specify the addition AND WAIT, the program does not wait until the update work process has executed it (asynchronous updating). If you specify the addition AND WAIT, however, program processing after COMMIT WORK will not continue until the update work process has executed the high-priority update function modules (synchronous updating).
    If all high-priority update function modules are completed successfully, the statement executes the low-priority update function modules together in a common database LUW.
    In parallel, it also executes the individual function modules registered using CALL FUNCTION ... IN BACKGROUND TASK DESTINATION in a separate database LUW for each destination.
    It handles all SAP locks set in the current program according to the value of the formal parameter _SCOPE of the corresponding lock function modules.
    It triggers a database commit that also terminates the current database LUW.
    The completion of statement COMMIT WORK triggers the event TRANSACTION_FINISHED of the system class CL_SYSTEM_TRANSACTION_STATE, where the parameter KIND has the value of the constant CL_SYSTEM_TRANSACTION_STATE=>COMMIT_WORK.
    If the statement COMMIT WORK is executed by calling special programs, be aware of the following:
    In a program executed using batch input, or if you have called the program using the USING addition of the statement CALL TRANSACTION, COMMIT WORK terminates the batch input processing when using the corresponding settings.
    In a program called using CALL DIALOG, COMMIT WORK initiates the processing of subroutines or updated function modules registered using PERFORM ... ON COMMIT and CALL FUNCTION ... IN UPDATE TASK. Therefore, it does not complete the current SAP LUW. The SAP LUW cannot be completed until you execute the COMMIT WORK statement in the calling program.
    You cannot execute the COMMIT WORK statement during the updating procedure or during the execution of subroutines registered using PERFORM ... ON {COMMIT|ROLLBACK}.
    System fields
    sy-subrc Meaning
    0 You have specified the AND WAIT addition, and the updating of the update function modules was successful.
    4 You have specified the AND WAIT addition, and the updating of the update function modules was not successful.
    The COMMIT WORK statement always sets sy-subrc to 0 if the AND WAIT addition is not specified.
    Note
    The COMMIT WORK statement closes all database cursors . Open SQL statements that access a database cursor later ( SELECT loop and FETCH) raise an exception that cannot be handled.
    Variant 2
    COMMIT CONNECTION con.
    Note
    This statement is for internal use only.
    It cannot be used in application programs.
    Effect
    The COMMIT command is not executed on the standard database, but only on the secondary database connection specified by con. con is the name of the database connection as it was specified in the table DBCON in the column CON_NAME. The database connection con can also be specified dynamically in the form (source_text) - the source_text field contains the name of the database connection. The source_text field must be of the type C or STRING.
    On the specified secondary database connection, the database commit:
    Closes all open database cursors (OPEN CURSOR)
    Releases all database locks
    Note
    Note that the COMMIT CONNECTION DEFAULT statement unlike COMMIT WORK executes a pure database commit on the DEFAULT connection.
    Exceptions
    Non-Catchable Exceptions
    Cause: COMMIT WORK is not possible in a FORM that was called using PERFORM ... ON COMMIT.
    Runtime Error: COMMIT_IN_PERFORM_ON_COMMIT
    Cause: COMMIT WORK is not allowed in the update.
    Runtime Error: COMMIT_IN_POSTING
    ROLLBACK WORK
    Variants:
    1. ROLLBACK WORK.
    2. ROLLBACK CONNECTION con.
    Effect
    Terminates a SAP-LUW without storing the changes.
    Variant 1
    ROLLBACK WORK.
    Effect
    The statement ROLLBACK WORK closes the current SAP-LUW and opens a new one. In doing so, all change requests of the current SAP-LUW are canceled. To do this, ROLLBACK WORK carries out the following actions:
    Executes all subprograms registered with PERFORM ON ROLLBACK.
    Deletes all subprograms registered with PERFORM ON COMMIT.
    Raises an internal exception in the Object Services that makes sure that the attributes of persistent objects are initialised.
    Deletes all update function modules registered with CALL FUNCTION ...IN UPDATE TASK from the VBLOG and deletes all transactional remote Function Calls registered with CALL FUNCTION ... IN BACKGROUND TASK from ARFCSSTATE and from ARFCSDATA.
    Removal of all SAP locks set in the current program in which the formal parameter _SCOPE of the lock function module was set to the value 2.
    Triggers a database rollback, which also ends the current database-LUW.
    After completion of the statement COMMIT WORK, the event TRANSACTION_FINISHED of the system class CL_SYSTEM_TRANSACTION_STATE is raised, in which the parameter KIND has the value of the constant CL_SYSTEM_TRANSACTION_STATE=>ROLLBACK_WORK.
    Variant 2
    ROLLBACK CONNECTION con.
    Note
    This statement is for internal use only.
    It cannot be used in application programs.
    Effect
    The ROLLBACK-statement is not executed on the standard database but only on the secondary database connection, specified through con. con is the name of the database connection as it was specified in table DBCON in column CON_NAME. The database connection con can also be specified dynamically in the form (source_text), in which the field source_text contains the name of the database connection. The field source_text must be of the type C or STRING.
    Notes
    As all opened database cursors on the respective database connections are closed at ROLLBACK, the attempt to continue a SELECT-loop after a ROLLBACK, leads to a runtime error. Due to the same reason, a FETCH after a ROLLBACK to the then closed cursor, leads to a runtime error. You have to make sure that cursors that are still open, are no longer used after ROLLBACK.
    After execution of the statement ROLLBACK, SY-SUBRC is always equal to 0. It is not necessary to check if SY-SUBRC is unequal to 0 after ROLLBACK.
    ROLLBACK must not be used during update (CALL FUNCTION ... IN UPDATE TASK) or during the execution of FORMs, which were registered with PERFORM ... ON COMMIT resp. PERFORM ...ON ROLLBACK.
    The statement ROLLBACK WORK is implicitly executed if a message of the type A is treated with the addition ERROR_MESSAGE when calling a function module with CALL FUNCTION.
    Exceptions
    Non-Catchable Exceptions
    Cause: ROLLBACK WORK is not allowed within a FORM that is called with PERFORM ... ON COMMIT or PERFORM ... ON ROLLBACK.
    Runtime Error: ROLLBACK_IN_PERFORM_ON_COMMIT
    Cause: ROLLBACK WORK is not allowed within an update.
    Runtime Error: ROLLBACK_IN_POSTING
    SET UPDATE TASK LOCAL
    Syntax
    SET UPDATE TASK LOCAL.
    Effect
    This statement specifies that the high-priority update function modules - registered during the current SAP LUW using CALL FUNCTION ... IN UPDATE TASK - are registered in the ABAP memory instead of the VBLOG database table. In addition, it specifies that the current work process and not the update work process run these modules during the current database LUW, when the COMMIT WORK statement is executed. This statement has no effect on low-priority update function modules.
    At the beginning of every SAP LUW, the local update function is deactivated. If you wish to use it, you must reactivate it again before the first update function module is registered.
    System fields
    sy-subrc Meaning
    0 The local update function is activated.
    1 The local update function has not been activated, because the program has already registered at least one update function module for the normal updating procedure in the current SAP-LUW.
    Notes
    The local update function performs a synchronous update according to the COMMIT WORK statement, independent of the addition AND WAIT.
    The occurrence of a database rollback during the local update affects all previous change requests.

  • Logical unit of work

    Hi all,
    Can help me regarding LUW(logical unit of work) and its importance in r/3 ?
    Thanks and Regards
    Ravi

    Hai Ravi Charan
    There are 3 types of LUW's available in SAP
    1)Database Transaction or DBLUW
    2)SAP      Transaction or SAPLUW
    2)ABAP     Transaction or ABAPLUW
    1) DBLUW : when it is called it locks the rows , Update the rows & commit the rows issued by auto Commit
    2) SAPLUW : collection of Business reports is called SAPLUW and Issuing the Commit
    here UPDATE,INSERT,MODIFY statements are valid
    Commit work is given by Developer Side.
    3) ABAPLUW : What ever Transaction Code we are creating is called ABAPLUW  it is belongs upon Developers
    here 3 types of updates available
    1) Bundled Updates
    2) Un-Bundled Updates
      1) Bundled Updates :
        in Bundled Updates all your updates in a single unit of work present in a PERFORM 'XYZ'
    PERFORM 'XYZ' on Commit.
    here PERFORM-kept in Buffer 'XYZ' this form having all your update statements
    Priarities of execution.
    Perform xy on comit it will execute first
    perform ab on comit it will execute second
    I want to change this execution Order
    Perform xy on comit Level 2 it will execute second
    perform ab on comit Level 1 it will execute First
    because it will depends on Level command
    Using in Function Modules
    Call Function XYZ in Update Task.
    Commit work.
    In this case it stores in a buffer once encounters the commit statement this will executes from the buffer
    so it is an asynchronos method
    2) Un Bundled Updates
    these are two types
    1) Inline Updates
    2) Buffered Inline Updates
    1) Inline Updates : INSERT,UPDATE
    when update statement found in a program then it is called inline update and you should give the 'commit work'after a update statement
    inthe inline update if you not issue a commit work the system will automatically issues the commit work.
    2) Buffered Inline Updates:
    you will buffer all your inline updates and executes after Encounter the 'COMMIT WORK'
    100
       XYZ --> we can not roll back here
    200
       ABC---> if here is using commit
    Thanks & Regards
    Sreenivasulu P

Maybe you are looking for