Image forward questions

  • Hi,
    I just recently downloaded the Conquest dicom server and started familiarize myself with it (so please bear with me). It seems to be a very nice software, thumbsup to the developers!


    My inital interest is to use it for sorting and forwarding incoming MRI research studies to different project servers. I have played around a little bit with Exportconverters using the "forward" and "copy" commands, which seems to work most of the time. I have some questions though:


    1. What is the best way of deleting each study from the Conquest server after forward/copy is completed? I would prefer to use the central server just for forwarding, and not storing any images on it.
    Using
    "ExportConverter1 = delete patient after 600"
    seem to work, but what would happen if the forwarding process is not finished after the delete delay time (some of the incoming studies are expexted to be rather big, +10000 images)?
    Maybe it is better to skip deleting each study and instead set it up for a nightly complete delete (if possible)?


    2. If I use e.g.
    "#ExportConverter0 = copy %f to C:\projectimages"
    is it then possible to store the copied images in a directory structure like e.g. "...\PatID\StudyID\SeriesDescrption\ImageNo.dcm" similar to the how local storage is handled with the "FileNameSyntax" command?


    3. For some cases I would like to use ftp for forwarding of images. I tried to use
    "ExportConverter0 = submit..."
    but wasn't able to get it to work. Could anybody please provide a correct syntax for a simple case of ftp forwarding?


    4. What differences in speed performance could I expect when using the three different ways of forwarding mentioned above? Some of the incoming studies will probably be rather big...


    Any tips and hints appreciated!

  • 1. You hit a snag there, there is no proper way of deleting the data since success of forwarding is not recorded. We typically let a server clean up itself after it runs out of space, delaying the delete with several months. Or you can use a database less forwarder (see manual).


    2. You can can use any dicom tag in the command as follows :
    copy %f to C:\projectimages\%VPatientID\%VSOPInstanceUID.dcm
    or use %b or %p


    3. dgate --submit2:p,s,s,s,target,c,scr
    means:


    p = PatientID
    s = StudyInstanceUID or empty
    s = SeriesInstanceUID or empty
    s = SOPInstanceUID or empty
    target = curl -k -T %s https://server.domain/folder
    c = dummy parameter
    scr=script to call
    e.g., dgate --submit2:20001234,,,,curl -k -T %s https://server.domain/folder,,call anonymize_script.cq


    For submit (uses SFTP) it is:
    submit:p,s,s,s,target,pw,scr
    e.g., dgate --submit:20001234,,,,user@server.domain:,password,call anonymize_script.cq


    From the script it would be
    submit study target username@machine:folder password yourpw


    4. Zipping is fairly slow, but the transfer would be one big blob. If you receive into an incoming folder it would be automatically loaded into a recieving server. So likely this is the fastest for slow lines. In house I would use "forward" or "forward study" only.


    Marcel

  • Thanks for the answers!


    1. Ok


    2. Hmm, strange, I still don't get it to work the way I hoped. It seems that using the %-flags works if I use them to create the filename, but if I try to create a directory structure it doesn't work.
    For example, using this line works just fine:


    ExportConverter0 = copy %f to C:\temp\dicomdump\%i_%V0008,103e_%b.dcm


    All images of the study end up in the same directory, but with unique names according to the %-syntax
    If however I change the "_" to "\" like this


    ExportConverter0 = copy %f to C:\temp\dicomdump\%i\%V0008,103e\%b.dcm


    I get an error message: "Exportconverter0.0: Failed to copy ***filepath\filename.dcm*** to ***new_filepath\filename.dcm***




    3. Ok, I realize now that the "submit" command uses sFTP while the (local) server I was trying on was not. I guess this could be the reason i wasn't able to get it working?
    I'll get back if I don't get it to work on a SFTP-server when I try...


    4. Ok, thanks. I'll probably stick to the "forward" commands mostly, so that's ok.
    For practical reasons I will probably like to set our different scanners up with separate dicom send nodes for the different projects (i.e. sending each project to separate AE titles). What is the most convenient way for conquest to handle requests to different AE titles on the same machine? Should I run a separate server for each AE title or can one server handle multiple AE titles (or maybe multiple ports would be enough?) in some way? If one AE title per server is the way to go, are there any constraints in running many parallel conquest servers on the same machine?

  • Hi,


    2) Oh yes, you need to make the folder first with the mkdir command. It is recursive so you need only a single call.


    4) Conquest accepts any AE title, so you let it respond to each called AE title differently. See the manual.


    Marcel

  • 2) Aha! Thanks, the mkdir command did the trick, now it works!
    Just a small comment though (sorry for haunting you...). If I do like this:


    ExportConverters = 1
    ExportConverter0 = mkdir C:\temp\dicomdump\%i\%V0020,0010\%V0020,0011_%V0008,103e\ ; copy %f to C:\temp\dicomdump\%i\%V0020,0010\%V0020,0011_%V0008,103e\%b.dcm


    it works just fine (at least for my small test case).
    If, however, I separate the commands into two lines like this


    ExportConverters = 2
    ExportConverter0 = mkdir C:\temp\dicomdump\%i\%V0020,0010\%V0020,0011_%V0008,103e\
    ExportConverter1 = copy %f to C:\temp\dicomdump\%i\%V0020,0010\%V0020,0011_%V0008,103e\%b.dcm


    some files are (somewhat randomly) left out from the copy process. How come?
    Can I be sure everything is always included if I use the first syntax with both commands on the same line, or is some extra code needed for that?



    4) Ok, so do I need to set the server up with the different AE titles I want it to listen to? If so, where do I enter this information?

  • Yep,


    2) ExportConverters are asynchroneous, import converters are synchroneous.
    4) Nowhere, conquest by default accepts all AE titles as called. To restrict enter them in dgatesop.lst.


    Marcel

  • Hi Guys,
    I am new here and I have a question. I installed Conquestdicomserver v. on my computer 1.4.17. I want to set this program as a DICOM router. I can send images/studies manually in the Query/Move to other servers which I have to add in the "Known DICOM providers" first. I read a lot of instructions and I have no idea where I have to add some text (commands). I added lines in the DICOM.INI file (program is closed in this momment). I triend a lot of combinations and none of this is working. Can somobody tell me how to do it? Sorry for my english :)


    Greetings! :D

  • Hi again,
    I tried to to this but this does not work. I sent a local study from K-Pacs to the Conquest and the study does not go to my AETEST (that tis not local). I can send study from Conquest to my AETEST manualy but not automaticaly.


    There is my dicom.ini


    # This file contains configuration information for the DICOM server
    # Do not edit unless you know what you are doing


    [sscscp]
    MicroPACS = sscscp
    Edition = Personal


    # Network configuration: server name and TCP/IP port#
    MyACRNema = CONQUESTSRV1
    TCPPort = 5678


    # Reference to other files: known dicom servers; database layout; sops
    ACRNemaMap = acrnema.map
    kFactorFile = dicom.sql
    SOPClassList = dgatesop.lst


    # Host(ignored), name, username and password for ODBC data source
    SQLHost = localhost
    SQLServer = C:\Conquest\Data\dbase\conquest.db3
    Username =
    Password =
    SqLite = 1
    BrowseThroughDBF = 1
    DoubleBackSlashToDB = 0
    UseEscapeStringConstants = 0


    # Configure database
    TruncateFieldNames = 10
    MaxFieldLength = 254
    MaxFileNameLength = 255
    FixPhilips = 0
    FixKodak = 0
    KeepAlive = 0
    LargeFileSizeKB = 4096
    PrintSquareLandscape = 0
    UseKpacsDecompression = 1
    ZipTime = 05:
    UIDPrefix = 1.2.826.0.1.3680043.2.135.735484.44207061
    EnableReadAheadThread = 1
    PatientQuerySortOrder =
    StudyQuerySortOrder =
    SeriesQuerySortOrder =
    ImageQuerySortOrder =
    EnableComputedFields = 1
    IndexDBF = 1
    PackDBF = 0
    LongQueryDBF = 1000
    TCPIPTimeOut = 300
    FailHoldOff = 60
    RetryDelay = 100
    RetryForwardFailed = 0
    ImportExportDragAndDrop = 0
    QueueSize = 128
    WorkListMode = 0
    WorkListReturnsISO_IR_100 = 1
    DebugLevel = 0
    Prefetcher = 0
    LRUSort =
    AllowTruncate =
    DecompressNon16BitsJpeg = 1
    UseBuiltInJPEG = 1
    LossyQuality = 95
    IgnoreOutOfMemoryErrors = 0
    NoDICOMCheck = 0
    PadAEWithZeros = 0
    FileNameSyntax = 4


    # Configuration of compression for incoming images and archival
    DroppedFileCompression = un
    IncomingCompression = un
    ArchiveCompression = as


    # Names of the database tables
    PatientTableName = DICOMPatients
    StudyTableName = DICOMStudies
    SeriesTableName = DICOMSeries
    ImageTableName = DICOMImages
    WorkListTableName = DICOMWorkList
    DMarkTableName = DICOMAccessUpdates
    RegisteredMOPDeviceTable = RegisteredMOPIDs
    UIDToMOPIDTable = UIDToMOPID
    UIDToCDRIDTable = UIDToCDRID


    # Banner and host for debug information
    PACSName = CONQUESTSRV1
    OperatorConsole = 127.0.0.1


    # Configure email of error messages
    MailHost =
    MailPort = smtp
    MailSignon =
    MailFromName =
    MailRcptName1 =
    MailCollectTime = 1
    MailWaitTime = 10


    # Configuration of disk(s) to store images
    MAGDeviceThreshhold = 0
    MAGDeviceFullThreshHold = 30
    IgnoreMAGDeviceThreshold = 0
    MAGDevices = 1
    MAGDevice0 = C:\conquest\data\
    NightlyCleanThreshhold = 0
    ExportConverter0 = forward to AETEST



    And there is a log from server status after sending

  • Hi,
    I just recently downloaded the Conquest dicom server and using it as a storage and forwarding server.

    creating or developing softwares like this help peploe across the world, thank you.

    My question is:

    Is it impossible to change dicom header of some patients and then forwarding them to a specific Modality,

    for example change the "NameOfPhisiciansReadingStudy" (0008,1060) dicom header of one or many patient and then forwarding them.

    Is it possible?

    An early reply would be appreciated.



  • thanks a million,

    so it can be done very easily

    only one thing

    we want to chnage the "NameOfPhysiciansReadingStudy" of some patient not all of them

    we want to query some or one patient with PID and then change their dicom header and then forward them to an advantage workstation or other pacs

    regards

    Hossein

Participate now!

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