OpenTP1 Version 7 TP1/Client User's Guide TP1/Client/W, TP1/Client/P

[Contents][Index][Back][Next]

4.5.1 dc_trn_begin_s - Transaction startup

Organization of this subsection
(1) Form
(2) Purpose
(3) Arguments set by UAPs
(4) Return values

(1) Form

(a) _s version of the function
 
#include <dcvtrn.h>
DCLONG dc_trn_begin_s(DCCLT_ID cltid)
 
(b) Non-_s version of the function
 
#include <dcvtrn.h>
DCLONG dc_trn_begin()
 

(2) Purpose

Starts a global transaction from the CUP process that issues the dc_trn_begin_s function.

The dc_trn_begin_s function must be issued after the dc_rpc_open_s function.

One global transaction covers from issuing the dc_trn_begin_s function to a synchronous point (commit request) of the transaction. In the global transaction, the dc_trn_begin_s function cannot be duplicated (that of an SPP included). Duplication of the function causes an error return.

The SPP transaction attribute follows the atomic_update specification of the user service definition.

(3) Arguments set by UAPs

(4) Return values

Return Value Value (decimal) Meaning
DC_OK 0 Normal termination
DCCLTER_PROTO -2502 The function has been issued from an invalid context (for example, from within a transaction).
Alternatively, the function has been issued from an environment where both of the following conditions exist:
  • DCUTOKEY is specified in the client environment definition.
  • A permanent connection is being established with a RAP-processing server.
DCCLTER_NO_BUFS -2504 Insufficient memory. Alternatively, the resource became insufficient.
DCCLTER_NET_DOWN -2506 Network error
DCCLTER_TIMED_OUT -2507 Timeout occurred during the dc_trn_begin_s function processing.
DCCLTER_NO_SUCH_SERVICE_GROUP -2510 The client extended service has not started. Check whether clt_conf is specified correctly in the system service configuration definition. Alternatively, the transactional RPC executing process has not started. Check whether clt_trn_conf is specified correctly in the client service definition.
DCCLTER_OLTF_NOT_UP -2515 OpenTP1 has not been activated.
DCCLTER_NO_BUFS_AT_SERVER -2517 Memory became insufficient in a transaction process.
DCCLTER_SYSERR -2518 System error
DCCLTER_CONNFREE -2542 The permanent connection has been released.
DCCLTER_INVALID_CLTID -2544 The client ID specified for cltid differs from the one received from the dc_clt_cltin_s function.
DCCLTER_BUSY_AT_SERVER -2545 Transaction cannot occur because of an excessive load on a transaction process on the server. Reexecute the transaction, which would be successful, when receiving this return value.
DCCLTER_PORT_IN_USE -2547 The specified port number is in use, or port numbers that can be assigned automatically by the operating system are insufficient.
DCTRNER_RM -3406 An error occurred in the Resource Manager (RM). No transaction could occur.
DCTRNER_TM -3407 No transaction could occur because error was generated in the transaction service.
Reexecute the transaction, which would be successful, when receiving this return value.