Previous Topic

Next Topic

FirstInVSet

Read the first variable-length data record in the set defined by target.

Short Name

FRSVSET()

Type

ISAM function

Declaration

COUNT FirstInVSet(COUNT keyno, pVOID target, pVOID recptr,
                  COUNT siglen, pVRLEN plen)

Description

FirstInVSet() is identical to it’s fixed-length counterpart, FirstInSet(), except that it reads the first variable-length data record in the set of data records whose keys match the target key in the first siglen bytes. If successful, this record becomes the current ISAM record for the associated data file.

plen acts as both an input and output parameter. On input, plen contains the length of the output buffer. On output, plen contains the actual data record length. If the length of the output buffer is less than the actual record length, a partial read is performed.

Read the function description for FirstInSet() for additional important information.

Return

Value

Symbolic Constant

Explanation

0

NO_ERROR

Successful retrieval of current ISAM record.

633

NPLN_ERR

plen is NULL.

634

NLEN_ERR

plen is negative on input.

See c-tree Plus Error Codes for a complete listing of valid c-tree Plus error values.

Example

COUNT        keyfil, siglen;
TEXT         target[24],recbuf[320];

printf("\nEnter set value:");
scanf("%23s",target);
printf("\nEnter the significant length:");
getnumber(&siglen);
FirstInVSet(keyfil,target,recbuf,siglen,strlen(target));
while (isam_err == NO_ERROR) {
   process_data();
   NextInVSet(keyfil,recbuf);
}

See also

FirstInSet(), NextInVSet(), PreviousInVSet(), LastInVSet(), PositionVSet(), ChangeSet(), TransformKey().