Omniscriptを使ってみる
Omnistudio Omniscriptとは
ユーザーに対して段階的な入力や案内を行う“ウィザード型の画面フロー” を構築できるツールです。
OmniScriptの定義の中で、Data Mapper を活用して CRM 上のデータを 抽出・書き込みし、
その結果を ウィザード上でデザイン性高く表示するために、FlexCard を使用するなど、他のOmnistudioのツールと連携します。
Omniscriptを使ってみる
取引先のレコードページに配置する取引先責任者を追加するウィザードを作成します。
Omniscriptの新規作成
リストビューから、Omniscriptを新規作成します。
Step要素と入力要素の追加
右側の Build パネル から、入力用の要素を画面上にドラッグして配置します。
その後、各項目に対して Name や Field Label(項目ラベル) を設定します。
要素は、右側がつかめるようになっており、幅は12分割のグリッドシステムで柔軟に調整できます。
電話番号に対しては、Telephone入力項目があります。
Data Mapper Post Action の追加
フォームで入力されたデータを下に、Salesforceデータに対して書き込みや更新を行うために、Data Mapper Post Actionを使います。
この時点では、まだ Data Mapper(Load)は作成されていないため、
画面上の 「+ Create New Data Mapper」 をクリックし、任意の名前を指定して新規作成します。
Data Mapper Post を新規作成すると、自動的にデザイン画面が立ち上がります。
続いて、書き込み先として使用するSalesforceオブジェクト(例:Contactなど)を選択します。
FIELDSタブに移動します。
右側を見ると、このData Mapperに(Omniscriptから)入力される予定のデータが自動で検出されていることが確認できます。
用意されている Input JSON から、Input JSON Path を指定し、書き込み先の項目を Domain Object Field として選択し、マッピングを行います。
右上にある Quick Match を使用すると、GUI上で自動的にマッピングを行うこともできます。
OmniScriptを立ち上げる際、レコードの Id は自動的に ContextId として抽出されます。この ContextId を、責任者が参照する 取引先 AccountId として使用します。
Previewと画面への配置
OmniScriptのデザイン画面に戻ります。
この設定によって、入力した内容から 責任者(Contact)レコード が生成されます。
Preview 画面に移ると、一画面ごとに操作をしながら、JSONデータを リアルタイムで確認することができます。
Action Debugger を使用すると、OmniScriptから Data Mapper に渡されたデータ(Request Data)と、Data Mapper がOmniScriptに返したデータ(Response)を確認することができます。
正しく動作することを確認したら、Activate をクリックして、OmniScriptを実際の画面で使用できるようにします。
任意のレコードページにおいて、Lightning App Builderを開きます。
- 歯車アイコン(設定) → 編集ページ(Edit Page)
標準のコンポーネントにOmniscriptがあるのでそれを配置し、右パネルで作成したOmniscript定義を選び、有効化します。
配置できました。
カスタムボタンへの配置
OmniScriptの起動方法は、他にもいくつかの方法があります。
デザイン画面には、How To Launchというページがあります。
LWCへの埋め込みや、URLでの実行方法がわかります。
取引先のオブジェクトマネージャーから、新規ボタンを追加します。
詳細ページボタンを定義します。
How To Launchに記載されていたURLをコピーしてペーストします。
この場合、ContextIdが自動で取得できないため、クエリパラメータとして明示的に追加する必要があります。具体的には、c__ContextId を追加して、レコードに関連するIDを渡すようにします。
作成した詳細ページボタンを、ページレイアウトに追加します。
追加できました。
まとめ
今回は、Omnistudio Omniscript について調査しました。
Omniscriptでは、単純な入力要素だけでなく、Omniscript特有の入力項目も多く存在します。
これらを順を追って紹介していきますので、ぜひご覧ください。
Discussion