CALL FUNCTION - IN UPDATE TASK
Short Reference
ABAP Syntax CALL FUNCTION update_function IN UPDATE TASK
[EXPORTING p1 = a1 p2 = a2 ...]
[TABLES t1 = itab1 t2 = itab2 ...].
ABAP_ADDITIONS:
1 ... EXPORTING p1 = a1 p2 = a2 ...
2 ... TABLES t1 = itab1 t2 = itab2 ...
What does it do? This statement registers the update function module
specified in update_function . update_function must be a
character-like field, which contains the name of an
update function module in
uppercase letters during execution of the statement.
An update function module is a
function module for which the property update module is
flagged in Function Builder . The
registration of an update function module is an essential part of the
update task .
The function module is not executed immediately, but is scheduled for
execution in a special work process (update work process) or, if
local updates are enabled, in the
current work process. To do this, the name of the function module and
the actual parameters passed are saved to the database tables
VBMOD and
VBDATA , which are managed by
VBHDR . If the statement is executed
during the update task, the addition IN UPDATE TASK is ignored.
If the statement SET UPDATE TASK
LOCAL is executed before registration of an update function module
in the current SAP LUW , registration takes
place in the ABAP memory rather than on
the database, and for the current work process.
The actual execution is triggered by the statement
COMMIT WORK . The formal parameters of the function module
receive the values of the actual parameters from the database table
VBLOG . A function module that is registered more than once is also
executed more than once with the associated parameter values. If, during
the execution of the current program, the statement COMMIT WORK
is not executed after the registration of a function module, then the
function module is not executed and the associated entries are deleted
from the corresponding database tables when the program ends. The
statement ROLLBACK WORK deletes all previous
registrations for the current SAP LUW .
System Fields
The sy-subrc system field is undefined after the statement
CALL FUNCTION ... IN UPDATE TASK is executed.
Latest notes: During the processing of an update function module in the
update work process, the statements SUBMIT ,
CALL DIALOG ,
CALL SCREEN , CALL TRANSACTION
COMMIT WORK , and
ROLLBACK WORK , as well as all other statements that create a
database commit , must not be
executed.
Any database commits or database rollbacks that occur within the
update cancel the update.
If an error occurs during the update , the
update work process executes a
database rollback , logs this in the corresponding database tables,
and notifies the user whose entries created the entries by SAPMail.
After the cause of the error has been resolved, the canceled entries can
be updated again.
When handling the registration entries in the database tables, note
that they are subject to the regular administration rules for a
database LUW . For example, the database
LUW is ended by a database rollback
, then all registration entries of the current database LUW are deleted.
When an update function modules is registered using CALL FUNCTION
... IN UPDATE TASK , the relevant data is exported internally to a
data cluster using EXPORT and is
imported again when executing the function module with
IMPORT . If the data types of the
exported actual parameters do not match the typing of the formal
parameter of the function module, the exceptions documented in
IMPORT may be raised.
ABAP_ADDITION_1 ... EXPORTING p1 = a1 p2 = a2 ...
ABAP_ADDITION_2 ... TABLES t1 = itab1 t2 = itab2 ...
What does it do? The additions EXPORTING and TABLES have the
same syntax and meaning as in the
parameter_list of the general function module call, except that
for EXPORTING , no reference
variables or data objects that contain reference variables can be
specified as actual parameters.
When passing internal tables with non-unique table
keys , the order of the duplicate rows in relation to these keys is
not retained.
Latest notes: The additions IMPORTING , CHANGING and
EXCEPTIONS of the general function module call may be specified, but
they are ignored during the execution. The additions for dynamic
parameter passing are not allowed.
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved