When returning control to Extract or Replicat, user exits are responsible for setting the length of the target record if and when mapping occurs. Use GET_RECORD_LENGTH or GET_RECORD_LENGTH2 to obtain this value when the mapped record is not compressed. Set the EXIT-PARAMS structure member RECORD-LENGTH to this value.
GET_RECORD_LENGTH2 is only valid for use with records less than 32767. GET_RECORD_LENGTH2 is valid for both these smaller records and the longer records defined with DDL2.
Syntax GET_RECORD_LENGTH
For C:
#include "usrdecs" short record_length; short source_or_target; short result; result = GET_RECORD_LENGTH (&record_length, source_or_target);
For TAL:
?source usrdect int result; int .ext record_length; int source_or_target; result := GET_RECORD_LENGTH(record_length, source_or_target);
For COBOL:
?CONSULT =EXTRACT (or =REPLICAT)
01 record-length PIC S9(4) COMP.
01 source-or-target PIC S9(4) COMP.
01 result PIC S9(4) COMP.
ENTER C "GET_RECORD_LENGTH" using record-length, source-or-target
giving result.
record_lengthrecord-lengthThe record length as calculated internally by Extract or Replicat.
source_or_targetsource-or-targetRepresented by either EXIT‐FN‐SOURCE‐VAL or EXIT-FN-TARGET-VAL to indicate whether to retrieve the source or target record.
resultA code indicating whether the call was successful or not.
Syntax GET_RECORD_LENGTH2
For C:
#include "usrdecs" long record_length; short source_or_target; short result; result = GET_RECORD_LENGTH2 (&record_length, source_or_target);
For TAL:
?source usrdect int result; int(32) .ext record_length; int source_or_target; result := GET_RECORD_LENGTH2(record_length, source_or_target);
For COBOL:
?CONSULT =EXTRACT (or =REPLICAT)
01 record-length PIC S9(8) COMP.
01 source-or-target PIC S9(4) COMP.
01 result PIC S9(4) COMP.
ENTER C "GET_RECORD_LENGTH2" using record-length, source-or-target
giving result.
record_lengthrecord-lengthThe record length as calculated internally by Extract or Replicat.
source_or_targetsource-or-targetRepresented by either EXIT‐FN‐SOURCE‐VAL or EXIT-FN-TARGET-VAL to indicate whether to retrieve the source or target record.
resultA code indicating whether the call was successful or not.