シート書き込み処理

オペレーション名

シート書き込み

機能概要

入力データをExcelファイルに書き込みます。

データモデル

本コンポーネントのデータモデルはテーブルモデル型です。
ただし、 [書式・コメントをMapperで指定して書き込む]にチェックを入れた場合、XML型となります。

プロパティ

変数の使用については、「変数」を参照してください。
基本設定
項目名 必須/省略可 変数の使用 説明 備考
名前 必須 使用不可 スクリプトキャンバス上での名前を入力します。  
入力データ 必須 使用不可 スクリプトキャンバス上にあるコンポーネントを選択します。  
必須設定
項目名 必須/省略可 変数の使用 説明 備考
ファイルパス 必須 使用可 Excelファイルのファイルパスを入力します。

[参照]ボタンを押下するとファイルチューザが起動し、ファイルの選択ができます。
シート名 必須 使用可 シート名を選択または入力します。
  • 大文字小文字を区別しません。
  • プロパティアクション[シート名の一覧を取得する]からシート名の一覧を取得できます。
列一覧 必須 - 列を指定します。

各列は以下のボタンで操作することができます。
  • [上へ]:
    選択している列の順序を一つ上に上げます。
  • [下へ]:
    選択している列の順序を一つ下に下げます。
  • [追加]:
    列を追加します。
  • [削除]:
    列を削除します。
  • プロパティアクション[列一覧を取得する]から自動で設定できます。
列一覧/書き込み対象 必須 使用不可 この列に書き込むかを選択します。  
列一覧/列 必須 使用可 書き込む列を入力して指定します。
  • 列はA1形式またはR1C1形式の列で指定できます。
    • A1形式で列指定する場合
      例:「A」「B」
    • R1C1形式で列指定する場合
      例:「1」「2」
列一覧/見出し 省略可 使用不可 列の見出しを入力します。
  • [見出し]に設定した値がMapperのスキーマに表示されます。
  • [最初の行に見出しを書き込む]にチェックが入っている場合、設定した値を書き込みます。
列一覧/型 必須 使用不可 [列]の型を選択します。
  • [文字列]:(デフォルト)
    内部データ型はStringです。
  • [数値]:
    内部データ型はBigDecimalです。
  • [日付]:
    内部データ型はDateです。
  • [時間]:
    内部データ型はDateです。
  • [真偽値]:
    内部データ型はbooleanです。
  • 内部データ型の詳細については、「内部データ型」を参照してください。
  • [時間]を選択した場合、年月日の値は使用されません。
列一覧/表示形式設定 必須 使用不可 表示形式の設定方法を選択します。
  • [表示形式を指定する]:
    セルの表示形式を指定します。
  • [セルの表示形式を利用する]:(デフォルト)
    書き込み先セルの表示形式を利用します。
  • [開始行の表示形式を利用する]:
    書き込み開始行の表示形式を利用します。
  • [セルの表示形式を利用する]または [開始行の表示形式を利用する]を選択した場合、 [列一覧/表示形式]で設定した表示形式は使用されません。
列一覧/表示形式 省略可 使用可 書き込み先のセルに設定する表示形式を選択または入力します。  
書式・コメントをMapperで指定して書き込む 省略可 使用不可 書式・コメントを書き込むための要素を入力スキーマに設定するかどうかを選択します。
  • [チェックあり]:
    書式・コメントを書き込むための要素を入力スキーマに設定します。
  • [チェックなし]:(デフォルト)
    書式・コメントを書き込むための要素を入力スキーマに設定しません。
  • [チェックあり]の場合、入力スキーマはXML型となります。
  • 詳細については、「入力スキーマ」を参照してください。
プロパティアクション
項目名 説明 備考
シート名の一覧を取得する [ファイルパス]で指定したファイルからシート名の一覧を取得します。
  • 指定したファイルが存在しない場合、または [ファイルパス]にスクリプト変数が設定されている場合は無効になります。
列一覧を取得する [ファイルパス]で指定したファイルの[シート名]から列情報を取得して、 [列一覧]に設定します。
  • 指定したファイルが存在しない場合、または [ファイルパス][シート名]にスクリプト変数が設定されている場合は無効になります。
  • 1行目のセルから列情報を取得し、セルの値を[見出し]として設定します。
    • [開始条件]に行番号が設定されている場合には、その行のセルから列情報を取得します。
  • 対象セルが空白の場合、その列は設定されません。
  • サイズが大きいファイルを[ファイルパス]に指定した場合、OutOfMemoryErrorが発生することがあります。
