Prefetch Studies on receive of HL7 messages - dcm4che/dcm4chee-arc-light GitHub Wiki
One can choose to prefetch some or all studies of a patient from an external archive on receive of HL7 messages for the patient specified in PID-3 of received HL7 message.
Configure a Remote Application Entity for :
- C-FIND SCP which is queried for Studies matching the specified Entity Selector
- C-MOVE SCP from which selected Studies are retrieved
- C-STORE SCP to which selected Studies are retrieved. (Note: This retrieve destination may be configured as own archive and/or external destination.
- Select the level on which the feature needs to be configured :
- To configure on Archive device level, go to
Menu -> Configuration -> Devices -> dcm4chee-arc -> Extensions -> Device Extension (Edit)-> Archive device extension (Edit)
. - To configure on Archive HL7 application extension level, go to
Menu -> Configuration -> Devices -> dcm4chee-arc -> Extensions -> Device Extension (Edit) -> Child Objects
. Select theHL7 application
for which this feature needs to be configured. Go to itsExtensions -> Archive HL7 Application extension (Edit)
.
- To configure on Archive device level, go to
- In its
Child Objects
addHL7 Prefetch Rule
. SpecifyName
,Queue Name
,Prefetch Priority
,Archive AE title
,Prefetch C-Find SCP
,Prefetch C-Move SCP
,Prefetch C-Store SCP
,Suppress Duplicate Retrieve Interval
andSave
.
Doing so will trigger prefetch of studies for patients (referenced in PID-3) whenever any accepted and acknowledged HL7 Message is received by the archive.
- Trigger prefetch of studies only for specific HL7 message(s) conditions.
-
Add one or more
Conditions
andSave
.This ensures that studies of patient(s) referenced in processed HL7 Message(s) shall be prefetched only if conditions specified match with the information available in the incoming HL7 Message.
- Trigger prefetch only for some studies based on certain conditions pertaining to the study/patient
-
Add one or more
Entity Selector
andSave
.For eg. if you set value as
priors=2&StudyAge=-5Y&ModalitiesInStudy=CT
, it meansselect at most 2 prior Studies not older than 5 years containing at least one CT Series
.
- Always ignore the Issuer of Patient ID present in incoming HL7 message(s)
-
Select
Ignore Assigning Authority of Patient ID
asALWAYS
andSave
.This ensures that Issuer of Patient ID present in incoming HL7 message(s) will not be considered to check for studies of this patient to be prefetched from the external archive.
- Prefetch studies of patient(s) only for a certain set of Matching or Non Matching Issuer of Patient ID(s)
-
Select
Ignore Assigning Authority of Patient ID
asMATCHING
orNON_MATCHING
. Add one or moreAssigning Authority of Patient ID
andSave
.This ensures that only the Matching or Non Matching Issuer of Patient ID(s) configured shall be matched with ones present in incoming HL7 message(s) and then for these patient(s) studies will be prefetched from external archive.
- Prefetch Studies only at certain scheduled times. eg. pre-fetch in off business hours or at scheduled arrival/examination of patient or some duration in advance before the patient is scheduled for arrival/examination. See Computing Scheduled Time for Retrieve Tasks
- Configure either of
-
Prefetch Date Time Field
: -
Prefetch Date Time Field
together withPrefetch In Advance
: - (optionally with) one or more
Prefetch Schedule
:
andSave
.
-
- Configure
Prefetch for Assigning Authority of Patient ID
if your application receives PID-3 with list of qualified patient identifiers, and the desired qualified patient identifier is not necessarily present in PID:3.1 and PID:3.4
One may either create a LDIF file (e.g.):
-
To configure on Archive device level,
version: 1 dn: cn=Default HL7 Prefetch Rule,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org objectClass: hl7PrefetchRule cn: Default HL7 Prefetch Rule dcmDuration: PT1H dicomAETitle: DCM4CHEE dcmPrefetchCFindSCP: EXT_ARCHIVE_AET dcmPrefetchCMoveSCP: EXT_ARCHIVE_AET dcmPrefetchCStoreSCP: STORESCP dcmProperty: MSH-3=FORWARD dcmEntitySelector: priors=2&StudyAge=-5Y&ModalitiesInStudy=CT dcmNullifyIssuerOfPatientID: MATCHING dcmIssuerOfPatientID: CANCER-HOSPITAL-ISSUER&1.2.40.0.13.1.1.999.111.11113&ISO
-
To configure on Archive HL7 application level,
version: 1 dn: cn=Default HL7 Prefetch Rule,hl7ApplicationName=DCM4CHEE|HL7APP,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org objectClass: hl7PrefetchRule cn: Default HL7 Prefetch Rule dcmDuration: PT1H dicomAETitle: DCM4CHEE dcmPrefetchCFindSCP: EXT_ARCHIVE_AET dcmPrefetchCMoveSCP: EXT_ARCHIVE_AET dcmPrefetchCStoreSCP: STORESCP dcmProperty: MSH-3=FORWARD dcmEntitySelector: priors=2&StudyAge=-5Y&ModalitiesInStudy=CT dcmNullifyIssuerOfPatientID: MATCHING dcmIssuerOfPatientID: CANCER-HOSPITAL-ISSUER&1.2.40.0.13.1.1.999.111.11113&ISO
and import it to the LDAP Server by using the ldapmodify command line utility.
-
or directly use its New Entry... function to create corresponding HL7 Prefetch Rule entries of Apache Directory Studio on Device Level (e.g.:
dicomDeviceName=dcm4chee-arc
) or on Archive HL7 Application Level (e.g:hl7ApplicationName=DCM4CHEE|HL7APP
) of the Archive Configuration.
One may refer to HL7 Prefetch Rule to understand the description of attributes.
Refer ISO-8601 Duration format for more know-how on Durations.
Go to the Control tab on Configuration page in archive UI and reload the configuration.
- hl7snd simulating the HL7 Sender (e.g. DSS/Order Filler), which sends the HL7 messages to archive.
- storescp simulating the external object destination STORESCP, to which received objects are forwarded.
-
Start STORESCP tool.
storescp -b <AET>:<port>
-
Send HL7 message to the archive for the same patient.
hl7snd -c <hostname>:<port> /pathToHL7Msg
-
It can be seen in the storescp tool window that the studies of this patient have been retrieved from the external archive and exported to the STORESCP destination.