A new release of ZRDCX, 2.0.1.9, was released today. This release fixes the following issues:
Issue 291 addresses a very popular feature request to enable creation of DICOMDIR even when the filenames are not according to the standard. For example filenames with the instance uid like 1.2.3.4.5.6.dcm are not valid reference file id's according to the standard. Nevertheless, sometimes you would like to create a DICOMDIR file for other purposes other than exporting data on a CD. The
ScanAndCreate method of
DCXDICOMDIR takes a "strict" parameter that when set to false, will generate a DICOMDIR regardless of the validity of it's content (as long of course that the files are DICOM files).
Issue 290 is a new feature of RZDCX that enable to run a complete C-MOVE SCP with a single command including the incomming association. More about this feature in the upcoming chapter of the
DICOM Tutorial.
Here's a short example
public void MoveAndStore()
{
// Create an object with the query
matching criteria (Identifier)
DCXOBJ query = new DCXOBJ();
DCXELM e = new DCXELM();
e.Init((int)DICOM_TAGS_ENUM.patientName);
e.Value = DOE^JOHN";
query.insertElement(e);
e.Init((int)DICOM_TAGS_ENUM.patientID);
e.Value = @"123456789";
query.insertElement(e);
// Create an accepter to handle the
incomming association
DCXACC accepter = new
DCXACC();
accepter.StoreDirectory = @".\MoveAndStore";
Directory.CreateDirectory(accepter.StoreDirectory);
// Create a requester and run the query
DCXREQ requester = new
DCXREQ();
requester.MoveAndStore(
MyAETitle, // The AE title
that issue the C-MOVE
IS_AE, // The PACS AE title
IS_Host, // The PACS IP address
IS_port, // The PACS listener port
MyAETitle, // The AE title
to send the
query, // The matching criteria
104, // The port to receive the results
accepter); // The accepter
to handle the results
}
This single command takes care of all the details of a C-MOVE transaction. Instead of running an accepter on another thread to wait for the C-MOVE results, we pass the accepter as a parameter to the MoveAndStore method of the requester. Note that there's a new set property in DCXACC that enables setting the directory to store the incoming files. All the callbacks of DCXACC and DCXREQ can be used as well just as before.
Issue 287 is a small log enhancement that maxes it easier to to diagnose association problems. The log now shows very clearly when a presentation context for a command was not negotiated.