Implimenting C-FIND (SCP)

663 views
Skip to first unread message

Chris Horn

unread,
Oct 22, 2012, 5:41:33 PM10/22/12
to fo-d...@googlegroups.com
I've been working on implementing C-FIND and I have the SCP running and querying my Database and building a dicom data set.
 
the SCP implements IDicomCFindProvider
in public IEnumerable<DicomCFindResponse> OnCFindRequest(DicomCFindRequest request)
I check the DicomQueryRetrieveLevel to determin the Database query I need
I build a data set and add it to the responce object

this seems to work well for a client created with fo-Dicom
I get get mixed results with clearcanvas, I use the the clearcanvas image viewer app it does not seem to the responce, however if I use the DICOM sample app from cc I get a the responce and all seems good.

if I try and query from Oisrix or any DCMTK based product I get "SCU Failed 0006:020f DIMSE Unexpected PDV type

can any one point me in the right direction?

Colby Dillion

unread,
Oct 22, 2012, 7:28:04 PM10/22/12
to fo-d...@googlegroups.com
Are you running the latest code (v1.0.26)?

Chris Horn

unread,
Oct 23, 2012, 6:38:20 PM10/23/12
to fo-d...@googlegroups.com
yes definatly using v1.0.26, have tried from the nuget package and the the git source same issue

Colby Dillion

unread,
Oct 24, 2012, 2:46:35 PM10/24/12
to fo-d...@googlegroups.com
Just to rule something out, can you try out the latest code from Git?

If that doesn't fix you issue (and it likely won't), can you create a private Gist with your C-Find request handler and send me a message on GitHub with a link to it?

Vahid Rassouli

unread,
Jan 10, 2013, 12:47:15 PM1/10/13
to fo-d...@googlegroups.com
Hi Chris,

could you find any solution for this problem?

Chris Horn

unread,
Jan 11, 2013, 1:44:14 AM1/11/13
to fo-d...@googlegroups.com
yes this prove to be a dumb error on my part, attach the DataSet you create to the pending result then send the sccess result and it all works as expected

Vahid Rassouli

unread,
Jan 11, 2013, 3:53:02 AM1/11/13
to fo-d...@googlegroups.com
Thanks chris
yes, that was the problem!

I've faced a new problem now!
After receiving a DicomCMoveRequest, I temporarily send the dcm images of a directory. (No searching yet!)
Here is the Code:

            public IEnumerable<DicomCMoveResponse> OnCMoveRequest(DicomCMoveRequest request)
            {
                var client = new DicomClient();

                var path =
                    @"DICOM\1.3.12.2.1107.5.2.30.26991.30000013010203201440600000151";

                foreach (var file in Directory.GetFiles(path, "*.dcm"))
                {
                    client.AddRequest(new DicomCStoreRequest(file));
                }

                client.Send("127.0.0.1", 1000, false, Association.CalledAE, Association.CallingAE);
                yield return new DicomCMoveResponse(request, DicomStatus.Success);
            }


this code works fine with a DICOM client of LeadTools, it receives all of the images.
but, Sante DICOM Viewer PRO doesn't get the images.

What am I missing?
Any help please?

Thanks in advance...
Reply all
Reply to author
Forward
0 new messages