固定幅形式

MIME タイプ: application/flatfile

ID: flatfile

固定幅の種別は技術的にはフラットファイル形式の種別とみなされますが、このオプションを選択すると、Transform コンポーネントでは、この形式のニーズに合わせて適切に調整された設定が提供されます。

DataWeave の固定幅は最大 15 MB のファイルをサポートし、メモリ要件は約 40 対 1 です。たとえば、1 MB のファイルは処理に最大 40 MB のメモリを必要とするため、大きい固定幅ファイルに対する TPS のニーズと組み合わせてこのメモリ要件を考慮することが重要です。これは正確な数値ではありません。この値は、マッピング命令の複雑さによって異なる可能性があります。

Configuration のプロパティ

DataWeave では、この形式の以下の設定プロパティがサポートされています。

Reader のプロパティ

DataWeave は、この形式で入力データを読み取る指示を提供するプロパティを受け入れます。

パラメーター デフォルト 説明

allowLenientWithBinaryNotEndElement

Boolean

false

スキーマに型が Binary (バイナリ) または Packed (パック) の要素が含まれていると、最後の要素の形式種別に関係なく、​lenient​ オプションで短いレコードが許可されません。このプロパティを ​true​ に設定すると、検証はレコードが Binary (バイナリ) または Packed (パック) の型で終了するケースのみに適用されます。

enforceRequires

Boolean

false

必須値がない場合にエラーになります。 有効な値は、​true​ または ​false​ です。

missingValues

String

コピーブックスキーマの場合は ​nulls​、それ以外の場合は ​spaces

欠落値を表すために使用される文字を入力します。デフォルト以外の設定を有効化するには、​useMissCharAsDefaultForFill​ プロパティを ​true​ に設定し、​missingValues​ に次のいずれかの値を使用します。

  • none​: すべてのデータを実際の値として処理する

  • spaces​: スペースのみで構成される項目を欠落値として解釈する

  • zeroes​: 「0」文字のみで構成される数値項目とスペースのみで構成される文字項目を欠落値として解釈する

  • nulls​: 0 バイトのみで構成される項目を欠落値として解釈する

notTruncateDependingOnSubjectNotPresent

Boolean

false

DEPENDING ON の対象が存在しない場合にグループ全体を入力します。 2021 年 8 月リリースの Mule 4.3.0-20210622 の DataWeave 2.3 で導入されました。

recordParsing

String

strict

予想される、行/レコード間の分離:

  • strict​: 各レコードの末尾で改行が予想される。

  • lenient​: 改行が使用されるが、レコードがスキーマ仕様よりも短いまたは長い場合がある。ペイロードに改行がない場合は、​lenient​ を使用しないでください。​recordParsing​ のもう 1 つのオプションで改行がないレコードがサポートされます。

  • noTerminator​: レコードが分離されずに互いに続く。このオプションは、改行がない固定長のレコードでお勧めします。

  • singleRecord​: 入力全体が 1 つのレコード。

種別 ​Binary​ または ​Packed​ のスキーマでは、改行を検出できないため、​recordParsing​ を ​lenient​ に設定すると、長いレコードのみを処理でき、短いレコードは処理できません。現在、このスキーマも特定の 1 バイト文字エンコードでのみ機能します (つまり、UTF-8 などの複数バイト形式では機能しません)。

schemaPath​ (必須)

String

null

スキーマ定義。入力の解析で使用するスキーマファイルのローカルディスク内の場所。

segmentIdent

String

null

固定幅のスキーマまたはコピーブックスキーマのセグメント識別子 (1 つのセグメント/レコード定義を解析する場合と、スキーマに複数のセグメント定義が含まれている場合にのみ必要)。

structureIdent

String

null

フラットファイルスキーマのセグメント識別子 (構造定義を解析する場合と、スキーマに複数の構造定義が含まれている場合にのみ必要)。

truncateDependingOn

Boolean

false

COBOL コピーブックの DEPENDING ON 値を、使用される長さに切り捨てます。有効な値は、​true​ または ​false​ です。

useMissCharAsDefaultForFill

Boolean

false

デフォルトでは、フラットファイルリーダーおよびライターでは、欠落文字にスペースが使用され、​missingValues​ プロパティの設定が無視されます。このプロパティを ​true​ に設定すると、リーダーは ​missingValues​ プロパティの設定に従います。 2021 年 9 月リリースの Mule 4.3.0-20210823 の DataWeave 2.3 (2.3.0-20210823) で導入されました。​有効な値は、​true​ または ​false​ です。

