Fichier de paramètres de définition du fichier

Un fichier de paramètres de définition du fichier contient le dessin d'enregistrement du fichier, l'encodage et les options de tri ayant été exportés à partir d'un stage Read from File ou Write to File. Le fichier de paramètres de définition du fichier peut être importé dans Read from File ou Write to File pour définir rapidement les options du stage au lieu d'indiquer manuellement les options.

La manière la plus simple de créer un fichier de paramètres de définition du fichier est d'indiquer les paramètres de fichier à l'aide de Read from File ou de Write to File, puis de cliquer sur le bouton Exporter pour générer le fichier de paramètres de définition du fichier.

Cependant, à titre informatif, le schéma du fichier de paramètres de définition du fichier s'affiche ci-dessous. Chaque élément dans le fichier XML possède un type et si ce type est autre qu'une chaîne ou un nombre entier, les valeurs autorisées s'affichent. Ces valeurs correspondent directement aux options contenues dans la boîte de dialogue du stage. Par exemple, l'élément FileTypeEnum correspond au champ Type d'enregistrement sous l'onglet Propriétés de fichier, et les trois valeurs suivantes apparaissent dans le schéma : linesequential, fixedwidth et delimited.

Remarque : Si vous saisissez « personnalisé » pour les champs LineSeparator, FieldSeparator ou TextQualifier, un élément personnalisé correspondant doit être inclus (par ex., « CustomLineSeparator », « CustomFieldSeparator » ou « CustomTextQualifier ») avec un nombre hexadécimal représentant le caractère ou la séquence de caractères à utiliser.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified"
           xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="FileSchema" nillable="true" type="FileSchema"/>
  <xs:complexType name="FileSchema">
    <xs:sequence>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="linesequential"
          name="Type"
          type="FileTypeEnum"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="UTF-8" name="Encoding" type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="RecordLength"
          type="xs:int"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="default"
          name="LineSeparator"
          type="LineSeparatorEnum"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="CustomLineSeparator"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="comma"
          name="FieldSeparator"
          type="FieldSeparatorEnum"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="CustomFieldSeparator"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="none"
          name="TextQualifier"
          type="TextQualifierEnum"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="CustomTextQualifier"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="false"
          name="HasHeader"
          type="xs:boolean"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="true"
          name="EnforceColumnCount"
          type="xs:boolean"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Fields"
          type="ArrayOfFieldSchema"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="FileTypeEnum">
    <xs:restriction base="xs:string">
      <xs:enumeration value="linesequential"/>
      <xs:enumeration value="fixedwidth"/>
      <xs:enumeration value="delimited"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="LineSeparatorEnum">
    <xs:restriction base="xs:string">
      <xs:enumeration value="default"/>
      <xs:enumeration value="windows"/>
      <xs:enumeration value="unix"/>
      <xs:enumeration value="mac"/>
      <xs:enumeration value="custom"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FieldSeparatorEnum">
    <xs:restriction base="xs:string">
      <xs:enumeration value="comma"/>
      <xs:enumeration value="tab"/>
      <xs:enumeration value="space"/>
      <xs:enumeration value="semicolon"/>
      <xs:enumeration value="period"/>
      <xs:enumeration value="pipe"/>
      <xs:enumeration value="custom"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TextQualifierEnum">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="single"/>
      <xs:enumeration value="double"/>
      <xs:enumeration value="custom"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ArrayOfFieldSchema">
    <xs:sequence>
      <xs:element
          minOccurs="0"
          maxOccurs="unbounded"
          name="Field"
          nillable="true"
          type="FieldSchema"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="FieldSchema">
    <xs:sequence>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Name"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="string"
          name="Type"
          type="xs:string"/>
      <xs:element
          minOccurs="1"
          maxOccurs="1"
          name="Position"
          type="xs:int"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Length"
          type="xs:int"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="false"
          name="Trim"
          type="xs:boolean"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Locale"
          type="Locale"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Pattern"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          default="none"
          name="Order"
          type="SortOrderEnum"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="Locale">
    <xs:sequence>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Country"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Language"
          type="xs:string"/>
      <xs:element
          minOccurs="0"
          maxOccurs="1"
          name="Variant"
          type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="SortOrderEnum">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="ascending"/>
      <xs:enumeration value="descending"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>