子スクリプトの例外を検知した場合に戻り値を変更したい

Avatar
dstn

子スクリプトの例外を検知した場合に戻り値を変更したい

キーワード:例外監視,エラーハンドリング,エラー処理,例外通知,スクリプト呼び出し

概要

子スクリプトの例外を監視し、例外を検知した場合に戻り値を変更したい場合は、end処理の [戻り値]を設定します。

サンプルプロジェクトの説明

テーブルに格納されているデータを読み取り、CSVファイルに出力する処理を行う子スクリプトをスクリプト呼び出し処理で呼び出します。
例外監視処理でスクリプト呼び出し処理の例外を監視し、例外を検知した場合は戻り値を「10」として終了します。
本スクリプトは、逆引きリファレンス「 処理を監視し、エラーが発生した場合に例外を通知したい」を子スクリプトとして呼び出します。

処理の流れ

サンプルプロジェクトの処理の流れは以下の通りです。
  1. 例外監視処理」で対象となる処理の例外を監視します。
  2. スクリプト呼び出し処理」で子スクリプトを呼び出します。
  3. 例外を検知した場合は「end処理」で戻り値を「10」として終了します。
実行結果のイメージについて
  • 正常終了の場合の結果については、サンプルプロジェクトのサンプルデータ「output.csv」を参照してください。
  • 例外を検知した場合は、戻り値を「10」として終了します。
    戻り値は、マイログから確認することができます。
    マイログの詳細については、DataSpider Servistaヘルプの「マイログ」を参照してください。
    なお、例外は以下の方法で発生させることが可能です。
    • 子スクリプトのCSVファイル書き込み処理の出力先ディレクトリを存在しないディレクトリに変更します。

ポイントとなる機能

名前 説明 ツールパレット上の場所
例外監視処理 対象となる処理の例外を監視し、例外処理を行います。 「基本」-「フロー」-「例外監視」
end処理 スクリプトの終了を表し、戻り値を返します。 「基本」-「フロー」-「end」

処理のポイント

スクリプト呼び出し処理の例外を監視します。
例外を検知した場合に、end処理でユーザ定義正常終了時の終了ステータスを設定します。
終了ステータスの詳細については、「 終了ステータス」を参照してください。

サンプルプロジェクトの使用方法

上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。

サンプルプロジェクトのダウンロード 逆引きリファレンス シナリオ020-021のサンプルプロジェクト
  1. サンプルプロジェクトの展開
    サンプルプロジェクトファイル「rl_reference_020-021.zip」を展開します。

  2. プロジェクトのアップロード
    「rl_reference_020-021.zip」を展開後に作成される「rl_reference_020-021プロジェクト」ディレクトリがプロジェクトファイルとなります。
    DataSpider Studioを起動し、マイプロジェクトの画面から[ファイル]-[ローカルからアップロード]で展開したディレクトリ「rl_reference_020-021プロジェクト」をアップロードしてください。
    本シナリオに該当するスクリプトは、「rl_reference_020-021プロジェクト」のスクリプト「rl_reference_021」です。

  3. サンプルデータの準備
    「rl_reference_020-021.zip」を展開後に作成される「samples」ディレクトリがサンプルデータとなります。
    $DATASPIDER_HOME/server/samplesディレクトリに上書きしてください。

スクリプトの作成手順

プロセスフローは、「 サンプルプロジェクトの説明」のスクリプト画像を参照して適宜設定してください。
  1. 子スクリプトとして「rl_reference_020」を呼び出す処理を作成します。
    デザイナのツールパレット「基本」-「処理」-「スクリプト呼び出し」から、スクリプト呼び出し処理をスクリプトキャンバスに配置します。

  2. デザイナのツールパレット「基本」-「フロー」-「例外監視」から、例外監視処理をスクリプトキャンバスに配置します。

  3. デザイナのツールパレット「基本」-「フロー」-「end」から、end処理をスクリプトキャンバスに配置します。
    • end処理の設定は、プロパティインスペクタから以下のように行います。
      プロパティ設定ダイアログを開くことはできません。

      プロパティインスペクタ



      処理のポイント
      • ユーザ定義正常終了時の終了ステータスである「10」を[戻り値]に設定します。
      • デフォルトの[戻り値]は「0」です。
        終了ステータスの詳細については、DataSpider Servistaヘルプの「終了ステータス」を参照してください。

  4. 例外監視処理の例外処理で、例外を監視したいコンポーネントを選択します。
    • 例外処理の設定は、以下のように行います。

      [必須設定]タブ



  5. スクリプトを実行し、正常終了すれば成功です。

コメント

ログインしてコメントを残してください。

Powered by Zendesk