SAP ABAP Class /BOBF/CL_TRA_TRANSACTION_MGR (Transaction Manager)
Hierarchy
☛
SAP_BS_FND (Software Component) SAP Business Suite Foundation
⤷
AP-RC-BOF-RNT (Application Component) Business Object Processing Framework Runtime
⤷
/BOBF/TRANSACTION (Package) Business Object Processing Framework Transaction Management

⤷

⤷

Meta Relationship - Using
# | Relationship type | Using | Short Description | Created on |
---|---|---|---|---|
1 | Interface implementation (CLASS c. INTERFACES i_ref) | /BOBF/IF_TRA_SLAVE_TRANS_MGR | Interface of the slave transaction manager | 20090130 |
2 | Interface implementation (CLASS c. INTERFACES i_ref) | /BOBF/IF_TRA_TRANSACTION_MGR | Interface of the standalone transaction manager | 20090130 |
3 | Interface implementation (CLASS c. INTERFACES i_ref) | /BOBF/IF_TRA_TRANS_MGR_COMPL | Collective interface of the transaction manager | 20090223 |
Properties
Class | /BOBF/CL_TRA_TRANSACTION_MGR | |
Short Description | Transaction Manager | |
Super Class | ||
Instantiability of a Class | 2 | Public |
Final |
General Data
Message Class | ||
Program status | ||
Category | 0 | |
Package | /BOBF/TRANSACTION | Business Object Processing Framework Transaction Management |
Created | 20090129 | SAP |
Last change | 20130531 | SAP |
Shared Memory-enabled | ||
Fixed point arithmetic | ||
Unicode checks active |
Forward declarations
# | Type group / Object type | Type | Type Description |
---|---|---|---|
1 | ![]() |
Forward declaration class (CLASS c DEFINITION DEFERRED) | Forward declaration class (CLASS c DEFINITION DEFERRED) |
2 | ![]() |
Forward declaration interface (INTERFACE i DEFINITION DEF... | Forward declaration interface (INTERFACE i DEFINITION DEF... |
3 | ![]() |
Type group use (TYPE-POOLS tp) | Type group use (TYPE-POOLS tp) |
Interfaces
# | Interface | Abstract | Final | Description | Created on |
---|---|---|---|---|---|
1 | /BOBF/IF_TRA_SLAVE_TRANS_MGR | Interface of the slave transaction manager | 20090130 | ||
2 | /BOBF/IF_TRA_TRANSACTION_MGR | Interface of the standalone transaction manager | 20090130 | ||
3 | /BOBF/IF_TRA_TRANS_MGR_COMPL | Collective interface of the transaction manager | 20090223 |
Friends
# | Friend | Modeled only | Created on | Description |
---|---|---|---|---|
1 | /BOBF/CL_FRW | 20130120 | Framework Main Class | |
2 | /BOBF/CL_TOOL_TEST_MANAGER | 20130215 | Test Manager: TM, SM, ... double injection | |
3 | /BOBF/CL_TRA_SERVICE_MGR | 20090224 | Service Manager |
Attributes
# | Attribute | Level | Visibility | Read only | Typing | Associated Type | Initial Value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
Constant | Private | Type reference (TYPE) | SEOCLSNAME | '/BOBF/IF_TRA_PLUGIN_SERV_MGR' | Service Manager Plugin Interface | 20100714 | |
2 | ![]() |
Constant | Private | Type reference (TYPE) | SEOCLSNAME | '/BOBF/IF_TRA_PLUGIN_SM_TRANS' | Service Manager Transactional Plugins | 20100714 | |
3 | ![]() |
Constant | Private | Type reference (TYPE) | SEOCLSNAME | '/BOBF/IF_TRA_PLUGIN' | Transaction Manager Plugin Interface | 20100714 | |
4 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 4 | Transaction state | 20090202 | |
5 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 3 | Transaction state | 20090202 | |
6 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 8 | Transaction state | 20090202 | |
7 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 2 | Transaction state | 20090202 | |
8 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 7 | Transaction state | 20090202 | |
9 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 6 | Transaction state | 20090202 | |
10 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 1 | Transaction state | 20090202 | |
11 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 9 | Transaction state | 20090204 | |
12 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 0 | Transaction state | 20090202 | |
13 | ![]() |
Constant | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | 5 | Transaction state | 20090202 | |
14 | ![]() |
Static Attribute | Private | Type reference (TYPE) | BOOLE_D | Indicates if a fatal exception has been raised | 20100304 | ||
15 | ![]() |
Static Attribute | Public | Type reference (TYPE) | BOOLE_D | Indicates if transaction is saved with asynchronous save & c | 20121008 | ||
16 | ![]() |
Instance attribute | Private | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for Transaction Change Objects | 20090226 | ||
17 | ![]() |
Instance attribute | Private | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for transaction change objects | 20120426 | ||
18 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/CL_BUF_SIMPLE=>TT_INSTANCE | 20121119 | |||
19 | ![]() |
Instance attribute | Private | Type reference (TYPE) | TT_CALLSTACK | Callstack | 20090130 | ||
20 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/T_FRW_KEY2 | Key table | 20090225 | ||
21 | ![]() |
Instance attribute | Private | Type reference (TYPE) | TT_SERVICE_MANAGER_REGISTER | Register containing all service manager instances | 20090223 | ||
22 | ![]() |
Instance attribute | Private | Attribute reference (LIKE) | 20100714 | ||||
23 | ![]() |
Instance attribute | Private | Attribute reference (LIKE) | 20100714 | ||||
24 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/T_CONFRO_SUBSCRIPTION | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20090224 | ||
25 | ![]() |
Instance attribute | Protected | Type reference (TYPE) | /BOBF/IF_TRA_TRANS_MGR_COMPL=>TT_PLUGIN | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20100714 | ||
26 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/TRA_CALLSTACK_STATE | /BOBF/IF_TRA_C=>GC_STATE_EMPTY | Current callstack state | 20090202 | |
27 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/CONF_CLEANUP_MODE | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20130120 | ||
28 | ![]() |
Instance attribute | Private | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20130120 | ||
29 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/CONF_ENQUEUE_SCOPE | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20130120 | ||
30 | ![]() |
Instance attribute | Private | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20130120 | ||
31 | ![]() |
Instance attribute | Private | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | GC_STATE_INTERACTION | Current transaction state | 20090202 |
Methods
# | Method | Level | Visibility | Method type | Description | Created on |
---|---|---|---|---|---|---|
1 | ![]() |
Instance method | Private | Method | Adjust numbers from number range intervals | 20090129 |
2 | ![]() |
Instance method | Private | Method | After Failed Save attempt | 20090129 |
3 | ![]() |
Instance method | Private | Method | After Successful Save attempt | 20090129 |
4 | ![]() |
Instance method | Private | Method | Check wether affected Objects can be saved | 20090129 |
5 | ![]() |
Instance method | Private | Method | Cleanup the current trans. at the end of the trans. phase | 20090303 |
6 | ![]() |
Instance method | Public | Constructor | CONSTRUCTOR | 20090131 |
7 | ![]() |
Instance method | Private | Method | Rollback the changes of the current Transaction | 20090129 |
8 | ![]() |
Instance method | Private | Method | Save Changes of the current Transaction | 20090129 |
9 | ![]() |
Instance method | Private | Method | Prepare Objects for Saving | 20090129 |
10 | ![]() |
Instance method | Private | Method | Get the instance of the shared CL_CONF_TRANSACTION | 20090226 |
11 | ![]() |
Instance method | Private | Method | Returns the cleanup mode of the transaction | 20130120 |
12 | ![]() |
Instance method | Private | Method | Returns the enqueue mode of the transaction | 20130120 |
13 | ![]() |
Instance method | Private | Method | On number adjusted | 20090129 |
14 | ![]() |
Instance method | Private | Method | Trigger cross business object events | 20090202 |
15 | ![]() |
Instance method | Private | Method | Terminate with application error | 20090202 |
16 | ![]() |
Instance method | Private | Method | Terminate with configuration error | 20090202 |
17 | ![]() |
Instance method | Private | Method | Check restrictions and switch the callstack state | 20090202 |
18 | ![]() |
Instance method | Private | Method | Check restrictions and switch the transaction state | 20090202 |
Events
Class /BOBF/CL_TRA_TRANSACTION_MGR has no event.
Types
# | Type | Visibility | Typing | Associated Type | Description | Created on | Type Source |
---|---|---|---|---|---|---|---|
1 | TT_CALLSTACK | Private | See coding | Describes a callstack | 20090130 | tt_callstack TYPE STANDARD TABLE OF ty_callstack_entry
|
|
2 | TT_PLUGIN | Private | Attribute reference (LIKE) | 20090209 |
|
||
3 | TT_SERVICE_MANAGER_REGISTER | Private | See coding | Describes a set of service manager instances | 20090130 | tt_service_manager_register TYPE SORTED TABLE OF ty_service_manager_register WITH UNIQUE KEY bo_key
|
|
4 | TY_CALLSTACK_ENTRY | Private | See coding | Describes a callstack entry | 20090130 | BEGIN OF ty_callstack_entry,
bo_key TYPE /bobf/obm_bo_key,
call TYPE /bobf/tra_callstack_state,
change TYPE REF TO /bobf/if_tra_change,
message TYPE REF TO /bobf/if_frw_message,
END OF ty_callstack_entry
|
|
5 | TY_PLUGIN | Private | Attribute reference (LIKE) | 20090209 |
|
||
6 | TY_SERVICE_MANAGER_REGISTER | Private | See coding | Describes a service manager instance | 20090130 | BEGIN OF ty_service_manager_register,
bo_key TYPE /bobf/obm_bo_key,
service_manager TYPE REF TO /bobf/if_tra_serv_mgr_transact,
is_finalized TYPE boole_d,
is_changed TYPE boole_d,
END OF ty_service_manager_register
|
Method Signatures
Method ADJUST_NUMBERS Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for Transaction Change Objects | 20090130 | ||
2 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 |
Method ADJUST_NUMBERS on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method AFTER_FAILED_SAVE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for Transaction Change Objects | 20090130 | ||
2 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 |
Method AFTER_FAILED_SAVE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method AFTER_SUCCESSFUL_SAVE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for Transaction Change Objects | 20090130 | ||
2 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 |
Method AFTER_SUCCESSFUL_SAVE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method CHECK_BEFORE_SAVE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 | ||
2 | ![]() |
ET_REJECTING_BO_KEY | Call by reference | Type reference (TYPE) | /BOBF/T_FRW_KEY2 | Key table | 20090226 | ||
3 | ![]() |
EV_REJECTED | Call by reference | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20090130 |
Method CHECK_BEFORE_SAVE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method CLEAR_TRANSACTION Signature
Method CLEAR_TRANSACTION on class /BOBF/CL_TRA_TRANSACTION_MGR has no parameter.
Method CLEAR_TRANSACTION on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method CONSTRUCTOR Signature
Method CONSTRUCTOR on class /BOBF/CL_TRA_TRANSACTION_MGR has no parameter.
Method CONSTRUCTOR on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method DO_CLEANUP Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 | ||
2 | ![]() |
IV_CLEANUP_MODE | Call by reference | Type reference (TYPE) | /BOBF/CONF_CLEANUP_MODE | Transaction Behavior During Save (Transaction Mode) | 20090224 | ||
3 | ![]() |
IV_EXECUTE_ROLLBACK_WORK | Call by reference | Type reference (TYPE) | BOOLE_D | ABAP_TRUE | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20111104 |
Method DO_CLEANUP on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method DO_SAVE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 | ||
2 | ![]() |
ET_REJECTING_BO_KEY | Call by reference | Type reference (TYPE) | /BOBF/T_FRW_KEY2 | Key table | 20090226 | ||
3 | ![]() |
EV_REJECTED | Call by reference | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20090130 | ||
4 | ![]() |
IV_TRANSACTION_PATTERN | Call by reference | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_PATTERN | Data element for a transaction pattern | 20130206 |
Method DO_SAVE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method FINALIZE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for Transaction Change Objects | 20090130 | ||
2 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 | ||
3 | ![]() |
ET_REJECTING_BO_KEY | Call by reference | Type reference (TYPE) | /BOBF/T_FRW_KEY2 | Key table | 20090226 | ||
4 | ![]() |
EV_REJECTED | Call by reference | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20090130 |
Method FINALIZE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method GET_SHARED_TRANSACTION Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_CONF_TRANSACTION_SH | Value transfer | Object reference (TYPE REF TO) | /BOBF/CL_CONF_TRANSACTION | Read access for transactional configuration | 20090226 |
Method GET_SHARED_TRANSACTION on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method GET_TRANSACTION_CLEANUP_MODE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EV_CLEANUP_MODE | Call by reference | Type reference (TYPE) | /BOBF/CONF_CLEANUP_MODE | Transaction Behavior During Save (Transaction Mode) | 20130120 | ||
2 | ![]() |
EV_CLEANUP_MODE_IS_SET | Call by reference | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20130120 |
Method GET_TRANSACTION_CLEANUP_MODE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method GET_TRANSACTION_ENQUEUE_SCOPE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EV_ENQUEUE_SCOPE | Call by reference | Type reference (TYPE) | /BOBF/CONF_ENQUEUE_SCOPE | Lock Behavior | 20130120 | ||
2 | ![]() |
EV_ENQUEUE_SCOPE_IS_SET | Call by reference | Type reference (TYPE) | BOOLE_D | Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') | 20130120 |
Method GET_TRANSACTION_ENQUEUE_SCOPE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method ON_NUMBERS_ADJUSTED Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for Transaction Change Objects | 20090130 | ||
2 | ![]() |
EO_MESSAGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_MESSAGE | Interface for Transaction Message Objects | 20090130 | ||
3 | ![]() |
IO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_TRA_CHANGE | Interface for transaction change objects | 20090401 |
Method ON_NUMBERS_ADJUSTED on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method PROCESS_EVENTS Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
IO_CHANGE | Call by reference | Object reference (TYPE REF TO) | /BOBF/IF_FRW_CHANGE | Interface of Change Object | 20090224 | ||
2 | ![]() |
IV_PUBLISHING_BO_KEY | Call by reference | Type reference (TYPE) | /BOBF/OBM_BO_KEY | Business Object | 20090225 |
Method PROCESS_EVENTS on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method SET_APPLICATION_ERROR Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
IO_EXCEPTION | Call by reference | Object reference (TYPE REF TO) | CX_ROOT | Abstract Superclass for All Global Exceptions | 20090202 | ||
2 | ![]() |
IV_APPLICATION_INFORMATION | Call by reference | Type reference (TYPE) | STRING | 20121008 |
Method SET_APPLICATION_ERROR on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method SET_CONFIGURATION_ERROR Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
IO_EXCEPTION | Call by reference | Object reference (TYPE REF TO) | CX_ROOT | Abstract Superclass for All Global Exceptions | 20090202 |
Method SET_CONFIGURATION_ERROR on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method SWITCH_CALLSTACK_STATE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
IV_NEW_CALLSTACK_STATE | Call by reference | Type reference (TYPE) | /BOBF/TRA_CALLSTACK_STATE | Data element for callstack states | 20090202 |
Method SWITCH_CALLSTACK_STATE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
Method SWITCH_TRANSACTION_STATE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
IV_NEW_TRANSACTION_STATE | Call by reference | Type reference (TYPE) | /BOBF/TRA_TRANSACTION_STATE | Data element for transaction state | 20090202 |
Method SWITCH_TRANSACTION_STATE on class /BOBF/CL_TRA_TRANSACTION_MGR has no exception.
History
Last changed by/on | SAP | 20130531 |
SAP Release Created in | 702 |