CX_TRANSACTION

Class hierarchy
Description:

The equivalent entry mask fills all company transactions objects with data.

Transaction processing/booking in accounts/monitors is done via transaction description, which in turns controls the transaction manager.

The following classes are available:

Transaction Object type
simple transaction (transaction item) CX_TRANSACTION
transaction header with transaction item CX_COMPOUND_TXN
allocation transaction (bill of material, job schedules) CX_ALLOCATION_TXN
Arithmetics:

CX_TRANSACTION and CX_COMPOUND_TXN can be connected in an arithmetic operation. Addition (+) and subtraction (-) are possible options. It is not possible to connect two CX_TRANSACTIONobjects (this would cause an error), whereas two CX_COMPOUND_TXN objects (or derived ones) can be connected.

"Adding" a CX_TRANSACTION to a CX_COMPOUND_TXN or a CX_COMPOUND_TXN to a  CX_TRANSACTION, the following operation will be executed: 

When subtracting, the CX_TRANSACTION gets removed from the dependent CX_COMPOUND_TXN  transaction list and the back reference gets reset to ZERO. If the CX_TRANSACTION didn't belong to CX_COMPOUND_TXN, the back reference gets reset to ZERO.

The return value of such an addition or subtraction is always the object, that got put in the stack last - modified as described above.

For the interaction between CX_TRANSACTION and CX_COMPOUND_TXN it does not matter, in which order they appear in InstantView® code. In case of two CX_COMPOUND_TXN objects, the one that has been put in the stack fist becomes part of the second CX_COMPOUND_TXN as a dependent transaction.

Code example:
// arithmetic example
CreateTransObject(CX_TRANSACTION) -> txn
CreateTransObject(CX_COMPOUND_TXN) -> compound_txn

// txn becomes dependent transaction to compound_txn,
// in both cases
txn compound_txn +
compound_txn txn +

// interaction between two CX_COMPOUND_TXN
CreateTransObject(CX_COMPOUND_TXN) -> compound_txn2
// compound_txn becomes dependent transaction to compound_txn2
compound_txn compound_txn2 +
// compound_txn2 becomes dependent transaction to compound_txn
compound_txn2 compound_txn +    

