VCPDbUpdateRec
int VCPDbUpdateRec(UInt idx, char *dat);
# define VCPDbUpdateRec(a, b) VCPDbUpdateRecx(a, b, __FILE__, __LINE__)
//ENDH
/********************************************************
	Update a record. Returns 0 if O.K. or 
        error number
*********************************************************/
int VCPDbUpdateRecx(UInt idx, char *dat, char *fname, long lnr)
{
	VoidHand hnd;

	if (VCPINTOpenFlag==FALSE){
		VCPDbErrorFlag=VCPINTDBNOTOPEN;
		VCPINTDbErrorDisplay(fname, lnr);
		return(VCPINTDBNOTOPEN);
	}

	hnd=DmResizeRecord(VCPINTDbRef, idx, StrLen(dat)+1);
	if (hnd==NULL){
		VCPDbErrorFlag=VCPINTCOULDNOTRESIZE;
		VCPINTDbErrorDisplay(fname, lnr);
		return(VCPINTCOULDNOTRESIZE);
	}
	hnd=DmGetRecord(VCPINTDbRef, idx);
	DmWrite(MemHandleLock(hnd), 0, dat, StrLen(dat)+1);
	MemHandleUnlock(hnd);
	DmReleaseRecord(VCPINTDbRef, idx, TRUE);
	return(0);
}