[613] | 1 | PSOCIDC9 ;BIR/LE - continuation of activity log corrections ;2/28/05 12:50pm
|
---|
| 2 | ;;7.0;OUTPATIENT PHARMACY;**239,250**;DEC 1997
|
---|
| 3 | ;
|
---|
| 4 | RPT ;
|
---|
| 5 | N JOBN,NAMSP,ZTDESC,ZTRTN,ZTQUEUED,ZTREQ
|
---|
| 6 | S NAMSP=$$NAMSP^PSOCIDC7
|
---|
| 7 | S JOBN="CIDC ACTIVITY LOG CORRECTION"
|
---|
| 8 | L +^XTMP(NAMSP):0 I '$T D Q
|
---|
| 9 | .W !,JOBN_" job for PSO*7*239 is still running. Halting..."
|
---|
| 10 | L -^XTMP(NAMSP)
|
---|
| 11 | W !!,"This report reflects all prescriptions where the activity and"
|
---|
| 12 | W !,"copay activity logs were corrected. For detailed information,"
|
---|
| 13 | W !,"please view the activity and copay logs on the prescriptions."
|
---|
| 14 | ;
|
---|
| 15 | W !!,"You may queue the report to print, if you wish.",!
|
---|
| 16 | ;
|
---|
| 17 | DVC ;
|
---|
| 18 | K %ZIS,POP,IOP S %ZIS="QM" D ^%ZIS I $G(POP) W !!,"Nothing queued to print.",! G DONE
|
---|
| 19 | QUEUE ;
|
---|
| 20 | I $D(IO("Q")) S ZTRTN="START^PSOCIDC9",ZTDESC=JOBN_" CIDC Activity Logs Corrections" D ^%ZTLOAD K %ZSI W !,"Report queued to print.",! G DONE
|
---|
| 21 | START ;
|
---|
| 22 | U IO
|
---|
| 23 | N BLDT,RXO,NAMSP,PSOFILL,PSODFN,PSONAM,PSOOUT,PSODV,RXP,SSN,PSODIV,PSODV
|
---|
| 24 | N CANCEL,JOBN,PSOPATID,PSOTOT
|
---|
| 25 | S NAMSP=$$NAMSP^PSOCIDC7
|
---|
| 26 | ;****************************************************** for testing only - next line
|
---|
| 27 | S JOBN="CIDC ACTIVITY LOGS CORRECTION"
|
---|
| 28 | S PSOOUT=0,PSODV=$S($E(IOST)="C":"C",1:"P")
|
---|
| 29 | S PSOPGCT=0,PSOPGLN=IOSL-7,PSOPGCT=1
|
---|
| 30 | S BLDT=$P($G(^XTMP(NAMSP,0,"LAST")),"^",2)
|
---|
| 31 | I '$D(DT) S DT=$$NOW^XLFDT
|
---|
| 32 | D TITLE
|
---|
| 33 | S (PSOTOT,PSONAM)=""
|
---|
| 34 | F S PSONAM=$O(^XTMP(NAMSP,"LOG",PSONAM)) Q:PSONAM="" D
|
---|
| 35 | .S PSODFN=""
|
---|
| 36 | .F S PSODFN=$O(^XTMP(NAMSP,"LOG",PSONAM,PSODFN)) Q:PSODFN="" D
|
---|
| 37 | ..S RXP=""
|
---|
| 38 | ..F S RXP=$O(^XTMP(NAMSP,"LOG",PSONAM,PSODFN,RXP)) Q:RXP="" D
|
---|
| 39 | ...D FULL Q:$G(PSOOUT) S PSONAME=$P($G(^DPT(PSODFN,0)),"^"),PSOTOT=PSOTOT+1
|
---|
| 40 | ...W !,$E(PSONAME,1,14)
|
---|
| 41 | ...D PRTSSN
|
---|
| 42 | ...S RXO=$P($G(^PSRX(RXP,0)),"^")
|
---|
| 43 | ...W ?41," ",RXO ;," (",PSOFILL,")"
|
---|
| 44 | W:PSOTOT'="" !,"Total number of prescriptions modified: ",PSOTOT
|
---|
| 45 | G END
|
---|
| 46 | ;
|
---|
| 47 | FULL ;
|
---|
| 48 | I ($Y+7)>IOSL&('$G(PSOOUT)) D TITLE
|
---|
| 49 | Q
|
---|
| 50 | ;
|
---|
| 51 | TITLE ;
|
---|
| 52 | I $G(PSODV)="C",$G(PSOPGCT)'=1 W ! K DIR S DIR(0)="E" D ^DIR K DIR I 'Y S PSOOUT=1 Q
|
---|
| 53 | ;
|
---|
| 54 | W @IOF D
|
---|
| 55 | . W !,"Patch PSO*7*239 - Corrected Activity and Copay Activity logs",!!
|
---|
| 56 | . W "Note that this report reflects all prescriptions where the activity and/or",!
|
---|
| 57 | . W "copay activity logs were corrected. For detailed information, please view",!
|
---|
| 58 | . W "the activity and copay activity log on the prescription.",!
|
---|
| 59 | ;
|
---|
| 60 | S Y=DT X ^DD("DD") W !,"Date printed: ",Y,?70,"Page: ",PSOPGCT,!
|
---|
| 61 | F MJT=1:1:79 W "="
|
---|
| 62 | ;W !?55,"Updated",?67,"Updated"
|
---|
| 63 | ;W !,?55,"Activity",?67,"COPAY"
|
---|
| 64 | W !,"PATIENT NAME (SSN) DIV",?42,"RX# " ;,?55,"Log",?67,"Activity Log" ;,?55,"RELEASE DATE",?69,"REL BILL"
|
---|
| 65 | W !,"--------------- ------- --------------",?42,"------------"
|
---|
| 66 | ;W ?55,"------------",?67,"-----------"
|
---|
| 67 | S PSOPGCT=PSOPGCT+1
|
---|
| 68 | Q
|
---|
| 69 | ;
|
---|
| 70 | END ;
|
---|
| 71 | I '$G(PSOOUT),$G(PSODV)="C" W !!,"** End of Report **" K DIR S DIR(0)="E",DIR("A")="Press Return to continue" D ^DIR K DIR
|
---|
| 72 | I $G(PSODV)="C" W !
|
---|
| 73 | E W @IOF
|
---|
| 74 | DONE ;
|
---|
| 75 | K MJT,PSOPGCT,PSOPGLN,Y,DIR,X,IOP,POP,IO("Q"),DIRUT,DUOUT,DTOUT
|
---|
| 76 | D ^%ZISC S:$D(ZTQUEUED) ZTREQ="@"
|
---|
| 77 | Q
|
---|
| 78 | ;
|
---|
| 79 | PRTSSN ;
|
---|
| 80 | S SSN=$P(^DPT(PSODFN,0),"^",9),SSN=$E(SSN,$L(SSN)-3,$L(SSN))
|
---|
| 81 | S PSOPATID=$E(PSONAM,1)_SSN
|
---|
| 82 | S PSODIV=$P($G(^PSRX(RXP,2)),"^",9)
|
---|
| 83 | S:PSODIV'="" PSODIV=$P($G(^PS(59,PSODIV,0)),"^",1)
|
---|
| 84 | W ?17,"("_PSOPATID_")"_" "_$E(PSODIV,1,15)
|
---|
| 85 | Q
|
---|
| 86 | ;------
|
---|
| 87 | LOCKED ;LIST OF LOCKED RX'S
|
---|
| 88 | N JOBN,NAMSP,ZTDESC,ZTRTN,ZTQUEUED,ZTREQ,PSODV
|
---|
| 89 | S NAMSP=$$NAMSP^PSOCIDC7
|
---|
| 90 | S JOBN="CIDC ACTIVITY LOG CORRECTION - LOCKED PRESCRIPTIONS"
|
---|
| 91 | L +^XTMP(NAMSP):0 I '$T D Q
|
---|
| 92 | .W !,JOBN_" job for PSO*7*239 is still running. Halting..."
|
---|
| 93 | L -^XTMP(NAMSP)
|
---|
| 94 | W !!,"This report reflects all prescriptions where the activity and",!
|
---|
| 95 | W "copay activity logs could not be corrected due to the Rx being locked."
|
---|
| 96 | ;
|
---|
| 97 | W !!,"You may queue the report to print, if you wish.",!
|
---|
| 98 | ;
|
---|
| 99 | DVC2 ;
|
---|
| 100 | K %ZIS,POP,IOP S %ZIS="QM" D ^%ZIS I $G(POP) W !!,"Nothing queued to print.",! G DONE
|
---|
| 101 | QUEUE2 ;
|
---|
| 102 | I $D(IO("Q")) S ZTRTN="START2^PSOCIDC9",ZTDESC=JOBN_" CIDC Activity Logs Corrections - Locked Rx's" D ^%ZTLOAD K %ZSI W !,"Report queued to print.",! G DONE
|
---|
| 103 | START2 ;
|
---|
| 104 | U IO
|
---|
| 105 | N BLDT,NAMSP,PSODFN,PSONAM,PSONAME,PSOOUT,PSODV,RXP,SSN,PSODIV,PSOPGCT,PSOOUT
|
---|
| 106 | N CANCEL,JOBN,PSOPATID,PSOTOT,PSONCNT,PSORXN
|
---|
| 107 | S NAMSP=$$NAMSP^PSOCIDC7
|
---|
| 108 | S JOBN="CIDC ACTIVITY LOGS CORRECTION - Locked Rx report"
|
---|
| 109 | S (PSOPGCT,PSONCNT,PSOOUT)=0,PSODV=$S($E(IOST)="C":"C",1:"P")
|
---|
| 110 | S PSOPGLN=IOSL-7,PSOPGCT=1,RXP=""
|
---|
| 111 | S BLDT=$P($G(^XTMP(NAMSP,0,"LAST")),"^",2)
|
---|
| 112 | I '$D(DT) S DT=$$NOW^XLFDT
|
---|
| 113 | D TITLE2
|
---|
| 114 | F S RXP=$O(^XTMP(NAMSP,0,"LOCKED RX",RXP)) Q:RXP="" D
|
---|
| 115 | . D FULL2 Q:$G(PSOOUT)
|
---|
| 116 | . S PSONCNT=PSONCNT+1
|
---|
| 117 | . S (DFN,PSODFN)=$P($G(^PSRX(RXP,0)),"^",2),PSORXN=$P($G(^PSRX(RXP,0)),"^")
|
---|
| 118 | . S (PSONAME,PSONAM)=$P($G(^DPT(PSODFN,0)),"^") W !,$E(PSONAME,1,14)
|
---|
| 119 | . D PRTSSN
|
---|
| 120 | . W ?41," ",PSORXN
|
---|
| 121 | . W:^XTMP(NAMSP,0,"LOCKED RX",RXP)'="" ?60,"CORRECTED"
|
---|
| 122 | W !!,"Total number of prescriptions locked: ",PSONCNT,!
|
---|
| 123 | G END
|
---|
| 124 | Q
|
---|
| 125 | ;
|
---|
| 126 | FULL2 ;
|
---|
| 127 | I ($Y+7)>IOSL&('$G(PSOOUT)) D TITLE2
|
---|
| 128 | Q
|
---|
| 129 | ;
|
---|
| 130 | TITLE2 ;
|
---|
| 131 | I $G(PSODV)="C",$G(PSOPGCT)'=1 W ! K DIR S DIR(0)="E" D ^DIR K DIR I 'Y S PSOOUT=1 Q
|
---|
| 132 | ;
|
---|
| 133 | W @IOF D
|
---|
| 134 | . W !,"Patch PSO*7*239 - Locked Prescription Number Report",!!
|
---|
| 135 | . W "Note that this report reflects all prescriptions where the activity and/or",!
|
---|
| 136 | . W "copay activity logs could not be corrected. For detailed information,",!
|
---|
| 137 | . W "please view the activity and copay activity log on the prescription.",!
|
---|
| 138 | . W !!,"Note that FIXONE^PSOCIDC9 can be run from programmer's mode"
|
---|
| 139 | . W !,"to correct individual prescriptions.",!!
|
---|
| 140 | ;
|
---|
| 141 | S Y=DT X ^DD("DD") W !,"Date printed: ",Y,?70,"Page: ",PSOPGCT,!
|
---|
| 142 | F MJT=1:1:79 W "="
|
---|
| 143 | ;
|
---|
| 144 | W !,"PATIENT NAME (SSN) DIV",?42,"RX# "
|
---|
| 145 | W !,"--------------- ------- --------------",?42,"------------"
|
---|
| 146 | S PSOPGCT=PSOPGCT+1
|
---|
| 147 | Q
|
---|
| 148 | ;
|
---|
| 149 | FIXONE ;FIX LOCKED RX'S
|
---|
| 150 | N RXP,SEQ,CSEQ,PSOMSG,PSONTIM,PSOCHECK,FIXONE,PSOFONE,NAMSP
|
---|
| 151 | W @IOF D
|
---|
| 152 | . W !,"This function is used to correct individual prescriptions that were locked"
|
---|
| 153 | . W !,"during the CIDC Activity Log clean-up process. It verifies whether the"
|
---|
| 154 | . W !,"prescription needs to be corrected, and if so corrects it. If the Rx still"
|
---|
| 155 | . W !,"cannot be locked for correction, a message stating such will be displayed."
|
---|
| 156 | . W !,"Otherwise, a message stating that no correction is needed will be displayed.",!
|
---|
| 157 | . W !,"For detailed information please view the activity and copay activity log on"
|
---|
| 158 | . W !,"the prescription. For a listing of locked Rx's, type D LOCKED^PSOCIDC9 at"
|
---|
| 159 | . W !,"the programmer's prompt.",!
|
---|
| 160 | ;
|
---|
| 161 | FIX2 ;
|
---|
| 162 | S (PSOMSG,PSONTIM,FIXONE,PSOFONE)=""
|
---|
| 163 | K DIC
|
---|
| 164 | W ! S DIC="^PSRX(",DIC(0)="QEA" D ^DIC Q:Y<0
|
---|
| 165 | S RXP=+Y,(DFN,PSODFN)=$P($G(^PSRX(RXP,0)),"^",2),PSONAM=$P($G(^DPT(PSODFN,0)),"^")
|
---|
| 166 | W !,"For Patient: ",PSONAM
|
---|
| 167 | S (PSOCHECK,SEQ,CSEQ)=0,NAMSP=$$NAMSP^PSOCIDC7
|
---|
| 168 | I $D(^PSRX(RXP,"A",0)) F S SEQ=$O(^PSRX(RXP,"A",SEQ)) Q:SEQ="" I $G(^PSRX(RXP,"A",SEQ,0))["BKGD CIDC" S PSOCHECK=1
|
---|
| 169 | I $D(^PSRX(RXP,"COPAY",0)) F S CSEQ=$O(^PSRX(RXP,"COPAY",CSEQ)) Q:CSEQ="" I $G(^PSRX(RXP,"COPAY",CSEQ,0))["BKGD CIDC" S PSOCHECK=1
|
---|
| 170 | I 'PSOCHECK W !!,"No changes are needed for this prescription.",! G FIX2
|
---|
| 171 | S FIXONE=1 D CHECK^PSOCIDC8
|
---|
| 172 | I '$G(PSOFONE) W !,"Activity logs corrected.",!! S ^XTMP("PSOCIDC7",0,"LOCKED RX",RXP)=DUZ_"^"_$H
|
---|
| 173 | G FIX2
|
---|
| 174 | Q
|
---|