Skip to main content

I am using an FD that has multiple record types.  They are all the same length and each has a 'WHEN' directive identifying the type of record.  When a record is displayed using Alfred (or SQL View), the first record's field mapping is used.  I believe that the documentation states that the first record (or the largest record) is defaulted for mapping the data columns.  This default does not map correctly when there is a different record type - except for "V" for some reason.  Is there a way around this?  Maybe a combination of other XFD directives?  Is there an error in how this is defined? Any suggestions would be greatly appreciated! 

FD record definitions:

*((        XFD WHEN XREF-RECORD-TYPE = "X"         ))
 01 ITEM-XREF-PART-RECORD.
      05 ITEM-XREF-PART-KEY.
           10 XREF-RECORD-TYPE         PIC X(01).
          10 XREF-NUMBER              PIC X(30).
      05 XREF-OUR-STK-ALT-KEY.
          10 XREF-OUR-STK-NO          PIC X(15).
          10 XREF-OUR-RECORD-TYPE     PIC X(01).
      05 XREF-NUMBER-ALT-KEY.
           10 XREF-ALT-STOCK-NUMBER    PIC X(30).
     05 FILLER                       PIC X(89).
     05 ITEM-XREF-USER-FILLER        PIC X(20).
*((        XFD WHEN XREF-RECORD-TYPE = "V"         ))
  01 XREF-VND-RECORD.
       05 XREF-VND-KEY.
           10 XREF-VND-RECORD-TYPE     PIC X(01).
           10 XREF-VND-NO              PIC X(10).
           10 XREF-VND-OUR-STK-NO      PIC X(15).
          10 XREF-VND-FILLER          PIC X(05).
      05 XREF-VND-OUR-STK-ALT-KEY.
          10 XREF-VND-OUR-ALT-STK-NO  PIC X(15).
          10 XREF-VND-OUR-RECORD-TYPE PIC X(01).
      05 XREF-VND-NUMBER-ALT-KEY.
          10 XREF-VND-PART-NO         PIC X(30).
      05 XREF-VND-LEAD-TIME           PIC 9(03).
      05 XREF-VND-ROUND-UNITS         PIC X(01).
      05 XREF-VND-UM                  PIC X(3).
      05 XREF-VND-FORMAT-DECIMAL      PIC 9(01).
      05 OBSOL-XREF-VND-COST-AREA.
         10 OBSOL-XREF-VND-LAST-COST       PIC S9(6)V9(5).
         10 OBSOL-XREF-VND-BURD-LAST-COST  PIC S9(6)V9(5).
     05 XREF-VND-81CONV-DONE-FLAG    PIC X(01).
     05 XREF-VND-LAST-COST           PIC S9(7)V9(5).
     05 XREF-VND-BURDEN-LAST-COST    PIC S9(7)V9(5).
     05 XREF-VND-14CONV-DONE-FLAG    PIC X(01).
      05 FILLER                       PIC X(7).
      05 XREF-VND-USER-FILLER         PIC X(20).
*((        XFD NAME=XREF-VND-TS-CREATE        ))
      05 XREF-VND-TIMESTAMP-CREATE    PIC 9(08).
*((        XFD NAME=XREF-VND-TS-DATE        ))
      05 XREF-VND-TIMESTAMP-DATE      PIC 9(08).
*((        XFD NAME=XREF-VND-TS-TIME        ))
      05 XREF-VND-TIMESTAMP-TIME      PIC 9(06).
*((        XFD WHEN XREF-RECORD-TYPE = "C"         ))
  01 XREF-CUST-RECORD.
       05 XREF-CUST-KEY.
         10 XREF-CUST-RECORD-TYPE    PIC X(01).
         10 XREF-CUST-NO             PIC X(10).
*((        XFD NAME=XREF-CUST-OR-STK-N        ))
          10 XREF-CUST-OUR-STK-NO     PIC X(15).
          10 XREF-CUST-FILLER         PIC X(05).
*((        XFD NAME=XREF-CUST-OR-STK-A        ))
       05 XREF-CUST-OUR-STK-ALT-KEY.
          10 XREF-CUST-OUR-ALT-STK-NO PIC X(15).
          10 XREF-CUST-OUR-RECORD-TYPE PIC X(01).
      05 XREF-CUST-NUMBER-ALT-KEY.
          10 XREF-CUST-PART-NO        PIC X(30).
      05 FILLER                       PIC X(89).
      05 XREF-CUST-USER-FILLER        PIC X(20).
*((        XFD WHEN XREF-RECORD-TYPE = "U"         ))
 01 XREF-UM-RECORD.
      05 XREF-UM-KEY.
          10 XREF-UM-RECORD-TYPE      PIC X(01).
          10 XREF-UM-STK-NO           PIC X(15).
          10 XREF-UM-CODE             PIC X(01).
          10 XREF-UM-FILLER           PIC X(14).
      05 XREF-UM-ALT-KEY              PIC X(16).
      05 XREF-UM                      PIC X(03).
      05 XREF-UM-CONV-FACTOR          PIC 9(6)V9(6).
      05 XREF-UM-WHOLE-STK-UNITS      PIC X(01).
      05 XREF-UM-IMPORT-ERROR-FLAG    PIC X(01).
      05 FILLER                       PIC X(92).
      05 XREF-UM-USER-FILLER          PIC X(30).
*((        XFD WHEN XREF-RECORD-TYPE = "S"         ))
 01 XREF-SUB-RECORD.
      05 XREF-SUB-KEY.
          10 XREF-SUB-RECORD-TYPE     PIC X(01).
          10 XREF-SUB-FOR-STK-NO      PIC X(15).
          10 XREF-SUB-STK-NO          PIC X(15).
      05 XREF-SUB-ALT-KEY             PIC X(16).
      05 FILLER                       PIC X(109).
      05 XREF-SUB-USER-FILLER         PIC X(30).
