Question
· Mar 31, 2022

DICOM: Do we get "short" response when Simulating to be Origin System from command line to DICOM TCP Service, with respect to a classic DICOM Studio Service??

Good morning,

First of all, thank you very much in advance for reading and responding.

Also, thank you for any support, because it is a relief, support, contribution, help to have people with more understanding, knowledge and practice, reading, and thinking this doubt.

 

There is the following need:

Two 2 circuits are available:

1st DICOM Circuit of "Studio" ( Classic Service ).

Service: class: DICOM.BS.QueryService

Process: class: DICOM.BP.QueryProcess

Operation: class: EnsLib.DICOM.Operation.TCP

We test from the "Console" of the "Studio" by means of:

do ##class(DICOM.BS.QueryService).TestFind("102030")

In the previous example, "102030" is the user's PatientID

The interesting thing here is the trace:

On a visual level:

We observe the following information in the request which we send to Destination System, in the DICOM.Document:

We receive a lot of content:

However, using the other circuit there are discrepancies:

 

2nd TCP DICOM circuit( It is tested by command line ).

Service: class: EnsLib.DICOM.Service.TCP

Process: class: DICOM.BP.QueryProcess

Operation: class: EnsLib.DICOM.Operation.TCP

To test this second circuit we execute the following line into a command line:

./findscu -b VNAPRE -c ESBPRE@10.XWZ.4.ABC:19XYZ -m PatientID="102030"

Being the visual trace for this 2nd circuit the following one:

Being the information sent to the target system by means of DICOM.Document:

Here comes the question:

Why does very little information come out in this response, being replied to the 2nd circuit?

Why does very little information come out in this response, being replied to the 2nd circuit?

In particular the trace at command line level is detailed here:

$ ./findscu -b VNAPRE -c ESBPRE@10.[IP_Destino]:19586 -m PatientID="102030"
10:30:38.820 INFO  - Initiate connection from 0.0.0.0/0.0.0.0:0 to 10.[IP_Destino]:19586
10:30:38.867 INFO  - Established connection Socket[addr=/10.[IP_Destino],port=19586,localport=52515]
10:30:38.888 DEBUG - /10.[IP_Origen]:52515->/10.[IP_Destino]:19586(1): enter state: Sta4 - Awaiting transport connection opening to complete
10:30:38.890 INFO  - VNAPRE->ESBPRE(1) << A-ASSOCIATE-RQ
10:30:38.890 DEBUG - A-ASSOCIATE-RQ[
  calledAET: ESBPRE
  callingAET: VNAPRE
  applicationContext: 1.2.840.10008.3.1.1.1 - DICOM Application Context Name
  implClassUID: 1.2.40.0.13.1.3
  implVersionName: null
  maxPDULength: 16378
  maxOpsInvoked/maxOpsPerformed: 0/0
  PresentationContext[id: 1
    as: 1.2.840.10008.5.1.4.1.2.2.1 - Study Root Query/Retrieve Information Model - FIND
    ts: 1.2.840.10008.1.2 - Implicit VR Little Endian
    ts: 1.2.840.10008.1.2.1 - Explicit VR Little Endian
    ts: 1.2.840.10008.1.2.2 - Explicit VR Big Endian (Retired)
  ]
]
10:30:38.923 DEBUG - VNAPRE->ESBPRE(1): enter state: Sta5 - Awaiting A-ASSOCIATE-AC or A-ASSOCIATE-RJ PDU
10:30:38.936 INFO  - VNAPRE->ESBPRE(1) >> A-ASSOCIATE-AC
10:30:38.937 DEBUG - A-ASSOCIATE-AC[
  calledAET: ESBPRE
  callingAET: VNAPRE
  applicationContext: 1.2.840.10008.3.1.1.1 - DICOM Application Context Name
  implClassUID: 1.2.840.114475.1
  implVersionName: ENSDICOM
  maxPDULength: 16378
  maxOpsInvoked/maxOpsPerformed: 1/1
  PresentationContext[id: 1
    result: 0 - acceptance
    ts: 1.2.840.10008.1.2 - Implicit VR Little Endian
  ]
]
10:30:38.938 DEBUG - VNAPRE->ESBPRE(1): enter state: Sta6 - Association established and ready for data transfer
10:30:38.946 INFO  - VNAPRE->ESBPRE(1) << 1:C-FIND-RQ[pcid=1, prior=0
  cuid=1.2.840.10008.5.1.4.1.2.2.1 - Study Root Query/Retrieve Information Model - FIND
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
10:30:38.947 DEBUG - VNAPRE->ESBPRE(1) << 1:C-FIND-RQ Command:
(0000,0002) UI [1.2.840.10008.5.1.4.1.2.2.1] AffectedSOPClassUID
(0000,0100) US [32] CommandField
(0000,0110) US [1] MessageID
(0000,0700) US [0] Priority
(0000,0800) US [0] CommandDataSetType

10:30:39.006 DEBUG - VNAPRE->ESBPRE(1) << 1:C-FIND-RQ Dataset:
(0008,0052) CS [STUDY] QueryRetrieveLevel
(0010,0020) LO [102030] PatientID

10:30:39.170 INFO  - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP[pcid=1, status=ff00H
  cuid=1.2.840.10008.5.1.4.1.2.2.1 - Study Root Query/Retrieve Information Model - FIND
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
10:30:39.171 DEBUG - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP Command:
(0000,0002) UI [1.2.840.10008.5.1.4.1.2.2.1] AffectedSOPClassUID
(0000,0100) US [32800] CommandField
(0000,0120) US [1] MessageIDBeingRespondedTo
(0000,0800) US [65278] CommandDataSetType
(0000,0900) US [65280] Status

10:30:39.173 DEBUG - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP Dataset:
(0008,0052) CS [STUDY] QueryRetrieveLevel
(0008,0054) AE [VNAPRE] RetrieveAETitle
(0010,0020) LO [102030] PatientID

10:30:39.175 INFO  - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP[pcid=1, status=ff00H
  cuid=1.2.840.10008.5.1.4.1.2.2.1 - Study Root Query/Retrieve Information Model - FIND
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
10:30:39.175 DEBUG - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP Command:
(0000,0002) UI [1.2.840.10008.5.1.4.1.2.2.1] AffectedSOPClassUID
(0000,0100) US [32800] CommandField
(0000,0120) US [1] MessageIDBeingRespondedTo
(0000,0800) US [65278] CommandDataSetType
(0000,0900) US [65280] Status

10:30:39.176 DEBUG - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP Dataset:
(0008,0052) CS [STUDY] QueryRetrieveLevel
(0008,0054) AE [VNAPRE] RetrieveAETitle
(0010,0020) LO [102030] PatientID

10:30:39.176 INFO  - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP[pcid=1, status=ff00H
  cuid=1.2.840.10008.5.1.4.1.2.2.1 - Study Root Query/Retrieve Information Model - FIND
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
10:30:39.176 DEBUG - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP Command:
(0000,0002) UI [1.2.840.10008.5.1.4.1.2.2.1] AffectedSOPClassUID
(0000,0100) US [32800] CommandField
(0000,0120) US [1] MessageIDBeingRespondedTo
(0000,0800) US [65278] CommandDataSetType
(0000,0900) US [65280] Status

10:30:39.177 DEBUG - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP Dataset:
(0008,0052) CS [STUDY] QueryRetrieveLevel
(0008,0054) AE [VNAPRE] RetrieveAETitle
(0010,0020) LO [102030] PatientID

We note that there are 3 responses:

10:30:39.170 INFO - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP

10:30:39.175 INFO - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP

10:30:39.176 INFO - VNAPRE->ESBPRE(1) >> 1:C-FIND-RSP

 

However, why is there very little information in the response transmitted by the destination system?
 

Specifically, in the 1st circuit we get, some more interesting data as:

SpecificCharacterSet, StudyDate, StudyDescription, PatientName, StudyInstanceUID

Which are being spotted here:

While in the DICOM TCP, in the 2nd circuit:

We only get from the destination system the following data: QueryRetrieveLevel, RetrieveAETitle, PatientID

Which is being marked and spotted in the next picture:

Could you please provide us with documentation, code examples, visual traces, or references of any kind that you can provide us with for debugging?

Thank you very much in advance for your time in reading and answering.

 

We have read:

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

https://github.com/intersystems-ib/iris-dicom-sample

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...

 

 

Could you please provide us with documentation, code examples, visual traces, or references of any kind that you can provide us with for debugging?

 

Thank you very much in advance for your time in reading and answering.

Best regards

Product version: HealthShare 2017.2
$ZV: 2017.2.1
Discussion (0)1
Log in or sign up to continue