Query MWL from PACS, Store output in MySQL database - DICOM
This is a discussion on Query MWL from PACS, Store output in MySQL database - DICOM ; Good afternoon,
I am looking to write a web-based interface for our PACS systems
Modality worklist- basically querying the current data in the worklist
for +/- a few hours, and store this output into a MySQL database.
I have been ...
-
Query MWL from PACS, Store output in MySQL database
Good afternoon,
I am looking to write a web-based interface for our PACS systems
Modality worklist- basically querying the current data in the worklist
for +/- a few hours, and store this output into a MySQL database.
I have been fiddling around a bit with the program: FINDSCU, and am
able to query, based on a date range, and see output at the command
line, however, I am not exactly clear where to begin to capture this
data and store into a Database table.
I understand that FINDSCU may not be the source I should use to feed
the database, but I am looking for any assistance in getting moving.
Or, if this is done in another application already, point me at that
too!
thanks much!
Jeff
-
Re: Query MWL from PACS, Store output in MySQL database
Jeff,
> I have been fiddling around a bit with the program: FINDSCU, and am
> able to query, based on a date range, and see output at the command
> line, however, I am not exactly clear where to begin to capture this
> data and store into a Database table.
maybe, you find it useful to extract the C-FIND responses and store them
as DICOM files using the findscu option --extract (-X).
Regards,
Jörg Riesmeier
-
Re: Query MWL from PACS, Store output in MySQL database
Hi Jorg,
I still want to be able to store the data into a Database somehow- is
there a way to direct the output of the FINDSCU to pass it to command
line MySQL commands, or would it be possible to query a Modality
Worklist directly from PHP code using sockets?
I am grasping at straws im sure 
thanks!
On Jul 10, 4:26*am, "Joerg Riesmeier" wrote:
> Jeff,
>
> > I have been fiddling around a bit with the program: FINDSCU, and am
> > able to query, based on a date range, and see output at the command
> > line, however, I am not exactly clear where to begin to capture this
> > data and store into a Database table.
>
> maybe, you find it useful to extract the C-FIND responses and store them
> as DICOM files using the findscu option --extract (-X).
>
> Regards,
> Jörg Riesmeier
-
Re: Query MWL from PACS, Store output in MySQL database
Several years ago I developed a test GUI application which was based
off of FindSCU and had the following logic:
- Collect query parameters from the user.
- Generate a findscu command line based off of user specified options.
- Run findscu (with the -X option) and have it dump all responses as
individual DICOM files.
- Open all the resulting files, extract information of interest from
each file, populate a listbox.
You can probably do all of these things and just populate your
database instead of a listbox.
There are several ways to approach the topic of putting DICOM into a
database as well... You could:
a) Identify fields of interest and create a schema based around them.
Mine the values of interest from the response files and populate the
schema.
b) Put UNC paths to the response files in the database.
c) Convert the DICOM objects to XML (DCMTK has a utility for this as
well) and put an XML blob in the database for each response.
Just out of curiosity, what problem are you trying to solve by
creating another copy of the data that already exists in the MWL SCP?
- Josh Coleman
On Jul 10, 2:59*pm, Jeff wrote:
> Hi Jorg,
>
> I still want to be able to store the data into a Database somehow- is
> there a way to direct the output of the FINDSCU to pass it to command
> line MySQL commands, or would it be possible to query a Modality
> Worklist directly from PHP code using sockets?
>
> I am grasping at straws im sure 
>
> thanks!
> On Jul 10, 4:26*am, "Joerg Riesmeier" wrote:
>
>
>
> > Jeff,
>
> > > I have been fiddling around a bit with the program: FINDSCU, and am
> > > able to query, based on a date range, and see output at the command
> > > line, however, I am not exactly clear where to begin to capture this
> > > data and store into a Database table.
>
> > maybe, you find it useful to extract the C-FIND responses and store them
> > as DICOM files using the findscu option --extract (-X).
>
> > Regards,
> > Jörg Riesmeier- Hide quoted text -
>
> - Show quoted text -
-
Re: Query MWL from PACS, Store output in MySQL database
Hi Josh,
I have several PHP applications that we've developed in house that
could benefit from a MWL for ease of data entry and corrections. I
wish to have a "copy" of MWL or be able to access MWL from my
applications. I'm totally new to the idea of DICOM programming and
slowly learning that the data cannot be accessed by simple socket
programming 
On Jul 11, 4:42*pm, josh.colema...@gmail.com wrote:
> Several years ago I developed a test GUI application which was based
> off of FindSCU and had the following logic:
>
> - Collect query parameters from the user.
> - Generate a findscu command line based off of user specified options.
> - Run findscu (with the -X option) and have it dump all responses as
> individual DICOM files.
> - Open all the resulting files, extract information of interest from
> each file, populate a listbox.
>
> You can probably do all of these things and just populate your
> database instead of a listbox.
>
> There are several ways to approach the topic of putting DICOM into a
> database as well... You could:
> a) Identify fields of interest and create a schema based around them.
> Mine the values of interest from the response files and populate the
> schema.
> b) Put UNC paths to the response files in the database.
> c) Convert the DICOM objects to XML (DCMTK has a utility for this as
> well) and put an XML blob in the database for each response.
>
> Just out of curiosity, what problem are you trying to solve by
> creating another copy of the data that already exists in the MWL SCP?
>
> - Josh Coleman
>
> On Jul 10, 2:59*pm, Jeff wrote:
>
>
>
> > Hi Jorg,
>
> > I still want to be able to store the data into a Database somehow- is
> > there a way to direct the output of the FINDSCU to pass it to command
> > line MySQL commands, or would it be possible to query a Modality
> > Worklist directly from PHP code using sockets?
>
> > I am grasping at straws im sure 
>
> > thanks!
> > On Jul 10, 4:26*am, "Joerg Riesmeier" wrote:
>
> > > Jeff,
>
> > > > I have been fiddling around a bit with the program: FINDSCU, and am
> > > > able to query, based on a date range, and see output at the command
> > > > line, however, I am not exactly clear where to begin to capture this
> > > > data and store into a Database table.
>
> > > maybe, you find it useful to extract the C-FIND responses and store them
> > > as DICOM files using the findscu option --extract (-X).
>
> > > Regards,
> > > Jörg Riesmeier- Hide quoted text -
>
> > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -
-
Re: Query MWL from PACS, Store output in MySQL database
On Jul 13, 1:55*pm, Jeff wrote:
> Hi Josh,
>
> I have several PHP applications that we've developed in house that
> could benefit from a MWL for ease of data entry and corrections. *I
> wish to have a "copy" of MWL or be able to access MWL from my
> applications. *I'm totally new to the idea of DICOM programming and
> slowly learning that the data cannot be accessed by simple socket
> programming 
>
> On Jul 11, 4:42*pm, josh.colema...@gmail.com wrote:
>
> > Several years ago I developed a test GUI application which was based
> > off of FindSCU and had the following logic:
>
> > - Collect query parameters from the user.
> > - Generate a findscu command line based off of user specified options.
> > - Run findscu (with the -X option) and have it dump all responses as
> > individual DICOM files.
> > - Open all the resulting files, extract information of interest from
> > each file, populate a listbox.
>
> > You can probably do all of these things and just populate your
> > database instead of a listbox.
>
> > There are several ways to approach the topic of putting DICOM into a
> > database as well... You could:
> > a) Identify fields of interest and create a schema based around them.
> > Mine the values of interest from the response files and populate the
> > schema.
> > b) Put UNC paths to the response files in the database.
> > c) Convert the DICOM objects to XML (DCMTK has a utility for this as
> > well) and put an XML blob in the database for each response.
>
> > Just out of curiosity, what problem are you trying to solve by
> > creating another copy of the data that already exists in the MWL SCP?
>
> > - Josh Coleman
>
> > On Jul 10, 2:59*pm, Jeff wrote:
>
> > > Hi Jorg,
>
> > > I still want to be able to store the data into a Database somehow- is
> > > there a way to direct the output of the FINDSCU to pass it to command
> > > line MySQL commands, or would it be possible to query a Modality
> > > Worklist directly from PHP code using sockets?
>
> > > I am grasping at straws im sure 
>
> > > thanks!
> > > On Jul 10, 4:26*am, "Joerg Riesmeier" wrote:
>
> > > > Jeff,
>
> > > > > I have been fiddling around a bit with the program: FINDSCU, and am
> > > > > able to query, based on a date range, and see output at the command
> > > > > line, however, I am not exactly clear where to begin to capture this
> > > > > data and store into a Database table.
>
> > > > maybe, you find it useful to extract the C-FIND responses and storethem
> > > > as DICOM files using the findscu option --extract (-X).
>
> > > > Regards,
> > > > Jörg Riesmeier- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> > - Show quoted text -
Hi,
It sounds like you are using PHP. If the data that comes from the find
is formated, you should be able to parse it, and then form SQL
statements from it. (Perl is a good candidate for that kind of work.)
In PHP I think you can do something like
$result = exec ("/PATH/TO/FINDSCU");
and then parse $result.
if you are using dcmtk, which is written in C++ I think, you would not
be able to call the libraries directly unless your program is in C++.
However if you use Java, dcm4che is written in Java, and you can use
the DICOM libraries directly. I have done that with success, though
not for using MWL.