Supplement MPPS Attributes - dcm4che/dcm4chee-arc-light GitHub Wiki
Modality Performed Procedure Steps sent from modalities to the archive may not contain certain DICOM attributes in it. Configure following coercion to supplement missing attributes information.
The attributes supplemented to the dataset are only present in the database.
This howto will provide configuration, test and verification steps for :
See Important Notes.
Additionally, refer Where to configure Archive Attribute Coercion rules
Device which will be used in coercion. DICOM attributes specific fields configured on this device will be supplemented in DICOM MPPS sent to archive, when the coercion gets applied.
In Configuration
menu - Devices
tab, add a device (eg. mppsscu) containing attributes to be supplemented which will be referenced by the archive device dcm4chee-arc
Create an LDIF file for following device
version: 1
dn: dicomDeviceName=mppsscu,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
changetype: add
dicomInstalled: TRUE
dicomIssuerOfPatientID: Site A&1.2.40.0.13.1.1.999.111.1111&ISO
dicomDeviceName: mppsscu
objectClass: dicomDevice
objectClass: dcmDevice
dicomPrimaryDeviceType: CT
dicomIssuerOfAdmissionID: Site A&1.2.40.0.13.1.1.999.111.1111&ISO
dicomIssuerOfAccessionNumber: Site A&1.2.40.0.13.1.1.999.111.1111&ISO
and import it into LDAP using ldapmodify command line utility
ldapmodify -xW -Dcn=admin,dc=dcm4che,dc=org -f config.ldif
Create an LDIF file for following coercion
version: 1
dn: cn=Supplement MPPS,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
changetype: add
dcmSOPClass: 1.2.840.10008.3.1.2.3.3
dcmDIMSE: N_CREATE_RQ
dicomTransferRole: SCU
dcmProperty: SendingApplicationEntityTitle=MPPSSCU
objectClass: dcmArchiveAttributeCoercion2
dcmSupplementFromDeviceReference: dicomDeviceName=mppsscu,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
dcmURI: sup-from-dev:
cn: Supplement MPPS
and import it into LDAP using ldapmodify command line utility
ldapmodify -xW -Dcn=admin,dc=dcm4che,dc=org -f config.ldif
Send MPPS for a test study to archive using mppsscu tool.
mppsscu -s AdmissionID=ADM123 -s AccessionNumber=ACC123 -c DCM4CHEE@localhost:11112 ~/work/testdata/DICOM/modality/US/US2
In archive server log at $WILDFLY_HOME/standalone/log/server.log
22:35:49,092 INFO [org.dcm4che3.net.Connection] (EE-ManagedExecutorService-default-Thread-1) Accept connection Socket[addr=/127.0.0.1,port=41549,localport=11112]
22:35:49,124 INFO [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) >> A-ASSOCIATE-RQ
22:35:49,125 INFO [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) << A-ASSOCIATE-AC
22:35:49,164 INFO [org.dcm4che3.net.Dimse] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) >> 1:N-CREATE-RQ[pcid=3
cuid=1.2.840.10008.3.1.2.3.3 - Modality Performed Procedure Step SOP Class
tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
22:35:49,167 INFO [org.dcm4chee.arc.coerce.impl.SupplementFromDeviceCoercionProcessor] (EE-ManagedExecutorService-default-Thread-14) Supplement MPPS from device: mppsscu using coercion ArchiveAttributeCoercion2[cn=Supplement MPPS, priority=0, DIMSE=N_CREATE_RQ, role=SCU, cuids=[1.2.840.10008.3.1.2.3.3], conditions={SendingApplicationEntityTitle=MPPSSCU}, uri=sup-from-dev:, description=null, onFailure=RETHROW, sufficient=false, attributeUpdatePolicy=MERGE, mergeAttributes=[], deviceCoercionParam=mppsscu, otherCoercionParams={}]
22:35:49,180 INFO [org.dcm4chee.arc.patient.impl.PatientServiceEJB] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4): Create Patient[pk=111, id=PatientID[pk=111, id=54321, issuer=Site A&1.2.40.0.13.1.1.999.111.1111&ISO], name=HD11^SAMPLE IMAGES]
22:35:49,311 INFO [org.dcm4chee.arc.hl7.psu.HL7PSUScheduler] (EE-ManagedExecutorService-default-Thread-14) Missing MPPS attributes PlacerOrderNumberImagingServiceRequest and FillerOrderNumberImagingServiceRequest in ScheduledStepAttributesSequence
22:35:49,311 INFO [org.dcm4che3.net.Dimse] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) << 1:N-CREATE-RSP[pcid=3, status=0H
cuid=1.2.840.10008.3.1.2.3.3 - Modality Performed Procedure Step SOP Class
iuid=2.25.294807648384915830090954751481454189660 - ?
tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
22:35:49,316 INFO [org.dcm4che3.net.Dimse] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) >> 2:N-SET-RQ[pcid=3
cuid=1.2.840.10008.3.1.2.3.3 - Modality Performed Procedure Step SOP Class
iuid=2.25.294807648384915830090954751481454189660 - ?
tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
22:35:49,340 INFO [org.dcm4chee.arc.hl7.psu.HL7PSUScheduler] (EE-ManagedExecutorService-default-Thread-14) Missing MPPS attributes PlacerOrderNumberImagingServiceRequest and FillerOrderNumberImagingServiceRequest in ScheduledStepAttributesSequence
22:35:49,340 INFO [org.dcm4che3.net.Dimse] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) << 2:N-SET-RSP[pcid=3, status=0H
cuid=1.2.840.10008.3.1.2.3.3 - Modality Performed Procedure Step SOP Class
iuid=2.25.294807648384915830090954751481454189660 - ?
tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
22:35:49,342 INFO [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) >> A-RELEASE-RQ
22:35:49,342 INFO [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-14) DCM4CHEE<-MPPSSCU(4) << A-RELEASE-RP
22:35:49,393 INFO [org.dcm4che3.net.Association] (EE-ManagedScheduledExecutorService-default-Thread-7) DCM4CHEE<-MPPSSCU(4): close Socket[addr=view-localhost/127.0.0.1,port=41549,localport=11112]
In archive UI