| 1 | PSBMLU ;BIRMINGHAM/EFC-BCMA MEDICATION LOG FUNCTIONS ;Mar 2004
 | 
|---|
| 2 |  ;;3.0;BAR CODE MED ADMIN;**6,11,13**;Mar 2004
 | 
|---|
| 3 |  ;;
 | 
|---|
| 4 |  ; Reference/IA
 | 
|---|
| 5 |  ; ^XMD/10070
 | 
|---|
| 6 |  ;
 | 
|---|
| 7 | EN ;
 | 
|---|
| 8 |  Q
 | 
|---|
| 9 |  ;
 | 
|---|
| 10 | AUDIT(IEN,TXT,PSBTRN) ; Append and Audit
 | 
|---|
| 11 |  D NOW^%DTC
 | 
|---|
| 12 |  S RDAT=%
 | 
|---|
| 13 |  D:PSBTRN="ADD COMMENT"
 | 
|---|
| 14 |  . N XA
 | 
|---|
| 15 |  . S XA=$O(^PSB(53.79,IEN,.3,"A"),-1)
 | 
|---|
| 16 |  . S RDAT=$P(^PSB(53.79,IEN,.3,XA,0),U,3)
 | 
|---|
| 17 |  D:PSBTRN="PRN EFFECTIVENESS" 
 | 
|---|
| 18 |  . S RDAT=$P(^PSB(53.79,IEN,.2),U,4)
 | 
|---|
| 19 |  D:PSBTRN="UPDATE STATUS"
 | 
|---|
| 20 |  . S RDAT=$P(^PSB(53.79,IEN,0),U,6)
 | 
|---|
| 21 |  D:PSBTRN="MEDPASS"
 | 
|---|
| 22 |  . S RDAT=$P(^PSB(53.79,IEN,0),U,6)
 | 
|---|
| 23 |  S:'$D(^PSB(53.79,IEN,.9,0)) ^(0)="^53.799D^^"
 | 
|---|
| 24 |  S PSBAD1=""
 | 
|---|
| 25 |  S PSBAD1=$O(^PSB(53.79,IEN,.9,"A"),-1)+1
 | 
|---|
| 26 |  S ^PSB(53.79,IEN,.9,PSBAD1,0)=RDAT_U_DUZ_U_TXT
 | 
|---|
| 27 |  Q
 | 
|---|
| 28 |  ;
 | 
|---|
| 29 | ERROR(PSB1,PSB2,DFN,PSB3,PSB4,PSB5,PSB6,PSB7) ;
 | 
|---|
| 30 |  ; PSB1 = order #
 | 
|---|
| 31 |  ; PSB2 = orderable item
 | 
|---|
| 32 |  ; PSB3 = message to be sent
 | 
|---|
| 33 |  ; PSB4 = schedule
 | 
|---|
| 34 |  ; PSB5 = action date/time
 | 
|---|
| 35 |  ; PSB6 = med log ien #
 | 
|---|
| 36 |  ; PSB7 = user identification
 | 
|---|
| 37 |  ; Send Error Msg about problems
 | 
|---|
| 38 |  S PSBMG=$$GET^XPAR("DIV",$S($G(PSBADMER):"PSB MG ADMIN ERROR",1:"PSB MG DUE LIST ERROR"),,"E")
 | 
|---|
| 39 |  Q:PSBMG=""
 | 
|---|
| 40 |  S PSBMSG(1)="  The following "_$S($G(PSBADMER):"administration",1:"order")_" was NOT displayed"
 | 
|---|
| 41 |  S PSBMSG(2)="  on the Virtual Due List"
 | 
|---|
| 42 |  S PSBMSG(3)=" "
 | 
|---|
| 43 |  S PSBMSG(4)="  Order Number....: "_PSB1
 | 
|---|
| 44 |  S PSBMSG(5)="  Orderable Item..: "_PSB2
 | 
|---|
| 45 |  S PSBMSG(6)="  Patient.........: "_$$GET1^DIQ(2,DFN_",",.01)_" ("_$$GET1^DIQ(2,DFN_",",.09)_")"
 | 
|---|
| 46 |  S PSBMSG(7)="  Ward/Bed........: "_$$GET1^DIQ(2,DFN_",",.1)_"/"_$$GET1^DIQ(2,DFN_",",.101)
 | 
|---|
| 47 |  S PSBMSG(8)="  Reason..........: "_PSB3
 | 
|---|
| 48 |  S PSBMSG(9)="  Schedule........: "_PSB4
 | 
|---|
| 49 |  I $D(PSB5) S PSBMSG(10)="  Action Dt/Tm....: "_PSB5
 | 
|---|
| 50 |  I $D(PSB6) S PSBMSG(11)="  BCMA Med Log IEN: "_PSB6
 | 
|---|
| 51 |  I $D(PSB7) S PSBMSG(12)="  User............: "_PSB7
 | 
|---|
| 52 |  S XMY("G."_PSBMG)="",XMTEXT="PSBMSG(",XMSUB="BCMA - "_$S($G(PSBADMER):"Admin "_$G(PSB6),1:"Order")_" Problem"
 | 
|---|
| 53 |  K PSBADMER
 | 
|---|
| 54 |  D ^XMD
 | 
|---|
| 55 |  K PSB1,PSB2,PSB3,PSB4,PSBMSG,PSBMG,XMY,XMSUB,XMTEXT
 | 
|---|
| 56 |  Q
 | 
|---|
| 57 |  ;
 | 
|---|