*((        XFD WHEN XREF-RECORD-TYPE = "R"         ))
*((        XFD NAME=XREF-RELATED-REC        ))
 01 XREF-RELATED-RECORD.
      05 XREF-RELATED-KEY.
*((        XFD NAME=XREF-RELATED-REC-T        ))
          10 XREF-RELATED-RECORD-TYPE PIC X(01).
          10 XREF-RELATED-FOR-STK-NO  PIC X(15).
          10 XREF-RELATED-STK-NO      PIC X(15).
      05 XREF-RELATED-ALT-KEY         PIC X(16).
      05 FILLER                       PIC X(94).
      05 XREF-RELATED-USER-FILLER     PIC X(30).

The results in Alfred: 

XFD:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- C:\\EXDEV\\XFD\\sxref.xfd - generated by ACUCOBOL-GT v10.5.0 on 2024/05/21 -->
<xfd:xfdfile
     xmlns:xfd="http://www.microfocus.com">
  <xfd:identification
       xfd:version="6">
    <xfd:select-name>ITEM-XREF-PART-FILE</xfd:select-name>
    <xfd:table-name>SXREF</xfd:table-name>
    <xfd:file-organization>Indexed</xfd:file-organization>
    <xfd:maximum-record-size>186</xfd:maximum-record-size>
    <xfd:minimum-record-size>171</xfd:minimum-record-size>
    <xfd:number-of-keys>3</xfd:number-of-keys>
    <xfd:sign-compatibility>0</xfd:sign-compatibility>
    <xfd:maximum-numeric-digits>18</xfd:maximum-numeric-digits>
    <xfd:period-character>.</xfd:period-character>
    <xfd:comma-character>,</xfd:comma-character>
    <xfd:alphabet>US-ASCII</xfd:alphabet>
  </xfd:identification>
  <xfd:keys>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="false">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="31"
             xfd:segment-offset="0"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="2">
        <xfd:key-column
             xfd:key-column-name="XREF-RECORD-TYPE"/>
        <xfd:key-column
             xfd:key-column-name="XREF-NUMBER"/>
      </xfd:key-columns>
    </xfd:key>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="true">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="16"
             xfd:segment-offset="31"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="2">
        <xfd:key-column
             xfd:key-column-name="XREF-OUR-STK-NO"/>
        <xfd:key-column
             xfd:key-column-name="XREF-OUR-RECORD-TYPE"/>
      </xfd:key-columns>
    </xfd:key>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="true">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="30"
             xfd:segment-offset="47"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="1">
        <xfd:key-column
             xfd:key-column-name="XREF-ALT-STOCK-NUMBER"/>
      </xfd:key-columns>
    </xfd:key>
  </xfd:keys>
  <xfd:conditions
       xfd:condition-count="6">
    <xfd:condition
         xfd:condition-number="1">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"X"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="2">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"V"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="3">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"C"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="4">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"U"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="5">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"S"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="6">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"R"</xfd:condition-value>
    </xfd:condition>
  </xfd:conditions>
  <!-- Field Section -->
  <xfd:fields
       xfd:elementary-items="24"
       xfd:elementary-items-with-occurs="24"
       xfd:total-items="74"
       xfd:total-items-with-occurs="74">
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="ITEM-XREF-PART-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="ITEM-XREF-PART-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-NUMBER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-OUR-STK-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-OUR-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-ALT-STOCK-NUMBER"/>
    <xfd:field
         xfd:field-offset="166"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="1"
         xfd:field-level="5"
         xfd:field-name="ITEM-XREF-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-VND-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="10"
         xfd:field-type="16"
         xfd:field-length="10"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-NO"/>
    <xfd:field
         xfd:field-offset="11"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-STK-NO"/>
    <xfd:field
         xfd:field-offset="26"
         xfd:field-bytes="5"
         xfd:field-type="16"
         xfd:field-length="5"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-OUR-STK-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-ALT-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-PART-NO"/>
    <xfd:field
         xfd:field-offset="77"
         xfd:field-bytes="3"
         xfd:field-type="1"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-LEAD-TIME"/>
    <xfd:field
         xfd:field-offset="80"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-ROUND-UNITS"/>
    <xfd:field
         xfd:field-offset="81"
         xfd:field-bytes="3"
         xfd:field-type="16"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-UM"/>
    <xfd:field
         xfd:field-offset="84"
         xfd:field-bytes="1"
         xfd:field-type="1"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-FORMAT-DECIMAL"/>
    <xfd:field
         xfd:field-offset="85"
         xfd:field-bytes="24"
         xfd:field-type="16"
         xfd:field-length="24"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="OBSOL-XREF-VND-COST-AREA"/>
    <xfd:field
         xfd:field-offset="85"
         xfd:field-bytes="12"
         xfd:field-type="2"
         xfd:field-length="11"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="10"
         xfd:field-name="OBSOL-XREF-VND-LAST-COST"/>
    <xfd:field
         xfd:field-offset="97"
         xfd:field-bytes="12"
         xfd:field-type="2"
         xfd:field-length="11"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="10"
         xfd:field-name="OBSOL-XREF-VND-BURD-LAST-COST"/>
    <xfd:field
         xfd:field-offset="109"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-81CONV-DONE-FLAG"/>
    <xfd:field
         xfd:field-offset="110"
         xfd:field-bytes="13"
         xfd:field-type="2"
         xfd:field-length="12"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-LAST-COST"/>
    <xfd:field
         xfd:field-offset="123"
         xfd:field-bytes="13"
         xfd:field-type="2"
         xfd:field-length="12"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-BURDEN-LAST-COST"/>
    <xfd:field
         xfd:field-offset="136"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-14CONV-DONE-FLAG"/>
    <xfd:field
         xfd:field-offset="144"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="164"
         xfd:field-bytes="8"
         xfd:field-type="1"
         xfd:field-length="8"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-CREATE"/>
    <xfd:field
         xfd:field-offset="172"
         xfd:field-bytes="8"
         xfd:field-type="1"
         xfd:field-length="8"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-DATE"/>
    <xfd:field
         xfd:field-offset="180"
         xfd:field-bytes="6"
         xfd:field-type="1"
         xfd:field-length="6"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-TIME"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-CUST-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="10"
         xfd:field-type="16"
         xfd:field-length="10"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-NO"/>
    <xfd:field
         xfd:field-offset="11"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OR-STK-N"/>
    <xfd:field
         xfd:field-offset="26"
         xfd:field-bytes="5"
         xfd:field-type="16"
         xfd:field-length="5"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-OR-STK-A"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OUR-ALT-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-PART-NO"/>
    <xfd:field
         xfd:field-offset="166"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="3"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-UM-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-CODE"/>
    <xfd:field
         xfd:field-offset="17"
         xfd:field-bytes="14"
         xfd:field-type="16"
         xfd:field-length="14"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="3"
         xfd:field-type="16"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM"/>
    <xfd:field
         xfd:field-offset="50"
         xfd:field-bytes="12"
         xfd:field-type="1"
         xfd:field-length="12"
         xfd:field-scale="-6"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-CONV-FACTOR"/>
    <xfd:field
         xfd:field-offset="62"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-WHOLE-STK-UNITS"/>
    <xfd:field
         xfd:field-offset="63"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-IMPORT-ERROR-FLAG"/>
    <xfd:field
         xfd:field-offset="156"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="4"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-SUB-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-FOR-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-STK-NO"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="156"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="5"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="171"
         xfd:field-type="16"
         xfd:field-length="171"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-RELATED-REC"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-REC-T"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-FOR-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-STK-NO"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="141"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="6"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-USER-FILLER"/>
  </xfd:fields>
