可変長ファイル書き込み処理

オペレーション名

可変長ファイル書き込み

機能概要

可変長ファイル書き込み処理は可変長形式のテキストファイルを生成する処理です。
スクリプト上で入力された XML データを基に、定義されたフォーマットで可変長データを生成します。

データモデル

本コンポーネントのデータモデルはテーブルモデル型です。
入出力のスキーマについては「テーブルモデル型のスキーマ」を参照してください。

プロパティ

基本設定

項目名 必須/省略可 変数の使用 説明 補足
名前 必須 使用不可 スクリプトキャンバス上での名前を入力します。  
入力データ 必須 使用不可 スクリプトキャンバス上にあるコンポーネントを選択します。  

必須設定

項目名 必須/省略可 変数の使用 説明 補足
ファイル 必須 使用可 書き込みを行う可変長ファイルパスを入力します。

[参照]ボタンを押下するとファイルチューザが起動し、ファイルの選択ができます。
デリミタモード 必須 使用不可 デリミタの指定方法を選択します。
  • [一覧から選択]:(デフォルト)
    一覧からデリミタ文字を選択します。
  • [直接入力]:
    フィールドに直接デリミタ文字を入力します。
  • [文字コード入力]:
    フィールドに文字コードでデリミタ文字を入力します。
  • 選択した指定方法により、対応した入力フィールド([デリミタ文字リスト]/[デリミタ文字])に切り替わります。
デリミタ文字リスト 省略可 使用不可 デリミタ文字を選択します。
  • [半角スペース]:(デフォルト)
  • [タブ]:
  • [半角カンマ]:
  • [半角セミコロン]:
  • [半角スラッシュ]:
  • [改行]:
  • [デリミタモード][一覧から選択]を選択した場合、有効になります。
