Institution name insertion field in study information

187 views
Skip to first unread message

nutun

unread,
Feb 11, 2020, 1:46:28 AM2/11/20
to dcm4che
Hi,

I have deployed dcm4chee-arc-psql:5.21.0-secure (dockerized) on Debian OS. Data archival and viewing is working fine.

There are multiple modalities sending data to PACS. Some of the modalities are not sending Institution Name with images. Now I want that any data archives at PACS, dcm4chee adds/insert Institution Name with images. So that is any of the modality which  is not sending Institution Name, dcm4chee completes the information of Institution Name.

I am not using Modality Work List feature and need any solution without Modality Work List.

Need guidelines on this.

Vrinda Nayak

unread,
Feb 11, 2020, 5:08:14 AM2/11/20
to dcm...@googlegroups.com
You can do this in one of the three ways :
- Create Attribute Coercion on archive device level or archive application entity extension level and configure Merge Attributes
- Configure Supplement received MPPS and DICOM Objects with Attributes feature
- Configure Coerce received DICOM objects attributes by XSLT feature

nutun

unread,
Feb 12, 2020, 6:42:53 AM2/12/20
to dcm4che
Thank you Vrinda nayak for your reply.

I have tried the ways you guided but did not succeeded. I have added the Attribute Coercion and did the following configurations:

Name = Institute Name
DIMSE = C_STORE_RQ
DICOM Transfer Role = SCU
XSL Stylesheet URI = ${jboss.server.temp.url}/dcm4chee-arc/wildfly/configuration/institute-name.xsl
Supplement from Device = dcm4chee-arc
and saved the settings.

I have placed my "institute-name.xsl" file at /opt/wildfly/standalone/tmp/dcm4chee-arc/wildfly/configuration/institute-name.xsl (institute-name.xsl file is attached)

When I sent any data to server log shows the following error

  cuid=1.2.840.10008.5.1.4.1.1.4 - MR Image Storage
  iuid=1.2.156.14702.3.3506.66048054056.20200209.9032381.9 - ?
  tsuid=1.2.840.10008.1.2.4.70 - JPEG Lossless, Non-Hierarchical, First-Order Prediction (Process 14 [Selection Value 1])]
2020-02-12 16:29:07,881 ERROR [stderr] (EE-ManagedExecutorService-default-Thread-105) ERROR:  '/opt/wildfly/standalone/tmp/dcm4chee-arc/wildfly/configuration/institute-name.xsl (No such file or directory)'
2020-02-12 16:29:07,882 ERROR [stderr] (EE-ManagedExecutorService-default-Thread-105) FATAL ERROR:  'Could not compile stylesheet'
2020-02-12 16:29:07,883 ERROR [org.dcm4chee.arc.store.impl.StoreServiceImpl] (EE-ManagedExecutorService-default-Thread-105) DCM5190<-NABILPACS(51): Failed to compile XSL: ${jboss.server.temp.url}/dcm4chee-arc/wildfly/configuration/institute-name.xsl: javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
        at org.apache.xalan//org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:832)
        at __redirected.__TransformerFactory.newTemplates(__TransformerFactory.java:90)
        at org.dcm4...@5.21.0//org.dcm4che3.io.SAXTransformer.newTemplates(SAXTransformer.java:132)
        at org.dcm4...@5.21.0//org.dcm4che3.io.TemplatesCache.get(TemplatesCache.java:78)
        at deployment.dcm4chee-arc-ear-5.21.0-psql-secure.ear.dcm4chee-arc-store-5.21.0.jar//org.dcm4chee.arc.store.impl.StoreServiceImpl.coerceAttributesByXSL(StoreServiceImpl.java:531)
        at deployment.dcm4chee-arc-ear-5.21.0-psql-secure.ear.dcm4chee-arc-store-5.21.0.jar//org.dcm4chee.arc.store.impl.StoreServiceImpl.coerceAttributes(StoreServiceImpl.java:513)
        at deployment.dcm4chee-arc-ear-5.21.0-psql-secure.ear.dcm4chee-arc-store-5.21.0.jar//org.dcm4chee.arc.store.impl.StoreServiceImpl.store(StoreServiceImpl.java:185)
        at deployment.dcm4chee-arc-ear-5.21.0-psql-secure.ear.dcm4chee-arc-store-5.21.0.jar//org.dcm4chee.arc.store.impl.StoreServiceImpl$Proxy$_$$_WeldClientProxy.store(Unknown Source)
        at deployment.dcm4chee-arc-ear-5.21.0-psql-secure.ear//org.dcm4chee.arc.store.scp.CStoreSCP.store(CStoreSCP.java:36)
        at org.dcm...@5.21.0//org.dcm4che3.net.service.BasicCStoreSCP.onDimseRQ(BasicCStoreSCP.java:72)
        at jdk.internal.reflect.GeneratedMethodAccessor148.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at org.jboss...@3.1.2.Final//org.jboss.weld.bean.proxy.AbstractBeanInstance.invoke(AbstractBeanInstance.java:38)
        at org.jboss...@3.1.2.Final//org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:106)
        at deployment.dcm4chee-arc-ear-5.21.0-psql-secure.ear//org.dcm4che3.net.service.DicomService$879445871$Proxy$_$$_WeldClientProxy.onDimseRQ(Unknown Source)
        at org.dcm...@5.21.0//org.dcm4che3.net.service.DicomServiceRegistry.onDimseRQ(DicomServiceRegistry.java:86)
        at org.dcm...@5.21.0//org.dcm4che3.net.ApplicationEntity.onDimseRQ(ApplicationEntity.java:474)
        at org.dcm...@5.21.0//org.dcm4che3.net.Association.onDimseRQ(Association.java:718)
        at org.dcm...@5.21.0//org.dcm4che3.net.PDUDecoder.decodeDIMSE(PDUDecoder.java:467)
        at org.dcm...@5.21.0//org.dcm4che3.net.Association.handlePDataTF(Association.java:701)
        at org.dcm...@5.21.0//org.dcm4che3.net.State$4.onPDataTF(State.java:103)
        at org.dcm...@5.21.0//org.dcm4che3.net.Association.onPDataTF(Association.java:697)
        at org.dcm...@5.21.0//org.dcm4che3.net.PDUDecoder.nextPDU(PDUDecoder.java:177)
        at org.dcm...@5.21.0//org.dcm4che3.net.Association$2.run(Association.java:534)
        at org.jbo...@18.0.0.Final//org.jboss.as.ee.concurrent.ControlPointUtils$ControlledRunnable.run(ControlPointUtils.java:105)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.internal.ManagedFutureTask.run(ManagedFutureTask.java:141)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:830)
        at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl$ManagedThread.run(ManagedThreadFactoryImpl.java:250)

2020-02-12 16:29:07,885 INFO  [org.dcm4chee.arc.mima.SupplementAssigningAuthorities] (EE-ManagedExecutorService-default-Thread-105) Supplement composite object from device: dcm4chee-arc

Vrinda Nayak

unread,
Feb 12, 2020, 9:05:40 AM2/12/20
to dcm4che
Supplement from Device attribute is not required if you are coercing using stylesheet, also the DICOM Transfer Role value shall be SCP and not SCU

nutun

unread,
Feb 13, 2020, 12:07:13 AM2/13/20
to dcm4che
Thank you Vrinda Nayak for your help.

My goal achieved through Merger Attribute option.
Reply all
Reply to author
Forward
0 new messages