</xfd:xfdfile>


#XFD

I am using an FD that has multiple record types.  They are all the same length and each has a 'WHEN' directive identifying the type of record.  When a record is displayed using Alfred (or SQL View), the first record's field mapping is used.  I believe that the documentation states that the first record (or the largest record) is defaulted for mapping the data columns.  This default does not map correctly when there is a different record type - except for "V" for some reason.  Is there a way around this?  Maybe a combination of other XFD directives?  Is there an error in how this is defined? Any suggestions would be greatly appreciated! 

FD record definitions:

*((        XFD WHEN XREF-RECORD-TYPE = "X"         ))
 01 ITEM-XREF-PART-RECORD.
      05 ITEM-XREF-PART-KEY.
           10 XREF-RECORD-TYPE         PIC X(01).
          10 XREF-NUMBER              PIC X(30).
      05 XREF-OUR-STK-ALT-KEY.
          10 XREF-OUR-STK-NO          PIC X(15).
          10 XREF-OUR-RECORD-TYPE     PIC X(01).
      05 XREF-NUMBER-ALT-KEY.
           10 XREF-ALT-STOCK-NUMBER    PIC X(30).
     05 FILLER                       PIC X(89).
     05 ITEM-XREF-USER-FILLER        PIC X(20).
*((        XFD WHEN XREF-RECORD-TYPE = "V"         ))
  01 XREF-VND-RECORD.
       05 XREF-VND-KEY.
           10 XREF-VND-RECORD-TYPE     PIC X(01).
           10 XREF-VND-NO              PIC X(10).
           10 XREF-VND-OUR-STK-NO      PIC X(15).
          10 XREF-VND-FILLER          PIC X(05).
      05 XREF-VND-OUR-STK-ALT-KEY.
          10 XREF-VND-OUR-ALT-STK-NO  PIC X(15).
          10 XREF-VND-OUR-RECORD-TYPE PIC X(01).
      05 XREF-VND-NUMBER-ALT-KEY.
          10 XREF-VND-PART-NO         PIC X(30).
      05 XREF-VND-LEAD-TIME           PIC 9(03).
      05 XREF-VND-ROUND-UNITS         PIC X(01).
      05 XREF-VND-UM                  PIC X(3).
      05 XREF-VND-FORMAT-DECIMAL      PIC 9(01).
      05 OBSOL-XREF-VND-COST-AREA.
         10 OBSOL-XREF-VND-LAST-COST       PIC S9(6)V9(5).
         10 OBSOL-XREF-VND-BURD-LAST-COST  PIC S9(6)V9(5).
     05 XREF-VND-81CONV-DONE-FLAG    PIC X(01).
     05 XREF-VND-LAST-COST           PIC S9(7)V9(5).
     05 XREF-VND-BURDEN-LAST-COST    PIC S9(7)V9(5).
     05 XREF-VND-14CONV-DONE-FLAG    PIC X(01).
      05 FILLER                       PIC X(7).
      05 XREF-VND-USER-FILLER         PIC X(20).
*((        XFD NAME=XREF-VND-TS-CREATE        ))
      05 XREF-VND-TIMESTAMP-CREATE    PIC 9(08).
*((        XFD NAME=XREF-VND-TS-DATE        ))
      05 XREF-VND-TIMESTAMP-DATE      PIC 9(08).
