Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  Global Variables Directly Accessed |  Label References |  Naked Globals |  Local Variables |  Marked Items  | All
Print Page as PDF
Routine: PSOCPDUP

Package: Outpatient Pharmacy

Routine: PSOCPDUP


Information

PSOCPDUP ;BIR/SAB - Dup drug and class checker for copy orders ;1/3/05 11:34am

Source Information

Source file <PSOCPDUP.m>

Call Graph

Call Graph

Call Graph Total: 12

Package Total Call Graph
Outpatient Pharmacy 9 ^PSOBUILD  (,NVA)^PSODRDU1  PRSTAT^PSODRDUP  STAT^PSOFUNC  (CLS,DUP)^PSOORRD2  REMOTE^PSOORRDI  $$TITRX^PSOUTL  FSIG^PSOUTLA  
EN2^PSOUTLA1  
Order Entry Results Reporting 1 ($$HAVEHDR,HAVEHDR)^ORRDI1  
Pharmacy Data Management 1 (PSOL,PSOUL)^PSSLOCK  
VA FileMan 1 ^DIR  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 1

Package Total Caller Graph
Outpatient Pharmacy 1 PSODRDUP  

Entry Points

Name Comments DBIA/ICR reference
EXIT
DUP ; Duplicate Drug Check
DATA
ASKCAN
CLS ; - Duplicate Drug Class Check
ULRX ;
REMOTE ;
REMOTE2 ;

External References

Name Field # of Occurrence
^DIR ASKCAN+1, ASKCAN+2, ASKCAN+4, ASKCAN+5, ASKCAN+9, CLS+4
$$HAVEHDR^ORRDI1 REMOTE+3
HAVEHDR^ORRDI1 REMOTE+2
^PSOBUILD EXIT
^PSODRDU1 PSOCPDUP+7
NVA^PSODRDU1 PSOCPDUP+8
PRSTAT^PSODRDUP DATA+2
STAT^PSOFUNC DATA+1
CLS^PSOORRD2 REMOTE+8
DUP^PSOORRD2 REMOTE+7
REMOTE^PSOORRDI REMOTE+6
$$TITRX^PSOUTL DUP+1
FSIG^PSOUTLA DATA+3
EN2^PSOUTLA1 DATA+4
PSOL^PSSLOCK ASKCAN+5
PSOUL^PSSLOCK ULRX+2

Interaction Calls

Name Line Occurrences
Function Call: WRITE
  • Prompt: !,PSONULN,!,$C(7),"DUPLICATE DRUG "_$P(DNM,"^")_" in Prescription: ",$P(^PSRX(+PSOSD(STA,DNM),0),"^"),$$TITRX^PSOUTL(+PSOSD(STA,DNM))
  • Line Location: DUP+1
Function Call: WRITE
  • Prompt: !!,$J("Status: ",24)
  • Line Location: DATA+1
Function Call: WRITE
  • Prompt: ST
  • Line Location: DATA+1
Function Call: WRITE
  • Prompt: ST
  • Line Location: DATA+1
Function Call: WRITE
  • Prompt: !,$J("SIG: ",24)
  • Line Location: DATA+5
Function Call: WRITE
  • Prompt: $G(BSIG(1))
  • Line Location: DATA+5
Function Call: WRITE
  • Prompt: !?24,$G(BSIG(PSREV))
  • Line Location: DATA+6
Function Call: WRITE
  • Prompt: !,$J("QTY: ",24)_$P(DUPRX0,"^",7),?40,$J("# of refills: ",24)_RFLS
  • Line Location: DATA+8
Function Call: WRITE
  • Prompt: !,$J("Provider: ",24)_PHYS,?40,$J("Refills remaining: ",24),RFLS-$S($D(^PSRX(RXREC,1,0)):$P(^(0),"^",4),1:0)
  • Line Location: DATA+9
Function Call: WRITE
  • Prompt: !?40,$J("Last filled on: ",24)_$E(LSTFL,4,5)_"/"_$E(LSTFL,6,7)_"/"_$E(LSTFL,2,3),!?40,$J("Days Supply: ",24)_$P(DUPRX0,"^",8)
  • Line Location: DATA+10
Function Call: WRITE
  • Prompt: !,"PATIENT ON AUTHORIZED ABSENCE!"
  • Line Location: DATA+11
