9.6. FHIR サーバー上のリソースにある指定のフィールドを更新


インテグレーションでは、FHIR サーバー上にあるリソースの個別のフィールドを更新できます。これには、フローの途中に FHIR コネクションを追加するか、FHIR コネクションをシンプルなインテグレーションの最後のコネクションとして追加します。

前提条件

  • 更新するリソースを持つ FHIR サーバーへのコネクションが作成されている必要があります。
  • フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。または、Fuse Online で最後のコネクションを選択するよう要求されます。

手順

  1. Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。Fuse Online が最後のコネクションを選択するよう要求する場合は、このステップをスキップします。
  2. リソースの更新に使用する FHIR コネクションをクリックします。
  3. Choose an action ページで Patch を選択します。
  4. Resource Type フィールドをクリックし、FHIR リソースタイプのリストを表示します。更新するフィールドを持つリソースのタイプを選択または入力します。
  5. Number of Operations フィールドに、更新するフィールドの数を指定します。
  6. フローの以前のステップから値をマップする場合は Resource id フィールドを空白のままにしておきます。これが通常の作業になります。その他の場合は、更新するフィールドが含まれるリソースのリソース ID を指定します。
  7. 更新が記述された JSON パッチを指定します。JSON パッチは What is a JSON Patch? に記述されている形式である必要があります。

    Patient リソースのパッチ例:

    active フィールドを true に設定します。

    [{ "op":"replace", "path":"/active", "value": true }]

    患者の名前の配列である name フィールドの値を置き換えます。この例では、患者の名前は 1 つです。患者に複数の名前がある場合は、同様の形式のパッチで患者の名前をすべて置き換えることができます。

    [{ "op":"replace", "path":"/name", "value": [{"given": ["Bob"]}] }]

    患者の名を置き換えます。

    [{ "op":"replace", "path":"/name/0/given/0", "value": "John" }]

    名の前に別の名前を患者に追加します。

    [{ "op":"add", "path":"/name/0", "value": {"given": ["Anthony"]} }]

    更新によっては、Patch アクションの設定時に JSON パッチを指定する必要があります。たとえば、リソースフィールドの値を別のフィールドにコピーすることがあります。その他の更新では、JSON Patch フィールドを空白のままにし、代わりに各更新を定義する値をマップすることができます。

  8. Next をクリックして、このコネクションをフローに追加します。
  9. JSON パッチやリソース ID を指定しなかった場合は、データマッパーステップを追加します。

    1. フロービジュアライゼーションで、追加したばかりの FHIR コネクションの前にあるプラス記号をクリックします。
    2. Data Mapper をクリックします。

      Target パネルには、更新する各フィールド用の番号が付けられたフォルダーが表示されます。Patch アクションを設定するとき、更新するフィールドの数を指定します。データマッパーは、この数のフォルダーを Target パネルに表示します。たとえば、更新するフィールドの数として 3 を指定すると、12、および 3 のラベルが付いた 3 つのターゲットフォルダーが表示されます。

    3. 更新する各フィールドをいずれかのターゲットフォルダーのフィールドにマップします。

      1. Target パネルでフォルダーを展開し、oppath、および value の 3 つのフィールドを表示します。
      2. ソースフィールド、定数、またはプロパティーをターゲット path フィールドにマップします。パスは更新するリソースフィールドを識別します。パスの値では、数字はリストフィールドのインデックスを示し、スラッシュは子フィールドに通じます。たとえば、/name/1/given/1/value パスをマップし、指定の name フィールドの値を更新します。
      3. フィールドの現在の値を置き換えるデフォルトの更新操作を許可するか、ソースフィールド、定数、またはプロパティーを op フィールドにマップし、フィールドの更新方法を示します。可能な操作の詳細は、JSON patch operations を参照してください。
      4. フィールドを更新して新しい値を取得する場合は、ソースフィールド、定数、またはプロパティーをターゲット value にマップします。これは、フィールドに含まれるようにする新しい値になります。
    4. Patch アクションの設定時にリソース ID を指定しなかった場合は、リソース ID をターゲット id フィールドにマップします。
    5. Done をクリックして、データマッパーステップをフローに追加します。

結果

インテグレーションビジュアライゼーションで追加した場所にコネクションが表示されます。実行中、コネクションは指定のリソースフィールドを更新し、id.idPart が含まれる MethodOutcome リソースを返します。このフィールドには更新されたリソースの ID が含まれます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.