*((        XFD NAME=XREF-VND-TS-TIME        ))
      05 XREF-VND-TIMESTAMP-TIME      PIC 9(06).
*((        XFD WHEN XREF-RECORD-TYPE = "C"         ))
  01 XREF-CUST-RECORD.
       05 XREF-CUST-KEY.
         10 XREF-CUST-RECORD-TYPE    PIC X(01).
         10 XREF-CUST-NO             PIC X(10).
*((        XFD NAME=XREF-CUST-OR-STK-N        ))
          10 XREF-CUST-OUR-STK-NO     PIC X(15).
          10 XREF-CUST-FILLER         PIC X(05).
*((        XFD NAME=XREF-CUST-OR-STK-A        ))
       05 XREF-CUST-OUR-STK-ALT-KEY.
          10 XREF-CUST-OUR-ALT-STK-NO PIC X(15).
          10 XREF-CUST-OUR-RECORD-TYPE PIC X(01).
      05 XREF-CUST-NUMBER-ALT-KEY.
          10 XREF-CUST-PART-NO        PIC X(30).
      05 FILLER                       PIC X(89).
      05 XREF-CUST-USER-FILLER        PIC X(20).
*((        XFD WHEN XREF-RECORD-TYPE = "U"         ))
 01 XREF-UM-RECORD.
      05 XREF-UM-KEY.
          10 XREF-UM-RECORD-TYPE      PIC X(01).
          10 XREF-UM-STK-NO           PIC X(15).
          10 XREF-UM-CODE             PIC X(01).
          10 XREF-UM-FILLER           PIC X(14).
      05 XREF-UM-ALT-KEY              PIC X(16).
      05 XREF-UM                      PIC X(03).
      05 XREF-UM-CONV-FACTOR          PIC 9(6)V9(6).
      05 XREF-UM-WHOLE-STK-UNITS      PIC X(01).
      05 XREF-UM-IMPORT-ERROR-FLAG    PIC X(01).
      05 FILLER                       PIC X(92).
      05 XREF-UM-USER-FILLER          PIC X(30).
*((        XFD WHEN XREF-RECORD-TYPE = "S"         ))
 01 XREF-SUB-RECORD.
      05 XREF-SUB-KEY.
          10 XREF-SUB-RECORD-TYPE     PIC X(01).
          10 XREF-SUB-FOR-STK-NO      PIC X(15).
          10 XREF-SUB-STK-NO          PIC X(15).
      05 XREF-SUB-ALT-KEY             PIC X(16).
      05 FILLER                       PIC X(109).
      05 XREF-SUB-USER-FILLER         PIC X(30).
*((        XFD WHEN XREF-RECORD-TYPE = "R"         ))
*((        XFD NAME=XREF-RELATED-REC        ))
 01 XREF-RELATED-RECORD.
      05 XREF-RELATED-KEY.
*((        XFD NAME=XREF-RELATED-REC-T        ))
          10 XREF-RELATED-RECORD-TYPE PIC X(01).
          10 XREF-RELATED-FOR-STK-NO  PIC X(15).
          10 XREF-RELATED-STK-NO      PIC X(15).
      05 XREF-RELATED-ALT-KEY         PIC X(16).
      05 FILLER                       PIC X(94).
      05 XREF-RELATED-USER-FILLER     PIC X(30).

The results in Alfred: 

