Hey all,
So, as the title says, I'm looking for an accurate way of finding the total number of patient visits for a certain responsible provider. He is needing this information to present to the medical board to re-certify.
At first, my logic was to find the total number of patients that he is responsible for, which is super easy. But, that's not exactly what he's needing from this. Apparently he has to report how many patient's he cares for, and how many office visits that he has had since joining our organization (11/2/2015). So, after I was told this information, my logic changed a little bit and I ended up running a chart report for patient's with him as the responsible provider, the date of the last office visit that is on or after his first day of clinic and making sure that the patient was in an active status.
This presented much smaller numbers (you would think the opposite would happen), so I'm not too confident in providing him with these smaller numbers, when they clearly don't match up. Am I overthinking this or am I completely missing an easier way to obtain this information? Any help would be greatly appreciated.
Without know too much about exactly what you are needing, it seems the best way to get the # of visits for this provider is to base it on office visit orders. The codes should be in this format 992[0-1][2-5] (like 99214 or 99204) and the order date should be within your date range (i.e. 11/02/2015 - 05/24/2016).
Now if you are limited to using the Chart Reports for this, you will have a hard time making this for unique patients seen. I'm not sure if there is a way to group the information on unique patient id within Chart reports. If you can export this to excel somehow, you could remove duplicates and get your total patients that this provider is responsible for.
OK, just thinking this thru...
Read thru the patient file, checking the responsible provider field.
Select only on this physician - by name, or other code.
Print patient name, mrn, dob, etc...
Do a SubReport to either appointment file (for arrived appts to doctor) or document file (for office visits where that doctor was the responsible provider). And simply count the number of successes - printing it out. I would lean towards the document file approach.
Resulting in:
patient name, mrn, dob, # visits
Is that what you are trying to do?
Mike, that's an interesting approach, considering that technically every patient should have that charge code attached to the visit. In our case, it's normally either a 99213 or a 99214, as you listed. I could leverage SQL for this, but I'm not exactly sure what tables I would have to join together to get the right data structure that I'm looking for. I'll see if the numbers start looking a little more realistic using this approach that you mentioned first as a starting point and then I'll report back.
This is easy, including the Excel export. I would run an inquiry like this:
Find Documents where Type is 'Office Visit' AND Responsible Provider is Smith M.D., Robert' AND Clinical Date is on or after '01/01/2016' (Date not necessary if you want every document since the provider started)
Under the Inquiry results, in the Select Activity dropdown, choose "Print..." to get a Print dialog box and then Preview.
In the Preview window, click the first icon at the top-left to export, then choose .csv as the type and use the defaults. Excel should make it easy to remove duplicates for patient name.
If you are using CPS, you can use these SQL queries:
Total visits with E&M code used:
SELECT df.ListName, pp.PatientId, pv.Visit
from PatientProfile pp
join PatientVisit pv on pp.PatientProfileId = pv.PatientProfileId
join PatientVisitProcs pvp on pv.PatientVisitId = pvp.PatientVisitId
join DoctorFacility df on pv.DoctorId = df.DoctorFacilityId
where pvp.Code like '992[0-1][2-5]'
AND pv.Visit BETWEEN '11/02/2015' AND GETDATE()
--AND df.ListName like '%PROVIDER_NAME%' --use this if you need to specifiy a provider
GROUP BY df.ListName, pp.PatientId, pv.Visit
ORDER BY df.ListName, pp.PatientId, pv.Visit DESC
Unique Patient Visits with E&M code used:
SELECT visits.ListName, COUNT(*) UniquePatients
FROM (
SELECT df.ListName, pp.PatientId
from PatientProfile pp
join PatientVisit pv on pp.PatientProfileId = pv.PatientProfileId
join PatientVisitProcs pvp on pv.PatientVisitId = pvp.PatientVisitId
join DoctorFacility df on pv.DoctorId = df.DoctorFacilityId
where pvp.Code like '992[0-1][2-5]'
AND pv.Visit BETWEEN '11/02/2015' AND GETDATE()
--AND df.ListName like '%PROVIDER_NAME%' --use this if you need to specifiy a provider
GROUP BY df.ListName, pp.PatientId, pv.Visit
) visits
GROUP BY visits.ListName
I appreciate all of your quick responses! You guys have helped a ton!