開始条件設定
項目名 必須/省略可 変数の使用 説明 備考
開始条件設定を有効にする 省略可 使用不可 開始条件設定を有効にするかどうかを選択します。
  • [チェックあり]:
    開始条件設定を有効にします。
  • [チェックなし]:(デフォルト)
    開始条件設定を無効にします。
 
開始条件 省略可 - 書き込み開始条件を指定します。

各列は以下のボタンで操作することができます。
  • [上へ]:
    選択している列の順序を一つ上に上げます。
  • [下へ]:
    選択している列の順序を一つ下に下げます。
  • [追加]:
    列を追加します。
  • [削除]:
    列を削除します。
  • [開始条件設定を有効にする]にチェックを入れた場合、有効になります。
  • 開始条件が満たされた場合、書き込みが開始されます。開始条件が満たされない場合、データは書き込まれません。
開始条件/列(見出し) 必須 使用不可 書き込み開始条件のチェックを行う対象の [列]を選択または入力します。
  • [必須設定][列一覧]に設定されている[列]が表示されます。
  • [見出し]が設定されている場合は<列>(<見出し>) が表示されます。
  • [列]には[列一覧]に設定されていない列も設定可能です。
開始条件/行番号 必須 使用可 書き込み開始条件のチェックを行う対象の行番号を入力します。
  • [(行番号を指定しない)]を選択した場合、全行を対象に書き込み開始条件のチェックを行います。
  • 入力した行番号の行を対象に、セルの値を[条件値]と比較します。
開始条件/条件値 必須 使用可 書き込み開始条件の条件値を入力します。
  • [(条件値を指定しない)]を選択した場合、セルの値に関わらず条件を満たします。
  • [(空白のセル)]を選択した場合、セルが空白であれば条件を満たします。
  • [(空白ではないセル)]を選択した場合、セルが空白でなければ条件を満たします。
  • セルの型が数値、日付または時間の場合、条件値は判定されません。
複数条件の規則 必須 使用不可 [開始条件]を複数設定した場合の条件判定の規則を選択します。
  • [いずれかの条件を満たした行を開始行とする]:(デフォルト)
    複数設定した条件のうち、いずれかを満たした行を開始行とします。
  • [順不同で判定し、すべての条件を満たした行を開始行とする]:
    設定した開始条件のすべてを満たした行を開始行とします。
  • [上から順に判定し、すべての条件を満たした行を開始行とする]:
    すべての条件を満たした行を開始行とします。
    設定した開始条件のうち、上位の条件が満たされた場合にその下位の条件が判定対象となります。
  • [順不同で判定し、すべての条件を満たした行を開始行とする]を選択した場合の詳細
    • 一度条件を満たした開始条件は後続の条件判定では判定されず、満たしたものとみなします。
  • [上から順に判定し、すべての条件を満たした行を開始行とする]を選択した場合の詳細
    • 一度条件を満たした開始条件は後続の条件判定では判定されず、満たしたものとみなします。
    • 上位の条件が満たされない場合、下位の条件は判定されません。
書き込み開始をスキップする行数 省略可 使用可 [開始条件]で設定した書き込み開始行から書き込みを開始するまでにスキップする行数を入力して指定します。
  • 0または未入力の場合、スキップせずに[開始条件]で設定した書き込み開始行から書き込みます。
  • [開始条件]で設定した書き込み開始行が5行目、[書き込み開始をスキップする行数]に2を指定した場合、7行目から書き込みを開始します。
書き込み設定
項目名 必須/省略可 変数の使用 説明 備考
最初の行に見出しを書き込む 省略可 使用不可 書き込みを開始した最初の行に見出しを書き込むかどうかを選択します。
  • [チェックあり]:
    最初の行に[見出し]を「標準」形式で書き込みます。
  • [チェックなし]:(デフォルト)
    見出しは書き込みません。
 
上書き 省略可 使用不可 指定したファイルにデータが存在した場合、上書きするかどうかを選択します。
  • [チェックあり]:(デフォルト)
    指定したシートに上書きします。
  • [チェックなし]:
    上書きしません。指定したシートが存在する場合はエラーとなります。
  • 書き込み先にシートが存在しない場合、シートを作成します。
挿入 省略可 使用不可 指定したファイルにデータを書き込む際、挿入を行うかどうかを選択します。
  • [チェックあり]:
    書き込みを開始した行に挿入します。
  • [チェックなし]:(デフォルト)
    書き込みを開始した行から上書きします。
  • [上書き]にチェックを入れた場合、有効になります。
  • 開始条件を設定した場合には、開始行に挿入されます。
