Question Re: Pocket Load (ZPM) HL7 message and AR/WS usage

3,284 views
Skip to first unread message

David Whitten

unread,
Jun 12, 2013, 11:07:11 AM6/12/13
to Hardhats,
At Central Regional Hospital in North Carolina, we are planning to use the Ward Stock part of AR/WS package but not to use the inventory management part of the system.  We would love to hear from any hospitals in the VA or outside the VA who are using this package and could advise us on aspects of our approac

Currently we are using Omnicell software to control our dispensing cabinets on the individual Patient Care Units (PCUs/Wards). 

A ZPM HL7 message with "L" as the ZPM.1 Transaction Type is sent when a drug is added to the cabinet as a Bin Load.

A ZPM HL7 message with "U" as the ZPM.1 Transaction Type is sent when a drug is removed from the cabinet as a bin unload.

A ZPM HL7 message with "C" as the ZPM.1 Transaction Type is sent when  the quantity or other information about the bin is changed.

I and Rick Yeager have an HL7 listener defined that receives these messages, and updates PHARMACY AREA OF USE File#58.1 when the HL7 comes into VistA.    We are currently updating the ITEM multiple #58.11 by creating an (sub-file) entry when "L" transactions received and inactivating the (sub-file) entry when "U" transactions are received.  We inactive using the fields Field #30   INACTIVATION DATE (D), [0;3]  and Field #31   INACTIVATION REASON (S), [0;4] and Field #33   INACTIVATION REASON (OTHER) (F), [0;9]
For the "C" transactions, I update the STOCK LEVEL (#1) field

To initially create the ITEM multiple #58.11,  I am using DO ^DIC and DO ^DIE, which works well. 

The problem comes from the multiples inside the ITEM multiple.

basically I force "OMNICELL" as the only multiple value
  (NOTE this "OMNICELL" entry must already exist in AOU INVENTORY TYPE File#58.16)
into  Field 3 of #58.11 (ITEM Multiple,[1;0])
    TYPE OF INVENTORY (Multiple-58.13), [2;0]
      .01  TYPE (M*P58.16'X), [0;1]

but FileMan does NOT update the third piece of the File Attribute node.
This means the entry does not show up as a default value when using the FileMan "ENTER OR EDIT FILE ENTRIES" option.  I then used the DIC("P") variable to update it, but I'm not sure that works in all cases.

Secondly,

I am copying values from field #2 of File 58.1 (Top Level)
         WARD/LOCATION (FOR PERCENTAGE) (Multiple-58.14), [2;0]
               .01  WARD/LOCATION (FOR PERCENTAGE) (MRP44'), [0;1]
^PSI(58.1,D0,2,0)=^58.14P^^  (#2) WARD/LOCATION (FOR PERCENTAGE)
 ^PSI(58.1,D0,2,D1,0)= (#.01) WARD/LOCATION (FOR PERCENTAGE) [1P:44]

into
         Field  5 of Item #58.11 (ITEM Multiple,[1;0]):
           WARD (FOR ITEM) (Multiple-58.26), [4;0]
               .01  WARD (FOR ITEM) (MP42'X), [0;1]

using FileMan and MUMPS code.

Practically, I don't know of a way to loop through all the entries in a multiple and copy them over to another multiple, except using a MUMPS FOR command, and then either setting the "to" multiple nodes using MUMPS SET commands or making ^DIE calls.  I've written both in the code, but the SET command method is the one used by the code currently.

The same problem occurs with the File Attribute node, by the way.

I'm also trying understand why the "D" cross-reference on PHARMACY AREA OF USE File#58.1 is not consistently being created. It seems to be created when using interactive FileMan but not by my code. I have code that uses a MUMPS SET command but feel this should be unneccessary.   The AR/WS package interacts with Inpatient Pharmacy package using this cross-reference, especially when creating first doses.

This has been driving me crazy.  If someone else knows how these packages, cross-references, and other aspects interact, I would appreciate an explanation.

We haven't addressed Pick Lists yet, and will be doing so soon, so if someone has insight on how they might interact with AR/WS and Inpatient Pharmacy, please share it.

Thanks,
David Whitten
713-870-3834

PS: I've attached the current version of this code, if looking at the code may make what I'm doing clearer.  I have also included a few sample messages, if this helps.

ZPM-C-MESSAGE-1.txt
RYRECPL.m
ZPM-L-MESSAGE-1.txt
ZPM-U-MESSAGE-1.txt

Andy Bruce

unread,
Jun 12, 2013, 2:30:44 PM6/12/13
to hard...@googlegroups.com
David,
Thank you for posting the code snippets and your
explanation...informative on both sides.
I would be interested in looking at any documentation available for the
AR/WS package as well...if you would share the etiology of the package
and where I might find the code/documentation.
I might be able to help you with your accounting processes from an
interoperability standpoint because parts of this data are used for a
number of ancillary (and cyclical) reporting requirements for budget,
billing, cost and management reporting...possibly it would be helpful to
identify useful data collection points (as of today) and the secondary
formulaic considerations.
I have examined a few related packages and it has been clear from them a
comprehensive understanding of the process might have saved the
programmer a lot of work. I suspect a good part of this is because the
processes were developed sequentially and the code began to sort of
"pile up" rather than moving toward a more elegant resolution as regs,
reporting and billing requirements changed.
I'm thinking Central may be a state reimbursed, TEFRA-type, holdover
facility...but not sure. This would have to conclusively established as
well...to be of much use.
Ayway...I am interested as well. I have been edging closer to
establishing the requirements to automate the cost reporting process for
several months...but it is a big job for one person. My primary goal has
been to make sense of (normalise) the terms copiously developed in
regulatory rules in an effort to map data use and movement and determine
the most effective intercepts (and reduce ambiguity).
Thanks,
Andy Bruce
> --
> --
> http://groups.google.com/group/Hardhats
> To unsubscribe, send email to Hardhats+u...@googlegroups.com
>
> ---
> You received this message because you are subscribed to the Google
> Groups "Hardhats" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to hardhats+u...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Reply all
Reply to author
Forward
0 new messages