データを別の形式に変換する
学習の目的
この単元を完了すると、次のことができるようになります。
- 変換要素を使用して、データテーブルの選択内容をテキストコレクションに変換する。
- [In (次に含まれる)] 演算子を使用して、テキストコレクションの内容に一致するレコードを更新する。
変換要素を使用して、別の種別のコレクションに変換する
前の単元で作成したフローの別バージョンを作成します。このバージョンでは、レコードコレクションではなく、変換要素を使用してテキストコレクションを作成します。テキストコレクションは、レコードのコレクションではなく、文字列のコレクションを保持します。変換元データの [Id (ID)] 項目をテキストコレクションに対応付けると、新しいコレクションには、選択されたすべてのレコードの ID が、レコードではなく文字列として格納されます。
ですが、なぜレコード ID のテキストコレクションが役立つのでしょうか。[Update Records (レコードを更新)] 要素の検索条件には、特定の演算子である [In (次に含まれる)] 演算子があります。[In (次に含まれる)] 演算子は、テキストや数値などの単純な値を含むコレクションを参照し、そのコレクション内の値を持つすべてのレコードを見つけます。[In (次に含まれる)] 演算子はレコードコレクションを参照できないため、変換要素を設定して、レコードコレクションをテキストコレクションに変換します。
まず、[All Flows (すべてのフロー)] リストビューに戻り、[Choose Steps to Update (更新するステップを選択)] フローを開きます。このフローには、[Get Steps (ステップを取得)] 要素と [Select Steps to Update (更新するステップを選択)] 要素の 2 つだけが含まれています。
![[Choose Steps to Update (更新するステップを選択)] フローには、[Get Steps (ステップを取得)] 要素と [Select Steps to Update (更新するステップを選択)] 要素の 2 つだけが含まれています。](https://res.cloudinary.com/hy4kyit2a/f_auto,fl_lossy,q_70/learn/modules/multirecord-elements-and-transforms-in-flows/transform-data-from-one-form-to-another/images/ja-JP/a39d7d4dde05e1c928afdf1197cf4a9e_kix.nu1qij8osd30.png)
変換元から変換先に ID を対応付ける
次に、変換要素を使用して、レコード ID のテキストコレクションを作成します。
- [Select Steps to Update (更新するステップを選択)] 要素の後に、変換要素を追加します。
- [Label (表示ラベル)] に「
Transform Step IDs(ステップ ID を変換)」と入力します。
[API Name (API 参照名)] にTransform_Step_IDsと自動入力されます。
- [Source Data (変換元データ)] ボックスで
をクリックします。- [Resource (リソース)] で [Select_Steps] 画面コンポーネントを選択します。
- [Select_Steps] ボックスで、[selectedRows] 行の [>] をクリックして、コレクションで使用可能な項目を表示します。
- [Resource (リソース)] で [Select_Steps] 画面コンポーネントを選択します。
- [Target Data (変換先データ)] ボックスで
をクリックします。- [データ型] で [テキスト] を選択します。
-
[Allow multiple values (collection) (複数の値を許可 (コレクション))] を選択します。
-
[作成] をクリックします。
- [データ型] で [テキスト] を選択します。
- [Source Data (変換元データ)] 列で [Id (ID)] 項目にマウスを合わせ、[Id (ID)] 行の
をクリックします。
- [Target Data (変換先データ)] 列で、[Transform_Step_IDs] 行の
をクリックします。
- フローを保存します。
ID を使用して Onboarding Project Steps (オンボーディングプロジェクトステップ) レコードを更新する
最後に、変換後のテキストコレクションに含まれる ID を持つすべての Onboarding Project Step (オンボーディングプロジェクトステップ) レコードを検索する検索条件を指定して、[Update Records (レコードを更新)] 要素を追加します。次に、[Update Records (レコードを更新)] 要素を設定して、画面でユーザーが選択した値に Onboarding Project Step (オンボーディングプロジェクトステップ) の状況を更新します。
- [Transform Step IDs (ステップ ID を変換)] 要素の後に [Update Records (レコードを更新)] 要素を追加します。
- [Label (表示ラベル)] に「
Update Steps(ステップを更新)」と入力します。
[API Name (API 参照名)] にUpdate_Stepsと自動入力されます。
- [How to Find Records to Update and Set Their Values (更新するレコードを検索してその値を設定する方法)] で、[Specify conditions to identify records, and set fields individually (レコードを識別する条件を指定し、項目を個別に設定)] を選択します。
- [Object (オブジェクト)] で [Onboarding Project Step (オンボーディングプロジェクトステップ)] を選択します。
- [Filter Onboarding Project Step Records (オンボーディングプロジェクトステップレコードの絞り込み)] セクションで、以下を設定します。
- [Condition Requirements to Update Records (レコードを更新するための条件の要件)] が [All Conditions Are Met (AND) (すべての条件の要件が満たされている (AND))] に設定されていることを確認します。
- [Field (項目)] で [Record ID (レコード ID)] を選択します。
- [Operator (演算子)] で [In (次に含まれる)] を選択します。
- [Value (値)] で [Transform Step IDs (ステップ ID を変換)] を選択します。
- [Condition Requirements to Update Records (レコードを更新するための条件の要件)] が [All Conditions Are Met (AND) (すべての条件の要件が満たされている (AND))] に設定されていることを確認します。
- [Set Field Values for the Onboarding Project Step Records (オンボーディングプロジェクトステップレコードの項目値を設定)] セクションで、以下を設定します。
- [Field (項目)] で、[Status (状況)] を選択します。
- [Value (値)] で [Select Steps to Update (更新するステップを選択)] 画面を選択し、次に [New Status (新規状況)] を選択します。
- [Field (項目)] で、[Status (状況)] を選択します。
- フローを保存します。
![[Get Steps (ステップを取得)]、[Select Steps to Update (更新するステップを選択)]、[Transform Step IDs (ステップ ID を変換)]、[Update Steps (ステップを更新)] 要素を含む [Choose Steps to Update (更新するステップを選択)] フロー。](https://res.cloudinary.com/hy4kyit2a/f_auto,fl_lossy,q_70/learn/modules/multirecord-elements-and-transforms-in-flows/transform-data-from-one-form-to-another/images/ja-JP/6aa374df1e5c189a6d483ac7f05e9dff_kix.1730t76qym4l.png)
これで完了です。要素の設定内容は大きく異なりますが、フローキャンバスの見た目は前のバージョンと同じであることに注目してください。どちらのバージョンも、設定にかかる時間はほぼ同じで、実行時間もほぼ同じです。フローを作成するときは、同じ自動化を実現する方法が複数存在すること、そしてどの方法を選ぶかは個人の好みによる場合もある、という点を覚えておくことが重要です。
