SmartflowSheet
Submitted by Ben_Charlton on Wed, 21/10/2015 - 13:36
Did SmartFlowsheet provide any documentation outline the API they have made available? I was just looking at a method to enable us to select a template at checkin among other things.
I can see its supported but I wondered if the API allows a retrieval of the current list. If not I can just use a hardcoded entry per worklist.
Re: SmartflowSheet
See http://veterinarium.github.io/
Re: SmartflowSheet
Bloody hell ...possibilities !
Re: SmartflowSheet
Has there been any discussion on future integration that is stated for OR in current development?
Re: SmartflowSheet
The other areas that have been discussed are to do with product imports and charge capture. Charge capture is supported by SFS, but requires the practice to accept http connections (see http://veterinarium.github.io/#events ). I'm waiting to see if they can provide a polled API which would make opening up ports in firewalls unecessary.
Re: SmartflowSheet
Yep I understand that completely. The idea of opening a firewall point to a webhook means security and updates becomes so much more important for the end user.
I am going to look a a few tweaks
1. Optionally select template at FlowSheet creation (with a default per worksheet)
2. Default days in hospital per worklist ...
3. Select department based on worklist.
Re: SmartflowSheet
Hi ben,
Interesting you raise these ideas.. I was going to start pushing for Integration Phase 1.1 in which I wanted to see if we could do exactly what you are describing.
When a flow sheet is created we would love to be able to select:
- Template
- Treatment start time
- Number of days in hospital
- Department
- Add a "Problem" to the SFS Problem List
When a patient is discharged in OVPMS it would be super cool if this would discharge the patient in SFS.
If this was going to be developed could this be done as a project for general use?
Re: SmartflowSheet
This is relatively easily implemented it was already built into the OpenVPMS interface and thus we just need to make the method user accessible - my plan was to
Re: SmartflowSheet
Hi Ben,
Thanks for the reply.
- Template. Even if we could just get this it would eliminate one entire step from our workflow (which is to change the template from the default once a SFS is created).
- Treatment start time. Isn't this the dateCreated field? Currently the treatments start for us when our visit started. So could we just send a different specified time instead of our visit start time? Being able to specify this from OVPMS would eliminate another entire step from our workflow at least... And others I would imagine. You often want to be able to specify when treatment start...
- Days in Hospital - A bonus but not a biggie.
- Department - Again, for us a bonus but not a biggie...
- Problem - This is the Disease field in the API. I would love if we could select a few from the Venom codes. I think the more we can move towards a standardised coding system like this the better. We currently have manual entry and intussusception is spelt several different and interesting ways! So I am a fan of lists.
- Discharge - Fair enough. Perhaps one day.
With regards to development. I understand... I just figured I would see if you were going to have a play if the spoils could be shared. :) Otherwise we can put it into a project and get TimA to cost... Just no point in duplicating.
Thanking you,
Adrian
Re: SmartflowSheet
Adrian,
Anything I do on this I will submit back into core for assessment and release:)
Ben
Re: SmartflowSheet
Thanks Ben,
That would be super appreciated!
Cheers,
Adrian
Re: SmartflowSheet
Hi,
Has there been any advancement on this? It would be nice to get this aspect of integration going from our point of view.
Perhaps even getting a project going for this with prices so we know what we are dealing with.
Cheers,
ABS
Re: SmartflowSheet
Re Worksheet
My WIP patch I have a got the flowsheet templating and expected days in hospital working I am just working on generating a drop down of existing templates from SFS.
I have also planned on setting the Patient File Number = PatientID (OpenVPMS) - just so its consistent on records.
I was hoping to generate a cage number field that we autofill, but I need to decide then when and if its generated code. I would assume we generate it on checkin. I thought there was some work going on around boarding and cage allocation if so I need to integrate that here. Tim?
If not I assume you guys would want it as a dynamic option at checkin rather than per worklist.
Additionally I am going to optionally populate the Problem list from the visit reason - should that be optional or just coded in...currently its left blank
Finally I am autopopulating the critical notes field with existing allergies as listed on the patient file, this requires practices to use the premade Alert Type Allergies. The caution flag for a file is populated as TRUE IF a practice uses the premade Alert type Aggression - changing the alert code to anything will result in FALSE or null (empty) value in that field.
I am really not sure how flow sheet would handle the dateCreated set for a future time and whether it will offset the template start time to create this
Re: SmartflowSheet
There's been some off-forum discussion about adding a cage type to schedules to better support boarding. If a cage type was present on the schedule, you could send the schedule name as the SFS cage number.
There would be no cage on work lists.
Re: SmartflowSheet
Cheers Tim thats what i thought and not so suprising...
Re: SmartflowSheet
Additionally while I am doing this SmartflowSheet has just released the anaesethtic sheet module. I plan on adding support for this as well.
Can I confirm with interested parties that the Hospitilization File Number should be set by default to the OpenVPMS patient ID.
Anaesethic sheets need a new Service setup so I am refactoring all the services to be based on a basic underlying service.
http://veterinarium.github.io/#anesthetics
This will allow the retrieval of anaesethetic reports associated with a pets hospitilization.
Re: SmartflowSheet
Hi Ben,
Exciting!
- Hospitalisation File Number = OVPMS Patient ID - I am not familiar with the ins and outs but this seems reasonable.
- The problem list - Would be great to be able to specify this manually, otherwise being generated from the visit reason automatically I think would be my second preference.
- With regards to the timing of the start of treatments have you asked the developers? It would be more useful than most people realise!
Cheers,
Adrian
Re: SmartflowSheet
Hey Adrian I will flick em an email....with regard to problem list I have always struggled with creating modal popups in a workflow but I agree there a a few things that it would be nice to specify ...I will try and get something working.
Re: SmartflowSheet
Tim I noticed we dont run any integration tests agains the development endpoint
https://sfs-public.azurewebsites.net/api/v3
Just using Wiremock. have you tried any tests against that endpoint and would it work?
Re: SmartflowSheet
I ran against that endpoint with logging enabled, and used the output to generate the WireMock tests.
Note that the emrApiKey for the sandbox is different to production. If you want to test in the sandbox, you need to change openvpms-smartflow.xml to comment out the existing url and emrApiKey, and uncomment the others:
Re: SmartflowSheet
Yeah no I have setup my development instance to work against my authentication on that site (sfs.azure). Its pretty night I can run it just like a real clinic as a test.
I cant check my live site right now I am at home but with the anaesthetics do u reckon we just import the report as per the other pdfs we already import or do we actually create a patient.note linked to the visit with the anaesthetics pertinent details from the flowsheet data object and then link the pdf after that...
On that note we probably need to provide a method to syncronise Doctors from Open to SFS. So the SFS has the userids so we can correctly link treatments /inventory items dispensed etc.
Re: SmartflowSheet
The anesthetic object returned by SFS doesn't contain all that much data, so I don't see any reason to create an additional patient Note record. It should handled as just another patient attachment.
Regarding synchronising doctors - yes, there should be a facility to do that, but I would roll that into the project for charging treatments when SFS revamps their event API.
Re: SmartflowSheet
I actually need to run against the live endpoint for anaesthetic integration its wierd but it seems that the anaesthetic object returns a url that you hit with a unauthenticated GET request to download the report...seems wierd they didnt make this one like the other reports.
Re: SmartflowSheet
Hi Ben,
I was just wondering how you went with this? Did you have success with the start time and anaesthetic sheets?
Cheers,
Adrian
Re: SmartflowSheet
I have a work in progress version I just need to test it more its difficult because we cant generate artificial anaesthetic reports to download in the test API
Re: SmartflowSheet
Hi Ben,
I can generate several anesthetic sheets for you. For that
1) please create a couple of patients in SFS from OpenVPMS
2) let me know the account email address (and where sandbox or production is used)
And then I will generate a couple of reports, let you know when I am done and you will be able to test the API.
Regards,
Pavel
Smart Flow Sheet development team
Re: SmartflowSheet
I have released the first of 2 patches for the Smartflow sheet integration
It is still in testing but it can be reviewed here and included
Update to SFS Hospitilization Service
I will have a second patch soon that includes the anaesthetic report in the download at patient checkout
This is my local build - if you want to take a look
You cannot use it in production as it has differences from the Official build
Removed
Re: SmartflowSheet
Hi,
Were we able to have this put into the production build soonish? We are willing to throw in a few hundred dollars if we can get the ability to select the template type and start time of treatments from OVPMS when creating a flowsheet. This is currently a bottleneck in our workflow.
Thanks,
Adrian
Re: SmartflowSheet
Tim
I will Jira this - and attach my patches - I havent testing the anaesthetic sheet integration properly - I just havent had time.
So there will be two patches - once covers the stuff above and the other adds the anaesthetic sheet and is probably needs code review.
Re: SmartflowSheet
https://openvpms.atlassian.net/browse/OVPMS-1720 is here - you can follow our discussions there
Re: SmartflowSheet
So I need an answer ... currently we send nothing to SmartFlowSheet to fill out the PROBLEM field.
This field is actually required by SmartflowSheet to finalize a discharge....so currently clinics would need to edit the flow sheet and populate it.
It can be prepopulated at admission but my question is with what infomation?
I had set it up to take the Visit.Reason as this would be most appropriate I would imagine for a hospitilized case or Surgery...ie the reason might only be "Surgery"
Any other ideas?
Re: SmartflowSheet
The Visit reason is probably the best option.
The Problem record has both a presenting complaint and diagnosis, so either could be candidates, but there can be potentially zero or more Problems in a given Visit.
If you are concerned about the default Visit reaons being too generic, load up VeNom Visit Reason codes, which provide an additional 284 reasons codes.
Re: SmartflowSheet
I tend to agree ...the field is actually populated as an array so you could load the Reason and any unresolved problems into the field if you wanted to as well.
Re: SmartflowSheet
See the new patch and comments on the JIRA
Re: SmartflowSheet
I disagree that the expected hospital stay should be set as the appointment duration.
1. Most of my appointments are 15m...irrespective of whether the animal is being admitted for a surgery or ill health...
If its Ill and going in too hospital I would expect it might stay on average 2 days where as a surgical case moving to the surgical list would stay at most 8hrs generally. BUT this would vary practice by practice ...linking it to the appointment duration on admission is nonsensical.
Ben
Re: SmartflowSheet
In 1.9, you can link the schedule to a cage type, and automatically charge based on the length of stay.
So from a charging and resource tracking perspective, it makes sense for appointments to reflect the expected duration.
Re: SmartflowSheet
I am sorry but I disagree completely...there is no way possible of predicting and therefor allocating a resource to a hospitilized patient each patient responds differently.
Secondly linking a schedule to only 1 cage type has little meaning with the exception of a boarding kennel ...which Smartflowsheet would be a little expensive for.
If I did assign a duration of stay to a patient it wouldnt be based on which schedule they were booked on ...it would be what disease they would have thus I would want to be able to customize the duration of stay.
Almost every clinic (that is not a boarding kennel ) is setup the same way...
1 schedule or more for appointments which may or may not be linked to a hospital worklist - 1 for surgical cases which is usually linked to a Surgical WorkList.
Surgical cases would only in very rare (unless a surgical specialist clinic) stay overnight the majority would be day patients.
Hospitilized pets might stay fro 0-5 days depending on what disease they are being treated for... more importantly it would be typical for you to say the patient is staying 24hrs to start with and based on medical response might stay longer.
My point is having the a duration of stay that can be set to a default per worklist and then can be customized makes perfect sense. Linking to a cage type..? seems pointless. In both cases above the animals would utilize the same cage space in most smaller clinics.
Re: SmartflowSheet
Point taken. Although if every patient is different, just how useful is it to have a default estimated stay configured on the work list? Why not prompt for it every time?
Re: SmartflowSheet
For my surgical list I would set a default at 1 day.
For my hospital list I would always set it as custom.
Thats my preference I guess having a default means that you can skip that dialog to speed checkin
Re: SmartflowSheet
Hi,
Just wondering if the Problem field is populated by the Visit.Reason? It doesn't seem to work on my system, but perhaps it's not set up yet.
Thanks
Re: SmartflowSheet
The patch I submitted for 1.9 does this - you would need to be on the 1.9 beta to get the feature.
If it isnt working you need let me know
Re: SmartflowSheet
Hi Ben,
We are on 1.9. It doesn't seem to be working. Maybe I'm not on the right 1.9.
I will send you a couple of screenshots to your email.
Greta
Re: SmartflowSheet
It was added in Revision 7056 so it should be present in your version - that being said you can check quite easily...
I have a version based around 7183 and the Worklist configuration looks like this:
Check if yours is the same
Re: SmartflowSheet
Hi Ben,
I have my set up like this (attached spreadsheet) .
We don't start a new flow sheet automatically when checking a patient into the Worklist because it cause too many checked ins & it's better for the clinician to check them into SFS with the correct template rather than the receptionist making the decision as to the template.
So when the clinician is printing the consent form, they press New Flow Sheet from the Workflow->Worklist screen.
So, do you think that my Problems won't work from the Visit.Reason if I don't check them into SFS during the check in procedure?
thanks,
Greta
Re: SmartflowSheet
Support for setting the SFS Problem List from the Visit Reason was added in revision 7026, so if the reason is set at the time you click New Flow Sheet, you should see it in SFS.
What revision are you running? It is displayed at the bottom of the login window, or in the Help window.
E.g. Version: 1.9-SNAPSHOT (7285)
Re: SmartflowSheet
Hi Tim,
We are running 7128.
I just tested with a patient. We selected a reason:
Then clicked New Flow Sheet from the Worklist.
But in my SFS there aren't any Problems. Do I need to create the same Problems in SFS to match first?
Thanks,
Greta
Re: SmartflowSheet
It looks like there is something in the field as there is a [x] indicating something to delete. Is this in the SFS ipad app or the browser based version?
If it is the ipad app, can you see if it displays any differently in the browser version?
Does it happen for all Visit reasons?
Re: SmartflowSheet
Could it be that I am using Visit Reason and not Visit Reason (VeNom)?
Or is it something to do with my archetype of Visit Reason? Maybe that the 'description' is Hidden?
Re: SmartflowSheet
Sorry Tim, I didn't reply to your question.
That screenshot was from a browser (not iPad). On the iPad there is nothing.
It is the same for any visit reason I have in Open.
Re: SmartflowSheet
That shouldn't make any difference.
If you send your logs to me (tanderson at openvpms.org), I can check to see if the reason is being submitted to SFS.
The relevant log is located in <TOMCAT_HOME>/logs/openvpms-full.log where <TOMCAT_HOME> is the directory where Tomcat is installed.
Re: SmartflowSheet
Hi Tim,
I have fixed it. I removed the Visit Reasons that were in there are created new ones. These new ones work (yay!).
I presume no, but just to check.. If you change the Visit Reason in OpenVPMS after the patient has been checked into SFS, will it ever be able to change the Problem in SFS?
Greta