The rules below describe the SCT import logic.
A data file is imported in its entirety ONLY if the table will not be split into multiple logical CONNX tables. An exception is the ADFILE. This table will always be imported in addition to the ADFILE logical tables. The ADFILE table is for use in the CNXPREFERENCE address selection logic.
If there are CONNX tables of more than 250 fields, the table is divided into multiple tables to accommodate Microsoft Access. The first table contains the first 250 columns and is appended with the suffix "_1". Each subsequent table contains the key information and the next 1-250 fields, and is appended in ascending order "_2", "_3", and so on.
All arrays are automatically rotated unless one of the following is true:
The array is nested - meaning that the current segment is already a rotated array.
The segment contains less than 150 fields.
Redundant Redefines are removed if all of the below are true.
The field number is greater than 5 and does not contain the words "Phone," "Fax," or "Zip."
The field is longer than 13 bytes.
The redefined field is directly next to the field in question.
The redefined field is directly next to the field and the base portions of the field names are identical.
The offsets are identical.
The array offsets are identical.
Following is an example of a redundant redefine:
When the SCT Cobol FD import is executed this SG-LN-DISB-DATES-RED REDEFINES SG-LN-DISB-DATES line decribed below will not
be imported in the CONNX CDD. CONNX skips the field based on the redundant field SCT import rules. Alternatively, the SG-LN-D-DT-1,
SG-LN-D-DT-2, SG-LN-D-DT-3 and SG-LN-D-DT-4 fields are imported.
Excerpt from SCT Cobol FD SI$SOURCE:SCSGRC.LIB
07 SG-LN-DISB-DATES-RED REDEFINES SG-LN-DISB-DATES. * SGN34 (042) 09 SG-LN-D-DT-1 PIC 9(08) COMP-3. * SGN35 (047) 09 SG-LN-D-DT-2 PIC 9(08) COMP-3. * SGN36 (052) 09 SG-LN-D-DT-3 PIC 9(08) COMP-3. * SGN37 (057) 09 SG-LN-D-DT-4 PIC 9(08) COMP-3.
Field groups are removed if they are greater than 50 bytes. (The definition of a field group is a field containing multiple data elements represented as a single element or field in the Cobol FD.)
The field contains non-ASCII data (as with the Packed Decimal data type.)
The field is not one of the first five fields of the record segment.
In the following example, "03 PR-DATA PIC x(330)" line below for a length of 330 characters is a field group. The "03 PR-920-DATA REDEFINES PR-DATA"
line in the COBOL FD breaks down the PR-DATA into 48 individual fields. The fields have different data types, yet the PR-DATA
field group is defined as a string. Since the 48 fields are varying data types and the PR-DATA field is a string data type,
if PR-DATA was imported and displayed the results would be garbled data.
Excerpt from SCT Cobol FD HR$SOURCE:ECEJRC.LIB:
03 PR-DATA PIC X(330). 03 PR-920-DATA REDEFINES PR-DATA. 05 PR-GROUP. 07 PR-FSCL-YR PIC X(02). 07 PR-POS-N PIC X(06). 07 FILLER PIC X(01). 05 PR-OPEN-DATE PIC 9(08). 05 PR-EXPIR-DATE PIC 9(08). 05 PR-APPLIC-DEADLINE PIC 9(08). 05 PR-REQ-TYPE PIC X(01). 05 PR-STATUS PIC X(02). 05 PR-STATUS-DATE PIC 9(08). 05 PR-PRIOR-STATUS PIC X(02). 05 PR-PRIOR-STATUS-DATE PIC 9(08). 05 PR-ORG-CD. 07 PR-DIVISION PIC X(03). 07 PR-DEPARTMENT PIC X(05). 07 PR-UNIT PIC X(05). 05 PR-JOB-GROUP PIC X(01). 05 PR-JOB-CLASS PIC X(04). 05 PR-EEO-OCCUP-CODE PIC X(03). 05 PR-EEO-JOB-GROUP PIC X(02). 05 PR-POS-TYPE PIC X(01). 05 PR-REPL-POS-NO PIC X(06). 05 PR-POS-EX PIC X(01). 05 PR-AUTH-HIRE-DATE PIC 9(08). 05 PR-RELOC-IND PIC X(01). 05 PR-POS-FILL-DATE PIC 9(08). 05 PR-POS-VAC-DATE PIC 9(08). PR-AUTHORIZATION-CODES. 07 PR-AUTH-CODE PIC X(03) OCCURS 5 TIMES. 05 PR-RECRUITER-ID PIC X(15). 05 PR-HIRING-MGR-ID PIC X(15). 05 PR-SUCCESS-ID PIC X(15). 05 PR-COMMITTEE-IND PIC X(02). 05 PR-SHIFT-IND PIC X(01). 05 PR-SUPER-RESPONSE PIC X(01). 05 PR-TOT-ADVERT-COST PIC S9(7)V99 COMP-3. 05 PR-GEOG-AREA PIC X(05). 05 PR-FTE PIC (1)V9(5) COMP-3. 05 PR-WORK-HRS PIC X(05). 05 PR-RANK PIC X(30). 05 PR-TRACK PIC X(01). 05 PR-TENURE PIC X(01). 05 PR-ORIG-OPER-ID PIC X(06). 05 PR-LAST-OPER-ID PIC X(06). 05 PR-LAST-ACT-DATE PIC 9(08). 05 PR-COMMENT PIC X(50). 05 PR-920-USER-FILLER PIC X(20).
Redundant arrays are removed if all of the below are true.
The redundant array is directly next to the array in question.
The offsets are identical.
The base portion of the field names is identical.
Following is an example of a redundant array.
The AA-SR-INFO-FLAG line shown below is the only line imported into the CONNX CDD for the AA-SR-INFO-FLAG field. The redundant
array rule directs CONNX to skip the fields labeled AA-SR-INFO-FLAG-1 through AA-SR-INFO-FLAG-30. These fields are simply
redefines of the imported field AA-SR-INFO-FLAG. If imported along with the AA-SR-INFO-FLAG they would create redundancy and
clutter the CDD with unnecessary fields.
Excerpt from SCT COBOL FD SI$SOURCE:ACAARC.LIB:
05 AA-SR-INFO-FLAGS. 07 AA-SR-INFO-FLAG PIC X(01) OCCURS 30. 05 AA-SR-INFO-FLAGS-RED REDEFINES AA-SR-INFO-FLAGS. 07 AA-SR-INFO-FLAG-1 PIC X(01). 07 AA-SR-INFO-FLAG-2 PIC X(01). 07 AA-SR-INFO-FLAG-3 PIC X(01). 07 AA-SR-INFO-FLAG-4 PIC X(01). 07 AA-SR-INFO-FLAG-5 PIC X(01). 07 AA-SR-INFO-FLAG-6 PIC X(01). 07 AA-SR-INFO-FLAG-7 PIC X(01). 07 AA-SR-INFO-FLAG-8 PIC X(01). 07 AA-SR-INFO-FLAG-9 PIC X(01). 07 AA-SR-INFO-FLAG-10 PIC X(01). 07 AA-SR-INFO-FLAG-11 PIC X(01). 07 AA-SR-INFO-FLAG-12 PIC X(01). 07 AA-SR-INFO-FLAG-13 PIC X(01). 07 AA-SR-INFO-FLAG-14 PIC X(01). 07 AA-SR-INFO-FLAG-15 PIC X(01). 07 AA-SR-INFO-FLAG-16 PIC X(01). 07 AA-SR-INFO-FLAG-17 PIC X(01). 07 AA-SR-INFO-FLAG-18 PIC X(01). 07 AA-SR-INFO-FLAG-19 PIC X(01). 07 AA-SR-INFO-FLAG-20 PIC X(01). 07 AA-SR-INFO-FLAG-21 PIC X(01). 07 AA-SR-INFO-FLAG-22 PIC X(01). 07 AA-SR-INFO-FLAG-23 PIC X(01). 07 AA-SR-INFO-FLAG-24 PIC X(01). 07 AA-SR-INFO-FLAG-25 PIC X(01). 07 AA-SR-INFO-FLAG-26 PIC X(01). 07 AA-SR-INFO-FLAG-27 PIC X(01). 07 AA-SR-INFO-FLAG-28 PIC X(01). 07 AA-SR-INFO-FLAG-29 PIC X(01). 07 AA-SR-INFO-FLAG-30 PIC X(01).
The array to be removed is the flattened CONNX array (occur clause) if the segment is already a rotated array (nested array).
The array to be removed is the SCT explicit redefine if the segment is not a rotated array. CONNX then rotates the array, negating the need for the redundant SCT explicit array redefine.