XML defined Layouts
Record layouts are defined using XML elements to specify the characteristics of the fields that compose the record.
This is the most complete layout definition mechanisms, as every single attribute of the field can be provided explicitely.
When defined with XML, each layout
element defines one single layout and fields are defined using the field
element.
Field
Each field
element defines a field in the layout. The following attributes configure the field:
Attribute | Type | Purpose | Default |
---|---|---|---|
name | string | Name of the field. The name must be unique in the layout. | |
type | string | Field data type. Refer to Field Data Types. | |
length | integer | Length of the field in bytes. | |
offset | integer | Offset of the field in the layout. If not defined, the field is defined as immediately following the previous one. | |
encoding | string | For char fields, defines the character encoding: ascii or ebcdic . |
If not defined, the repository default encoding is assumed |
codepage | string | For char fields, defines the codepage used for EBCDIC to ASCII conversion (when required). | If not defined, the repository default codepage is used. |
endian | string | For integer fields, define the endian style of the field: default , bin or little . |
If not defined, the layout default endianness is used. |
signed | bool | For integer, packed and zoned fields, defines whether the field is signed. | true |
Example
<filecompare name="FILECMP01" left="REPOEBCDIC" right="REPOASCII">
<log>**** SEQ FIXED comparison - NO DIFF ***</log>
<left recfmt="fixed" reclen="80">IANUS.TEST.SEQ01.EBCDIC.DAT</left>
<right recfmt="fixed" reclen="80">IANUS.TEST.SEQ01.ASCII.DAT</right>
<layouts>
<layout name="FILE01-REC" length="auto">
<field name="char01" length="8" type="char"/>
<field name="char02" length="16" type="char"/>
<field name="zoned01" length="8" type="zoned" signed="true"/>
<field name="zoned02" length="8" type="zoned" signed="false"/>
<field name="comp01" length="4" type="integer" signed="true"/>
<field name="comp02" length="4" type="integer" signed="false"/>
<field name="comp03" length="2" type="integer" signed="true"/>
<field name="comp04" length="2" type="integer" signed="false"/>
<field name="pack01" length="5" type="packed" signed="true"/>
<field name="pack02" length="5" type="packed" signed="false"/>
</layout>
</layouts>
</filecompare>