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 |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All
Print Page as PDF
Routine: PSOCLUTL

Package: Outpatient Pharmacy

Routine: PSOCLUTL


Information

PSOCLUTL ;BHAM ISC/DMA - utilities for clozapine reporting system ;4 Oct 2019 12:29:40

Source Information

Source file <PSOCLUTL.m>

Call Graph

Call Graph

Call Graph Total: 9

Package Total Call Graph
VA FileMan 4 (,$$FIND1,FIND)^DIC  ^DIE  $$GET1^DIQ  ^DIR  
Kernel 2 $$FMADD^XLFDT  $$DEA^XUSER  
Outpatient Pharmacy 2 EN^PSOHLUP  $$QTSCH^PSOSIG  
Registration 1 DEM^VADPT  

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: 11

Package Total Caller Graph
Outpatient Pharmacy 9 PSOCLO1  PSOCLOU  PSODIR  PSOL EDIT  PSOL REGISTER PATIENT  PSOORFI2  PSOORNE2  PSORENW4  
PSOSIGMX  
Inpatient Medications 1 PSJCLOZ  
Mental Health 1 YSCLTST2  

Entry Points

Name Comments DBIA/ICR reference
REG ; Register Clozapine Patient
NUMBER ;
NUMBER1 ;
PHY ;
SAVE ;
END ;
END1 ;
FACILITY ;Enter facility DEA number to set up clozapine system
AGAIN ; re-enter patient - new number, status and provider
PHY1 ;
OVER ;allow registration of patients and clozapine numbers not yet authorized by the NCCC.
CLOZPAT ;VERIFY PATIENT IS A CLOZAPINE PATIENT
PROVCHK(PROV) ;
MSG1 ;
MSG2 ;
MSG3 ;
MSG4 ;
MSG5 ;
MSG6 ; ; ** START NCC REMEDIATION ** 457 AND PSJ 327/RTW MSG 6 added for new critically low ANC levels clozapine override requirements
MSG9 ;
MSG10 ;
CRXTMP(DFN,PSOYS) ; track OP 4 day supply
CRXTMPI(DFN,PSOYS) ; track IP 4 day supply
CLKEYWRN() ; uniform message to users - PSO*7*457
GETREGYS(PSODFN)
  • ICR #7314
    • Status: Active
    • Usage: Private
    QTYCHK(PSORXARY,NUMDAYS) ; check/adjust quantity, PSORXARY passed by ref., NUMDAYS is # of days

    External References

    Name Field # of Occurrence
    ^DIC REG+3, PHY+3, AGAIN+1
    $$FIND1^DIC NUMBER+1, NUMBER+4, NUMBER+6, AGAIN+10, AGAIN+12, CLOZPAT+5, PROVCHK+7, GETREGYS+4
    FIND^DIC REG+7, AGAIN+6
    ^DIE SAVE+3
    $$GET1^DIQ REG+4, REG+5, REG+21, NUMBER+1, NUMBER+5, SAVE+1, AGAIN+1, AGAIN+2, AGAIN+11, AGAIN+13
    AGAIN+14, PHY1+7, CLOZPAT+1, CLOZPAT+3, CLOZPAT+6, GETREGYS+3
    ^DIR REG+18, NUMBER+3, PHY+19, AGAIN+9, PHY1+1, OVER+1
    EN^PSOHLUP REG+5
    $$QTSCH^PSOSIG QTYCHK+5
    DEM^VADPT PHY+9
    $$FMADD^XLFDT CRXTMP+1, CRXTMPI+1
    $$DEA^XUSER PHY1+5, PROVCHK+5

    Interaction Calls

    Name Line Occurrences
    Function Call: WRITE
    • Prompt: !!,PSONAME_" has not been authorized for Clozapine"
    • Line Location: REG+12
    Function Call: WRITE
    • Prompt: !,"by the NCCC (National Clozapine Coordinating Center)."
    • Line Location: REG+13
    Function Call: WRITE
    • Prompt: !,"This option is only available for known NCCC-registered patients."
    • Line Location: REG+14
    Function Call: WRITE
    • Prompt: !,"To dispense clozapine under a temporary registration for an authorized emergency"
    • Line Location: REG+15
    Function Call: WRITE
    • Prompt: !,"override situation, use the VistA Patient Prescription Processing option."
    • Line Location: REG+16
    Function Call: WRITE
    • Prompt: !,"Contact the NCCC during regular business hours for registration.",!
    • Line Location: REG+17
    Function Call: WRITE
    • Prompt: !!,PSONAME_" is already registered with number "_PSO4,!!,"Use the edit option to change registration data, or",!,"contact your supervisor",!
    • Line Location: REG+21
    Function Call: WRITE
    • Prompt: !,"Not registered",!
    • Line Location: NUMBER+3
    Function Call: WRITE
    • Prompt: !,PSO2," is already assigned to ",$$GET1^DIQ(2,PSOEX,.01)
    • Line Location: NUMBER+5
    Function Call: WRITE
    • Prompt: !,"Please contact your supervisor"
    • Line Location: NUMBER+5
    Function Call: WRITE
    • Prompt: !
    • Line Location: NUMBER+6
    Function Call: WRITE
    • Prompt: !!,"The NCCC in Dallas has not authorized "_PSO2_" to be used",!
    • Line Location: NUMBER+7
    Function Call: WRITE
    • Prompt: "at this facility. Contact the NCCC in Dallas for authorization."
    • Line Location: NUMBER+8
    Function Call: WRITE
    • Prompt: !!,"Not registered",!!
    • Line Location: PHY+4
    Function Call: WRITE
    • Prompt: !!,$C(7),"Patient "_PSONAME_" is being edited by another user! Try Later."
    • Line Location: SAVE+2
    Function Call: WRITE
    • Prompt: !!,"Patient Not Registered"
    • Line Location: END1+1
    Function Call: WRITE
    • Prompt: !,PSONAME_" is not registered. Use the register option."
    • Line Location: AGAIN+2
    Function Call: WRITE
    • Prompt: !,PSO2," already assigned to ",$$GET1^DIQ(2,PSOEX,.01)
    • Line Location: AGAIN+11
    Function Call: WRITE
    • Prompt: !,"CLOZAPINE STATUS: "_$$GET1^DIQ(55,PSO1,54)
    • Line Location: AGAIN+13
    Function Call: WRITE
    • Prompt: !!,"Only providers with DEA numbers entered in the New Person",!,"file can register patients in this program.",!!
    • Line Location: PHY1+3
    Function Call: WRITE
    • Prompt: !!?5,"No changes made.",$C(7),!
    • Line Location: PHY1+8
    Function Call: WRITE
    • Prompt: !
    • Line Location: OVER+1
    Function Call: WRITE
    • Prompt: !!,"Permission to dispense clozapine has been denied. The results of the latest",!
    • Line Location: MSG1+1
    Function Call: WRITE
    • Prompt: "Lab Test drawn in the past 7 days show ANC results but No Matching WBC.",!
    • Line Location: MSG1+2
    Function Call: WRITE
    • Prompt: "If you wish to dispense outside the FDA and VA protocol ANC limits,",!
    • Line Location: MSG1+3
    Function Call: WRITE
    • Prompt: "document your request to Request for Override of Pharmacy Lockout ",!
    • Line Location: MSG1+4
    Function Call: WRITE
    • Prompt: "(from VHA Handbook 1160.02) Director of the",!
    • Line Location: MSG1+5
    Function Call: WRITE
    • Prompt: "VA National Clozapine Coordinating Center",!
    • Line Location: MSG1+6
    Function Call: WRITE
    • Prompt: "(Phone: 214-857-0068 Fax: 214-857-0339) for a one-time override permission.",!
    • Line Location: MSG1+7
    Function Call: WRITE
    • Prompt: !,"No order entered!"
    • Line Location: MSG1+8
    Function Call: WRITE
    • Prompt: !!,"Permission to dispense clozapine has been denied. The results of the latest",!
    • Line Location: MSG2+1
    Function Call: WRITE
    • Prompt: "Lab Test drawn in the past 7 days show No ANC results. If you wish to dispense",!
    • Line Location: MSG2+2
    Function Call: WRITE
    • Prompt: "outside the FDA and VA protocol ANC limits, document your request to Request",!
    • Line Location: MSG2+3
    Function Call: WRITE
    • Prompt: "for Override of Pharmacy Lockout (from VHA Handbook 1160.02) Director of the",!
    • Line Location: MSG2+4
    Function Call: WRITE
    • Prompt: "VA National Clozapine Coordinating Center",!
    • Line Location: MSG2+5
    Function Call: WRITE
    • Prompt: "(Phone: 214-857-0068 Fax: 214-857-0339) for a one-time override permission.",!
    • Line Location: MSG2+6
    Function Call: WRITE
    • Prompt: !,"No order entered!"
    • Line Location: MSG2+7
    Function Call: WRITE
    • Prompt: !,"A CBC/Differential including ANC Must Be Ordered and Monitored on a",!
    • Line Location: MSG3+1
    Function Call: WRITE
    • Prompt: "Daily basis until the ANC above 1000/mm3 with no signs of infection.",!
    • Line Location: MSG3+2
    Function Call: WRITE
    • Prompt: "If ANC is between 1000-1499, therapy can be continued but physician must order",!
    • Line Location: MSG3+3
    Function Call: WRITE
    • Prompt: "lab test three times weekly."
    • Line Location: MSG3+4
    Function Call: WRITE
    • Prompt: !,"Permission to dispense clozapine has been denied. If the results of the latest"
    • Line Location: MSG4+1
    Function Call: WRITE
    • Prompt: !,"Lab Test drawn in the past 7 days show ANC below 1000/mm3 and you wish to"
    • Line Location: MSG4+2
    Function Call: WRITE
    • Prompt: !,"dispense outside the FDA and VA protocol ANC limits, document your request to"
    • Line Location: MSG4+3
    Function Call: WRITE
    • Prompt: !,"Request for Override of Pharmacy Lockout (from VHA Handbook 1160.02)"
    • Line Location: MSG4+4
    Function Call: WRITE
    • Prompt: !,"Director of the VA National Clozapine Coordinating Center"
    • Line Location: MSG4+5
    Function Call: WRITE
    • Prompt: !,"(Phone: 214-857-0068 Fax: 214-857-0339) for a one-time override permission.",!
    • Line Location: MSG4+6
    Function Call: WRITE
    • Prompt: !!,"Permission to dispense clozapine has been denied. Please contact the"
    • Line Location: MSG5+1
    Function Call: WRITE
    • Prompt: !,"Director of the VA National Clozapine Coordinating Center"
    • Line Location: MSG5+2
    Function Call: WRITE
    • Prompt: !!,"Request for Override of Pharmacy Lockout (from VHA Handbook 1160.02)"
    • Line Location: MSG5+3
    Function Call: WRITE
    • Prompt: !,"(Phone: 214-857-0068 Fax: 214-857-0339).",!
    • Line Location: MSG5+4
    Function Call: WRITE
    • Prompt: !!,"This clozapine drug may not be dispensed to the patient at this time based on the available lab tests related to the clozapine treatment program."
    • Line Location: MSG6+1
    Function Call: WRITE
    • Prompt: !!,"Please contact the NCCC to request an override in order to proceed with dispensing this drug. "
    • Line Location: MSG6+2
    Function Call: WRITE
    • Prompt: !!,"Request for Override of Pharmacy Lockout (from VHA Handbook 1160.02)"
    • Line Location: MSG6+3
    Function Call: WRITE
    • Prompt: !!,"The matching ANC counts which caused the lockout are of lab test results performed on "
    • Line Location: MSG6+4
    Function Call: WRITE
    • Prompt: $P(Y,"@")
    • Line Location: MSG6+5
    Function Call: WRITE
    • Prompt: !!,?5,"ANC: "_$P(PSOYS,"^",4),!
    • Line Location: MSG6+6
    Function Call: WRITE
    • Prompt: !,"*** Permission to dispense clozapine has been denied based on the available"
    • Line Location: MSG9+1
    Function Call: WRITE
    • Prompt: !," lab tests related to the clozapine treatment program. ***"
    • Line Location: MSG9+2
    Function Call: WRITE
    • Prompt: !!,"For a National Override to dispense at the patient's normal frequency,"
    • Line Location: MSG9+3
    Function Call: WRITE
    • Prompt: !,"please contact the VA National Clozapine Coordinating Center to request"
    • Line Location: MSG9+4
    Function Call: WRITE
    • Prompt: !,"an Override of Pharmacy Lockout (from VHA Handbook 1160.02)"
    • Line Location: MSG9+5
    Function Call: WRITE
    • Prompt: !,"(Phone: 214-857-0068 Fax: 214-857-0339)."
    • Line Location: MSG9+6
    Function Call: WRITE
    • Prompt: !,"A Special Conditions Local Override can be approved for"
    • Line Location: MSG9+7
    Function Call: WRITE
    • Prompt: !,"(1) weather-related conditions, (2) mail order delays of clozapine, or"
    • Line Location: MSG9+8
    Function Call: WRITE
    • Prompt: !,"(3) inpatient going on leave. With Provider's documentation of approval,"
    • Line Location: MSG9+9
    Function Call: WRITE
    • Prompt: !,"you may dispense a one-time supply not to exceed 4 days.",!
    • Line Location: MSG9+10
    Function Call: WRITE
    • Prompt: !,"*** Permission to dispense clozapine has been denied based on the available"
    • Line Location: MSG10+1
    Function Call: WRITE
    • Prompt: !," lab tests related to the clozapine treatment program. ***"
    • Line Location: MSG10+2
    Function Call: WRITE
    • Prompt: !!,"For a National Override to dispense at the patient's normal frequency,"
    • Line Location: MSG10+3
    Function Call: WRITE
    • Prompt: !,"please contact the VA National Clozapine Coordinating Center to request an"
    • Line Location: MSG10+4
    Function Call: WRITE
    • Prompt: !,"Override of Pharmacy Lockout (from VHA Handbook 1160.02) (Phone: 214-857-0068"
    • Line Location: MSG10+5
    Function Call: WRITE
    • Prompt: !,"Fax: 214-857-0339)."
    • Line Location: MSG10+6
    Function Call: WRITE
    • Prompt: !,"A Special Conditions Local Override for Inpatients can be approved for an"
    • Line Location: MSG10+7
    Function Call: WRITE
    • Prompt: !,"IP Override Order with Outside Lab Results. With Provider's documentation of"
    • Line Location: MSG10+8
    Function Call: WRITE
    • Prompt: !,"approval, you may dispense a one-time IP supply not to exceed 4 days."
    • Line Location: MSG10+9
    Function Call: WRITE
    • Prompt: !,"The ANC from another facility must be recorded in the Progress note/comments"
    • Line Location: MSG10+10
    Function Call: WRITE
    • Prompt: !,"in pharmacy"
    • Line Location: MSG10+11
    Routine Call
    • DIC
    • Line Location:
      • REG+3
      • PHY+3
      • AGAIN+1
    Routine Call
    • DIC
    • Line Location:
      • NUMBER+1
      • NUMBER+4
      • NUMBER+6
      • AGAIN+10
      • AGAIN+12
      • CLOZPAT+5
      • PROVCHK+7
      • GETREGYS+4
    Routine Call
    • DIC
    • Line Location:
      • REG+7
      • AGAIN+6
    Routine Call
    • DIE
    • Line Location:
      • SAVE+3
    Routine Call
    • DIR
    • Line Location:
      • REG+18
      • NUMBER+3
      • PHY+19
      • AGAIN+9
      • PHY1+1
      • OVER+1

    FileMan Files Accessed Via FileMan Db Call

    FileNo Call Tags
    ^DPT - [#2] GET1^DIQ
    ^VA(200 - [#200] Classic Fileman Calls
    200.051 FIND1^DIC
    ^PS(55 - [#55] FIND1^DIC,  GET1^DIQ
    ^YSCL(603.01 - [#603.01] FIND1^DIC,  FIND^DIC,  GET1^DIQ

    Global Variables Directly Accessed

    Name Line Occurrences  (* Changed,  ! Killed)
    ^DD("DD" MSG6+5
    ^PS(55 - [#55] SAVE+2, SAVE+3
    ^TMP("PSO" END+2!
    ^TMP($J END+2!
    ^XTMP("PSJ CLOZ" SAVE+4*
    ^XTMP("PSJ4D-" SAVE+6!, CRXTMPI+1*, CRXTMPI+2*
    ^XTMP("PSO4D-" SAVE+6!, CRXTMP+1*, CRXTMP+2*

    Label References

    Name Line Occurrences
    AGAIN AGAIN+2, AGAIN+7
    END REG+3, NUMBER+3, NUMBER+5, PHY+3, PHY+19, SAVE+2, AGAIN+1, AGAIN+9, AGAIN+11, AGAIN+12
    PHY1+1, PHY1+7
    END1 PHY+3, PHY+19, SAVE+2
    NUMBER NUMBER+6
    OVER NUMBER+8, AGAIN+7, AGAIN+12
    PHY PHY+6
    PHY1 PHY1+5
    PROVCHK PHY+6
    REG REG+21, NUMBER+3, NUMBER+5, PHY+3
    SAVE PHY1+9

    Local Variables

    Legend:

    >> Not killed explicitly
    * Changed
    ! Killed
    ~ Newed

    Name Field # of Occurrence
    % NUMBER+6, END+1!, AGAIN+7, AGAIN+12, OVER+1!, OVER+2*
    %Y END+1!
    ANQX REG+5~, PHY+5*, PHY+6, PHY+19*, SAVE+2*, END1+1, PROVCHK+1*, PROVCHK+5*, PROVCHK+7*, MSG1+9*
    MSG2+8*, MSG4+7*, MSG6+5*
    C END+1!
    CLOZNUM CLOZPAT+3~*, CLOZPAT+4, CLOZPAT+5
    CLOZPAT CLOZPAT+1!, CLOZPAT+4*, CLOZPAT+6*, CLOZPAT+7*
    CLOZST CLOZPAT+1!*, CLOZPAT+2
    CLOZUID CLOZPAT+3~, CLOZPAT+5*, CLOZPAT+6
    D END+1!
    D0 END+1!
    DA SAVE+1*, SAVE+2, SAVE+3, END+1!, AGAIN+1*, AGAIN+2
    DFN PHY+9~*, CLOZPAT+1, CLOZPAT+3, CRXTMP~, CRXTMP+1, CRXTMP+2, CRXTMPI~, CRXTMPI+1, CRXTMPI+2
    DI END+1!
    DIC REG+1~, REG+3*!, PHY+1~, PHY+2*, PHY+3!, END+1!, AGAIN+1*!
    DIC("A" REG+3*, PHY+2*, AGAIN+1*
    DIC("S" PHY+2*
    DIC(0 REG+3*, PHY+2*, AGAIN+1*
    DIE SAVE+1*, END+1!
    >> DILOCKTM SAVE+2
    DIR REG+1~, REG+11~, NUMBER+3!, PHY+1~, PHY+19!, OVER+1!, OVER+3!
    DIR("A" REG+18*, PHY+13*, PHY+14*, PHY+16*, PHY+17*, PHY+18*, OVER+1*
    DIR("B" NUMBER+2*, PHY+19*, OVER+1*
    DIR(0 REG+18*, NUMBER+1*, PHY+19*, AGAIN+9*, PHY1+1*, OVER+1*
    DIRUT NUMBER+3, AGAIN+9, PHY1+1, OVER+3!
    DLAYGO REG+3*!
    DQ END+1!
    DR SAVE+1*, END+1!
    DT SAVE+1, CRXTMP+1, CRXTMPI+1
    DUOUT PHY+19, OVER+3!
    J QTYCHK+2~, QTYCHK+3*, QTYCHK+4, QTYCHK+7
    >> JADOVER NUMBER+6, AGAIN+7*, AGAIN+12
    >> LSTFOUR PHY+11*, PHY+13, PHY+18
    NMIN QTYCHK+2~, QTYCHK+5*, QTYCHK+6
    NUMDAYS QTYCHK~, QTYCHK+1, QTYCHK+7
    PROV PROVCHK~, PROVCHK+1, PROVCHK+5, PROVCHK+7
    >> PSCLOZ PHY+3, PHY+4, PHY+6, PHY+12, PHY+15, END+2
    PSJQUIT PROVCHK+1~*, PROVCHK+5*, PROVCHK+7*
    PSO END+1!
    PSO1 REG+4*, REG+5, REG+7, REG+21, NUMBER+1, NUMBER+5, PHY+9, SAVE+1, SAVE+6, END+1!
    AGAIN+1*, AGAIN+6, AGAIN+11, AGAIN+13, AGAIN+14, PHY1+7
    PSO2 NUMBER+3*, NUMBER+4, NUMBER+5, NUMBER+6, NUMBER+7, PHY+13, PHY+18, SAVE+1, SAVE+4, SAVE+6
    END+1!, AGAIN+9*, AGAIN+10, AGAIN+11, AGAIN+12, PHY1+7
    PSO3 NUMBER1+1*, PHY+14, SAVE+1, END+1!, AGAIN+14*
    PSO4 REG+21*, PHY+7*, SAVE+1, END+1!, PHY1+1*, PHY1+5, PHY1+7
    PSOC END+1!
    PSOCLODT GETREGYS+2~
    PSOCLZN GETREGYS+2~, GETREGYS+3*, GETREGYS+4
    PSOCZPTS REG+1~, AGAIN+5~
    PSOCZPTS("DILIST" REG+10, AGAIN+7
    PSODFN GETREGYS~, GETREGYS+3
    PSOERR REG+1~, AGAIN+5~
    PSOEX NUMBER+4~*, NUMBER+5, AGAIN+10~*, AGAIN+11
    PSOLN END+1!
    PSONAME REG+4*, REG+12, REG+21, PHY+13, PHY+18, SAVE+2, END+1!, AGAIN+1*, AGAIN+2, AGAIN+7
    PSONO END+1!
    PSORXARY QTYCHK~
    PSORXARY("DOS E ORDERED" , QTYCHK+7
    PSORXARY("QTY" QTYCHK+9*
    PSORXARY("RX0" QTYCHK+9*
    PSORXARY("SCHEDULE" QTYCHK+3, QTYCHK+4
    PSOT END+1!
    PSOYS MSG6+5, MSG6+6, CRXTMP~, CRXTMP+2, CRXTMPI~, CRXTMPI+2
    PSOYSIEN GETREGYS+2~, GETREGYS+4*, GETREGYS+5
    QTY QTYCHK+2~, QTYCHK+3*, QTYCHK+7*, QTYCHK+9
    R END+1!
    SCHED QTYCHK+2~, QTYCHK+4*, QTYCHK+5
    >> SSN PHY+10*, PHY+11
    SSNVAERR END+1!
    TMSDLY QTYCHK+2~, QTYCHK+6*, QTYCHK+7
    U SAVE+4, CRXTMP+1, CRXTMPI+1, QTYCHK+9
    VADM PHY+9~
    VADM(2 PHY+10
    X REG+11~
    XMDUZ END+1!
    XMSUB END+1!
    XMTEXT END+1!
    Y REG+3, REG+4, REG+11~, NUMBER+1*, NUMBER+2, NUMBER+3, PHY+3, PHY+6, PHY+7, PHY+19
    END+1!, AGAIN+1, AGAIN+9, PHY1+1, OVER+2, MSG6+5*
    Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  FileMan Files Accessed Via FileMan Db Call |  Global Variables Directly Accessed |  Label References |  Local Variables  | All