XFD:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- C:\\EXDEV\\XFD\\sxref.xfd - generated by ACUCOBOL-GT v10.5.0 on 2024/05/21 -->
<xfd:xfdfile
     xmlns:xfd="http://www.microfocus.com">
  <xfd:identification
       xfd:version="6">
    <xfd:select-name>ITEM-XREF-PART-FILE</xfd:select-name>
    <xfd:table-name>SXREF</xfd:table-name>
    <xfd:file-organization>Indexed</xfd:file-organization>
    <xfd:maximum-record-size>186</xfd:maximum-record-size>
    <xfd:minimum-record-size>171</xfd:minimum-record-size>
    <xfd:number-of-keys>3</xfd:number-of-keys>
    <xfd:sign-compatibility>0</xfd:sign-compatibility>
    <xfd:maximum-numeric-digits>18</xfd:maximum-numeric-digits>
    <xfd:period-character>.</xfd:period-character>
    <xfd:comma-character>,</xfd:comma-character>
    <xfd:alphabet>US-ASCII</xfd:alphabet>
  </xfd:identification>
  <xfd:keys>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="false">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="31"
             xfd:segment-offset="0"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="2">
        <xfd:key-column
             xfd:key-column-name="XREF-RECORD-TYPE"/>
        <xfd:key-column
             xfd:key-column-name="XREF-NUMBER"/>
      </xfd:key-columns>
    </xfd:key>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="true">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="16"
             xfd:segment-offset="31"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="2">
        <xfd:key-column
             xfd:key-column-name="XREF-OUR-STK-NO"/>
        <xfd:key-column
             xfd:key-column-name="XREF-OUR-RECORD-TYPE"/>
      </xfd:key-columns>
    </xfd:key>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="true">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="30"
             xfd:segment-offset="47"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="1">
        <xfd:key-column
             xfd:key-column-name="XREF-ALT-STOCK-NUMBER"/>
      </xfd:key-columns>
    </xfd:key>
  </xfd:keys>
  <xfd:conditions
       xfd:condition-count="6">
    <xfd:condition
         xfd:condition-number="1">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"X"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="2">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"V"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="3">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"C"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="4">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"U"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="5">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"S"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="6">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"R"</xfd:condition-value>
    </xfd:condition>
  </xfd:conditions>
  <!-- Field Section -->
  <xfd:fields
       xfd:elementary-items="24"
       xfd:elementary-items-with-occurs="24"
       xfd:total-items="74"
       xfd:total-items-with-occurs="74">
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="ITEM-XREF-PART-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="ITEM-XREF-PART-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-NUMBER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-OUR-STK-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-OUR-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-ALT-STOCK-NUMBER"/>
    <xfd:field
         xfd:field-offset="166"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="1"
         xfd:field-level="5"
         xfd:field-name="ITEM-XREF-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-VND-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="10"
         xfd:field-type="16"
         xfd:field-length="10"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-NO"/>
    <xfd:field
         xfd:field-offset="11"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-STK-NO"/>
    <xfd:field
         xfd:field-offset="26"
         xfd:field-bytes="5"
         xfd:field-type="16"
         xfd:field-length="5"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-OUR-STK-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-ALT-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-PART-NO"/>
    <xfd:field
         xfd:field-offset="77"
         xfd:field-bytes="3"
         xfd:field-type="1"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-LEAD-TIME"/>
    <xfd:field
         xfd:field-offset="80"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-ROUND-UNITS"/>
    <xfd:field
         xfd:field-offset="81"
         xfd:field-bytes="3"
         xfd:field-type="16"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-UM"/>
    <xfd:field
         xfd:field-offset="84"
         xfd:field-bytes="1"
         xfd:field-type="1"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-FORMAT-DECIMAL"/>
    <xfd:field
         xfd:field-offset="85"
         xfd:field-bytes="24"
         xfd:field-type="16"
         xfd:field-length="24"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="OBSOL-XREF-VND-COST-AREA"/>
    <xfd:field
         xfd:field-offset="85"
         xfd:field-bytes="12"
         xfd:field-type="2"
         xfd:field-length="11"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="10"
         xfd:field-name="OBSOL-XREF-VND-LAST-COST"/>
    <xfd:field
         xfd:field-offset="97"
         xfd:field-bytes="12"
         xfd:field-type="2"
         xfd:field-length="11"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="10"
         xfd:field-name="OBSOL-XREF-VND-BURD-LAST-COST"/>
    <xfd:field
         xfd:field-offset="109"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-81CONV-DONE-FLAG"/>
    <xfd:field
         xfd:field-offset="110"
         xfd:field-bytes="13"
         xfd:field-type="2"
         xfd:field-length="12"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-LAST-COST"/>
    <xfd:field
         xfd:field-offset="123"
         xfd:field-bytes="13"
         xfd:field-type="2"
         xfd:field-length="12"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-BURDEN-LAST-COST"/>
    <xfd:field
         xfd:field-offset="136"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-14CONV-DONE-FLAG"/>
    <xfd:field
         xfd:field-offset="144"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="164"
         xfd:field-bytes="8"
         xfd:field-type="1"
         xfd:field-length="8"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-CREATE"/>
    <xfd:field
         xfd:field-offset="172"
         xfd:field-bytes="8"
         xfd:field-type="1"
         xfd:field-length="8"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-DATE"/>
    <xfd:field
         xfd:field-offset="180"
         xfd:field-bytes="6"
         xfd:field-type="1"
         xfd:field-length="6"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-TIME"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-CUST-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="10"
         xfd:field-type="16"
         xfd:field-length="10"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-NO"/>
    <xfd:field
         xfd:field-offset="11"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OR-STK-N"/>
    <xfd:field
         xfd:field-offset="26"
         xfd:field-bytes="5"
         xfd:field-type="16"
         xfd:field-length="5"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-OR-STK-A"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OUR-ALT-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-PART-NO"/>
    <xfd:field
         xfd:field-offset="166"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="3"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-UM-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-CODE"/>
    <xfd:field
         xfd:field-offset="17"
         xfd:field-bytes="14"
         xfd:field-type="16"
         xfd:field-length="14"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="3"
         xfd:field-type="16"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM"/>
    <xfd:field
         xfd:field-offset="50"
         xfd:field-bytes="12"
         xfd:field-type="1"
         xfd:field-length="12"
         xfd:field-scale="-6"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-CONV-FACTOR"/>
    <xfd:field
         xfd:field-offset="62"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-WHOLE-STK-UNITS"/>
    <xfd:field
         xfd:field-offset="63"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-IMPORT-ERROR-FLAG"/>
    <xfd:field
         xfd:field-offset="156"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="4"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-SUB-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-FOR-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-STK-NO"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="156"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="5"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="171"
         xfd:field-type="16"
         xfd:field-length="171"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-RELATED-REC"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-REC-T"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-FOR-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-STK-NO"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="141"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="6"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-USER-FILLER"/>
  </xfd:fields>
</xfd:xfdfile>


#XFD

Good afternoon, Kim Giordano .

Which version of the ACUCOBOL-GT runtime are you using?

Can you test 10.5.1 Patch Update 1?
This is the very latest release and it would be great to understand if it already solves the situation you are reporting.

If this is not sufficient, please submit a Case to the Customer Support portal - https://portal.microfocus.com/

An engineer will take your situation in charge.


Good afternoon, Kim Giordano .

Which version of the ACUCOBOL-GT runtime are you using?

Can you test 10.5.1 Patch Update 1?
This is the very latest release and it would be great to understand if it already solves the situation you are reporting.

If this is not sufficient, please submit a Case to the Customer Support portal - https://portal.microfocus.com/

An engineer will take your situation in charge.

Thank you, Claudio.  I am running 10.5.1.  I will submit a case the portal.  


Good afternoon, Kim Giordano .

