Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

EMPI に保持されている基本情報データの追加または更新 (PIX Add)

インターシステムズ製品では、IHE “PIXv3_PatientAddRequest” トランザクションを介して、外部 EMPI に保持されている患者に対して患者の追加や基本情報データの更新を行うことができます。

PIX Add のメッセージ・トレース

以下の図に、MPIID を返すアノテーション付き PIX Add メッセージ・トレースを示します。

図に示されているテスト・サービスは、単純なメッセージ・ルータです。トレース操作は、トレース内の中間処理の各段階を可視化するユーティリティです。図中の番号は、以下の手順の各段階に一致します。

PIX Add の手順

  1. 必要な基本情報データが含まれる Add Update Hub RequestOpens in a new tab メッセージを InterSystems PIX Source に提供します。

  2. InterSystems PIX Source は、TransformAddUpdateHubToPIX 設定で指定された変換を使用して、メッセージを IHE “PIXv3_PatientAddRequest” に変換します。

  3. その後、InterSystems PIX Source は、ServiceName 設定で指定された別のシステム上にある PIX Manager エンドポイントに PIX 要求を転送します。

  4. 他のシステム上にある PIX Manager が確認またはエラーを返します。

  5. InterSystems PIX Source の OperationToLocateMPIID 設定に値 (通常は HS.IHE.PIXv3.Consumer.OperationsOpens in a new tab) が含まれる場合は、指定された操作に患者検索要求を送信し、その操作が PIX クエリを実行して患者の MPIID を取得します。

  6. InterSystems PIX Source は、Add Update Hub ResponseOpens in a new tab メッセージを返します。手順 5 の設定によっては、この応答メッセージに MPIID が含まれることがあります。エラーが発生した場合、InterSystems PIX Source は null を返します。

PIX Add のコンポーネントと設定

PIX Add で使用されるコンポーネントと設定
コンポーネント 設定
ビジネス・ホスト PIX Source : HS.IHE.PIXv3.Source.OperationsOpens in a new tab
ビジネス・ホスト PIX Consumer : HS.IHE.PIXv3.Consumer.OperationsOpens in a new tab
  • MPI ID を返す場合

プロダクション設定 PIX Source 内の TransformAddUpdateHubToPIX
プロダクション設定 PIX Source 内の ServiceName
プロダクション設定 PIX Source 内の OperationToLocateMPIID
プロダクション・メッセージ HS.Message.AddUpdateHubRequestOpens in a new tab
プロダクション・メッセージ HS.Message.AddUpdateHubResponseOpens in a new tab
プロダクション・メッセージ HS.Message.PatientSearchRequestOpens in a new tab (PIX の場合)
プロダクション・メッセージ HS.Message.PatientSearchResponseOpens in a new tab (PIX の場合)
XSL 変換 IHE/PIX/Version1/AddUpdateHubRequestToPRPAIN201301UV.xsl
サービス・レジストリ・エントリ PIXv3.Manager
外部 IHE アクター・エンドポイント PIX Manager

PIX Add の例

以下のメソッドは PIX Add を生成します。

 ClassMethod PIXADD()
  {
    // Create AddUpdateHub Message    
    Set obj=##class(HS.Message.AddUpdateHubRequest).%New()

    // Name, sex, DOB
    Set obj.FirstName="James"
    Set obj.LastName="Smith"
    Set obj.Sex="M"
    Set obj.DOB=obj.DOBDisplayToLogical("2000-09-30")

    // Inserts full birth name information for the patient
    Set tName = ##class(HS.Types.PersonName).%New()
    Set tName.Prefix = "Mr."
    Set tName.Given = "James"
    Set tName.Middle = "Henry"
    Set tName.Family = "Smith"
    Set tName.Suffix = "IV"
    Set tName.Type="Birth"
    Do obj.Names.Insert(tName)

    // Inserts name of patient's spouse
    Set tName = ##class(HS.Types.PersonName).%New()
    Set tName.Prefix = "Mx."
    Set tName.Given = "Pat"
    Set tName.Middle = "A."
    Set tName.Family = "Henderson"
    Set tName.Suffix = ""
    Set obj.SpousesName=tName

    // Patient ID
    Set obj.MRN="1111222"
    Set obj.AssigningAuthority="EXTERNAL"  // refers to an Assigning Authority entry in the OID Registry
    Set obj.Facility="EXTERNAL"    // refers to a Facility entry in the OID Registry

    // Address 1
    Set addr=##class(HS.Types.Address).%New()
    Set addr.City="Somewhere"
    Set addr.State="SW"
    Set addr.StreetLine="123 Money Street"
    Set addr.Use="HP"   // Primary Home address
    Do obj.Addresses.Insert(addr)

    // Address 2
    Set addr=##class(HS.Types.Address).%New()
    Set addr.City="Anywhere"
    Set addr.StreetLine="456 Any Street"
    Set addr.Use="WP"   // Work Place address
    Do obj.Addresses.Insert(addr)

    //Telephone
    Set tel=##class(HS.Types.Telecom).%New()
    Set tel.PhoneCountryCode="1"
    Set tel.PhoneAreaCode=705
    Set tel.PhoneNumber=5551212
    Set tel.Use="HP"   // Primary Home phone
    Set tel.Type="L"   // Landline
    Do obj.Telecoms.Insert(tel)

    // Alternate ID
    Set tIdent=##class(HS.Types.Identifier).%New()
    Set tIdent.Root="Other.AA"   // refers to an Assigning Authority entry in the OID Registry
    Set tIdent.Extension="98754321"
    Do obj.Identifiers.Insert(tIdent)
    
    // Send to the routing service (or directly to HS.IHE.PIXv3.Source.Operations)
    Do ##class(HS.Test.Service).SendSync(obj,.r) 
    Quit
  }
FeedbackOpens in a new tab