Bridge を使用すると、元の値に対して変更が行われた場合に、Smartsheet のドロップダウン列の値を最新の状態に保つことができます。
USM Content
始めるために必要なもの
- Smartsheet にて
- シート ID
- ドロップダウン リストの値を含むソース列 (この例では、列名は「Source Value」です)
- Bridge で更新できるターゲット列 (この例では、列名は「Dropdown」です)
- Bridge
- Smartsheet の統合機能
- Bridge ワークフロー トリガー: Smartsheet > 列の値が変更された場合
- Bridge ワークフロー モジュール
- 統合 > Smartsheet > シートを取得
- 統合 > Smartsheet > 列を更新
- ユーティリティ > 配列管理 > 配列からフィールドを抽出
- オプション: 別のソース システムの選択
利用を開始する
Bridge でこのワークフローを構築するには、Smartsheet 統合を認証します。
ワークフローの構築中は、シートと Bridge ワークフローを 2 つの個別のタブで開いたままにします。これにより、構築プロセスの進め方が簡単になります。
基本的なワークフロー モデルを構築する
- Bridge で新しいワークフローを作成します。
- ワークフロー ビルダーで、パネルを使用して 3 つのモジュールをこの順序で追加します。
- 統合 > Smartsheet > シートを取得
- ユーティリティ > 配列管理 > 配列からフィールドを抽出
- 統合 > Smartsheet > 列を更新
- ワークフローを保存します。
完了すると、ワークフローに以下のように表示されます:
ワークフローのトリガーを設定する
- トリガー モジュールを選択します。
- 統合ページを選択します。
統合リストから Smartsheet を選択します。
Bridge ロゴの下にある [Connected (接続済み)] オプションを使用すると、そのワークスペースに対して認証された統合のみのリストを表示できます。
- トリガー行を展開します。
- トリガーに追加を選択します。
- 次のフィールドに入力します。
- トリガー名: トリガーのカスタムラベルを作成します。
- シート ID: 値をコピーする元のシートのシート ID を貼り付けます。
- イベントタイプ: 列の値が変更された場合を選択します。
- 列名または ID: ドロップダウンの値のソースとなる Smartsheet の列の名前を入力します。
- [Select Workflow (ワークフローの選択): ドロップダウン リストから、作成した新しいワークフローを選択します。
- [保存] を選択します。
ワークフローに戻ります。
元のタブに戻る場合は、ページを最新の情報に更新してトリガーを表示させます。
ワークフロー モジュールを設定する
シート上のアクションによって、このワークフローがトリガーされます。このワークフローがトリガーを検出すると、同じシートに対してアクションを実行します。トリガーからの実行時間 (実行ログ) データ参照を使用して、「Smartsheet」モジュールに入力します。
ステップ 1:「Get Sheet (シートの取得)」モジュールを設定する
[Get Sheet (シートの取得)]モジュールは、ワークフローをトリガーしたシートからデータを取得します。
[Get Sheet (シートの取得)]モジュールが実行されると、Bridge はシートのデータを引き出し、それをワークフローの「Run Log (実行ログ)」にオブジェクトとしてプッシュします。オブジェクトは API から返されるアイテムで、そのオブジェクトに関連するフィールドの値を含みます。
配列は、オブジェクトと、それに対応するフィールドの集まりです。「Get Sheet (シートの取得)」モジュールの 13 行の配列が、最初の行の詳細を展開するとどのように「Run Log (実行ログ)」に表示されるかの例を以下に紹介します。
- [Sheet ID (シート ID)]フィールドに、値 {{runtime.sheetID}}を入力します。
- ワークフローを保存します。
- シートの任意の行で、元の値を含む列に新しい値を追加します。
- シートを保存します。
ステップ 2: ワークフローに取り込まれたデータを探す
Bridge に戻り、「[Extract Field from Array (配列からフィールドを抽出)]」モジュールに必要なデータをコピーします。
- [Run Log (実行ログ)]を開きます。
- [Run Log (実行ログ)]パネルを最新の情報に更新します。
- ワークフローのトリガーとモジュールのステップの内訳を表示するには、上部のエントリを展開します。
- 返されたデータを表示するには、「[Smartsheet: Get Sheet (Smartsheet: シートの取得)]」行を展開します。
- シートの[row (行)]を展開します。
- [rows (行)]のエントリを見つけます。次のようになります: 行: 配列[#].
- 行のエントリの右側にある、選択します。
。 - [Copy data reference (データの参照をコピー)]を選択します。
ステップ 3:「Extract Field from Array (配列からフィールドを抽出)」モジュールを設定する
「Extract Field from Array (配列からフィールドを抽出)」モジュールを使用すると、配列のオブジェクトから値を引き出すことができます。このモジュールによって、そのフィールドの値のみのリストを作成できます。
この例では、Bridge は「Source Values」値フィールドを引き出します。Bridge は、シートの「Source Values」列からすべての値を抽出し、リストにします。
- [Extract from Array (配列から抽出)]モジュールを選択します。
- [Array (配列)] フィールドにデータ参照を貼り付けます。
- [Key (キー)] フィールドで、リストにする列を指定します。
- リストにする列を指定する際は、cells.[列名].value という書式を使用します。たとえば、cells.Source Values.value のようになります。
- [Output (出力)] フィールドで、[Array (配列)] が選択されているかどうかを再確認します。
- ワークフローを保存します。
- シートの任意の行で、元の値を含む列に新しい値を追加します。
- シートを保存します。
ステップ 4: 列を更新する
「Update Column (列の更新)」モジュールは、作成したリストを使用して、列設定にあるドロップダウン列のドロップダウン リストに値を入力します。ワークフローが実行されるたびに、Bridge は最新のリストを作成し、シート内のその列を更新します。
- [Sheet ID (シート ID)] フィールドに、値 {{runtime.sheetID}} を入力します。
- 列 ID を取得します。
- 「Update Column (列の更新)」モジュールの編集パネルに戻ります。
- [Column ID (列 ID)] フィールドにデータ参照を貼り付けます。
- [Column Name (列名)] フィールドに、ドロップダウン値を含む列名を入力します。
- [Type (タイプ)] フィールドで、[Dropdown (Single Select) (ドロップダウン (単一選択))] または [Dropdown (Multi Select) (ドロップダウン (複数選択))] を選択します。
- [Values (値)] フィールドで、前回の実行時に「Extract Field from Array (配列からフィールドを抽出)」モジュールによって作成された配列を挿入します。
- ワークフローを保存します。
「Extract Field from Array (配列からフィールドを抽出)」モジュールのデータ参照を取得するには
- [Run Log (実行ログ)] パネルを開きます。
- [Run List (実行リスト)] に戻るには、[All Runs (すべての実行)] を選択します。
- [Run Log (実行ログ)] を最新の情報に更新します。
- 最新の実行エントリを展開します。
- 「Array Management: Extract Field from Array (配列管理 - 配列からフィールドを抽出)」行を展開します。
- 結果エントリの右側にある、を選択します。
。 - [Copy data reference (データの参照をコピー)] を選択します。
- ワークフローを保存します。
代替オプション
値のリストを作成するのに、同じシートや Smartsheet を使用する必要はありません。ドロップダウン リストの値を別の場所から取得する場合、トリガーとワークフローの最初のモジュールは、ユース ケースに応じて異なる必要があります。
ここで、このワークフローをカスタマイズする方法についてアイデアをいくつか紹介します。
- 別のシートの列から取得したリストを使用する。この場合、トリガーを別のシートに応答するように変更する必要があります。また、「Sheet ID」と「Column ID」フィールドを「Update Column」モジュールで更新する必要があります。
- Resource Management または Brandfolder から取得したリストを使用する。代わりに、Resource Management や Brandfolder の特定の変更に応答して、そのシステムから値のリストを生成することができます。トリガーを、いずれかの統合からの適切なトリガーに置き換えます。次に、「Get Sheet」モジュールを、ワークフローにデータを取り込むモジュールと置き換えます。
- 「Schedule (スケジュール)」トリガーを使用する。このトリガーを使用すると、以下の処理が行われるため、変更に応答する必要がなくなります。
- データを抽出してワークフローにプッシュする、そして
- ドロップダウン リストを 1 日、1 週間、または 1 か月に一度更新する。