VMS Help
SOR Routines, SOR$SORT_MERGE
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
The SOR$SORT_MERGE routine sorts the input records.
Format
SOR$SORT_MERGE [context]
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.
context
OpenVMS usage:context
type: longword (unsigned)
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.
After you have passed either the file names or the records to
SORT, call the SOR$SORT_MERGE routine to sort the records. For
file interface on input, the input files are opened and the
records are released to the sort. For the record interface on
input, the record must have already been released (by calls
to SOR$RELEASE_REC). For file interface on output, the output
records are reformatted and directed to the output file. For the
record interface on output, SOR$RETURN_REC must be called to get
the sorted records.
Some of the return 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$_BADDTYPE Invalid or unsupported CDD data type.
SOR$_BADLENOFF Length and offset must be multiples of 8 bits.
SOR$_BADLOGIC Internal logic error detected.
SOR$_BADOCCURS Invalid OCCURS clause.
SOR$_BADOVRLAY Invalid overlay structure.
SOR$_BADPROTCL Node is an invalid CDD object.
SOR$_BAD_LRL Record length n greater than longest specified
record length.
SOR$_BAD_TYPE Invalid sort process specified.
SOR$_CDDERROR CDD error at node name.
SOR$_CLOSEIN Error closing file as input.
SOR$_CLOSEOUT Error closing file as output.
SOR$_COL_CHAR Invalid character definition.
SOR$_COL_CMPLX Collating sequence is too complex.
SOR$_COL_PAD Invalid pad character.
SOR$_COL_THREE Cannot define 3-byte collating values.
SOR$_ENDDIAGS Completed with diagnostics.
SOR$_EXTEND Unable to extend work file for needed space.
SOR$_ILLBASE Nondecimal base is invalid.
SOR$_ILLLITERL Record containing symbolic literals is
unsupported.
SOR$_ILLSCALE Nonzero scale invalid for floating-point data
item.
SOR$_INCDIGITS Number of digits is inconsistent with the type
or length of item.
SOR$_INCNODATA Include specification references no data
keyword, at line n.
SOR$_INCNOKEY Include specification references no keys
keyword, at line n.
SOR$_IND_OVR Indexed output file must already exist.
SOR$_KEYED Mismatch between SORT/MERGE keys and primary
file key.
SOR$_LRL_MISS Longest record length must be specified.
SOR$_MISLENOFF Length and offset required.
SOR$_MULTIDIM Invalid multidimensional OCCURS.
SOR$_NOTRECORD Node name is a name, not a record definition.
SOR$_NO_WRK Work files required, cannot do sort in memory
as requested.
SOR$_OPENIN Error opening file as input.
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$_SIGNCOMPQ Absolute Date and Time data type represented
in 1-second units.
SOR$_SORT_ON Sort or merge routines called in incorrect
order.
SOR$_SPCIVC Invalid collating sequence specification, at
line n.
SOR$_SPCIVD Invalid data type, at line n.
SOR$_SPCIVF Invalid field specification, at line n.
SOR$_SPCIVI Invalid include or omit specification, at line
n.
SOR$_SPCIVK Invalid key or data specification, at line n.
SOR$_SPCIVP Invalid sort process, at line n.
SOR$_SPCIVS Invalid specification, at line n.
SOR$_SPCIVX Invalid condition specification, at line n.
SOR$_SPCMIS Invalid merge specification, at line n.
SOR$_SPCOVR Overridden specification, at line n.
SOR$_SPCSIS Invalid sort specification, at line n.
SOR$_SRTIWA Insufficient space. Specification file is too
complex.
SOR$_SYSERROR System service error.
SOR$_UNSUPLEVL Unsupported core level for record name.
SOR$_USE_ALT Using alternate file name.
SOR$_WORK_DEV Work file name must be on random access local
device.
SOR$_WRITEERR Error writing file.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.