コアコンポーネントに基づくフォームのビジュアルルールエディターでの呼び出しサービスの使用
これはプレリリース機能で、 プレリリースチャネル.
アダプティブフォームのビジュアルルールエディターでは、サービスの呼び出し 機能がサポートされています。この機能を使用すると、インスタンスに設定されたフォームデータモデル(FDM)のリストからサービスを選択できます。 フォームフィールドをサービスの入力パラメーターに直接マッピングできます。 フォームフィールドを出力パラメーターにマッピングするには、指定したフォームデータモデルサービスのイベントペイロードオプションを使用します。 また、ビジュアルルールエディターでは、出力応答に基づいて、サービスの呼び出し 操作の成功ハンドラーと失敗ハンドラーのルールを作成できます。 サクセスハンドラーは、サービスの呼び出し 操作の正常な実行を管理し、エラーハンドラーは、発生したエラーに対処します。
フォームのルールエディターで呼び出しサービスを使用するメリット
アダプティブフォームのルールエディターで「サービスを起動」操作を使用する利点は次のとおりです。
-
統合の効率化:ビジュアルルールエディターを使用すると、外部のサービスや API をアダプティブFormsに簡単に統合できます。 呼び出しサービス を使用すると、複雑なコーディングを行わなくても、様々なデータソースやサービスにフォームを簡単に接続でき、フォーム統合の効率が向上します。
-
動的応答の処理:サービスの呼び出し の出力応答に基づいて、成功およびエラー応答を管理し、フォームを様々なシナリオに動的に反応させることができます。 これにより、フォームが様々な条件を適切に処理できるようになり、柔軟性と制御性が向上します。
-
ユーザーのインタラクションの強化:ルールエディターで サービスを呼び出し を使用すると、フォーム内でリアルタイムの検証が可能になり、ユーザーエクスペリエンスが向上します。 また、データがサーバーサイドで正確に検証されるので、エラーが減り、フォームの信頼性が向上します。
成功応答と失敗応答のサービスハンドラーを呼び出す
ビジュアルルールエディターでは、出力応答に基づいて、サービスの呼び出し 操作の成功ハンドラーと失敗ハンドラーのルールを作成できます。 次の画像は、アダプティブフォームのビジュアルルールエディターにある サービスを呼び出す を示しています。
成功または失敗のハンドラーを追加するには、「成功ハンドラーを追加」または「失敗ハンドラーを追加 をクリックします。
「サクセスハンドラーを追加」をクリックすると、サービスサクセスハンドラーを起動 ルールエディターが表示されます。このルールエディターで、操作が成功したときに サービスを起動 出力応答を管理するルールまたはロジックを指定できます。 条件を定義しなくてもルールを指定できます。ただし、「条件を追加」オプションをクリックすると、成功ハンドラーの条件を追加できます。
複数のルールを追加して、サービスを呼び出し 操作の応答の成功を処理できます。
同様に、操作が成功しなかった場合に サービスの呼び出し 出力応答を処理するルールを追加できます。 次の画像は、サービスエラーハンドラーを起動 ルールエディターを示しています。
また、複数のルールを追加して、「サービスの呼び出し 操作からの失敗した応答を処理す こともできます。
サーバーのエラー検証を有効にする 機能を使用すると、アダプティブフォームをデザインする際に作成者が追加した検証を、サーバー上でも実行できます。
ルールエディターで呼び出しサービスを使用するための前提条件
ルールエディターで サービスを呼び出し を使用する前に満たす必要がある前提条件を以下に示します。
様々なユースケースを通じたサービスの呼び出しの調査
ビジュアルルールエディターの サービスを呼び出し を使用すると、いくつかの便利な操作を実行できます。 これを使用して、ドロップダウンオプションへの入力、繰り返し可能またはシンプルなパネルの設定、フォームフィールドの検証を行うことができます。これらはすべて、サービスの呼び出し の出力応答に基づいて行われます。 これにより、フォームの柔軟性とインタラクティブ性が向上します。
次の表に、サービスの呼び出し を使用できるいくつかのシナリオを示します。
Pet ID
テキストボックスに入力された入力に基づいて値を取得する Get Information
フォームを作成します。 以下のスクリーンショットは、これらのユースケースで使用されるフォームを示しています。
フォームフィールド
フォームに次のフィールドを追加します。
-
ペット ID を入力:テキストボックス
-
写真 URL を選択: ドロップダウン
-
タグ:パネル
- 名前:Textbox
- ID: テキストボックス
-
カテゴリ:パネル
- 名前:Textbox
-
送信:送信ボタン
パネルの設定
次の制約を使用して、パネルを繰り返しとして設定します。
- 最小値:1
- 最大値:4
繰り返しパネルの値は、要件に合わせて調整できます。
データソース
この例では、Swagger Petstore API を使用してデータソースを設定します。 フォームデータモデルは getPetById サービス用に設定されており、入力した ID に基づいてペットの詳細を取得します。
Swagger Petstore API の addPet サービスを使用して、次の JSON を投稿します。
{
"id": 101,
"category": {
"id": 1,
"name": "Labrador"
},
"name": "Lisa",
"photoUrls": [
"https://example.com/photos/lisa1.jpg",
"https://example.com/photos/lisa2.jpg"
],
"tags": [
{
"id": 1,
"name": "vaccinated"
},
{
"id": 2,
"name": "friendly"
},
{
"id": 3,
"name": "house-trained"
}
],
"status": "available"
}
ルールとロジックは、Pet ID
テキストボックスのルールエディターで サービスを呼び出し アクションを使用して実装され、前述のユースケースが示されます。
次に、各ユースケースの実装について詳しく見てみましょう。
ユースケース 1:呼び出しサービスの出力を使用したドロップダウン値の入力
このユースケースは、Invoke Service
の出力に基づいてドロップダウンオプションを動的に入力する方法を示しています。
実装
それには、「Pet ID
」テキストボックスでルールを作成して、getPetById
サービスを呼び出します。 ルールで、成功ハンドラーの追加 の photo-url
ドロップダウンの enum
プロパティを photoUrls
に設定します。
出力
Pet ID
テキストボックスに 101
と入力し、入力した値に基づいてドロップダウンオプションを動的に入力します。
ユースケース 2:呼び出しサービスの出力を使用して繰り返し可能なパネルを設定する
このユースケースは、サービスの呼び出し の出力に基づいて繰り返し可能なパネルを動的に入力する方法を示しています。
考慮事項
- 繰り返し可能なパネルの名前が、パネルを設定する 呼び出しサービス のパラメーターと一致することを確認します。
- このパネルは、対応する サービスの呼び出し フィールドから返される値の数だけ繰り返されます。
実装
「Pet ID
」テキストボックスに、getPetById
サービスを呼び出すルールを作成します。 サクセスハンドラーを追加 で、別のサクセスハンドラー応答を追加します。 ルール内で tags
パネルの値を tags
に設定します。
出力
Pet ID
テキストボックスに 101
と入力し、入力値に基づいて繰り返し可能なパネルを動的に入力します。
ユースケース 3:呼び出しサービスの出力を使用したパネルの設定
このユースケースは、サービスの呼び出し の出力に基づいてパネルの値を動的に設定する方法を示しています。
考慮事項
- パネルの名前が、パネルを設定する 呼び出しサービス のパラメーターと一致することを確認します。
- このパネルは、対応する呼び出しサービス フィールドが返す値の数だけ繰り返されます。
実装
「Pet ID
」テキストボックスに、getPetById
サービスを呼び出すルールを作成します。 サクセスハンドラーを追加 で、別のサクセスハンドラー応答を追加します。 ルール内で「categoryname
」テキストボックスの値を「category.name
」に設定します。
出力
Pet ID
テキストボックスに 101
と入力し、入力値に基づいてパネルに動的に入力します。
ユースケース 4:呼び出しサービスの出力パラメーターを使用して他のフィールドを検証
このユースケースは、サービスの呼び出し の出力を使用して他のフォームフィールドを動的に検証する方法を示しています。
実装
「Pet ID
」テキストボックスに、getPetById
サービスを呼び出すルールを作成します。 エラーハンドラーを追加 で、エラーハンドラー応答を追加します。 間違った Pet ID
を入力した場合は 送信 ボタンを非表示にします。
出力
Pet ID
テキストボックスに「102
」と入力すると、「送信」ボタンが非表示になります。
よくある質問
Q:呼び出しサービスを使用してルールを作成し、コアコンポーネントの最新バージョンにアップグレードするとどうなりますか?
A: コアコンポーネントの最新バージョンにアップグレードすると、サービスを呼び出し ルールが自動的に最新のユーザーインターフェイスに更新されます。これは下位互換性があるからです。
Q:サービスを起動操作に対する成功または失敗の応答を処理するために、複数のルールを追加できますか?
A: はい。サービスの呼び出し 操作の成功または失敗の応答を処理する複数のルールを追加できます。
関連記事
その他のリソース
- コアコンポーネントに基づくアダプティブフォームのルールエディターの概要
- コアコンポーネントに基づくアダプティブフォームのルールエディターでの演算子のタイプとイベント
- コアコンポーネントに基づくアダプティブフォームのルールエディターのユーザーインターフェイス
- コアコンポーネントに基づくアダプティブフォームの様々なユースケース
- ルールエディターの様々なエディションの違い
- アダプティブフォームでの非同期関数の使用
- コアコンポーネントに基づくフォーム用のビジュアルルールエディターの呼び出しサービスの機能強化
- コアコンポーネントに基づくアダプティブフォームのカスタム関数の概要
- コアコンポーネントに基づくアダプティブフォームのカスタム関数の作成
- カスタム関数のスコープオブジェクト
- カスタム関数の開発と使用の例