Transact C client library
sp_selectupd
Build a result set for subsequent reading + the client application intents to write to these data in the subsequent requests of the active transaction.
_kernel_oserror *sp_selectupd(const TYPSID, const void *, TYPOID *const, const mfpos_t, const mfpos_t, TYPCID *const);
ERR_BUSY;
ERR_INVALID_PARMS;
ERR_UNKNOWN_OBJECT;
ERR_NOT_ENOUGH_MEMORY;
ERR_CONFLICT_WITH_ANOTHER;
ERR_CUR_IN_USE;
Client Library: Unknown session;
Client Library: Uninitialized client library.
{
TYPSID gsid;
TYPCID csid;
TYPOID idint;
const char *idext= "<Obey$Dir>.Datafile";
const mfpos_t zdebut = 1, zfin = 4;
_kernel_oserror *e;
/* gsid must be given a value before calling sp_selectupd */
e= sp_selectupd(gsid, idext, &idint, zdebut, zfin, &csid);
if(e) wimp_report_error(e, 0,0,0,0);
/* For subsequent calls refering to the same data file,
the app. can now use the idint parameter instead of
the idext parameter.
Eg. e= sp_selectupd(gsid, NULL, &idint, ...); */
...
}