Exclude station names
Similar to the exclusion of study descriptions (e.g. "imported") it would be nice to be able to exclude specific station names as well. In our case this would save a lot of unnecessary PACS-retrieves (the various station names of all imported data are renamed to one specific station name "EXTERNAL").
Comments (17)
-
-
reporter I get stationname returned both at study and serieslevel...
-
Ok, sounds like a good idea then.
We also need to add options for SR preference for DX and MG as per ref
#466 -
reporter Just checked more in depth and our PACS (AGFA Impax) reports the correct station name at study level when all series have the same station name. When multiple station names are present in one study it reports e.g. "MIXEDCTNM", "MIXEDCT", "MIXEDCTPT", etc. So it seems best to perform the station name filtering on series level.
Additional note: Impax stores a series for internal usage of modality CC, with empty station name and empty series description; these should be filtered out as well.
-
Is it common to have more than one station name in a study?
-
reporter Yes, I think so... e.g. in the case of acquisition + processing workstations, or multimodality systems where CT and NM/PT are acquired/reconstructed on different machines.
-
Ok
-
reporter When filtering stationname on serieslevel it seems necessary to add an entry to the DicomQRRspSeries class (and consequently also to the remapp_DicomQRRspSeries table) in order to retrieve station_name; is that correct, or is there another way?
-
We should add
station_name
to the following classes inremapp/models.py
:DicomQRRspStudy
DicomQRRspSeries
I assume there isn't a reason to have it in
DicomQRRspImage
.Once you have made that change you need to run
python manage.py makemigrations remapp
followed bypython manage.py migrate
to update the database.You then can make use of the new fields to record the station name data.
qrscu
inqrscu.py
needs to have the DICOM query file updated to included.StationName = ''
at about line 301.Likewise in
_query_series
at about line 67.This will ensure that the value is requested at study and series level. You can then check for the value in the responses in the various places.
I hope that helps. Thanks!
-
I guess the model additions should be:
station_name = models.CharField(max_length=16, blank=True, null=True)
I think there is a maximum of 16 characters? If not, we should just make it
station_name = models.TextField(blank=True, null=True)
-
reporter See pull-request https://bitbucket.org/openrem/openrem/pull-requests/64/fix-for-issue-468-specific-station-names
By accident I branched from master instead of develop and I also didn't implement stationname at study level yet, so please wait for a new pull-request and ignore the current one. -
reporter Proposed fix: https://bitbucket.org/openrem/openrem/pull-requests/65/issue468-exclude-stationnames-v2
Not implemented yet: check station name in responses at study level. Would that work for all PACS systems?
-
It isn't a standard c-find element at study or series level, so if it works at all it will probably work at Study level as much as it does at Series level.
-
Factored out study name logic to enable testing. Refs
#468and pull request #65→ <<cset 98d1e7a70404>>
-
- changed milestone to 0.8.0
- changed component to DICOM Networking
-
-
assigned issue to
-
assigned issue to
-
reporter - changed status to resolved
Implemented in commit bc690a7 and was confirmed working.
- Log in to comment
Do you get station name in the returned responses? I don't think I do here.