質問
Boxに指定ファイルが存在すれば処理を行い、なければ途中で中止するといった処理を実装したいと考えています。
上記のような実装は可能でしょうか?
回答
Boxストレージに該当ファイルが存在するかどうかを確認する方法につきまして、
Boxコネクターの出力データを利用した以下の2つの方法をご提案いたします。
あくまで一例となりますので、お客様の要件に合わせて処理内容を調整して下さい。
1.[コンテンツ一覧取得処理]コンポーネントを利用する方法
[コンテンツ一覧取得処理]をご利用いただく事で、
指定したフォルダ内のコンテンツの一覧を取得する事が可能です。
取得した一覧はコンポーネント出力データからXML形式で出力されます。
取得したXMLデータのスキーマにはファイル名が格納されいてる要素「name」がございますので、
「name」要素内に想定するファイル名が存在するか確認し、
結果によって条件分岐を行う事でご要望の処理を実装する事が可能です。
[コンテンツ一覧取得処理]コンポーネントの詳細につきましては、以下のマニュアルをご参照ください。
2.6.1 コネクターオペレーションガイド > 2.6.1.7 クラウド > 2.6.1.7.23 Box > 2.6.1.7.23.7 コンテンツ一覧取得処理
2.[コンテンツダウンロード処理]コンポーネントを利用する方法
[コンテンツダウンロード処理]では、指定したパスのコンテンツに対して取得処理を実施し、
処理結果をコンポーネント出力データからXML形式で出力します。
出力されたXMLデータのスキーマには処理結果が格納されいてる要素「result」がございます。
「result」要素内に出力されるデータですが、
リクエスト実行結果が正常である場合は「succeeded」、
パスが誤っている等、入力が不正な場合は「skipped」、
リクエスト実行結果がエラーである場合は「failed」となります。
ですので、「result」要素の値が「succeeded」の場合とそれ以外の場合で条件分岐を行う事で、
ご要望の処理を実装する事が可能です。
なお、[コンテンツダウンロード処理]の仕様として、
HULFT Squareストレージ内のファイル更新時間 > BOXコンテンツ変更日の場合、
コンテンツダウンロード処理は実行されず、「result」要素の値は「skipped」となります。
そのため、上記の方法でスクリプトを実装する際には
コンテンツダウンロード処理の前にHULFT Squareストレージ内のファイルを削除する処理を行ってください。
[コンテンツダウンロード処理]コンポーネントの詳細につきましては、以下のマニュアルをご参照ください。
2.6.1 コネクターオペレーションガイド > 2.6.1.7 クラウド > 2.6.1.7.23 Box > 2.6.1.7.23.7 コンテンツダウンロード処理
また、以下補足となりますが、
スクリプトのフロー内に[例外通知]コンポーネントを配置する事で、
任意のタイミングでエラーを発生させることが可能です。
Boxストレージに該当ファイルが存在しない場合にエラーを発生させたい場合は、
条件分岐にて該当ファイルが存在しない場合のフローに[例外通知]コンポーネントを配置する事で
スクリプトエラーを発生させることが可能でので、ご活用いただければと存じます。
[例外通知]コンポーネントの詳細につきましては、以下のマニュアルをご参照ください。
2.6.1 コネクターオペレーションガイド > 2.6.1.1 基本 > 2.6.1.1.1 処理 > 2.6.1.1.1.5 例外通知処理
コメント
0件のコメント
記事コメントは受け付けていません。