Transact C client library
sp_update
Update bytes in a data file.
_kernel_oserror *sp_update(const TYPSID, const void *, TYPOID *const, const void *, const mfpos_t, const mfpos_t);
ERR_BUSY;
ERR_INVALID_PARMS;
ERR_UNKNOWN_OBJECT;
ERR_NOT_ENOUGH_MEMORY;
ERR_INVALID_PARAMS;
ERR_CONFLICT_WITH_ANOTHER;
Client Library: Unknown session;
Client Library: Uninitialized client library.
{
mfpos_t zbegin;
TYPSID gsid;
TYPOID idint;
const char pdata[2] = { 'e', 'f' };
const char *idext= "<Obey$Dir>.Datafile";
const mfpos_t zdebut = 1, zfin = zdebut + sizeof(pdata);
_kernel_oserror *e;
/* gsid must be given a value before calling sp_update */
e= sp_update(gsid, idext, &idint, (const void *) pdata, zdebut, zfin);
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_update(gsid, NULL, &idint, ...); */
}