ターゲットシートの削除 省略可 使用不可 指定したファイルにデータを書き込む前に、指定したシートを削除するかどうかを選択します。
  • [チェックあり]:
    シートを削除します。指定したシートが存在しない場合は無視されます。
  • [チェックなし]:(デフォルト)
    シートを削除しません。
  • [上書き]にチェックを入れた場合、有効になります。
シートの追加位置 必須 使用不可 シートを作成する際に追加する位置を選択します。
  • [先頭に追加する]:(デフォルト)
    先頭にシートを追加します。
  • [末尾に追加する]:
    末尾にシートを追加します。
 
コメント
項目名 必須/省略可 変数の使用 説明 備考
コメント 省略可 使用不可 このアダプタの簡単な説明を記述することができます。
説明を記述すると、仕様書に反映させることができます。
 

スキーマ

入力スキーマ

出力スキーマ

ありません。

Mapperでのスキーマ読み込み

スキーマは自動で読み込まれます。
詳細については、「スキーマ編集」を参照してください。

トランザクション

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

PSPでの使用について

PSPについては、「パラレルストリーミング処理」を参照してください。

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

コンポーネント変数名 説明 備考
count 書き込んだデータの件数が格納されます。
  • デフォルト値はnullです。
filePath ファイルのパスが格納されます。
  • デフォルト値はnullです。
message_category エラー発生時、発生したエラーに対応するメッセージコードのカテゴリが格納されます。
  • デフォルト値はnullです。
message_code エラー発生時、発生したエラーに対応するメッセージコードのコードが格納されます。
  • デフォルト値はnullです。
message_level エラー発生時、発生したエラーに対応するメッセージコードの重要度が格納されます。
  • デフォルト値はnullです。
error_type エラー発生時、発生したエラーの種類が格納されます。
  • デフォルト値はnullです。
  • エラーの種類は、以下のような形式となります。
    例:「java.io.FileNotFoundException」
  • DataSpider Servistaのバージョンにより、格納される内容が変わる可能性があります。
error_message エラー発生時、発生したエラーのメッセージが格納されます。
  • デフォルト値はnullです。
  • DataSpider Servistaのバージョンにより、格納される内容が変わる可能性があります。
error_trace エラー発生時、発生したエラーのトレース情報が格納されます。
  • デフォルト値はnullです。
  • DataSpider Servistaのバージョンや実行するクライアントアプリケーションにより、格納される内容が変わる可能性があります。

仕様制限

主な例外

例外名 原因 対策
InputDataNotFoundException [入力データ]が指定されていません。 [入力データ]を指定する、またはデータフローを引いてください。
ToFormatException 入力スキーマの format要素に入力された値が不正です。 Mapperの「Excel書式生成」ロジックから出力した値を入力するか、不要な場合は値を入力しないようにしてください。
javax.json.JsonException
InvalidPropertyConfigurationException
<プロパティ名>が指定されていません。
[<プロパティ名>]が指定されていません。 [<プロパティ名>]を指定してください。
FileIsDirectoryException [ファイルパス]に入力されたパスがディレクトリです。 [ファイルパス]にはファイルパスを入力してください。
org.apache.poi.openxml4j.exceptions.OLE2NotOfficeXmlFileException [ファイルパス]に指定されたExcelファイルは、読み取りパスワードが設定されています。 [ファイルパス]には読み取りパスワードが設定されていないExcelファイルを入力してください。
org.apache.poi.openxml4j.exceptions.NotOfficeXmlFileException [ファイルパス]に指定されたExcelファイルが不正な状態になっています。 以下のことを確認してください。
  • Excelファイルではないファイルを[ファイルパス]に指定していないか
  • ファイルが破損していないか
org.apache.poi.EmptyFileException
org.apache.poi.openxml4j.exceptions.InvalidFormatException
FileIsLockedException [ファイルパス]に指定されたファイルがロックされています。 エクスプローラやCLIからロックの解除を行ってください。
java.io.FileNotFoundException
別のプロセスが使用中です。
[ファイルパス]に指定されたファイルが別のプロセスによって使用されています。 別のプロセスで使用されていないかを確認してください。
SheetAlreadyExistsException
指定されたシートは既に存在します。
[シート名]に指定されたシートは既に存在します。 [シート名]のシート名を変更する、または [書き込み設定][上書き]にチェックを入れてください。
CannotStartException
開始条件が一致しないため、処理を開始できませんでした。
開始条件が一致しないため、処理を開始できませんでした。 [開始条件設定]の設定を確認してください。
InvalidPropertyConfigurationException
列番号が範囲を超えています。[<列番号>]
[列一覧/列]で指定した列番号が最大値を超えています。 [列一覧/列]の値を確認してください。

注意事項