質問
固定長ファイル書き込みにてパディング文字「0」でパディング処理を実施しようとしています。
負の値の数値入力データ「-123456」に対して、出力データを「-0000123456」のようにパディング文字の先頭にマイナスを出力する事は可能ですか?
回答
固定長ファイル書き込みの書き込みウィザードにて直接パディング処理を指定した場合、
負の数値データにつきましては「-123456」がデータ値として扱われますので、データ値の先頭にパディング処理が挿入され、「0000」+「-123456」という順序でデータが出力されます。
パディング文字の先頭にマイナスを出力したい場合、別途mapperの[数値フォーマッティング]ロジックで変換していただく方法があります。
該当データにおける固定長フィールドのフィールド長が「11」の場合、該当のデータに対してフォーマット「0000000000」(0が10個)を指定して変換していただく事で数値データが10桁の文字列となり、桁数が足りない場合は先頭に「0」が記載されます。
また、変換元の数値データが負の値の場合は上記出力データに対してマイナス記号が追加されて11文字となりますので、フィールド長が「11」の固定長フィールドに対して、先頭にマイナス記号が追加されている11文字のデータが出力されます。
数値フォーマッティングロジックの詳細につきましては、以下のマニュアルをご参照ください。
・数値フォーマッティング
コメント
0件のコメント
記事コメントは受け付けていません。