I want to get this uid in order to get the file from dicom server as these parameters are needed by the function addStoreTransferCapability
.The kit I am using is dcm4chee and the language is java.
Asked
Active
Viewed 1,084 times
-2

Asad Ali
- 15
- 7
-
What problems are you having finding these values? http://stackoverflow.com/help/how-to-ask – cneller Nov 25 '15 at 16:35
-
its returning null following is the code: dcmqr.setQueryLevel(DcmQR.QueryRetrieveLevel.PATIENT); dcmqr.setQueryLevel(DcmQR.QueryRetrieveLevel.STUDY); dcmqr.setQueryLevel(DcmQR.QueryRetrieveLevel.SERIES); dcmqr.setQueryLevel(DcmQR.QueryRetrieveLevel.IMAGE); dcmqr.addReturnKey(Tag.toTagPath("SOPClassUID")); dcmqr.addReturnKey(Tag.toTagPath("PatientName")); dcmqr.addReturnKey(Tag.toTagPath("StudyInstanceUID")); – Asad Ali Nov 25 '15 at 17:26
-
I'd suggest you create a new question with your specific issue and what you've tried. It's not clear what is null from your code, nor how it relates to your original issue. Again, stackoverflow.com/help/how-to-ask – cneller Nov 25 '15 at 20:21
-
Actually I cant ask further questions: Here is what is happening in the above code I am setting the query level and the return keys I have also set TransferSyntaxUID as a return key . Query is being made and when I check the results for tsuid it returns null. dcmqr.addReturnKey(Tag.toTagPath("TransferSyntaxUID")); System.out.print("Here are the tags:"+ result.get(0).getString(Tag.TransferSyntaxUID)+ "\n"); – Asad Ali Nov 26 '15 at 06:18
1 Answers
0
The TransferSyntaxUID is not a subject to the persistent storage of the DICOM object, it is rather used in "presentation context negotiation" - which format can the sender provide and which format can the receiver accept - when the image is actually transferred. That is why you cannot query for it in a C-FIND request (I suppose that is what you are doing).
Why do you think that you want to query for it?
(I apologize for not posting this as a comment, but I am new to stackoverflow and do not have sufficient reputation to do so).

Markus Sabin
- 3,916
- 14
- 32
-
You cannot "query to retrieve". Query (C-FIND) and retrieve (C-MOVE) are different services. The typical process is: 1: Query for a study by specifying patient and study attributes in a C-FIND request. 2: Trigger a C-MOVE-request conveying the StudyInstanceUID received through C-FIND and the destination AET. 3: The C-MOVE request should trigger a C-STORE request to your system on the remote server. Your Storage Service Class Provider will then receive a list of presentation contexts in association negotiation. Then you can decide which Transfersyntax is accepted on your end. – Markus Sabin Nov 26 '15 at 08:26
-
DICOM object transfer involves a lot of knowledge of the DICOM standard. I can highly recommend this great introduction: http://www.course-as.ru/download/pdf/DICOM/CookBook.pdf – Markus Sabin Nov 26 '15 at 08:30
-
For this process I am using dcm4chee kit wirtten in java. It has a function named addStoreTransferCapability that requires two inputs as arguments one is SOPclass uid and other is transfer syntax UID (data type an array of strings ) so is anywhere defined number of transfer syntax uids ??? or – Asad Ali Nov 26 '15 at 08:51
-
Not sure if there is a complete table somewhere in the standard. I like to use the one of my favorite DICOM toolkit: http://support.dcmtk.org/docs/dcuid_8h-source.html – Markus Sabin Nov 26 '15 at 09:43
-
ok I moved a bit when I query at image level in order to get the images I get error missing unique key attribute (0020,000E) at series level – Asad Ali Nov 26 '15 at 10:17
-
In this case: You have to include the identifying information from the higher levels: Pat-ID, Study UID, Series UID. Sorry, I can just repeat my recommendation to get familiar with the DICOM standard first or use a toolkit that does not require knowledge of the DICOM standard. – Markus Sabin Nov 26 '15 at 11:53