GETSCU test failed?
Moderator: Moderator Team
-
- Posts: 8
- Joined: Tue, 2019-02-12, 09:41
GETSCU test failed?
Windows 10. DCMTK3.6.3
I am trying to test the GETSCU command with the https://www.dicomserver.co.uk/.
I know that the server supports C-GET: "Support for C-STORE, C-FIND, C-GET & C-MOVE"
I so far tested the C-FIND and C-MOVE and they worked perfectly.
However, when I use the following command: getscu -d -aet TEST -aec VMSDBD www.dicomserver.co.uk 104 -S -k "0010,0020=PAT023" -k "0020,000d=1.2.826.0.1.3680043.11.129"
to retrieve this study from the database https://dicomserver.co.uk/MWLTestData.HTML: 147 PAT023 o'mally Clive Mr M Mar 28 1953 Davison^^^Dr Evans^^^Dr CR Nov 26 2005 10:20AM CR1 CR Left Knee 1.2.826.0.1.3680043.11.129 29 1 Test Hospital CR1
I got this command output but not file:
---->
: Association Accepted (Max Send PDV: 65524)
I: Sending C-GET Request
D: ===================== OUTGOING DIMSE MESSAGE ====================
D: Message Type : C-GET RQ
D: Presentation Context ID : 1
D: Message ID : 1
D: Affected SOP Class UID : GETStudyRootQueryRetrieveInformationModel
D: Data Set : present
D: Priority : medium
D: -----------------------------------------------------------------
D: # Dicom-Data-Set
D: # Used TransferSyntax: Little Endian Explicit
D: (0010,0020) LO [PAT023] # 6, 1 PatientID
D: (0020,000d) UI [1.2.826.0.1.3680043.11.129] # 26, 1 StudyInstanceUID
D: ======================= END DIMSE MESSAGE =======================
D: DcmDataset::read() TransferSyntax="Little Endian Implicit"
I: Received C-GET Response
D: ===================== INCOMING DIMSE MESSAGE ====================
D: Message Type : C-GET RSP
D: Presentation Context ID : 1
D: Message ID Being Responded To : 1
D: Affected SOP Class UID : GETStudyRootQueryRetrieveInformationModel
D: Remaining Suboperations : 0
D: Completed Suboperations : 0
D: Failed Suboperations : 0
D: Warning Suboperations : 0
D: Data Set : none
D: DIMSE Status : 0x0000: Success
D: ======================= END DIMSE MESSAGE =======================
D: Handling C-GET Response
D: Received final C-GET response, no more C-GET responses expected
I: Final status report from last C-GET message:
I: Number of Remaining Suboperations : 0
I: Number of Completed Suboperations : 0
I: Number of Failed Suboperations : 0
I: Number of Warning Suboperations : 0
I: Releasing Association
D: Cleaning up internal association and network structures
<------
It does not seem to have an error, but I am probably missing something. I already double-check that the getscu.exe is whitelist for the inbound rules of the firewall.
I am trying to test the GETSCU command with the https://www.dicomserver.co.uk/.
I know that the server supports C-GET: "Support for C-STORE, C-FIND, C-GET & C-MOVE"
I so far tested the C-FIND and C-MOVE and they worked perfectly.
However, when I use the following command: getscu -d -aet TEST -aec VMSDBD www.dicomserver.co.uk 104 -S -k "0010,0020=PAT023" -k "0020,000d=1.2.826.0.1.3680043.11.129"
to retrieve this study from the database https://dicomserver.co.uk/MWLTestData.HTML: 147 PAT023 o'mally Clive Mr M Mar 28 1953 Davison^^^Dr Evans^^^Dr CR Nov 26 2005 10:20AM CR1 CR Left Knee 1.2.826.0.1.3680043.11.129 29 1 Test Hospital CR1
I got this command output but not file:
---->
: Association Accepted (Max Send PDV: 65524)
I: Sending C-GET Request
D: ===================== OUTGOING DIMSE MESSAGE ====================
D: Message Type : C-GET RQ
D: Presentation Context ID : 1
D: Message ID : 1
D: Affected SOP Class UID : GETStudyRootQueryRetrieveInformationModel
D: Data Set : present
D: Priority : medium
D: -----------------------------------------------------------------
D: # Dicom-Data-Set
D: # Used TransferSyntax: Little Endian Explicit
D: (0010,0020) LO [PAT023] # 6, 1 PatientID
D: (0020,000d) UI [1.2.826.0.1.3680043.11.129] # 26, 1 StudyInstanceUID
D: ======================= END DIMSE MESSAGE =======================
D: DcmDataset::read() TransferSyntax="Little Endian Implicit"
I: Received C-GET Response
D: ===================== INCOMING DIMSE MESSAGE ====================
D: Message Type : C-GET RSP
D: Presentation Context ID : 1
D: Message ID Being Responded To : 1
D: Affected SOP Class UID : GETStudyRootQueryRetrieveInformationModel
D: Remaining Suboperations : 0
D: Completed Suboperations : 0
D: Failed Suboperations : 0
D: Warning Suboperations : 0
D: Data Set : none
D: DIMSE Status : 0x0000: Success
D: ======================= END DIMSE MESSAGE =======================
D: Handling C-GET Response
D: Received final C-GET response, no more C-GET responses expected
I: Final status report from last C-GET message:
I: Number of Remaining Suboperations : 0
I: Number of Completed Suboperations : 0
I: Number of Failed Suboperations : 0
I: Number of Warning Suboperations : 0
I: Releasing Association
D: Cleaning up internal association and network structures
<------
It does not seem to have an error, but I am probably missing something. I already double-check that the getscu.exe is whitelist for the inbound rules of the firewall.
-
- DCMTK Developer
- Posts: 2503
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: GETSCU test failed?
You did not specify the QueryRetrieveLevel, which should probably be "STUDY".
In addition, you should first use findscu in order to find out whether the requested Study really exists on the server.
In addition, you should first use findscu in order to find out whether the requested Study really exists on the server.
-
- Posts: 8
- Joined: Tue, 2019-02-12, 09:41
Re: GETSCU test failed?
You were right, I was missing the QueryRetrieveLevel.
The following commands do the job:
Retrieve all data for PAT020:
or just the study that I want:
Thanks.
The following commands do the job:
Retrieve all data for PAT020:
Code: Select all
getscu -d -aet TEST -aec VMSDBD www.dicomserver.co.uk 104 -S -k QueryRetrieveLevel=Study -k "0010,0020=PAT020"
Code: Select all
getscu -d -aet TEST -aec VMSDBD www.dicomserver.co.uk 104 -S -k QueryRetrieveLevel=Study -k "0010,0020=PAT020" -k "0020,000d=1.2.826.0.1.3680043.11.125"
-
- DCMTK Developer
- Posts: 2503
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: GETSCU test failed?
The SCP seems to be rather relaxed regarding the requirements of the DICOM standard (because, strictly speaking, both requests are invalid):
- The value for QueryRetrieveLevel should be "STUDY" instead of "Study".
- In your first command line call ("Retrieve all data for PAT020"), you should use the Patient Root Information Model (option -P) and set QueryRetrieveLevel to "PATIENT".
- In your second command line call ("just the study that I want"), you should not specify the PatientID (-k "0010,0020=PAT020") since the unique key on study level is the StudyInstanceUID.
-
- Posts: 8
- Joined: Tue, 2019-02-12, 09:41
Re: GETSCU test failed?
ok, then I let me set the commands the correct way regarding the DICOM standard:
Code: Select all
getscu -d -aet TEST -aec VMSDBD www.dicomserver.co.uk 104 -P -k QueryRetrieveLevel=PATIENT -k "0010,0020=PAT020"
Code: Select all
getscu -d -aet TEST -aec VMSDBD www.dicomserver.co.uk 104 -S -k QueryRetrieveLevel=STUDY -k "0020,000d=1.2.826.0.1.3680043.11.125"
-
- DCMTK Developer
- Posts: 2503
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: GETSCU test failed?
Perfect!
Who is online
Users browsing this forum: Ahrefs [Bot], Baidu [Spider], Google [Bot] and 1 guest