Function Call: WRITE
  • Prompt: !!,"Prescription "_$S(+$G(PSOSD(STA,DNM)):$P($G(^PSRX(+$G(PSOSD(STA,DNM)),0)),"^")_" ",1:"")_"is on Provider Hold, it cannot be discontinued.",!
  • Line Location: ASKCAN+3
Function Call: WRITE
  • Prompt: !!,$P(PSOMSG,"^",2)
  • Line Location: ASKCAN+6
Function Call: WRITE
  • Prompt: !!,"Prescription "_$P($G(^PSRX(+$G(RXRECLOC),0)),"^")_" is on Provider Hold, it cannot be discontinued.",!
  • Line Location: ASKCAN+13
Function Call: WRITE
  • Prompt: !!,"Duplicate "_$S($G(CLS):"Class",1:"Drug")_" will be discontinued after the acceptance of the new order.",!
  • Line Location: ASKCAN+15
Function Call: WRITE
  • Prompt: !,PSONULN
  • Line Location: CLS+1
Function Call: WRITE
  • Prompt: !?5,$C(7),"*** SAME CLASS *** OF DRUG IN RX #"_$P(^PSRX(+PSOSD(STA,DNM),0),"^")_" FOR "_$P(DNM,"^"),!,"CLASS: "_PSODRUG("VA CLASS")
  • Line Location: CLS+2
Function Call: WRITE
  • Prompt: @IOF
  • Condition for execution: $D(IOF)
  • Line Location: REMOTE+5
Function Call: WRITE
  • Prompt: !,"Now doing remote order checks. Please wait..."
  • Line Location: REMOTE+5