Which version of the ACUCOBOL-GT runtime are you using?

Can you test 10.5.1 Patch Update 1?
This is the very latest release and it would be great to understand if it already solves the situation you are reporting.

If this is not sufficient, please submit a Case to the Customer Support portal - https://portal.microfocus.com/

An engineer will take your situation in charge.

Actually, how do I ensure that Patch 1 has been installed for 10.5.1? 


Actually, how do I ensure that Patch 1 has been installed for 10.5.1? 

The output when you execute 'wrun32 -vv' should show '10.5.1 Patch Update 1' if you have 10.5.1 PU 1 installed.


I am using an FD that has multiple record types.  They are all the same length and each has a 'WHEN' directive identifying the type of record.  When a record is displayed using Alfred (or SQL View), the first record's field mapping is used.  I believe that the documentation states that the first record (or the largest record) is defaulted for mapping the data columns.  This default does not map correctly when there is a different record type - except for "V" for some reason.  Is there a way around this?  Maybe a combination of other XFD directives?  Is there an error in how this is defined? Any suggestions would be greatly appreciated! 

FD record definitions:

*((        XFD WHEN XREF-RECORD-TYPE = "X"         ))
 01 ITEM-XREF-PART-RECORD.
      05 ITEM-XREF-PART-KEY.
           10 XREF-RECORD-TYPE         PIC X(01).
          10 XREF-NUMBER              PIC X(30).
      05 XREF-OUR-STK-ALT-KEY.
          10 XREF-OUR-STK-NO          PIC X(15).
          10 XREF-OUR-RECORD-TYPE     PIC X(01).
      05 XREF-NUMBER-ALT-KEY.
           10 XREF-ALT-STOCK-NUMBER    PIC X(30).
     05 FILLER                       PIC X(89).
     05 ITEM-XREF-USER-FILLER        PIC X(20).
*((        XFD WHEN XREF-RECORD-TYPE = "V"         ))
  01 XREF-VND-RECORD.
       05 XREF-VND-KEY.
           10 XREF-VND-RECORD-TYPE     PIC X(01).
           10 XREF-VND-NO              PIC X(10).
           10 XREF-VND-OUR-STK-NO      PIC X(15).
          10 XREF-VND-FILLER          PIC X(05).
      05 XREF-VND-OUR-STK-ALT-KEY.
          10 XREF-VND-OUR-ALT-STK-NO  PIC X(15).
          10 XREF-VND-OUR-RECORD-TYPE PIC X(01).
      05 XREF-VND-NUMBER-ALT-KEY.
          10 XREF-VND-PART-NO         PIC X(30).
      05 XREF-VND-LEAD-TIME           PIC 9(03).
      05 XREF-VND-ROUND-UNITS         PIC X(01).
      05 XREF-VND-UM                  PIC X(3).
      05 XREF-VND-FORMAT-DECIMAL      PIC 9(01).
      05 OBSOL-XREF-VND-COST-AREA.
         10 OBSOL-XREF-VND-LAST-COST       PIC S9(6)V9(5).
         10 OBSOL-XREF-VND-BURD-LAST-COST  PIC S9(6)V9(5).
     05 XREF-VND-81CONV-DONE-FLAG    PIC X(01).
     05 XREF-VND-LAST-COST           PIC S9(7)V9(5).
     05 XREF-VND-BURDEN-LAST-COST    PIC S9(7)V9(5).
     05 XREF-VND-14CONV-DONE-FLAG    PIC X(01).
      05 FILLER                       PIC X(7).
      05 XREF-VND-USER-FILLER         PIC X(20).
*((        XFD NAME=XREF-VND-TS-CREATE        ))
      05 XREF-VND-TIMESTAMP-CREATE    PIC 9(08).
*((        XFD NAME=XREF-VND-TS-DATE        ))
      05 XREF-VND-TIMESTAMP-DATE      PIC 9(08).
*((        XFD NAME=XREF-VND-TS-TIME        ))
      05 XREF-VND-TIMESTAMP-TIME      PIC 9(06).
*((        XFD WHEN XREF-RECORD-TYPE = "C"         ))
  01 XREF-CUST-RECORD.
       05 XREF-CUST-KEY.
         10 XREF-CUST-RECORD-TYPE    PIC X(01).
         10 XREF-CUST-NO             PIC X(10).
*((        XFD NAME=XREF-CUST-OR-STK-N        ))
          10 XREF-CUST-OUR-STK-NO     PIC X(15).
          10 XREF-CUST-FILLER         PIC X(05).
*((        XFD NAME=XREF-CUST-OR-STK-A        ))
       05 XREF-CUST-OUR-STK-ALT-KEY.
          10 XREF-CUST-OUR-ALT-STK-NO PIC X(15).
          10 XREF-CUST-OUR-RECORD-TYPE PIC X(01).
      05 XREF-CUST-NUMBER-ALT-KEY.
          10 XREF-CUST-PART-NO        PIC X(30).
      05 FILLER                       PIC X(89).
      05 XREF-CUST-USER-FILLER        PIC X(20).
*((        XFD WHEN XREF-RECORD-TYPE = "U"         ))
 01 XREF-UM-RECORD.
      05 XREF-UM-KEY.
          10 XREF-UM-RECORD-TYPE      PIC X(01).
          10 XREF-UM-STK-NO           PIC X(15).
          10 XREF-UM-CODE             PIC X(01).
          10 XREF-UM-FILLER           PIC X(14).
      05 XREF-UM-ALT-KEY              PIC X(16).
      05 XREF-UM                      PIC X(03).
      05 XREF-UM-CONV-FACTOR          PIC 9(6)V9(6).
      05 XREF-UM-WHOLE-STK-UNITS      PIC X(01).
      05 XREF-UM-IMPORT-ERROR-FLAG    PIC X(01).
      05 FILLER                       PIC X(92).
      05 XREF-UM-USER-FILLER          PIC X(30).