デリミタ文字 省略可 使用可 デリミタ文字を入力します。
  • [直接入力]の場合
    キーボードから直接入力します。
  • [文字コード入力]の場合
    [エンコード]で指定したエンコーディングによるバイト列を指定します。

    8進(接頭辞「0」<数字のゼロ>)、10進(接頭辞なし)、16進(接頭辞「0x」<数字のゼロとアルファベットのエックス>もしくは「#」)による入力が可能です。
    パディングが複数のバイト列になる場合には、カンマで区切って入力します。例:0x10,0x13
  • [デリミタモード][直接入力]または[文字コード入力]を選択した場合、有効になります。
ダブルクォートエスケープ 必須 使用不可 ダブルクォートエスケープを行うかどうかを選択します。
  • [無効]:(デフォルト)
    ダブルクォートエスケープを行いません。
    単純なデリミタ区切りです。フィールドの値としてデリミタを持つことはできません。
  • [有効]:
    ダブルクォートエスケープを行います。
    フィールド値にデリミタ、もしくはダブルクォーテーションが含まれている場合、フィールド値をダブルクォーテーションで囲みます。
    フィールド値としてダブルクォーテーションが含まれる場合、ダブルクォーテーション1文字をダブルクォーテーション2文字で表現します。
  • フィールドの両端にダブルクォートがあり、そのフィールド内にエスケープしたいデリミタもしくはダブルクォーテーションがない場合はエラーになります。
フォーマット 必須 使用不可 グローバルリソースに登録されている可変長ファイルフォーマット定義を選択します。
設定方法については「可変長書き込みウィザード」を参照してください。
  • [追加]:
    新規にグローバルリソースを追加します。
  • [編集]:
    「リソース一覧の編集」プロパティにて、グローバルリソースの設定を編集することができます。
 
プロパティアクション
項目名 説明 補足
プレビュー プレビューアを起動して、[ファイル]で指定したファイルの内容を表示します。
  • 指定したファイルが存在しない場合、または[ファイル]に変数が設定されている場合は無効になります。
  • [エンコード]で指定したエンコードで表示されます。
  • ファイル内容の編集はできません。
  • プレビューアで表示できるファイルのサイズは1MBまでです。ファイルサイズが1MBを超える場合、ファイルの先頭から1MB分が表示されます。

書き込み設定

項目名 必須/省略可 変数の使用 説明 補足
エンコード 必須 使用可 読み取るファイルのエンコードを選択または入力します。

入力する場合は、J2SE Development Kit 5.0でサポートされているエンコードを指定することができます。
デフォルト値は以下の通りです。
  • Windowsの場合:
    Shift_JIS
  • UNIXの場合:
    EUC-JP
改行コード 必須 使用不可 改行コードを選択します。

  • [AUTO]:(デフォルト)
    処理系依存
  • [CR]:
    主にMac OS(バージョン9まで)
  • [LF]:
    主にUNIX
  • [CR+LF]:
    主にMicrosoft Windows
改行コードは[エンコード]で指定したエンコードでエンコーディングされるため、バイト値はエンコードによって異なります。
  • LF
    エンコード バイト値
    UTF-8 0x0a
    Shift_JIS 0x0a
    Windows-31J 0x0a
    EUC-JP 0x0a
    ISO-8859-1 0x0a
    ISO-2022-JP 0x0a
    US-ASCII 0x0a
    UTF-16 0xfe,0xff,0x00,0x0a
    UTF-16BE 0x00,0x0a
    UTF-16LE 0x0a,0x00
    Cp930 (EBCDIC) 0x15

  • CR
    エンコード バイト値
    UTF-8 0x0d
    Shift_JIS 0x0d
    Windows-31J 0x0d
    EUC-JP 0x0d
    ISO-8859-1 0x0d
    ISO-2022-JP 0x0d
    US-ASCII 0x0d
    UTF-16 0xfe,0xff,0x00,0x0d
    UTF-16BE 0x00,0x0d
    UTF-16LE 0x0d,0x00
    Cp930 (EBCDIC) 0x0d

  • CRLF
    エンコード バイト値
    UTF-8 0x0d,0x0a
    Shift_JIS 0x0d,0x0a
    Windows-31J 0x0d,0x0a
    EUC-JP 0x0d,0x0a
    ISO-8859-1 0x0d,0x0a
    ISO-2022-JP 0x0d,0x0a
    US-ASCII 0x0d,0x0a
    UTF-16 0xfe,0xff,0x00,0x0d,0x00,0x0a
    UTF-16BE 0x00,0x0d,0x00,0x0a
    UTF-16LE 0x0d,0x00,0x0a,0x00
    Cp930 (EBCDIC) 0x0d,0x15
上書き 省略可 使用不可 指定したファイルが存在する場合、上書きするかどうかを選択します。
  • [チェックあり]:(デフォルト)
    上書きします。
  • [チェックなし]:
    上書きしません。すでにファイルが存在した場合はエラーとなります。
 
追加書き込み 省略可 使用不可 指定したファイルが存在する場合、ファイルの末尾に追加するまたは上書きするかを選択します。
  • [チェックあり]:
    ファイルの末尾に追加します。
  • [チェックなし]:(デフォルト)
    上書きします。
  • [上書き]にチェックを入れた場合のみ有効になります。

トランザクション

項目名 必須/省略可 変数の使用 説明 補足
トランザクション処理を行う 必須 使用不可 トランザクション処理を行うかどうかを選択します。
  • [チェックあり]:
    トランザクション処理を行います。
  • [チェックなし]:(デフォルト)
    トランザクション処理を行いません。
詳細は「ファイル系アダプタのトランザクション」を参照してください。
 

互換性

項目名 必須/省略可 変数の使用 説明 補足
1.5形式のデータを使用 省略可 使用不可 結果データのスキーマの形式を選択します。
  • [チェックあり]:
    DataSpider 1.5形式のスキーマで結果データを作成します。
    出力スキーマについては「1.5形式のスキーマ」を参照してください。
  • [チェックなし]:(デフォルト)
    DataSpider Servista 2.0以降のスキーマで結果データを作成します。
 
スキーマの種類 省略可 使用不可 スキーマの種類を選択します。
  • [DEFAULT]:(デフォルト)
    通常のスキーマを使用します。
  • [COLUMN_NAME]:
    要素名の定義が可能となります。
  • [1.5形式のデータを使用]にチェックを入れた場合、有効になります。
プロパティアクション
項目名 説明 補足
構造定義ファイルのインポート CSV形式で定義された可変長データ構造をインポートします。
構造定義については「1.5形式の構造定義」をご参照してください。
 
[互換性]タブは、マイグレーション・キットをインストールした場合のみ表示されます。
マイグレーションの懸念事項については、「マイグレーション制限事項および注意事項」を参照してください。
1.5形式のスキーマ
<?xml version="1.0" encoding="UTF-8"?>
<structuredtext>
 <data>
  <transaction name="">
   <group name="">
    <record name="">
     <fieldvalue/>
    </record>
   </group>
  </transaction>
 </data>
</structuredtext>
1.5形式の構造定義ファイル
可変長データの構造(フィールド・レコード・グループ・トランザクション)をCSV形式で定義します。

コメント

項目名 必須/省略可 変数の使用 説明 補足
コメント 省略可 使用不可 このアダプタの簡単な説明を記述することができます。
説明を記述すると、仕様書に反映させることができます。
 

トランザクション

トランザクションはサポートしています。

[トランザクション][トランザクション処理を行う]にチェックを入れた場合のみトランザクションは有効になります。

使用できるコンポーネント変数

コンポーネント変数名 説明
count 書き込んだデータの行数を返します。
error_type エラーが発生したときに、エラーの種類を返します。
java.io.FileNotFoundExceptionというような形式で返されます。
エラーが発生しなかった時にはnullを返します。
バージョンにより、内容が変わる可能性があります。
error_message エラーが発生したときのエラーメッセージを返します。
バージョンにより、内容が変わる可能性があります。
error_trace エラーが発生したときのトレース情報を返します。
バージョンにより、内容が変わる可能性があります。

主な例外

例外名 原因 対策
InputDataNotFoundException [入力データ]が指定されていません。 [入力データ]を指定する、またはデータフローを引いてください。
ResourceNotFoundException
リソース定義が見つかりませんでした。名前:[]
[フォーマット]が指定されていません。 [フォーマット]を指定してください。
ResourceNotFoundException
リソース定義が見つかりませんでした。名前:[<グローバルリソース名>]
[フォーマット]で選択されたリソース定義が見つかりません。 [フォーマット]で指定したグローバルリソースを確認してください。
InvalidPropertyConfigurationException
<プロパティ名>が指定されていません。
[<プロパティ名>]が指定されていません。 [<プロパティ名>]を指定してください。
FileIsDirectoryException [ファイル]に入力されたパスがディレクトリです。 [ファイル]にはファイルパスを入力してください。
FileAlreadyExistedException [ファイル]に指定されたファイルが既に存在します。 [ファイル]のファイル名を変更する、または[書き込み設定][上書き]にチェックを入れてください。
FileIsLockedException [ファイル]に指定されたファイルがロックされています。 エクスプローラやCLIからロックの解除を行ってください。
ArrayIndexOutOfBoundsException [フォーマット]で指定した列一覧のフィールド数が、入力元XMLデータのカラム数より大きい可能性があります。 [フォーマット]で指定した列一覧のフィールド数または、入力元XMLデータのカラム数を確認してください。
java.io.UnsupportedEncodingException [エンコード]にサポートされていないエンコードが指定されています。 サポートされているエンコードを指定してください。
java.io.FileNotFoundException
別のプロセスが使用中です。
[ファイル]に指定されたファイルが別のプロセスによって使用されています。 別のプロセスで使用されていないかを確認してください。

注意事項