Administrator 練習問題 Q27
Cloud Kicksの管理者は、連絡先を作成する画面フローをデバッグしようとしています。フロー内にあるテキスト型(単一値)の変数の1つが、デバッグ開始画面の入力欄に表示されません。この問題の原因は何ですか?
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:A. 変数の[フローの外部での入力用に使用可能]がオフになっています。
解説
前提知識
フロー変数には、フロー外部との値の受け渡しを制御する設定があります。
- 入力可能(Available for Input):フロー開始時に、呼び出し元から変数へ値を渡せるようにする
- 出力に使用可能(Available for Output):フロー終了時に、変数の値を呼び出し元へ返せるようにする Flow Builderのデバッグ開始画面で値を指定する対象は入力変数です。ただし、入力可能にした変数でも、デバッガーが値の入力をサポートしないデータ型があります。
設問の状況を分解する
- 連絡先を作成する画面フローをデバッグしている
- フロー内の変数がデバッグ開始画面の入力欄に表示されない
- 表示されない変数はテキスト型(単一値)である
- デバッガーはテキスト型の入力変数への値入力をサポートしている つまり、データ型による制限は原因になりません。残る原因は「その変数がフローの外部からの入力を受け付ける設定になっていない」ことだけです。
選択肢の検討
- A. [フローの外部での入力用に使用可能]がオフ:⭕ 正解 — フロー開始時に外部から値を渡すには、変数を入力可能にする必要があります。単一値の入力変数がデバッグ開始画面に出ない状況なら、最初に確認すべき設定です。
- B. フローが非アクティブバージョン:誤り — Flow Builderでは保存済みフローをデバッグできます。非アクティブであることだけでは、特定の変数が入力欄から消える理由になりません。
- C. データ型がデバッグでサポートされていない:✕(惜しいが不正解) — 確かに、デバッガーはコレクション、レコード、レコードコレクション型の入力変数へ値を渡せません。しかし設問の変数はテキスト型(単一値)なので、この制限には当てはまりません。レコード変数やコレクション変数が入力欄に出てこないケースなら、これが正解になります。
- D. [フローの外部での出力用に使用可能]がオフ:誤り — 出力設定はフロー終了後に値を返すためのもので、開始前の入力欄への表示を制御する設定ではありません。
管理者としての対処手順
- Flow Builderで対象変数の設定を開く
- 外部から初期値を渡す必要がある場合、[フローの外部での入力用に使用可能]を有効にする
- 変数のデータ型を確認する
- レコード型またはコレクション型の場合は、デバッグ開始画面へ直接入力できない制限を考慮し、フロー内で取得・代入するテスト経路を用意する
- デバッグを再実行し、想定した値の受け渡しを確認する
あわせて覚えておきたいポイント
- 入力可能と出力に使用可能は独立した設定です。
recordIdなどをLightningレコードページやアクションから渡す場合も、受け取る変数を入力可能にします。- 「デバッグ画面に表示されない」ときは、入力設定だけでなく、変数のデータ型に対するデバッガーの制限も確認します。
出典(Salesforce公式)
- Variable Resource — 入力可能な変数はフロー開始時に外部から値を受け取り、出力に使用可能な変数はフロー外部から参照できることを裏付けています。
- Flow Builder Debugger Considerations — デバッガーでは、コレクション、レコード、レコードコレクション型の入力変数へ値を渡せないことを裏付けています。