Questions on PACS Operations

  • Hi

    I have some questions regarding maximizing the optimal use of PACS Server

    1. DICOM Echo : Returns ECHO Success or failure to calling AET
    2. DICOM FIND : Query result are returned or not
    3. DICOM Get & DICOM MOVE : Data is sent to AET or not
    4. DICOM STORE: Allowed to store data in PACS Server or not
    5. TimeOut for AET : Set for calling AET.
    6. Calling AET Comparison: compares AET (Application Entity Titles) in a case-insensitive way
    7. The maximum number of results for a single C-FIND request at the Patient, Study, or Series level
    8. The maximum number of results for a single C-FIND request at the Instance level.
    9. Maximum number of query/retrieve DICOM requests that are maintained by pacs. The least recently used requests get deleted as new requests are issued.
    10. When handling a C-FIND SCP request, enable or disable case-sensitive match for Patient Name, Patient ID, Study Descripton value representation
    11. How PACS server reacts when it receives a DICOM instance whose SOPInstanceUID is already stored.Currently it overwrite it. Need some flag ; If set to "true", the new instance replaces the old one. If set to "false", the new instance is discarded and the old one is kept.
    12. Option to log or store Query requests from workstations and also log retrieve results against the query. if data is retrieved then store the amount of data (in MBs or GBs) that is moved from PACS Server to the workstation and total time is taken.
    13. Option to compute and save the MD5 of the DICOM files stored in the PACS database. This information can be used to detect disk corruption,
    14. Database field that indicates the current status of the study. Like its RECEIVING, COMPRESSION IN PROGRESS (if some export or import convertor is applied) or COMPLETED, or FORWARDING in progress.

    If possible instead of using lua can these tasks handled in dicom.ini


  • 1. When?

    2. Can be disabled in dgatesop.lst for everybody, with importconverter for somebody

    3. Same

    4. Same

    5. Is set global

    6. Is not implemented, but can be sent uppercase see SendUpperCaseAE

    7. Not implemented

    8. Not implemented

    9. Not possible

    10. Possible at field level

    11. Not implemented

    12. Not implemented

    13. Not implemented

    14. Probably not possible

    But this is like a years work of requests. I do not have the time.

  • hi

    Can you please guide me if possible. Can i set the deletion time on basis of modalities. For example X-rays age is 1 year , CT for 5 years, MRI for 2 years, MG for 5 years. Beside that before deletion there should be a check at database level wether i need to delete this study or not.

  • Using dgatesop.lst can i achieve following tasks:-

    1. Restrict AET from querying PACS - POSSIBLE

    2. AET can query PACS but on a specific modality. AE can see only CT & MR in result only not others.

    3. AET can only send data to PACS Server


  • In post 5, this is not implemented - deletion is only based on age. A script based selection method would be needed.

    In post 6, dgatesop can fully enable/disable each AET; 1 and 3 would require a script with conditional 'reject'.

    2. May be scriptable but requires processing of each response, as a query can ask for many modalities at once. A 'CT\MR' query is not impemented in conquest.

  • If you add one or more AEs to dgatesop.lst only those AEs can connect.


    QueryConverter0 = if Association.CallingAE ~= 'TEST' then reject() end

    RetrieveConverter0 = if Association.CallingAE ~= 'TEST' then reject() end

    Complex deletion can be scripted, but you need to learn lua - there are many resources on the internet.


  • hammad this is a collection of (my own) poorly-scripted tools that require specific import/export converter configurations and a grafana/influx environment- I can make them available as a package but they were never intended for distribution and you will need to edit them to make them work. That and you're going to need grafana/influx. If you can handle all this, I'll start thinking about making it downloadable.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!