Duplicate Patients in FHIR Repository

Primary tabs

Hoping someone can help,

I have the "Sample FHIR Production" installed ( as described in the documentation) with the following Components:

Service: HS.Gateway.ECR.SDA3XMLFileService

Processes: HS.FHIR.FromSDA.DTL.Transaction.Process

Operations: HS.FHIR.Repository.Operations

When a patient's data gets updated in my application a new SDA3 message is generated and processed by the FromSDA DTL. The Repository Stores that data as a New patient ( i.e. when I query the Repo they have different IDs "resource":{ "resourceType":"Patient", "id":"4", ) . How do I get the record in the Repository to update rather than store as a new Patient record?

Do I have to create a BPL which specifies that I want to do an "update" rather than a "create" ?

Perhaps it's just some field that I need to populate in my SDA3 ?

Any suggestions or code samples would be most helpful.

Thanks

Conor

 

  • 0
  • 0
  • 488
  • 3
  • 1

Answers

Hi Conor,

There is no support for resource matching or for FHIR conditional update in the product at this time.  The SDA to FHIR transform functionality will always generate new resource ids for all the FHIR resources that it generates.

There is no way to achieve what you're looking for in the current product, aside from developing a custom business operation to manipulate the FHIR Bundle to implement your own resource matching before passing it on to HS.FHIR.Repository.Operations.  That would be a rather complex undertaking though.

Regards,

Paul Lomayesva

Developer

InterSystems Corporation

Comments

I think you stand a better chance of getting responses to this if you move it to the HealthShare group and tag it with a HealthShare-related tag. The "Developer Community" tag and the "Developer Community Feedback" group are intended for posts/questions about the DC forum itself, not the InterSystems products. Posts tagged/classified like that don't appear on people's general new feed, AFAIK.