Unfortunately, the designers of some systems seem never to have bothered to read the DICOM standard.

The only legal way to group images into series and studies is by using their UIDs, but there is a problem as DICOM has no simple “end of study” marker, and therefore many badly-designed (but common!) systems make the mistake of assuming that the end of an association equals the end of a study. They therefore group images into “folders” (or some other silly term with no DICOM significance) based on their groupings into associations. Such systems also commonly suffer from a related problem of wrongly linking images received over a single association…it is quite legal for equipment to keep one association open all day, and send all images from multiple patients over such as association, so receiving equipment must be able to handle this (some GE MRI scanners do actually do this, so it is not a hypothetical issue).

Such design errors always lead to confusion and problems, and no significance should ever be attached to the end of an association (except in Printing where all related operations must occur on one association).

The only proper solution to the question of knowing when everything has been received is DICOM Modality Performed Procedure Step, as that has a list of associated instances (images), but lack of this is still no excuse for making silly groupings based on associations!

If faced with the need to inter-operate with such equipment, it is possible to ensure that a group of images is sent on one association as follows:


Creating an association explicitly using DicomConnection.SetDestination, followed by SendImages and then Close.


Either use DicomImageCollection.Send or use a similar approach to that described above for COM by calling DicomAssocation.Open, DicomAssociation.SendInstances and DicomAssociation.Close methods.