DCMTK + Orthanc

I am not sure if this should be here but i’ll ask in case anyone can help me.
I want to query orthanc via findscu and movescu with multiple value query. Using findscu this is

findscu localhost 4242 -k StudyInstanceUID=“uid1” -S -aet FINDSCU -k QueryRetrieveLevel=“PATIENT”

But i want to retrieve the study with uid1 and other with uid2 in the same query. In sql this would be something like this:

Select * from dicom where studyinstanceuid = uid1 or studyinstanceuid = uid2

I think this is possible with dcmtk, but no idea how to do it. Anyone did something like this?

I’ve found a way to do it with findscu, but it does not work the same way with movescu. Help is still needed for movescu.
When i do it the log shows:

I0703 17:01:17.529969 CommandDispatcher.cpp:491] Association Received from AET FINDSCU on IP 127.0.0.1
I0703 17:01:17.535213 main.cpp:187] Incoming connection from AET FINDSCU on IP 127.0.0.1, calling AET ANY-SCP
I0703 17:01:17.538721 CommandDispatcher.cpp:689] Association Acknowledged (Max Send PDV: 16372)
I0703 17:01:17.542230 main.cpp:200] Incoming Move request from AET FINDSCU on IP 127.0.0.1, calling AET ANY-SCP
W0703 17:01:17.545285 OrthancMoveRequestHandler.cpp:179] Move-SCU request received for AET “FINDSCU”
I0703 17:01:17.547792 OrthancMoveRequestHandler.cpp:187] (0020,000d) StudyInstanceUID = 1.3.6.1.4.1.14519.5.2.1.4334.1501.305837811806532074576487712656\1.3.6.1.4.1.14519.5.2.1.4334.1501.195431795666397384281132633112
E0703 17:01:17.555316 MoveScp.cpp:192] IMoveRequestHandler Failed: Bad request
I0703 17:01:17.560322 CommandDispatcher.cpp:892] DUL Peer Requested Release
I0703 17:01:17.561323 CommandDispatcher.cpp:899] Association Release

In case someone is looking a way to do it with findscu you have to do it like this, using \ separator:

findscu localhost 4242 -k StudyInstanceUID=“1.3.6.1.4.1.14519.5.2.1.4334.1501.305837811806532074576487712656\1.3.6.1.4.1.14519.5.2.1.4334.1501.195431795666397384281132633112” -S -aet FINDSCU -k QueryRetrieveLevel=“STUDY”

Hello,

I don’t think such a C-MOVE request complies the DICOM standard, but this is just my own gut feeling.

Please bring us the proof this is a valid behavior according to the DICOM standard, before we start considering implementing it in Orthanc:
https://www.dicomstandard.org/current/

You might also ask the question to the DICOM discussion group:
https://groups.google.com/forum/#!forum/comp.protocols.dicom

Regards,
Sébastien-