Method List (MDI)
Function MA* Parameter Return Brief description
ConnectStateMonitor   OBJECT, STRING   connect to state monitor
FirstPredecessorByCondition   STRING, INTEGER OBJECT check predecessor chain; returns the first matching predecessor. 
FirstSuccessorByCondition   STRING, INTEGER OBJECT like FirstPredecessorByCondition just for successor.
FlattenedUniqueID   STRING, INTEGER STRING sortable UniqueID
GetProcessed   OBJECT    !!! very important !!! simply CX_TXN_MANAGER::Process(this) gets called
IsTopTransaction     INTEGER check, if transaction is the highest transaction
LevelAboveBottom     INTEGER returns level depth "bottom-up"
LevelBelowTop     INTEGER returns level depth "top down"
LogicalOrToTop   STRING OBJECT check slot content of the current transaction as well as all higher-level transations.
Monitor   STRING, INTEGER OBJECT check monitor collection; returns the first matching monitor
MonitorByCondition   STRING OBJECT returns the first monitor, that fulfills a certain condition
MonitorByUniqueID   STRING OBJECT provides the first monitor (from the collection monitors) with uniqueID=STRING
MultiplyToTop   STRING OBJECT multiply slot content up to the highest level inhalt bis zu höchsten Ebene aufmultiplizieren 
MultiplyToTopByCondition   STRING, STRING OBJECT  
PostStateByUniqueID   STRING OBJECT ??? status monitor
Predecessors   INTEGER COLLECTION returns a collection of all predecessors
PredecessorsByCondition   STRING, INTEGER COLLECTION check predecessor chain recursively with a condition
PredecessorsOfTopType   STRING, INTEGER, INTEGER COLLECTION returns all predecessors that belong to a certain class
PredecessorsTop   INTEGER COLLECTION returns a collection of all top transactions
PreviousToPostState   STRING OBJECT tests, whether the status monitor selected via uniqueID is the state monitor predecessor
RemoveStateMonitor   STRING   find state monitor uniqueID and resolve connection
SanityCheck     INTEGER object consistency check
SetStateMonitor   STRING, OBJECT   find state monitor after uniqueID and redirect to new state monitor
SmartUniqueID     STRING uniqueIDs dieser und der übergeordneten Transaktionen, etwas intelligenter formatiert als in UniqueID()
StateMonitor   STRING OBJECT find state monitor according to uniqueID (STRING) (not wrapped)
StateMonitorWrapper   STRING OBJECT find state monitor according to uniqueID
Successors   INTEGER COLLECTION returns a collection of all successors
SuccessorsByCondition   STRING, INTEGER COLLECTION check successor chain recursively with a condition
SuccessorsOfTopType   STRING, INTEGER, INTEGER COLLECTION returns all successors, that belong to a certain class
SuccessorsTop   INTEGER COLLECTION provides a collection of all top successor transactions
TopTransaction     OBJECT provides top transaction
TotalSlotValue   STRING OBJECT return slot content, if it is a CX_VALUE
Transaction   INTEGER OBJECT provides nth transaction
TriggeredStateMonitor   STRING OBJECT tries to toggle state monitor and returns the new state monitor  (not wrapped
TriggeredStateMonitorWrapper   STRING OBJECT tries to toggle state monitor and returns state monitor (wrapped)
UniqueID     STRING uniqueIDs of the current and higher-level transaction
UniqueIDIndexMaint   INTEGER, OBJECT INTEGER ?
UniqueIDIndexMaint2   INTEGER, OBJECT INTEGER ?
WorkflowRoute   STRING COLLECTION state monitor list
ClassFilter   STRING, INTEGER OBJECT this object, if it conforms to a certain class
ConditionedFilter   STRING OBJECT  
ConditionedFilter2   OBJECT OBJECT  
Deleted     INTEGER object indicated as deleted?
Description     STRING object specification
GetDomain     INTEGER object domain
GetSiblings     COLLECTION all object siblings 
GetSiblings2     COLLECTION all object siblings
GetSlotEntries     VECTOR<OBJECT> return internal information to slots
LastUpdate     OBJECT last write access date
LastUser     INTEGER user of last write access
Link   OBJECT   insert this object into valid object list
NextValidObject     OBJECT following validity object
PrePostUpdate   INTEGER, OBJECT   modification record
PreviousValidObject     OBJECT previous validity object
RestrictedValidity *     limited validity area?
SetDomain   INTEGER, INTEGER   set domain
ShortName     STRING brief description of this object
Siblings *     object with validity
SpanDateValidity *     validity range
string   INTEGER CX_STRING provides object string view
Unlink       remove this object from list of objects with validity
Unlink2       remove this object from list of objects with validity
Valid   OBJECT INTEGER check validity
ValidSince     OBJECT start of validity range
ValidToday     INTEGER valid today?
ValidUntil     OBJECT end of validity range
VerifySiblings     INTEGER check ring of exchange objects
* MA = member access function,
hihglighted in gray = inherited function

Data directory (DDI)
Data field Type Reference class I* Brief description
monitors REL_MN CX_MONITOR   monitors
transaction REL_1M CX_TRANSACTION   higher-level transaction
transactionStatusEnum ENUMCHAR     transaction type (bit pattern):
bit 0 (1): not set = created, gesetzt = registered (booked);
bit 1 (2): set = waiting;
bit 2 (4): set = started;
bit 3 (8): set = interrupted (Sperrvermerke);
bit 4 (16): set = ended (open Posten);
bit 5 (32): set = kept;
bit 6 (64) set = passed
txnManagerID SHORT     Txn manager identifier
uniqueID STRING   * defined key
validity POINTER CX_VALIDITY   object validity range
* I = indicateable data field,
highlighted in gray = inherited data field



Search in PlugSpace
Order Description
1 like CX_EXPANDABLE.
2 the tree is searched and plugged bottom-up via data field "transaction"

 

Use in AppsWH
Module Brief description
assetrep.mod assets evaluation module
carbonco.mod distributor module
cobjrept.mod cost center evaluation module
ecvatsta.mod summarizing message module
finabook.mod financial accounting booking editing module
fwdfabal.mod financial accounting Saldenvortragsmodul module
loggicid.mod modified item demand item
loggipit.mod
     loggipit.htm Arbeitsvorrat
     loggings.htm produce order items in status transactions selection module i
loggiwfl.mod
     loggipoi.htm base module provision
     loggirit.htm base module provision
     loggitap.htm technical base module release
     loggings.htm workflow transactions selection module
loggipoi.mod provisions selection module
loggings.mod
     loggirec.htm transactions base module
     loggings.htm transactions base module
loggirec.mod
     loggirec.htm goods receipt items transactions selection module
     loggings.htm goods receipt items transactions selection module
loggirit.mod provisions selection module
txnhisto.mod transaction history base module
bpihisto.mod transaction history module
bprhisto.mod history of the transaction item module
payhisto.mod payment history module
loggiapp.mod purchase order requisition to be approved selection module
loggicos.mod cost transaction selection module
loggifac.mod financial transaction selection module
loggiopa.mod financial transaction (open items) selection module
loggiocr.mod financial transaction (creditor) selection module
loggiode.mod financial transaction (debitor) selection module
loggioex.mod financial transaction (expenses) selection module
loggiprq.mod approved purchase order requisitions selection module
loggisel.mod transactions selection module 
loggisto.mod warehouse transactions selection module
loggibom.mod order items in status (create  bill of material) transactions selection module
loggidit.mod order items in status (items disposed) transactions selection module
loggidsp.mod order items in status (create bill of material) transactions selection module
loggipor.mod order items transactions selection module
loggitap.mod order items in status (release technology) transactions selection module