*((        XFD WHEN XREF-RECORD-TYPE = "S"         ))
 01 XREF-SUB-RECORD.
      05 XREF-SUB-KEY.
          10 XREF-SUB-RECORD-TYPE     PIC X(01).
          10 XREF-SUB-FOR-STK-NO      PIC X(15).
          10 XREF-SUB-STK-NO          PIC X(15).
      05 XREF-SUB-ALT-KEY             PIC X(16).
      05 FILLER                       PIC X(109).
      05 XREF-SUB-USER-FILLER         PIC X(30).
*((        XFD WHEN XREF-RECORD-TYPE = "R"         ))
*((        XFD NAME=XREF-RELATED-REC        ))
 01 XREF-RELATED-RECORD.
      05 XREF-RELATED-KEY.
*((        XFD NAME=XREF-RELATED-REC-T        ))
          10 XREF-RELATED-RECORD-TYPE PIC X(01).
          10 XREF-RELATED-FOR-STK-NO  PIC X(15).
          10 XREF-RELATED-STK-NO      PIC X(15).
      05 XREF-RELATED-ALT-KEY         PIC X(16).
      05 FILLER                       PIC X(94).
      05 XREF-RELATED-USER-FILLER     PIC X(30).

The results in Alfred: 

XFD:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- C:\\EXDEV\\XFD\\sxref.xfd - generated by ACUCOBOL-GT v10.5.0 on 2024/05/21 -->
<xfd:xfdfile
     xmlns:xfd="http://www.microfocus.com">
  <xfd:identification
       xfd:version="6">
    <xfd:select-name>ITEM-XREF-PART-FILE</xfd:select-name>
    <xfd:table-name>SXREF</xfd:table-name>
    <xfd:file-organization>Indexed</xfd:file-organization>
    <xfd:maximum-record-size>186</xfd:maximum-record-size>
    <xfd:minimum-record-size>171</xfd:minimum-record-size>
    <xfd:number-of-keys>3</xfd:number-of-keys>
    <xfd:sign-compatibility>0</xfd:sign-compatibility>
    <xfd:maximum-numeric-digits>18</xfd:maximum-numeric-digits>
    <xfd:period-character>.</xfd:period-character>
    <xfd:comma-character>,</xfd:comma-character>
    <xfd:alphabet>US-ASCII</xfd:alphabet>
  </xfd:identification>
  <xfd:keys>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="false">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="31"
             xfd:segment-offset="0"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="2">
        <xfd:key-column
             xfd:key-column-name="XREF-RECORD-TYPE"/>
        <xfd:key-column
             xfd:key-column-name="XREF-NUMBER"/>
      </xfd:key-columns>
    </xfd:key>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="true">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="16"
             xfd:segment-offset="31"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="2">
        <xfd:key-column
             xfd:key-column-name="XREF-OUR-STK-NO"/>
        <xfd:key-column
             xfd:key-column-name="XREF-OUR-RECORD-TYPE"/>
      </xfd:key-columns>
    </xfd:key>
    <xfd:key
         xfd:segment-count="1"
         xfd:duplicates-allowed="true">
      <xfd:segments>
        <xfd:segment
             xfd:segment-size="30"
             xfd:segment-offset="47"/>
      </xfd:segments>
      <xfd:key-columns
           xfd:key-column-count="1">
        <xfd:key-column
             xfd:key-column-name="XREF-ALT-STOCK-NUMBER"/>
      </xfd:key-columns>
    </xfd:key>
  </xfd:keys>
  <xfd:conditions
       xfd:condition-count="6">
    <xfd:condition
         xfd:condition-number="1">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"X"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="2">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"V"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="3">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"C"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="4">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"U"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="5">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"S"</xfd:condition-value>
    </xfd:condition>
    <xfd:condition
         xfd:condition-number="6">
      <xfd:condition-comparison>eq</xfd:condition-comparison>
      <xfd:condition-variable>XREF-RECORD-TYPE</xfd:condition-variable>
      <xfd:condition-value>"R"</xfd:condition-value>
    </xfd:condition>
  </xfd:conditions>
  <!-- Field Section -->
  <xfd:fields
       xfd:elementary-items="24"
       xfd:elementary-items-with-occurs="24"
       xfd:total-items="74"
       xfd:total-items-with-occurs="74">
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="ITEM-XREF-PART-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="ITEM-XREF-PART-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-NUMBER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-OUR-STK-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-OUR-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="0"
         xfd:field-level="10"
         xfd:field-name="XREF-ALT-STOCK-NUMBER"/>
    <xfd:field
         xfd:field-offset="166"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="1"
         xfd:field-level="5"
         xfd:field-name="ITEM-XREF-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-VND-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="10"
         xfd:field-type="16"
         xfd:field-length="10"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-NO"/>
    <xfd:field
         xfd:field-offset="11"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-STK-NO"/>
    <xfd:field
         xfd:field-offset="26"
         xfd:field-bytes="5"
         xfd:field-type="16"
         xfd:field-length="5"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-OUR-STK-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-ALT-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-VND-PART-NO"/>
    <xfd:field
         xfd:field-offset="77"
         xfd:field-bytes="3"
         xfd:field-type="1"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-LEAD-TIME"/>
    <xfd:field
         xfd:field-offset="80"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-ROUND-UNITS"/>
    <xfd:field
         xfd:field-offset="81"
         xfd:field-bytes="3"
         xfd:field-type="16"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-UM"/>
    <xfd:field
         xfd:field-offset="84"
         xfd:field-bytes="1"
         xfd:field-type="1"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-FORMAT-DECIMAL"/>
    <xfd:field
         xfd:field-offset="85"
         xfd:field-bytes="24"
         xfd:field-type="16"
         xfd:field-length="24"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="OBSOL-XREF-VND-COST-AREA"/>
    <xfd:field
         xfd:field-offset="85"
         xfd:field-bytes="12"
         xfd:field-type="2"
         xfd:field-length="11"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="10"
         xfd:field-name="OBSOL-XREF-VND-LAST-COST"/>
    <xfd:field
         xfd:field-offset="97"
         xfd:field-bytes="12"
         xfd:field-type="2"
         xfd:field-length="11"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="10"
         xfd:field-name="OBSOL-XREF-VND-BURD-LAST-COST"/>
    <xfd:field
         xfd:field-offset="109"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-81CONV-DONE-FLAG"/>
    <xfd:field
         xfd:field-offset="110"
         xfd:field-bytes="13"
         xfd:field-type="2"
         xfd:field-length="12"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-LAST-COST"/>
    <xfd:field
         xfd:field-offset="123"
         xfd:field-bytes="13"
         xfd:field-type="2"
         xfd:field-length="12"
         xfd:field-scale="-5"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-BURDEN-LAST-COST"/>
    <xfd:field
         xfd:field-offset="136"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-14CONV-DONE-FLAG"/>
    <xfd:field
         xfd:field-offset="144"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="164"
         xfd:field-bytes="8"
         xfd:field-type="1"
         xfd:field-length="8"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-CREATE"/>
    <xfd:field
         xfd:field-offset="172"
         xfd:field-bytes="8"
         xfd:field-type="1"
         xfd:field-length="8"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-DATE"/>
    <xfd:field
         xfd:field-offset="180"
         xfd:field-bytes="6"
         xfd:field-type="1"
         xfd:field-length="6"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="2"
         xfd:field-level="5"
         xfd:field-name="XREF-VND-TS-TIME"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-CUST-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="10"
         xfd:field-type="16"
         xfd:field-length="10"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-NO"/>
    <xfd:field
         xfd:field-offset="11"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OR-STK-N"/>
    <xfd:field
         xfd:field-offset="26"
         xfd:field-bytes="5"
         xfd:field-type="16"
         xfd:field-length="5"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-OR-STK-A"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OUR-ALT-STK-NO"/>
    <xfd:field
         xfd:field-offset="46"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-OUR-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-NUMBER-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-CUST-PART-NO"/>
    <xfd:field
         xfd:field-offset="166"
         xfd:field-bytes="20"
         xfd:field-type="16"
         xfd:field-length="20"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="3"
         xfd:field-level="5"
         xfd:field-name="XREF-CUST-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-UM-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-CODE"/>
    <xfd:field
         xfd:field-offset="17"
         xfd:field-bytes="14"
         xfd:field-type="16"
         xfd:field-length="14"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-UM-FILLER"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="47"
         xfd:field-bytes="3"
         xfd:field-type="16"
         xfd:field-length="3"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM"/>
    <xfd:field
         xfd:field-offset="50"
         xfd:field-bytes="12"
         xfd:field-type="1"
         xfd:field-length="12"
         xfd:field-scale="-6"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-CONV-FACTOR"/>
    <xfd:field
         xfd:field-offset="62"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-WHOLE-STK-UNITS"/>
    <xfd:field
         xfd:field-offset="63"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-IMPORT-ERROR-FLAG"/>
    <xfd:field
         xfd:field-offset="156"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="4"
         xfd:field-level="5"
         xfd:field-name="XREF-UM-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="186"
         xfd:field-type="16"
         xfd:field-length="186"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-SUB-RECORD"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-RECORD-TYPE"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-FOR-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-SUB-STK-NO"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="156"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="5"
         xfd:field-level="5"
         xfd:field-name="XREF-SUB-USER-FILLER"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="171"
         xfd:field-type="16"
         xfd:field-length="171"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="1"
         xfd:field-name="XREF-RELATED-REC"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="31"
         xfd:field-type="16"
         xfd:field-length="31"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-KEY"/>
    <xfd:field
         xfd:field-offset="0"
         xfd:field-bytes="1"
         xfd:field-type="16"
         xfd:field-length="1"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-REC-T"/>
    <xfd:field
         xfd:field-offset="1"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-FOR-STK-NO"/>
    <xfd:field
         xfd:field-offset="16"
         xfd:field-bytes="15"
         xfd:field-type="16"
         xfd:field-length="15"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="10"
         xfd:field-name="XREF-RELATED-STK-NO"/>
    <xfd:field
         xfd:field-offset="31"
         xfd:field-bytes="16"
         xfd:field-type="16"
         xfd:field-length="16"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="999"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-ALT-KEY"/>
    <xfd:field
         xfd:field-offset="141"
         xfd:field-bytes="30"
         xfd:field-type="16"
         xfd:field-length="30"
         xfd:field-scale="0"
         xfd:field-user-flags="0"
         xfd:field-condition="6"
         xfd:field-level="5"
         xfd:field-name="XREF-RELATED-USER-FILLER"/>
  </xfd:fields>
</xfd:xfdfile>


#XFD

Key fields are special when dealing with XFDs. There can only be one definition for a key. The fact that your XFD directives are trying to redefine the key is part (perhaps all) of the problem. This is not allowed.