HELPLIB.HLB  —  SOR Routines, SOR$RELEASE_REC
    The SOR$RELEASE_REC routine is used with the record interface to
    pass one input record to SORT or MERGE.

    Format

      SOR$RELEASE_REC  desc [,context]

1  –  Returns

    OpenVMS usage:cond_value
    type:         longword (unsigned)
    access:       write only
    mechanism:    by value

    Longword condition value. Most utility routines return a
    condition value in R0. Condition values that this routine can
    return are listed under Condition Values Returned.

2  –  Arguments

 desc

    OpenVMS usage:char_string
    type:         character-coded text string
    access:       read only
    mechanism:    by descriptor
    Input record buffer. The desc argument is the address of a
    descriptor pointing to the buffer containing the record to
    be sorted. If you use the record interface, this argument is
    required.

 context

    OpenVMS usage:context
    type:         longword
    access:       modify
    mechanism:    by reference
    Value that distinguishes between multiple, concurrent SORT/MERGE
    operations. The context argument is the address of a longword
    containing the context value. When your program makes its first
    call to a SORT/MERGE routine for a particular sort or merge
    operation, the context longword must equal zero. SORT/MERGE
    then stores a value in the longword to identify the operation
    just initiated. When you make subsequent routine calls for the
    same operation, you must pass the context value supplied by
    SORT/MERGE.

3  –  Description

    Call SOR$RELEASE_REC to pass records to SORT or MERGE with the
    record interface. SOR$RELEASE_REC must be called once for each
    record to be sorted.

    Some of the following condition values are used with different
    severities, depending on whether SORT/MERGE can recover. Thus,
    if you want to check for a specific status, you should use
    LIB$MATCH_COND.

4  –  Condition Values Returned

    SS$_NORMAL         Normal successful completion.
    SOR$_BADLOGIC      Internal logic error detected.
    SOR$_BAD_LRL       Record length n greater than longest specified
                       record length.
    SOR$_BAD_SRL       Record length n too short to contain keys.
    SOR$_ENDDIAGS      Completed with diagnostics.
    SOR$_EXTEND        Unable to extend work file for needed space.
    SOR$_MISS_PARAM    The desc argument is missing.
    SOR$_NO_WRK        Work files required; cannot do sort in memory
                       as requested.
    SOR$_OPENOUT       Error opening file as output.
    SOR$_OPERFAIL      Error requesting operator service.
    SOR$_READERR       Error reading file.
    SOR$_REQ_ALT       Specify alternate name file (or nothing to try
                       again).
    SOR$_RTNERROR      Unexpected error status from user-written
                       routine.
    SOR$_SORT_ON       Sort or merge routines called in incorrect
                       order.
    SOR$_SYSERROR      System service error.
    SOR$_USE_ALT       Using alternate file name.
    SOR$_WORK_DEV      Work file name must be on random access local
                       device.
Close Help