A multiple is a field that repeats. I’m sure all of you have run into multiples while using MEDITECH whether you realize it or not. For this blog entry I’m going to get a little technical to help you understand how multiples are stored and why the MEDITECH report writer translator expects certain formatting on the picture. (Note: for this example I’m using DPM: ABS.PAT and DETAIL SEGMENT: abs.pat)
Request: Your HIM director needs a listing of all inpatients discharged last month along with the diagnosis they received (primary, secondary, etc).
The HIM director knows you’re not familiar with abstracting so she brings you into the ‘Process Patient Abstract’ routine, calls up a patient, and navigates to the ‘Enter/Edit DRG Data’ screen. She tells you all she cares about are the diagnoses in the screen shot below (admit diagnosis isn’t important to her). As you can see, the diagnoses repeat multiple times.
Here’s where I get a little technical. MEDITECH stores data using arrays. Below is a section of the TEST patient with diagnoses 444.0, 427.0, and 456.0. The ‘51’ is the abstracting urn that makes the record unique (sort of like a primary key in Access). The diagnosis multiple is in the :DZ[51,D,DX,n] where n= a positive integer. Somehow we need to pull in all three diagnoses below into an NPR report.
On your first attempt, you use DPM: ABS.PAT and DETAIL SEGMENT: abs.pat. You add the admit index and give the user a date range of FROM ADMIT DT and THRU ADMIT DT. You fill out your picture as follows:
When you run your report you find that you only get the last diagnosis (sample output is from the same patient where you see the three diagnoses above).
Why aren’t you getting all diagnoses? It’s because the NPR Report Writer translator doesn’t know that you want the diagnosis to repeat on the report. Even though the field is a multiple and the data is stored like a multiple, the report needs to be told to output the data as a multiple. Below is the report object code. The report logic is smart enough to loop on all of the diagnoses; however, the placeholder for the diagnosis output keeps getting overwritten.
So variable M|0, which holds the diagnosis, keeps setting up /V (/V is what gets outputted/printed to the diagnosis field). So on the loop’s first pass /V=444.0; on the second pass /V=427.0; and on the third and final pass /V=456.0. So when the report prints, 456.0 is the only diagnosis that shows for the patient example.
Solution: Stack the multiple field on the report picture. Doing so tells the NPR report writer translator this field is a multiple and you want every instance of it to print on the report.
I won’t show you how the object code of the report changed to support printing of the multiples (it’s not as clean as the object code sample with the looping), but the output is what we want. All diagnoses repeat.
There are other ways to get the diagnoses to print, but this option is probably the easiest to use and understand and the nice thing about the output is the name and account number don’t repeat with the diagnosis.
Report Writer Gene is a feature report writer of MEDITECH Connect's Report Writer Wing.
Interested in either a training or custom report writer work?
Fill out a Report Writer Training Inquiry or
Also check out Report Writer Gene's Blog exclusively on MEDITECH Connect