@ipadawan I mean that currently you cannot set the “Scheduled Station AE Title” from the radiology module. Its because you cannot enter a location when creating a new radiology order. And this location would need to go in the order message which asks the PACS to put this new order into its modality worklist. Its definitely something that would be useful, but its a feature since its not yet implemented. Therefore I would not prioritize it, since I think its more important to get the module stable, tested and up to date first. But after that for sure
To your question:
When an MPPS is received by the radiology module it gets written into the mpps folder by a third-party tool dcm4chee2 dcmof (dicom order filler).
So the basic flow is
1 - Order Creation (Radiology Module)
2 - Order message HL7 ORM^O01 gets sent to dcm4chee (Radiology Module)
3 - dcm4chee creates worklist entry
4 - dcm4chee forwards MPPS it gets sent from modalities
5 - dcmof receives MPPS writes it to the filesystem and orders performed status gets updated (Radiology Module)
And for puppet:
With puppet you can write code to automate the installation of your IT infrastructure. I wrote some code to automate the installation of dcm4chee with openmrs and the radiology module, so I can quickly set up a fresh server to test changes I make to the module. As soon as I have this code cleaner I will let you and others know and make it available on github
Great that you would like to join!
Have you installed maven? This way you could build the latest code from the repository, build and test it.
added another PR (replacing study.oderId with study.order), please tell me if anything is unclear as there are quite a few PRs with quite some changes.
Hi Ivo.
A scheduler should be able to create order with multiple modality, scanner and exams (selected from a list).
In real life (I’m working at university connected to hospital) patient need many exams (t1, t2, flair… with/without mdc… And so on), in different parts of body, probably in several scanners (3T, 1.5T, Eco, tac, RX…). So, from a single mask, multiple dicoms.
I definitely think that feature is essential for effective management of Radiology orders.
…We need to talk about…
yes you are totally right, this is what we want to end up with
I am trying to get the workflow close to whats described by IHE Radiology Technical Framework and Code Mapping in IHE Radiology Profiles. I think before having order map in a 1-n relation to requested procedures/studies (plus 1-n scheduled procedure steps) we need to properly model a requested procedure. If you look at the current state of the model the requested procedure Code Value, Coding Scheme Version, Code Meaning are not set in the modality worklist. So you cannot enter for example procedures from Radlex when you create a new order. The only thing you can do now is to enter order instructions which ends up in the Requested Procedure Description/Scheduled Procedure Step Description.
I would get that right before entering multiple procedures at once. But then of course
You would need to have vagrant and virtualbox installed and then simply execute:
git clone https://github.com/teleivo/puppet-openmrs-radiologydcm4chee.git
cd puppet-openmrs-radiologydcm4chee
vagrant up
This will install VM with Ubuntu 14.04 64bit, mysql, tomcat6 + openmrs 1.9.7 and dcm4chee 2.18.0 with DICOM viewer weasis deployed. There are some manual steps you need to do to finish configuration of openmrs, dcm4chee please check the readme for it.
I hope it helps us in developing and testing the module and to help lower the barrier for others who would like to get involved
Please try it out and let me know what was good/bad.
NOTE: be aware that the Vagrantfile defines 3GB for the VM, so please reduce it and also the jvm parameters in hieradata/common.yaml if you do not have as much to spare And currently it will only work if your machine has 64bit virtualization.
I will be improving this project and the puppet modules, your feedback is most welcome!!!
Ops… openmrs, password, root, mysql, mypassword, strongpassword… I got:
???Error executing sql: create database if not exists ? default character set utf8 - Could not create connection to database server. Attempted reconnect 3 times. Giving up.??? Unable to create the database. The password might be incorrect or the database is not started.
dear @sunbiz, is there somebody else you could refer me to which could look at my PRs? The last merged PR was on March 7 and I have quite a few piled up now and would like to know how we could proceed. Thank you!
@teleivo, the problem with the merging is that all the commits were made to the master branch and that means all the commits after the pull request are added as part of the merge. I would appreciate if you made feature branches and then sent pull requests. That would make reviewing the code much easier and I can figure out all the changes that are being made
@sunbiz, I did make a feature branch for every pull request. I think it seems like the commits are all made to master because each of my feature branches is built on top of the feature branch before it. So every PR includes the commits from the PR before it. I did this because for example commit like:
add test resource infrastructure to api (b8bbcd123)
which is included in PR #10 (first open PR at the moment) is needed by all my PRs because they add unit tests to the api. Thats why I always made a feature branch for a PR built on top of the latest feature branch.
There are more examples of such dependencies.
Shouldnt that work if we just work our way from PR #10 up one by one? If any of the PRs needs some more work Ill do it and incorporate that in to the open PRs after that?