The
transaction definition defines data to be captured on the SAP
Client. As a part
of its definition, the transaction includes a target object type,
data values to be captured, client-side data validation, and updating
its data to the back end system by the SAP
Agentry Server during
synchronization. Transactions can add new object instances, edit
an existing object, delete an object, or modify a complex table
or data table record. Each of these behaviors is exhibited by a different
transaction type, selected during the creation of the transaction.
The
following diagram and steps depict what happens when the Agentry
client must load or reload a transaction.
Data Flow - Transaction
- A Server exchange steplet defined in a Transaction calls Steplet
doSteplet() method to begin the transaction.
- Steplet's doSteplet() calls appropriate method in the xxxStepHandler
class to create, update, or delete objects in SAP.
- xxxStephandler method constructs the necessary SAPObject subtype
by passing the User to the SAPObject's constructor.
- xxxStepHandler method instantiates the necessary xxxCreateBAPI
or xxxUpdateBAPI object, passing the SAPObject to constructor.
- The xxxCreateBAPI or xxxUpdateBAPI constructor maps the SAPObject's
fields to the necessary JCO record columns.
- xxxCreateBAPI or xxxUpdateBAPI constructor retrieves JCO function
object from the repository, using the connection on User.
- xxxCreateBAPI or xxxUpdateBAPI constructor sets BAPI import
parameters IV_xxx and/or IS_xxx.
- xxxCreateBAPI or xxxUpdateBAPI constructor adds IT_xxx records
to BAPI import tables.
- xxxStepHandler method calls add(), update() or delete() method
of xxxCreateBAPI or xxxUpdateBAPI.
- xxxCreateBAPI or xxxUpdateBAPI calls the execute() method on
BAPI and checks for exceptions.
- xxxCreateBAPI or xxxUpdateBAPI reads ET_RETURN table for error
messages.
- If successful, control passes back to xxxStepHandler, Steplet,
and Agentry.