FHIR return code 201 or 200
Needs some help with FHIR return code 200 or 201 when processing HL7 messages in HealthConnect.
Issue:
1. If FHIR code is 200 or 201, HealthConnect keep processing HL7 messages
2. If FHIR code is NOT 200 or 201, HealthConnect keep suspend the HL7 messages in the messages queue, then keep processing NEXT subsequent HL7 messages in the TEXT file if the FHIR code is 200 or 201
3. I am also using following "Reply Code Actions" in Operation settings (:?R=S,:?E=S,:~=S,:?A=C,:*=S,:I?=W,:T?=C)
Please advice if I have a "if condition check" for FHIR codes 200 or 201, what "Reply Code Actions" I should use? or any other logic to achieve 1,2,3 issues above.
Comments
Hi,
Can you try Reply Code Actions is 'E=R'. It will retry when Error occur and Failure Timeout is -1.
Thanks,
Hi, thank you for the reply.
Can I use :?E=S,:~=S,:*=S ?
What is Failure Timeout is -1 means?
What is the difference between :?E=S or E=S, or is it same?
Hi,
When error occurs, E=R attemps to retry, number of retries depends on failure timeout. Default Failure Timeout is 15, so it attempts 3 times retry before failing, and if it is set to 1, it attempts until the response is received.
The error message is suspended when :?E=S or E=S occurs, and it moves on to the next message after the error is dealt with.
Thanks
Thank you for the reply.
If set failure timeout to -1, it will not retry?
:?E=S or E=S, is same?
sorry trying to understand what the ( :? ) means?
Hi Mirza,
If set failure timeout to -1, it will not retry?
Failure Timeout is -1 = retry forever (no time limit) It will keep retrying until it gets a response.
:?E=S or E=S is same?
:?E -- it looks at the value in MSA:1 and evaluates it by HL7 acknowledgment class. Ex: 'AE' or 'CE'
It is only for HL7 messages.
E - it is a standard Error code, E only when dealing with non-HL7 or custom reply codes.
what the ( :? ) means?
“Match by class of HL7 acknowledgment code, not exact value.”
It looks at MSA:1 in the response and groups codes by meaning.
:?A - matches AA or CA values (Accept)
:?E - matches AE or CE values (Error)
:?R - matches AR or CR values (Reject)
Thanks,