zonedDecimalStrict

Boolean

false

COBOL コピーブックのゾーン 10 進数値に署名エンコードの ​strict​ ASCII 形式を使用します。 有効な値は、​true​ または ​false​ です。

Writer のプロパティ

DataWeave は、この形式で出力データを書き込む指示を提供するプロパティを受け入れます。

パラメーター デフォルト 説明

bufferSize

Number

8192

バッファライターのサイズ。

deferred

Boolean

false

true​ に設定すると、DataWeave は出力をデータストリームとして生成し、スクリプトの実行はそれがコンシュームされるまで延期されます。 有効な値は、​true​ または ​false​ です。

encoding

String

null

このライターで使用されるエンコード (​UTF-8​ など)。

enforceRequires

Boolean

false

必須値がない場合にエラーになります。 有効な値は、​true​ または ​false​ です。

missingValues

String

コピーブックスキーマの場合は ​NULLS​、それ以外の場合は ​SPACES

欠落値を表すために使用される文字を入力します。デフォルト以外の設定を有効化するには、​useMissCharAsDefaultForFill​ を使用し、​missingValues​ に次のいずれかの値を使用します。

  • NONE​: 欠落値の場合に何も書き込まない。

  • SPACES​: 項目をスペースで埋める。

  • ZEROES​: 数値項目を ​0​ 文字で、文字項目をスペース文字で埋める。

  • NULLS​: 項目を 0 バイトで埋める。

notTruncateDependingOnSubjectNotPresent

Boolean

false

DEPENDING ON の対象が存在しない場合にグループ全体を入力します。 2021 年 8 月リリースの Mule 4.3.0-20210622 の DataWeave 2.3 で導入されました。

recordTerminator

String

システムプロパティ ​line.separator

レコード区切り文字 (改行)。有効値:

  • lf

  • cr

  • crlf

  • none

Mule バージョン 4.0.4 以降では、これは、複数のレコードがある場合の区切り文字としてのみ使用されます。値は文字コードに直接変換されます (​none​ では各レコードの終端はありません)。

retainEmptyStringFieldsOnParsing

Boolean

false

true​ に設定すると、このプロパティによりリーダーは値がない項目を保持し、その値を空の文字列に設定します。リーダーのデフォルトの動作では、これらの項目を削除します。 2023 年 1 月バージョンの Mule バージョン 4.4.0-20230102 の DataWeave 2.4 で導入されました。

schemaPath​ (必須)

String

null

スキーマ定義。使用するスキーマファイルが配置されているパス。

segmentIdent

String

null

固定幅のスキーマまたはコピーブックスキーマのセグメント識別子 (1 つのセグメント/レコード定義を作成する場合と、スキーマに複数のセグメント定義が含まれている場合にのみ必要)。

structureIdent

String

null

フラットファイルスキーマのセグメント識別子 (構造定義を作成する場合と、スキーマに複数の構造定義が含まれている場合にのみ必要)。

trimValues

Boolean

false

末尾の文字を切り捨てることで、項目の長さを超える文字列値を切り取ります。有効な値は、​true​ または ​false​ です。

trimValues

Boolean

false

切り捨て値が項目幅より長いかどうかを示します。有効なオプションは、​true​ または ​false​ です。

truncateDependingOn

Boolean

false

COBOL コピーブックの DEPENDING ON 値を、使用される長さに切り捨てます。有効な値は、​true​ または ​false​ です。

useMissCharAsDefaultForFill

Boolean

false

デフォルトでは、フラットファイルリーダーおよびライターでは、欠落文字にスペースが使用され、​missingValues​ プロパティの設定が無視されます。このプロパティを ​true​ に設定すると、ライターは ​missingValues​ プロパティの設定に従います。 2021 年 9 月リリースの Mule 4.3.0-20210823 の DataWeave 2.3 (2.3.0-20210823) で導入されました。

zonedDecimalStrict

Boolean

false

COBOL コピーブックのゾーン 10 進数値に署名エンコードの ​strict​ ASCII 形式を使用します。有効な値は、​true​ または ​false​ です。

サポートされる MIME タイプ (固定幅)

固定幅形式では、次の MIME タイプがサポートされています。

MIME タイプ

*/flatfile