適用対象

Bridge by Smartsheet

JavaScript モジュールの参照

PLANS

  • Bridge by Smartsheet

Run Script (スクリプトの実行)

このモジュールを使って、JavaScript 機能を記述し、記述した機能を作動させます。

「Run Script (スクリプトを実行)」モジュールの画像

「Run Script (スクリプトの実行)」フィールド

次のフィールドではデータ参照を使用できます。

  • Script Name (スクリプト名): 統合ページから作成された必要なスクリプトに割り当てられた名前
  • Script Parameters (スクリプトのパラメーター): キー/値のオブジェクトのマップとして表される、スクリプトが実行の際に要求するパラメーター 
    • Key (キー): スクリプトで表示されるパラメーター名 
    • Value (値): スクリプト実行中にこのパラメーターが取得する必要のある実際の値 

許容されるスクリプト パラメーターの数は無制限で、動的に追加されます。これは、いつでもパラメーターを追加できるということを意味します。

[Run Log (実行ログ)] ペインの表示内容

Bridge が「Run Script (スクリプトの実行)」モジュールを実行すると、次の情報が [Run Log (実行ログ)] ペインで利用できるようになります。

  • Data (データ)
    • result (結果): 目的の JavaScript アウトプット
  • State (状態): モジュールが機能したかどうかを示すセクション
    • Code (コード): Smartsheet からモジュールが取り込む成功/エラー コード
    • Message (メッセージ): モジュールが Smartsheet から取り込む、システムによって生成されたメッセージ
      • たとえば、モジュールが値を見つけられない場合、表示されるメッセージは「Not found (見つかりません)」です。
    • Status (ステータス): モジュールが Smartsheet から取り込むステータス
      • 以下は表示される可能性のあるステータス ラベルの例です。
        • [Succeeded (成功)]: モジュールが情報を見つけました。
        • [Failed (失敗)]: モジュールが情報を見つけられませんでした。

ハウツー ガイド

次の例を使用して、JavaScript ユーティリティを使う練習をしましょう。 

例 1: ハロー ワールド

「Script Body (スクリプトの本文)」フィールドに、「return “Hello” + a」と入力します。

応答を生成するには、すべてのスクリプトで「Return」と入力する必要があります。次に、モジュール ビルダーに定義したパラメーターを追加します。

「カスタム スクリプト」タブのスクリーンショット

モジュール ビルダーの「キー」「Script Body (スクリプト本文)」フィールドのパラメーターに一致していることを確認します。「値」は相互交換可能なインプットです。たとえば、初期のモジュール応答のアウトプットから取り込むこともできます。

JavaScript モジュール フィールド

「Script Name (スクリプト名)」フィールドは、UI によって処理されるため、入力文字列に二重引用符 ("") は必要ないことに留意してください。一方、「Script Body (スクリプト本文)」フィールドでは、「hello」は二重引用符をつける必要があります。

「Script Name」および「Script Body」フィールドのスクリーンショット

そうしないと、以下の画像のようなエラー メッセージが表示されます。

実行ログ ペインのエラー メッセージ

例 2: 基本的な計算

  • 「Script Body (スクリプト本体)」フィールドで、「return a + b」と入力します。

「Script Body」フィールドの値のスクリーンショット

この方法は 2 つの値を追加するのではなくリンクさせることに留意してください。これは、JavaScript が「a」「b」をオブジェクト インスタンスとして考慮するためで、それによりスクリプト本文の別の部分が呼び出される場合があります。

JavaScript モジュールの「キー」および「値」フィールド

実行ログのペインに表示されたモジュール結果

これらは以下の数値のタイプとして定義できます。

  • 「return Number(a) + Number(b)」

「Script Body」フィールドの値のスクリーンショット

実行ログのペインに表示された結果のスクリーンショット

例 3: 配列を繰り返す

  • 「Script Body (スクリプト本体)」フィールドで、以下を入力します。
function getFields(input, field) { var output = []; for (var i=0; i < input.length ; ++i) { //print only one column output.push(input[i][field]); } return output; } return getFields(objArray, field);

主要パラメーターは以下の要素です。 

  • field (フィールド): オブジェクト配列の中のキー
  • objArray: キーを抽出する配列 

製品/機能の制限

  • 6 MB ペイロード リクエストおよびレスポンスのみ処理できます。
     

    これは今後のアップグレードで変更になる場合があります。

  • スクリプト作成時のスクリプト検証はありません。スクリプトに誤りがある場合は、開発者が責任を持ってスクリプト実行時に返される問題やエラーのデバッグ/修正を行います。
  • Smartsheet チームはスクリプトのバージョンおよび履歴の追跡や管理は行っていません。
  • Bridge は、事象ベースのワークフローや固定スケジュールに基づくワークフローに適しています。これは、コネクタが提供する一方向または双方向の同期の機能に替わるものではありません。設計上、Bridge は順序の保証はしません。また、あるシステムまたはその他のシステムで行われた変更に関するステータス情報の保持も行いません。このため、コネクタのような設定は信頼性が低いため推奨しません。
この記事はお役に立ちましたか?
はいいいえ