Routine Call
  • DIR
  • Line Location:
    • ASKCAN+1
    • ASKCAN+2
    • ASKCAN+4
    • ASKCAN+5
    • ASKCAN+9
    • CLS+4

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^PS(53 - [#53] DATA+11
^PSRX - [#52] DUP+1, DATADATA+3, DATA+4, DATA+9, DATA+10, ASKCAN+3, ASKCAN+7, ASKCAN+8, ASKCAN+13
CLS+2
^TMP("PSORXDC" ASKCAN+11!, ASKCAN+16*
^TMP($J PSOCPDUP+15!, REMOTE+7, REMOTE+8, REMOTE2+1!
^VA(200 - [#200] DATA+8
^XTMP("ORRDI" REMOTE+4
^XUSEC("PSORPH" PSOCPDUP+9, PSOCPDUP+13, ASKCAN+1, ASKCAN+2

Label References

Name Line Occurrences
CLS PSOCPDUP+14
DATA CLS+3
DUP PSOCPDUP+10, PSOCPDUP+11, PSOCPDUP+12, PSOCPDUP+13
REMOTE PSOCPDUP+16
REMOTE2 REMOTE+4
ULRX ASKCAN+12, ASKCAN+13

Naked Globals

Name Field # of Occurrence
^(0 DATA+8, DATA+9

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
ACT EXIT!, ASKCAN+9*, ASKCAN+10, ASKCAN+14, ASKCAN+16
BSIG DATA+3!, DATA+7!
BSIG( DATA+3*, DATA+6
BSIG(1 DATA+5, DATA+6
CAN EXIT!, CLS+3*
CLS ASKCAN+1, ASKCAN+2, ASKCAN+10!, ASKCAN+13!, ASKCAN+15, ASKCAN+17!, CLS+1*
DA EXIT!, ASKCAN+9*, ASKCAN+16
DIR EXIT!, ASKCAN+1!, ASKCAN+2!, ASKCAN+4!, ASKCAN+5!, ASKCAN+9!, CLS+4!
DIR("?" ASKCAN+8*
DIR("A" ASKCAN+1*, ASKCAN+2*, ASKCAN+4*, ASKCAN+5*, ASKCAN+8*, CLS+4*
DIR(0 ASKCAN+1*, ASKCAN+2*, ASKCAN+4*, ASKCAN+5*, ASKCAN+8*, CLS+4*
DIRUT CLS+4!
DNM PSOCPDUP+5*, PSOCPDUP+6*, PSOCPDUP+9, PSOCPDUP+13, PSOCPDUP+14, EXIT!, DUP+1, DUP+2, ASKCANASKCAN+3
ASKCAN+8, ASKCAN+13, ASKCAN+16, CLS+2, CLS+3
DTOUT CLS+4!
DUOUT CLS+4!
DUP DUP+1*, ASKCAN+3, ASKCAN+4!, ASKCAN+10!, ASKCAN+13!, ASKCAN+17!, CLS+1!
DUPRX0 EXIT!, DATA*, DATA+8, DATA+10
DUZ PSOCPDUP+9, PSOCPDUP+13, ASKCAN+1, ASKCAN+2, ASKCAN+10, ASKCAN+14
FSIG DATA+3!, DATA+4!
FSIG( DATA+3
IOF REMOTE+5
ISSD EXIT!, DATA*, DATA+1
J EXIT!, DATA+1*
LSTFL EXIT!, DATA+10*
MSG EXIT!, DUP+2*, ASKCAN+10*, ASKCAN+14*, ASKCAN+16, CLS+1*
PHYS EXIT!, DATA+8*, DATA+9
PSOCD EXIT!
PSOCLC EXIT!, ASKCAN+10*, ASKCAN+14*
PSOCLOZ EXIT!
PSOCPCLS PSOCPDUP+14*!, ASKCAN+5, ASKCAN+12, ASKCAN+17!
>> PSODFN REMOTE+6
>> PSODRUG("IEN" REMOTE+6
>> PSODRUG("NAME" PSOCPDUP+9, PSOCPDUP+13, PSOCPDUP+14
>> PSODRUG("VA C LASS" , PSOCPDUP+14, CLS+2
PSOELSE CLS+3*, CLS+4, CLS+5!
PSOLDT EXIT!
PSOLR EXIT!
PSOMSG ASKCAN+5!, ASKCAN+6, ASKCAN+8!
>> PSONOOR ASKCAN+16*
PSONULN PSOCPDUP+5*, EXIT!, DUP+1, DATA+11, CLS+1
>> PSOPAR PSOCPDUP+10, PSOCPDUP+11, PSOCPDUP+12, DATA+11, ASKCAN+1, ASKCAN+2, CLS+3
>> PSORX("DFLG" PSOCPDUP+6, PSOCPDUP+9, PSOCPDUP+10, PSOCPDUP+11, PSOCPDUP+12, PSOCPDUP+13, ASKCAN+1*, ASKCAN+2*, ASKCAN+4*, ASKCAN+5*
ASKCAN+10*, ASKCAN+13*, REMOTE+1
>> PSORX("PATIEN T STATUS" , DATA+11
>> PSOSD( PSOCPDUP+6, PSOCPDUP+14, DUP+1, DUP+2, ASKCANASKCAN+3, ASKCAN+8, ASKCAN+13, CLS+2, CLS+3
PSREV DATA+3*, DATA+4!, DATA+6*, DATA+7!
REA EXIT!, ASKCAN+10*, ASKCAN+14*, ASKCAN+16
RFLS EXIT!, DATA*, DATA+8, DATA+9
RX0 EXIT!, DATA*, DATA+1!
RX2 EXIT!, DATA*, DATA+1!
RXREC EXIT!, DUP+2*, DATADATA+1, DATA+2, DATA+3, DATA+4, DATA+9, DATA+10, ASKCAN+9
ASKCAN+11, ASKCAN+16, CLS+3*
RXRECCOP ASKCAN+5, ASKCAN+7, CLS+3*, CLS+5!, ULRX+1, ULRX+2
RXRECLOC ASKCAN+13!
SIG EXIT!, DATA*
ST EXIT!, DATA+1
>> STA PSOCPDUP+5*, PSOCPDUP+6*, PSOCPDUP+7, PSOCPDUP+8, PSOCPDUP+14, DUP+1, DUP+2, ASKCANASKCAN+3, ASKCAN+8
ASKCAN+13, ASKCAN+16, CLS+2, CLS+3
Y EXIT!, ASKCAN+10
ZZ EXIT!

Marked Items

Name Field # of Occurrence
$T(HAVEHDR^ORRDI1 REMOTE+2
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  Global Variables Directly Accessed |  Label References |  Naked Globals |  Local Variables |  Marked Items  | All