1. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 12/8/2017 5:25:37 PM Eastern Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

1.1 Files compared

# Location File Last Modified
1 National Clozapine Coordination.zip\National Clozapine Coordination MH_NCC_PROJECT_5_01_T7_3_0.KID Fri Dec 8 01:23:18 2017 UTC
2 National Clozapine Coordination.zip\National Clozapine Coordination MH_NCC_PROJECT_5_01_T7_3_0.KID Fri Dec 8 21:13:53 2017 UTC

1.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 25 48900
Changed 24 48
Inserted 0 0
Removed 0 0

1.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

1.4 Active regular expressions

No regular expressions were active.

1.5 Comparison detail

  1   KIDS Distr ibution sa ved on Nov  29, 2017@ 07:31:51
  2   MENTAL HEA LTH NCC PR OJECT 5.01  T7.3.0
  3   **KIDS**:Y S*5.01*122 ^PSO*7.0*4 57^PSJ*5.0 *327^OR*3. 0*427^
  4  
  5   **INSTALL  NAME**
  6   YS*5.01*12 2
  7   "BLD",9850 ,0)
  8   YS*5.01*12 2^MENTAL H EALTH^0^31 71129^y
  9   "BLD",9850 ,1,0)
  10   ^^1^1^3160 301^^
  11   "BLD",9850 ,1,1,0)
  12   MENTAL HEA LTH NCC PR OJECT 5.01
  13   "BLD",9850 ,4,0)
  14   ^9.64PA^60 3.03^1
  15   "BLD",9850 ,4,603.03, 0)
  16   603.03
  17   "BLD",9850 ,4,603.03, 2,0)
  18   ^9.641^603 .03^1
  19   "BLD",9850 ,4,603.03, 2,603.03,0 )
  20   CLOZAPINE  PARAMETERS   (File-to p level)
  21   "BLD",9850 ,4,603.03, 2,603.03,1 ,0)
  22   ^9.6411^11 ^4
  23   "BLD",9850 ,4,603.03, 2,603.03,1 ,8,0)
  24   RX LAB PRO D LISTENER
  25   "BLD",9850 ,4,603.03, 2,603.03,1 ,9,0)
  26   DEMOGRAPHI C PROD LIS TENER
  27   "BLD",9850 ,4,603.03, 2,603.03,1 ,10,0)
  28   RX LAB TES T LISTENER
  29   "BLD",9850 ,4,603.03, 2,603.03,1 ,11,0)
  30   DEMOGRAPHI C TEST LIS TENER
  31   "BLD",9850 ,4,603.03, 222)
  32   y^y^p^^^^n ^^n
  33   "BLD",9850 ,4,603.03, 224)
  34  
  35   "BLD",9850 ,4,"APDD", 603.03,603 .03)
  36  
  37   "BLD",9850 ,4,"APDD", 603.03,603 .03,8)
  38  
  39   "BLD",9850 ,4,"APDD", 603.03,603 .03,9)
  40  
  41   "BLD",9850 ,4,"APDD", 603.03,603 .03,10)
  42  
  43   "BLD",9850 ,4,"APDD", 603.03,603 .03,11)
  44  
  45   "BLD",9850 ,4,"B",603 .03,603.03 )
  46  
  47   "BLD",9850 ,6.3)
  48   61
  49   "BLD",9850 ,"ABPKG")
  50   n
  51   "BLD",9850 ,"INI")
  52   BKGRD^YSCL TEST
  53   "BLD",9850 ,"INID")
  54   ^n^n
  55   "BLD",9850 ,"INIT")
  56   START^YSCL 122P
  57   "BLD",9850 ,"KRN",0)
  58   ^9.67PA^77 9.2^20
  59   "BLD",9850 ,"KRN",.4, 0)
  60   .4
  61   "BLD",9850 ,"KRN",.40 1,0)
  62   .401
  63   "BLD",9850 ,"KRN",.40 2,0)
  64   .402
  65   "BLD",9850 ,"KRN",.40 3,0)
  66   .403
  67   "BLD",9850 ,"KRN",.5, 0)
  68   .5
  69   "BLD",9850 ,"KRN",.84 ,0)
  70   .84
  71   "BLD",9850 ,"KRN",3.6 ,0)
  72   3.6
  73   "BLD",9850 ,"KRN",3.8 ,0)
  74   3.8
  75   "BLD",9850 ,"KRN",9.2 ,0)
  76   9.2
  77   "BLD",9850 ,"KRN",9.8 ,0)
  78   9.8
  79   "BLD",9850 ,"KRN",9.8 ,"NM",0)
  80   ^9.68A^9^9
  81   "BLD",9850 ,"KRN",9.8 ,"NM",1,0)
  82   YSCLTST2^^ 0^B1123883 30
  83   "BLD",9850 ,"KRN",9.8 ,"NM",2,0)
  84   YSCLSERV^^ 0^B1075281 31
  85   "BLD",9850 ,"KRN",9.8 ,"NM",3,0)
  86   YSCLDIS^^0 ^B31390614
  87   "BLD",9850 ,"KRN",9.8 ,"NM",4,0)
  88   YSCLTST3^^ 0^B6870017 7
  89   "BLD",9850 ,"KRN",9.8 ,"NM",5,0)
  90   YSCLTST5^^ 0^B1356985 34
  91   "BLD",9850 ,"KRN",9.8 ,"NM",6,0)
  92   YSCLTST6^^ 0^B3330772 0
  93   "BLD",9850 ,"KRN",9.8 ,"NM",7,0)
  94   YSCLSRV1^^ 0^B2762283
  95   "BLD",9850 ,"KRN",9.8 ,"NM",8,0)
  96   YSCL122P^^ 0^B1417520
  97   "BLD",9850 ,"KRN",9.8 ,"NM",9,0)
  98   YSCLTST4^^ 0^B1936062 7
  99   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCL122P" ,8)
  100  
  101   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLDIS", 3)
  102  
  103   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLSERV" ,2)
  104  
  105   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLSRV1" ,7)
  106  
  107   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLTST2" ,1)
  108  
  109   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLTST3" ,4)
  110  
  111   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLTST4" ,9)
  112  
  113   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLTST5" ,5)
  114  
  115   "BLD",9850 ,"KRN",9.8 ,"NM","B", "YSCLTST6" ,6)
  116  
  117   "BLD",9850 ,"KRN",19, 0)
  118   19
  119   "BLD",9850 ,"KRN",19, "NM",0)
  120   ^9.68A^3^3
  121   "BLD",9850 ,"KRN",19, "NM",1,0)
  122   YSCL DAILY  TRANSMISS ION^^0
  123   "BLD",9850 ,"KRN",19, "NM",2,0)
  124   YSCL WEEKL Y TRANSMIS SION^^0
  125   "BLD",9850 ,"KRN",19, "NM",3,0)
  126   YSCL TRANS MIT DEMOGR APHICS^^0
  127   "BLD",9850 ,"KRN",19, "NM","B"," YSCL DAILY  TRANSMISS ION",1)
  128  
  129   "BLD",9850 ,"KRN",19, "NM","B"," YSCL TRANS MIT DEMOGR APHICS",3)
  130  
  131   "BLD",9850 ,"KRN",19, "NM","B"," YSCL WEEKL Y TRANSMIS SION",2)
  132  
  133   "BLD",9850 ,"KRN",19. 1,0)
  134   19.1
  135   "BLD",9850 ,"KRN",101 ,0)
  136   101
  137   "BLD",9850 ,"KRN",409 .61,0)
  138   409.61
  139   "BLD",9850 ,"KRN",771 ,0)
  140   771
  141   "BLD",9850 ,"KRN",779 .2,0)
  142   779.2
  143   "BLD",9850 ,"KRN",870 ,0)
  144   870
  145   "BLD",9850 ,"KRN",898 9.51,0)
  146   8989.51
  147   "BLD",9850 ,"KRN",898 9.52,0)
  148   8989.52
  149   "BLD",9850 ,"KRN",899 4,0)
  150   8994
  151   "BLD",9850 ,"KRN","B" ,.4,.4)
  152  
  153   "BLD",9850 ,"KRN","B" ,.401,.401 )
  154  
  155   "BLD",9850 ,"KRN","B" ,.402,.402 )
  156  
  157   "BLD",9850 ,"KRN","B" ,.403,.403 )
  158  
  159   "BLD",9850 ,"KRN","B" ,.5,.5)
  160  
  161   "BLD",9850 ,"KRN","B" ,.84,.84)
  162  
  163   "BLD",9850 ,"KRN","B" ,3.6,3.6)
  164  
  165   "BLD",9850 ,"KRN","B" ,3.8,3.8)
  166  
  167   "BLD",9850 ,"KRN","B" ,9.2,9.2)
  168  
  169   "BLD",9850 ,"KRN","B" ,9.8,9.8)
  170  
  171   "BLD",9850 ,"KRN","B" ,19,19)
  172  
  173   "BLD",9850 ,"KRN","B" ,19.1,19.1 )
  174  
  175   "BLD",9850 ,"KRN","B" ,101,101)
  176  
  177   "BLD",9850 ,"KRN","B" ,409.61,40 9.61)
  178  
  179   "BLD",9850 ,"KRN","B" ,771,771)
  180  
  181   "BLD",9850 ,"KRN","B" ,779.2,779 .2)
  182  
  183   "BLD",9850 ,"KRN","B" ,870,870)
  184  
  185   "BLD",9850 ,"KRN","B" ,8989.51,8 989.51)
  186  
  187   "BLD",9850 ,"KRN","B" ,8989.52,8 989.52)
  188  
  189   "BLD",9850 ,"KRN","B" ,8994,8994 )
  190  
  191   "BLD",9850 ,"QDEF")
  192   ^^^^NO^^^^ YES^^NO
  193   "BLD",9850 ,"QUES",0)
  194   ^9.62^^
  195   "BLD",9850 ,"REQB",0)
  196   ^9.611^2^2
  197   "BLD",9850 ,"REQB",1, 0)
  198   YS*5.01*90 ^2
  199   "BLD",9850 ,"REQB",2, 0)
  200   YS*5.01*92 ^2
  201   "BLD",9850 ,"REQB","B ","YS*5.01 *90",1)
  202  
  203   "BLD",9850 ,"REQB","B ","YS*5.01 *92",2)
  204  
  205   "FIA",603. 03)
  206   CLOZAPINE  PARAMETERS
  207   "FIA",603. 03,0)
  208   ^YSCL(603. 03,
  209   "FIA",603. 03,0,0)
  210   603.03S
  211   "FIA",603. 03,0,1)
  212   y^y^p^^^^n ^^n
  213   "FIA",603. 03,0,10)
  214  
  215   "FIA",603. 03,0,11)
  216  
  217   "FIA",603. 03,0,"RLRO ")
  218  
  219   "FIA",603. 03,0,"VR")
  220   5.01^YS
  221   "FIA",603. 03,603.03)
  222   1
  223   "FIA",603. 03,603.03, 8)
  224  
  225   "FIA",603. 03,603.03, 9)
  226  
  227   "FIA",603. 03,603.03, 10)
  228  
  229   "FIA",603. 03,603.03, 11)
  230  
  231   "INI")
  232   BKGRD^YSCL TEST
  233   "INIT")
  234   START^YSCL 122P
  235   "KRN",19,2 916252,-1)
  236   0^2
  237   "KRN",19,2 916252,0)
  238   YSCL WEEKL Y TRANSMIS SION^Weekl y Clozapin e Report^R eplaced by  YSCL DAIL Y TRANSMIS SION^R^^^^ ^^^^
  239   "KRN",19,2 916252,1,0 )
  240   ^19.06^3^3 ^3160726^^
  241   "KRN",19,2 916252,1,1 ,0)
  242   This optio n should b e queued o nce to run  every 7 d ays (on Tu esday morn ing
  243   "KRN",19,2 916252,1,2 ,0)
  244   prior to t he start o f business ) to trans mit Clozap ine dispen sing data  to
  245   "KRN",19,2 916252,1,3 ,0)
  246   the Clozap ine Roll-U p database  located i n Hines.
  247   "KRN",19,2 916252,25)
  248   YSCLTEST
  249   "KRN",19,2 916252,"U" )
  250   WEEKLY CLO ZAPINE REP ORT
  251   "KRN",19,2 916254,-1)
  252   0^3
  253   "KRN",19,2 916254,0)
  254   YSCL TRANS MIT DEMOGR APHICS^Tra nsmit Cloz apine Demo graphics^R eplaced by  YSCL DAIL Y TRANSMIS SION.^R^^^ ^^^^^
  255   "KRN",19,2 916254,1,0 )
  256   ^^3^3^2981 130^
  257   "KRN",19,2 916254,1,1 ,0)
  258   This optio n should b e queued t o run on T uesday mor ning prior  to the st art
  259   "KRN",19,2 916254,1,2 ,0)
  260   of busines s to trans mit Clozap ine patien t demograp hics to th e Clozpain e
  261   "KRN",19,2 916254,1,3 ,0)
  262   Roll-Up da tabase loc ated in Hi nes.
  263   "KRN",19,2 916254,25)
  264   YSCLTST3
  265   "KRN",19,2 916254,"U" )
  266   TRANSMIT C LOZAPINE D EMOGRAPHIC
  267   "KRN",19,2 921764,-1)
  268   0^1
  269   "KRN",19,2 921764,0)
  270   YSCL DAILY  TRANSMISS ION^Daily  Clozapine  Transmissi on^^R^^^SE NDS DAILY  CLOZAPINE  REPORT^^^^ ^MENTAL HE ALTH^^1
  271   "KRN",19,2 921764,1,0 )
  272   ^19.06^2^2 ^3160519^^
  273   "KRN",19,2 921764,1,1 ,0)
  274   This optio n is used  to transmi t the dail y Clozapin e patient  demographi cs
  275   "KRN",19,2 921764,1,2 ,0)
  276   to the Clo zpaine Rol l-Up datab ase locate d in Hines .
  277   "KRN",19,2 921764,20)
  278   D XMIT^YSC LTST5
  279   "KRN",19,2 921764,25)
  280   YSCLTST5
  281   "KRN",19,2 921764,"U" )
  282   DAILY CLOZ APINE TRAN SMISSION
  283   "MBREQ")
  284   0
  285   "ORD",18,1 9)
  286   19;18;;;OP T^XPDTA;OP TF1^XPDIA; OPTE1^XPDI A;OPTF2^XP DIA;;OPTDE L^XPDIA
  287   "ORD",18,1 9,0)
  288   OPTION
  289   "PKG",200, -1)
  290   1^1
  291   "PKG",200, 0)
  292   MENTAL HEA LTH^YS^Ver sion 5.01  of Mental  Health
  293   "PKG",200, 20,0)
  294   ^9.402P^^
  295   "PKG",200, 22,0)
  296   ^9.49I^1^1
  297   "PKG",200, 22,1,0)
  298   5.01^29412 30^2950417
  299   "PKG",200, 22,1,"PAH" ,1,0)
  300   122^317112 9^52073644 0
  301   "PKG",200, 22,1,"PAH" ,1,1,0)
  302   ^^1^1^3171 129
  303   "PKG",200, 22,1,"PAH" ,1,1,1,0)
  304   MENTAL HEA LTH NCC PR OJECT 5.01
  305   "QUES","XP F1",0)
  306   Y
  307   "QUES","XP F1","??")
  308   ^D REP^XPD H
  309   "QUES","XP F1","A")
  310   Shall I wr ite over y our |FLAG|  File
  311   "QUES","XP F1","B")
  312   YES
  313   "QUES","XP F1","M")
  314   D XPF1^XPD IQ
  315   "QUES","XP F2",0)
  316   Y
  317   "QUES","XP F2","??")
  318   ^D DTA^XPD H
  319   "QUES","XP F2","A")
  320   Want my da ta |FLAG|  yours
  321   "QUES","XP F2","B")
  322   YES
  323   "QUES","XP F2","M")
  324   D XPF2^XPD IQ
  325   "QUES","XP I1",0)
  326   YO
  327   "QUES","XP I1","??")
  328   ^D INHIBIT ^XPDH
  329   "QUES","XP I1","A")
  330   Want KIDS  to INHIBIT  LOGONs du ring the i nstall
  331   "QUES","XP I1","B")
  332   NO
  333   "QUES","XP I1","M")
  334   D XPI1^XPD IQ
  335   "QUES","XP M1",0)
  336   PO^VA(200, :EM
  337   "QUES","XP M1","??")
  338   ^D MG^XPDH
  339   "QUES","XP M1","A")
  340   Enter the  Coordinato r for Mail  Group '|F LAG|'
  341   "QUES","XP M1","B")
  342  
  343   "QUES","XP M1","M")
  344   D XPM1^XPD IQ
  345   "QUES","XP O1",0)
  346   Y
  347   "QUES","XP O1","??")
  348   ^D MENU^XP DH
  349   "QUES","XP O1","A")
  350   Want KIDS  to Rebuild  Menu Tree s Upon Com pletion of  Install
  351   "QUES","XP O1","B")
  352   YES
  353   "QUES","XP O1","M")
  354   D XPO1^XPD IQ
  355   "QUES","XP Z1",0)
  356   Y
  357   "QUES","XP Z1","??")
  358   ^D OPT^XPD H
  359   "QUES","XP Z1","A")
  360   Want to DI SABLE Sche duled Opti ons, Menu  Options, a nd Protoco ls
  361   "QUES","XP Z1","B")
  362   NO
  363   "QUES","XP Z1","M")
  364   D XPZ1^XPD IQ
  365   "QUES","XP Z2",0)
  366   Y
  367   "QUES","XP Z2","??")
  368   ^D RTN^XPD H
  369   "QUES","XP Z2","A")
  370   Want to MO VE routine s to other  CPUs
  371   "QUES","XP Z2","B")
  372   NO
  373   "QUES","XP Z2","M")
  374   D XPZ2^XPD IQ
  375   "RTN")
  376   10
  377   "RTN","YSC L122P")
  378   0^8^B14175 20
  379   "RTN","YSC L122P",1,0 )
  380   YSCL122P ;  ALB/RTW -  NCC POST  INSTALL;Ju l 14, 2017 @09:00:07
  381   "RTN","YSC L122P",2,0 )
  382    ;;5.01;ME NTAL HEALT H;**122**; Dec 30, 19 94;Build 6 1
  383   "RTN","YSC L122P",3,0 )
  384    ;THIS ROU TINE IS DE SIGNED TO  GO THROUGH  THE CLOZA PINE PATIE NTS IN FIL E PS(55 PH ARMACY PAT IEN FILE
  385   "RTN","YSC L122P",4,0 )
  386    ;discover  active cl ozapine pa tients reg istered lo nger than  57 days ag o that do  not have a  recent cl ozapine 
  387   "RTN","YSC L122P",5,0 )
  388    ;prescrip tion or or der, set t hem to dis continued  and send a  report to  the NCC.
  389   "RTN","YSC L122P",6,0 )
  390    ;the NCC  software w ill mainta in the fil e in real  time from  this point  on.
  391   "RTN","YSC L122P",7,0 )
  392   START ;
  393   "RTN","YSC L122P",8,0 )
  394    ;INITIALI ZE ^XTMP(" YSCLDEM" a nd ^XTMP(" YSCLTRN"
  395   "RTN","YSC L122P",9,0 )
  396    N DIE,DA, DR S DR="" ,DIE="^YSC L(603.03," ,DA=1,U="^ "
  397   "RTN","YSC L122P",10, 0)
  398    I $$GET1^ DIQ(8989.3 ,1,501,"I" ) S DR="3/ //0;"   ;S  $P(^YSCL( 603.03,1,0 ),"^",3)=0
  399   "RTN","YSC L122P",11, 0)
  400    S DR=DR_" 8///S.RUCL RXLAB@ D N
S. URL          ;9///S.RUC LDEM@ D N
S. URL          ;"
  401   "RTN","YSC L122P",12, 0)
  402    S DR=DR_" 10///G.CLO ZAPINE DEB UG@
D N S. URL          ;11///G.CL OZAPINE DE BUG@
D N S. URL          "
  403   "RTN","YSC L122P",13, 0)
  404    D ^DIE
  405   "RTN","YSC L122P",14, 0)
  406    N X,X1,X2  S X1=DT,X 2=365 D C^ %DTC
  407   "RTN","YSC L122P",15, 0)
  408    F VAR="YS CLDEM","YS CLTRN" D
  409   "RTN","YSC L122P",16, 0)
  410    .S ^XTMP( VAR,0)=X_U _DT_U_"CLO ZAPINE DAI LY ROLLUP  DATA"_U_(D T-1_".0000 01")
  411   "RTN","YSC L122P",17, 0)
  412    D START^Y SCLDIS
  413   "RTN","YSC L122P",18, 0)
  414    Q
  415   "RTN","YSC LDIS")
  416   0^3^B31390 614
  417   "RTN","YSC LDIS",1,0)
  418   YSCLDIS ;H INOI/RTW-D ISCONTINUE  CLOZAPINE  PATIENT S TATUS ;Jul  14, 2017@ 09:00:07
  419   "RTN","YSC LDIS",2,0)
  420    ;;5.01;ME NTAL HEALT H;**122**; Dec 30, 19 94;Build 6 1
  421   "RTN","YSC LDIS",3,0)
  422    ; Referen ce to ^DPT  supported  by IA #10 035
  423   "RTN","YSC LDIS",4,0)
  424    ; Referen ce to ^PS( 55 support ed by IA # 787
  425   "RTN","YSC LDIS",5,0)
  426    ; Referen ce to $$SI TE^VASITE  supported  by IA #101 12
  427   "RTN","YSC LDIS",6,0)
  428    ;
  429   "RTN","YSC LDIS",7,0)
  430    ;This rou tine will  loop throu gh ^PS(55, DFN,"ASAND " and chec k the last  prescript ion
  431   "RTN","YSC LDIS",8,0)
  432    ; enddate  and/or th e the Inpa tient Orde r stop dat e. If the  patient ha s not had  an active
  433   "RTN","YSC LDIS",9,0)
  434    ; prescri ption or I npatent Cl ozapine Or der in the  last 56 d ays, the A ctive Trea tment will  STOP
  435   "RTN","YSC LDIS",10,0 )
  436    ; YSCLFLA G changes  from 0 to  1 if crite ria to avo id discont inue
  437   "RTN","YSC LDIS",11,0 )
  438    Q
  439   "RTN","YSC LDIS",12,0 )
  440   START ;
  441   "RTN","YSC LDIS",13,0 )
  442    N YSLN,DF N,YSCLREGN ,YSCLREGD, YSCLREGA,Y SCLFLAG,YS ARR
  443   "RTN","YSC LDIS",14,0 )
  444    S U="^" S :'$G(DT) D T=$P($$NOW ^XLFDT,"." ) K ^XTMP( "YSCLDIS", DT),^XTMP( "YSCLDATA" )
  445   "RTN","YSC LDIS",15,0 )
  446    D LIST^DI C(603.01,, 1,"I",,,,, ,,"YSARR")
  447   "RTN","YSC LDIS",16,0 )
  448    F YSLN=1: 1 Q:'$D(YS ARR("DILIS T","ID",YS LN))  S DF N=YSARR("D ILIST","ID ",YSLN,1)  D:DFN
  449   "RTN","YSC LDIS",17,0 )
  450    .S YSCLRE GN=$$GET1^ DIQ(55,DFN ,53) Q:YSC LREGN=""
  451   "RTN","YSC LDIS",18,0 )
  452    .Q:$$GET1 ^DIQ(55,DF N,54,"I")= "D"   ;Not  checking  those alre ady discon tinued
  453   "RTN","YSC LDIS",19,0 )
  454    .N YSCLDI S2,YSCLNEW ,X,X1,X2
  455   "RTN","YSC LDIS",20,0 )
  456    .S YSCLRE GD=$$GET1^ DIQ(55,DFN ,58,"I")
  457   "RTN","YSC LDIS",21,0 )
  458    .S X1=DT, X2=YSCLREG D D ^%DTC  S YSCLREGA =X
  459   "RTN","YSC LDIS",22,0 )
  460    .I YSCLRE GN?1U6N D: YSCLREGA>4   Q   ;tem ps greater  than 4 da ys since r egistratio n
  461   "RTN","YSC LDIS",23,0 )
  462    ..S YSCLD IS2=3 D SE T,DC,DMG^Y SCLTST5
  463   "RTN","YSC LDIS",24,0 )
  464    .Q:YSCLRE GA<28                       ;Not  checking  those regi stered 27  days or le ss
  465   "RTN","YSC LDIS",25,0 )
  466    .S ^XTMP( "YSCLDATA" ,DT,DFN)=Y SCLREGN_U_ YSCLREGD,Y SCLFLAG=0
  467   "RTN","YSC LDIS",26,0 )
  468    .S YSCLNE W=1                         ;Reg istration  is new unl ess clozap ine orders  are found
  469   "RTN","YSC LDIS",27,0 )
  470    .D OPT Q: YSCLFLAG=1                  ;Not  checking  further
  471   "RTN","YSC LDIS",28,0 )
  472    .D INP Q: YSCLFLAG=1
  473   "RTN","YSC LDIS",29,0 )
  474    .S YSCLDI S2=$S(YSCL NEW:1,1:2)
  475   "RTN","YSC LDIS",30,0 )
  476    .D SET,DC ,DMG^YSCLT ST5
  477   "RTN","YSC LDIS",31,0 )
  478    D:$D(^XTM P("YSCLDIS ")) TR
  479   "RTN","YSC LDIS",32,0 )
  480    Q
  481   "RTN","YSC LDIS",33,0 )
  482   OPT ; Outp atient ord ers
  483   "RTN","YSC LDIS",34,0 )
  484    N YSARRAY ,YSCLOPT,Y SCLRX,YSCL DRG,YSCLFL DT,YSCLSPD T,X,X1,X2, YSCLFLDA
  485   "RTN","YSC LDIS",35,0 )
  486    D LIST^DI C(55.03,", "_DFN_",", ,"I",,,,,, ,"YSARRAY" )
  487   "RTN","YSC LDIS",36,0 )
  488    S YSCLOPT ="A" F  S  YSCLOPT=$O (YSARRAY(" DILIST",1, YSCLOPT),- 1) Q:'YSCL OPT  D  Q: YSCLFLAG
  489   "RTN","YSC LDIS",37,0 )
  490    .S YSCLRX =YSARRAY(" DILIST",1, YSCLOPT),Y SCLDRG=$$G ET1^DIQ(52 ,YSCLRX,6, "I") Q:'YS CLDRG
  491   "RTN","YSC LDIS",38,0 )
  492    .Q:'$L($$ GET1^DIQ(5 0,YSCLDRG, 17.5))  ;' $D(^PSDRUG ("ACLOZ",+ YSCLDRG))
  493   "RTN","YSC LDIS",39,0 )
  494    .S YSCLFL DT=$$GET1^ DIQ(52,YSC LRX,22,"I" ) Q:YSCLFL DT<YSCLREG D   ;Fill  Date befor e Registra tion
  495   "RTN","YSC LDIS",40,0 )
  496    .S YSCLNE W=0                                                        ;Not a  new Regis tration
  497   "RTN","YSC LDIS",41,0 )
  498    .S YSCLSP DT=$$GET1^ DIQ(52,YSC LRX,26,"I" )
  499   "RTN","YSC LDIS",42,0 )
  500    .I YSCLSP DT'<DT S Y SCLFLAG=1  Q                                    ;Not E xpired yet
  501   "RTN","YSC LDIS",43,0 )
  502    .S X1=DT, X2=YSCLFLD T D ^%DTC  S YSCLFLDA =X
  503   "RTN","YSC LDIS",44,0 )
  504    .I YSCLFL DA<56 S YS CLFLAG=1
  505   "RTN","YSC LDIS",45,0 )
  506    Q
  507   "RTN","YSC LDIS",46,0 )
  508   INP ;Inpat ient Order s
  509   "RTN","YSC LDIS",47,0 )
  510    N YSARRAY ,YSARRAY1, YSCLIPT,YS LINE,YSCLD RG,YSCLORD T,YSCLSPDT ,YSCLORDA, X,X1,X2
  511   "RTN","YSC LDIS",48,0 )
  512    D LIST^DI C(55.06,", "_DFN_",", ,"I",,,,,, ,"YSARRAY" )
  513   "RTN","YSC LDIS",49,0 )
  514    S YSCLIPT ="A" F  S  YSCLIPT=$O (YSARRAY(" DILIST",1, YSCLIPT),- 1) Q:'YSCL IPT  D  Q: YSCLFLAG
  515   "RTN","YSC LDIS",50,0 )
  516    .S YSLINE =YSARRAY(" DILIST",2, YSCLIPT)
  517   "RTN","YSC LDIS",51,0 )
  518    .D LIST^D IC(55.07," ,"_YSLINE_ ","_DFN_", ",,"I",,,, ,,,"YSARRA Y1")
  519   "RTN","YSC LDIS",52,0 )
  520    .S YSCLDR G=+$G(YSAR RAY1("DILI ST",1,1))  Q:'$G(YSCL DRG)
  521   "RTN","YSC LDIS",53,0 )
  522    .Q:$$GET1 ^DIQ(50,YS CLDRG,17.5 )'="PSOCLO 1"
  523   "RTN","YSC LDIS",54,0 )
  524    .S YSCLOR DT=$$GET1^ DIQ(55.06, YSLINE_"," _DFN,27,"I ") Q:YSCLO RDT<YSCLRE GD  ;Order  date befo re Registr ation
  525   "RTN","YSC LDIS",55,0 )
  526    .S YSCLNE W=0                                                        ;Not a  new Regis tration
  527   "RTN","YSC LDIS",56,0 )
  528    .S YSCLSP DT=$$GET1^ DIQ(55.06, YSLINE_"," _DFN,34,"I ")
  529   "RTN","YSC LDIS",57,0 )
  530    .I YSCLSP DT'<DT S Y SCLFLAG=1  Q                                    ;Not S topped yet
  531   "RTN","YSC LDIS",58,0 )
  532    .S X1=DT, X2=YSCLORD T D ^%DTC  S YSCLORDA =X
  533   "RTN","YSC LDIS",59,0 )
  534    .I YSCLOR DA<56 S YS CLFLAG=1
  535   "RTN","YSC LDIS",60,0 )
  536    Q
  537   "RTN","YSC LDIS",61,0 )
  538    ;
  539   "RTN","YSC LDIS",62,0 )
  540   SET ;XTMP  BUILD USED  FOR TESTI NG
  541   "RTN","YSC LDIS",63,0 )
  542    S ^XTMP(" YSCLDIS",D T,DFN,0)=Y SCLDIS2
  543   "RTN","YSC LDIS",64,0 )
  544    Q
  545   "RTN","YSC LDIS",65,0 )
  546   DC ;
  547   "RTN","YSC LDIS",66,0 )
  548    N DIE,DR
  549   "RTN","YSC LDIS",67,0 )
  550    S DIE="^P S(55,",DA= DFN,DR="54 ///"_"D"_" ;56///1" D  ^DIE
  551   "RTN","YSC LDIS",68,0 )
  552    Q
  553   "RTN","YSC LDIS",69,0 )
  554    ;
  555   "RTN","YSC LDIS",70,0 )
  556   TR ;
  557   "RTN","YSC LDIS",71,0 )
  558    K ^TMP("Y SCL",$J) X  ^%ZOSF("U CI")
  559   "RTN","YSC LDIS",72,0 )
  560    D YSCLDRS N K XMY
  561   "RTN","YSC LDIS",73,0 )
  562    I $$GET1^ DIQ(8989.3 ,1,501,"I" ) S XMY("G .CLOZAPINE  ROLL-UP@ DNS . URL )=""
  563   "RTN","YSC LDIS",74,0 )
  564    E  S XMY( "G.PSOCLOZ ")=""
  565   "RTN","YSC LDIS",75,0 )
  566    D YSXMTEX T
  567   "RTN","YSC LDIS",76,0 )
  568    S XMDUZ=" CLOZAPINE  MONITOR",D T=$$NOW^XL FDT
  569   "RTN","YSC LDIS",77,0 )
  570    S ^TMP("Y SCL",$J,1, 0)="Clozap ine Discon tinued Pat ient(s) Da ta was tra nsmitted,  "_YSCLLN
  571   "RTN","YSC LDIS",78,0 )
  572    S ^(0)=^T MP("YSCL", $J,1,0)_"  records we re sent."
  573   "RTN","YSC LDIS",79,0 )
  574    S XMSUB=$ P($$SITE^V ASITE,U,2) _" Discont inued Stat us",^TMP(" YSCL",$J,2 ,0)=" "
  575   "RTN","YSC LDIS",80,0 )
  576    S XMTEXT= "^TMP(""YS CL"",$J,"  D ^XMD
  577   "RTN","YSC LDIS",81,0 )
  578    S $P(^YSC L(603.03,1 ,0),U,6)=D T
  579   "RTN","YSC LDIS",82,0 )
  580    K ^TMP("Y SCL",$J)
  581   "RTN","YSC LDIS",83,0 )
  582    Q
  583   "RTN","YSC LDIS",84,0 )
  584    ;
  585   "RTN","YSC LDIS",85,0 )
  586   YSXMTEXT ; CALLED BY  YSCLTST3 / RTW Start:  Added to  build mess age of dis continued  clozapine  patients d ata for NC C
  587   "RTN","YSC LDIS",86,0 )
  588    S (YSCLLN ,YSCLDATE) =0,YSCLCNT =2
  589   "RTN","YSC LDIS",87,0 )
  590    F  S YSCL DATE=$O(^X TMP("YSCLD IS",YSCLDA TE)) Q:'YS CLDATE  D
  591   "RTN","YSC LDIS",88,0 )
  592    .S YSCLDF N=0 F  S Y SCLDFN=$O( ^XTMP("YSC LDIS",YSCL DATE,YSCLD FN)) Q:'YS CLDFN  D
  593   "RTN","YSC LDIS",89,0 )
  594    ..I $$GET 1^DIQ(55,D FN,54,"I") '="D" Q                        ;  quit if p atient was n't Discon tinued
  595   "RTN","YSC LDIS",90,0 )
  596    ..S PSOLA ST4=$E($$G ET1^DIQ(2, YSCLDFN,.0 9),6,9),YS CLLN=YSCLL N+1
  597   "RTN","YSC LDIS",91,0 )
  598    ..S YSCLM ESG=$$GET1 ^DIQ(2,YSC LDFN,.01)_ " ("_PSOLA ST4_")"
  599   "RTN","YSC LDIS",92,0 )
  600    ..S YSCLD IS2=$P(^XT MP("YSCLDI S",YSCLDAT E,YSCLDFN, 0),U)
  601   "RTN","YSC LDIS",93,0 )
  602    ..S MSG1= $S(YSCLDIS 2=1:YSCLD1 ,YSCLDIS2= 2:YSCLD2,1 :YSCLD3)
  603   "RTN","YSC LDIS",94,0 )
  604    ..S MSG2= $S(YSCLDIS 2=1:YSCLD1 1,YSCLDIS2 =2:YSCLD22 ,1:YSCLD33 )
  605   "RTN","YSC LDIS",95,0 )
  606    ..S MSG3= $S(YSCLDIS 2=1:YSCLD1 11,YSCLDIS 2=2:YSCLD2 22,1:YSCLD 333)
  607   "RTN","YSC LDIS",96,0 )
  608    ..S ^TMP( "YSCL",$J, $I(YSCLCNT ),0)=YSCLM ESG ;messa ge from YS CLDRSN
  609   "RTN","YSC LDIS",97,0 )
  610    ..S ^TMP( "YSCL",$J, $I(YSCLCNT ),0)=MSG1
  611   "RTN","YSC LDIS",98,0 )
  612    ..S ^TMP( "YSCL",$J, $I(YSCLCNT ),0)=MSG2
  613   "RTN","YSC LDIS",99,0 )
  614    ..S ^TMP( "YSCL",$J, $I(YSCLCNT ),0)=MSG3
  615   "RTN","YSC LDIS",100, 0)
  616    ..S ^TMP( "YSCL",$J, $I(YSCLCNT ),0)="" ;b lank line
  617   "RTN","YSC LDIS",101, 0)
  618    Q
  619   "RTN","YSC LDIS",102, 0)
  620   YSCLDRSN ; CALLED BY  YSCLTST3   discontinu ed reasons
  621   "RTN","YSC LDIS",103, 0)
  622    S YSCLD1= "The patie nt status  has change d to 'Disc ontinued'  because th e new cloz apine"
  623   "RTN","YSC LDIS",104, 0)
  624    S YSCLD11 ="patient  has not fi lled the p rescriptio n/order wi thin 28 da ys of bein g marked "
  625   "RTN","YSC LDIS",105, 0)
  626    S YSCLD11 1="'Active '. "
  627   "RTN","YSC LDIS",106, 0)
  628    S YSCLD2= "The patie nt status  has change d to 'Disc ontinued'  because th e active c lozapine"
  629   "RTN","YSC LDIS",107, 0)
  630    S YSCLD22 ="patient  has not fi lled the p rescriptio n/order wi thin 56 da ys of bein g "
  631   "RTN","YSC LDIS",108, 0)
  632    S YSCLD22 2="prescri bed/ordere d."
  633   "RTN","YSC LDIS",109, 0)
  634    S YSCLD3= "The patie nt status  has change d to 'Disc ontinued'  because th e temporar y local "
  635   "RTN","YSC LDIS",110, 0)
  636    S YSCLD33 ="authoriz ation numb er assigne d has expi red and NC CC has not  issued a  new "
  637   "RTN","YSC LDIS",111, 0)
  638    S YSCLD33 3="authori zation num ber. "
  639   "RTN","YSC LDIS",112, 0)
  640    Q
  641   "RTN","YSC LSERV")
  642   0^2^B10752 8131
  643   "RTN","YSC LSERV",1,0 )
  644   YSCLSERV ; DALOI/RLM- Clozapine  data serve r ;Jul 14,  2017@09:0 0:07
  645   "RTN","YSC LSERV",2,0 )
  646    ;;5.01;ME NTAL HEALT H;**18,22, 26,47,61,6 9,74,90,92 ,122**;Dec  30, 1994; Build 61
  647   "RTN","YSC LSERV",3,0 )
  648    ; Referen ce to ^%ZO SF support ed by IA # 10096
  649   "RTN","YSC LSERV",4,0 )
  650    ; Referen ce to ^DPT  supported  by IA #10 035
  651   "RTN","YSC LSERV",5,0 )
  652    ; Referen ce to ^DD( "DD" suppo rted by IA  #10017
  653   "RTN","YSC LSERV",6,0 )
  654    ; Referen ce to ^PS( 55 support ed by IA # 787
  655   "RTN","YSC LSERV",7,0 )
  656    ; Referen ce to ^PSD RUG suppor ted by IA  #25
  657   "RTN","YSC LSERV",8,0 )
  658    ; Referen ce to ^PSR X supporte d by IA #7 80
  659   "RTN","YSC LSERV",9,0 )
  660    ; Referen ce to ^VA( 200 suppor ted by IA  #10060
  661   "RTN","YSC LSERV",10, 0)
  662    ; Referen ce to $$SI TE^VASITE  supported  by IA #101 12
  663   "RTN","YSC LSERV",11, 0)
  664    ; Referen ce to $$FM TE^XLFDT()  supported  by IA #10 103
  665   "RTN","YSC LSERV",12, 0)
  666    ; Referen ce to ^PSD RUG suppor ted by IA  #221
  667   "RTN","YSC LSERV",13, 0)
  668    ; Referen ce to ^XMD  supported  by IA #10 070
  669   "RTN","YSC LSERV",14, 0)
  670   START ;
  671   "RTN","YSC LSERV",15, 0)
  672    K ^TMP($J ,"YSCLDATA ")
  673   "RTN","YSC LSERV",16, 0)
  674    S YSDEBUG =$$GET1^DI Q(603.03,1 ,3,"I")
  675   "RTN","YSC LSERV",17, 0)
  676    S YSCLST= $P($$SITE^ VASITE,"^" ,3)
  677   "RTN","YSC LSERV",18, 0)
  678    S YSCLSTN =$P($$SITE ^VASITE,"^ ",2)
  679   "RTN","YSC LSERV",19, 0)
  680    ;Determin e station  number
  681   "RTN","YSC LSERV",20, 0)
  682    I $G(PSCL OZ) G UNRE G
  683   "RTN","YSC LSERV",21, 0)
  684    S X=XQSUB  X ^%ZOSF( "UPPERCASE ") S YSCLS UB=Y
  685   "RTN","YSC LSERV",22, 0)
  686    S ^TMP($J ,"YSCLDATA ",1)=$S(YS DEBUG:"DEB UG ",1:"") _YSCLSUB_"  triggered  at "_YSCL ST_" by "_ XMFROM_" o n "_XQDATE
  687   "RTN","YSC LSERV",23, 0)
  688    ;The firs t line of  the messag e tells wh o requeste d the acti on and whe n
  689   "RTN","YSC LSERV",24, 0)
  690    D
  691   "RTN","YSC LSERV",25, 0)
  692    .S YSACTI ON=$S(YSCL SUB["REMOV E"!(YSCLSU B["DELETE" ):"data de leted",YSC LSUB["REPO RT":"repor t generate d",YSCLSUB ["REBUILD" :"data ver ified",YSC LSUB["UPDA TE":"data  updated",Y SCLSUB["DA TESET":"da te set",1: "CONT")
  693   "RTN","YSC LSERV",26, 0)
  694    .I YSACTI ON="CONT"  S YSACTION =$S(YSCLSU B["DEMOG R ESET":"Dem ographics  Flag Reset ",YSCLSUB[ "DEBUG":"D ebug Mode  set",YSCLS UB["AUTH": "Authoriza tion",YSCL SUB["LOCK" :"Lock",1: "Site Lock ")
  695   "RTN","YSC LSERV",27, 0)
  696    .S ^TMP($ J,"YSCLDAT A",2)="No  "_$S(YSDEB UG:"DEBUG  ",1:"")_YS ACTION_" a t "_YSCLST
  697   "RTN","YSC LSERV",28, 0)
  698    ;The seco nd line te lls when t he server  is activat ed and no  data can b e
  699   "RTN","YSC LSERV",29, 0)
  700    ;gathered  from the  MailMan me ssage.  Th is line ge ts replace d if the
  701   "RTN","YSC LSERV",30, 0)
  702    ;server f inds somet hing to do .
  703   "RTN","YSC LSERV",31, 0)
  704    S YSCLLNT =1 I YSCLS UB["REMOVE "!(YSCLSUB ["DELETE")  G DELETE
  705   "RTN","YSC LSERV",32, 0)
  706    ;If the s ubject con tains the  word REMOV E or DELET E delete t hose entri es from th e list.
  707   "RTN","YSC LSERV",33, 0)
  708    I YSCLSUB ["REPORT"  G REPORT
  709   "RTN","YSC LSERV",34, 0)
  710    ;If the s ubject con tains "REP ORT" send  a report o f the curr ently regi stered pat ients to t he Clozapi ne group o n Forum
  711   "RTN","YSC LSERV",35, 0)
  712    ;I YSCLSU B["REBUILD " G REBUIL D
  713   "RTN","YSC LSERV",36, 0)
  714    I YSCLSUB ["RESEND"  G RESEND
  715   "RTN","YSC LSERV",37, 0)
  716    I YSCLSUB ["UPDATE"  G UPDATE
  717   "RTN","YSC LSERV",38, 0)
  718    ;I YSCLSU B["CHECKSU M" G CSUM^ YSCLSRV1
  719   "RTN","YSC LSERV",39, 0)
  720    I YSCLSUB ["DATESET"  G DSET
  721   "RTN","YSC LSERV",40, 0)
  722    I YSCLSUB ["DEBUG" G  DEBUG
  723   "RTN","YSC LSERV",41, 0)
  724    I YSCLSUB ["PATIENT"  G ^YSCLSR V3
  725   "RTN","YSC LSERV",42, 0)
  726    I YSCLSUB ["LOCKOUT"  G LOCK^YS CLSRV3
  727   "RTN","YSC LSERV",43, 0)
  728    I YSCLSUB ="DEMOG RE SET" G DEM OG^YSCLSRV 3
  729   "RTN","YSC LSERV",44, 0)
  730    I YSCLSUB ["AUTHORIZ E" G AUTH^ YSCLSRV3
  731   "RTN","YSC LSERV",45, 0)
  732    I YSCLSUB ="OVERRIDE " G OVRRID ^YSCLSRV2
  733   "RTN","YSC LSERV",46, 0)
  734    I YSCLSUB ="CLAPI" G  CLAPI^YSC LSRV2
  735   "RTN","YSC LSERV",47, 0)
  736    I YSCLSUB ="CL1API"  G CL1API^Y SCLSRV2
  737   "RTN","YSC LSERV",48, 0)
  738    I YSCLSUB ["DISCON"  G DCON^YSC LSRV2
  739   "RTN","YSC LSERV",49, 0)
  740    F  X XMRE C Q:XMER<0   S XMRG=$ TR(XMRG,"-  ","") D
  741   "RTN","YSC LSERV",50, 0)
  742    . ;Verify  that + of  site numb er matches  local sit e number
  743   "RTN","YSC LSERV",51, 0)
  744    . I XMRG' ?2U5N1","9 N1","1U S  YSCLER=" i s in error  and was n ot added a t " D OUT  Q
  745   "RTN","YSC LSERV",52, 0)
  746    . I $P(XM RG,",")'?2 U5N S YSCL ER=" is no t a valid  Clozapine  number " D  OUT Q
  747   "RTN","YSC LSERV",53, 0)
  748    . I $P(XM RG,",",2)' ?9N S YSCL ER=" An SS N must be  9 numbers  " D OUT Q
  749   "RTN","YSC LSERV",54, 0)
  750    . I $P(XM RG,",",3)' ="B",$P(XM RG,",",3)' ="W",$P(XM RG,",",3)' ="M" S YSC LER=" You  must speci fy Weekly,  Biweekly,  or Monthl y " D OUT  Q
  751   "RTN","YSC LSERV",55, 0)
  752    . ;Valida te the for mat of the  data in t he message  and repor t the erro r.
  753   "RTN","YSC LSERV",56, 0)
  754    . ;Do not  add data  for record s where th e SSN sent  is not in  the local  database
  755   "RTN","YSC LSERV",57, 0)
  756    . S DIC=" ^DPT(",DIC (0)="X",D= "SSN",X=$P (XMRG,",", 2)
  757   "RTN","YSC LSERV",58, 0)
  758    . N ARRAY  D LIST^DI C(2,,.09,, ,,X,"SSN", ,,"ARRAY")
  759   "RTN","YSC LSERV",59, 0)
  760    . S DFN=$ G(ARRAY("D ILIST",2,1 )) I DFN=" " S YSCLER =" SSN doe s not exis t at " D O UT Q
  761   "RTN","YSC LSERV",60, 0)
  762    . ;I '$D( ^DPT("SSN" ,X)) S YSC LER=" SSN  does not e xist at "  D OUT Q
  763   "RTN","YSC LSERV",61, 0)
  764    . K ARRAY  D LIST^DI C(603.01,, 1,,,,$P(XM RG,","),,, ,"ARRAY")
  765   "RTN","YSC LSERV",62, 0)
  766    . I $D(AR RAY("DILIS T","ID",1, 1)) D  D O UT Q
  767   "RTN","YSC LSERV",63, 0)
  768    . . S YSC LER=" Cloz apine # is  in use by  "_ARRAY(" DILIST","I D",1,1)_"  at "
  769   "RTN","YSC LSERV",64, 0)
  770    . ;I $D(^ YSCL(603.0 1,"B",$P(X MRG,",")))  S YSCLX=$ O(^YSCL(60 3.01,"B",$ P(XMRG,"," ),"")) S:Y SCLX]"" YS CLX=$P(^YS CL(603.01, YSCLX,0)," ^",2),YSCL ER=" Cloza pine # is  in use by  "_$P($G(^D PT(YSCLX,0 )),"^")_"  at " D OUT  Q
  771   "RTN","YSC LSERV",65, 0)
  772    . D MIX^D IC1 S YSCL PT=+Y I Y= -1 S YSCLE R=" could  not be add ed at " D  OUT Q
  773   "RTN","YSC LSERV",66, 0)
  774    . ;Add th e data and  report an y errors t o the Roll -Up group  at Forum.
  775   "RTN","YSC LSERV",67, 0)
  776    . K DD S  DIC="^YSCL (603.01,", X=$P(XMRG, ","),DIC(" DR")="1/// /"_YSCLPT_ ";2////W"  K DO D FIL E^DICN
  777   "RTN","YSC LSERV",68, 0)
  778    . K ARRAY  D LIST^DI C(603.01,, 1,,,,$P(XM RG,","),,, ,"ARRAY")
  779   "RTN","YSC LSERV",69, 0)
  780    . I $D(AR RAY("DILIS T","ID",1, 1)) S YSCL ER=" assig ned to "_A RRAY("DILI ST","ID",1 ,1)_" at "  D OUT
  781   "RTN","YSC LSERV",70, 0)
  782    . ;S YSCL X=$O(^YSCL (603.01,"B ",$P(XMRG, ","),""))  S:YSCLX]""  YSCLX=$P( ^YSCL(603. 01,YSCLX,0 ),"^",2),Y SCLER=" as signed to  "_$P($G(^D PT(YSCLX,0 )),"^")_"  at " D OUT
  783   "RTN","YSC LSERV",71, 0)
  784   EXIT ;If a ll went we ll, report  that too.
  785   "RTN","YSC LSERV",72, 0)
  786    S YSDEBUG =$$GET1^DI Q(603.03,1 ,3,"I")
  787   "RTN","YSC LSERV",73, 0)
  788    S %H=$H D  YMD^%DTC  S XMDUN="N CCC LOGGER ",XMDUZ=". 5",XMSUB=$ S(YSDEBUG: "DEBUG ",Y SCLSUB["DE BUG":"DEBU G ",1:"")_ YSCLST_" N CCC ENROLL ER ("_X_%_ ")",XMTEXT ="^TMP($J, ""YSCLDATA "","
  789   "RTN","YSC LSERV",74, 0)
  790    ;/MZR -Be gin modifi cations fo r YS*5.01* 122
  791   "RTN","YSC LSERV",75, 0)
  792    K XMY I $ $GET1^DIQ( 8989.3,1,5 01,"I") D: YSCLLNT
  793   "RTN","YSC LSERV",76, 0)
  794    . I 'YSDE BUG S XMY( "G.CLOZAPI NE ROLL-UP @ DNS . URL ")=""
  795   "RTN","YSC LSERV",77, 0)
  796    . E    S XMY("G.C LOZAPINE D EBUG@
D N S. URL          ")=""
  797   "RTN","YSC LSERV",78, 0)
  798    E  D:YSCL LNT
  799   "RTN","YSC LSERV",79, 0)
  800    . I 'YSDE BUG S XMY( "G.CLOZAPI NE ROLL-UP ")=""
  801   "RTN","YSC LSERV",80, 0)
  802    . E  S XM Y("G.CLOZA PINE DEBUG ")=""
  803   "RTN","YSC LSERV",81, 0)
  804    ;/MZR - E nd modific ations for  YS*5.01*1 22
  805   "RTN","YSC LSERV",82, 0)
  806    D ^XMD
  807   "RTN","YSC LSERV",83, 0)
  808    ;Mail the  errors an d successe s back to  the Roll-U p group at  Forum.
  809   "RTN","YSC LSERV",84, 0)
  810    K ^TMP($J ,"YSCLDATA ")
  811   "RTN","YSC LSERV",85, 0)
  812    K %,%DT,% H,D,DA,DD, DIC,DIE,DI K,RET,X,XM DUN,XMDUZ, XMER,XMFRO M
  813   "RTN","YSC LSERV",86, 0)
  814    K XMREC,X MRG,XMSUB, XMTEXT,XMY ,XMZ,XQDAT E,XQSUB,Y, YSA,YSACTI ON,YSCLTYP E
  815   "RTN","YSC LSERV",87, 0)
  816    K YSCL28, YSCLA,YSCL AA,YSCLB,Y SCLC,YSCLD A,YSCLDA1, YSCLDATA,Y SCLDEA1
  817   "RTN","YSC LSERV",88, 0)
  818    K YSCLDFN ,YSCLDM,YS CLDOC,YSCL DOM,YSCLDR ,YSCLDRA,Y SCLDRB,YSC LDTA,YSCLE RR
  819   "RTN","YSC LSERV",89, 0)
  820    K YSCLDUZ ,YSCLED,YS CLER,YSCLF DA,YSCLFRQ ,YSCLLNT,Y SCLNM,YSCL OVR,YSCLSI TE
  821   "RTN","YSC LSERV",90, 0)
  822    K YSCLPT, YSCLRPT,YS CLSD1,YSCL SDT,YSCLSS N,YSCLST,Y SCLSTN,YSC LSUB,YSCLT C
  823   "RTN","YSC LSERV",91, 0)
  824    K YSCLRX, YSCLSAND,Y SCLWB,YSCL X,YSCLYN,Y SDEBUG,YSI ,YSOFF,YSP R,ZTQUEUED ,ZTSK
  825   "RTN","YSC LSERV",92, 0)
  826    Q
  827   "RTN","YSC LSERV",93, 0)
  828    ;/RBN Beg in mods -  YS*5.01*12 2
  829   "RTN","YSC LSERV",94, 0)
  830   UNREG I $G (PSCLOZ) D   Q
  831   "RTN","YSC LSERV",95, 0)
  832    . ;Verify  that + of  site numb er matches  local sit e number
  833   "RTN","YSC LSERV",96, 0)
  834    . I XMRG' ?1U4.6N1", ".U1",".U1 ","4N S YS CLER=" is  in error a nd was not  added at  " D OUT Q
  835   "RTN","YSC LSERV",97, 0)
  836    . I $P(XM RG,",")'?1 U4.6N S YS CLER=" is  not a vali d Clozapin e number "  D OUT Q
  837   "RTN","YSC LSERV",98, 0)
  838    . I $P(XM RG,",",4)' ?4N S YSCL ER=" An SS N must be  4 numbers  " D OUT Q
  839   "RTN","YSC LSERV",99, 0)
  840    . ;Valida te the for mat of the  data in t he message  and repor t the erro r.
  841   "RTN","YSC LSERV",100 ,0)
  842    . ;Do not  add data  for record s where th e SSN sent  is not in  the local  database
  843   "RTN","YSC LSERV",101 ,0)
  844    . S DIC=" ^DPT(",DIC (0)="X",D= "SSN",X=SS N
  845   "RTN","YSC LSERV",102 ,0)
  846    . N ARRAY  D LIST^DI C(2,,.09,, ,,X,"SSN", ,,"ARRAY")
  847   "RTN","YSC LSERV",103 ,0)
  848    . S DFN=$ G(ARRAY("D ILIST",2,1 )) I DFN=" " S YSCLER =" SSN doe s not exis t at " D O UT Q
  849   "RTN","YSC LSERV",104 ,0)
  850    . K ARRAY  D LIST^DI C(603.01,, 1,,,,$P(XM RG,","),,, ,"ARRAY")
  851   "RTN","YSC LSERV",105 ,0)
  852    . I $D(AR RAY("DILIS T","ID",1, 1)) D  D O UT Q
  853   "RTN","YSC LSERV",106 ,0)
  854    . . S YSC LER=" Cloz apine # is  in use by  "_ARRAY(" DILIST","I D",1,1)_"  at "
  855   "RTN","YSC LSERV",107 ,0)
  856    . D MIX^D IC1 S YSCL PT=+Y I Y= -1 S YSCLE R=" could  not be add ed at " D  OUT Q
  857   "RTN","YSC LSERV",108 ,0)
  858    . ;Add th e data and  report an y errors t o the Roll -Up group  at Forum.
  859   "RTN","YSC LSERV",109 ,0)
  860    . K DD S  DIC="^YSCL (603.01,", X=$P(XMRG, ","),DIC(" DR")="1/// /"_YSCLPT_ ";2////"_" W" K DO D  FILE^DICN
  861   "RTN","YSC LSERV",110 ,0)
  862    . K ARRAY  D LIST^DI C(603.01,, 1,,,,$P(XM RG,","),,, ,"ARRAY")
  863   "RTN","YSC LSERV",111 ,0)
  864    . I $D(AR RAY("DILIS T","ID",1, 1)) S YSCL ER=" assig ned to "_A RRAY("DILI ST","ID",1 ,1)_" at "  D OUT
  865   "RTN","YSC LSERV",112 ,0)
  866    ;/RBN End  mods - YS *5.01*122
  867   "RTN","YSC LSERV",113 ,0)
  868    Q
  869   "RTN","YSC LSERV",114 ,0)
  870   DELETE ;Al low the NC CC users t o delete c lozapine r egistratio n at the i ndividual  sites
  871   "RTN","YSC LSERV",115 ,0)
  872    S YSCLLNT =1 F  X XM REC Q:XMER <0  S XMRG =$TR(XMRG, "- ","") D
  873   "RTN","YSC LSERV",116 ,0)
  874     . I XMRG ="**++**DE LETEALL**+ +**" D DEL ALL Q
  875   "RTN","YSC LSERV",117 ,0)
  876     . N ARRA Y D LIST^D IC(603.01, ,1,,,,$P(X MRG,","),, ,,"ARRAY")
  877   "RTN","YSC LSERV",118 ,0)
  878     . I '$D( ARRAY("DIL IST","ID", 1,1)) S YS CLER=" "_$ P(XMRG,"," )_" is not  registere d at " D O UT Q
  879   "RTN","YSC LSERV",119 ,0)
  880     . ;I '$D (^YSCL(603 .01,"B",$P (XMRG,",") )) S YSCLE R=" "_$P(X MRG,",")_"  is not re gistered a t " D OUT  Q
  881   "RTN","YSC LSERV",120 ,0)
  882     . N ARRA Y D LIST^D IC(2,,.09, ,,,$P(XMRG ,",",2),"S SN",,,"ARR AY")
  883   "RTN","YSC LSERV",121 ,0)
  884     . S YSCL DFN=$G(ARR AY("DILIST ",2,1)) I  YSCLDFN=""  S YSCLER= " "_$P(XMR G,",",2)_"  is not a  valid SSN  at " D OUT  Q
  885   "RTN","YSC LSERV",122 ,0)
  886     . ;S YSC LDFN=$O(^D PT("SSN",$ P(XMRG,"," ,2),"")) I  YSCLDFN=" " S YSCLER =" "_$P(XM RG,",")_"  is not a v alid SSN a t " D OUT  Q
  887   "RTN","YSC LSERV",123 ,0)
  888     . K ARRA Y D LIST^D IC(603.01, ,1,"I",,,Y SCLDFN,,,, "ARRAY")
  889   "RTN","YSC LSERV",124 ,0)
  890     . I '$D( ARRAY("DIL IST","ID", 1,1)) S YS CLER=" "_$ P(XMRG,"," ,2)_" is n ot registe red at " D  OUT Q
  891   "RTN","YSC LSERV",125 ,0)
  892     . ;I '$D (^YSCL(603 .01,"C",YS CLDFN)) S  YSCLER=" " _$P(XMRG," ,",2)_" is  not regis tered at "  D OUT Q
  893   "RTN","YSC LSERV",126 ,0)
  894     . S YSCL A=ARRAY("D ILIST",2,1 ) ;I YSCLA ="" S YSCL ER=" "_$P( XMRG,",")_ " is not a  valid ent ry at " D  OUT Q
  895   "RTN","YSC LSERV",127 ,0)
  896     . ;K ^YS CL(603.01, YSCLA),^YS CL(603.01, "B",$P(XMR G,","),YSC LA),^YSCL( 603.01,"C" ,YSCLDFN,Y SCLA)
  897   "RTN","YSC LSERV",128 ,0)
  898     . S DIK= "^YSCL(603 .01,",DA=Y SCLA D ^DI K
  899   "RTN","YSC LSERV",129 ,0)
  900     . S YSCL ER=" remov ed at " D  OUT
  901   "RTN","YSC LSERV",130 ,0)
  902     . ;I $D( ^YSCL(603. 01,"C",+Y) ) K ^YSCL( 603.01,YSC LA),^YSCL( 603.01,"B" ,$P(XMRG," ,"),YSCLA) ,^YSCL(603 .01,"C",YS CLDFN,YSCL A) S YSCLE R=" remove d at " D O UT Q  ;RLM  9-29-99 A DDED QUIT
  903   "RTN","YSC LSERV",131 ,0)
  904    G EXIT
  905   "RTN","YSC LSERV",132 ,0)
  906   DELALL ;De lete all p atients in  file 603. 01
  907   "RTN","YSC LSERV",133 ,0)
  908    N ARRAY,D FN,YSCLA,Y SCLREGN
  909   "RTN","YSC LSERV",134 ,0)
  910    D LIST^DI C(603.01,, "1;2","I", ,,,"C",,," ARRAY")
  911   "RTN","YSC LSERV",135 ,0)
  912    F I=1:1 Q :'$D(ARRAY ("DILIST", 2,I))  S Y SCLA=ARRAY ("DILIST", 2,I) D:YSC LA
  913   "RTN","YSC LSERV",136 ,0)
  914    . S DFN=A RRAY("DILI ST",1,I),Y SCLREGN=AR RAY("DILIS T","ID",I, .01)
  915   "RTN","YSC LSERV",137 ,0)
  916    . S YSCLE R=YSCLREGN _", "_$$GE T1^DIQ(2,D FN,.09)_",  ("_ARRAY( "DILIST"," ID",I,2)_" ) gdeleted  at " D OU T
  917   "RTN","YSC LSERV",138 ,0)
  918    . S DIK=" ^YSCL(603. 01,",DA=YS CLA D ^DIK  ;K ^YSCL( 603.01,YSC LA)
  919   "RTN","YSC LSERV",139 ,0)
  920    Q
  921   "RTN","YSC LSERV",140 ,0)
  922   REPORT ;se nd report  of current  registrat ions to th e Clozapin e group on  Forum
  923   "RTN","YSC LSERV",141 ,0)
  924    D REPORT^ YSCLSRV2 G  EXIT
  925   "RTN","YSC LSERV",142 ,0)
  926   OUT S YSCL LNT=$G(YSC LLNT)+1,^T MP($J,"YSC LDATA",YSC LLNT)=XMRG _YSCLER_YS CLST Q
  927   "RTN","YSC LSERV",143 ,0)
  928    ;Build th e text for  the retur n message  here.
  929   "RTN","YSC LSERV",144 ,0)
  930   REBUILD ;
  931   "RTN","YSC LSERV",145 ,0)
  932    D REBUILD ^YSCLSRV2  G EXIT
  933   "RTN","YSC LSERV",146 ,0)
  934   UPDATE ;Up date recor d with Mon thly, Week ly or Bi-w eekly stat us
  935   "RTN","YSC LSERV",147 ,0)
  936    N YSARRAY  D LIST^DI C(603.01,, ,"I",,,,,, ,"YSARRAY" )
  937   "RTN","YSC LSERV",148 ,0)
  938    F I=1:1 Q :'$D(YSARR AY("DILIST ",2,I))  D
  939   "RTN","YSC LSERV",149 ,0)
  940    .S YSARRA Y(YSARRAY( "DILIST",2 ,I))=YSARR AY("DILIST ",1,I)
  941   "RTN","YSC LSERV",150 ,0)
  942    .S YSARRA Y("B",YSAR RAY("DILIS T",1,I))=Y SARRAY("DI LIST",2,I)
  943   "RTN","YSC LSERV",151 ,0)
  944    K YSARRAY ("DILIST")
  945   "RTN","YSC LSERV",152 ,0)
  946    F  X XMRE C Q:XMER<0   S XMRG=$ TR(XMRG,"-  ","") D
  947   "RTN","YSC LSERV",153 ,0)
  948     . I XMRG '?2U5N1"," 9N1","1U S  YSCLER="  is in erro r and was  not added  at " D OUT  Q
  949   "RTN","YSC LSERV",154 ,0)
  950     . I $P(X MRG,",")'? 2U5N S YSC LER=" is n ot a valid  Clozapine  number fo rmat " D O UT Q
  951   "RTN","YSC LSERV",155 ,0)
  952     . I $P(X MRG,",",2) '?9N S YSC LER=" An S SN must be  9 numbers  " D OUT Q
  953   "RTN","YSC LSERV",156 ,0)
  954     . I $P(X MRG,",",3) '="B",$P(X MRG,",",3) '="W",$P(X MRG,",",3) '="M" S YS CLER=" You  must spec ify Monthl y, Weekly  or Biweekl y " D OUT  Q  ;RLM 06 /15/05
  955   "RTN","YSC LSERV",157 ,0)
  956     . S YSCL NM=$P(XMRG ,","),YSCL SSN=$P(XMR G,",",2),Y SCLWB=$P(X MRG,",",3)
  957   "RTN","YSC LSERV",158 ,0)
  958     . I '$D( YSARRAY("B ",YSCLNM))  S YSCLER= " does not  exist at  " D OUT Q
  959   "RTN","YSC LSERV",159 ,0)
  960     . N ARRA Y D LIST^D IC(2,,.09, ,,,YSCLSSN ,"SSN",,," ARRAY")
  961   "RTN","YSC LSERV",160 ,0)
  962     . S YSCL DA=$G(ARRA Y("DILIST" ,2,1)) I ' YSCLDA S Y SCLER=" SS N does not  exist at  " D OUT Q
  963   "RTN","YSC LSERV",161 ,0)
  964     . K ARRA Y D LIST^D IC(603.01, ,1,"I",,,Y SCLDA,"C", ,,"ARRAY")
  965   "RTN","YSC LSERV",162 ,0)
  966     . S YSCL DA1=$G(ARR AY("DILIST ",2,1)) I  'YSCLDA1 S  YSCLER="  SSN not in  Clozapine  file " D  OUT Q
  967   "RTN","YSC LSERV",163 ,0)
  968     . D
  969   "RTN","YSC LSERV",164 ,0)
  970     . . S DI E=603.01,D A=YSCLDA1, DR="2////" _YSCLWB D  ^DIE
  971   "RTN","YSC LSERV",165 ,0)
  972     . . S YS CLER=" "_Y SCLNM_" (" _$$GET1^DI Q(2,YSCLDA ,.09)_") u pdated to  "_$S(YSCLW B="M":"Mon thly",YSCL WB="W":"We ekly",YSCL WB="B":"Bi -weekly",1 :"Unknown" )_" at " D  OUT ;06/1 5/05
  973   "RTN","YSC LSERV",166 ,0)
  974    G EXIT
  975   "RTN","YSC LSERV",167 ,0)
  976   RESEND ;Tr igger retr ansmission  of Clozap ine data
  977   "RTN","YSC LSERV",168 ,0)
  978    X XMREC
  979   "RTN","YSC LSERV",169 ,0)
  980    I $L(XMRG ,"^")<1!($ L(XMRG,"^" )>2) S YSC LER=" is a n invalid  date(s), R ESEND not  triggered  at " D OUT  G EXIT
  981   "RTN","YSC LSERV",170 ,0)
  982    S YSCLSTD T=$P(XMRG, "^",1)
  983   "RTN","YSC LSERV",171 ,0)
  984    K %DT S X =YSCLSTDT, %DT="P" D  ^%DT I Y=- 1 S YSCLER =" is an i nvalid sta rt date, R ESEND not  triggered  at " D OUT  G EXIT
  985   "RTN","YSC LSERV",172 ,0)
  986    S X1=Y,X2 =-1 D C^%D TC S YSCLS TDT=X
  987   "RTN","YSC LSERV",173 ,0)
  988    I $L(XMRG ,"^")>1 S  YSCLEDDT=$ P(XMRG,"^" ,2) K %DT  S X=YSCLED DT,%DT="P"  D ^%DT I  Y=-1 S YSC LER=" is a n invalid  end date,  RESEND not  triggered  at " D OU T G EXIT
  989   "RTN","YSC LSERV",174 ,0)
  990    S X1=Y,X2 =1 D C^%DT C S YSCLED DT=X
  991   "RTN","YSC LSERV",175 ,0)
  992    I $L(XMRG ,"^")=1 S  X1=YSCLSTD T,X2=2 D C ^%DTC S YS CLEDDT=X
  993   "RTN","YSC LSERV",176 ,0)
  994    S X1=YSCL EDDT,X2=YS CLSTDT D ^ %DTC I X<0  S YSCLER= " ending d ate cannot  be less t han start  date, RESE ND not tri ggered at  " D OUT G  EXIT
  995   "RTN","YSC LSERV",177 ,0)
  996    N YSCLREX
  997   "RTN","YSC LSERV",178 ,0)
  998    S YSCLREX =1
  999   "RTN","YSC LSERV",179 ,0)
  1000    S (YSCLTR DT,YSCLSDT )=YSCLSTDT
  1001   "RTN","YSC LSERV",180 ,0)
  1002    D REXMIT^ YSCLTST5
  1003   "RTN","YSC LSERV",181 ,0)
  1004    S Y=YSCLS DT X ^DD(" DD") S YSC LER=" - Re send trigg ered (loca l task #"_ $G(ZTSK)_" ) by "_XMF ROM_" for  "_Y_" at "  D OUT
  1005   "RTN","YSC LSERV",182 ,0)
  1006    G EXIT
  1007   "RTN","YSC LSERV",183 ,0)
  1008   DSET ;Set  the day of  the week  for the ro ll-up to r un.
  1009   "RTN","YSC LSERV",184 ,0)
  1010    X XMREC Q :XMER<0  S  X=$TR(XMR G,"- ","")
  1011   "RTN","YSC LSERV",185 ,0)
  1012    S YSOFF=$ S(X="SUNDA Y":0,X="MO NDAY":1,X= "TUESDAY": 2,X="WEDNE SDAY":3,X= "THURSDAY" :4,X="FRID AY":5,X="S ATURDAY":6 ,1:7)
  1013   "RTN","YSC LSERV",186 ,0)
  1014    I YSOFF>6  S YSCLLNT =$G(YSCLLN T)+1,^TMP( $J,"YSCLDA TA",YSCLLN T)=X_" isn 't a valid  day of th e week." G  EXIT
  1015   "RTN","YSC LSERV",187 ,0)
  1016    S DIE="^Y SCL(603.03 ,",DA=1,DR ="2////"_X  D ^DIE  ; S $P(^YSCL (603.03,1, 0),"^",2)= X
  1017   "RTN","YSC LSERV",188 ,0)
  1018    S YSCLLNT =$G(YSCLLN T)+1,^TMP( $J,"YSCLDA TA",YSCLLN T)="Run da y set to " _X
  1019   "RTN","YSC LSERV",189 ,0)
  1020    G EXIT
  1021   "RTN","YSC LSERV",190 ,0)
  1022    Q
  1023   "RTN","YSC LSERV",191 ,0)
  1024   DEBUG ;Tur n debug mo de on and  off.
  1025   "RTN","YSC LSERV",192 ,0)
  1026    I YSCLSUB ["DEBUG ON " D
  1027   "RTN","YSC LSERV",193 ,0)
  1028     . S YSCL LNT=$G(YSC LLNT)+1,^T MP($J,"YSC LDATA",YSC LLNT)="Deb ug Mode is  "_$S(YSDE BUG:"alrea dy",1:"now ")_" ON at  "_YSCLSTN
  1029   "RTN","YSC LSERV",194 ,0)
  1030     . S DIE= "^YSCL(603 .03,",DA=1 ,DR="3//// 1" D ^DIE    ;S $P(^Y SCL(603.03 ,1,0),"^", 3)=1
  1031   "RTN","YSC LSERV",195 ,0)
  1032    I YSCLSUB ["DEBUG OF F" D
  1033   "RTN","YSC LSERV",196 ,0)
  1034     . S YSCL LNT=$G(YSC LLNT)+1,^T MP($J,"YSC LDATA",YSC LLNT)="Deb ug Mode is  "_$S('YSD EBUG:"alre ady",1:"no w")_" OFF  at "_YSCLS TN
  1035   "RTN","YSC LSERV",197 ,0)
  1036     . S DIE= "^YSCL(603 .03,",DA=1 ,DR="3//// 0" D ^DIE    ;S $P(^Y SCL(603.03 ,1,0),"^", 3)=0
  1037   "RTN","YSC LSERV",198 ,0)
  1038    G EXIT
  1039   "RTN","YSC LSERV",199 ,0)
  1040   ZEOR ;YSCL SERV
  1041   "RTN","YSC LSRV1")
  1042   0^7^B27622 83
  1043   "RTN","YSC LSRV1",1,0 )
  1044   YSCLSRV1 ; DALOI/RLM- Clozapine  data serve r ;Jul 14,  2017@09:0 0:07
  1045   "RTN","YSC LSRV1",2,0 )
  1046    ;;5.01;ME NTAL HEALT H;**61,69, 74,90,122* *;Dec 30,  1994;Build  61
  1047   "RTN","YSC LSRV1",3,0 )
  1048    ; Referen ce to ^%ZO SF support ed by IA # 10096
  1049   "RTN","YSC LSRV1",4,0 )
  1050    ; Referen ce to ^XMD  supported  by IA #10 070
  1051   "RTN","YSC LSRV1",5,0 )
  1052   CSUM ;Calc ulate chec ksum for r outines an d transmit  errors to  Forum
  1053   "RTN","YSC LSRV1",6,0 )
  1054    S X=$T(+0 ) X ^%ZOSF ("RSUM") S  ^TMP("YSC L",$J,2,0) ="YSCLSRV1  at "_YSCL ST_" = "_Y
  1055   "RTN","YSC LSRV1",7,0 )
  1056    F YSI=1:1  S YSA=$T( ROU+YSI) Q :YSA["***"   S X=$P($ P(YSA,",") ,";",3) D
  1057   "RTN","YSC LSRV1",8,0 )
  1058    . X ^%ZOS F("TEST")  I '$T S ^T MP("YSCL", $J,YSI+3,0 )=X_" is m issing." Q
  1059   "RTN","YSC LSRV1",9,0 )
  1060    . X ^%ZOS F("RSUM")  S ^TMP("YS CL",$J,YSI +3,0)=X_"  should be  "_$P(YSA," ,",2)_" is  "_Y
  1061   "RTN","YSC LSRV1",10, 0)
  1062    ;/RBN - B egin modif ications f or YS*5.01 *122
  1063   "RTN","YSC LSRV1",11, 0)
  1064    K XMY I $ $GET1^DIQ( 8989.3,1,5 01,"I") D
  1065   "RTN","YSC LSRV1",12, 0)
  1066    . I 'YSDE BUG S XMY( "G.CLOZAPI NE ROLL-UP @ DNS . URL ")=""
  1067   "RTN","YSC LSRV1",13, 0)
  1068    . E    S XMY("G.C LOZAPINE D EBUG@
D N S. URL          ")=""
  1069   "RTN","YSC LSRV1",14, 0)
  1070    E  D
  1071   "RTN","YSC LSRV1",15, 0)
  1072    . I 'YSDE BUG S XMY( "G.CLOZAPI NE ROLL-UP ")=""
  1073   "RTN","YSC LSRV1",16, 0)
  1074    . E  S XM Y("G.CLOZA PINE DEBUG ")=""
  1075   "RTN","YSC LSRV1",17, 0)
  1076    ;/RBN - E nd modific ations for  YS*5.01*1 22
  1077   "RTN","YSC LSRV1",18, 0)
  1078    S XMSUB=$ S(YSDEBUG: "DEBUG ",1 :"")_"Cloz apine Chec ksum data  at "_YSCLS T_" run on  "_XQDATE
  1079   "RTN","YSC LSRV1",19, 0)
  1080    S XMTEXT= "^TMP(""YS CL"",$J,", XMDUZ="CLO ZAPINE MON ITOR" D ^X MD
  1081   "RTN","YSC LSRV1",20, 0)
  1082    K %DT,YSA ,YSCLST,YS I,X,XMDUZ, XMSUB,XMTE XT,Y
  1083   "RTN","YSC LSRV1",21, 0)
  1084    K ^TMP("Y SCL",$J)
  1085   "RTN","YSC LSRV1",22, 0)
  1086    Q
  1087   "RTN","YSC LSRV1",23, 0)
  1088   ROU ;
  1089   "RTN","YSC LSRV1",24, 0)
  1090    ;;YSCLDIS ,62418722
  1091   "RTN","YSC LSRV1",25, 0)
  1092    ;;YSCLSER V,90753877
  1093   "RTN","YSC LSRV1",26, 0)
  1094    ;;YSCLSRV 2,24723007
  1095   "RTN","YSC LSRV1",27, 0)
  1096    ;;YSCLSRV 3,24872037
  1097   "RTN","YSC LSRV1",28, 0)
  1098    ;;YSCLTES T,21727247
  1099   "RTN","YSC LSRV1",29, 0)
  1100    ;;YSCLTST 1,11839450
  1101   "RTN","YSC LSRV1",30, 0)
  1102    ;;YSCLTST 2,11245868 8
  1103   "RTN","YSC LSRV1",31, 0)
  1104    ;;YSCLTST 3,69598047
  1105   "RTN","YSC LSRV1",32, 0)
  1106    ;;YSCLTST 5,12972011 0
  1107   "RTN","YSC LSRV1",33, 0)
  1108    ;;YSCLTST 6,26876020
  1109   "RTN","YSC LSRV1",34, 0)
  1110    ;;***
  1111   "RTN","YSC LSRV1",35, 0)
  1112   ZEOR ;YSCL SRV1
  1113   "RTN","YSC LTEST")
  1114   0^^B195928 94
  1115   "RTN","YSC LTEST",1,0 )
  1116   YSCLTEST ; DALOI/LB/R LM-COLLECT  RX AND LA B DATA FOR  CLOZAPINE  ;Jul 14,  2017@09:00 :07
  1117   "RTN","YSC LTEST",2,0 )
  1118    ;;5.01;ME NTAL HEALT H;**18,22, 26,47,61,6 9,74,90,12 2**;Dec 30 , 1994;Bui ld 61
  1119   "RTN","YSC LTEST",3,0 )
  1120    ; Referen ce to ^DPT  supported  by IA #10 035
  1121   "RTN","YSC LTEST",4,0 )
  1122    ; Referen ce to ^DIC (5 support ed by IA # 10056
  1123   "RTN","YSC LTEST",5,0 )
  1124    ; Referen ce to ^PS( 55 support ed by IA # 787
  1125   "RTN","YSC LTEST",6,0 )
  1126    ; Referen ce to ^PSD RUG suppor ted by IA  #25
  1127   "RTN","YSC LTEST",7,0 )
  1128    ; Referen ce to ^PSR X supporte d by IA #7 80
  1129   "RTN","YSC LTEST",8,0 )
  1130    ; Referen ce to ^XMD  supported  by IA #10 070
  1131   "RTN","YSC LTEST",9,0 )
  1132   BKGRD ;Nor mal entry  for weekly  backgroun d job - da tes from T -10 to T-3
  1133   "RTN","YSC LTEST",10, 0)
  1134    Q  ; << N CC REMEDIA TION - THI S ENTRY PO INT IS NOL ONGER USED  *122/RJS
  1135   "RTN","YSC LTEST",11, 0)
  1136    S X=DT D  DW^%DTC Q: X'=$$GET1^ DIQ(603.03 ,1,2)  ;Ma ke the day  to run a  parameter  settable b y the serv er.
  1137   "RTN","YSC LTEST",12, 0)
  1138    S YSOFF=$ S(X="SUNDA Y":0,X="MO NDAY":1,X= "TUESDAY": 2,X="WEDNE SDAY":3,X= "THURSDAY" :4,X="FRID AY":5,X="S ATURDAY":6 ,1:7) Q:YS OFF>6
  1139   "RTN","YSC LTEST",13, 0)
  1140    S X="T-"_ YSOFF D ^% DT S YSCLE D=Y,YSCLRE T=""
  1141   "RTN","YSC LTEST",14, 0)
  1142    ;S YSCL=$ H#7-2 S:YS CL<1 YSCL= YSCL+7 S X ="T-"_(YSC L+7) D ^%D T S YSCLED =Y,YSCLRET ="" K YSCL  ;Make sur e it's a S unday endi ng date.
  1143   "RTN","YSC LTEST",15, 0)
  1144   RUN ; entr y from abo ve for nor mal or bel ow for req ueue
  1145   "RTN","YSC LTEST",16, 0)
  1146    Q  ; << N CC REMEDIA TION - THI S ENTRY PO INT IS NOL ONGER USED  *122/RJS
  1147   "RTN","YSC LTEST",17, 0)
  1148    S YSDEBUG =$P(^YSCL( 603.03,1,0 ),"^",3)
  1149   "RTN","YSC LTEST",18, 0)
  1150    ;I $G(^YS CL(603.02, 1,0))'?1.N 1"^"1.N G  FLERR^YSCL TST3 ;Chec k for entr y in file  603.02, re port an er ror if eit her entry  is missing .
  1151   "RTN","YSC LTEST",19, 0)
  1152    D DMG^YSC LTST3
  1153   "RTN","YSC LTEST",20, 0)
  1154    S YSCLSIT E=$P($$SIT E^VASITE," ^",2)
  1155   "RTN","YSC LTEST",21, 0)
  1156    K XMY
  1157   "RTN","YSC LTEST",22, 0)
  1158    S XMY("G. CLOZAPINE  ROLL-UP")= ""
  1159   "RTN","YSC LTEST",23, 0)
  1160    I YSDEBUG  K XMY S X MY("G.CLOZ APINE DEBU G")=""
  1161   "RTN","YSC LTEST",24, 0)
  1162    S %DT="T" ,X="NOW" D  ^%DT S YS CLNOW=$P(Y ,".",2)
  1163   "RTN","YSC LTEST",25, 0)
  1164    S XMSUB=$ S(YSDEBUG: "DEBUG ",1 :"")_"Cloz apine lab  data start ed at "_YS CLSITE_" o n "_DT_" a t "_YSCLNO W,^TMP("YS CL",$J,1,0 )=" ",^TMP ("YSCL",$J ,2,0)="+++  Clozapine  data coll ection sta rted at "_ YSCLSITE_"  on "_DT_"  +++",^TMP ("YSCL",$J ,3,0)=" "
  1165   "RTN","YSC LTEST",26, 0)
  1166    S XMTEXT= "^TMP(""YS CL"",$J,", XMDUZ="Clo zapine MON ITOR" D ^X MD
  1167   "RTN","YSC LTEST",27, 0)
  1168    S $P(^YSC L(603.03,1 ,0),"^",4) =$$NOW^XLF DT
  1169   "RTN","YSC LTEST",28, 0)
  1170    ;send MM  message wh en routine  started.
  1171   "RTN","YSC LTEST",29, 0)
  1172    S YSCLLN= 0,YSCLLLN= 3,X1=$P(YS CLED,"."), X2=-60 D C ^%DTC S YS CLM28=X,X1 =$P(YSCLED ,"."),X2=- 28 D C^%DT C S YSCLM7 =X,YSCLED= YSCLED+.5  ;28 TO 60  and 14 to  28 6/15/05
  1173   "RTN","YSC LTEST",30, 0)
  1174    S X1=$P(Y SCLED,".") ,X2=-180 D  C^%DTC S  YSCLM180=X
  1175   "RTN","YSC LTEST",31, 0)
  1176    S X1=$P(Y SCLED,".") ,X2=-56 D  C^%DTC S Y SCLM56=X
  1177   "RTN","YSC LTEST",32, 0)
  1178    S YSCLIF= +$$SITE^VA SITE_","
  1179   "RTN","YSC LTEST",33, 0)
  1180    D GETS^DI Q(4,YSCLIF ,"1.01;1.0 2;1.03;.02 ;1.04","I" ,"YSCLFF")
  1181   "RTN","YSC LTEST",34, 0)
  1182    S $P(YSCL DEMO,"^",1 )=YSCLFF(4 ,YSCLIF,1. 01,"I")
  1183   "RTN","YSC LTEST",35, 0)
  1184    S $P(YSCL DEMO,"^",2 )=YSCLFF(4 ,YSCLIF,1. 02,"I")
  1185   "RTN","YSC LTEST",36, 0)
  1186    S $P(YSCL DEMO,"^",3 )=YSCLFF(4 ,YSCLIF,1. 03,"I")
  1187   "RTN","YSC LTEST",37, 0)
  1188    S $P(YSCL DEMO,"^",4 )=$P(^DIC( 5,YSCLFF(4 ,YSCLIF,.0 2,"I"),0), "^",2)
  1189   "RTN","YSC LTEST",38, 0)
  1190    S $P(YSCL DEMO,"^",5 )=YSCLFF(4 ,YSCLIF,1. 04,"I")
  1191   "RTN","YSC LTEST",39, 0)
  1192    S $P(YSCL DEMO,"^",6 )=""
  1193   "RTN","YSC LTEST",40, 0)
  1194    K J,YSCLF ,YSCLFF,YS CLIF,X
  1195   "RTN","YSC LTEST",41, 0)
  1196    ;YSCLDEMO =street1^s treet2^cit y^state(2  letter)^ZI P^phone
  1197   "RTN","YSC LTEST",42, 0)
  1198    K ^TMP($J ),^TMP("YS CL",$J) S  (DFN,YSCLI EN)=0
  1199   "RTN","YSC LTEST",43, 0)
  1200    F  K YSCL A S YSCLIE N=$O(^YSCL (603.01,YS CLIEN)),YS CLLD=0 Q:' YSCLIEN  S  DFN=$P($G (^YSCL(603 .01,YSCLIE N,0)),"^", 2) S $P(YS STOP,",",1 )=1 Q:$$S^ %ZTLOAD  D :DFN
  1201   "RTN","YSC LTEST",44, 0)
  1202     . I $D(^ DPT(DFN,0) ),$D(^YSCL (603.01,YS CLIEN,0))  S YSCLSAND =$P($G(^YS CL(603.01, YSCLIEN,0) ),"^",2),Y SCL=^DPT(D FN,0),YSCL X=$E($P($P (YSCL,"^") ,",",2))_$ E(YSCL)_"^ "_$P(YSCL, "^",9) D
  1203   "RTN","YSC LTEST",45, 0)
  1204     . . S YS CLLAB="" D  GET I YSC LLAB]"" D  CHECK^YSCL TST1 I YSC LT D LOAD^ YSCLTST1
  1205   "RTN","YSC LTEST",46, 0)
  1206    G TRANSMI T^YSCLTST2
  1207   "RTN","YSC LTEST",47, 0)
  1208   GET ;presc riptions
  1209   "RTN","YSC LTEST",48, 0)
  1210    Q:$$S^%ZT LOAD
  1211   "RTN","YSC LTEST",49, 0)
  1212    N YSARRAY  D LIST^DI C(55.03,", "_DFN_",", ,"I",,,,,, ,"YSARRAY" )
  1213   "RTN","YSC LTEST",50, 0)
  1214    S YSCLPHY ="",$P(YSC LX,"^",6)= $P(YSCLDEM O,"^",5),$ P(YSCLX,"^ ",11)=$$GE T1^DIQ(603 .01,YSCLIE N,.01),$P( YSCLX,"^", 16)=DT
  1215   "RTN","YSC LTEST",51, 0)
  1216    ;site zip (p6),regis tration nu mber (p11) , today (p 16)
  1217   "RTN","YSC LTEST",52, 0)
  1218    F YSCL=1: 1 Q:'$D(YS ARRAY("DIL IST",1,YSC L))  S YSC L1=YSARRAY ("DILIST", 1,YSCL) D
  1219   "RTN","YSC LTEST",53, 0)
  1220    . D ACTIV E Q:YSACT' =0  S YSDR G=$$GET1^D IQ(52,YSCL 1,6,"I") Q :$$GET1^DI Q(50,YSDRG ,17.5)'="P SOCLO1"
  1221   "RTN","YSC LTEST",54, 0)
  1222    . N YSARR AY1 D LIST ^DIC(50.02 ,","_YSDRG _",",3,"I" ,,,,,,,"YS ARRAY1")
  1223   "RTN","YSC LTEST",55, 0)
  1224    . F YSCL2 =1:1 Q:'$D (YSARRAY1( "DILIST"," ID",YSCL2) )  I $G(YS ARRAY1("DI LIST","ID" ,YSCL2,3)) =1 D  Q
  1225   "RTN","YSC LTEST",56, 0)
  1226    . . S YSC LID=$$GET1 ^DIQ(52,YS CL1,1,"I")  S:YSCLID> $G(YSCLLD)  YSCLLD=YS CLID
  1227   "RTN","YSC LTEST",57, 0)
  1228    . . I YSC LID'>DT,YS CLID'<$G(Y SCLM28) S  YSCLA(-YSC LID,-YSCL1 )="" ;Chan ged YSCLED  to DT  RL M
  1229   "RTN","YSC LTEST",58, 0)
  1230    Q
  1231   "RTN","YSC LTEST",59, 0)
  1232   ACTIVE ;Te st for Act ive prescr iptions
  1233   "RTN","YSC LTEST",60, 0)
  1234    S YSACT=$ $GET1^DIQ( 52,YSCL1,1 00,"I")
  1235   "RTN","YSC LTEST",61, 0)
  1236    Q
  1237   "RTN","YSC LTEST",62, 0)
  1238   REXMIT ;Re send Cloza pine data
  1239   "RTN","YSC LTEST",63, 0)
  1240    S X1=YSCL ED,X2=-3 D  C^%DTC S  YSCLED=X,Y SCLRET=1,Z TREQ="@" G  RUN
  1241   "RTN","YSC LTEST",64, 0)
  1242    Q
  1243   "RTN","YSC LTEST",65, 0)
  1244   ABORT ;
  1245   "RTN","YSC LTEST",66, 0)
  1246    K XMY
  1247   "RTN","YSC LTEST",67, 0)
  1248    S XMY("G. CLOZAPINE  ROLL-UP@") =""
  1249   "RTN","YSC LTEST",68, 0)
  1250    I YSDEBUG  K XMY S X MY("G.CLOZ APINE DEBU G@")=""
  1251   "RTN","YSC LTEST",69, 0)
  1252    S %DT="T" ,X="NOW" D  ^%DT S YS CLNOW=$P(Y ,".",2)
  1253   "RTN","YSC LTEST",70, 0)
  1254    S YSCLSIT E=$P($$SIT E^VASITE," ^",2)
  1255   "RTN","YSC LTEST",71, 0)
  1256    S XMSUB=" Clozapine  Roll-Up ab orted ["_$ G(YSSTOP)_ "] at "_YS CLSITE_" o n "_DT
  1257   "RTN","YSC LTEST",72, 0)
  1258    S YSTEXT( 1,0)=" "
  1259   "RTN","YSC LTEST",73, 0)
  1260    S YSTEXT( 2,0)=$S(YS DEBUG:"DEB UG ",1:"") _"Clozapin e Roll-Up  aborted [" _$G(YSSTOP )_"] at "_ YSCLSITE_"  on "_DT_"  at "_YSCL NOW,^TMP(" YSCL",$J,1 ,0)=" "
  1261   "RTN","YSC LTEST",74, 0)
  1262    S XMTEXT= "YSTEXT(", XMDUZ="Clo zapine MON ITOR" D ^X MD
  1263   "RTN","YSC LTEST",75, 0)
  1264    S ZTSTOP= 1 Q
  1265   "RTN","YSC LTEST",76, 0)
  1266   ZEOR ;YSCL TEST
  1267   "RTN","YSC LTST2")
  1268   0^1^B11238 8330
  1269   "RTN","YSC LTST2",1,0 )
  1270   YSCLTST2 ; DALOI/LB/R LM-TRANSMI T RX AND l AB DATA FO R CLOZAPIN E ;Jul 14,  2017@09:0 0:07
  1271   "RTN","YSC LTST2",2,0 )
  1272    ;;5.01;ME NTAL HEALT H;**18,22, 26,47,61,6 9,74,90,92 ,122**;Dec  30, 1994; Build 61
  1273   "RTN","YSC LTST2",3,0 )
  1274    ; Referen ce to ^LAB (60 suppor ted by IA  #333
  1275   "RTN","YSC LTST2",4,0 )
  1276    ; Referen ce to ^PSD RUG suppor ted by IA  #25
  1277   "RTN","YSC LTST2",5,0 )
  1278    ; Referen ce to ^PS( 55 support ed by IA # 787
  1279   "RTN","YSC LTST2",6,0 )
  1280    ; Referen ce to ^XMD  supported  by IA #10 070
  1281   "RTN","YSC LTST2",7,0 )
  1282    ; Referen ce to ^LR7 OR1 suppor ted by IA  #2503
  1283   "RTN","YSC LTST2",8,0 )
  1284    ; 
  1285   "RTN","YSC LTST2",9,0 )
  1286   TRANSMIT ;  send remo te and loc al, kill a nd quit
  1287   "RTN","YSC LTST2",10, 0)
  1288    K XMZ S % DT="T",X=" NOW" D ^%D T S YSCLNO W=$P(Y,"." ,2),YSCLSI TE=$P($$SI TE^VASITE, "^",2)
  1289   "RTN","YSC LTST2",11, 0)
  1290    S $P(YSST OP,",",7)= 7 I $$S^%Z TLOAD D AB ORT^YSCLTE ST G END
  1291   "RTN","YSC LTST2",12, 0)
  1292    S YSDEBUG =$$GET1^DI Q(603.03,1 ,3,"I"),YS PROD=$$GET 1^DIQ(8989 .3,1,501," I")
  1293   "RTN","YSC LTST2",13, 0)
  1294    S YSPRODS T=$$GET1^D IQ(603.03, 1,8) ;S:YS PRODST=""  YSPRODST=" S.RUCLRXLA B@ D N
S. URL          "
  1295   "RTN","YSC LTST2",14, 0)
  1296    S YSDBGST =$$GET1^DI Q(603.03,1 ,10) ;S:YS DBGST="" Y SDBGST="G. CLOZAPINE  DEBUG@
D N S. URL          "
  1297   "RTN","YSC LTST2",15, 0)
  1298    ;/RBN - B egin modif ications f or YS*5.01 *122
  1299   "RTN","YSC LTST2",16, 0)
  1300    I $G(YSCL LN) D
  1301   "RTN","YSC LTST2",17, 0)
  1302    .K XMY
  1303   "RTN","YSC LTST2",18, 0)
  1304    .I YSPROD  D
  1305   "RTN","YSC LTST2",19, 0)
  1306    ..I 'YSDE BUG S XMY( YSPRODST)= "" ;XMY("G .CLOZAPINE  ROLL-UP") ="" ;,
  1307   "RTN","YSC LTST2",20, 0)
  1308    ..E    S XMY("G.C LOZAPINE D EBUG@
D N S. URL          ")="",XMY( "G.RUCLRXL AB@
D N S. URL          ")=""
  1309   "RTN","YSC LTST2",21, 0)
  1310    .E  D
  1311   "RTN","YSC LTST2",22, 0)
  1312    ..I 'YSDE BUG S XMY( YSDBGST)=" "
  1313   "RTN","YSC LTST2",23, 0)
  1314    ..E  S XM Y("G.CLOZA PINE DEBUG ")=""
  1315   "RTN","YSC LTST2",24, 0)
  1316    .S XMDUZ= "Clozapine  MONITOR", XMTEXT="^T MP($J,",XM SUB=$S(YSD EBUG:"DEBU G ",1:"")_ "Clozapine  lab data  @ "_YSCLSI TE_" on "_ DT_" at "_ YSCLNOW D  ^XMD
  1317   "RTN","YSC LTST2",25, 0)
  1318    K XMY
  1319   "RTN","YSC LTST2",26, 0)
  1320    S ^TMP("Y SCL",$J,2, 0)=" ",^TM P("YSCL",$ J,3,0)="In  message #  "_$S($D(X MZ):XMZ,1: "no data s ent")
  1321   "RTN","YSC LTST2",27, 0)
  1322    I 'YSDEBU G S XMY("G .PSOCLOZ") ="" S:YSPR OD XMY("G. CLOZAPINE  ROLL-UP@ DNS . URL ")=""
  1323   "RTN","YSC LTST2",28, 0)
  1324    E    S XMY("G.C LOZAPINE D EBUG")=""  S:YSPROD X MY("G.CLOZ APINE DEBU G@
D N S. URL          ")=""
  1325   "RTN","YSC LTST2",29, 0)
  1326    S XMSUB=$ S(YSDEBUG: "DEBUG ",1 :"")_"Cloz apine lab  data @ "_Y SCLSITE_"  on "_DT_"  at "_YSCLN OW
  1327   "RTN","YSC LTST2",30, 0)
  1328    K XMZ S ^ TMP("YSCL" ,$J,1,0)=" Clozapine  lab data w as transmi tted, "_YS CLLN_" rec ords were  sent",XMTE XT="^TMP(" "YSCL"",$J ," D ^XMD
  1329   "RTN","YSC LTST2",31, 0)
  1330    S DIE="^Y SCL(603.03 ,",DA=1,DR ="5////"_$ $NOW^XLFDT  D ^DIE  ; S $P(^YSCL (603.03,1, 0),"^",5)= $$NOW^XLFD T
  1331   "RTN","YSC LTST2",32, 0)
  1332    ;/RBN - E nd modific ations for  YS*5.01*1 22
  1333   "RTN","YSC LTST2",33, 0)
  1334   END ;
  1335   "RTN","YSC LTST2",34, 0)
  1336    G END1^YS CLTST3
  1337   "RTN","YSC LTST2",35, 0)
  1338    Q
  1339   "RTN","YSC LTST2",36, 0)
  1340    ;
  1341   "RTN","YSC LTST2",37, 0)
  1342   REXMIT ; r etransmit  lab and RX  data
  1343   "RTN","YSC LTST2",38, 0)
  1344    ; must be  a tuesday
  1345   "RTN","YSC LTST2",39, 0)
  1346    S DIR(0)= "Y",DIR("A ")="Are yo u sure you  wish to r etransmit  lab data"
  1347   "RTN","YSC LTST2",40, 0)
  1348    D ^DIR K  DIR I Y'=1  K Y Q
  1349   "RTN","YSC LTST2",41, 0)
  1350    ;/RBN Beg in modific ation for  YS*122
  1351   "RTN","YSC LTST2",42, 0)
  1352    D REX^YSC LTST5
  1353   "RTN","YSC LTST2",43, 0)
  1354    ;/RBN End  modificat ion for YS *122
  1355   "RTN","YSC LTST2",44, 0)
  1356    Q
  1357   "RTN","YSC LTST2",45, 0)
  1358    ;
  1359   "RTN","YSC LTST2",46, 0)
  1360   DATE S %DT ="AEXP",%D T(0)=-DT,% DT("A")="E nding date  for data  collection ."
  1361   "RTN","YSC LTST2",47, 0)
  1362    D ^%DT K  %DT G END: X="^",END: X="^" I Y= -1 G DATE
  1363   "RTN","YSC LTST2",48, 0)
  1364    ;/RBN Beg in modific ations for  *122
  1365   "RTN","YSC LTST2",49, 0)
  1366    S ZTDESC= "Server tr iggered re transmissi on"
  1367   "RTN","YSC LTST2",50, 0)
  1368    S ZTSAVE( "YSCLED")= "",ZTIO="" ,ZTRTN="RE XMIT^YSCLT ST5",ZTDTH =$H
  1369   "RTN","YSC LTST2",51, 0)
  1370    D REXMIT^ YSCLTST5 G  END
  1371   "RTN","YSC LTST2",52, 0)
  1372    ;/RBN End  modificat ions for * 122
  1373   "RTN","YSC LTST2",53, 0)
  1374   FLSET ;Set  up file 6 03.02
  1375   "RTN","YSC LTST2",54, 0)
  1376    W @IOF,"T his option  specifies  the blood  tests ass ociated wi th the Clo zapine"
  1377   "RTN","YSC LTST2",55, 0)
  1378    W !,"repo rting soft ware.  Two  tests mus t be defin ed.  The f irst is th e White"
  1379   "RTN","YSC LTST2",56, 0)
  1380    W !,"Bloo d Count.   The second  is the Gr anulocyte  (or Neutro phil) perc entage."
  1381   "RTN","YSC LTST2",57, 0)
  1382    K DIR W ! ! S DIR(0) ="PA^64:EM Z",DIR("A" ,1)="Enter  the test  that will  be used to  record th e White Bl ood Count  for the",D IR("A")="C lozapine p atients: "  D ^DIR
  1383   "RTN","YSC LTST2",58, 0)
  1384    Q:Y=-1!($ D(DUOUT))! ($D(DTOUT) )!($D(DIRU T))!($D(DI ROUT))
  1385   "RTN","YSC LTST2",59, 0)
  1386    S YSCLWBC =+Y
  1387   "RTN","YSC LTST2",60, 0)
  1388    K DIR W ! ! S DIR(0) ="PA^64:EM Z",DIR("A" ,1)="Enter  the test  that will  be used to  record th e Neutroph il Count ( percentage )",DIR("A" )=" for th e Clozapin e patients : " D ^DIR
  1389   "RTN","YSC LTST2",61, 0)
  1390    Q:Y=-1!($ D(DUOUT))! ($D(DTOUT) )!($D(DIRU T))!($D(DI ROUT))
  1391   "RTN","YSC LTST2",62, 0)
  1392    S YSCLGRN =+Y
  1393   "RTN","YSC LTST2",63, 0)
  1394    I YSCLWBC ,YSCLGRN D
  1395   "RTN","YSC LTST2",64, 0)
  1396    .K DD S D IC="^YSCL( 603.02,",X =YSCLWBC,D IC("DR")=" 1////"_YSC LGRN K DO  D FILE^DIC N
  1397   "RTN","YSC LTST2",65, 0)
  1398    ;Only one  entry is  allowed.
  1399   "RTN","YSC LTST2",66, 0)
  1400    K DIR,X,Y ,YSCLWBC,Y SCLGRN,ZTD ESC
  1401   "RTN","YSC LTST2",67, 0)
  1402    Q
  1403   "RTN","YSC LTST2",68, 0)
  1404   EN(DRG) ;
  1405   "RTN","YSC LTST2",69, 0)
  1406    K LAB ;I  $P($G(^PSD RUG(DRG,"C LOZ1")),"^ ")'="PSOCL O1" S LAB( "NOT")=0 Q
  1407   "RTN","YSC LTST2",70, 0)
  1408    I $$GET1^ DIQ(50,DRG ,17.5)'="P SOCLO1" S  LAB("NOT") =0 Q
  1409   "RTN","YSC LTST2",71, 0)
  1410    N YSARRAY  D LIST^DI C(50.02,", "_YSDRG_", ",3,"I",,, ,,,,"YSARR AY")
  1411   "RTN","YSC LTST2",72, 0)
  1412    S (CNT,I) =0 F  S I= $O(YSARRAY ("DILIST", 2,I)) Q:'I   S CNT=$G (CNT)+1
  1413   "RTN","YSC LTST2",73, 0)
  1414    I CNT'=2  S LAB("BAD  TEST")=0  K CNT Q
  1415   "RTN","YSC LTST2",74, 0)
  1416    K CNT F I =1:1 Q:'$D (YSARRAY(" DILIST","I D",I))  D
  1417   "RTN","YSC LTST2",75, 0)
  1418    .S LABT=$ S(YSARRAY( "DILIST"," ID",I,3)=1 :"WBC",1:" ANC"),YSLN =YSARRAY(" DILIST",2, I)
  1419   "RTN","YSC LTST2",76, 0)
  1420    .S LAB(LA BT)=$$GET1 ^DIQ(50.02 ,YSLN_","_ DRG,.01,"I ")_"^"_$$G ET1^DIQ(50 .02,YSLN_" ,"_DRG,2," I")_"^"_$$ GET1^DIQ(5 0.02,YSLN_ ","_DRG,3, "I")
  1421   "RTN","YSC LTST2",77, 0)
  1422    K LABT,I
  1423   "RTN","YSC LTST2",78, 0)
  1424    Q
  1425   "RTN","YSC LTST2",79, 0)
  1426   CL1(DFN,DA YS) ;The r outine was  split due  to size
  1427   "RTN","YSC LTST2",80, 0)
  1428    G CL1^YSC LTST4
  1429   "RTN","YSC LTST2",81, 0)
  1430    Q
  1431   "RTN","YSC LTST2",82, 0)
  1432    ;
  1433   "RTN","YSC LTST2",83, 0)
  1434   CL(DFN) ;
  1435   "RTN","YSC LTST2",84, 0)
  1436    K ^TMP("L RRR",$J) N  RESULTS,Y SCLYWBC,YS CLRANC,YSC LYANC,YSCL XANC,YSCLX WBC,YSCLRW BC,YSCLFRQ ,YSCLIEN
  1437   "RTN","YSC LTST2",85, 0)
  1438    I 'DFN Q  "-1^-1^-1^ -1^-1^-1^- 1"
  1439   "RTN","YSC LTST2",86, 0)
  1440    N ARRAY D  LIST^DIC( 603.01,,1, "I",,,DFN, "C",,,"ARR AY")
  1441   "RTN","YSC LTST2",87, 0)
  1442    ;I '$D(^Y SCL(603.01 ,"C",DFN))  Q "-1^-1^ -1^-1^-1^- 1^-1"
  1443   "RTN","YSC LTST2",88, 0)
  1444    I '$D(ARR AY("DILIST ","ID")) Q  "-1^-1^-1 ^-1^-1^-1^ -1"
  1445   "RTN","YSC LTST2",89, 0)
  1446    S YSCLIEN =ARRAY("DI LIST",2,1) ,YSCLFRQ=" " ;$O(^YSC L(603.01," C",DFN,"") ),YSCLFRQ= ""
  1447   "RTN","YSC LTST2",90, 0)
  1448    I YSCLIEN  S YSCLFRQ =$$GET1^DI Q(603.01,Y SCLIEN,2," I")
  1449   "RTN","YSC LTST2",91, 0)
  1450    I $$GET1^ DIQ(603.03 ,1,7,"I")= 1!(YSCLFRQ ="")  Q "- 1^0^0^0^0^ 0^"_YSCLFR Q
  1451   "RTN","YSC LTST2",92, 0)
  1452    I $$GET1^ DIQ(55,DFN ,54,"I")'= "A"  Q "-1 ^0^0^0^0^0 ^"_YSCLFRQ
  1453   "RTN","YSC LTST2",93, 0)
  1454    S X1=DT,X 2="-7" D C ^%DTC S YS CLSD=X
  1455   "RTN","YSC LTST2",94, 0)
  1456    K ARRAY D  LIST^DIC( 603.41,",1 ,",,"I",,, ,,,,"ARRAY ")
  1457   "RTN","YSC LTST2",95, 0)
  1458    F I=1:1 Q :'$D(ARRAY ("DILIST", 2,I))  S Y SCLA=ARRAY ("DILIST", 2,I) D
  1459   "RTN","YSC LTST2",96, 0)
  1460    . N YSCLT NM,YSCLTTP ,YSCLTFR S  YSCLTNM=$ $GET1^DIQ( 603.41,YSC LA_",1,",. 01,"I")
  1461   "RTN","YSC LTST2",97, 0)
  1462    . S YSCLT TP=$$GET1^ DIQ(603.41 ,YSCLA_",1 ,",1,"I")
  1463   "RTN","YSC LTST2",98, 0)
  1464    . S YSCLT FR=$$GET1^ DIQ(603.41 ,YSCLA_",1 ,",2,"I")
  1465   "RTN","YSC LTST2",99, 0)
  1466    . S YSCLT LS(YSCLTTP ,YSCLTNM)= YSCLTFR
  1467   "RTN","YSC LTST2",100 ,0)
  1468    F I=1:1 Q :'$D(ARRAY ("DILIST", 1,I))  S Y SCLTL=ARRA Y("DILIST" ,1,I) D
  1469   "RTN","YSC LTST2",101 ,0)
  1470    . D RR^LR 7OR1(DFN,, YSCLSD,DT, ,YSCLTL,"L ")
  1471   "RTN","YSC LTST2",102 ,0)
  1472    . S YSCLS B1="" F  S  YSCLSB1=$ O(^TMP("LR RR",$J,DFN ,YSCLSB1))  Q:YSCLSB1 =""  D
  1473   "RTN","YSC LTST2",103 ,0)
  1474    . . S YSC LTDT="" F   S YSCLTDT =$O(^TMP(" LRRR",$J,D FN,YSCLSB1 ,YSCLTDT))  Q:YSCLTDT =""  I $P( YSCLTDT,". ",2)]"" D
  1475   "RTN","YSC LTST2",104 ,0)
  1476    . . . S Y SCLTA="" F   S YSCLTA =$O(^TMP(" LRRR",$J,D FN,YSCLSB1 ,YSCLTDT,Y SCLTA)) Q: YSCLTA=""   I YSCLTA  D
  1477   "RTN","YSC LTST2",105 ,0)
  1478    . . . . S  RESULTS1= ^TMP("LRRR ",$J,DFN,Y SCLSB1,YSC LTDT,YSCLT A)
  1479   "RTN","YSC LTST2",106 ,0)
  1480    . . . . S  RESULTS(Y SCLTL,YSCL TDT)=$P(RE SULTS1,"^" ,2)
  1481   "RTN","YSC LTST2",107 ,0)
  1482    ;Find all  entries f or WBC and  sort by i nverse dat e.
  1483   "RTN","YSC LTST2",108 ,0)
  1484    S YSCLA=" " F  S YSC LA=$O(YSCL TLS("W",YS CLA)) Q:'Y SCLA  S YS CLXWBC(YSC LA)="" D
  1485   "RTN","YSC LTST2",109 ,0)
  1486     . S YSCL A1="" F  S  YSCLA1=$O (RESULTS(Y SCLA,YSCLA 1)) Q:'YSC LA1  S YSC LYWBC(YSCL A1)=RESULT S(YSCLA,YS CLA1)_"^"_ $$GET1^DIQ (60,YSCLA, .01)_"^"_Y SCLTLS("W" ,YSCLA)
  1487   "RTN","YSC LTST2",110 ,0)
  1488    I '$D(YSC LYWBC) G A LTANC
  1489   "RTN","YSC LTST2",111 ,0)
  1490    I $D(YSCL XWBC),$D(Y SCLYWBC) D
  1491   "RTN","YSC LTST2",112 ,0)
  1492    .S YSCLRW BC=$O(YSCL YWBC(0)) I  'YSCLRWBC  ;D KILL Q  "0^^^^^^" _YSCLFRQ
  1493   "RTN","YSC LTST2",113 ,0)
  1494    .S YSCLMU LT=$P(YSCL YWBC(YSCLR WBC),"^",3 ),YSCLMULT =$S(YSCLMU LT:1000,1: 1)
  1495   "RTN","YSC LTST2",114 ,0)
  1496    .S YSCLRW BC(YSCLRWB C)=($P(YSC LYWBC(YSCL RWBC),"^") *YSCLMULT) _"^"_$P(YS CLYWBC(YSC LRWBC),"^" ,2)
  1497   "RTN","YSC LTST2",115 ,0)
  1498    .;Scan fo r Neutroph il count o n same day  and time  as most re cent WBC
  1499   "RTN","YSC LTST2",116 ,0)
  1500    .S YSCLMT CH=0 F YSC LA="A","N" ,"S","T" S  YSCLTPT=" " Q:YSCLMT CH  F  S Y SCLTPT=$O( YSCLTLS(YS CLA,YSCLTP T)) Q:'YSC LTPT  D  Q :YSCLMTCH
  1501   "RTN","YSC LTST2",117 ,0)
  1502    ..S YSCLM ULT=YSCLTL S(YSCLA,YS CLTPT),YSC LMULT=$S(Y SCLMULT:10 00,1:1)
  1503   "RTN","YSC LTST2",118 ,0)
  1504     ..I $G(R ESULTS(YSC LTPT,YSCLR WBC)),YSCL A="A",RESU LTS(YSCLTP T,YSCLRWBC )'?1A.E S  YSCLMTCH=1 ,YSCLRANC( YSCLRWBC)= RESULTS(YS CLTPT,YSCL RWBC)*YSCL MULT_"^"_$ $GET1^DIQ( 60,YSCLTPT ,.01) Q
  1505   "RTN","YSC LTST2",119 ,0)
  1506     ..I $G(R ESULTS(YSC LTPT,YSCLR WBC)),YSCL A="N",RESU LTS(YSCLTP T,YSCLRWBC )'?1A.E S  YSCLMTCH=1 ,YSCLRANC( YSCLRWBC)= YSCLRWBC(Y SCLRWBC)*( (RESULTS(Y SCLTPT,YSC LRWBC))*.0 1)_"^"_$$G ET1^DIQ(60 ,YSCLTPT,. 01) Q
  1507   "RTN","YSC LTST2",120 ,0)
  1508     ..I $G(R ESULTS(YSC LTPT,YSCLR WBC)),YSCL A="S",RESU LTS(YSCLTP T,YSCLRWBC )'?1A.E D
  1509   "RTN","YSC LTST2",121 ,0)
  1510     ...S YSC LSGS="" F   S YSCLSGS =$O(YSCLTL S("B",YSCL SGS)) D  Q :YSCLMTCH! 'YSCLSGS
  1511   "RTN","YSC LTST2",122 ,0)
  1512     ....S:'Y SCLSGS YSC LSGS="Z" I  '$D(RESUL TS(YSCLSGS ,YSCLRWBC) ) S RESULT S(YSCLSGS, YSCLRWBC)= 0
  1513   "RTN","YSC LTST2",123 ,0)
  1514     ....S YS CLMTCH=1,Y SCLRANC(YS CLRWBC)=YS CLRWBC(YSC LRWBC)*((R ESULTS(YSC LTPT,YSCLR WBC)*.01)+ (RESULTS(Y SCLSGS,YSC LRWBC)*.01 ))_"^"_$$G ET1^DIQ(60 ,YSCLTPT,. 01)_"/"_$$ GET1^DIQ(6 0,YSCLSGS, .01) Q
  1515   "RTN","YSC LTST2",124 ,0)
  1516     ..I $G(R ESULTS(YSC LTPT,YSCLR WBC)),YSCL A="C",RESU LTS(YSCLTP T,YSCLRWBC )'?1A.E D
  1517   "RTN","YSC LTST2",125 ,0)
  1518     ...S YSC LSGS="" F   S YSCLSGS =$O(YSCLTL S("T",YSCL SGS)) D  Q :YSCLMTCH! 'YSCLSGS
  1519   "RTN","YSC LTST2",126 ,0)
  1520     ....S:'Y SCLSGS YSC LSGS="Z" I  '$D(RESUL TS(YSCLSGS ,YSCLRWBC) ) S RESULT S(YSCLSGS, YSCLRWBC)= 0
  1521   "RTN","YSC LTST2",127 ,0)
  1522     ....S YS CLMTCH=1,Y SCLRANC(YS CLRWBC)=(( RESULTS(YS CLTPT,YSCL RWBC)*YSCL MULT)+(RES ULTS(YSCLS GS,YSCLRWB C)*YSCLMUL T))_"^"_$P (^LAB(60,Y SCLTPT,0), "^")_"/"_$ P($G(^LAB( 60,YSCLSGS ,0)),"^")  Q
  1523   "RTN","YSC LTST2",128 ,0)
  1524    D KILL
  1525   "RTN","YSC LTST2",129 ,0)
  1526    I '$G(YSC LRWBC(YSCL RWBC)),'+$ G(YSCLRANC (YSCLRWBC) ) Q "0^^^^ ^^"_YSCLFR Q
  1527   "RTN","YSC LTST2",130 ,0)
  1528    I $G(YSCL RWBC(YSCLR WBC)),+$G( YSCLRANC(Y SCLRWBC))< 1000 Q "0^ "_$G(YSCLR WBC(YSCLRW BC))_"^"_$ S($G(YSCLR ANC(YSCLRW BC))="":"^ ",1:$G(YSC LRANC(YSCL RWBC)))_"^ "_(9999999 -YSCLRWBC) _"^"_YSCLF RQ
  1529   "RTN","YSC LTST2",131 ,0)
  1530    I '$G(YSC LRWBC(YSCL RWBC)),+$G (YSCLRANC( YSCLRWBC)) <1000 Q "0 ^"_$G(YSCL RWBC(YSCLR WBC))_"^"_ $S($G(YSCL RANC(YSCLR WBC))="":" ^",1:$G(YS CLRANC(YSC LRWBC)))_" ^"_(999999 9-YSCLRWBC )_"^"_YSCL FRQ
  1531   "RTN","YSC LTST2",132 ,0)
  1532    I '$G(YSC LRWBC(YSCL RWBC)),+$G (YSCLRANC( YSCLRWBC))  Q "0^"_$G (YSCLRWBC( YSCLRWBC)) _"^"_$S($G (YSCLRANC( YSCLRWBC)) ="":"^",1: $G(YSCLRAN C(YSCLRWBC )))_"^"_(9 999999-YSC LRWBC)_"^" _YSCLFRQ
  1533   "RTN","YSC LTST2",133 ,0)
  1534    I $G(YSCL RWBC(YSCLR WBC)),+$G( YSCLRANC(Y SCLRWBC))< 1500 Q "2^ "_$G(YSCLR WBC(YSCLRW BC))_"^"_$ S($G(YSCLR ANC(YSCLRW BC))="":"^ ",1:$G(YSC LRANC(YSCL RWBC)))_"^ "_(9999999 -YSCLRWBC) _"^"_YSCLF RQ
  1535   "RTN","YSC LTST2",134 ,0)
  1536    ;;END NCC  REMEDIATI ON << RJS* 122
  1537   "RTN","YSC LTST2",135 ,0)
  1538    Q "1^"_YS CLRWBC(YSC LRWBC)_"^" _YSCLRANC( YSCLRWBC)_ "^"_(99999 99-YSCLRWB C)_"^"_YSC LFRQ
  1539   "RTN","YSC LTST2",136 ,0)
  1540    ;
  1541   "RTN","YSC LTST2",137 ,0)
  1542    ;;START N CC REMEDIA TION >> RJ S*122
  1543   "RTN","YSC LTST2",138 ,0)
  1544   ALTANC ;
  1545   "RTN","YSC LTST2",139 ,0)
  1546    S YSCLA=0  F  S YSCL A=$O(YSCLT LS("A",YSC LA)) Q:'YS CLA  S YSC LXANC(YSCL A)="" D
  1547   "RTN","YSC LTST2",140 ,0)
  1548    .S YSCLA1 =0 F  S YS CLA1=$O(RE SULTS(YSCL A,YSCLA1))  Q:'YSCLA1   S YSCLYA NC(YSCLA1) =RESULTS(Y SCLA,YSCLA 1)_"^"_$$G ET1^DIQ(60 ,YSCLA,.01 )_"^"_YSCL TLS("A",YS CLA)
  1549   "RTN","YSC LTST2",141 ,0)
  1550    I $D(YSCL YANC) D
  1551   "RTN","YSC LTST2",142 ,0)
  1552    .S (YSCLR ANC,YSCLRW BC)=$O(YSC LYANC(0))  I 'YSCLRAN C ;D KILL  Q "0^^^^^^ "_YSCLFRQ
  1553   "RTN","YSC LTST2",143 ,0)
  1554    .S YSCLMU LT=$P(YSCL YANC(YSCLR ANC),"^",3 ),YSCLMULT =$S(YSCLMU LT:1000,1: 1)
  1555   "RTN","YSC LTST2",144 ,0)
  1556    .S YSCLRA NC(YSCLRAN C)=($P(YSC LYANC(YSCL RANC),"^") *YSCLMULT) _"^"_$P(YS CLYANC(YSC LRANC),"^" ,2)
  1557   "RTN","YSC LTST2",145 ,0)
  1558    .;Scan fo r Neutroph il count o n same day  and time  as most re cent ANC
  1559   "RTN","YSC LTST2",146 ,0)
  1560    .S YSCLMT CH=0 F YSC LA="A","N" ,"S","T" S  YSCLTPT=" " Q:YSCLMT CH  F  S Y SCLTPT=$O( YSCLTLS(YS CLA,YSCLTP T)) Q:'YSC LTPT  D  Q :YSCLMTCH
  1561   "RTN","YSC LTST2",147 ,0)
  1562    ..S YSCLM ULT=YSCLTL S(YSCLA,YS CLTPT),YSC LMULT=$S(Y SCLMULT:10 00,1:1)
  1563   "RTN","YSC LTST2",148 ,0)
  1564    ..I $D(RE SULTS(YSCL TPT,YSCLRA NC)),YSCLA ="A",RESUL TS(YSCLTPT ,YSCLRANC) '?1A.E S Y SCLMTCH=1, YSCLRANC(Y SCLRANC)=R ESULTS(YSC LTPT,YSCLR ANC)*YSCLM ULT_"^"_$$ GET1^DIQ(6 0,YSCLTPT, .01) Q
  1565   "RTN","YSC LTST2",149 ,0)
  1566    ..I $D(RE SULTS(YSCL TPT,YSCLRA NC)),YSCLA ="N",RESUL TS(YSCLTPT ,YSCLRANC) '?1A.E S Y SCLMTCH=1, YSCLRANC(Y SCLRANC)=Y SCLRANC(YS CLRANC)*(( RESULTS(YS CLTPT,YSCL RANC))*.01 )_"^"_$$GE T1^DIQ(60, YSCLTPT,.0 1) Q
  1567   "RTN","YSC LTST2",150 ,0)
  1568    ..I $D(RE SULTS(YSCL TPT,YSCLRA NC)),YSCLA ="S",RESUL TS(YSCLTPT ,YSCLRANC) '?1A.E D
  1569   "RTN","YSC LTST2",151 ,0)
  1570    ...S YSCL SGS="" F   S YSCLSGS= $O(YSCLTLS ("B",YSCLS GS)) D  Q: YSCLMTCH
  1571   "RTN","YSC LTST2",152 ,0)
  1572    ....S:'YS CLSGS YSCL SGS="Z" I  '$D(RESULT S(YSCLSGS, YSCLRANC))  S RESULTS (YSCLSGS,Y SCLRANC)=0
  1573   "RTN","YSC LTST2",153 ,0)
  1574    ....S YSC LMTCH=1,YS CLRANC(YSC LRANC)=YSC LRANC(YSCL RANC)*((RE SULTS(YSCL TPT,YSCLRA NC)*.01)+( RESULTS(YS CLSGS,YSCL RANC)*.01) )_"^"_$$GE T1^DIQ(60, YSCLTPT,.0 1)_"/"_$$G ET1^DIQ(60 ,YSCLSGS,. 01) Q
  1575   "RTN","YSC LTST2",154 ,0)
  1576    ..I $D(RE SULTS(YSCL TPT,YSCLRA NC)),YSCLA ="C",RESUL TS(YSCLTPT ,YSCLRANC) '?1A.E D
  1577   "RTN","YSC LTST2",155 ,0)
  1578    ...S YSCL SGS="" F   S YSCLSGS= $O(YSCLTLS ("T",YSCLS GS)) D  Q: YSCLMTCH
  1579   "RTN","YSC LTST2",156 ,0)
  1580    ....S:'YS CLSGS YSCL SGS="Z" I  '$D(RESULT S(YSCLSGS, YSCLRANC))  S RESULTS (YSCLSGS,Y SCLRANC)=0
  1581   "RTN","YSC LTST2",157 ,0)
  1582    ....S YSC LMTCH=1,YS CLRANC(YSC LRANC)=((R ESULTS(YSC LTPT,YSCLR ANC)*YSCLM ULT)+(RESU LTS(YSCLSG S,YSCLRANC )*YSCLMULT ))_"^"_$P( ^LAB(60,YS CLTPT,0)," ^")_"/"_$P ($G(^LAB(6 0,YSCLSGS, 0)),"^") Q
  1583   "RTN","YSC LTST2",158 ,0)
  1584    .S YSCLRW BC(YSCLRWB C)="^WBC"
  1585   "RTN","YSC LTST2",159 ,0)
  1586    D KILL
  1587   "RTN","YSC LTST2",160 ,0)
  1588    I '$G(YSC LRANC(+$G( YSCLRWBC)) ) Q "0^^^^ ^^"_YSCLFR Q
  1589   "RTN","YSC LTST2",161 ,0)
  1590    I +$G(YSC LRANC(YSCL RWBC))<100 0 Q "0^"_$ G(YSCLRWBC (YSCLRWBC) )_"^"_$S($ G(YSCLRANC (YSCLRWBC) )="":"^",1 :$G(YSCLRA NC(YSCLRWB C)))_"^"_( 9999999-YS CLRWBC)_"^ "_YSCLFRQ
  1591   "RTN","YSC LTST2",162 ,0)
  1592    I +$G(YSC LRANC(YSCL RWBC))<150 0 Q "0^"_$ G(YSCLRWBC (YSCLRWBC) )_"^"_$S($ G(YSCLRANC (YSCLRWBC) )="":"^",1 :$G(YSCLRA NC(YSCLRWB C)))_"^"_( 9999999-YS CLRWBC)_"^ "_YSCLFRQ
  1593   "RTN","YSC LTST2",163 ,0)
  1594    Q "0^"_$G (YSCLRWBC( YSCLRWBC)) _"^"_$S($G (YSCLRANC( YSCLRWBC)) ="":"^",1: $G(YSCLRAN C(YSCLRWBC )))_"^"_(9 999999-YSC LRWBC)_"^" _YSCLFRQ
  1595   "RTN","YSC LTST2",164 ,0)
  1596    ;;END NCC  REMEDIATI ON << RJS* 122
  1597   "RTN","YSC LTST2",165 ,0)
  1598    ;
  1599   "RTN","YSC LTST2",166 ,0)
  1600   KILL ;
  1601   "RTN","YSC LTST2",167 ,0)
  1602    ;Q:$D(PSL AST7)  ;RT W
  1603   "RTN","YSC LTST2",168 ,0)
  1604    K FDA,YSC LSGS,Y15,R ESULTS,RES ULTS1,YSCL A,YSCLA1,Y SCLMTCH,YS CLSB1,YSCL SD,YSCLTA, YSCLMULT
  1605   "RTN","YSC LTST2",169 ,0)
  1606    K YSCLTL, YSCLTLS,X1 ,X2
  1607   "RTN","YSC LTST2",170 ,0)
  1608    Q
  1609   "RTN","YSC LTST2",171 ,0)
  1610    ;
  1611   "RTN","YSC LTST2",172 ,0)
  1612   OVERRIDE(D FN) ;Check  for an ov er-ride.    SEE RQ12. 11
  1613   "RTN","YSC LTST2",173 ,0)
  1614    N YSCLIEN ,YSCLOVRD, ARRAY ;S Y SCLIEN=$O( ^YSCL(603. 01,"C",DFN ,0)) Q:YSC LIEN="" 0
  1615   "RTN","YSC LTST2",174 ,0)
  1616    S YSCLIEN =$$FIND1^D IC(603.01, ,"Q",DFN," C") Q:YSCL IEN="" 0
  1617   "RTN","YSC LTST2",175 ,0)
  1618    S YSCLOVR D=$$GET1^D IQ(603.01, YSCLIEN,3, "I")
  1619   "RTN","YSC LTST2",176 ,0)
  1620    S:YSCLOVR D'=DT ANQR E=""
  1621   "RTN","YSC LTST2",177 ,0)
  1622    I '$G(PSG CFLG),$G(Y SCLOVRD),D T>YSCLOVRD  S X=YSCLO VRD,YSCXDA TE=$$FMTE^ XLFDT(X,"D ") W !,"Na tional Ove rride expi red at mid night on " _YSCXDATE
  1623   "RTN","YSC LTST2",178 ,0)
  1624    Q YSCLOVR D=DT
  1625   "RTN","YSC LTST2",179 ,0)
  1626   ZEOR ;YSCL TST2
  1627   "RTN","YSC LTST3")
  1628   0^4^B68700 177
  1629   "RTN","YSC LTST3",1,0 )
  1630   YSCLTST3 ; DALOI/LB/R LM-TRANSMI SSION FOR  CLOZAPINE  REPORTING  SYSTEM ;Ju l 14, 2017 @09:00:07
  1631   "RTN","YSC LTST3",2,0 )
  1632    ;;5.01;ME NTAL HEALT H;**18,22, 25,26,47,6 1,69,74,90 ,122**;Dec  30, 1994; Build 61
  1633   "RTN","YSC LTST3",3,0 )
  1634    ; Referen ce to ^DPT  supported  by IA #10 035
  1635   "RTN","YSC LTST3",4,0 )
  1636    ; Referen ce to ^PS( 55 support ed by IA # 787
  1637   "RTN","YSC LTST3",5,0 )
  1638    ; Referen ce to ^PS( 59 support ed by IA # 783
  1639   "RTN","YSC LTST3",6,0 )
  1640    ; Referen ce to ^VA( 200 suppor ted by IA  #10060
  1641   "RTN","YSC LTST3",7,0 )
  1642    ; Referen ce to ^LAB (60 suppor ted by IA  #333
  1643   "RTN","YSC LTST3",8,0 )
  1644    ; Referen ce to ^XMD  supported  by IA #10 070
  1645   "RTN","YSC LTST3",9,0 )
  1646   DEMOG ; Ol d entry po int to sen d demograp hic data f or patient s from tas k. Obsolet e
  1647   "RTN","YSC LTST3",10, 0)
  1648    Q
  1649   "RTN","YSC LTST3",11, 0)
  1650   DMG ; Call ed by YSCL TEST
  1651   "RTN","YSC LTST3",12, 0)
  1652    S YSDEBUG =$$GET1^DI Q(603.03,1 ,3,"I")
  1653   "RTN","YSC LTST3",13, 0)
  1654    K ^TMP($J ),^TMP("YS CL",$J),^T MP("YSCLL" ,$J) S YSC LLN=0,YSCL NO=20,DFN= 0,YSCLIEN= 0
  1655   "RTN","YSC LTST3",14, 0)
  1656    N ARRAY D  LIST^DIC( 603.01,,1, "I",,,,,,, "ARRAY")
  1657   "RTN","YSC LTST3",15, 0)
  1658    F I=1:1 Q :'$D(ARRAY ("DILIST", 2,I))  K Y SCLA S YSC LIEN=ARRAY ("DILIST", 2,I)  D
  1659   "RTN","YSC LTST3",16, 0)
  1660    .S DFN=AR RAY("DILIS T","ID",I, 1),$P(YSST OP,",",8)= 8 Q:$$S^%Z TLOAD!'DFN
  1661   "RTN","YSC LTST3",17, 0)
  1662    .I $L($$G ET1^DIQ(2, DFN,.01))  S YSCLC=$$ GET1^DIQ(6 03.01,YSCL IEN,.01) D  GET
  1663   "RTN","YSC LTST3",18, 0)
  1664    D TRANSMI T:YSCLLN G  END
  1665   "RTN","YSC LTST3",19, 0)
  1666    ;
  1667   "RTN","YSC LTST3",20, 0)
  1668   GET ;
  1669   "RTN","YSC LTST3",21, 0)
  1670    S $P(YSST OP,",",9)= 9 Q:$$S^%Z TLOAD
  1671   "RTN","YSC LTST3",22, 0)
  1672    Q:'$L($$G ET1^DIQ(55 ,DFN,53))   ;Don't tr y to trans mit if no  pharmacy r ecord
  1673   "RTN","YSC LTST3",23, 0)
  1674    Q:$$GET1^ DIQ(55,DFN ,56,"I")    ;Don't re transmit d emographic s.
  1675   "RTN","YSC LTST3",24, 0)
  1676    Q:$D(^TMP ("YSCLL",$ J,DFN))
  1677   "RTN","YSC LTST3",25, 0)
  1678    S ^TMP("Y SCLL",$J,D FN)=1
  1679   "RTN","YSC LTST3",26, 0)
  1680    S YSCLP=$ $GET1^DIQ( 55,DFN,57, "I"),YSCLD EA=$$GET1^ DIQ(200,YS CLP,53.2), YSCLP=$$GE T1^DIQ(200 ,YSCLP,.01 )
  1681   "RTN","YSC LTST3",27, 0)
  1682    D DEM^VAD PT,ADD^VAD PT S YSCL= YSCLC_"^"_ $E($P(VADM (1),",",2) )_$E(VADM( 1))_"^"_$P (VADM(3)," ^")_"^"_$P (VADM(2)," ^")_"^"_$P (VADM(5)," ^")_"^"_VA PA(6)_"^"_ DT
  1683   "RTN","YSC LTST3",28, 0)
  1684    D
  1685   "RTN","YSC LTST3",29, 0)
  1686    .S YSRACE ="*"
  1687   "RTN","YSC LTST3",30, 0)
  1688    .S YSRC=0  F  S YSRC =$O(VADM(1 1,YSRC)) Q :'YSRC  S  YSRACE=YSR ACE_+VADM( 11,YSRC)_" -"_+VADM(1 1,YSRC,1)_ ","
  1689   "RTN","YSC LTST3",31, 0)
  1690    .S YSRACE =YSRACE_"~ "
  1691   "RTN","YSC LTST3",32, 0)
  1692    .S YSRC=0  F  S YSRC =$O(VADM(1 2,YSRC)) Q :'YSRC  S  YSRACE=YSR ACE_+VADM( 12,YSRC)_" -"_+VADM(1 2,YSRC,1)_ ","
  1693   "RTN","YSC LTST3",33, 0)
  1694    S YSCL=YS CL_"^"_YSR ACE_"^"_YS CLP_"^"_YS CLDEA
  1695   "RTN","YSC LTST3",34, 0)
  1696    ; YSCLJ c ontaining  a ZIP code
  1697   "RTN","YSC LTST3",35, 0)
  1698    N ARRAY59  D LIST^DI C(59,,"1;. 05",,,,,,, ,"ARRAY59" )
  1699   "RTN","YSC LTST3",36, 0)
  1700    F YSCLJ=1 :1 Q:'$D(A RRAY59("DI LIST","ID" ,YSCLJ))   I ARRAY59( "DILIST"," ID",YSCLJ, 1)'="" S Y SCLJ=ARRAY 59("DILIST ","ID",YSC LJ,.05) Q
  1701   "RTN","YSC LTST3",37, 0)
  1702    S YSCL=YS CL_"^"_YSC LJ
  1703   "RTN","YSC LTST3",38, 0)
  1704    ;registra tion numbe r^initials ^dob^ssn^s ex^zip^tod ay^race^ph ysician^de a^zip code  (hosp)
  1705   "RTN","YSC LTST3",39, 0)
  1706    S YSCLLN= YSCLLN+1,^ TMP($J,YSC LLN,0)=YSC L
  1707   "RTN","YSC LTST3",40, 0)
  1708    I VADM(5) =""!(VAPA( 6)="")!('V ADM(11))!( 'VADM(12))  D  ;RLM R ACETEST
  1709   "RTN","YSC LTST3",41, 0)
  1710    .S ^TMP(" YSCL",$J,Y SCLNO,0)=$ P(VADM(2), "^",1)_"    "_VADM(1)
  1711   "RTN","YSC LTST3",42, 0)
  1712    .S:VADM(5 )="" ^TMP( "YSCL",$J, YSCLNO,0)= ^TMP("YSCL ",$J,YSCLN O,0)_" (SE X)"
  1713   "RTN","YSC LTST3",43, 0)
  1714    .S:VAPA(6 )="" ^TMP( "YSCL",$J, YSCLNO,0)= ^TMP("YSCL ",$J,YSCLN O,0)_" (ZI P)"
  1715   "RTN","YSC LTST3",44, 0)
  1716    .S:'VADM( 12) ^TMP(" YSCL",$J,Y SCLNO,0)=^ TMP("YSCL" ,$J,YSCLNO ,0)_" (RAC E, NEW FOR MAT)"
  1717   "RTN","YSC LTST3",45, 0)
  1718    .S:'VADM( 11) ^TMP(" YSCL",$J,Y SCLNO,0)=^ TMP("YSCL" ,$J,YSCLNO ,0)_" (ETH NICITY)"
  1719   "RTN","YSC LTST3",46, 0)
  1720    .S YSCLNO =YSCLNO+1
  1721   "RTN","YSC LTST3",47, 0)
  1722    .S ^TMP(" YSCLL",$J, DFN)=0 ; l eave unmar ked pendin g demograp hic data
  1723   "RTN","YSC LTST3",48, 0)
  1724    .I ('VADM (11))!('VA DM(12)) D
  1725   "RTN","YSC LTST3",49, 0)
  1726    ..S ^TMP( "YSCL",$J, YSCLNO,0)= "NOTE: Rac e and Ethn icity may  be entered  if permis sion is ob tained in  the inform ed consent ",YSCLNO=Y SCLNO+1
  1727   "RTN","YSC LTST3",50, 0)
  1728    ..S ^TMP( "YSCL",$J, YSCLNO,0)= "document.  See VHA D irective 9 9-035.",YS CLNO=YSCLN O+1
  1729   "RTN","YSC LTST3",51, 0)
  1730    ;
  1731   "RTN","YSC LTST3",52, 0)
  1732    Q
  1733   "RTN","YSC LTST3",53, 0)
  1734    ;
  1735   "RTN","YSC LTST3",54, 0)
  1736   TRANSMIT ;  remote an d local me ssages
  1737   "RTN","YSC LTST3",55, 0)
  1738    S $P(YSST OP,",",10) =10 Q:$$S^ %ZTLOAD
  1739   "RTN","YSC LTST3",56, 0)
  1740    S YSDEBUG =$$GET1^DI Q(603.03,1 ,3,"I"),YS PROD=$$GET 1^DIQ(8989 .3,1,501," I")
  1741   "RTN","YSC LTST3",57, 0)
  1742    S YSPRODS T=$$GET1^D IQ(603.03, 1,9) ;S:YS PRODST=""  YSPRODST=" S.RUCLDEM@ F D N
S. URL          "
  1743   "RTN","YSC LTST3",58, 0)
  1744    S YSDBGST =$$GET1^DI Q(603.03,1 ,11) ;S:YS DBGST="" Y SDBGST="G. CLOZAPINE  DEBUG@
D N S. URL          "
  1745   "RTN","YSC LTST3",59, 0)
  1746    ;/RBN - B egin modif ications f or YS*5.01 *122
  1747   "RTN","YSC LTST3",60, 0)
  1748    I YSCLLN  D
  1749   "RTN","YSC LTST3",61, 0)
  1750    .I YSPROD  D
  1751   "RTN","YSC LTST3",62, 0)
  1752    ..I 'YSDE BUG S XMY( YSPRODST)= "" ;XMY("G .CLOZAPINE  ROLL-UP") ="" ;,
  1753   "RTN","YSC LTST3",63, 0)
  1754    ..E    S XMY("G.C LOZAPINE D EBUG@
D N S. URL          ")="",XMY( "G.RUCLDEM @FO-D N S. URL          ")=""
  1755   "RTN","YSC LTST3",64, 0)
  1756    .E  D
  1757   "RTN","YSC LTST3",65, 0)
  1758    ..I 'YSDE BUG S XMY( YSDBGST)=" "
  1759   "RTN","YSC LTST3",66, 0)
  1760    ..E  S XM Y("G.CLOZA PINE DEBUG ")=""
  1761   "RTN","YSC LTST3",67, 0)
  1762    .S XMDUZ= "CLOZAPINE  MONITOR", XMTEXT="^T MP($J,",XM SUB=$S(YSD EBUG:"DEBU G ",1:"")_ "Clozapine  demograph ics" D ^XM D
  1763   "RTN","YSC LTST3",68, 0)
  1764    .N DIE,DA ,DR S DIE= "^YSCL(603 .03,",DA=1 ,DR="6///" _$$NOW^XLF DT D ^DIE
  1765   "RTN","YSC LTST3",69, 0)
  1766    K XMY
  1767   "RTN","YSC LTST3",70, 0)
  1768    I 'YSDEBU G S XMY("G .PSOCLOZ") ="" S:YSPR OD XMY("G. CLOZAPINE  ROLL-UP@ DNS . URL ")=""
  1769   "RTN","YSC LTST3",71, 0)
  1770    E    S XMY("G.C LOZAPINE D EBUG")=""  S:YSPROD X MY("G.CLOZ APINE DEBU G@FO-D N S. URL          ")=""
  1771   "RTN","YSC LTST3",72, 0)
  1772    S XMDUZ=" CLOZAPINE  MONITOR",X MTEXT="^TM P($J,"
  1773   "RTN","YSC LTST3",73, 0)
  1774    S XMSUB=$ S(YSDEBUG: "DEBUG ",1 :"")_"Cloz apine demo graphics", ^TMP("YSCL ",$J,2,0)= " "
  1775   "RTN","YSC LTST3",74, 0)
  1776    S ^TMP("Y SCL",$J,1, 0)="Clozap ine demogr aphic data  was trans mitted, "_ YSCLLN_" r ecords wer e sent.",X MTEXT="^TM P(""YSCL"" ,$J,"
  1777   "RTN","YSC LTST3",75, 0)
  1778    I $O(^TMP ("YSCL",$J ,10)) S ^T MP("YSCL", $J,3,0)="F or the fol lowing pat ients, one  or more o f the requ ired data" ,^TMP("YSC L",$J,4,0) ="elements  (race, se x, ZIP cod e) were mi ssing.",^T MP("YSCL", $J,5,0)="  "
  1779   "RTN","YSC LTST3",76, 0)
  1780    I  S ^TMP ("YSCL",$J ,6,0)="Ple ase have t his inform ation ente red.",^TMP ("YSCL",$J ,7,0)="The  available  data was  transmitte d.",^TMP(" YSCL",$J,8 ,0)=" "
  1781   "RTN","YSC LTST3",77, 0)
  1782    D ^XMD
  1783   "RTN","YSC LTST3",78, 0)
  1784    ; set tra nsmitted f ield in 55  from ^TMP ("YSCLL",$ J)
  1785   "RTN","YSC LTST3",79, 0)
  1786    F DFN=0:0  S DFN=$O( ^TMP("YSCL L",$J,DFN) ) Q:'DFN   I ^TMP("YS CLL",$J,DF N) S DIE=" ^PS(55,",D A=DFN,DR=" 56///1" D  ^DIE
  1787   "RTN","YSC LTST3",80, 0)
  1788    Q
  1789   "RTN","YSC LTST3",81, 0)
  1790    ;
  1791   "RTN","YSC LTST3",82, 0)
  1792   FLERR ;
  1793   "RTN","YSC LTST3",83, 0)
  1794    K XMY
  1795   "RTN","YSC LTST3",84, 0)
  1796    ;/RBN - B egin modif ications f or YS*5.01 *122
  1797   "RTN","YSC LTST3",85, 0)
  1798    X ^%ZOSF( "UCI") I Y =^%ZOSF("P ROD") D
  1799   "RTN","YSC LTST3",86, 0)
  1800    .S XMY("G .CLOZAPINE  ROLL-UP@ DNS . URL ")=""
  1801   "RTN","YSC LTST3",87, 0)
  1802    .I YSDEBU G K XMY S  XMY("G.CLO ZAPINE DEB UG@
D N S. URL          ")=""
  1803   "RTN","YSC LTST3",88, 0)
  1804    I Y'=^%ZO SF("PROD")  D
  1805   "RTN","YSC LTST3",89, 0)
  1806    .S XMY("G .CLOZAPINE  ROLL-UP") =""
  1807   "RTN","YSC LTST3",90, 0)
  1808    .I YSDEBU G K XMY S  XMY("G.CLO ZAPINE DEB UG")=""
  1809   "RTN","YSC LTST3",91, 0)
  1810    ;/RBN - E nd modific ations for  YS*5.01*1 22
  1811   "RTN","YSC LTST3",92, 0)
  1812    S %DT="T" ,X="NOW" D  ^%DT S YS CLNOW=$P(Y ,".",2)
  1813   "RTN","YSC LTST3",93, 0)
  1814    S YSCLSIT E=$P($$SIT E^VASITE," ^",2)
  1815   "RTN","YSC LTST3",94, 0)
  1816    S XMSUB=$ S(YSDEBUG: "DEBUG ",1 :"")_"Cloz apine lab  data error  at "_YSCL SITE_" on  "_DT_" at  "_YSCLNOW, ^TMP("YSCL ",$J,1,0)= " "
  1817   "RTN","YSC LTST3",95, 0)
  1818    S ^TMP("Y SCL",$J,2, 0)="### Cl ozapine da ta error a t "_YSCLSI TE_" on "_ DT_" +++"
  1819   "RTN","YSC LTST3",96, 0)
  1820    S ^TMP("Y SCL",$J,3, 0)=" Cloza pine Lab T est file n ot properl y defined. "
  1821   "RTN","YSC LTST3",97, 0)
  1822    S ^TMP("Y SCL",$J,4, 0)=" Data  cannot be  transmitte d!"
  1823   "RTN","YSC LTST3",98, 0)
  1824    S XMTEXT= "^TMP(""YS CL"",$J,", XMDUZ="Clo zapine MON ITOR" D ^X MD
  1825   "RTN","YSC LTST3",99, 0)
  1826    G END^YSC LTST2
  1827   "RTN","YSC LTST3",100 ,0)
  1828    Q
  1829   "RTN","YSC LTST3",101 ,0)
  1830   TLIST ;
  1831   "RTN","YSC LTST3",102 ,0)
  1832    I '$D(^YS CL(603.04) ) W !,"Pat ch YS*5.01 *90 not pr operly ins talled.  C ontact IRM " S DIR(0) ="E" D ^DI R Q
  1833   "RTN","YSC LTST3",103 ,0)
  1834    W !,"Curr ently link ed Tests:"  I '$O(^YS CL(603.04, 1,1,0)) W  !,"No test s linked", !
  1835   "RTN","YSC LTST3",104 ,0)
  1836    S YSCLA=0
  1837   "RTN","YSC LTST3",105 ,0)
  1838    F  S YSCL A=$O(^YSCL (603.04,1, 1,YSCLA))  Q:'YSCLA   S YSCLB=^Y SCL(603.04 ,1,1,YSCLA ,0) D
  1839   "RTN","YSC LTST3",106 ,0)
  1840     . W !,$P (^LAB(60,$ P(YSCLB,"^ "),0),"^") ," represe nts " S YS CLB=$P(YSC LB,"^",2)
  1841   "RTN","YSC LTST3",107 ,0)
  1842     . W $S(Y SCLB="W":" WHITE BLOO D COUNT",Y SCLB="A":" ABSOLUTE N EUTROPHIL  COUNT",YSC LB="N":"NE UTROPHIL P ERCENT",YS CLB="S":"S EGS %",YSC LB="B":"BA NDS %",YSC LB="T":"BA NDS ABSOLU TE",YSCLB= "C":"SEGS  ABSOLUTE", 1:"Bad Rec ord")
  1843   "RTN","YSC LTST3",108 ,0)
  1844    F  K DIR  S DIR(0)=" PA^60:EMZ" ,DIR("A")= "Enter the  name of t he test fo r Clozapin e: " W ! D  ^DIR Q:Y= "^"!($D(DT OUT))!($D( DUOUT))  S  YSCLTST=+ Y D  Q:Y=" ^"!($D(DTO UT))!($D(D UOUT))
  1845   "RTN","YSC LTST3",109 ,0)
  1846     . I $D(^ YSCL(603.0 4,1,1,"B", YSCLTST))  G TEXIST
  1847   "RTN","YSC LTST3",110 ,0)
  1848     . K DIR  S DIR(0)=" SA^W:WHITE  BLOOD COU NT;A:ABSOL UTE NEUTRO PHIL COUNT ;N:NEUTROP HIL PERCEN T;S:SEGS % ;B:BANDS % ;T:BANDS A BSOLUTE;C: SEGS ABSOL UTE"
  1849   "RTN","YSC LTST3",111 ,0)
  1850     . S DIR( "A")="Ente r the type  of the te st for Clo zapine: "   D ^DIR Q: Y["^"!($D( DTOUT))!($ D(DUOUT))   S YSCLTS1 =Y
  1851   "RTN","YSC LTST3",112 ,0)
  1852     . K DIR  S DIR(0)=" SA^0:uL;1: K/uL;2:Per cent"
  1853   "RTN","YSC LTST3",113 ,0)
  1854     . S DIR( "A")="Ente r the repo rting meth od of the  test for C lozapine:  "  D ^DIR  Q:Y["^"!($ D(DTOUT))! ($D(DUOUT) )  S YSCLT S2=Y
  1855   "RTN","YSC LTST3",114 ,0)
  1856     . K YSCL ERR
  1857   "RTN","YSC LTST3",115 ,0)
  1858     . D VAL^ DIE(603.41 ,"+1,1,",. 01,"F","`" _YSCLTST,. YSCLRES,"F DA","YSCLE RR")
  1859   "RTN","YSC LTST3",116 ,0)
  1860     . I $D(Y SCLERR) W  !,"There w as a probl em with th e data, pl ease re-en ter it" Q
  1861   "RTN","YSC LTST3",117 ,0)
  1862     . D VAL^ DIE(603.41 ,"+1,1,",1 ,"F",YSCLT S1,.YSCLRE S,"FDA","Y SCLERR")
  1863   "RTN","YSC LTST3",118 ,0)
  1864     . I $D(Y SCLERR) W  !,"There w as a probl em with th e data, pl ease re-en ter it" Q
  1865   "RTN","YSC LTST3",119 ,0)
  1866     . D VAL^ DIE(603.41 ,"+1,1,",2 ,"F",YSCLT S2,.YSCLRE S,"FDA","Y SCLERR")
  1867   "RTN","YSC LTST3",120 ,0)
  1868     . I $D(Y SCLERR) W  !,"There w as a probl em with th e data, pl ease re-en ter it" Q
  1869   "RTN","YSC LTST3",121 ,0)
  1870     . D UPDA TE^DIE(,"F DA",,"ERRO R")
  1871   "RTN","YSC LTST3",122 ,0)
  1872     . I $D(Y SCLERR) W  !,"There w as a probl em with th e data, pl ease re-en ter it" Q
  1873   "RTN","YSC LTST3",123 ,0)
  1874    Q
  1875   "RTN","YSC LTST3",124 ,0)
  1876   TEXIST ;
  1877   "RTN","YSC LTST3",125 ,0)
  1878    W !,"This  entry alr eady exist s.  Do you  wish to d elete it?"  K DIR S D IR(0)="Y"  D ^DIR Q:' Y!($D(DTOU T))!($D(DU OUT))
  1879   "RTN","YSC LTST3",126 ,0)
  1880    S DA(1)=1 ,DA=$O(^YS CL(603.04, 1,1,"B",YS CLTST,"")) ,DIE="^YSC L(603.04,1 ,1,",DR=". 01////@" D  ^DIE W !, "Deleted"  S Y="" Q
  1881   "RTN","YSC LTST3",127 ,0)
  1882    Q
  1883   "RTN","YSC LTST3",128 ,0)
  1884   END K %,C, D,DA,DFN,D ISYS,DR,I, R,VADM,VAP A,VAERR,Y, YSCL,YSCL1 ,YSCL2,YSC LC,YSCLDEA ,YSCLJ,YSC LLN,YSCLNA ME,YSCLNO, YSCLP,^TMP ($J),^TMP( "YSCL",$J) ,^TMP("YSC LL",$J) Q
  1885   "RTN","YSC LTST3",129 ,0)
  1886    Q
  1887   "RTN","YSC LTST3",130 ,0)
  1888   END1 ;
  1889   "RTN","YSC LTST3",131 ,0)
  1890    K ^TMP($J ),^TMP("YS CL",$J)
  1891   "RTN","YSC LTST3",132 ,0)
  1892    K %,%DT,% H,%T,AGE,C ,CNT,D,DA, DFN,DIE,DI K,DIR,DIRO UT,DIRUT,D ISYS,DOB,D R
  1893   "RTN","YSC LTST3",133 ,0)
  1894    K DRG,DTO UT,DUOUT,I ,IOF,J,K,L AB,LABT,PN M,POP,R,RE SULTS1,SEX ,SSN,VADM, VAERR,VAPA
  1895   "RTN","YSC LTST3",134 ,0)
  1896    K X,X1,X2 ,XMDUZ,XMS UB,XMTEXT, XMY,XMZ,Y, YSACT,YSCL ,YSCL1,YSC L2,YSCL28, YSCLA,YSCL A1,YSCLAB
  1897   "RTN","YSC LTST3",135 ,0)
  1898    K YSCLAB1 ,YSCLAB2,Y SCLAB3,YSC LAB4,YSCLC ,YSCLD,YSC LD0,YSCLD1 ,YSCLDAT1
  1899   "RTN","YSC LTST3",136 ,0)
  1900    K YSCLDAT A,YSCLDEA, YSCLDEMO,Y SCLED,YSCL F,YSCLFF,Y SCLFRQ,YSC LGL,YSCLGR N,YSCLI
  1901   "RTN","YSC LTST3",137 ,0)
  1902    K YSCLID, YSCLIED,YS CLIEN,YSCL IF,YSCLJ,Y SCLLAB,YSC LLD,YSCLLD FN,YSCLLDN
  1903   "RTN","YSC LTST3",138 ,0)
  1904    K YSCLLDT ,YSCLLK,YS CLLLN,YSCL LN,YSCLLO, YSCLM180,Y SCLM28,YSC LM56,YSCLM 7,YSCLMTCH ,YSCLNAME
  1905   "RTN","YSC LTST3",139 ,0)
  1906    K YSCLNO, YSCLNOW,YS CLNST1,YSC LNSTE,YSCL OVR,YSCLP, YSCLPHY,YS CLR,YSCLRE S,YSCLRET, YSCLRWBC,Y SCLRX
  1907   "RTN","YSC LTST3",140 ,0)
  1908    K YSCLRX2 ,YSCLSAND, YSCLSB1,YS CLSD,YSCLS GS,YSCLSIT E,YSCLSN,Y SCLSP,YSCL T,YSCLTA,Y SCLTDT,YSC LTEST
  1909   "RTN","YSC LTST3",141 ,0)
  1910    K YSCLTL, YSCLTPT,YS CLTLS,YSCL TLS1,YSCLT S1,YSCLTST ,YSCLTYPE, YSCLWBC,YS CLWBCC
  1911   "RTN","YSC LTST3",142 ,0)
  1912    K YSCLWBC T,YSCLX,YS CLZ2,YSDEB UG,YSOFF,Y SRACE,YSRC ,YSSTOP,YS TEXT,ZTDES C
  1913   "RTN","YSC LTST3",143 ,0)
  1914    K ZTDTH,Z TIO,ZTREQ, ZTRTN,ZTSA VE,ZTSTOP
  1915   "RTN","YSC LTST3",144 ,0)
  1916    Q
  1917   "RTN","YSC LTST3",145 ,0)
  1918   ZEOR ;YSCL TST3
  1919   "RTN","YSC LTST4")
  1920   0^9^B19360 627
  1921   "RTN","YSC LTST4",1,0 )
  1922   YSCLTST4 ; DALOI/LB/R LM-TRANSMI T RX AND l AB DATA FO R CLOZAPIN E ;Jul 14,  2017@09:0 0:07
  1923   "RTN","YSC LTST4",2,0 )
  1924    ;;5.01;ME NTAL HEALT H;**92,122 **;Dec 30,  1994;Buil d 61
  1925   "RTN","YSC LTST4",3,0 )
  1926    ; Referen ce to ^LAB (60 suppor ted by IA  #333
  1927   "RTN","YSC LTST4",4,0 )
  1928    ; Referen ce to ^LR7 OR1 suppor ted by IA  #2503
  1929   "RTN","YSC LTST4",5,0 )
  1930    ; 
  1931   "RTN","YSC LTST4",6,0 )
  1932   CL1 ;(DFN, DAYS) ;
  1933   "RTN","YSC LTST4",7,0 )
  1934    K ^TMP($J ,"PSO"),RE SULTS,YSCL YWBC,YSCLR ANC,YSCLXW BC
  1935   "RTN","YSC LTST4",8,0 )
  1936    Q:'DFN
  1937   "RTN","YSC LTST4",9,0 )
  1938    S:'$G(DAY S) DAYS=90
  1939   "RTN","YSC LTST4",10, 0)
  1940    N ARRAY D  LIST^DIC( 603.01,,1, "I",,,DFN, "C",,,"ARR AY")
  1941   "RTN","YSC LTST4",11, 0)
  1942    S YSCLIEN =$G(ARRAY( "DILIST",2 ,1)),YSCLF RQ="" I YS CLIEN S YS CLFRQ=$$GE T1^DIQ(603 .01,YSCLIE N,2,"I")
  1943   "RTN","YSC LTST4",12, 0)
  1944    I $$GET1^ DIQ(603.03 ,1,7,"I")= 1  Q "-1^0 ^0^0^0^0^" _YSCLFRQ
  1945   "RTN","YSC LTST4",13, 0)
  1946    S X1=DT,X 2="-"_DAYS  D C^%DTC  S YSCLSD=X
  1947   "RTN","YSC LTST4",14, 0)
  1948    K ARRAY D  LIST^DIC( 603.41,",1 ,","1;2"," I",,,,,,," ARRAY")
  1949   "RTN","YSC LTST4",15, 0)
  1950    F I=1:1 Q :'$D(ARRAY ("DILIST", 2,I))  S Y SCLA=ARRAY ("DILIST", 2,I) D
  1951   "RTN","YSC LTST4",16, 0)
  1952    . N YSCLT NM,YSCLTTP ,YSCLTFR S  YSCLTNM=A RRAY("DILI ST",1,I) ; $$GET1^DIQ (603.41,YS CLA_",1,", .01,"I")
  1953   "RTN","YSC LTST4",17, 0)
  1954    . S YSCLT TP=ARRAY(" DILIST","I D",I,1)
  1955   "RTN","YSC LTST4",18, 0)
  1956    . S YSCLT FR=ARRAY(" DILIST","I D",I,2)
  1957   "RTN","YSC LTST4",19, 0)
  1958    . S YSCLT LS(YSCLTTP ,YSCLTNM)= YSCLTFR
  1959   "RTN","YSC LTST4",20, 0)
  1960    F I=1:1 Q :'$D(ARRAY ("DILIST", 1,I))  S Y SCLTL=ARRA Y("DILIST" ,1,I) D
  1961   "RTN","YSC LTST4",21, 0)
  1962    . D RR^LR 7OR1(DFN,, YSCLSD,DT, ,YSCLTL,"L ")
  1963   "RTN","YSC LTST4",22, 0)
  1964    . S YSCLS B1="" F  S  YSCLSB1=$ O(^TMP("LR RR",$J,DFN ,YSCLSB1))  Q:YSCLSB1 =""  D
  1965   "RTN","YSC LTST4",23, 0)
  1966    . . S YSC LTDT="" F   S YSCLTDT =$O(^TMP(" LRRR",$J,D FN,YSCLSB1 ,YSCLTDT))  Q:YSCLTDT =""  I $P( YSCLTDT,". ",2)]"" D
  1967   "RTN","YSC LTST4",24, 0)
  1968    . . . S Y SCLTA="" F   S YSCLTA =$O(^TMP(" LRRR",$J,D FN,YSCLSB1 ,YSCLTDT,Y SCLTA)) Q: YSCLTA=""   I YSCLTA  D
  1969   "RTN","YSC LTST4",25, 0)
  1970    . . . . S  RESULTS1= ^TMP("LRRR ",$J,DFN,Y SCLSB1,YSC LTDT,YSCLT A)
  1971   "RTN","YSC LTST4",26, 0)
  1972    . . . . S  RESULTS(Y SCLTL,YSCL TDT)=$P(RE SULTS1,"^" ,2)
  1973   "RTN","YSC LTST4",27, 0)
  1974    ;Find all  entries f or WBC and  sort by i nverse dat e.
  1975   "RTN","YSC LTST4",28, 0)
  1976    S YSCLA=" " F  S YSC LA=$O(YSCL TLS("W",YS CLA)) Q:'Y SCLA  S YS CLXWBC(YSC LA)="" D
  1977   "RTN","YSC LTST4",29, 0)
  1978    . S YSCLA 1="" F  S  YSCLA1=$O( RESULTS(YS CLA,YSCLA1 )) Q:'YSCL A1  D
  1979   "RTN","YSC LTST4",30, 0)
  1980    . . S YSC LYWBC(YSCL A1)=RESULT S(YSCLA,YS CLA1)*$S(Y SCLTLS("W" ,YSCLA):10 00,1:1)
  1981   "RTN","YSC LTST4",31, 0)
  1982    . . S ^TM P($J,"PSO" ,YSCLA1)=Y SCLYWBC(YS CLA1)
  1983   "RTN","YSC LTST4",32, 0)
  1984    S YSCLRWB C=0 F  S Y SCLRWBC=$O (YSCLYWBC( YSCLRWBC))  Q:YSCLRWB C=""  S YS CLRWBC(YSC LRWBC)=YSC LYWBC(YSCL RWBC) D
  1985   "RTN","YSC LTST4",33, 0)
  1986    . ;Match  all ANC's  and WBC's
  1987   "RTN","YSC LTST4",34, 0)
  1988    . S YSCLM TCH=0 F YS CLA="A","N ","S","C"  Q:YSCLMTCH   S YSCLTP T="" F  S  YSCLTPT=$O (YSCLTLS(Y SCLA,YSCLT PT)) Q:'YS CLTPT  D   Q:YSCLMTCH
  1989   "RTN","YSC LTST4",35, 0)
  1990    . . I $G( RESULTS(YS CLTPT,YSCL RWBC)),YSC LA="A",$D( YSCLRWBC(Y SCLRWBC))  S ^TMP($J, "PSO",YSCL RWBC)=YSCL RWBC(YSCLR WBC)_"^"_( RESULTS(YS CLTPT,YSCL RWBC)*$S(Y SCLTLS(YSC LA,YSCLTPT ):1000,1:1 )) Q
  1991   "RTN","YSC LTST4",36, 0)
  1992    . . I $G( RESULTS(YS CLTPT,YSCL RWBC)),YSC LA="N",$D( YSCLRWBC(Y SCLRWBC))  S YSCLMTCH =1,^TMP($J ,"PSO",YSC LRWBC)=YSC LRWBC(YSCL RWBC)_"^"_ (YSCLRWBC( YSCLRWBC)* ((RESULTS( YSCLTPT,YS CLRWBC)*.0 1))) Q
  1993   "RTN","YSC LTST4",37, 0)
  1994    . . I $G( RESULTS(YS CLTPT,YSCL RWBC)),YSC LA="S",$D( YSCLRWBC(Y SCLRWBC))  D  Q
  1995   "RTN","YSC LTST4",38, 0)
  1996    . . . S ( YSCLSG1,YS CLSGS)=""  F  S YSCLS GS=$O(YSCL TLS("B",YS CLSGS)) D   Q:'YSCLSG S!YSCLMTCH
  1997   "RTN","YSC LTST4",39, 0)
  1998    . . . . I  'YSCLSG1, 'YSCLSGS S  YSCLSGS=" Z",YSCLSG1 =1
  1999   "RTN","YSC LTST4",40, 0)
  2000    . . . . I  'YSCLSGS, YSCLSG1 Q
  2001   "RTN","YSC LTST4",41, 0)
  2002    . . . . I  '$D(RESUL TS(YSCLSGS ,YSCLRWBC) ) S RESULT S(YSCLSGS, YSCLRWBC)= 0
  2003   "RTN","YSC LTST4",42, 0)
  2004    . . . . S  YSCLMTCH= 1,^TMP($J, "PSO",YSCL RWBC)=YSCL RWBC(YSCLR WBC)_"^"_( YSCLRWBC(Y SCLRWBC)*( (RESULTS(Y SCLTPT,YSC LRWBC)*.01 )+(RESULTS (YSCLSGS,Y SCLRWBC)*. 01))) Q
  2005   "RTN","YSC LTST4",43, 0)
  2006    . . I $G( RESULTS(YS CLTPT,YSCL RWBC)),YSC LA="C" S Y SCLMTCH=1  D
  2007   "RTN","YSC LTST4",44, 0)
  2008    . . . S Y SCLSGS=""  F  S YSCLS GS=$O(YSCL TLS("T",YS CLSGS)) D   Q:'YSCLSG S!YSCLMTCH
  2009   "RTN","YSC LTST4",45, 0)
  2010    . . . . I  '$G(YSCLS G1),'YSCLS GS S YSCLS GS="Z",YSC LSG1=1
  2011   "RTN","YSC LTST4",46, 0)
  2012    . . . . I  'YSCLSGS, $G(YSCLSG1 ) Q
  2013   "RTN","YSC LTST4",47, 0)
  2014    . . . . I  '$D(RESUL TS(YSCLSGS ,YSCLRWBC) ) S RESULT S(YSCLSGS, YSCLRWBC)= 0
  2015   "RTN","YSC LTST4",48, 0)
  2016    . . . . S  YSCLMTCH= 1,^TMP($J, "PSO",YSCL RWBC)=YSCL RWBC(YSCLR WBC)_"^"_( (RESULTS(Y SCLTPT,YSC LRWBC)*$S( YSCLTLS(YS CLA,YSCLTP T):1000,1: 1))+(RESUL TS(YSCLSGS ,YSCLRWBC) )) Q
  2017   "RTN","YSC LTST4",49, 0)
  2018    S YSCLA=" A",YSCLTPT ="" F  S Y SCLTPT=$O( YSCLTLS(YS CLA,YSCLTP T)) Q:'YSC LTPT  D
  2019   "RTN","YSC LTST4",50, 0)
  2020    . S YSCLR ANC="" F   S YSCLRNC= $O(RESULTS (YSCLTPT,Y SCLRANC))  Q:'YSCLRAN C  D
  2021   "RTN","YSC LTST4",51, 0)
  2022    . . Q:$D( ^TMP($J,"P SO",YSCLRA NC))
  2023   "RTN","YSC LTST4",52, 0)
  2024    . . S ^TM P($J,"PSO" ,YSCLRANC) ="^"_(RESU LTS(YSCLTP T,YSCLRANC )*$S(YSCLT LS("A",YSC LTPT):1000 ,1:1))
  2025   "RTN","YSC LTST4",53, 0)
  2026    K FDA,YSC LSGS,Y15,Y SCLRWBC,YS CLANC,YSCL YWBC,YSCLF RQ,ZIENS,R ESULTS,RES ULTS1,YSCL A,YSCLA1,Y SCLMTCH,YS CLSB1,YSCL SD
  2027   "RTN","YSC LTST4",54, 0)
  2028    K YSCLTA, YSCLTDT,YS CLTL,YSCLT LS,YSCLTPT ,YSCLXWBC, YSCLMULT
  2029   "RTN","YSC LTST4",55, 0)
  2030    Q
  2031   "RTN","YSC LTST4",56, 0)
  2032    ;
  2033   "RTN","YSC LTST4",57, 0)
  2034   KILL ;
  2035   "RTN","YSC LTST4",58, 0)
  2036    K FDA,YSC LSGS,Y15,R ESULTS,RES ULTS1,YSCL A,YSCLA1,Y SCLMTCH,YS CLSB1,YSCL SD,YSCLTA, YSCLMULT
  2037   "RTN","YSC LTST4",59, 0)
  2038    K YSCLTDT ,YSCLTL,YS CLSG1,YSCL TLS,YSCLTP T,YSCLXWBC
  2039   "RTN","YSC LTST4",60, 0)
  2040    ;
  2041   "RTN","YSC LTST4",61, 0)
  2042   ZEOR ;YSCL TST4
  2043   "RTN","YSC LTST5")
  2044   0^5^B13569 8534
  2045   "RTN","YSC LTST5",1,0 )
  2046   YSCLTST5 ; HINOI/RSJ- TRANSMISSI ON FOR REA L-TIME CLO ZAPINE ORD ERS ;Jul 1 4, 2017@09 :00:07
  2047   "RTN","YSC LTST5",2,0 )
  2048    ;;5.01;ME NTAL HEALT H;**122**; Dec 30, 19 94;Build 6 1
  2049   "RTN","YSC LTST5",3,0 )
  2050    ; Referen ce to $$SI TE^VASITE  supported  by IA #101 12
  2051   "RTN","YSC LTST5",4,0 )
  2052    ; Referen ce to ^DPT  supported  by IA #10 035
  2053   "RTN","YSC LTST5",5,0 )
  2054    ; Referen ce to ^PS( 55 support ed by IA # 787
  2055   "RTN","YSC LTST5",6,0 )
  2056    ; Referen ce to ^PS( 59 support ed by IA # 783
  2057   "RTN","YSC LTST5",7,0 )
  2058    ; Referen ce to ^VA( 200 suppor ted by IA  #10060
  2059   "RTN","YSC LTST5",8,0 )
  2060    ; Referen ce to ^LAB (60 suppor ted by IA  #333
  2061   "RTN","YSC LTST5",9,0 )
  2062    Q
  2063   "RTN","YSC LTST5",10, 0)
  2064   INPSND ; B uild inpat ient cloza pine data  for transm ision
  2065   "RTN","YSC LTST5",11, 0)
  2066    N PSJPAT, PSJIOF,YCL SCNTR,PSGT IM,X,X1,X2  S YSCLRET ="",PSJPAT =DFN,PSJIO F=IOF,YCLS CNTR=0
  2067   "RTN","YSC LTST5",12, 0)
  2068    S X1=DT,X 2=365 D C^ %DTC S YSE ND=X
  2069   "RTN","YSC LTST5",13, 0)
  2070    S $P(^XTM P("YSCLTRN ",0),"^",1 )=YSEND,$P (^XTMP("YS CLTRN",0), "^",2)=DT
  2071   "RTN","YSC LTST5",14, 0)
  2072    S:'$G(^XT MP("YSCLTR N",DT)) ^X TMP("YSCLT RN",DT)=0
  2073   "RTN","YSC LTST5",15, 0)
  2074    D DMG,DMG 1,GETINP,I NPCHK
  2075   "RTN","YSC LTST5",16, 0)
  2076    I YSCLT D  LOAD
  2077   "RTN","YSC LTST5",17, 0)
  2078    S DFN=PSJ PAT,IOF=PS JIOF
  2079   "RTN","YSC LTST5",18, 0)
  2080    K ^TMP("Y SCL",$J),^ TMP("YSCLL ",$J),^TMP ($J)
  2081   "RTN","YSC LTST5",19, 0)
  2082    Q
  2083   "RTN","YSC LTST5",20, 0)
  2084   DMG ; Call ed by PSGO ETO
  2085   "RTN","YSC LTST5",21, 0)
  2086    Q:'DFN
  2087   "RTN","YSC LTST5",22, 0)
  2088    N PSDFN
  2089   "RTN","YSC LTST5",23, 0)
  2090    S YSDEBUG =$$GET1^DI Q(603.03,1 ,3,"I"),PS DFN=DFN     ;$P(^YSCL (603.03,1, 0),"^",3)
  2091   "RTN","YSC LTST5",24, 0)
  2092    K ^TMP($J ),^TMP("YS CL",$J) S  (YSCLIEN,Y SCLLN)=0,Y SCLNO=20
  2093   "RTN","YSC LTST5",25, 0)
  2094    N ARRAY D  LIST^DIC( 603.01,,1, "I",,,DFN, "C",,,"ARR AY")
  2095   "RTN","YSC LTST5",26, 0)
  2096    S YSCLIEN =$G(ARRAY( "DILIST",2 ,1)) Q:'YS CLIEN
  2097   "RTN","YSC LTST5",27, 0)
  2098    S $P(YSST OP,",",8)= 8 Q:$$S^%Z TLOAD
  2099   "RTN","YSC LTST5",28, 0)
  2100    I $L($$GE T1^DIQ(2,D FN,.01)) S  YSCLC=ARR AY("DILIST ","ID",1,. 01) D GET
  2101   "RTN","YSC LTST5",29, 0)
  2102    I $D(^TMP ("YSCLL",$ J,DFN)) D
  2103   "RTN","YSC LTST5",30, 0)
  2104    . S $P(^X TMP("YSCLT RN",0),"^" ,1)=YSEND, $P(^XTMP(" YSCLTRN",0 ),"^",2)=D T
  2105   "RTN","YSC LTST5",31, 0)
  2106    . S:'$G(^ XTMP("YSCL DEM",DT))  ^XTMP("YSC LDEM",DT)= 0
  2107   "RTN","YSC LTST5",32, 0)
  2108    . I '$G(Y SCLDIS2) S  ^XTMP("YS CLDEM",DT, DFN,0)=0 ; RTW 
  2109   "RTN","YSC LTST5",33, 0)
  2110    . I $G(YS CLDIS2) S  ^XTMP("YSC LDIS",DT,D FN,0)=$G(Y SCLDIS2) ; RTW
  2111   "RTN","YSC LTST5",34, 0)
  2112    I $G(YSCL DIS2) S ^X TMP("YSCLD IS",DT,DFN ,0)=$G(YSC LDIS2) ;RT W
  2113   "RTN","YSC LTST5",35, 0)
  2114    S DFN=PSD FN
  2115   "RTN","YSC LTST5",36, 0)
  2116    Q
  2117   "RTN","YSC LTST5",37, 0)
  2118   DMG1 ; GAT HER FACILI TY INFORMA TION
  2119   "RTN","YSC LTST5",38, 0)
  2120    S YSCLLN= 0,YSCLLLN= 3,(X1,YSCL ED)=DT,X2= -60 D C^%D TC S YSCLM 28=X,X1=$P (YSCLED,". "),X2=-28  D C^%DTC S  YSCLM7=X, YSCLED=YSC LED+.5 ;28  TO 60 and  14 to 28  6/15/05
  2121   "RTN","YSC LTST5",39, 0)
  2122    S X1=$P(Y SCLED,".") ,X2=-180 D  C^%DTC S  YSCLM180=X
  2123   "RTN","YSC LTST5",40, 0)
  2124    S X1=$P(Y SCLED,".") ,X2=-56 D  C^%DTC S Y SCLM56=X
  2125   "RTN","YSC LTST5",41, 0)
  2126    S YSCLIF= +$$SITE^VA SITE_","
  2127   "RTN","YSC LTST5",42, 0)
  2128    D GETS^DI Q(4,YSCLIF ,"1.01;1.0 2;1.03;.02 ;1.04","I" ,"YSCLFF")
  2129   "RTN","YSC LTST5",43, 0)
  2130    S $P(YSCL DEMO,"^",1 )=YSCLFF(4 ,YSCLIF,1. 01,"I")
  2131   "RTN","YSC LTST5",44, 0)
  2132    S $P(YSCL DEMO,"^",2 )=YSCLFF(4 ,YSCLIF,1. 02,"I")
  2133   "RTN","YSC LTST5",45, 0)
  2134    S $P(YSCL DEMO,"^",3 )=YSCLFF(4 ,YSCLIF,1. 03,"I")
  2135   "RTN","YSC LTST5",46, 0)
  2136    S $P(YSCL DEMO,"^",4 )=$P(^DIC( 5,YSCLFF(4 ,YSCLIF,.0 2,"I"),0), "^",2)
  2137   "RTN","YSC LTST5",47, 0)
  2138    S $P(YSCL DEMO,"^",5 )=YSCLFF(4 ,YSCLIF,1. 04,"I")
  2139   "RTN","YSC LTST5",48, 0)
  2140    S $P(YSCL DEMO,"^",6 )=""
  2141   "RTN","YSC LTST5",49, 0)
  2142    K J,YSCLF ,YSCLFF,YS CLIF,X
  2143   "RTN","YSC LTST5",50, 0)
  2144    Q
  2145   "RTN","YSC LTST5",51, 0)
  2146   GET ; GATH ER PATIENT  DEMOGRAPH ICS
  2147   "RTN","YSC LTST5",52, 0)
  2148    S $P(YSST OP,",",9)= 9 Q:$$S^%Z TLOAD
  2149   "RTN","YSC LTST5",53, 0)
  2150    Q:'$L($$G ET1^DIQ(55 ,DFN,53))   ;Q:'$D(^P S(55,DFN," SAND"))  ; Don't try  to transmi t if no ph armacy rec ord
  2151   "RTN","YSC LTST5",54, 0)
  2152    Q:$$GET1^ DIQ(55,DFN ,56,"I")    ;Q:$P(^PS (55,DFN,"S AND"),"^", 4)  ;Don't  retransmi t demograp hics.
  2153   "RTN","YSC LTST5",55, 0)
  2154    Q:$D(^TMP ("YSCLL",$ J,DFN))
  2155   "RTN","YSC LTST5",56, 0)
  2156    S ^TMP("Y SCLL",$J,D FN)=1
  2157   "RTN","YSC LTST5",57, 0)
  2158    S YSCLP=$ $GET1^DIQ( 55,DFN,57, "I"),YSCLD EA=$$GET1^ DIQ(200,YS CLP,53.2), YSCLP=$$GE T1^DIQ(200 ,YSCLP,.01 )
  2159   "RTN","YSC LTST5",58, 0)
  2160    D DEM^VAD PT,ADD^VAD PT S YSCL= YSCLC_"^"_ $E($P(VADM (1),",",2) )_$E(VADM( 1))_"^"_$P (VADM(3)," ^")_"^"_$P (VADM(2)," ^")_"^"_$P (VADM(5)," ^")_"^"_VA PA(6)_"^"_ DT
  2161   "RTN","YSC LTST5",59, 0)
  2162    D
  2163   "RTN","YSC LTST5",60, 0)
  2164    . S YSRAC E="*"
  2165   "RTN","YSC LTST5",61, 0)
  2166    . S YSRC= 0 F  S YSR C=$O(VADM( 11,YSRC))  Q:'YSRC  S  YSRACE=YS RACE_+VADM (11,YSRC)_ "-"_+VADM( 11,YSRC,1) _","
  2167   "RTN","YSC LTST5",62, 0)
  2168    . S YSRAC E=YSRACE_" ~"
  2169   "RTN","YSC LTST5",63, 0)
  2170    . S YSRC= 0 F  S YSR C=$O(VADM( 12,YSRC))  Q:'YSRC  S  YSRACE=YS RACE_+VADM (12,YSRC)_ "-"_+VADM( 12,YSRC,1) _","
  2171   "RTN","YSC LTST5",64, 0)
  2172    S YSCL=YS CL_"^"_YSR ACE_"^"_YS CLP_"^"_YS CLDEA
  2173   "RTN","YSC LTST5",65, 0)
  2174    ; YSCLJ c ontains a  ZIP code
  2175   "RTN","YSC LTST5",66, 0)
  2176    N ARRAY59  D LIST^DI C(59,,"1;. 05",,,,,,, ,"ARRAY59" )
  2177   "RTN","YSC LTST5",67, 0)
  2178    S YSCLJ=" " F  S YSC LJ=$O(ARRA Y59("DILIS T","ID",YS CLJ)) Q:'Y SCLJ  I AR RAY59("DIL IST","ID", YSCLJ,1)'= "" S YSCLJ =ARRAY59(" DILIST","I D",YSCLJ,. 05) Q
  2179   "RTN","YSC LTST5",68, 0)
  2180    S YSCL=YS CL_"^"_YSC LJ
  2181   "RTN","YSC LTST5",69, 0)
  2182    ;registra tion numbe r^initials ^dob^ssn^s ex^zip^tod ay^race^ph ysician^de a^zip code  (hosp)
  2183   "RTN","YSC LTST5",70, 0)
  2184    S YSCLLN= YSCLLN+1,^ TMP($J,YSC LLN,0)=YSC L
  2185   "RTN","YSC LTST5",71, 0)
  2186    I VADM(5) =""!(VAPA( 6)="")!('V ADM(11))!( 'VADM(12))  D  ;RLM R ACETEST
  2187   "RTN","YSC LTST5",72, 0)
  2188    . S ^TMP( "YSCL",$J, YSCLNO,0)= $P(VADM(2) ,"^",1)_"    "_VADM(1 )
  2189   "RTN","YSC LTST5",73, 0)
  2190    . S:VADM( 5)="" ^TMP ("YSCL",$J ,YSCLNO,0) =^TMP("YSC L",$J,YSCL NO,0)_" (S EX)"
  2191   "RTN","YSC LTST5",74, 0)
  2192    . S:VAPA( 6)="" ^TMP ("YSCL",$J ,YSCLNO,0) =^TMP("YSC L",$J,YSCL NO,0)_" (Z IP)"
  2193   "RTN","YSC LTST5",75, 0)
  2194    . S:'VADM (12) ^TMP( "YSCL",$J, YSCLNO,0)= ^TMP("YSCL ",$J,YSCLN O,0)_" (RA CE, NEW FO RMAT)"
  2195   "RTN","YSC LTST5",76, 0)
  2196    . S:'VADM (11) ^TMP( "YSCL",$J, YSCLNO,0)= ^TMP("YSCL ",$J,YSCLN O,0)_" (ET HNICITY)"
  2197   "RTN","YSC LTST5",77, 0)
  2198    . S YSCLN O=YSCLNO+1
  2199   "RTN","YSC LTST5",78, 0)
  2200    . S ^TMP( "YSCLL",$J ,DFN)=0 ;  leave unma rked pendi ng demogra phic data
  2201   "RTN","YSC LTST5",79, 0)
  2202    . I ('VAD M(11))!('V ADM(12)) D
  2203   "RTN","YSC LTST5",80, 0)
  2204    . . S ^TM P("YSCL",$ J,YSCLNO,0 )="NOTE: R ace and Et hnicity ma y be enter ed if perm ission is  obtained i n the info rmed conse nt",YSCLNO =YSCLNO+1
  2205   "RTN","YSC LTST5",81, 0)
  2206    . . S ^TM P("YSCL",$ J,YSCLNO,0 )="documen t. See VHA  Directive  99-035.", YSCLNO=YSC LNO+1
  2207   "RTN","YSC LTST5",82, 0)
  2208    ;
  2209   "RTN","YSC LTST5",83, 0)
  2210    Q
  2211   "RTN","YSC LTST5",84, 0)
  2212   GETINP ;In patient Me dications
  2213   "RTN","YSC LTST5",85, 0)
  2214    Q:$$S^%ZT LOAD  D DE M^VADPT
  2215   "RTN","YSC LTST5",86, 0)
  2216    S YSCLX=$ E($P(VADM( 1),",",2)) _$E(VADM(1 ))_"^"_$P( VADM(2),"^ ")
  2217   "RTN","YSC LTST5",87, 0)
  2218    S YSCLPHY ="",$P(YSC LX,"^",6)= $P(YSCLDEM O,"^",5),$ P(YSCLX,"^ ",11)=YSCL C,$P(YSCLX ,"^",16)=D T
  2219   "RTN","YSC LTST5",88, 0)
  2220    ;site zip (p6),regis tration nu mber (p11) , today (p 16)
  2221   "RTN","YSC LTST5",89, 0)
  2222    S YSSTRT= $$GET1^DIQ (55.06,+PS GORD_","_D FN,10,"I") ,YSSTOP=$$ GET1^DIQ(5 5.06,+PSGO RD_","_DFN ,34,"I")
  2223   "RTN","YSC LTST5",90, 0)
  2224    ;S YSSTRT =$P($G(^PS (55,DFN,5, +PSGORD,2) ),"^",2),Y SSTOP=$P($ G(^PS(55,D FN,5,+PSGO RD,2)),"^" ,4)
  2225   "RTN","YSC LTST5",91, 0)
  2226    S PSJOR=$ $GET1^DIQ( 55.06,+PSG ORD_","_DF N,66) ;$P( $G(^PS(55, DFN,5,+PSG ORD,0)),"^ ",21)
  2227   "RTN","YSC LTST5",92, 0)
  2228    Q
  2229   "RTN","YSC LTST5",93, 0)
  2230   INPCHK ;fo r data to  send
  2231   "RTN","YSC LTST5",94, 0)
  2232    S YSCLT=0 ,YSCLWBC=0
  2233   "RTN","YSC LTST5",95, 0)
  2234    S $P(YSST OP,",",3)= 3 Q:$$S^%Z TLOAD
  2235   "RTN","YSC LTST5",96, 0)
  2236    K PNM,SEX ,DOB,AGE,S SN D DEM^V ADPT I 'VA ERR S PNM= VADM(1),SE X=$P(VADM( 5),U),DOB= $P(VADM(3) ,U),AGE=VA DM(4),SSN= $P(VADM(2) ,U)
  2237   "RTN","YSC LTST5",97, 0)
  2238    I PSGSD=0 ,$$GET1^DI Q(55,DFN,5 4,"I")="P"  Q  ;no tr ansmit for  pretreatm ent
  2239   "RTN","YSC LTST5",98, 0)
  2240    I PSGSD,P SGSD<YSCLM 180 Q  ;Do n't report  if over 6  months ol d.
  2241   "RTN","YSC LTST5",99, 0)
  2242    S YSCL=$O (YSCLA("") ) I 'YSCL  D LAB^YSCL TST1 S YSC LT=1  ;Q   ;get lates t WBC resu lts even i f no scrip t.
  2243   "RTN","YSC LTST5",100 ,0)
  2244    S YSCLT=1 ,YSCLRXPR= $$GET1^DIQ (55.06,+PS GORD_","_D FN,1,"I")  ;we've got  provider
  2245   "RTN","YSC LTST5",101 ,0)
  2246    N PSJWRD, PSJDIV,PSJ INST S PSJ WRD=$$GET1 ^DIQ(55.06 ,+PSGORD_" ,"_DFN,68, "I")
  2247   "RTN","YSC LTST5",102 ,0)
  2248    S:'PSJWRD  PSJWRD=$$ GET1^DIQ(5 506,+PSGOR D_","_DFN, 9,"I")
  2249   "RTN","YSC LTST5",103 ,0)
  2250    I PSJWRD  S PSJINST= $$GET1^DIQ (42,PSJWRD ,44,"I") I  PSJINST S  PSJDIV=$$ GET1^DIQ(4 4,PSJINST, 3,"I")
  2251   "RTN","YSC LTST5",104 ,0)
  2252    S YSCLD=$ G(PSJDIV)  I YSCLD S  $P(YSCLX," ^",10)=$$G ET1^DIQ(4, YSCLD,52), $P(YSCLX," ^",12)=YSC LD
  2253   "RTN","YSC LTST5",105 ,0)
  2254    ;site DEA # (p10), s ite pointe r (p12)
  2255   "RTN","YSC LTST5",106 ,0)
  2256    ;here if  active
  2257   "RTN","YSC LTST5",107 ,0)
  2258    I $$GET1^ DIQ(55,DFN ,54,"I")=" A" S $P(YS CLX,"^",5) ="A" ;forc e active
  2259   "RTN","YSC LTST5",108 ,0)
  2260    S $P(YSCL X,"^",13)= 1,$P(YSCLX ,"^",9)=PS GLI\1
  2261   "RTN","YSC LTST5",109 ,0)
  2262    I '$L($$G ET1^DIQ(55 .06,+PSGOR D_","_DFN, 301)),$G(^ TMP("PSJCO M",$J,+$G( PSGORD),"S AND")) D
  2263   "RTN","YSC LTST5",110 ,0)
  2264    .S DIE="^ PS(55,"_DF N_",5,",DA (1)=DFN,DA =+PSGORD,D R="301//// "_^TMP("PS JCOM",$J,+ PSGORD,"SA ND") D ^DI E
  2265   "RTN","YSC LTST5",111 ,0)
  2266    S $P(YSCL X,"^",8)=+ $$GET1^DIQ (55.06,+PS GORD_","_D FN,301)
  2267   "RTN","YSC LTST5",112 ,0)
  2268    ;status(p 5),dosage( p8),rx cou nt(p13),is sue date(p 9)
  2269   "RTN","YSC LTST5",113 ,0)
  2270    S YSCLLO= $O(^PS(53. 8,"A",+$G( PSJOR),0))  I YSCLLO  D
  2271   "RTN","YSC LTST5",114 ,0)
  2272    .S $P(YSC LX,"^",14) =$$GET1^DI Q(53.8,YSC LLO,4,"I")
  2273   "RTN","YSC LTST5",115 ,0)
  2274    .S:$P(YSC LX,"^",14) =9 $P(YSCL X,"^",14)= 94
  2275   "RTN","YSC LTST5",116 ,0)
  2276    .S $P(YSC LX,"^",15) =$$GET1^DI Q(53.8,YSC LLO,3)        ;$P(^VA (200,YSCLL O,0),"^")
  2277   "RTN","YSC LTST5",117 ,0)
  2278    ;lockout  reason (p1 4), approv ing offici al (p15)
  2279   "RTN","YSC LTST5",118 ,0)
  2280    S $P(YSST OP,",",4)= 4 Q:$$S^%Z TLOAD
  2281   "RTN","YSC LTST5",119 ,0)
  2282    S YSCLPHY =$$GET1^DI Q(200,+YSC LRXPR,.01) ,$P(YSCLX, "^",7)=$$G ET1^DIQ(20 0,+YSCLRXP R,53.2)  ; ,YSCLPHY=$ P(YSCLPHY, "^")
  2283   "RTN","YSC LTST5",120 ,0)
  2284    ; add if  prescripti on on same  day for d ifferent d rug and di fferent do se
  2285   "RTN","YSC LTST5",121 ,0)
  2286    S $P(YSCL X,"^",21)= $$GET1^DIQ (50,+PSGDN ,31)  ;$P( ^PSDRUG(+P SGDN,2),"^ ",4) ;Add  NDC to str ing
  2287   "RTN","YSC LTST5",122 ,0)
  2288    S YCLSCNT R=YCLSCNTR +1
  2289   "RTN","YSC LTST5",123 ,0)
  2290    I $D(^XTM P("YSCLTRN ",DT,DFN,P SGLI)) D
  2291   "RTN","YSC LTST5",124 ,0)
  2292    .S PSGTIM =PSGLI+.00 0001,PSHLI 1=PSGTIM
  2293   "RTN","YSC LTST5",125 ,0)
  2294    .I $D(^XT MP("YSCLTR N",DT,DFN, PSGTIM)) D
  2295   "RTN","YSC LTST5",126 ,0)
  2296    ..S PSHLI 2=0 F  S P SHLI2=$O(^ XTMP("YSCL TRN",DT,DF N,PSHLI2))  Q:'PSHLI2   D
  2297   "RTN","YSC LTST5",127 ,0)
  2298    ...I $P(P SHLI2,".", 1)=$P(PSGT IM,".",1)  D
  2299   "RTN","YSC LTST5",128 ,0)
  2300    ....I $P( PSHLI2,"." ,2)<$P(PSG TIM,".",2) !($P(PSHLI 2,".",2)=$ P(PSGTIM," .",2)) S ( PSHLI1,PSG TIM)=PSHLI 2+.000001
  2301   "RTN","YSC LTST5",129 ,0)
  2302    I $G(PSGT IM) N PSGL I S (PSGLI ,PSGLI1)=P SGTIM
  2303   "RTN","YSC LTST5",130 ,0)
  2304    S ^XTMP(" YSCLTRN",D T,DFN,PSGL I,0)=0_"^I ^"_PSJOR
  2305   "RTN","YSC LTST5",131 ,0)
  2306    S ^XTMP(" YSCLTRN",D T,DFN,PSGL I,YCLSCNTR )=YSCLX
  2307   "RTN","YSC LTST5",132 ,0)
  2308    Q
  2309   "RTN","YSC LTST5",133 ,0)
  2310   LOAD ;
  2311   "RTN","YSC LTST5",134 ,0)
  2312    S $P(YSST OP,",",6)= 6 Q:$$S^%Z TLOAD
  2313   "RTN","YSC LTST5",135 ,0)
  2314    I YSCLWBC ="",YSCLLD <YSCLM28 Q
  2315   "RTN","YSC LTST5",136 ,0)
  2316    ; don't s end for pr etest or o lder that  28 days
  2317   "RTN","YSC LTST5",137 ,0)
  2318    S YSCLNST E=$P(YSCLX ,"^",12)
  2319   "RTN","YSC LTST5",138 ,0)
  2320    S YSCLNST 1=$P($$SIT E^VASITE," ^",2),YSCL NSTE=$P($$ SITE^VASIT E,"^",3)
  2321   "RTN","YSC LTST5",139 ,0)
  2322    S YSCLLN= YSCLLN+1,$ P(YSCLX,"^ ",18)=YSCL RET,^TMP($ J,YSCLLN,0 )=YSCLX,YS CLLN=YSCLL N+1,^TMP($ J,YSCLLN,0 )=YSCLPHY_ "^"_YSCLDE MO_"^"_YSC LNSTE_"^"_ YSCLNST1
  2323   "RTN","YSC LTST5",140 ,0)
  2324    I $G(PSGL I1) N PSGL I S PSGLI= PSGLI1
  2325   "RTN","YSC LTST5",141 ,0)
  2326   Z2 I $D(^T MP($J,YSCL LN,0)) D
  2327   "RTN","YSC LTST5",142 ,0)
  2328    .S YCLSCN TR=YCLSCNT R+1,^XTMP( "YSCLTRN", DT,DFN,PSG LI,YCLSCNT R)=^TMP($J ,YSCLLN,0)
  2329   "RTN","YSC LTST5",143 ,0)
  2330    ;site num ber and na me
  2331   "RTN","YSC LTST5",144 ,0)
  2332    S YSCLLLN =YSCLLLN+1 ,^TMP("YSC L",$J,YSCL LLN,0)=$P( ^DPT(DFN,0 ),"^",9)_"    "_$P(^( 0),"^")_"   (R) "_$S( $P(YSCLX," ^",13)="": "NO RX   " ,1:$$FMTE^ XLFDT($P(Y SCLX,"^",9 ),"D"))_"  (W) "
  2333   "RTN","YSC LTST5",145 ,0)
  2334    S ^TMP("Y SCL",$J,YS CLLLN,0)=^ TMP("YSCL" ,$J,YSCLLL N,0)_$S($P (YSCLX,"^" ,3)="":"NO  WBC   ",1 :$$FMTE^XL FDT($P(YSC LX,"^",3), "D"))_" (N ) "_$S($P( YSCLX,"^", 20)="":"NO  NEUT  ",1 :$$FMTE^XL FDT($P(YSC LX,"^",19) ,"D")) ;Q
  2335   "RTN","YSC LTST5",146 ,0)
  2336    I $D(^TMP ("YSCL",$J )) D
  2337   "RTN","YSC LTST5",147 ,0)
  2338    .S YCLSCN TR=YCLSCNT R+1,^XTMP( "YSCLTRN", DT,DFN,PSG LI,YCLSCNT R)=$G(^TMP ("YSCL",$J ,YSCLLLN,0 )) K PSGLI 1
  2339   "RTN","YSC LTST5",148 ,0)
  2340    ;9the pie ce for iss ue date, 1 6th piece  for WBC da te ;RLM 06 /16/05
  2341   "RTN","YSC LTST5",149 ,0)
  2342    S ^XTMP(" YSCLTRN",D T,0)=+$G(^ XTMP("YSCL TRN",DT,0) )+1
  2343   "RTN","YSC LTST5",150 ,0)
  2344    Q
  2345   "RTN","YSC LTST5",151 ,0)
  2346   DOSE ; GET  DOSE
  2347   "RTN","YSC LTST5",152 ,0)
  2348    N YSCLPS5 5,YSCLPTR, YSCLDFN,YS CLDOSE
  2349   "RTN","YSC LTST5",153 ,0)
  2350    S YSCLPS5 5=+$$GET1^ DIQ(100,+P SJOR,33),P SJDOSE=0,Y SCLDFN=DFN     ;+$G(^ OR(100,+PS JOR,4))
  2351   "RTN","YSC LTST5",154 ,0)
  2352    S YSCLDOS E=$$GET1^D IQ(55.06,Y SCLPS55_", "_DFN,120)
  2353   "RTN","YSC LTST5",155 ,0)
  2354    N ARRAY D  LIST^DIC( 55.07,","_ YSCLPS55_" ,"_DFN_"," ,.02,"I",, ,,,,,"ARRA Y")
  2355   "RTN","YSC LTST5",156 ,0)
  2356    F YSCLPTR =1:1 Q:'$D (ARRAY("DI LIST","ID" ,YSCLPTR))   D
  2357   "RTN","YSC LTST5",157 ,0)
  2358    .S PSJDOS E=PSJDOSE+ (ARRAY("DI LIST","ID" ,YSCLPTR,. 02)*YSCLDO SE)
  2359   "RTN","YSC LTST5",158 ,0)
  2360    .D FRQ S  PSJDOSE=PS JDOSE*PSJF RQ
  2361   "RTN","YSC LTST5",159 ,0)
  2362    Q
  2363   "RTN","YSC LTST5",160 ,0)
  2364   FRQ ; GET  ADMIN FREQ UENCY
  2365   "RTN","YSC LTST5",161 ,0)
  2366    N PSJDI
  2367   "RTN","YSC LTST5",162 ,0)
  2368    S PSJFRQ( 0)=+$$GET1 ^DIQ(55.06 ,YSCLPS55_ ","_YSCLDF N_",",42)
  2369   "RTN","YSC LTST5",163 ,0)
  2370    I 'PSJFRQ (0) D   ;G et adminis tration ti mes
  2371   "RTN","YSC LTST5",164 ,0)
  2372    .S PSJFRQ =+$$GET1^D IQ(55.06,Y SCLPS55_", "_YSCLDFN_ ",",41)
  2373   "RTN","YSC LTST5",165 ,0)
  2374    .I $$GET1 ^DIQ(55.06 ,YSCLPS55_ ","_YSCLDF N_",",26)[ "@" D  ; C HECK FOR @  IN DAY OF  WEEK SCHE DULE
  2375   "RTN","YSC LTST5",166 ,0)
  2376    .. S PSJF RQ(0)=1440 /$L(PSJFRQ ,"-") Q                    ; THE N CALCULAT E CORRECT  FRUENCY
  2377   "RTN","YSC LTST5",167 ,0)
  2378    . Q:+$G(P SJFRQ(0))
  2379   "RTN","YSC LTST5",168 ,0)
  2380    . I '$L($ TR(PSJFRQ, "012345678 9-")) Q           ; n o good - w e have non  numeric c haracters
  2381   "RTN","YSC LTST5",169 ,0)
  2382    . F PSJDI =1:1:$L(PS JFRQ,"-")  I $P(PSJFR Q,"-",PSJD I)]"" D       ; If we  have data  in the pi ece
  2383   "RTN","YSC LTST5",170 ,0)
  2384    .. I $L($ P(PSJFRQ," -",PSJDI)) >2,$L($P(P SJFRQ,"-", PSJDI))<5                                              ;
  2385   "RTN","YSC LTST5",171 ,0)
  2386    .. E  S P SJFRQ="" Q                                             ; only all ow 3 or 4  digits
  2387   "RTN","YSC LTST5",172 ,0)
  2388    .. I $L($ P(PSJFRQ," -",PSJDI)) =4 D  Q
  2389   "RTN","YSC LTST5",173 ,0)
  2390    ... I $E( $P(PSJFRQ, "-",PSJDI) ,3,4)<60,$ E($P(PSJFR Q,"-",PSJD I),1,2)<25  S PSJFRQ( 0)=1+PSJFR Q(0) Q
  2391   "RTN","YSC LTST5",174 ,0)
  2392    ... S PSJ FRQ="" Q                                               ; Out of r ange
  2393   "RTN","YSC LTST5",175 ,0)
  2394    .. I $L($ P(PSJFRQ," -",PSJDI)) =3,$E($P(P SJFRQ,"-", PSJDI),2,3 )<60 S PSJ FRQ(0)=1+P SJFRQ(0) Q
  2395   "RTN","YSC LTST5",176 ,0)
  2396    .. S PSJF RQ="" Q                                         ; Out  of range
  2397   "RTN","YSC LTST5",177 ,0)
  2398    S:PSJFRQ( 0)=0 PSJFR Q(0)=1440
  2399   "RTN","YSC LTST5",178 ,0)
  2400    S PSJFRQ= 1440/PSJFR Q(0)
  2401   "RTN","YSC LTST5",179 ,0)
  2402    Q
  2403   "RTN","YSC LTST5",180 ,0)
  2404   XMIT ;
  2405   "RTN","YSC LTST5",181 ,0)
  2406    D START^Y SCLDIS ; T HIS WILL C HECK FOR C LOZAPINE P ATIENTS TH AT NEED TO  BE DISCON TINUED AND  DISCONTIU NE THEM &  SEND MESSA GE TO NCCC
  2407   "RTN","YSC LTST5",182 ,0)
  2408    N YSCLDT, YSCLTRDT ; D NOW^%DTC  S YSCLDT= %-1
  2409   "RTN","YSC LTST5",183 ,0)
  2410    S YSCLLST =$P($G(^XT MP("YSCLDE M",0)),"^" ,4),YSCLTR DT=$P(YSCL LST,".",1)
  2411   "RTN","YSC LTST5",184 ,0)
  2412   REXMIT ;
  2413   "RTN","YSC LTST5",185 ,0)
  2414    N YSCLDT  S %DT="T", X="N-1" D  ^%DT S YSC LDT=Y  ;D  NOW^%DTC S  YSCLDT=%- 1
  2415   "RTN","YSC LTST5",186 ,0)
  2416    I $O(^XTM P("YSCLDEM ",YSCLTRDT )) D
  2417   "RTN","YSC LTST5",187 ,0)
  2418    .;/RBN Be gin modifi cation for  retransmi t
  2419   "RTN","YSC LTST5",188 ,0)
  2420    .I $G(YSC LREX) N DT  S DT=YSCL EDDT
  2421   "RTN","YSC LTST5",189 ,0)
  2422    .;/RBN En d modifica tion for r etransmit
  2423   "RTN","YSC LTST5",190 ,0)
  2424    .N DFN,PS DFN,VA,VAC NTRY,VADM, VAERR,VAPA ,XMDUN,XMD UZ,XMZ,Y,Y SCL,YSCLDE A,YSCLGL,Y SCLJ,YSCLE ND
  2425   "RTN","YSC LTST5",191 ,0)
  2426    .N YSCLLN ,YSCLORD,Y SCLP,YSCLX ,YSRACE,YS RC,YSDEBUG ,YSCLIEN,Y SSTOP,YSCL C,YSCLCNTR ,YSCLNO
  2427   "RTN","YSC LTST5",192 ,0)
  2428    .F  S YSC LTRDT=$O(^ XTMP("YSCL DEM",YSCLT RDT)) Q:'Y SCLTRDT!(Y SCLTRDT'<D T)  D
  2429   "RTN","YSC LTST5",193 ,0)
  2430    ..S YSDEB UG=$$GET1^ DIQ(603.03 ,1,3,"I")   ;$P(^YSCL (603.03,1, 0),"^",3)
  2431   "RTN","YSC LTST5",194 ,0)
  2432    ..K ^TMP( $J),^TMP(" YSCL",$J), ^TMP("YSCL L",$J) S ( YSCLIEN,YS CLLN)=0,YS CLNO=20
  2433   "RTN","YSC LTST5",195 ,0)
  2434    ..S YSCLC NTR=0
  2435   "RTN","YSC LTST5",196 ,0)
  2436    ..S DFN=0  F  S DFN= $O(^XTMP(" YSCLDEM",Y SCLTRDT,DF N)) Q:'DFN   D
  2437   "RTN","YSC LTST5",197 ,0)
  2438    ...S YSCL IEN=$O(^YS CL(603.01, "C",DFN,0) ) Q:'YSCLI EN
  2439   "RTN","YSC LTST5",198 ,0)
  2440    ...S $P(Y SSTOP,",", 8)=8 Q:$$S ^%ZTLOAD
  2441   "RTN","YSC LTST5",199 ,0)
  2442    ...I $L($ $GET1^DIQ( 2,DFN,.01) ) S YSCLC= $$GET1^DIQ (603.01,YS CLIEN,.01)  D GET
  2443   "RTN","YSC LTST5",200 ,0)
  2444    ...S ^XTM P("YSCLDEM ",YSCLTRDT ,DFN,0)=1, YSCLCNTR=Y SCLCNTR+1
  2445   "RTN","YSC LTST5",201 ,0)
  2446    ..D TRANS MIT^YSCLTS T3:YSCLLN
  2447   "RTN","YSC LTST5",202 ,0)
  2448    ..S ^XTMP ("YSCLDEM" ,YSCLTRDT) =YSCLCNTR
  2449   "RTN","YSC LTST5",203 ,0)
  2450    ..K ^TMP( "YSCLL",$J ),^TMP("YS CL",$J)
  2451   "RTN","YSC LTST5",204 ,0)
  2452    .S $P(^XT MP("YSCLDE M",0),"^", 4)=YSCLDT
  2453   "RTN","YSC LTST5",205 ,0)
  2454    ;
  2455   "RTN","YSC LTST5",206 ,0)
  2456    S YSCLCT= 4,YSCLCNTR =1
  2457   "RTN","YSC LTST5",207 ,0)
  2458    ;RBN Modi ficaton fo r retransm it
  2459   "RTN","YSC LTST5",208 ,0)
  2460    I '$G(YSC LREX) S YS CLTRDT=$P( $P($G(^XTM P("YSCLTRN ",0)),"^", 4),"."),YS CLEND=DT
  2461   "RTN","YSC LTST5",209 ,0)
  2462    E  S YSCL TRDT=YSCLS TDT,YSCLEN D=YSCLEDDT
  2463   "RTN","YSC LTST5",210 ,0)
  2464    ;RBN End  modificati on for ret ransmit
  2465   "RTN","YSC LTST5",211 ,0)
  2466    I $O(^XTM P("YSCLTRN ",YSCLTRDT )) D
  2467   "RTN","YSC LTST5",212 ,0)
  2468    .F  S YSC LTRDT=$O(^ XTMP("YSCL TRN",YSCLT RDT)) Q:'Y SCLTRDT!(Y SCLTRDT'<Y SCLEND)  D
  2469   "RTN","YSC LTST5",213 ,0)
  2470    ..S YSCLC NTR=1
  2471   "RTN","YSC LTST5",214 ,0)
  2472    ..D ORDBL D
  2473   "RTN","YSC LTST5",215 ,0)
  2474    ..S YSCLL N=$G(^XTMP ("YSCLTRN" ,YSCLTRDT, 0)) D TRAN SMIT^YSCLT ST2
  2475   "RTN","YSC LTST5",216 ,0)
  2476    ..I $G(YS CLREX) S D T=YSCLEDDT
  2477   "RTN","YSC LTST5",217 ,0)
  2478    ..S ^XTMP ("YSCLTRN" ,YSCLTRDT) =1
  2479   "RTN","YSC LTST5",218 ,0)
  2480    ..K ^TMP( "YSCLL",$J ),^TMP("YS CL",$J)
  2481   "RTN","YSC LTST5",219 ,0)
  2482    .S $P(^XT MP("YSCLTR N",0),"^", 4)=YSCLDT
  2483   "RTN","YSC LTST5",220 ,0)
  2484    Q
  2485   "RTN","YSC LTST5",221 ,0)
  2486    ;
  2487   "RTN","YSC LTST5",222 ,0)
  2488   ORDBLD ;
  2489   "RTN","YSC LTST5",223 ,0)
  2490    N YSCLDFN ,YSCLCNT ; ,YSCLCT
  2491   "RTN","YSC LTST5",224 ,0)
  2492    S YSCLDFN =0 F  S YS CLDFN=$O(^ XTMP("YSCL TRN",YSCLT RDT,YSCLDF N)) Q:'YSC LDFN  D
  2493   "RTN","YSC LTST5",225 ,0)
  2494    .S YSCLOR D=0 F  S Y SCLORD=$O( ^XTMP("YSC LTRN",YSCL TRDT,YSCLD FN,YSCLORD )) Q:'YSCL ORD!(YSCLO RD>DT)  D
  2495   "RTN","YSC LTST5",226 ,0)
  2496    ..S YSCLC NT=0 F  S  YSCLCNT=$O (^XTMP("YS CLTRN",YSC LTRDT,YSCL DFN,YSCLOR D,YSCLCNT) ) Q:'YSCLC NT  D
  2497   "RTN","YSC LTST5",227 ,0)
  2498    ...S:YSCL CNT=1 ^TMP ($J,YSCLCN TR,0)=$G(^ XTMP("YSCL TRN",YSCLT RDT,YSCLDF N,YSCLORD, YSCLCNT)), ^TMP($J,YS CLCNTR,0)= $G(^XTMP(" YSCLTRN",Y SCLTRDT,YS CLDFN,YSCL ORD,YSCLCN T)),YSCLCN TR=YSCLCNT R+1
  2499   "RTN","YSC LTST5",228 ,0)
  2500    ...S:YSCL CNT=2 ^TMP ($J,YSCLCN TR,0)=$G(^ XTMP("YSCL TRN",YSCLT RDT,YSCLDF N,YSCLORD, YSCLCNT)), ^TMP($J,YS CLCNTR,0)= $G(^XTMP(" YSCLTRN",Y SCLTRDT,YS CLDFN,YSCL ORD,YSCLCN T)),YSCLCN TR=YSCLCNT R+1
  2501   "RTN","YSC LTST5",229 ,0)
  2502    ...S:YSCL CNT=3 ^TMP ("YSCL",$J ,YSCLCT,0) =$G(^XTMP( "YSCLTRN", YSCLTRDT,Y SCLDFN,YSC LORD,YSCLC NT)),YSCLC T=YSCLCT+1
  2503   "RTN","YSC LTST5",230 ,0)
  2504    Q
  2505   "RTN","YSC LTST5",231 ,0)
  2506    ;
  2507   "RTN","YSC LTST5",232 ,0)
  2508   REX ; Alte rnate retr ansmit
  2509   "RTN","YSC LTST5",233 ,0)
  2510     ; First  get the da te range t o be resen t
  2511   "RTN","YSC LTST5",234 ,0)
  2512     N DA,DAT E,DFN,DIR, DTRUT,YSCL REX,X,Y,YS CLCT,YSCLD T,YSCLLN,Y SCLTRDT,YS CLEDDT,YSC LSTDT
  2513   "RTN","YSC LTST5",235 ,0)
  2514     K ^TMP($ J),^TMP("Y SCL")
  2515   "RTN","YSC LTST5",236 ,0)
  2516     S DIR(0) ="D"
  2517   "RTN","YSC LTST5",237 ,0)
  2518     S DIR("A ")="Enter  the starti ng date"
  2519   "RTN","YSC LTST5",238 ,0)
  2520     S DIR("? ",1)="Ente r the star ting date  of the ord ers you wa nt"
  2521   "RTN","YSC LTST5",239 ,0)
  2522     S DIR("? ")="to ret ransmit"
  2523   "RTN","YSC LTST5",240 ,0)
  2524     D ^DIR
  2525   "RTN","YSC LTST5",241 ,0)
  2526     I $D(DIR UT) W !,"A borting re transmit", ! Q
  2527   "RTN","YSC LTST5",242 ,0)
  2528     S YSCLST DT=Y
  2529   "RTN","YSC LTST5",243 ,0)
  2530     K Y
  2531   "RTN","YSC LTST5",244 ,0)
  2532     S DIR("A ")="Enter  the ending  date"
  2533   "RTN","YSC LTST5",245 ,0)
  2534     S DIR("? ",1)="Ente r the endi ng date of  the order s you want "
  2535   "RTN","YSC LTST5",246 ,0)
  2536     S DIR("? ")="to ret ransmit"
  2537   "RTN","YSC LTST5",247 ,0)
  2538     D ^DIR
  2539   "RTN","YSC LTST5",248 ,0)
  2540     I $D(DIR UT) W !,"A borting re transmit", ! Q
  2541   "RTN","YSC LTST5",249 ,0)
  2542     S YSCLED DT=Y
  2543   "RTN","YSC LTST5",250 ,0)
  2544     S X1=YSC LEDDT,X2=Y SCLSTDT D  ^%DTC I X< 0 W !,"The  ending da te cannot  be before  the start  date!",! G  REX
  2545   "RTN","YSC LTST5",251 ,0)
  2546     ;
  2547   "RTN","YSC LTST5",252 ,0)
  2548     ;D NOW^% DTC S YSCL DT=%-1
  2549   "RTN","YSC LTST5",253 ,0)
  2550     S YSCLRE X=1
  2551   "RTN","YSC LTST5",254 ,0)
  2552     S X1=YSC LSTDT,X2=- 1 D C^%DTC  S YSCLSTD T=X
  2553   "RTN","YSC LTST5",255 ,0)
  2554     S YSCLTR DT=YSCLSTD T,X1=YSCLE DDT,X2=1 D  C^%DTC S  YSCLEDDT=X
  2555   "RTN","YSC LTST5",256 ,0)
  2556     D REXMIT
  2557   "RTN","YSC LTST5",257 ,0)
  2558     Q
  2559   "RTN","YSC LTST6")
  2560   0^6^B33307 720
  2561   "RTN","YSC LTST6",1,0 )
  2562   YSCLTST6 ; HINOI/RBN- TRANSMISSI ON FOR REA L-TIME CLO ZAPINE ORD ERS (OUTPA TIENT ;Jul  14, 2017@ 09:00:07
  2563   "RTN","YSC LTST6",2,0 )
  2564    ;;5.01;ME NTAL HEALT H;**122**; Dec 30, 19 94;Build 6 1
  2565   "RTN","YSC LTST6",3,0 )
  2566    ; Referen ce to $$SI TE^VASITE  supported  by IA #101 12
  2567   "RTN","YSC LTST6",4,0 )
  2568    ; Referen ce to ^PSR X supporte d by IA #7 80
  2569   "RTN","YSC LTST6",5,0 )
  2570    ; Referen ce to ^PS( 52.52 supp orted by I A #782
  2571   "RTN","YSC LTST6",6,0 )
  2572    ; Referen ce to ^PS( 55 support ed by IA # 787
  2573   "RTN","YSC LTST6",7,0 )
  2574    ; Referen ce to ^VA( 200 suppor ted by IA  #10060
  2575   "RTN","YSC LTST6",8,0 )
  2576    ; Referen ce to ^DPT  supported  by IA #10 035
  2577   "RTN","YSC LTST6",9,0 )
  2578    ;
  2579   "RTN","YSC LTST6",10, 0)
  2580    ; Build o utpatient  clozapine  data for t ransmision
  2581   "RTN","YSC LTST6",11, 0)
  2582    N PSOPAT, PSOIOF,YSC LCNTR,YSCL DFN,YSEND, X,X1,X2
  2583   "RTN","YSC LTST6",12, 0)
  2584    S YSCLRET =""
  2585   "RTN","YSC LTST6",13, 0)
  2586    S PSOPAT= DFN
  2587   "RTN","YSC LTST6",14, 0)
  2588    S PSODFN= DFN
  2589   "RTN","YSC LTST6",15, 0)
  2590    S PSOIOF= IOF
  2591   "RTN","YSC LTST6",16, 0)
  2592    S YSCLCNT R=0
  2593   "RTN","YSC LTST6",17, 0)
  2594    S X1=DT,X 2=365 D C^ %DTC S YSE ND=X
  2595   "RTN","YSC LTST6",18, 0)
  2596    S $P(^XTM P("YSCLTRN ",0),"^",1 )=YSEND,$P (^XTMP("YS CLTRN",0), "^",2)=DT  ;_"^CLOZAP INE DAILY  ROLLUP DAT A"
  2597   "RTN","YSC LTST6",19, 0)
  2598    S:'$G(^XT MP("YSCLTR N",DT)) ^X TMP("YSCLT RN",DT)=0
  2599   "RTN","YSC LTST6",20, 0)
  2600    ; Get pat ient and f acility de mographic  data
  2601   "RTN","YSC LTST6",21, 0)
  2602    D DMG^YSC LTST5
  2603   "RTN","YSC LTST6",22, 0)
  2604    D DMG1^YS CLTST5
  2605   "RTN","YSC LTST6",23, 0)
  2606    D GET^YSC LTST5
  2607   "RTN","YSC LTST6",24, 0)
  2608    S DFN=PSO DFN
  2609   "RTN","YSC LTST6",25, 0)
  2610    S YSCL1=P SONEW("IRX N")
  2611   "RTN","YSC LTST6",26, 0)
  2612    S YSCLLD= PSOX("STOP  DATE")
  2613   "RTN","YSC LTST6",27, 0)
  2614    D CHECK
  2615   "RTN","YSC LTST6",28, 0)
  2616    D LOAD
  2617   "RTN","YSC LTST6",29, 0)
  2618    S IOF=PSO IOF
  2619   "RTN","YSC LTST6",30, 0)
  2620    D END
  2621   "RTN","YSC LTST6",31, 0)
  2622    Q
  2623   "RTN","YSC LTST6",32, 0)
  2624    ;
  2625   "RTN","YSC LTST6",33, 0)
  2626   CHECK ;for  data to s end
  2627   "RTN","YSC LTST6",34, 0)
  2628    K ^TMP($J ),^TMP("YS CL",$J) D  DEM^VADPT
  2629   "RTN","YSC LTST6",35, 0)
  2630    S YSCLX=$ E($P(VADM( 1),",",2)) _$E(VADM(1 ))_"^"_$P( VADM(2),"^ ")
  2631   "RTN","YSC LTST6",36, 0)
  2632    S YSCLPHY ="",$P(YSC LX,"^",6)= $P(YSCLDEM O,"^",5),$ P(YSCLX,"^ ",16)=DT
  2633   "RTN","YSC LTST6",37, 0)
  2634    N ARRAY D  LIST^DIC( 603.01,,1, "I",,,DFN, "C",,,"ARR AY")
  2635   "RTN","YSC LTST6",38, 0)
  2636    S YSCLT=0 ,$P(YSCLX, "^",11)=AR RAY("DILIS T","ID",1, .01)
  2637   "RTN","YSC LTST6",39, 0)
  2638    S $P(YSST OP,",",3)= 3 Q:$$S^%Z TLOAD
  2639   "RTN","YSC LTST6",40, 0)
  2640    S YSCLLD= +$$GET1^DI Q(55,DFN,5 8,"I") ;$P (^PS(55,DF N,"SAND"), U,6) ;/RBN  ADDED 04/ 12/2016
  2641   "RTN","YSC LTST6",41, 0)
  2642    K PNM,SEX ,DOB,AGE,S SN I 'VAER R S PNM=VA DM(1),SEX= $P(VADM(5) ,U),DOB=$P (VADM(3),U ),AGE=VADM (4),SSN=$P (VADM(2),U )
  2643   "RTN","YSC LTST6",42, 0)
  2644    I YSCLLD= 0,$$GET1^D IQ(55,DFN, 54,"I")="P " Q  ;no t ransmit fo r pretreat ment
  2645   "RTN","YSC LTST6",43, 0)
  2646    S YSCLT=1 ,YSCLRX=$$ GET1^DIQ(5 2,YSCL1,4, "I") ;we'v e got Prov ider
  2647   "RTN","YSC LTST6",44, 0)
  2648    S YSCL=$O (YSCLA("") ) I 'YSCL  D LAB S YS CLT=1
  2649   "RTN","YSC LTST6",45, 0)
  2650    S YSCLD=+ $$GET1^DIQ (52,YSCL1, 20,"I"),$P (YSCLX,"^" ,10)=$$GET 1^DIQ(59,Y SCLD,1),$P (YSCLX,"^" ,12)=$$GET 1^DIQ(59,Y SCLD,2)
  2651   "RTN","YSC LTST6",46, 0)
  2652    ;site DEA # (p10), s ite pointe r (p12)
  2653   "RTN","YSC LTST6",47, 0)
  2654    ;here if  active
  2655   "RTN","YSC LTST6",48, 0)
  2656    S $P(YSCL X,"^",5)=" A"  ;,$P(^ PS(55,DFN, "SAND"),"^ ",2)="A" ; force acti ve
  2657   "RTN","YSC LTST6",49, 0)
  2658    S $P(YSCL X,"^",13)= 1,$P(YSCLX ,"^",9)=$$ GET1^DIQ(5 2,YSCL1,1, "I")
  2659   "RTN","YSC LTST6",50, 0)
  2660    K YSCLD1  D GETS^DIQ (52,YSCL1, "301;302;3 03;304","I ","YSCLD1" )
  2661   "RTN","YSC LTST6",51, 0)
  2662    I $D(YSCL D1) N REC  D  K YSCLD 1 S YSCLD1 =REC
  2663   "RTN","YSC LTST6",52, 0)
  2664    .S REC=""  F I=301:1 :304 S REC =REC_YSCLD 1(52,YSCL1 _",",I,"I" )_"^"
  2665   "RTN","YSC LTST6",53, 0)
  2666    ;/MZR Beg in modific ations for  'New Orde r Created  by editing '
  2667   "RTN","YSC LTST6",54, 0)
  2668    I '$D(YSC LD1),$$GET 1^DIQ(52,Y SCL1,12)[" New Order  Created by  editing R x # " D
  2669   "RTN","YSC LTST6",55, 0)
  2670    .N PHRX,P HRX0,ARR,Y SCLD2 S PH RX=YSCL1
  2671   "RTN","YSC LTST6",56, 0)
  2672    .F  Q:$$G ET1^DIQ(52 ,PHRX,12)' ["New Orde r Created  by editing  Rx # "!$L ($$GET1^DI Q(52,PHRX, 301))  D
  2673   "RTN","YSC LTST6",57, 0)
  2674    ..S PHRX0 =+$P($$GET 1^DIQ(52,P HRX,12),"R x # ",2)
  2675   "RTN","YSC LTST6",58, 0)
  2676    ..I $L($$ GET1^DIQ(5 2,PHRX0,.0 1)) S ARR( PHRX0,PHRX )="",PHRX= PHRX0 Q
  2677   "RTN","YSC LTST6",59, 0)
  2678    .I $L($$G ET1^DIQ(52 ,PHRX,301) ) N REC D   K YSCLD1  S YSCLD1=R EC
  2679   "RTN","YSC LTST6",60, 0)
  2680    ..D GETS^ DIQ(52,PHR X,"301;302 ;303;304", "I","YSCLD 1")
  2681   "RTN","YSC LTST6",61, 0)
  2682    ..S REC=" " F I=301: 1:304 S RE C=REC_YSCL D1(52,PHRX _",",I,"I" )_"^"
  2683   "RTN","YSC LTST6",62, 0)
  2684    ..F  S PH RX0=$O(ARR (PHRX,""))  Q:PHRX0=" "  D  S PH RX=PHRX0
  2685   "RTN","YSC LTST6",63, 0)
  2686    ...S DIE= "^PSRX(",D A=PHRX0,DR ="" F I=1: 1:4 S DR=D R_(300+I)_ "////"_$P( REC,"^",I) _";"
  2687   "RTN","YSC LTST6",64, 0)
  2688    ...D ^DIE
  2689   "RTN","YSC LTST6",65, 0)
  2690    ;/MZR End  modificat ions for ' New Order  Created by  editing'
  2691   "RTN","YSC LTST6",66, 0)
  2692    S $P(YSCL X,"^",8)=+ YSCLD1
  2693   "RTN","YSC LTST6",67, 0)
  2694    ;status(p 5),dosage( p8),rx cou nt(p13),is sue date(p 9)
  2695   "RTN","YSC LTST6",68, 0)
  2696    K ARRAY D  LIST^DIC( 52.52,,"3; 4;5","I",, ,YSCL1,"A" ,,,"ARRAY" )
  2697   "RTN","YSC LTST6",69, 0)
  2698    I $D(ARRA Y("DILIDT" ,"ID",1))  S $P(YSCLX ,"^",14)=A RRAY("DILI ST","ID",1 ,4) D
  2699   "RTN","YSC LTST6",70, 0)
  2700    .I ARRAY( "DILIST"," ID",1,4)=9   D
  2701   "RTN","YSC LTST6",71, 0)
  2702    ..N YSCLT MP6 S YSCL TMP6=ARRAY ("DILIST", "ID",1,5)
  2703   "RTN","YSC LTST6",72, 0)
  2704    ..I YSCLT MP6["Weath er Related  Condition s" S $P(YS CLX,"^",14 )=91
  2705   "RTN","YSC LTST6",73, 0)
  2706    ..I YSCLT MP6["Mail  Order Dela y" S $P(YS CLX,"^",14 )=92
  2707   "RTN","YSC LTST6",74, 0)
  2708    ..I YSCLT MP6["Inpat ient Going  On Leave"  S $P(YSCL X,"^",14)= 93
  2709   "RTN","YSC LTST6",75, 0)
  2710    .S YSCLLO =+ARRAY("D ILIST","ID ",1,3),$P( YSCLX,"^", 15)=$$GET1 ^DIQ(200,Y SCLLO,.01)
  2711   "RTN","YSC LTST6",76, 0)
  2712    ;lockout  reason (p1 4), approv ing offici al (p15)
  2713   "RTN","YSC LTST6",77, 0)
  2714    S $P(YSST OP,",",4)= 4 Q:$$S^%Z TLOAD
  2715   "RTN","YSC LTST6",78, 0)
  2716    S YSCLPHY =$$GET1^DI Q(200,+YSC LRX,.01),$ P(YSCLX,"^ ",7)=$$GET 1^DIQ(200, +YSCLRX,53 .2)  ;,YSC LPHY=$P(YS CLPHY,"^")
  2717   "RTN","YSC LTST6",79, 0)
  2718    S $P(YSCL X,"^",4)=$ P(YSCLD1," ^",2),$P(Y SCLX,"^",3 )=$P(YSCLD 1,"^",3) I  $P(YSCLD1 ,"^",2)]"" ,$P(YSCLD1 ,"^",3)'>Y SCLED,$P(Y SCLD1,"^", 3)'<YSCLM7  S YSCLWBC =1
  2719   "RTN","YSC LTST6",80, 0)
  2720    ;wbc(p4), date(p3)
  2721   "RTN","YSC LTST6",81, 0)
  2722    ; add if  prescripti on on same  day for d ifferent d rug and di fferent do se
  2723   "RTN","YSC LTST6",82, 0)
  2724    S $P(YSCL X,"^",21)= $$GET1^DIQ (52,YSCL1, 27) ;Add N DC to stri ng
  2725   "RTN","YSC LTST6",83, 0)
  2726    N PSORD S  PSORD=$$G ET1^DIQ(52 ,YSCL1,39. 3,"I") S:' PSORD PSOR D=YSCL1
  2727   "RTN","YSC LTST6",84, 0)
  2728    S PSOLOGD T=PSOX("LO GIN DATE")
  2729   "RTN","YSC LTST6",85, 0)
  2730    S ^XTMP(" YSCLTRN",D T,DFN,PSOL OGDT,YSCLC NTR)="0^O^ "_PSORD
  2731   "RTN","YSC LTST6",86, 0)
  2732    S YSCLCNT R=YSCLCNTR +1
  2733   "RTN","YSC LTST6",87, 0)
  2734    S ^XTMP(" YSCLTRN",D T,DFN,PSOL OGDT,YSCLC NTR)=YSCLX
  2735   "RTN","YSC LTST6",88, 0)
  2736    Q
  2737   "RTN","YSC LTST6",89, 0)
  2738    ;
  2739   "RTN","YSC LTST6",90, 0)
  2740   ORDSET(PSO RD) ; Sett ing and Or der # inst ead of PSR X #
  2741   "RTN","YSC LTST6",91, 0)
  2742    S $P(^XTM P("YSCLTRN ",DT,DFN,P SOLOGDT,0) ,"^",3)=PS ORD
  2743   "RTN","YSC LTST6",92, 0)
  2744    Q
  2745   "RTN","YSC LTST6",93, 0)
  2746    ;
  2747   "RTN","YSC LTST6",94, 0)
  2748   LAB ;get m ost recent
  2749   "RTN","YSC LTST6",95, 0)
  2750    S $P(YSST OP,",",5)= 5 Q:$$S^%Z TLOAD
  2751   "RTN","YSC LTST6",96, 0)
  2752    S YSCLLDT ="",J=9999 998-YSCLED ,K=9999998 -YSCLM7 I  $P(YSCLX," ^",9) S J= 9999998-$P (YSCLX,"^" ,9)
  2753   "RTN","YSC LTST6",97, 0)
  2754    S YSCLR=$ $CL^YSCLTS T2(DFN) D   ;Set 3,4, 17,19,20,2 2,23
  2755   "RTN","YSC LTST6",98, 0)
  2756    . S $P(YS CLX,"^",3) =$P(YSCLR, "^",6)  ;W BC Date
  2757   "RTN","YSC LTST6",99, 0)
  2758    . S $P(YS CLX,"^",4) =$P(YSCLR, "^",2)  ;W BC Results
  2759   "RTN","YSC LTST6",100 ,0)
  2760    . S $P(YS CLX,"^",19 )=$P(YSCLR ,"^",6) ;A NC Date
  2761   "RTN","YSC LTST6",101 ,0)
  2762    . S $P(YS CLX,"^",20 )=$P(YSCLR ,"^",4) ;A NC Results
  2763   "RTN","YSC LTST6",102 ,0)
  2764    . S $P(YS CLX,"^",22 )=$P(YSCLR ,"^",3) ;W BC Name
  2765   "RTN","YSC LTST6",103 ,0)
  2766    . S $P(YS CLX,"^",23 )=$P(YSCLR ,"^",5) ;A NC Name
  2767   "RTN","YSC LTST6",104 ,0)
  2768    Q
  2769   "RTN","YSC LTST6",105 ,0)
  2770    ;
  2771   "RTN","YSC LTST6",106 ,0)
  2772   LOAD ;
  2773   "RTN","YSC LTST6",107 ,0)
  2774    S $P(YSST OP,",",6)= 6 Q:$$S^%Z TLOAD
  2775   "RTN","YSC LTST6",108 ,0)
  2776    S YSCLNST 1=$P($$SIT E^VASITE," ^",2),YSCL NSTE=$P($$ SITE^VASIT E,"^",3)
  2777   "RTN","YSC LTST6",109 ,0)
  2778    S YSCLLN= YSCLLN+1,$ P(YSCLX,"^ ",18)=YSCL RET,^TMP($ J,YSCLLN,0 )=YSCLX,YS CLLN=YSCLL N+1,^TMP($ J,YSCLLN,0 )=YSCLPHY_ "^"_YSCLDE MO_"^"_YSC LNSTE_"^"_ YSCLNST1
  2779   "RTN","YSC LTST6",110 ,0)
  2780    S YSCLCNT R=YSCLCNTR +1
  2781   "RTN","YSC LTST6",111 ,0)
  2782    S ^XTMP(" YSCLTRN",D T,DFN,PSOX ("LOGIN DA TE"),YSCLC NTR)=^TMP( $J,YSCLLN, 0)
  2783   "RTN","YSC LTST6",112 ,0)
  2784    ;site num ber and na me
  2785   "RTN","YSC LTST6",113 ,0)
  2786    S YSCLLLN =YSCLLLN+1 ,^TMP("YSC L",$J,YSCL LLN,0)=$P( ^DPT(DFN,0 ),"^",9)_"    "_$P(^( 0),"^")_"   (R) "_$S( $P(YSCLX," ^",13)="": "NO RX   " ,1:$$FMTE^ XLFDT($P(Y SCLX,"^",9 ),"D"))_"  (W) "
  2787   "RTN","YSC LTST6",114 ,0)
  2788    S ^TMP("Y SCL",$J,YS CLLLN,0)=^ TMP("YSCL" ,$J,YSCLLL N,0)_$S($P (YSCLX,"^" ,3)="":"NO  WBC   ",1 :$$FMTE^XL FDT($P(YSC LX,"^",3), "D"))_" (N ) "_$S($P( YSCLX,"^", 20)="":"NO  NEUT  ",1 :$$FMTE^XL FDT($P(YSC LX,"^",19) ,"D"))
  2789   "RTN","YSC LTST6",115 ,0)
  2790    S YSCLCNT R=YSCLCNTR +1
  2791   "RTN","YSC LTST6",116 ,0)
  2792    S ^XTMP(" YSCLTRN",D T,DFN,PSOX ("LOGIN DA TE"),YSCLC NTR)=^TMP( "YSCL",$J, YSCLLLN,0)
  2793   "RTN","YSC LTST6",117 ,0)
  2794    ; Increme nt the cou nter for t he date an d the give n patient
  2795   "RTN","YSC LTST6",118 ,0)
  2796    S YSCLCNT R=YSCLCNTR +1
  2797   "RTN","YSC LTST6",119 ,0)
  2798    S ^XTMP(" YSCLTRN",D T,0)=+$G(^ XTMP("YSCL TRN",DT,0) )+1
  2799   "RTN","YSC LTST6",120 ,0)
  2800    Q
  2801   "RTN","YSC LTST6",121 ,0)
  2802    ;
  2803   "RTN","YSC LTST6",122 ,0)
  2804   END ; Clea n up
  2805   "RTN","YSC LTST6",123 ,0)
  2806    K ^TMP("Y SCL",$J),^ TMP("YSCLL ",$J)
  2807   "RTN","YSC LTST6",124 ,0)
  2808    Q
  2809   "RTN","YSC LTST6",125 ,0)
  2810    ;
  2811   "VER")
  2812   8.0^22.2
  2813   "^DD",603. 03,603.03, 8,0)
  2814   RX LAB PRO D LISTENER ^FJ40^^0;7 ^K:$L(X)>4 0!($L(X)<5 ) X
  2815   "^DD",603. 03,603.03, 8,3)
  2816   Answer mus t be 5-40  characters  in length .
  2817   "^DD",603. 03,603.03, 8,21,0)
  2818   ^^2^2^3170 509^
  2819   "^DD",603. 03,603.03, 8,21,1,0)
  2820   This is th e server a ddress whe re the Clo zapine ord er informa tion and 
  2821   "^DD",603. 03,603.03, 8,21,2,0)
  2822   patient bl ood test r esults get  sent
  2823   "^DD",603. 03,603.03, 8,"DT")
  2824   3170509
  2825   "^DD",603. 03,603.03, 9,0)
  2826   DEMOGRAPHI C PROD LIS TENER^FJ40 ^^0;8^K:$L (X)>40!($L (X)<5) X
  2827   "^DD",603. 03,603.03, 9,3)
  2828   Answer mus t be 5-40  characters  in length .
  2829   "^DD",603. 03,603.03, 9,21,0)
  2830   ^^2^2^3170 509^
  2831   "^DD",603. 03,603.03, 9,21,1,0)
  2832   This is th e server a ddress whe re the Clo zapine Pat ient demog raphic 
  2833   "^DD",603. 03,603.03, 9,21,2,0)
  2834   informatio n get sent
  2835   "^DD",603. 03,603.03, 9,"DT")
  2836   3170509
  2837   "^DD",603. 03,603.03, 10,0)
  2838   RX LAB TES T LISTENER ^FJ40^^0;9 ^K:$L(X)>4 0!($L(X)<5 ) X
  2839   "^DD",603. 03,603.03, 10,3)
  2840   Answer mus t be 5-40  characters  in length .
  2841   "^DD",603. 03,603.03, 10,21,0)
  2842   ^^2^2^3170 509^
  2843   "^DD",603. 03,603.03, 10,21,1,0)
  2844   This is th e test ser ver addres s ot MailM an group w here the C lozapine 
  2845   "^DD",603. 03,603.03, 10,21,2,0)
  2846   order info rmation an d Patient  blood test  results g et sent
  2847   "^DD",603. 03,603.03, 10,"DT")
  2848   3170509
  2849   "^DD",603. 03,603.03, 11,0)
  2850   DEMOGRAPHI C TEST LIS TENER^FJ40 ^^0;10^K:$ L(X)>40!($ L(X)<5) X
  2851   "^DD",603. 03,603.03, 11,3)
  2852   Answer mus t be 5-40  characters  in length .
  2853   "^DD",603. 03,603.03, 11,21,0)
  2854   ^^2^2^3170 509^
  2855   "^DD",603. 03,603.03, 11,21,1,0)
  2856   This is th e test ser ver addres s or MailM an group w here the C lozapine 
  2857   "^DD",603. 03,603.03, 11,21,2,0)
  2858   Patient de mographic  informatio n get sent
  2859   "^DD",603. 03,603.03, 11,"DT")
  2860   3170509
  2861   **INSTALL  NAME**
  2862   PSO*7.0*45 7
  2863   "BLD",9849 ,0)
  2864   PSO*7.0*45 7^OUTPATIE NT PHARMAC Y^0^317112 9^y
  2865   "BLD",9849 ,1,0)
  2866   ^^1^1^3160 726^^
  2867   "BLD",9849 ,1,1,0)
  2868   MENTAL HEA LTH NCC PR OJECT 5.01
  2869   "BLD",9849 ,4,0)
  2870   ^9.64PA^52 .52^2
  2871   "BLD",9849 ,4,52.52,0 )
  2872   52.52
  2873   "BLD",9849 ,4,52.52,2 ,0)
  2874   ^9.641^52. 52^1
  2875   "BLD",9849 ,4,52.52,2 ,52.52,0)
  2876   CLOZAPINE  PRESCRIPTI ON OVERRID ES  (File- top level)
  2877   "BLD",9849 ,4,52.52,2 ,52.52,1,0 )
  2878   ^9.6411^5^ 3
  2879   "BLD",9849 ,4,52.52,2 ,52.52,1,4 ,0)
  2880   REASON FOR  OVERRIDE
  2881   "BLD",9849 ,4,52.52,2 ,52.52,1,5 ,0)
  2882   COMMENTS
  2883   "BLD",9849 ,4,52.52,2 ,52.52,1,6 ,0)
  2884   SECOND PHA RMACIST
  2885   "BLD",9849 ,4,52.52,2 22)
  2886   y^y^p^^^^n ^^n
  2887   "BLD",9849 ,4,52.52,2 24)
  2888  
  2889   "BLD",9849 ,4,52.54,0 )
  2890   52.54
  2891   "BLD",9849 ,4,52.54,2 22)
  2892   y^y^f^^n^^ y^a^n
  2893   "BLD",9849 ,4,"APDD", 52.52,52.5 2)
  2894  
  2895   "BLD",9849 ,4,"APDD", 52.52,52.5 2,4)
  2896  
  2897   "BLD",9849 ,4,"APDD", 52.52,52.5 2,5)
  2898  
  2899   "BLD",9849 ,4,"APDD", 52.52,52.5 2,6)
  2900  
  2901   "BLD",9849 ,4,"B",52. 52,52.52)
  2902  
  2903   "BLD",9849 ,4,"B",52. 54,52.54)
  2904  
  2905   "BLD",9849 ,6.3)
  2906   65
  2907   "BLD",9849 ,"ABPKG")
  2908   n
  2909   "BLD",9849 ,"KRN",0)
  2910   ^9.67PA^77 9.2^20
  2911   "BLD",9849 ,"KRN",.4, 0)
  2912   .4
  2913   "BLD",9849 ,"KRN",.40 1,0)
  2914   .401
  2915   "BLD",9849 ,"KRN",.40 2,0)
  2916   .402
  2917   "BLD",9849 ,"KRN",.40 3,0)
  2918   .403
  2919   "BLD",9849 ,"KRN",.5, 0)
  2920   .5
  2921   "BLD",9849 ,"KRN",.84 ,0)
  2922   .84
  2923   "BLD",9849 ,"KRN",3.6 ,0)
  2924   3.6
  2925   "BLD",9849 ,"KRN",3.8 ,0)
  2926   3.8
  2927   "BLD",9849 ,"KRN",9.2 ,0)
  2928   9.2
  2929   "BLD",9849 ,"KRN",9.8 ,0)
  2930   9.8
  2931   "BLD",9849 ,"KRN",9.8 ,"NM",0)
  2932   ^9.68A^14^ 13
  2933   "BLD",9849 ,"KRN",9.8 ,"NM",1,0)
  2934   PSOCLO1^^0 ^B14925761 4
  2935   "BLD",9849 ,"KRN",9.8 ,"NM",2,0)
  2936   PSORENW0^^ 0^B9870913 9
  2937   "BLD",9849 ,"KRN",9.8 ,"NM",3,0)
  2938   PSON52^^0^ B109475574
  2939   "BLD",9849 ,"KRN",9.8 ,"NM",4,0)
  2940   PSOCLUTL^^ 0^B8804153 6
  2941   "BLD",9849 ,"KRN",9.8 ,"NM",5,0)
  2942   PSODRG^^0^ B92777437
  2943   "BLD",9849 ,"KRN",9.8 ,"NM",7,0)
  2944   PSOORED5^^ 0^B6831719 8
  2945   "BLD",9849 ,"KRN",9.8 ,"NM",8,0)
  2946   PSODIR2^^0 ^B32135372
  2947   "BLD",9849 ,"KRN",9.8 ,"NM",9,0)
  2948   PSODIR1^^0 ^B98465624
  2949   "BLD",9849 ,"KRN",9.8 ,"NM",10,0 )
  2950   PSOORED1^^ 0^B7919315 9
  2951   "BLD",9849 ,"KRN",9.8 ,"NM",11,0 )
  2952   PSORENW4^^ 0^B7597655 9
  2953   "BLD",9849 ,"KRN",9.8 ,"NM",12,0 )
  2954   PSONEW^^0^ B38956670
  2955   "BLD",9849 ,"KRN",9.8 ,"NM",13,0 )
  2956   PSONEW1^^0 ^B21636420
  2957   "BLD",9849 ,"KRN",9.8 ,"NM",14,0 )
  2958   PSOORNEW^^ 0^B9855257 7
  2959   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSOCLO1", 1)
  2960  
  2961   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSOCLUTL" ,4)
  2962  
  2963   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSODIR1", 9)
  2964  
  2965   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSODIR2", 8)
  2966  
  2967   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSODRG",5 )
  2968  
  2969   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSON52",3 )
  2970  
  2971   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSONEW",1 2)
  2972  
  2973   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSONEW1", 13)
  2974  
  2975   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSOORED1" ,10)
  2976  
  2977   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSOORED5" ,7)
  2978  
  2979   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSOORNEW" ,14)
  2980  
  2981   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSORENW0" ,2)
  2982  
  2983   "BLD",9849 ,"KRN",9.8 ,"NM","B", "PSORENW4" ,11)
  2984  
  2985   "BLD",9849 ,"KRN",19, 0)
  2986   19
  2987   "BLD",9849 ,"KRN",19, "NM",0)
  2988   ^9.68A^5^5
  2989   "BLD",9849 ,"KRN",19, "NM",1,0)
  2990   PSOL MANAG ER^^0
  2991   "BLD",9849 ,"KRN",19, "NM",2,0)
  2992   PSOL REGIS TER PATIEN T^^0
  2993   "BLD",9849 ,"KRN",19, "NM",3,0)
  2994   PSOLAB LIS T^^0
  2995   "BLD",9849 ,"KRN",19, "NM",4,0)
  2996   PSOLIST OV ERRIDES^^0
  2997   "BLD",9849 ,"KRN",19, "NM",5,0)
  2998   PSOL EDIT^ ^0
  2999   "BLD",9849 ,"KRN",19, "NM","B"," PSOL EDIT" ,5)
  3000  
  3001   "BLD",9849 ,"KRN",19, "NM","B"," PSOL MANAG ER",1)
  3002  
  3003   "BLD",9849 ,"KRN",19, "NM","B"," PSOL REGIS TER PATIEN T",2)
  3004  
  3005   "BLD",9849 ,"KRN",19, "NM","B"," PSOLAB LIS T",3)
  3006  
  3007   "BLD",9849 ,"KRN",19, "NM","B"," PSOLIST OV ERRIDES",4 )
  3008  
  3009   "BLD",9849 ,"KRN",19. 1,0)
  3010   19.1
  3011   "BLD",9849 ,"KRN",101 ,0)
  3012   101
  3013   "BLD",9849 ,"KRN",409 .61,0)
  3014   409.61
  3015   "BLD",9849 ,"KRN",771 ,0)
  3016   771
  3017   "BLD",9849 ,"KRN",779 .2,0)
  3018   779.2
  3019   "BLD",9849 ,"KRN",870 ,0)
  3020   870
  3021   "BLD",9849 ,"KRN",898 9.51,0)
  3022   8989.51
  3023   "BLD",9849 ,"KRN",898 9.52,0)
  3024   8989.52
  3025   "BLD",9849 ,"KRN",899 4,0)
  3026   8994
  3027   "BLD",9849 ,"KRN","B" ,.4,.4)
  3028  
  3029   "BLD",9849 ,"KRN","B" ,.401,.401 )
  3030  
  3031   "BLD",9849 ,"KRN","B" ,.402,.402 )
  3032  
  3033   "BLD",9849 ,"KRN","B" ,.403,.403 )
  3034  
  3035   "BLD",9849 ,"KRN","B" ,.5,.5)
  3036  
  3037   "BLD",9849 ,"KRN","B" ,.84,.84)
  3038  
  3039   "BLD",9849 ,"KRN","B" ,3.6,3.6)
  3040  
  3041   "BLD",9849 ,"KRN","B" ,3.8,3.8)
  3042  
  3043   "BLD",9849 ,"KRN","B" ,9.2,9.2)
  3044  
  3045   "BLD",9849 ,"KRN","B" ,9.8,9.8)
  3046  
  3047   "BLD",9849 ,"KRN","B" ,19,19)
  3048  
  3049   "BLD",9849 ,"KRN","B" ,19.1,19.1 )
  3050  
  3051   "BLD",9849 ,"KRN","B" ,101,101)
  3052  
  3053   "BLD",9849 ,"KRN","B" ,409.61,40 9.61)
  3054  
  3055   "BLD",9849 ,"KRN","B" ,771,771)
  3056  
  3057   "BLD",9849 ,"KRN","B" ,779.2,779 .2)
  3058  
  3059   "BLD",9849 ,"KRN","B" ,870,870)
  3060  
  3061   "BLD",9849 ,"KRN","B" ,8989.51,8 989.51)
  3062  
  3063   "BLD",9849 ,"KRN","B" ,8989.52,8 989.52)
  3064  
  3065   "BLD",9849 ,"KRN","B" ,8994,8994 )
  3066  
  3067   "BLD",9849 ,"QDEF")
  3068   ^^^^NO^^^^ YES^^NO
  3069   "BLD",9849 ,"QUES",0)
  3070   ^9.62^^
  3071   "BLD",9849 ,"REQB",0)
  3072   ^9.611^12^ 12
  3073   "BLD",9849 ,"REQB",1, 0)
  3074   PSO*7.0*16 6^2
  3075   "BLD",9849 ,"REQB",2, 0)
  3076   PSO*7.0*22 2^2
  3077   "BLD",9849 ,"REQB",3, 0)
  3078   PSO*7.0*26 8^2
  3079   "BLD",9849 ,"REQB",4, 0)
  3080   PSO*7.0*40 8^2
  3081   "BLD",9849 ,"REQB",5, 0)
  3082   PSO*7.0*41 1^2
  3083   "BLD",9849 ,"REQB",6, 0)
  3084   PSO*7.0*44 4^2
  3085   "BLD",9849 ,"REQB",7, 0)
  3086   PSO*7.0*45 0^2
  3087   "BLD",9849 ,"REQB",8, 0)
  3088   PSO*7.0*45 8^2
  3089   "BLD",9849 ,"REQB",9, 0)
  3090   PSO*7.0*48 6^2
  3091   "BLD",9849 ,"REQB",10 ,0)
  3092   PSO*7.0*47 3^2
  3093   "BLD",9849 ,"REQB",11 ,0)
  3094   PSO*7.0*42 2^2
  3095   "BLD",9849 ,"REQB",12 ,0)
  3096   PSO*7.0*44 6^2
  3097   "BLD",9849 ,"REQB","B ","PSO*7.0 *166",1)
  3098  
  3099   "BLD",9849 ,"REQB","B ","PSO*7.0 *222",2)
  3100  
  3101   "BLD",9849 ,"REQB","B ","PSO*7.0 *268",3)
  3102  
  3103   "BLD",9849 ,"REQB","B ","PSO*7.0 *408",4)
  3104  
  3105   "BLD",9849 ,"REQB","B ","PSO*7.0 *411",5)
  3106  
  3107   "BLD",9849 ,"REQB","B ","PSO*7.0 *422",11)
  3108  
  3109   "BLD",9849 ,"REQB","B ","PSO*7.0 *444",6)
  3110  
  3111   "BLD",9849 ,"REQB","B ","PSO*7.0 *446",12)
  3112  
  3113   "BLD",9849 ,"REQB","B ","PSO*7.0 *450",7)
  3114  
  3115   "BLD",9849 ,"REQB","B ","PSO*7.0 *458",8)
  3116  
  3117   "BLD",9849 ,"REQB","B ","PSO*7.0 *473",10)
  3118  
  3119   "BLD",9849 ,"REQB","B ","PSO*7.0 *486",9)
  3120  
  3121   "DATA",52. 54,1,0)
  3122   NO WBC IN  LAST 7 DAY S
  3123   "DATA",52. 54,2,0)
  3124   NO VERIFIE D WBC
  3125   "DATA",52. 54,3,0)
  3126    LAST WBC  RESULT < 3 500
  3127   "DATA",52. 54,4,0)
  3128   3 SEQ. WBC  DECREASE
  3129   "DATA",52. 54,5,0)
  3130   LAST ANC R ESULT < 20 00
  3131   "DATA",52. 54,6,0)
  3132   3 SEQ. ANC  DECREASE
  3133   "DATA",52. 54,7,0)
  3134   NCCC AUTHO RIZED
  3135   "DATA",52. 54,8,0)
  3136   REGISTER N ON-DUTY HR /WEEKEND ( MAX 4DAY)
  3137   "DATA",52. 54,9,0)
  3138   PRESCRIBER  APPROVED  4 DAY SUPP LY
  3139   "DATA",52. 54,10,0)
  3140   MILD NEUTR OPENIA PRE SCRIBER AP PROVED
  3141   "FIA",52.5 2)
  3142   CLOZAPINE  PRESCRIPTI ON OVERRID ES
  3143   "FIA",52.5 2,0)
  3144   ^PS(52.52,
  3145   "FIA",52.5 2,0,0)
  3146   52.52D
  3147   "FIA",52.5 2,0,1)
  3148   y^y^p^^^^n ^^n
  3149   "FIA",52.5 2,0,10)
  3150  
  3151   "FIA",52.5 2,0,11)
  3152  
  3153   "FIA",52.5 2,0,"RLRO" )
  3154  
  3155   "FIA",52.5 2,0,"VR")
  3156   7.0^PSO
  3157   "FIA",52.5 2,52.52)
  3158   1
  3159   "FIA",52.5 2,52.52,4)
  3160  
  3161   "FIA",52.5 2,52.52,5)
  3162  
  3163   "FIA",52.5 2,52.52,6)
  3164  
  3165   "FIA",52.5 4)
  3166   CLOZAPINE  OVERRIDE R EASONS
  3167   "FIA",52.5 4,0)
  3168   ^PS(52.54,
  3169   "FIA",52.5 4,0,0)
  3170   52.54
  3171   "FIA",52.5 4,0,1)
  3172   y^y^f^^n^^ y^a^n
  3173   "FIA",52.5 4,0,10)
  3174  
  3175   "FIA",52.5 4,0,11)
  3176  
  3177   "FIA",52.5 4,0,"RLRO" )
  3178  
  3179   "FIA",52.5 4,0,"VR")
  3180   7.0^PSO
  3181   "FIA",52.5 4,52.54)
  3182   0
  3183   "KRN",19,4 740,-1)
  3184   0^3
  3185   "KRN",19,4 740,0)
  3186   PSOLAB LIS T^Display  Lab Tests  and Result s^^R^^^^^^ ^^OUTPATIE NT PHARMAC Y
  3187   "KRN",19,4 740,1,0)
  3188   ^^3^3^2920 819^^
  3189   "KRN",19,4 740,1,1,0)
  3190   This optio n displays  results o f lab test s for pati ents recei ving
  3191   "KRN",19,4 740,1,2,0)
  3192   clozapine  as require d by the c ircular re garding pa tient mana gement
  3193   "KRN",19,4 740,1,3,0)
  3194   protocol f or the use  of clozap ine.
  3195   "KRN",19,4 740,25)
  3196   PSORXLAB
  3197   "KRN",19,4 740,"U")
  3198   DISPLAY LA B TESTS AN D RESULTS
  3199   "KRN",19,4 741,-1)
  3200   0^4
  3201   "KRN",19,4 741,0)
  3202   PSOLIST OV ERRIDES^Li st of Over ride Presc riptions^^ R^^^^^^^^O UTPATIENT  PHARMACY
  3203   "KRN",19,4 741,1,0)
  3204   ^^2^2^2920 819^^^
  3205   "KRN",19,4 741,1,1,0)
  3206   This gener ates a lis t of cloza pine presc riptions w hich were  entered by
  3207   "KRN",19,4 741,1,2,0)
  3208   overriding  the locko ut.
  3209   "KRN",19,4 741,25)
  3210   PSOCLOLS
  3211   "KRN",19,4 741,"U")
  3212   LIST OF OV ERRIDE PRE SCRIPTIONS
  3213   "KRN",19,2 911816,-1)
  3214   0^2
  3215   "KRN",19,2 911816,0)
  3216   PSOL REGIS TER PATIEN T^Register  Clozapine  Patient^^ R^^^^^^^^O UTPATIENT  PHARMACY
  3217   "KRN",19,2 911816,1,0 )
  3218   ^^2^2^2920 819^^^
  3219   "KRN",19,2 911816,1,1 ,0)
  3220   This optio n enters d ata requir ed by Sand oz for Clo zapine pat ients into
  3221   "KRN",19,2 911816,1,2 ,0)
  3222   the Pharma cy Patient  file
  3223   "KRN",19,2 911816,25)
  3224   REG^PSOCLU TL
  3225   "KRN",19,2 911816,99)
  3226   55587,5810 4
  3227   "KRN",19,2 911816,"U" )
  3228   REGISTER C LOZAPINE P ATIENT
  3229   "KRN",19,2 911820,-1)
  3230   0^1
  3231   "KRN",19,2 911820,0)
  3232   PSOL MANAG ER^Clozapi ne Pharmac y Manager^ ^M^^PSOLOC KCLOZ^^^^^ ^OUTPATIEN T PHARMACY
  3233   "KRN",19,2 911820,1,0 )
  3234   ^19.06^3^3 ^3160620^^ ^^
  3235   "KRN",19,2 911820,1,1 ,0)
  3236   This menu  contains t he options  used to c ontrol the  dispensin g of
  3237   "KRN",19,2 911820,1,2 ,0)
  3238   Clozapine.
  3239   "KRN",19,2 911820,1,3 ,0)
  3240    
  3241   "KRN",19,2 911820,10, 0)
  3242   ^19.01IP^8 ^4
  3243   "KRN",19,2 911820,10, 3,0)
  3244   2911816^^1
  3245   "KRN",19,2 911820,10, 3,"^")
  3246   PSOL REGIS TER PATIEN T
  3247   "KRN",19,2 911820,10, 5,0)
  3248   4740^^2
  3249   "KRN",19,2 911820,10, 5,"^")
  3250   PSOLAB LIS T
  3251   "KRN",19,2 911820,10, 6,0)
  3252   4741^^3
  3253   "KRN",19,2 911820,10, 6,"^")
  3254   PSOLIST OV ERRIDES
  3255   "KRN",19,2 911820,10, 8,0)
  3256   2911821^^4
  3257   "KRN",19,2 911820,10, 8,"^")
  3258   PSOL EDIT
  3259   "KRN",19,2 911820,99)
  3260   64366,3409 9
  3261   "KRN",19,2 911820,99. 1)
  3262   58239,4969 8
  3263   "KRN",19,2 911820,"U" )
  3264   CLOZAPINE  PHARMACY M ANAGER
  3265   "KRN",19,2 911821,-1)
  3266   0^5
  3267   "KRN",19,2 911821,0)
  3268   PSOL EDIT^ Edit Data  for a Pati ent in the  Clozapine  Program^^ R^^^^^^^^O UTPATIENT  PHARMACY
  3269   "KRN",19,2 911821,1,0 )
  3270   ^^5^5^2930 107^^^^
  3271   "KRN",19,2 911821,1,1 ,0)
  3272   This optio n allows y ou to edit  data for  a patient  who has al ready been
  3273   "KRN",19,2 911821,1,2 ,0)
  3274   enrolled i n the Cloz apine trea tment prog ram.  It w ill typica lly be use d
  3275   "KRN",19,2 911821,1,3 ,0)
  3276   to reregis ter a pati ent whose  treatment  has been s uspended a nd who has
  3277   "KRN",19,2 911821,1,4 ,0)
  3278   rejoined t he program .
  3279   "KRN",19,2 911821,1,5 ,0)
  3280    
  3281   "KRN",19,2 911821,25)
  3282   AGAIN^PSOC LUTL
  3283   "KRN",19,2 911821,"U" )
  3284   EDIT DATA  FOR A PATI ENT IN THE
  3285   "MBREQ")
  3286   0
  3287   "ORD",18,1 9)
  3288   19;18;;;OP T^XPDTA;OP TF1^XPDIA; OPTE1^XPDI A;OPTF2^XP DIA;;OPTDE L^XPDIA
  3289   "ORD",18,1 9,0)
  3290   OPTION
  3291   "PKG",170, -1)
  3292   1^1
  3293   "PKG",170, 0)
  3294   OUTPATIENT  PHARMACY^ PSO^OUTPAT IENT LABEL S, PROFILE , INVENTOR Y, PRESCRI PTIONS
  3295   "PKG",170, 20,0)
  3296   ^9.402P^^
  3297   "PKG",170, 22,0)
  3298   ^9.49I^1^1
  3299   "PKG",170, 22,1,0)
  3300   7.0^297121 6^2981113^ 1
  3301   "PKG",170, 22,1,"PAH" ,1,0)
  3302   457^317112 9^52073644 0
  3303   "PKG",170, 22,1,"PAH" ,1,1,0)
  3304   ^^1^1^3171 129
  3305   "PKG",170, 22,1,"PAH" ,1,1,1,0)
  3306   MENTAL HEA LTH NCC PR OJECT 5.01
  3307   "QUES","XP F1",0)
  3308   Y
  3309   "QUES","XP F1","??")
  3310   ^D REP^XPD H
  3311   "QUES","XP F1","A")
  3312   Shall I wr ite over y our |FLAG|  File
  3313   "QUES","XP F1","B")
  3314   YES
  3315   "QUES","XP F1","M")
  3316   D XPF1^XPD IQ
  3317   "QUES","XP F2",0)
  3318   Y
  3319   "QUES","XP F2","??")
  3320   ^D DTA^XPD H
  3321   "QUES","XP F2","A")
  3322   Want my da ta |FLAG|  yours
  3323   "QUES","XP F2","B")
  3324   YES
  3325   "QUES","XP F2","M")
  3326   D XPF2^XPD IQ
  3327   "QUES","XP I1",0)
  3328   YO
  3329   "QUES","XP I1","??")
  3330   ^D INHIBIT ^XPDH
  3331   "QUES","XP I1","A")
  3332   Want KIDS  to INHIBIT  LOGONs du ring the i nstall
  3333   "QUES","XP I1","B")
  3334   NO
  3335   "QUES","XP I1","M")
  3336   D XPI1^XPD IQ
  3337   "QUES","XP M1",0)
  3338   PO^VA(200, :EM
  3339   "QUES","XP M1","??")
  3340   ^D MG^XPDH
  3341   "QUES","XP M1","A")
  3342   Enter the  Coordinato r for Mail  Group '|F LAG|'
  3343   "QUES","XP M1","B")
  3344  
  3345   "QUES","XP M1","M")
  3346   D XPM1^XPD IQ
  3347   "QUES","XP O1",0)
  3348   Y
  3349   "QUES","XP O1","??")
  3350   ^D MENU^XP DH
  3351   "QUES","XP O1","A")
  3352   Want KIDS  to Rebuild  Menu Tree s Upon Com pletion of  Install
  3353   "QUES","XP O1","B")
  3354   YES
  3355   "QUES","XP O1","M")
  3356   D XPO1^XPD IQ
  3357   "QUES","XP Z1",0)
  3358   Y
  3359   "QUES","XP Z1","??")
  3360   ^D OPT^XPD H
  3361   "QUES","XP Z1","A")
  3362   Want to DI SABLE Sche duled Opti ons, Menu  Options, a nd Protoco ls
  3363   "QUES","XP Z1","B")
  3364   NO
  3365   "QUES","XP Z1","M")
  3366   D XPZ1^XPD IQ
  3367   "QUES","XP Z2",0)
  3368   Y
  3369   "QUES","XP Z2","??")
  3370   ^D RTN^XPD H
  3371   "QUES","XP Z2","A")
  3372   Want to MO VE routine s to other  CPUs
  3373   "QUES","XP Z2","B")
  3374   NO
  3375   "QUES","XP Z2","M")
  3376   D XPZ2^XPD IQ
  3377   "RTN")
  3378   13
  3379   "RTN","PSO CLO1")
  3380   0^1^B14925 7614
  3381   "RTN","PSO CLO1",1,0)
  3382   PSOCLO1 ;B HAM ISC/SA B - clozar il rx lock out routin e ;Jul 24,  2017@15:2 4
  3383   "RTN","PSO CLO1",2,0)
  3384    ;;7.0;OUT PATIENT PH ARMACY;**1 ,23,37,222 ,457**;DEC  1997;Buil d 65
  3385   "RTN","PSO CLO1",3,0)
  3386    ;External  reference  YSCLTST2  supported  by DBIA 45 56
  3387   "RTN","PSO CLO1",4,0)
  3388    ;Referenc e to ^YSCL (603.01 is  supported  by DBIA 2 697
  3389   "RTN","PSO CLO1",5,0)
  3390    ;External  reference  ^PS(55 su pported by  DBIA 2228
  3391   "RTN","PSO CLO1",6,0)
  3392    ;Referenc e to ^XMD  supported  by IA #100 70
  3393   "RTN","PSO CLO1",7,0)
  3394    ;Referenc e to ^DPT  supported  by IA #100 35
  3395   "RTN","PSO CLO1",8,0)
  3396    ;MH packa ge will au thorize di spensing o f the Cloz apine drug s
  3397   "RTN","PSO CLO1",9,0)
  3398    K ANQDATA ,ANQX,ANQN O,FLG,PSON EW("SAND") ,^TMP($J," PSO"),^TMP ($J,"CLOZF LG",DFN)
  3399   "RTN","PSO CLO1",10,0 )
  3400    N X,Y,%,% DT,J,ANQ,A NQD,ANQJ,A NQRE,DTOUT ,DUOUT,DIR ,DIRUT,LST FOUR,PSOYS ,PSTYPE,PS REG,CLOZFL G
  3401   "RTN","PSO CLO1",11,0 )
  3402    ;; START  NCC REMEDI ATION >> 4 57*RJS
  3403   "RTN","PSO CLO1",12,0 )
  3404    W !!,"Now  doing Clo zapine Ord er checks.   Please w ait...",!
  3405   "RTN","PSO CLO1",13,0 )
  3406    N PSMSGTX T,NOKEY S  NOKEY='$$F IND1^DIC(2 00.051,"," _+DUZ_",", "X","PSOLO CKCLOZ")
  3407   "RTN","PSO CLO1",14,0 )
  3408    I XQY0["P SO" S PSTY PE=0,PSMSG TXT="presc ription" K  PSOSAND
  3409   "RTN","PSO CLO1",15,0 )
  3410    I XQY0["P SJ" S PSTY PE=1,PSMSG TXT="order "
  3411   "RTN","PSO CLO1",16,0 )
  3412    ; /RBN Be gin NCC un registered  bypass fo r PSO*457
  3413   "RTN","PSO CLO1",17,0 )
  3414    S CLOZFLG =0 ; Used  to force s tart/stop  dates to f our days o nly
  3415   "RTN","PSO CLO1",18,0 )
  3416    S PSREG=$ $GET1^DIQ( 55,DFN,53)
  3417   "RTN","PSO CLO1",19,0 )
  3418    I PSREG=" "!($$GET1^ DIQ(55,DFN ,54,"I")=" D") D  D N OREG Q:'CL OZFLG  S P SREG=$$GET 1^DIQ(55,D FN,53)
  3419   "RTN","PSO CLO1",20,0 )
  3420    .W !!,"** * This pat ient has n o clozapin e registra tion numbe r ***",!
  3421   "RTN","PSO CLO1",21,0 )
  3422    I PSREG?1 U6N S ^TMP ($J,"CLOZF LG",DFN)=1
  3423   "RTN","PSO CLO1",22,0 )
  3424    ;/RBN End  NCC unreg istered pa ypass for  PSO*457
  3425   "RTN","PSO CLO1",23,0 )
  3426    ;
  3427   "RTN","PSO CLO1",24,0 )
  3428    S PSLAST7 ="" ; ** N CC REMEDIA TION ** 45 7/RTW
  3429   "RTN","PSO CLO1",25,0 )
  3430    S PSOYS=$ $CL^YSCLTS T2(DFN)
  3431   "RTN","PSO CLO1",26,0 )
  3432    G:+PSOYS< 0 END
  3433   "RTN","PSO CLO1",27,0 )
  3434    N PSGDSP
  3435   "RTN","PSO CLO1",28,0 )
  3436    S CLOZPAT =$P(PSOYS, U,7),CLOZP AT=$S(CLOZ PAT="M":2, CLOZPAT="B ":1,1:0)
  3437   "RTN","PSO CLO1",29,0 )
  3438    G:+PSOYS= 0 OV1
  3439   "RTN","PSO CLO1",30,0 )
  3440    I +PSOYS= 1 D
  3441   "RTN","PSO CLO1",31,0 )
  3442    .I '$G(CL OZFLG),$G( ^TMP($J,"C LOZFLG",DF N)) S CLOZ FLG=1  Q
  3443   "RTN","PSO CLO1",32,0 )
  3444    .D DSP
  3445   "RTN","PSO CLO1",33,0 )
  3446    I +$P(PSO YS,U,2)>0, +$P(PSOYS, U,4)>1499, '$G(CLOZFL G) D:'$G(P STYPE) DOS E Q
  3447   "RTN","PSO CLO1",34,0 )
  3448    I $G(ANQR E)'=7,$$OV ERRIDE^YSC LTST2(DFN)  S ANQRE=7 ,ANQX=0 W  !!,"Permis sion to di spense clo zapine has  been auth orized by  NCCC",!
  3449   "RTN","PSO CLO1",35,0 )
  3450    I $G(CLOZ FLG),+PSOY S=1 S ANQR E=8
  3451   "RTN","PSO CLO1",36,0 )
  3452    S X=$S(CL OZPAT=2:84 ,CLOZPAT=1 :42,1:21)
  3453   "RTN","PSO CLO1",37,0 )
  3454    D CL1^YSC LTST2(DFN, X)
  3455   "RTN","PSO CLO1",38,0 )
  3456    ;/RBN-RJS  Begin mod ification  for overri de bypass
  3457   "RTN","PSO CLO1",39,0 )
  3458    I $D(^TMP ($J,"PSO") ) D DSP,CH ECK
  3459   "RTN","PSO CLO1",40,0 )
  3460    I $P(ANQ( 1),U,2)>14 99,+$G(PST YPE),'+$G( ANQRE) Q   ;/RJS Emer gency over ride
  3461   "RTN","PSO CLO1",41,0 )
  3462    I $P(ANQ( 1),U,2)>14 99,'$G(PST YPE),'+$G( ANQRE) D D OSE Q  ;/R JS Emergen cy overrid e
  3463   "RTN","PSO CLO1",42,0 )
  3464    E  D OVRD
  3465   "RTN","PSO CLO1",43,0 )
  3466    ;/RBN-RJS  End modif ication fo r override  bypass
  3467   "RTN","PSO CLO1",44,0 )
  3468    Q
  3469   "RTN","PSO CLO1",45,0 )
  3470    ;
  3471   "RTN","PSO CLO1",46,0 )
  3472   OV1 I $$OV ERRIDE^YSC LTST2(DFN)  S ANQRE=7 ,ANQX=0 W  !!,"Permis sion to di spense clo zapine has  been auth orized by  NCCC",!
  3473   "RTN","PSO CLO1",47,0 )
  3474    S X=$S(CL OZPAT=2:84 ,CLOZPAT=1 :42,1:21)
  3475   "RTN","PSO CLO1",48,0 )
  3476    D CL1^YSC LTST2(DFN, X)
  3477   "RTN","PSO CLO1",49,0 )
  3478    S:$P(PSOY S,U,6)=""  $P(PSOYS,U ,6)=DT
  3479   "RTN","PSO CLO1",50,0 )
  3480    I $G(ANQR E)'=7 D DS P,CHECK
  3481   "RTN","PSO CLO1",51,0 )
  3482    I $G(ANQR E)=8!($G(A NQRE)=7) D  OVRD Q
  3483   "RTN","PSO CLO1",52,0 )
  3484    ;
  3485   "RTN","PSO CLO1",53,0 )
  3486    I +$P(PSO YS,U,2),+$ P(PSOYS,U, 4)<1000,+$ P(PSOYS,U, 4)>0 D MSG 4^PSOCLUTL ,MSG3^PSOC LUTL,MH,QU  Q
  3487   "RTN","PSO CLO1",54,0 )
  3488    I $D(PSRE G),'+$P(PS OYS,U,2),' +$P(PSOYS, U,4) D MSG 4^PSOCLUTL ,MSG3^PSOC LUTL,MH,QU  Q
  3489   "RTN","PSO CLO1",55,0 )
  3490    I PSTYPE= 0 D
  3491   "RTN","PSO CLO1",56,0 )
  3492    .I +$P(PS OYS,U,2),' +$P(PSOYS, U,4) D MSG 9^PSOCLUTL ,PKEYCHK,O VRD Q  ; W BC & NO AN C
  3493   "RTN","PSO CLO1",57,0 )
  3494    .I '+$P(P SOYS,U,2), '+$P(PSOYS ,U,4) D MS G9^PSOCLUT L,PKEYCHK, OVRD Q  ;N O LABS
  3495   "RTN","PSO CLO1",58,0 )
  3496    I PSTYPE= 1 D
  3497   "RTN","PSO CLO1",59,0 )
  3498    .I +$P(PS OYS,U,2),' +$P(PSOYS, U,4) D MSG 10^PSOCLUT L,OVRD Q   ; WBC & NO  ANC
  3499   "RTN","PSO CLO1",60,0 )
  3500    .I '+$P(P SOYS,U,2), '+$P(PSOYS ,U,4) D MS G10^PSOCLU TL,PKEYCHK ,OVRD Q  ; NO LABS
  3501   "RTN","PSO CLO1",61,0 )
  3502    I '+$P(PS OYS,U,2),+ $P(PSOYS,U ,4) D MSG1 ^PSOCLUTL  Q  ;NO WBC  & WITH AN C
  3503   "RTN","PSO CLO1",62,0 )
  3504    Q
  3505   "RTN","PSO CLO1",63,0 )
  3506   CHECK ;
  3507   "RTN","PSO CLO1",64,0 )
  3508    S:'NOKEY  ANQX=0 ;RT W added be cause of u ndefined A NQX error  from PSGOE 7.INT 3160 303
  3509   "RTN","PSO CLO1",65,0 )
  3510    I $G(ANQR E)'=7,$G(A NQRE)'=8 S  ANQRE=$S( '+$P(PSOYS ,U,4):9,$P (PSOYS,U,4 )<1000:9,' $P(PSOYS,U ,2):9,$P(P SOYS,U,4)< 1500:10,PS LAST7["Y": 9,1:0)
  3511   "RTN","PSO CLO1",66,0 )
  3512    I '$P(PSO YS,U,6) S  $P(PSOYS,U ,6)=$$NOW^ XLFDT
  3513   "RTN","PSO CLO1",67,0 )
  3514    S (ANQD,A NQD(1))=99 99999-$P(P SOYS,U,6)
  3515   "RTN","PSO CLO1",68,0 )
  3516    S ANQ(1)= $P(PSOYS,U ,2)_U_$P(P SOYS,U,4)  D
  3517   "RTN","PSO CLO1",69,0 )
  3518    .Q:'$D(^T MP($J,"PSO "))
  3519   "RTN","PSO CLO1",70,0 )
  3520    .F ANQJ=2 :1:4 S ANQ D=$O(^TMP( $J,"PSO",A NQD)) Q:'A NQD  S ANQ (ANQJ)=^(A NQD),ANQD( ANQJ)=ANQD
  3521   "RTN","PSO CLO1",71,0 )
  3522    S ANQD=$O (ANQ(""),- 1)
  3523   "RTN","PSO CLO1",72,0 )
  3524    I $D(PSRE G),PSREG[" Z",$P(PSOY S,U,4)'>14 99 W !,"Em ergency ov errides fo r non regi stered clo zapine pat ients requ ires",!,"A NC levels  greater th an or equa l to 1500" ,! S ANQX= 1 Q  ;;RTW  NCC PSJ A ND PSO
  3525   "RTN","PSO CLO1",73,0 )
  3526    I ANQD<2  W !,"*** N o previous  results t o display  ***",! Q
  3527   "RTN","PSO CLO1",74,0 )
  3528    S ANQ=$S( $P(ANQ(1), U)!$P(ANQ( 1),U,2):AN QD,1:ANQD- 1)
  3529   "RTN","PSO CLO1",75,0 )
  3530    W !,"***  Last "_$S( ANQ=4:"Fou r ",ANQ=3: "Three ",A NQ=2:"Two  ",1:"")_"W BC and NEU TROPHILS A BSOLUTE (A NC) result s ***",!
  3531   "RTN","PSO CLO1",76,0 )
  3532    W !,?39," WBC    ANC ",!
  3533   "RTN","PSO CLO1",77,0 )
  3534    F ANQJ=AN QD:-1:1 S  ANQD=99999 99-ANQD(AN QJ)_"0000"  D
  3535   "RTN","PSO CLO1",78,0 )
  3536    .I $L($P( $G(ANQ(ANQ J)),U))!$L ($P($G(ANQ (ANQJ)),U, 2))  D
  3537   "RTN","PSO CLO1",79,0 )
  3538    ..W $$FMT E^XLFDT(AN QD,"5Z") W :ANQD["."  "@",$E(ANQ D,9,10),": ",$E(ANQD, 11,12)
  3539   "RTN","PSO CLO1",80,0 )
  3540    ..W ?29," Results: " _$J($P(ANQ (ANQJ),U), 4)_"   ",$ J($P(ANQ(A NQJ),U,2), 4),!
  3541   "RTN","PSO CLO1",81,0 )
  3542    Q
  3543   "RTN","PSO CLO1",82,0 )
  3544   OVRD ;
  3545   "RTN","PSO CLO1",83,0 )
  3546    Q:$G(ANQX )
  3547   "RTN","PSO CLO1",84,0 )
  3548    N PSREASO N
  3549   "RTN","PSO CLO1",85,0 )
  3550    I ANQRE,N OKEY D  D  QU G EXIT
  3551   "RTN","PSO CLO1",86,0 )
  3552    .S ANQX=1  W !!,"You  Are Not A uthorized  to Overrid e! See Clo zapine Man ager with  PSOLOCKCLO Z key."
  3553   "RTN","PSO CLO1",87,0 )
  3554    ; ** STAR T NCC REME DIATION **  457/RTW
  3555   "RTN","PSO CLO1",88,0 )
  3556    I ANQRE W  !,"Overri de reason:  "_$P($T(@ ANQRE),";; ",2),! D
  3557   "RTN","PSO CLO1",89,0 )
  3558    .I ANQRE= 7 D  Q
  3559   "RTN","PSO CLO1",90,0 )
  3560    ..S PSREA SON=$P($T( @(ANQRE_"^ PSOCLO1")) ,";;",2)
  3561   "RTN","PSO CLO1",91,0 )
  3562    ..D OVPRM PT
  3563   "RTN","PSO CLO1",92,0 )
  3564    ..Q:$G(AN QX)
  3565   "RTN","PSO CLO1",93,0 )
  3566    ..D OVRD2
  3567   "RTN","PSO CLO1",94,0 )
  3568    ..Q:$G(AN QX)
  3569   "RTN","PSO CLO1",95,0 )
  3570    ..D OVRRE A
  3571   "RTN","PSO CLO1",96,0 )
  3572    .I ANQRE= 5 D  Q
  3573   "RTN","PSO CLO1",97,0 )
  3574    ..S DIR(" A")="ANC l evels are  Critically  low. Do y ou want to  Cancel th e order",D IR(0)="Y", DIR("B")=" N"
  3575   "RTN","PSO CLO1",98,0 )
  3576    ..D ^DIR  K DIR I Y= 0 D MSG6^P SOCLUTL Q
  3577   "RTN","PSO CLO1",99,0 )
  3578    ..I Y(0)= "YES"!($D( DTOUT))!($ D(DUOUT))! ($D(DIROUT )) S ANQX= 1 K DIR Q
  3579   "RTN","PSO CLO1",100, 0)
  3580    .I $G(ANQ RE)=8 D  Q
  3581   "RTN","PSO CLO1",101, 0)
  3582    ..S ANQX= 0
  3583   "RTN","PSO CLO1",102, 0)
  3584    ..D OVPRM PT
  3585   "RTN","PSO CLO1",103, 0)
  3586    ..Q:$G(AN QX)
  3587   "RTN","PSO CLO1",104, 0)
  3588    ..D OVRD2
  3589   "RTN","PSO CLO1",105, 0)
  3590    ..Q:$G(AN QX)
  3591   "RTN","PSO CLO1",106, 0)
  3592    ..D OVRRE A
  3593   "RTN","PSO CLO1",107, 0)
  3594    .;/RBN Be gin modifi cations fo r new spec ial overid e conditio n for inpa tient
  3595   "RTN","PSO CLO1",108, 0)
  3596    .I ANQRE= 9,PSTYPE=0  D  Q
  3597   "RTN","PSO CLO1",109, 0)
  3598    ..D OVPRM PT
  3599   "RTN","PSO CLO1",110, 0)
  3600    ..Q:$G(AN QX)
  3601   "RTN","PSO CLO1",111, 0)
  3602    ..K DIR,D IRUT S DIR (0)="S^1:W eather Rel ated Condi tions;2:Ma il Order D elay;3:Inp atient Goi ng On Leav e"
  3603   "RTN","PSO CLO1",112, 0)
  3604    ..S DIR(" A")="Presc riber's re ason for S pecial Con dition Ove rride " D  ^DIR K DIR  I $D(DIRU T) S ANQX= 1 Q
  3605   "RTN","PSO CLO1",113, 0)
  3606    ..S PSREA SON=Y(0)_" : ",^TMP($ J,"CLOZFLG ",DFN)=1
  3607   "RTN","PSO CLO1",114, 0)
  3608    ..D OVRD2
  3609   "RTN","PSO CLO1",115, 0)
  3610    ..Q:$G(AN QX)
  3611   "RTN","PSO CLO1",116, 0)
  3612    ..D OVRRE A
  3613   "RTN","PSO CLO1",117, 0)
  3614    ..Q:$G(AN QX)
  3615   "RTN","PSO CLO1",118, 0)
  3616    ..S PSREM ARK=PSREAS ON_PSREMAR K
  3617   "RTN","PSO CLO1",119, 0)
  3618    .I ANQRE= 9,PSTYPE=1  D  Q
  3619   "RTN","PSO CLO1",120, 0)
  3620    ..D OVPRM PT
  3621   "RTN","PSO CLO1",121, 0)
  3622    ..Q:$G(AN QX)
  3623   "RTN","PSO CLO1",122, 0)
  3624    ..S PSREA SON="IP Or der Overri de with Ou tside Lab  Results: " ,^TMP($J," CLOZFLG",D FN)=1
  3625   "RTN","PSO CLO1",123, 0)
  3626    ..W !,$P( PSREASON," :"),!
  3627   "RTN","PSO CLO1",124, 0)
  3628    ..D OVRRE A
  3629   "RTN","PSO CLO1",125, 0)
  3630    ..Q:$G(AN QX)
  3631   "RTN","PSO CLO1",126, 0)
  3632    ..D OVRD2
  3633   "RTN","PSO CLO1",127, 0)
  3634    ..Q:$G(AN QX)
  3635   "RTN","PSO CLO1",128, 0)
  3636    ..S PSREM ARK=PSREAS ON_PSREMAR K
  3637   "RTN","PSO CLO1",129, 0)
  3638    .I ANQRE= 10 D
  3639   "RTN","PSO CLO1",130, 0)
  3640    ..W !,"Te st ANC Res ults 3x we ekly until  ANC stabi lize to gr eater than  or equal  to 1500",!
  3641   "RTN","PSO CLO1",131, 0)
  3642    ..D OVPRM PT
  3643   "RTN","PSO CLO1",132, 0)
  3644    ..Q:$G(AN QX)
  3645   "RTN","PSO CLO1",133, 0)
  3646    ..D OVRD2
  3647   "RTN","PSO CLO1",134, 0)
  3648    ..Q:$G(AN QX)
  3649   "RTN","PSO CLO1",135, 0)
  3650    ..D OVRRE A
  3651   "RTN","PSO CLO1",136, 0)
  3652    I $G(ANQX ) D EXIT Q
  3653   "RTN","PSO CLO1",137, 0)
  3654    S PSPROVI D="UNKNOWN "
  3655   "RTN","PSO CLO1",138, 0)
  3656    I $D(ND0)  S PSPROVI D=$P(ND0,U ,2),PSJORN =$P(ND0,U, 21),PSJORD ER("PSJORN ")=PSJORN
  3657   "RTN","PSO CLO1",139, 0)
  3658    I $D(ORO)  S PSPROVI D=$P(ORO,U ,4),PSJORN =$P(ORO,U) ,PSJORDER( "PSJORN")= PSJORN
  3659   "RTN","PSO CLO1",140, 0)
  3660    I '+$G(PS PROVID),+$ G(PSTYPE), +$G(PSGOEP R) S PSPRO VID=+$G(PS GOEPR)
  3661   "RTN","PSO CLO1",141, 0)
  3662    I $D(DUPR X0) S PSPR OVID=$P(DU PRX0,U,4)
  3663   "RTN","PSO CLO1",142, 0)
  3664    ;/RBN Beg in modific ations for  new speci al overide  condition  for inpat ient
  3665   "RTN","PSO CLO1",143, 0)
  3666    Q:$G(ANQX )
  3667   "RTN","PSO CLO1",144, 0)
  3668    ;/RBN Beg in modific ation to p ut pieces  of ANQDATA  in the co rrect sequ ence.
  3669   "RTN","PSO CLO1",145, 0)
  3670    S:ANQRE S ANQX=0,PSC LPAT=DFN,A NQDATA=DUZ _U_PSPROVI D_U_ANQRE_ U_PSREMARK _U_PSSPHAR M_U_PSCLPA T_U_$G(PSJ ORN)
  3671   "RTN","PSO CLO1",146, 0)
  3672    ;/RBN End  modificat ion to put  pieces of  ANQDATA i n correct  sequence.
  3673   "RTN","PSO CLO1",147, 0)
  3674    ; ** END  NCC REMEDI ATION ** 4 57/RTW
  3675   "RTN","PSO CLO1",148, 0)
  3676   GDOSE ; se t variable  to ask da ily dose
  3677   "RTN","PSO CLO1",149, 0)
  3678    N PSOCD
  3679   "RTN","PSO CLO1",150, 0)
  3680    I $G(PSTY PE) Q
  3681   "RTN","PSO CLO1",151, 0)
  3682   DOSE ;
  3683   "RTN","PSO CLO1",152, 0)
  3684    S DIR(0)= "N^12.5:30 00:1",DIR( "A")="CLOZ APINE dosa ge (mg/day ) ? " D ^D IR K DIR G  EXIT:$D(D IRUT)
  3685   "RTN","PSO CLO1",153, 0)
  3686    S PSOCD=X
  3687   "RTN","PSO CLO1",154, 0)
  3688    I PSOCD#2 5=0,PSOCD' <12.5,PSOC D<900 G EX IT
  3689   "RTN","PSO CLO1",155, 0)
  3690    I PSOCD#1 2.5 S DIR( 0)="Y",DIR ("B")="NO" ,DIR("A")= PSOCD_" is  an unusua l dose.  A re you sur e " D ^DIR  K DIR G E XIT:$D(DIR UT) I 'Y G  DOSE
  3691   "RTN","PSO CLO1",156, 0)
  3692    I PSOCD>9 00 S DIR(0 )="Y",DIR( "A")="Reco mmended ma ximum dail y dose is  900. Are y ou sure "  D ^DIR K D IR G EXIT: $D(DIRUT)  I 'Y G DOS E
  3693   "RTN","PSO CLO1",157, 0)
  3694   EXIT ;
  3695   "RTN","PSO CLO1",158, 0)
  3696    K ^TMP($J ,"PSO")
  3697   "RTN","PSO CLO1",159, 0)
  3698    S:$D(DIRU T) ANQX=1
  3699   "RTN","PSO CLO1",160, 0)
  3700    I $G(ANQX ) W !!,"No  "_PSMSGTX T_" entere d!" H 2 Q
  3701   "RTN","PSO CLO1",161, 0)
  3702    S (PSONEW ("SAND"),P SOSAND)=PS OCD_U_$P(P SOYS,U,2)_ U_($P($P(P SOYS,U,6), "."))_U_$P (PSOYS,U,4 )
  3703   "RTN","PSO CLO1",162, 0)
  3704    N NDAYS S  NDAYS=$S( $G(ANQRE)= 9!(PSREG?1 U6N):4,CLO ZPAT=2:28, CLOZPAT=1: 14,1:7)
  3705   "RTN","PSO CLO1",163, 0)
  3706    I $G(PSON EW("DAYS S UPPLY"))>N DAYS D
  3707   "RTN","PSO CLO1",164, 0)
  3708    .S PSONEW ("DAYS SUP PLY")=NDAY S,$P(PSONE W("RX0"),U ,8)=NDAYS
  3709   "RTN","PSO CLO1",165, 0)
  3710    .S PSONEW ("DURATION ",1)=NDAYS
  3711   "RTN","PSO CLO1",166, 0)
  3712    .N SCH,ND ,QTY S SCH =PSONEW("S CHEDULE",1 )
  3713   "RTN","PSO CLO1",167, 0)
  3714    .S ND=$$Q TSCH^PSOSI G(SCH) Q:' ND   ;numb er of minu tes betwee n meds
  3715   "RTN","PSO CLO1",168, 0)
  3716    .S ND=144 0/ND                       ;time s daily
  3717   "RTN","PSO CLO1",169, 0)
  3718    .S QTY=ND AYS*ND*PSO NEW("DOSE  ORDERED",1 )
  3719   "RTN","PSO CLO1",170, 0)
  3720    .S PSONEW ("QTY")=QT Y,$P(PSONE W("RX0"),U ,7)=QTY
  3721   "RTN","PSO CLO1",171, 0)
  3722    Q
  3723   "RTN","PSO CLO1",172, 0)
  3724   OVPRMPT S  DIR("A")=" Do you wan t to overr ide and is sue this " _PSMSGTXT, DIR(0)="Y" ,DIR("B")= "N" D ^DIR  I 'Y!($D( DIROUT)!($ D(DTOUT)))  S ANQX=1  K DIR
  3725   "RTN","PSO CLO1",173, 0)
  3726    Q
  3727   "RTN","PSO CLO1",174, 0)
  3728    ;/RBN mes sages move  to PSOCLU TL to redu ce routine  length to  meet SACC  standards
  3729   "RTN","PSO CLO1",175, 0)
  3730    ;
  3731   "RTN","PSO CLO1",176, 0)
  3732   PKEYCHK ;  CHECK TO S EE IT PHAR MACIST HAS  THE PSOLO CKCLOZ KEY
  3733   "RTN","PSO CLO1",177, 0)
  3734    I '$D(PSG STAT)!($G( PSGSTAT)=" PENDING")  D
  3735   "RTN","PSO CLO1",178, 0)
  3736    .I NOKEY  D
  3737   "RTN","PSO CLO1",179, 0)
  3738    ..S ANQX= 1 W !,"You  Are Not A uthorized  to Overrid e! See Clo zapine Man ager with  PSOLOCKCLO Z key."
  3739   "RTN","PSO CLO1",180, 0)
  3740    Q
  3741   "RTN","PSO CLO1",181, 0)
  3742    ;
  3743   "RTN","PSO CLO1",182, 0)
  3744   MH ;
  3745   "RTN","PSO CLO1",183, 0)
  3746    W !!,"Als o make sur e that the  LAB test,  ANC is se t up corre ctly in th e"
  3747   "RTN","PSO CLO1",184, 0)
  3748    W !,"Ment al Health  package us ing the CL OZAPINE MU LTI TEST L INK option .",!
  3749   "RTN","PSO CLO1",185, 0)
  3750    Q
  3751   "RTN","PSO CLO1",186, 0)
  3752   DSP ;; **  START NCC  REMEDIATIO N ** 457 A ND PSJ 327 /RTW
  3753   "RTN","PSO CLO1",187, 0)
  3754    I '+$P(PS OYS,U,2),' +$P(PSOYS, U,4) Q
  3755   "RTN","PSO CLO1",188, 0)
  3756    Q:+$G(PSG DSP)
  3757   "RTN","PSO CLO1",189, 0)
  3758    W !,"***  Most recen t WBC and  "_$P(PSOYS ,U,5)_" (A NC) result s ***"
  3759   "RTN","PSO CLO1",190, 0)
  3760    ; ** END  NCC REMEDI ATION ** 4 57 AND PSJ  327/RTW
  3761   "RTN","PSO CLO1",191, 0)
  3762    W !,"      performed  on "
  3763   "RTN","PSO CLO1",192, 0)
  3764    S Y=$P(PS OYS,U,6) X  ^DD("DD")  W $P(Y,"@ ")_" are:  "
  3765   "RTN","PSO CLO1",193, 0)
  3766    W !!,?5,$ P(PSOYS,U, 3)_": "_$P (PSOYS,U,2 )
  3767   "RTN","PSO CLO1",194, 0)
  3768    W !,?5,"A NC: "_+$P( PSOYS,U,4) ,!
  3769   "RTN","PSO CLO1",195, 0)
  3770    S PSGDSP= 1
  3771   "RTN","PSO CLO1",196, 0)
  3772    Q
  3773   "RTN","PSO CLO1",197, 0)
  3774   DIR ;
  3775   "RTN","PSO CLO1",198, 0)
  3776    W !! K DI R S DIR(0) ="E",DIR(" A")="Press  Return to  Continue"  D ^DIR K  DIR,DTOUT, DUOUT,DIRU T
  3777   "RTN","PSO CLO1",199, 0)
  3778    Q
  3779   "RTN","PSO CLO1",200, 0)
  3780    ; ** STAR T NCC REME DIATION **  457/RTW
  3781   "RTN","PSO CLO1",201, 0)
  3782   PHGRP ;
  3783   "RTN","PSO CLO1",202, 0)
  3784    N ARRAY D  LIST^DIC( 200,,.01," P",,,"PSOL OCKCLOZ"," AB",,,"ARR AY")
  3785   "RTN","PSO CLO1",203, 0)
  3786    S PSJCNT= 0 F I=1:1  Q:'$D(ARRA Y("DILIST" ,I))  D
  3787   "RTN","PSO CLO1",204, 0)
  3788    . S XDUZ= $P(ARRAY(" DILIST",I, 0),U) Q:XD UZ=DUZ
  3789   "RTN","PSO CLO1",205, 0)
  3790    . Q:$$GET 1^DIQ(200, XDUZ,2)=""
  3791   "RTN","PSO CLO1",206, 0)
  3792    . Q:$$GET 1^DIQ(200, XDUZ,7,"I" )=1
  3793   "RTN","PSO CLO1",207, 0)
  3794    . S PSJCN T=PSJCNT+1
  3795   "RTN","PSO CLO1",208, 0)
  3796    . S ^TMP( "XQADUZ",$ J,XDUZ)=""
  3797   "RTN","PSO CLO1",209, 0)
  3798    W:PSJCNT= 0 "NO ACTI VE APPROVI NG MEMBERS  AVAILABLE "
  3799   "RTN","PSO CLO1",210, 0)
  3800    K XDUZ
  3801   "RTN","PSO CLO1",211, 0)
  3802    Q
  3803   "RTN","PSO CLO1",212, 0)
  3804    ; ** END  NCC REMEDI ATION ** 4 57/RTW
  3805   "RTN","PSO CLO1",213, 0)
  3806    ;
  3807   "RTN","PSO CLO1",214, 0)
  3808   END ;
  3809   "RTN","PSO CLO1",215, 0)
  3810    D MSG5^PS OCLUTL
  3811   "RTN","PSO CLO1",216, 0)
  3812   QU S ANQX= 1 D DIR
  3813   "RTN","PSO CLO1",217, 0)
  3814    Q
  3815   "RTN","PSO CLO1",218, 0)
  3816    ;
  3817   "RTN","PSO CLO1",219, 0)
  3818    ; /RBN Be gin NCC we ekend/new  patient fo r PSO*7.0* 457
  3819   "RTN","PSO CLO1",220, 0)
  3820   NOREG ; Re gister a n ew/discont inued non- registered  cloz pati ent
  3821   "RTN","PSO CLO1",221, 0)
  3822    ;
  3823   "RTN","PSO CLO1",222, 0)
  3824    N %,FIRST ,FLG,I,LAS T,LSTFOUR, MSG,MSGNUM ,NAME,NOW, PSO1,PSO2, PSO4,PSONA ME,REG,SSN ,STAT,TMP1
  3825   "RTN","PSO CLO1",223, 0)
  3826    N TMP2,X, X1,X2XML,X MSUB,XMTEX T,YSCLFRQ
  3827   "RTN","PSO CLO1",224, 0)
  3828    ; Check f or authori zation key
  3829   "RTN","PSO CLO1",225, 0)
  3830    I NOKEY D   Q
  3831   "RTN","PSO CLO1",226, 0)
  3832    .S ANQX=1  W !,"You  Are Not Au thorized t o Override ! See Cloz apine Mana ger with P SOLOCKCLOZ  key." W:P STYPE=1 !! ,"No order  entered!"
  3833   "RTN","PSO CLO1",227, 0)
  3834    ;
  3835   "RTN","PSO CLO1",228, 0)
  3836    W !,"Do y ou want to  register  this patie nt with a  temporary  local"
  3837   "RTN","PSO CLO1",229, 0)
  3838    W !," aut horization  number in  the Cloza pine regis ter? Y/N   "
  3839   "RTN","PSO CLO1",230, 0)
  3840    S %=2 D Y N^DICN I % '=1 S ANQX =1 W !,"Pa tient Not  Registered ",! Q
  3841   "RTN","PSO CLO1",231, 0)
  3842    W !
  3843   "RTN","PSO CLO1",232, 0)
  3844    S (PSO1,T MP1)=DFN
  3845   "RTN","PSO CLO1",233, 0)
  3846    S PSO2=$$ FINDNEXT
  3847   "RTN","PSO CLO1",234, 0)
  3848    I PSO2=-1  D  S ANQX =1 Q
  3849   "RTN","PSO CLO1",235, 0)
  3850    .W !!,"Al l emergenc y registra tion numbe rs have be en used."
  3851   "RTN","PSO CLO1",236, 0)
  3852    .W !,"Eme rgency reg istration  may no lon ger be don e at this  site",!!
  3853   "RTN","PSO CLO1",237, 0)
  3854    .W !,"Pat ient Not R egistered" ,!
  3855   "RTN","PSO CLO1",238, 0)
  3856   CONT S TMP 2=PSO2
  3857   "RTN","PSO CLO1",239, 0)
  3858    S (NAME,P SONAME)=$$ GET1^DIQ(2 ,PSO1,.01)
  3859   "RTN","PSO CLO1",240, 0)
  3860    S PSCLOZ= 1
  3861   "RTN","PSO CLO1",241, 0)
  3862    S DFN=TMP 1
  3863   "RTN","PSO CLO1",242, 0)
  3864    S (PSO2,R EG)=TMP2
  3865   "RTN","PSO CLO1",243, 0)
  3866    ; Check i f registra tion in fi le #55 fai led or was  terminate d
  3867   "RTN","PSO CLO1",244, 0)
  3868    S LAST=$P (NAME,",") ,FIRST=$P( $P(NAME,", ",2)," ")
  3869   "RTN","PSO CLO1",245, 0)
  3870    S SSN=$$G ET1^DIQ(2, PSO1,.09), LSTFOUR=$E (SSN,6,9), ANQX=1
  3871   "RTN","PSO CLO1",246, 0)
  3872    D NUMBER1 ^PSOCLUTL
  3873   "RTN","PSO CLO1",247, 0)
  3874    Q:$G(ANQX )
  3875   "RTN","PSO CLO1",248, 0)
  3876    D              ; Cle an file 60 3.01
  3877   "RTN","PSO CLO1",249, 0)
  3878    .N DIK,DA
  3879   "RTN","PSO CLO1",250, 0)
  3880    .S DIK="^ YSCL(603.0 1,",DA=""  F  S DA=$O (^YSCL(603 .01,"C",DF N,DA)) Q:D A=""  D ^D IK
  3881   "RTN","PSO CLO1",251, 0)
  3882    S MSG(1)= REG_","_LA ST_","_FIR ST_","_LST FOUR
  3883   "RTN","PSO CLO1",252, 0)
  3884    S XMTEXT= "MSG("
  3885   "RTN","PSO CLO1",253, 0)
  3886    ;/RBN Beg in modific ation for  XMSUB gets  killed of f in NUMBE R1^PSOCLUT L
  3887   "RTN","PSO CLO1",254, 0)
  3888    S XMSUB=" ADD"
  3889   "RTN","PSO CLO1",255, 0)
  3890    N YSPROD  S YSPROD=$ $GET1^DIQ( 8989.3,1,5 01,"I") ;X  ^%ZOSF("U CI")
  3891   "RTN","PSO CLO1",256, 0)
  3892    I YSPROD  S XMY("G.R UCLDEM@
D N S. URL          ")=""     ;I Y=^%ZOS F("PROD")
  3893   "RTN","PSO CLO1",257, 0)
  3894    E  S XMY( "G.CLOZAPI NE ROLL-UP ")=""
  3895   "RTN","PSO CLO1",258, 0)
  3896    D ^XMD
  3897   "RTN","PSO CLO1",259, 0)
  3898    S DFN=TMP 1
  3899   "RTN","PSO CLO1",260, 0)
  3900    I '$G(XMM G) S MSGNU M=$G(XMZ)
  3901   "RTN","PSO CLO1",261, 0)
  3902    E  W !!," Failed to  connect wi th the NCC C." S PSOF L=1 Q
  3903   "RTN","PSO CLO1",262, 0)
  3904    ; Now tri ck the ser ver into t hinking it  is sendin g a messag e
  3905   "RTN","PSO CLO1",263, 0)
  3906    ; so we c an populat e 55 and 6 03.01
  3907   "RTN","PSO CLO1",264, 0)
  3908    S PSCLOZ= 1
  3909   "RTN","PSO CLO1",265, 0)
  3910    S ^TMP($J ,"CLOZFLG" ,DFN)=1
  3911   "RTN","PSO CLO1",266, 0)
  3912    S XMRG=MS G(1)
  3913   "RTN","PSO CLO1",267, 0)
  3914    S XMFROM= DUZ
  3915   "RTN","PSO CLO1",268, 0)
  3916    D NOW^%DT C
  3917   "RTN","PSO CLO1",269, 0)
  3918    S XQDATE= %
  3919   "RTN","PSO CLO1",270, 0)
  3920    D ^YSCLSE RV
  3921   "RTN","PSO CLO1",271, 0)
  3922    S ^XTMP(" PSJ CLOZ", 0)=3501231 _U_DT_U_"C LOZAPINE W EEKEND REG ISTRATION" _U_REG
  3923   "RTN","PSO CLO1",272, 0)
  3924    S ^XTMP(" PSJ CLOZ", DFN)=DT_U_ REG_U_"A"
  3925   "RTN","PSO CLO1",273, 0)
  3926    S X1=%
  3927   "RTN","PSO CLO1",274, 0)
  3928    S X2=4
  3929   "RTN","PSO CLO1",275, 0)
  3930    D C^%DTC
  3931   "RTN","PSO CLO1",276, 0)
  3932    S ^XTMP(" PSJ CLOZ", "B",REG,DF N)=X
  3933   "RTN","PSO CLO1",277, 0)
  3934    S ^XTMP(" PSJ CLOZ", "C",DFN,RE G)=""
  3935   "RTN","PSO CLO1",278, 0)
  3936    S ANQX=0
  3937   "RTN","PSO CLO1",279, 0)
  3938    S CLOZFLG =1
  3939   "RTN","PSO CLO1",280, 0)
  3940   QUIT Q
  3941   "RTN","PSO CLO1",281, 0)
  3942    ;
  3943   "RTN","PSO CLO1",282, 0)
  3944   FINDNEXT()  ; Find th e next pse udo Clozap ine regist ration num ber
  3945   "RTN","PSO CLO1",283, 0)
  3946    N DATA,ER R,NUM,PAD, PREF,REG,S ITE
  3947   "RTN","PSO CLO1",284, 0)
  3948    I '$D(^XT MP("PSJ CL OZ",0)) D
  3949   "RTN","PSO CLO1",285, 0)
  3950    .S ^XTMP( "PSJ CLOZ" ,0)=350123 1_U_DT_U_" CLOZAPINE  WEEKEND RE GISTRATION "_U_0
  3951   "RTN","PSO CLO1",286, 0)
  3952    S PAD="00 "
  3953   "RTN","PSO CLO1",287, 0)
  3954    S SITE=$P ($$SITE^VA SITE,U,3)
  3955   "RTN","PSO CLO1",288, 0)
  3956    S REG=$P( ^XTMP("PSJ  CLOZ",0), U,4)
  3957   "RTN","PSO CLO1",289, 0)
  3958    S PAD="00 "
  3959   "RTN","PSO CLO1",290, 0)
  3960    ; Get cur rent tempo rary regis tration nu mber
  3961   "RTN","PSO CLO1",291, 0)
  3962    I REG=0 D   Q REG
  3963   "RTN","PSO CLO1",292, 0)
  3964    .S REG="Z "_SITE_"00 1"
  3965   "RTN","PSO CLO1",293, 0)
  3966    ; Parse i t into pre fix, site  and number
  3967   "RTN","PSO CLO1",294, 0)
  3968    S PREF=$E (REG)
  3969   "RTN","PSO CLO1",295, 0)
  3970    S NUM=+$P (REG,SITE, 2)+1
  3971   "RTN","PSO CLO1",296, 0)
  3972    ; if the  number par t is >999  make the p refix the  next lower  (ascii) c haracter
  3973   "RTN","PSO CLO1",297, 0)
  3974    ; and the  number pa rt 001
  3975   "RTN","PSO CLO1",298, 0)
  3976    I NUM>999  D  ;Q REG
  3977   "RTN","PSO CLO1",299, 0)
  3978    .S NUM="0 01"
  3979   "RTN","PSO CLO1",300, 0)
  3980    .S PREF=$ C($A(PREF) -1)
  3981   "RTN","PSO CLO1",301, 0)
  3982    S NUM=$E( PAD,1,3-$L (+NUM))_+N UM
  3983   "RTN","PSO CLO1",302, 0)
  3984    S REG=PRE F_SITE_NUM
  3985   "RTN","PSO CLO1",303, 0)
  3986    I $A(PREF )<65 S REG =-1
  3987   "RTN","PSO CLO1",304, 0)
  3988    Q REG
  3989   "RTN","PSO CLO1",305, 0)
  3990    ;
  3991   "RTN","PSO CLO1",306, 0)
  3992    ; /RBN En d NCC week end/new pa tient for  PSO*7.0*45 7
  3993   "RTN","PSO CLO1",307, 0)
  3994   OVRD2 ;
  3995   "RTN","PSO CLO1",308, 0)
  3996    S ANQX=0
  3997   "RTN","PSO CLO1",309, 0)
  3998    D PHGRP
  3999   "RTN","PSO CLO1",310, 0)
  4000    S DIC("S" )="I $$FIN D1^DIC(200 .051,"","" _+Y_"","", ""X"",""PS OLOCKCLOZ" "),+Y'=DUZ ,$D(^TMP(" "XQADUZ"", $J,+Y))"
  4001   "RTN","PSO CLO1",311, 0)
  4002    S DIC=200 ,DIC(0)="A EQM"
  4003   "RTN","PSO CLO1",312, 0)
  4004    S DIC("A" )="Enter t he name of  an ""Appr oving memb er from th e Clozapin e team"":  "
  4005   "RTN","PSO CLO1",313, 0)
  4006    D ^DIC D
  4007   "RTN","PSO CLO1",314, 0)
  4008    .I 'Y!($D (DUOUT))!( Y<0)!($D(D TOUT)) S A NQX=1 K DI C
  4009   "RTN","PSO CLO1",315, 0)
  4010    .S PSSPHA RM=+Y
  4011   "RTN","PSO CLO1",316, 0)
  4012    Q
  4013   "RTN","PSO CLO1",317, 0)
  4014    ;
  4015   "RTN","PSO CLO1",318, 0)
  4016   OVRREA ; O verride re ason when  order is N CCC Approv ed
  4017   "RTN","PSO CLO1",319, 0)
  4018    S ANQX=0  N LENGTH S  LENGTH=$S ($G(ANQRE) =9:200-$L( PSREASON), 1:200)
  4019   "RTN","PSO CLO1",320, 0)
  4020    I $G(ANQR E)>6 D
  4021   "RTN","PSO CLO1",321, 0)
  4022    .K DIR,DT OUT,DUOUT, DIRUT,DIRO UT
  4023   "RTN","PSO CLO1",322, 0)
  4024    .S DIR(0) ="F^5:"_LE NGTH
  4025   "RTN","PSO CLO1",323, 0)
  4026    .S DIR("A ")="Remark s"
  4027   "RTN","PSO CLO1",324, 0)
  4028    .I $G(ANQ RE)=9 S DI R("A")="Re marks: "_$ P(PSREASON ,":")
  4029   "RTN","PSO CLO1",325, 0)
  4030    .S DIR("? ")="Respon se is free  text betw een 5 and  200 charac ters."
  4031   "RTN","PSO CLO1",326, 0)
  4032    .D ^DIR
  4033   "RTN","PSO CLO1",327, 0)
  4034    .I $G(DTO UT)!$G(DUO UT)!$G(DIR UT)!$G(DIR OUT) S ANQ X=1 K DIR, DTOUT,DUOU T,DIRUT,DI ROUT Q
  4035   "RTN","PSO CLO1",328, 0)
  4036    .S PSREMA RK=Y
  4037   "RTN","PSO CLO1",329, 0)
  4038    .K DIR,DT OUT,DUOUT, DIRUT,DIRO UT
  4039   "RTN","PSO CLO1",330, 0)
  4040    Q
  4041   "RTN","PSO CLO1",331, 0)
  4042    ;
  4043   "RTN","PSO CLO1",332, 0)
  4044   CHK4REG(YS CLDFN) ; S ee iF this  patient a lready has  a clozapi ne registr ation numb er
  4045   "RTN","PSO CLO1",333, 0)
  4046    N YSCLANS
  4047   "RTN","PSO CLO1",334, 0)
  4048    S YSCLANS =""
  4049   "RTN","PSO CLO1",335, 0)
  4050    S YSCLANS =$O(^XTMP( "PSJ CLOZ" ,"C",YSCLD FN,YSCLANS ))
  4051   "RTN","PSO CLO1",336, 0)
  4052    Q YSCLANS
  4053   "RTN","PSO CLO1",337, 0)
  4054    ;
  4055   "RTN","PSO CLO1",338, 0)
  4056   CHK4DFN(YS CLREG) ; S ee if this  Clozapine  registrat ion is ass igned
  4057   "RTN","PSO CLO1",339, 0)
  4058    N YSCLANS
  4059   "RTN","PSO CLO1",340, 0)
  4060    S YSCLANS =$O(^XTMP( "PSJ CLOZ" ,"B",YSCLR EG,""))
  4061   "RTN","PSO CLO1",341, 0)
  4062    Q YSCLANS
  4063   "RTN","PSO CLO1",342, 0)
  4064    ;
  4065   "RTN","PSO CLO1",343, 0)
  4066   CHK4EXP(YS CLREG,YSCL DFN) ; Che ck for reg istration  expiration
  4067   "RTN","PSO CLO1",344, 0)
  4068    ;    RETU RNS 0 IF E XPIRED
  4069   "RTN","PSO CLO1",345, 0)
  4070    ;             1 IF N OT EXPIRED
  4071   "RTN","PSO CLO1",346, 0)
  4072    N YSCLANS ,YSCLDAT
  4073   "RTN","PSO CLO1",347, 0)
  4074    S YSCLANS =1
  4075   "RTN","PSO CLO1",348, 0)
  4076    I $D(^XTM P("PSJ CLO Z","B",YSC LREG,YSCLD FN)) D
  4077   "RTN","PSO CLO1",349, 0)
  4078    .S YSCLDA T=$G(^XTMP ("PSJ CLOZ ","B",YSCL REG,YSCLDF N))
  4079   "RTN","PSO CLO1",350, 0)
  4080    .I YSCLDA T<DT D
  4081   "RTN","PSO CLO1",351, 0)
  4082    ..S YSCLA NS=0
  4083   "RTN","PSO CLO1",352, 0)
  4084    ..S:YSCLD AT>0 $P(^X TMP("PSJ C LOZ",YSCLD FN),U,3)=" D"
  4085   "RTN","PSO CLO1",353, 0)
  4086    Q YSCLANS
  4087   "RTN","PSO CLO1",354, 0)
  4088    ;
  4089   "RTN","PSO CLO1",355, 0)
  4090    ; ** NCC  REMEDIATIO N add new  reasons 8- 11 ** 457/ RTW  11 ;; EMERGENCY  OVERRIDE N O ANC LAST  7 DAYS 
  4091   "RTN","PSO CLO1",356, 0)
  4092    ;
  4093   "RTN","PSO CLO1",357, 0)
  4094   1 ;;NO WBC  IN LAST 7  DAYS
  4095   "RTN","PSO CLO1",358, 0)
  4096   2 ;;NO VER IFIED WBC
  4097   "RTN","PSO CLO1",359, 0)
  4098   3 ;;LAST W BC RESULT  < 3500
  4099   "RTN","PSO CLO1",360, 0)
  4100   4 ;;3 SEQ.  WBC DECRE ASE
  4101   "RTN","PSO CLO1",361, 0)
  4102   5 ;;LAST A NC RESULT  < 2000
  4103   "RTN","PSO CLO1",362, 0)
  4104   6 ;;3 SEQ.  ANC DECRE ASE
  4105   "RTN","PSO CLO1",363, 0)
  4106   7 ;;NCCC A UTHORIZED
  4107   "RTN","PSO CLO1",364, 0)
  4108   8 ;;REGIST ER NON-DUT Y HR/WEEKE ND (MAX 4D AY)
  4109   "RTN","PSO CLO1",365, 0)
  4110   9 ;;PRESCR IBER APPRO VED 4 DAY  SUPPLY
  4111   "RTN","PSO CLO1",366, 0)
  4112   10 ;;MILD  NEUTROPENI A PRESCRIB ER APPROVE D
  4113   "RTN","PSO CLUTL")
  4114   0^4^B88041 536
  4115   "RTN","PSO CLUTL",1,0 )
  4116   PSOCLUTL ; BHAM ISC/D MA - utili ties for c lozapine r eporting s ystem ;Jul  24, 2017@ 15:24
  4117   "RTN","PSO CLUTL",2,0 )
  4118    ;;7.0;OUT PATIENT PH ARMACY;**2 8,56,122,2 22,268,457 **;DEC 199 7;Build 65
  4119   "RTN","PSO CLUTL",3,0 )
  4120    ;External  reference  ^YSCL(603 .01 suppor ted by DBI A 2697
  4121   "RTN","PSO CLUTL",4,0 )
  4122    ;External  reference  ^PS(55 su pported by  DBIA 2228
  4123   "RTN","PSO CLUTL",5,0 )
  4124    ;
  4125   "RTN","PSO CLUTL",6,0 )
  4126   REG ; regi ster patie nt
  4127   "RTN","PSO CLUTL",7,0 )
  4128    S DIC=55, DLAYGO=55, DIC(0)="AE QL",DIC("A ")="Select  patient t o register : " D ^DIC  K DIC G E ND:Y<0 S P SO1=+Y,PSO NAME=$$GET 1^DIQ(2,PS O1,.01) K  DLAYGO
  4129   "RTN","PSO CLUTL",8,0 )
  4130    D:$$GET1^ DIQ(55,PSO 1,52.1,"I" )'=2 EN^PS OHLUP(PSO1 ) N ANQX
  4131   "RTN","PSO CLUTL",9,0 )
  4132    I '$$FIND 1^DIC(603. 01,,"Q",PS O1,"C") W  !!,PSONAME _" has not  been auth orized for  Clozapine ",!,"by th e NCCC in  Dallas.  C ontact the  NCCC in D allas for  authorizat ion." D OV ER G:'$G(% ) REG S JA DOVER=""
  4133   "RTN","PSO CLUTL",10, 0)
  4134    S PSO4=$$ GET1^DIQ(5 5,PSO1,53)  I PSO4]""  W !!,PSON AME_" is a lready reg istered wi th number  "_PSO4,!!, "Use the e dit option  to change  registrat ion data,  or",!,"con tact your  supervisor ",! G REG
  4135   "RTN","PSO CLUTL",11, 0)
  4136   NUMBER S D IR(0)="55, 53" D ^DIR  S PSO2=Y  K DIR I $D (DIRUT) W  !,"Not reg istered",!  D END G R EG
  4137   "RTN","PSO CLUTL",12, 0)
  4138    N PSOEX S  PSOEX=$$F IND1^DIC(5 5,,"X",PSO 2,"ASAND1" )
  4139   "RTN","PSO CLUTL",13, 0)
  4140    I PSOEX,P SOEX'=PSO1  W !,PSO2, " is alrea dy assigne d to ",$$G ET1^DIQ(2, PSOEX,.01)  W !,"Plea se contact  your supe rvisor" D  END G REG
  4141   "RTN","PSO CLUTL",14, 0)
  4142   NUMBER1 S  PSO3="A"
  4143   "RTN","PSO CLUTL",15, 0)
  4144   PHY S DIC= "^VA(200," ,DIC(0)="A EQMZ",DIC( "A")="Prov ider respo nsible: ", DIC("S")=" I $$GET1^D IQ(200,+Y, 53.1)]"""" "
  4145   "RTN","PSO CLUTL",16, 0)
  4146    D ^DIC K  DIC I Y<0  D END D  G :'$G(PSCLO Z) REG G E ND1
  4147   "RTN","PSO CLUTL",17, 0)
  4148    .I '$G(PS CLOZ) W !! ,"Not regi stered",!!  Q
  4149   "RTN","PSO CLUTL",18, 0)
  4150    .S ANQX=1  Q
  4151   "RTN","PSO CLUTL",19, 0)
  4152    I $G(PSCL OZ) D PROV CHK(+Y) G: $G(ANQX) P HY
  4153   "RTN","PSO CLUTL",20, 0)
  4154    S PSO4=+Y  K DIR,DIR UT,DUOUT,D TOUT
  4155   "RTN","PSO CLUTL",21, 0)
  4156    ;/RBN Beg in NCC cha nges Ask i f okay to  register t he unregis tered pati ent - PSO* 7.0*457
  4157   "RTN","PSO CLUTL",22, 0)
  4158    N DFN,VAD M S DFN=PS O1 D DEM^V ADPT
  4159   "RTN","PSO CLUTL",23, 0)
  4160    S SSN=$P( VADM(2),"^ ")
  4161   "RTN","PSO CLUTL",24, 0)
  4162    S LSTFOUR =$E(SSN,6, 9)
  4163   "RTN","PSO CLUTL",25, 0)
  4164    I '$G(PSC LOZ) D
  4165   "RTN","PSO CLUTL",26, 0)
  4166    . S DIR(" A",1)="OK  to registe r "_PSONAM E_" ("_$G( LSTFOUR)_" )"_" with  number "_P SO2
  4167   "RTN","PSO CLUTL",27, 0)
  4168    . S DIR(" A")="as a" _$S('PSO3: " new",1:" n ongoing" )_" patien t in this  program "
  4169   "RTN","PSO CLUTL",28, 0)
  4170    I $G(PSCL OZ) D
  4171   "RTN","PSO CLUTL",29, 0)
  4172    . S DIR(" A",2)="Wou ld you lik e to overr ide the re gistration  requireme nt and ass ign a temp orary"
  4173   "RTN","PSO CLUTL",30, 0)
  4174    . S DIR(" A")="local  authoriza tion numbe r for  "_P SONAME_" ( "_$G(LSTFO UR)_")"_"  with numbe r "_PSO2
  4175   "RTN","PSO CLUTL",31, 0)
  4176    S DIR(0)= "Y",DIR("B ")="NO" D  ^DIR K DIR  I Y=0!($D (DUOUT)) S  ANQX=1 D  END G END1
  4177   "RTN","PSO CLUTL",32, 0)
  4178    ;/RBN End  NCC chang es to remo ve Pretrea tment choi ce - PSO*7 .0*457
  4179   "RTN","PSO CLUTL",33, 0)
  4180   SAVE S DA= PSO1,DIE=5 5,DR="53// //"_PSO2_" ;54////"_P SO3_";57// //"_PSO4_" ;56////0;5 8////"_DT
  4181   "RTN","PSO CLUTL",34, 0)
  4182    L +^PS(55 ,DA):$S(+$ G(^DD("DIL OCKTM"))>0 :+^DD("DIL OCKTM"),1: 3) I '$T W  !!,$C(7), "Patient " _PSONAME_"  is being  edited by  another us er!  Try L ater." S A NQX=1 D EN D G END1
  4183   "RTN","PSO CLUTL",35, 0)
  4184    D ^DIE L  -^PS(55,DA )
  4185   "RTN","PSO CLUTL",36, 0)
  4186   END K %,%Y ,C,D,D0,DA ,DI,DQ,DIC ,DIE,DR,PS O,PSO1,PSO 2,PSO3,PSO 4,PSOC,PSO LN,PSONAME ,PSONO,PSO T,R,SSNVAE RR,XMDUZ,X MSUB,XMTEX T,Y
  4187   "RTN","PSO CLUTL",37, 0)
  4188    I '$G(PSC LOZ) K ^TM P($J),^TMP ("PSO",$J)
  4189   "RTN","PSO CLUTL",38, 0)
  4190    Q
  4191   "RTN","PSO CLUTL",39, 0)
  4192   END1 ;
  4193   "RTN","PSO CLUTL",40, 0)
  4194    I $G(ANQX ) W !!,"Pa tient Not  Registered "
  4195   "RTN","PSO CLUTL",41, 0)
  4196    Q
  4197   "RTN","PSO CLUTL",42, 0)
  4198    ;
  4199   "RTN","PSO CLUTL",43, 0)
  4200   FACILITY ; Enter faci lity DEA n umber to s et up cloz apine syst em
  4201   "RTN","PSO CLUTL",44, 0)
  4202    ;this ent ry point i s no longe r used.  t his functi onality wa s taken ov er
  4203   "RTN","PSO CLUTL",45, 0)
  4204    ;by the m ental heal th package  with the  release of  YS*5.01*1 8
  4205   "RTN","PSO CLUTL",46, 0)
  4206    ;W ! S DI C=59,DIC(0 )="AEQM",D IC("A")="S elect site  to partic ipate in c lozapine p rogram : "  D ^DIC G  END:Y<0
  4207   "RTN","PSO CLUTL",47, 0)
  4208    ;S DIE=DI C,DA=+Y,DR ="1R;2R;"  L +^PS(59, DA) D ^DIE  L -^PS(59 ,DA) G FAC ILITY
  4209   "RTN","PSO CLUTL",48, 0)
  4210    Q
  4211   "RTN","PSO CLUTL",49, 0)
  4212    ;
  4213   "RTN","PSO CLUTL",50, 0)
  4214    ;
  4215   "RTN","PSO CLUTL",51, 0)
  4216   AGAIN ; re -enter pat ient - new  number, s tatus and  provider
  4217   "RTN","PSO CLUTL",52, 0)
  4218    S DIC=55, DIC(0)="AE QM",DIC("A ")="Select  clozapine  patient :  " D ^DIC  K DIC G EN D:Y<0 S (D A,PSO1)=+Y ,PSONAME=$ $GET1^DIQ( 2,DA,.01)
  4219   "RTN","PSO CLUTL",53, 0)
  4220    I $$GET1^ DIQ(55,DA, 53)="" W ! ,PSONAME_"  is not re gistered.   Use the r egister op tion." G A GAIN
  4221   "RTN","PSO CLUTL",54, 0)
  4222    I '$$FIND 1^DIC(603. 01,,"Q",PS O1,"C") W  !!,PSONAME _" has not  been auth orized for  Clozapine ",!,"by th e NCCC in  Dallas.  C ontact the  NCCC in D allas for  authorizat ion." D OV ER G:'$G(% ) AGAIN S  JADOVER=""
  4223   "RTN","PSO CLUTL",55, 0)
  4224    S DIR(0)= "55,53" D  ^DIR G END :$D(DIRUT)  S PSO2=Y
  4225   "RTN","PSO CLUTL",56, 0)
  4226    N PSOEX S  PSOEX=$$F IND1^DIC(5 5,,"X",PSO 2,"ASAND1" )
  4227   "RTN","PSO CLUTL",57, 0)
  4228    I PSOEX,P SOEX'=PSO1  W !,PSO2, " already  assigned t o ",$$GET1 ^DIQ(2,PSO EX,.01) G  END
  4229   "RTN","PSO CLUTL",58, 0)
  4230    I '$D(JAD OVER),'$$F IND1^DIC(6 03.01,,"X" ,PSO2) W ! !,"The NCC C in Dalla s has not  authorized  "_PSO2_"  for usage" ,!,"at thi s facility .  Contact  the NCCC  in Dallas  for author ization."  D OVER G:' $G(%) END
  4231   "RTN","PSO CLUTL",59, 0)
  4232    W !,"CLOZ APINE STAT US: "_$$GE T1^DIQ(55, PSO1,54)   ;$S(PSO3=" A":"ACTIVE  TREATMENT ",PSO3="D" :"DISCONTI NUED",PSO3 ="H":"TREA TMENT ON H OLD",1:"PR E-TREATMEN T")
  4233   "RTN","PSO CLUTL",60, 0)
  4234    S PSO3=$$ GET1^DIQ(5 5,PSO1,54, "I")
  4235   "RTN","PSO CLUTL",61, 0)
  4236   PHY1 ;
  4237   "RTN","PSO CLUTL",62, 0)
  4238    S DIR(0)= "55,57" D  ^DIR G END :$D(DIRUT)  I Y S PSO 4=+Y
  4239   "RTN","PSO CLUTL",63, 0)
  4240    I $$GET1^ DIQ(200,PS O4,53.2)=" " W !!,"On ly provide rs with DE A numbers  entered in  the New P erson",!," file can r egister pa tients in  this progr am.",!! G  PHY1
  4241   "RTN","PSO CLUTL",64, 0)
  4242    G SAVE
  4243   "RTN","PSO CLUTL",65, 0)
  4244    ;
  4245   "RTN","PSO CLUTL",66, 0)
  4246   OVER ;allo w registra tion of pa tients and  clozapine  numbers n ot yet aut horized by  the NCCC.
  4247   "RTN","PSO CLUTL",67, 0)
  4248    K DIR,% W  ! S DIR(" A")="Do yo u want to  over-ride  this warni ng",DIR(0) ="Y",DIR(" B")="No" D  ^DIR
  4249   "RTN","PSO CLUTL",68, 0)
  4250    I Y S %=1
  4251   "RTN","PSO CLUTL",69, 0)
  4252    K DIR,DIR UT,DUOUT Q
  4253   "RTN","PSO CLUTL",70, 0)
  4254    ;
  4255   "RTN","PSO CLUTL",71, 0)
  4256   CLOZPAT ;V ERIFY PATI ENT IS A C LOZAPINE P ATIENT
  4257   "RTN","PSO CLUTL",72, 0)
  4258    K CLOZPAT ,CLOZST S  CLOZST=$$G ET1^DIQ(55 ,DFN,54,"I ")
  4259   "RTN","PSO CLUTL",73, 0)
  4260    I $L(CLOZ ST),CLOZST '="D" D
  4261   "RTN","PSO CLUTL",74, 0)
  4262    .N CLOZNU M,CLOZUID  S CLOZNUM= $$GET1^DIQ (55,DFN,53 )
  4263   "RTN","PSO CLUTL",75, 0)
  4264    .I CLOZNU M?1U6N S C LOZPAT=3 Q
  4265   "RTN","PSO CLUTL",76, 0)
  4266    .S CLOZUI D=$$FIND1^ DIC(603.01 ,,"X",CLOZ NUM) Q:'CL OZUID  ;Q: '$D(^YSCL( 603.01,CLO ZUID,0))
  4267   "RTN","PSO CLUTL",77, 0)
  4268    .S CLOZPA T=$$GET1^D IQ(603.01, CLOZUID,2, "I")
  4269   "RTN","PSO CLUTL",78, 0)
  4270    .S CLOZPA T=$S($G(CL OZPAT)="M" :2,$G(CLOZ PAT)="B":1 ,$G(CLOZPA T)="W":0,1 :90)
  4271   "RTN","PSO CLUTL",79, 0)
  4272    Q
  4273   "RTN","PSO CLUTL",80, 0)
  4274    ;
  4275   "RTN","PSO CLUTL",81, 0)
  4276   PROVCHK(PR OV) ;
  4277   "RTN","PSO CLUTL",82, 0)
  4278    N PSJQUIT  S (ANQX,P SJQUIT)=0  I '$G(PROV ) Q
  4279   "RTN","PSO CLUTL",83, 0)
  4280    I '$L($$D EA^XUSER(, PROV)) S ( ANQX,PSJQU IT)=1 D  Q
  4281   "RTN","PSO CLUTL",84, 0)
  4282    .W !," ", !,"*** Pro vider must  have a DE A# or VA#  to write p rescriptio ns for thi s drug."
  4283   "RTN","PSO CLUTL",85, 0)
  4284    I '$$FIND 1^DIC(200. 051,","_PR OV_",","X" ,"YSCL AUT HORIZED")  S (ANQX,PS JQUIT)=1 D
  4285   "RTN","PSO CLUTL",86, 0)
  4286    .W !," ", !,"*** Pro vider must  hold YSCL  AUTHORIZE D key to w rite presc riptions f or clozapi ne."
  4287   "RTN","PSO CLUTL",87, 0)
  4288    Q
  4289   "RTN","PSO CLUTL",88, 0)
  4290    ;
  4291   "RTN","PSO CLUTL",89, 0)
  4292   MSG1 ;
  4293   "RTN","PSO CLUTL",90, 0)
  4294    W !!,"Per mission to  dispense  clozapine  has been d enied. The  results o f the late st",!
  4295   "RTN","PSO CLUTL",91, 0)
  4296    W "Lab Te st drawn i n the past  7 days sh ow ANC res ults but N o Matching  WBC.",!
  4297   "RTN","PSO CLUTL",92, 0)
  4298    W "If you  wish to d ispense ou tside the  FDA and VA  protocol  ANC limits ,",!
  4299   "RTN","PSO CLUTL",93, 0)
  4300    W "docume nt your re quest to R equest for  Override  of Pharmac y Lockout  ",!
  4301   "RTN","PSO CLUTL",94, 0)
  4302    W "(from  VHA Handbo ok 1160.02 ) Director  of the",!
  4303   "RTN","PSO CLUTL",95, 0)
  4304    W "VA Nat ional Cloz apine Coor dinating C enter",!
  4305   "RTN","PSO CLUTL",96, 0)
  4306    W "(Phone : 214-857- 0068 Fax:  214-857-03 39) for a  one-time o verride pe rmission." ,!
  4307   "RTN","PSO CLUTL",97, 0)
  4308    W !,"No o rder enter ed!"
  4309   "RTN","PSO CLUTL",98, 0)
  4310    S ANQX=1
  4311   "RTN","PSO CLUTL",99, 0)
  4312    Q
  4313   "RTN","PSO CLUTL",100 ,0)
  4314   MSG2 ;
  4315   "RTN","PSO CLUTL",101 ,0)
  4316    W !!,"Per mission to  dispense  clozapine  has been d enied. The  results o f the late st",!
  4317   "RTN","PSO CLUTL",102 ,0)
  4318    W "Lab Te st drawn i n the past  7 days sh ow No ANC  results. I f you wish  to dispen se",!
  4319   "RTN","PSO CLUTL",103 ,0)
  4320    W "outsid e the FDA  and VA pro tocol ANC  limits, do cument you r request  to Request ",!
  4321   "RTN","PSO CLUTL",104 ,0)
  4322    W "for Ov erride of  Pharmacy L ockout (fr om VHA Han dbook 1160 .02) Direc tor of the ",!
  4323   "RTN","PSO CLUTL",105 ,0)
  4324    W "VA Nat ional Cloz apine Coor dinating C enter",!
  4325   "RTN","PSO CLUTL",106 ,0)
  4326    W "(Phone : 214-857- 0068 Fax:  214-857-03 39) for a  one-time o verride pe rmission." ,!
  4327   "RTN","PSO CLUTL",107 ,0)
  4328    W !,"No o rder enter ed!"
  4329   "RTN","PSO CLUTL",108 ,0)
  4330    S ANQX=1
  4331   "RTN","PSO CLUTL",109 ,0)
  4332    Q
  4333   "RTN","PSO CLUTL",110 ,0)
  4334   MSG3 ;
  4335   "RTN","PSO CLUTL",111 ,0)
  4336    W !,"A CB C/Differen tial inclu ding ANC M ust Be Ord ered and M onitored o n a",!
  4337   "RTN","PSO CLUTL",112 ,0)
  4338    W "Daily  basis unti l the ANC  above 1000 /mm3 with  no signs o f infectio n.",!
  4339   "RTN","PSO CLUTL",113 ,0)
  4340    W "If ANC  is betwee n 1000-149 9, therapy  can be co ntinued bu t physicia n must ord er",!
  4341   "RTN","PSO CLUTL",114 ,0)
  4342    W "lab te st three t imes weekl y."
  4343   "RTN","PSO CLUTL",115 ,0)
  4344    Q
  4345   "RTN","PSO CLUTL",116 ,0)
  4346   MSG4 ;
  4347   "RTN","PSO CLUTL",117 ,0)
  4348    W !,"Perm ission to  dispense c lozapine h as been de nied. If t he results  of the la test"
  4349   "RTN","PSO CLUTL",118 ,0)
  4350    W !,"Lab  Test drawn  in the pa st 7 days  show ANC b elow 1000/ mm3 and yo u wish to"
  4351   "RTN","PSO CLUTL",119 ,0)
  4352    W !,"disp ense outsi de the FDA  and VA pr otocol ANC  limits, d ocument yo ur request  to"
  4353   "RTN","PSO CLUTL",120 ,0)
  4354    W !,"Requ est for Ov erride of  Pharmacy L ockout (fr om VHA Han dbook 1160 .02)"
  4355   "RTN","PSO CLUTL",121 ,0)
  4356    W !,"Dire ctor of th e VA Natio nal Clozap ine Coordi nating Cen ter"
  4357   "RTN","PSO CLUTL",122 ,0)
  4358    W !,"(Pho ne: 214-85 7-0068 Fax : 214-857- 0339) for  a one-time  override  permission .",!
  4359   "RTN","PSO CLUTL",123 ,0)
  4360    S ANQX=1
  4361   "RTN","PSO CLUTL",124 ,0)
  4362    Q
  4363   "RTN","PSO CLUTL",125 ,0)
  4364   MSG5 ;
  4365   "RTN","PSO CLUTL",126 ,0)
  4366    W !!,"Per mission to  dispense  clozapine  has been d enied. Ple ase contac t the"
  4367   "RTN","PSO CLUTL",127 ,0)
  4368    W !,"Dire ctor of th e VA Natio nal Clozap ine Coordi nating Cen ter"
  4369   "RTN","PSO CLUTL",128 ,0)
  4370    W !!,"Req uest for O verride of  Pharmacy  Lockout (f rom VHA Ha ndbook 116 0.02)"
  4371   "RTN","PSO CLUTL",129 ,0)
  4372    W !,"(Pho ne: 214-85 7-0068 Fax : 214-857- 0339).",!
  4373   "RTN","PSO CLUTL",130 ,0)
  4374    Q
  4375   "RTN","PSO CLUTL",131 ,0)
  4376   MSG6 ; ; * * START NC C REMEDIAT ION ** 457  AND PSJ 3 27/RTW MSG  6 added f or new cri tically lo w ANC leve ls clozapi ne overrid e requirem ents
  4377   "RTN","PSO CLUTL",132 ,0)
  4378    W !!,"Thi s clozapin e drug may  not be di spensed to  the patie nt at this  time base d on the a vailable l ab tests r elated to  the clozap ine treatm ent progra m."
  4379   "RTN","PSO CLUTL",133 ,0)
  4380    W !!,"Ple ase contac t the NCCC  to reques t an overr ide in ord er to proc eed with d ispensing  this drug.  "
  4381   "RTN","PSO CLUTL",134 ,0)
  4382    W !!,"Req uest for O verride of  Pharmacy  Lockout (f rom VHA Ha ndbook 116 0.02)"
  4383   "RTN","PSO CLUTL",135 ,0)
  4384    W !!,"The   matching  ANC count s which ca used the l ockout are  of lab te st results  performed  on "
  4385   "RTN","PSO CLUTL",136 ,0)
  4386    S ANQX=1, Y=$P(PSOYS ,"^",6) X  ^DD("DD")  W $P(Y,"@" )
  4387   "RTN","PSO CLUTL",137 ,0)
  4388    W !!,?5," ANC: "_$P( PSOYS,"^", 4),!
  4389   "RTN","PSO CLUTL",138 ,0)
  4390    Q
  4391   "RTN","PSO CLUTL",139 ,0)
  4392   MSG9 ;
  4393   "RTN","PSO CLUTL",140 ,0)
  4394    W !,"***  Permission  to dispen se clozapi ne has bee n denied b ased on th e availabl e"
  4395   "RTN","PSO CLUTL",141 ,0)
  4396    W !,"     lab tests  related to  the cloza pine treat ment progr am. ***"
  4397   "RTN","PSO CLUTL",142 ,0)
  4398    W !!,"For  a Nationa l Override  to dispen se at the  patient's  normal fre quency,"
  4399   "RTN","PSO CLUTL",143 ,0)
  4400    W !,"plea se contact  the VA Na tional Clo zapine Coo rdinating  Center to  contact"
  4401   "RTN","PSO CLUTL",144 ,0)
  4402    W !,"the  VA Nationa l Clozapin e Coordina ting Cente r request  an Overrid e of"
  4403   "RTN","PSO CLUTL",145 ,0)
  4404    W !,"Phar macy Locko ut (from V HA Handboo k 1160.02) "
  4405   "RTN","PSO CLUTL",146 ,0)
  4406    W !,"(Pho ne: 214-85 7-0068 Fax : 214-857- 0339)."
  4407   "RTN","PSO CLUTL",147 ,0)
  4408    W !,"A Sp ecial Cond itions Loc al Overrid e can be a pproved fo r"
  4409   "RTN","PSO CLUTL",148 ,0)
  4410    W !,"(1)  weather-re lated cond itions, (2 ) mail ord er delays  of clozapi ne, or"
  4411   "RTN","PSO CLUTL",149 ,0)
  4412    W !,"(3)  inpatient  going on l eave. With  Provider' s document ation of a pproval,"
  4413   "RTN","PSO CLUTL",150 ,0)
  4414    W !,"you  may dispen se a one-t ime supply  not to ex ceed 4 day s.",!
  4415   "RTN","PSO CLUTL",151 ,0)
  4416    Q
  4417   "RTN","PSO CLUTL",152 ,0)
  4418    ;
  4419   "RTN","PSO CLUTL",153 ,0)
  4420    ;/RBN Beg in of modi fications  for new me ssage for  IP 4 day o verrride.
  4421   "RTN","PSO CLUTL",154 ,0)
  4422   MSG10 ;
  4423   "RTN","PSO CLUTL",155 ,0)
  4424    W !,"***  Permission  to dispen se clozapi ne has bee n denied b ased on th e availabl e"
  4425   "RTN","PSO CLUTL",156 ,0)
  4426    W !,"     lab tests  related to  the cloza pine treat ment progr am. ***"
  4427   "RTN","PSO CLUTL",157 ,0)
  4428    W !!,"For  a Nationa l Override  to dispen se at the  patient's  normal fre quency,"
  4429   "RTN","PSO CLUTL",158 ,0)
  4430    W !,"plea se contact  the VA Na tional Clo zapine Coo rdinating  Center to  request an "
  4431   "RTN","PSO CLUTL",159 ,0)
  4432    W !,"Over ride of Ph armacy Loc kout (from  VHA Handb ook 1160.0 2) (Phone:  214-857-0 068"
  4433   "RTN","PSO CLUTL",160 ,0)
  4434    W !,"Fax:  214-857-0 339)."
  4435   "RTN","PSO CLUTL",161 ,0)
  4436    W !,"A Sp ecial Cond itions Loc al Overrid e for Inpa tients can  be approv ed for an"
  4437   "RTN","PSO CLUTL",162 ,0)
  4438    W !,"IP O verride Or der with O utside Lab  Results.  With Provi der's docu mentation  of"
  4439   "RTN","PSO CLUTL",163 ,0)
  4440    W !,"appr oval, you  may dispen se a one-t ime IP sup ply not to  exceed 4  days."
  4441   "RTN","PSO CLUTL",164 ,0)
  4442    W !,"The  ANC from a nother fac ility must  be record ed in the  Progress n ote/commen ts"
  4443   "RTN","PSO CLUTL",165 ,0)
  4444    W !,"in p harmacy"
  4445   "RTN","PSO CLUTL",166 ,0)
  4446    Q
  4447   "RTN","PSO DIR1")
  4448   0^9^B98465 624
  4449   "RTN","PSO DIR1",1,0)
  4450   PSODIR1 ;I HS/DSD - A SKS DATA F OR RX ORDE R ENTRY CO NT. ;Jul 2 4, 2017@15 :24
  4451   "RTN","PSO DIR1",2,0)
  4452    ;;7.0;OUT PATIENT PH ARMACY;**2 3,46,78,10 2,121,131, 146,166,18 4,222,268, 206,266,34 0,391,444, 446,457**; DEC 1997;B uild 65
  4453   "RTN","PSO DIR1",3,0)
  4454    ;External  reference  ^PS(55 su pported by  DBIA 2228
  4455   "RTN","PSO DIR1",4,0)
  4456    ;External  reference  ^PSDRUG(  supported  by DBIA 22 1
  4457   "RTN","PSO DIR1",5,0)
  4458    ;External  reference  $$MXDAYSU P^PSSUTIL1  supported  by DBIA 6 229
  4459   "RTN","PSO DIR1",6,0)
  4460    ;
  4461   "RTN","PSO DIR1",7,0)
  4462   PTSTAT(PSO DIR) ;
  4463   "RTN","PSO DIR1",8,0)
  4464   PTSTATEN K  DIC,DR,DI E S PSODIR ("FIELD")= 0
  4465   "RTN","PSO DIR1",9,0)
  4466    I $G(PSOT PBFG),$G(P SOFROM)="N EW" K PSOR X("PATIENT  STATUS"), PSODIR("PA TIENT STAT US") N PSO FNDRX,PSOF NDFL,PSOFN DPS D
  4467   "RTN","PSO DIR1",10,0 )
  4468    .S PSOFND FL=0 F PSO FNDPS=0:0  S PSOFNDPS =$O(^PS(53 ,PSOFNDPS) ) Q:'PSOFN DPS!(PSOFN DFL)  D
  4469   "RTN","PSO DIR1",11,0 )
  4470    ..S PSOFN DRX=$P($G( ^PS(53,PSO FNDPS,0)), "^") S PSO FNDRX=$$UP ^XLFSTR(PS OFNDRX) I  PSOFNDRX=" NON-VA" S  PSOFNDFL=1  S (PSORX( "PATIENT S TATUS"),DI C("B"))=$P ($G(^PS(53 ,PSOFNDPS, 0)),"^")
  4471   "RTN","PSO DIR1",12,0 )
  4472    I $G(PSOT PBFG),$G(P SOFROM)="N EW",$G(PSO RX("PATIEN T STATUS") )="" W !," Could not  find a 'NO N-VA' Pati ent Status  in the RX  PATIENT S TATUS file  (#53)!" D  PSTPB D   S PSODIR(" DFLG")=1 G  PTSTATX
  4473   "RTN","PSO DIR1",13,0 )
  4474    .K DIR S  DIR(0)="E" ,DIR("A")= "Press Ret urn to con tinue" D ^ DIR K DIR
  4475   "RTN","PSO DIR1",14,0 )
  4476    I $G(PSOT PBFG),$G(P SOFROM)="N EW" G TPBB
  4477   "RTN","PSO DIR1",15,0 )
  4478    N PSOX
  4479   "RTN","PSO DIR1",16,0 )
  4480    S PSOX=$G (^PS(55,PS ODFN,"PS") ) I PSOX]" " S PSORX( "PATIENT S TATUS")=$P ($G(^PS(53 ,PSOX,0)), "^"),DIC(" B")=PSORX( "PATIENT S TATUS")
  4481   "RTN","PSO DIR1",17,0 )
  4482    S:$G(PSOD IR("PATIEN T STATUS") )]"" DIC(" B")=PSODIR ("PATIENT  STATUS")
  4483   "RTN","PSO DIR1",18,0 )
  4484   TPBB ;
  4485   "RTN","PSO DIR1",19,0 )
  4486    D ELIG^VA DPT W !,"E ligibility : "_$P(VAE L(1),"^",2 )_$S(+VAEL (3):"      SC%: "_$P( VAEL(3),"^ ",2),1:"")
  4487   "RTN","PSO DIR1",20,0 )
  4488    S N=0 F   S N=$O(VAE L(1,N)) Q: 'N  W !,?1 0,$P(VAEL( 1,N),"^",2 )
  4489   "RTN","PSO DIR1",21,0 )
  4490    S DIC("A" )="RX PATI ENT STATUS : "
  4491   "RTN","PSO DIR1",22,0 )
  4492    S DIC(0)= "QEAMZ",DI C=53 D ^DI C K DIC
  4493   "RTN","PSO DIR1",23,0 )
  4494    I $G(PSOT PBFG),$G(P SOFROM)="N EW" N PSOP SDIR,PSOFN DZZ,PSOPSU PA S (PSOP SDIR,PSOPS UPA)=0 D   I PSOPSDIR  S:PSOPSUP A PSODIR(" DFLG")=1 G :PSOPSUPA  PTSTATX W  ! D PSTPB  G PTSTATEN
  4495   "RTN","PSO DIR1",24,0 )
  4496    .I +Y'>0! ($D(DTOUT) )!($D(DUOU T)) S (PSO PSDIR,PSOP SUPA)=1 Q
  4497   "RTN","PSO DIR1",25,0 )
  4498    .S (PSODI R("PATIENT  STATUS"), PSORX("PAT IENT STATU S"))=+Y,PS ODIR("PTST  NODE")=Y( 0)
  4499   "RTN","PSO DIR1",26,0 )
  4500    .S PSOFND ZZ=$P($G(^ PS(53,+Y,0 )),"^") S  PSOFNDZZ=$ $UP^XLFSTR (PSOFNDZZ)  I PSOFNDZ Z'="NON-VA " S PSOPSD IR=1 K PSO DIR("PATIE NT STATUS" ),PSORX("P ATIENT STA TUS"),PSOD IR("PTST N ODE")
  4501   "RTN","PSO DIR1",27,0 )
  4502    I $G(PSOT PBFG),$G(P SOFROM)="N EW" G TPBS C
  4503   "RTN","PSO DIR1",28,0 )
  4504    I X[U,$L( X)>1 D:'$G (PSOEDIT)  JUMP G PTS TATX
  4505   "RTN","PSO DIR1",29,0 )
  4506    I $D(DUOU T)!$D(DTOU T) S PSODI R("DFLG")= 1 G PTSTAT X
  4507   "RTN","PSO DIR1",30,0 )
  4508    I Y=-1 W  $C(7)," Re quired" G  PTSTATEN
  4509   "RTN","PSO DIR1",31,0 )
  4510    N PSOFNDX ,PSOFNDXY, PSOFNDXX,P SOFNDYY
  4511   "RTN","PSO DIR1",32,0 )
  4512    S PSOFNDX Y=$G(Y),PS OFNDYY=$G( Y(0))
  4513   "RTN","PSO DIR1",33,0 )
  4514    I '$G(PSO TPBFG),$G( PSOFROM)=" NEW" S PSO FNDX=$P($G (^PS(53,+Y ,0)),"^")  S PSOFNDXX =$$UP^XLFS TR(PSOFNDX ) I PSOFND XX="NON-VA " K PSOFND X,PSOFNDXY ,PSOFNDYY, PSOFNDXX,Y  W !!,"Can not select  'NON-VA'  Rx Patient  Status!", ! G PTSTAT EN
  4515   "RTN","PSO DIR1",34,0 )
  4516    S Y=$G(PS OFNDXY),Y( 0)=$G(PSOF NDYY)
  4517   "RTN","PSO DIR1",35,0 )
  4518    K PSOFNDX Y,PSOFNDYY ,PSOFNDX,P SOFNDXX
  4519   "RTN","PSO DIR1",36,0 )
  4520    S (PSODIR ("PATIENT  STATUS"),P SORX("PATI ENT STATUS "))=+Y
  4521   "RTN","PSO DIR1",37,0 )
  4522    S PSODIR( "PTST NODE ")=Y(0)
  4523   "RTN","PSO DIR1",38,0 )
  4524   TPBSC ;
  4525   "RTN","PSO DIR1",39,0 )
  4526    I $G(PSOF DR),$P($G( OR0),"^",1 7)="C" G P TSTATX
  4527   "RTN","PSO DIR1",40,0 )
  4528    L +^PS(55 ,PSODFN):$ S(+$G(^DD( "DILOCKTM" ))>0:+^DD( "DILOCKTM" ),1:3) I ' $T G PTSTA TX
  4529   "RTN","PSO DIR1",41,0 )
  4530    S DIE="55 ",DR="3/// /"_+Y,DA=P SODFN D ^D IE K DIE,D A,D0
  4531   "RTN","PSO DIR1",42,0 )
  4532    L -^PS(55 ,PSODFN)
  4533   "RTN","PSO DIR1",43,0 )
  4534   PTSTATX K  DTOUT,DUOU T,X,Y,DA
  4535   "RTN","PSO DIR1",44,0 )
  4536    Q
  4537   "RTN","PSO DIR1",45,0 )
  4538   SIG(PSODIR ) ;
  4539   "RTN","PSO DIR1",46,0 )
  4540    I $G(PSOF DR),$G(PSO DIR("SIG") )']"" D SI GOK G:$G(S IGOK)!($G( PSODIR("DF LG"))) SIG X
  4541   "RTN","PSO DIR1",47,0 )
  4542    K DIR,DIC
  4543   "RTN","PSO DIR1",48,0 )
  4544    S DIR(0)= "52,10"
  4545   "RTN","PSO DIR1",49,0 )
  4546    S:$G(PSOD RUG("SIG") )]"" DIR(" B")=PSODRU G("SIG")
  4547   "RTN","PSO DIR1",50,0 )
  4548    S:$G(PSOD IR("SIG")) ]"" DIR("B ")=PSODIR( "SIG")
  4549   "RTN","PSO DIR1",51,0 )
  4550    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  SIGX
  4551   "RTN","PSO DIR1",52,0 )
  4552    S PSODIR( "SIG")=Y,S IGOK=0 K S IG
  4553   "RTN","PSO DIR1",53,0 )
  4554   SIGX K X,Y
  4555   "RTN","PSO DIR1",54,0 )
  4556    Q
  4557   "RTN","PSO DIR1",55,0 )
  4558   QTY(PSODIR ) ;
  4559   "RTN","PSO DIR1",56,0 )
  4560   QTYA K DIR ,DIC
  4561   "RTN","PSO DIR1",57,0 )
  4562    I $G(CLOZ PAT)=1 S D IR("A",1)= "Patient E ligible fo r 14 day s upply or 7  day suppl y with 1 r efill"
  4563   "RTN","PSO DIR1",58,0 )
  4564    I $G(CLOZ PAT)=2 S D IR("A",1)= "Patient E ligible 28  day suppl y or 14 da y supply w ith 1 refi ll or 7 da y supply w ith 3 refi ll"
  4565   "RTN","PSO DIR1",59,0 )
  4566    S DIR(0)= "52,7" S:$ G(PSODRUG( "IEN")) DI R("A")="QT Y ( "_$G(P SODRUG("UN IT"))_" )  "_$S($P($G (^PSDRUG(+ PSODRUG("I EN"),5))," ^")]"":$P( ^PSDRUG(+P SODRUG("IE N"),5),"^" ),1:"")
  4567   "RTN","PSO DIR1",60,0 )
  4568    K QTYHLD  I $G(PSODI R("QTY"))] "" S QTYHL D=PSODIR(" QTY") K PS ODIR("QTY" )
  4569   "RTN","PSO DIR1",61,0 )
  4570    D:'$G(PSO QTY) QTY^P SOSIG(.PSO DIR)
  4571   "RTN","PSO DIR1",62,0 )
  4572    I '$G(SPE ED),$G(QTY HLD),'$G(P SODIR("QTY ")) S PSOD IR("QTY")= QTYHLD
  4573   "RTN","PSO DIR1",63,0 )
  4574    K QTYHLD  K:'$G(PSOD IR("QTY"))  PSODIR("Q TY")
  4575   "RTN","PSO DIR1",64,0 )
  4576    I $G(SPEE D),$G(PSOD IR("QTY")) ']"" S PSO DIR("QTY") =$P(^PSRX( PSORENW("O IRXN"),0), "^",7)
  4577   "RTN","PSO DIR1",65,0 )
  4578    S:$G(PSOD IR("QTY")) ]"" DIR("B ")=PSODIR( "QTY")
  4579   "RTN","PSO DIR1",66,0 )
  4580    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  QTYX
  4581   "RTN","PSO DIR1",67,0 )
  4582    I $G(Y),$ G(PSODRUG( "MAXDOSE") )]"",$G(PS ODIR("DAYS  SUPPLY")) ,(Y/+PSODI R("DAYS SU PPLY")>PSO DRUG("MAXD OSE")) D   G:$G(PSODI R("DFLG"))  QTYX  G Q TYA
  4583   "RTN","PSO DIR1",68,0 )
  4584    .W !,$C(7 )," Greate r than Max imum dose  of "_PSODR UG("MAXDOS E")_" per  day" D DAY SEN
  4585   "RTN","PSO DIR1",69,0 )
  4586    I $G(PSOF DR),$P($G( OR0),"^",2 4),$G(PSOD IR("QTY")) ,+Y>$G(PSO DIR("QTY") ) D  G QTY X
  4587   "RTN","PSO DIR1",70,0 )
  4588    .W !!,"Di gitally Si gned Order  - QTY can not be inc reased",!
  4589   "RTN","PSO DIR1",71,0 )
  4590    .N DIR S  DIR(0)="E" ,DIR("A")= "Press Ret urn to Con tinue" D ^ DIR W !
  4591   "RTN","PSO DIR1",72,0 )
  4592    S PSODIR( "QTY")=Y
  4593   "RTN","PSO DIR1",73,0 )
  4594   QTYX K X,Y
  4595   "RTN","PSO DIR1",74,0 )
  4596    Q
  4597   "RTN","PSO DIR1",75,0 )
  4598   COPIES(PSO DIR) ;
  4599   "RTN","PSO DIR1",76,0 )
  4600    K DIR,DIC
  4601   "RTN","PSO DIR1",77,0 )
  4602    S DIR(0)= "52,10.6"
  4603   "RTN","PSO DIR1",78,0 )
  4604    S DIR("B" )=$S($G(PS ODIR("COPI ES"))]"":P SODIR("COP IES"),1:1)
  4605   "RTN","PSO DIR1",79,0 )
  4606    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  COPIESX
  4607   "RTN","PSO DIR1",80,0 )
  4608    S PSODIR( "COPIES")= Y
  4609   "RTN","PSO DIR1",81,0 )
  4610   COPIESX K  X,Y
  4611   "RTN","PSO DIR1",82,0 )
  4612    Q
  4613   "RTN","PSO DIR1",83,0 )
  4614   DAYS(PSODI R) ;
  4615   "RTN","PSO DIR1",84,0 )
  4616   DAYSEN K D IR,DIC N P SORFLS
  4617   "RTN","PSO DIR1",85,0 )
  4618    ;PSO*7*26 6
  4619   "RTN","PSO DIR1",86,0 )
  4620    N S2DS,MX DAYSUP,DFD AYSUP,PSDA YSUP,CSDRU G,NEWTOTDS ,PSOREGN S  S2DS=0
  4621   "RTN","PSO DIR1",87,0 )
  4622    S MXDAYSU P=90,CSDRU G=0
  4623   "RTN","PSO DIR1",88,0 )
  4624    I $D(PSOD RUG("IEN") ) D
  4625   "RTN","PSO DIR1",89,0 )
  4626    .S MXDAYS UP=$$MXDAY SUP^PSSUTI L1(PSODRUG ("IEN"))
  4627   "RTN","PSO DIR1",90,0 )
  4628    .S S2DS=$ $CSDS^PSOS IGDS(PSODR UG("IEN"))  I S2DS,$P ($G(PSODIR ("PTST NOD E")),"^",3 )>29 S S2D S=30
  4629   "RTN","PSO DIR1",91,0 )
  4630    .S PSORFL S=$S($G(PS ODIR("# OF  REFILLS") ):PSODIR(" # OF REFIL LS"),1:$P( $G(PSODIR( "RX0")),"^ ",9))
  4631   "RTN","PSO DIR1",92,0 )
  4632    .I '$D(PS ODRUG("DEA ")) S PSOD RUG("DEA") =$$GET1^DI Q(50,PSODR UG("IEN"), 3,"")
  4633   "RTN","PSO DIR1",93,0 )
  4634    .I (PSODR UG("DEA")[ "2")!(PSOD RUG("DEA") ["3")!(PSO DRUG("DEA" )["4")!(PS ODRUG("DEA ")["5") S  CSDRUG=1
  4635   "RTN","PSO DIR1",94,0 )
  4636    S PSOREGN =$$GET1^DI Q(55,PSODF N,53)
  4637   "RTN","PSO DIR1",95,0 )
  4638    S PSDAYSU P=$S(PSORE GN?1U6N!$D (^TMP($J," CLOZFLG",P SODFN)):4, $G(CLOZPAT )=2:28,$G( CLOZPAT)=1 :14,$G(CLO ZPAT)=0:7, 1:MXDAYSUP )
  4639   "RTN","PSO DIR1",96,0 )
  4640    S DIR(0)= "N^1:"_PSD AYSUP
  4641   "RTN","PSO DIR1",97,0 )
  4642    S DFDAYSU P=$S($D(CL OZPAT)&('$ G(PSODIR(" DAYS SUPPL Y"))):7,$G (PSODIR("D AYS SUPPLY "))]"":PSO DIR("DAYS  SUPPLY"),S 2DS>1:S2DS ,$P($G(PSO DIR("PTST  NODE")),"^ ",3):$P(PS ODIR("PTST  NODE"),"^ ",3),1:30)
  4643   "RTN","PSO DIR1",98,0 )
  4644    I DFDAYSU P>MXDAYSUP  D  S DFDA YSUP=MXDAY SUP
  4645   "RTN","PSO DIR1",99,0 )
  4646    .W:$G(PSO DIR("DAYS  SUPPLY"))  !!,$C(7)," Invalid DA YS SUPPLY  value (",D FDAYSUP,") , resettin g it to ", MXDAYSUP,"  (maximum  allowed)." ,!
  4647   "RTN","PSO DIR1",100, 0)
  4648    S DIR("B" )=DFDAYSUP
  4649   "RTN","PSO DIR1",101, 0)
  4650    S DIR("A" )="DAYS SU PPLY",DIR( "?")="Ente r a whole  number bet ween 1 and  "_PSDAYSU P
  4651   "RTN","PSO DIR1",102, 0)
  4652    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  DAYSX
  4653   "RTN","PSO DIR1",103, 0)
  4654    I $G(Y),$ G(PSODRUG( "MAXDOSE") )]"",$G(PS ODIR("QTY" ))]"",(+PS ODIR("QTY" )/Y>PSODRU G("MAXDOSE ")) D  G D AYSEN
  4655   "RTN","PSO DIR1",104, 0)
  4656    .W !,$C(7 )," Greate r than Max imum dose  of "_PSODR UG("MAXDOS E")_" per  day"
  4657   "RTN","PSO DIR1",105, 0)
  4658    I $G(PSOF DR),$P($G( OR0),"^",2 4),$G(PSOD IR("DAYS S UPPLY")),+ Y>$G(PSODI R("DAYS SU PPLY")) D   G DAYSX
  4659   "RTN","PSO DIR1",106, 0)
  4660    .W !!,"Di gitally Si gned Order  - Days Su pply canno t be incre ased",!
  4661   "RTN","PSO DIR1",107, 0)
  4662    .N DIR S  DIR(0)="E" ,DIR("A")= "Press Ret urn to Con tinue" D ^ DIR W !
  4663   "RTN","PSO DIR1",108, 0)
  4664    I $G(PSON EW("FLD")) =8,PSODIR( "DAYS SUPP LY")=Y Q
  4665   "RTN","PSO DIR1",109, 0)
  4666    S:$G(PSOD IR("DAYS S UPPLY")) P SODIR("OLD  DAYS SUPP LY")=PSODI R("DAYS SU PPLY")
  4667   "RTN","PSO DIR1",110, 0)
  4668    S PSODIR( "DAYS SUPP LY")=Y
  4669   "RTN","PSO DIR1",111, 0)
  4670    ; Checkin g the # Of  Refills f ield value  after the  Days Supp ly field w as edited
  4671   "RTN","PSO DIR1",112, 0)
  4672    I $D(PSOD RUG("IEN") ),$G(Y),$G (Y)>$S(PSO RFLS<4:90, PSORFLS<6: 89,PSORFLS <12:60,1:0 ) D
  4673   "RTN","PSO DIR1",113, 0)
  4674    .N PTST
  4675   "RTN","PSO DIR1",114, 0)
  4676    .S PTST=+ $G(PSODIR( "PATIENT S TATUS")) S :'PTST PTS T=$P($G(PS ODIR("RX0" )),"^",3)
  4677   "RTN","PSO DIR1",115, 0)
  4678    .I 'PTST, $G(PSODFN)  S PTST=+$ G(^PS(55,P SODFN,"PS" ))
  4679   "RTN","PSO DIR1",116, 0)
  4680    .I PSORFL S>$$MAXNUM RF^PSOUTIL (PSODRUG(" IEN"),Y,PT ST,.CLOZPA T) D
  4681   "RTN","PSO DIR1",117, 0)
  4682    .. W !,$C (7),"Inval id number  of REFILLS  for amoun t of DAYS  SUPPLY.",! ,"REFILL E DIT FORCED ." D REFIL L(.PSODIR)
  4683   "RTN","PSO DIR1",118, 0)
  4684    .. S PSOD IR("FLD",9 )=PSODIR(" # OF REFIL LS")
  4685   "RTN","PSO DIR1",119, 0)
  4686    S:$G(CLOZ PAT)=0 (PS ODIR("N# R EF"),PSODI R("# OF RE FILLS"))=0
  4687   "RTN","PSO DIR1",120, 0)
  4688    D:$G(CLOZ PAT)=2
  4689   "RTN","PSO DIR1",121, 0)
  4690    .S:PSODIR ("DAYS SUP PLY")=28 ( PSODIR("N#  REF"),PSO DIR("# OF  REFILLS")) =0
  4691   "RTN","PSO DIR1",122, 0)
  4692    .S:PSODIR ("DAYS SUP PLY")=14 ( PSODIR("N#  REF"),PSO DIR("# OF  REFILLS")) =1
  4693   "RTN","PSO DIR1",123, 0)
  4694    .S:PSODIR ("DAYS SUP PLY")=7 (P SODIR("N#  REF"),PSOD IR("# OF R EFILLS"))= 3
  4695   "RTN","PSO DIR1",124, 0)
  4696    D:$G(CLOZ PAT)=1
  4697   "RTN","PSO DIR1",125, 0)
  4698    .S:PSODIR ("DAYS SUP PLY")=14 ( PSODIR("N#  REF"),PSO DIR("# OF  REFILLS")) =0
  4699   "RTN","PSO DIR1",126, 0)
  4700    .S:PSODIR ("DAYS SUP PLY")=7 (P SODIR("N#  REF"),PSOD IR("# OF R EFILLS"))= 1
  4701   "RTN","PSO DIR1",127, 0)
  4702    K QTYHLD  S:$G(PSODI R("QTY"))  QTYHLD=PSO DIR("QTY")  D QTY^PSO SIG(.PSODI R)
  4703   "RTN","PSO DIR1",128, 0)
  4704    I $G(QTYH LD),'$G(PS ODIR("QTY" )) S PSODI R("QTY")=Q TYHLD
  4705   "RTN","PSO DIR1",129, 0)
  4706    K QTYHLD  K:'$G(PSOD IR("QTY"))  PSODIR("Q TY")
  4707   "RTN","PSO DIR1",130, 0)
  4708   DAYSX K X, Y
  4709   "RTN","PSO DIR1",131, 0)
  4710    Q
  4711   "RTN","PSO DIR1",132, 0)
  4712   REFILL(PSO DIR) ;
  4713   "RTN","PSO DIR1",133, 0)
  4714    N PSODAYS ,PSOX
  4715   "RTN","PSO DIR1",134, 0)
  4716    S PSODAYS =+$G(PSODI R("DAYS SU PPLY"))
  4717   "RTN","PSO DIR1",135, 0)
  4718    ;Recalcul ating RFTT  if it doe sn't exist
  4719   "RTN","PSO DIR1",136, 0)
  4720    I '$G(PSO NEW) D
  4721   "RTN","PSO DIR1",137, 0)
  4722    .N I I '$ G(RFTT),$G (PSORXED(" IRXN")) F  I=0:0 S I= $O(^PSRX(P SORXED("IR XN"),1,I))  Q:'I  S R FTT=$G(RFT T)+1
  4723   "RTN","PSO DIR1",138, 0)
  4724    ;
  4725   "RTN","PSO DIR1",139, 0)
  4726    I $G(PSOD IR("PTST N ODE"))=""  D
  4727   "RTN","PSO DIR1",140, 0)
  4728    .N X,Y
  4729   "RTN","PSO DIR1",141, 0)
  4730    .S X=$G(P SODIR("PAT IENT STATU S")) S:'X  X=$P(RX0," ^",3)
  4731   "RTN","PSO DIR1",142, 0)
  4732    .S DIC=53 ,DIC(0)="Q XZ" D ^DIC  K DIC
  4733   "RTN","PSO DIR1",143, 0)
  4734    .S:+Y PSO DIR("PTST  NODE")=Y(0 )
  4735   "RTN","PSO DIR1",144, 0)
  4736    .S:'$G(PS ODIR("PATI ENT STATUS ")) PSODIR ("PATIENT  STATUS")=+ Y
  4737   "RTN","PSO DIR1",145, 0)
  4738    S $P(PSOD IR("PTST N ODE"),"^", 4)=+$P($G( PSODIR("PT ST NODE")) ,"^",4)
  4739   "RTN","PSO DIR1",146, 0)
  4740    I $G(OR0)  G REFOR
  4741   "RTN","PSO DIR1",147, 0)
  4742    K DIR,DIC ,PSOX
  4743   "RTN","PSO DIR1",148, 0)
  4744    ; Control led Substa nce
  4745   "RTN","PSO DIR1",149, 0)
  4746    S PSODIR( "CS")=0
  4747   "RTN","PSO DIR1",150, 0)
  4748    I (PSODRU G("DEA")[" 2")!(PSODR UG("DEA")[ "3")!(PSOD RUG("DEA") ["4")!(PSO DRUG("DEA" )["5") D
  4749   "RTN","PSO DIR1",151, 0)
  4750    . S $P(PS ODIR("CS") ,"^")=1 S: (PSODRUG(" DEA")["2")  $P(PSODIR ("CS"),"^" ,2)=1
  4751   "RTN","PSO DIR1",152, 0)
  4752    ;
  4753   "RTN","PSO DIR1",153, 0)
  4754    ; Retriev ing the Ma ximum Numb er of Refi lls allowe d
  4755   "RTN","PSO DIR1",154, 0)
  4756    S PSOX=$$ MAXNUMRF^P SOUTIL(+$G (PSODRUG(" IEN")),PSO DAYS,+$G(P SODIR("PAT IENT STATU S")),.CLOZ PAT)
  4757   "RTN","PSO DIR1",155, 0)
  4758    ;
  4759   "RTN","PSO DIR1",156, 0)
  4760    I '$D(CLO ZPAT) I PS ODRUG("DEA ")["A"&(PS ODRUG("DEA ")'["B")!( PSODRUG("D EA")["F")! (PSODRUG(" DEA")[1)!( PSODRUG("D EA")[2) D   G REFILLX
  4761   "RTN","PSO DIR1",157, 0)
  4762    .I PSODRU G("DEA")[" A"&(PSODRU G("DEA")'[ "B")!(PSOD RUG("DEA") [1)!(PSODR UG("DEA")[ 2)!'$O(^PS RX(+$G(PSO DIR("IRXN" )),1,0))!( '$G(PSOLOK ED)) D  Q
  4763   "RTN","PSO DIR1",158, 0)
  4764    ..S VALMS G="No refi lls allowe d on "_$S( PSODRUG("D EA")["F":" this drug. ",1:"Narco tics.") W  !,VALMSG,!
  4765   "RTN","PSO DIR1",159, 0)
  4766    ..S:$D(PS ODIR("FIEL D")) PSODI R("FIELD") =0 S PSODI R("# OF RE FILLS")=0
  4767   "RTN","PSO DIR1",160, 0)
  4768    ..Q
  4769   "RTN","PSO DIR1",161, 0)
  4770    .;reset r efills to  the # give n
  4771   "RTN","PSO DIR1",162, 0)
  4772    .D RFRSET ^PSODIR2
  4773   "RTN","PSO DIR1",163, 0)
  4774    .Q
  4775   "RTN","PSO DIR1",164, 0)
  4776    I $P($G(P SODIR("CS" )),"^",2)= 1 W !,"No  refills al lowed on S chedule 2  drugs...", ! S:$D(PSO DIR("FIELD ")) PSODIR ("FIELD")= 0 S PSODIR ("# OF REF ILLS")=0 G  REFILLX
  4777   "RTN","PSO DIR1",165, 0)
  4778    ;
  4779   "RTN","PSO DIR1",166, 0)
  4780    ;/RBN - I ntegration  of 457 st art
  4781   "RTN","PSO DIR1",167, 0)
  4782    I $D(CLOZ PAT) S PSO X=$S($G(CL OZPAT)=2&( PSODIR("DA YS SUPPLY" )=14):1,$G (CLOZPAT)= 2&(PSODIR( "DAYS SUPP LY")=7):3, $G(CLOZPAT )=1&(PSODI R("DAYS SU PPLY")=7): 1,1:0)
  4783   "RTN","PSO DIR1",168, 0)
  4784    ;/RBN - I ntegration  of 457 en d
  4785   "RTN","PSO DIR1",169, 0)
  4786    ;
  4787   "RTN","PSO DIR1",170, 0)
  4788    ;PSO*7*26 6 make sur e PSOX is  greater th an RFTT
  4789   "RTN","PSO DIR1",171, 0)
  4790    S DIR(0)= "N^"_$S($G (RFTT):RFT T,1:0)_":" _$S(+$G(RF TT)>PSOX:R FTT,1:PSOX ),DIR("A") ="# OF REF ILLS"
  4791   "RTN","PSO DIR1",172, 0)
  4792    ;PSO*7*34 0 Correct  Default Va lue.
  4793   "RTN","PSO DIR1",173, 0)
  4794    S DIR("B" )=$S($G(CO PY):PSODIR ("# OF REF ILLS"),$G( PSODIR("N#  REF"))]"" :PSODIR("N # REF"),$G (PSODIR("#  OF REFILL S"))]"":PS ODIR("# OF  REFILLS") ,$G(RFTT)> PSOX:RFTT, 1:PSOX)
  4795   "RTN","PSO DIR1",174, 0)
  4796    S DIR("?" ,1)="Enter  a whole n umber. The  maximum n umber of r efills is  based on"
  4797   "RTN","PSO DIR1",175, 0)
  4798    S DIR("?" )="the DAY S SUPPLY a nd the PAT IENT STATU S fields."
  4799   "RTN","PSO DIR1",176, 0)
  4800    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  REFILLX
  4801   "RTN","PSO DIR1",177, 0)
  4802    S (PSODIR ("N# REF") ,PSODIR("#  OF REFILL S"))=Y
  4803   "RTN","PSO DIR1",178, 0)
  4804   REFILLX S: $G(PSODIR( "# OF REFI LLS"))']""  PSODIR("#  OF REFILL S")=$S($G( PSODIR("N#  REF"))]"" :PSODIR("N # REF"),1: PSOX)
  4805   "RTN","PSO DIR1",179, 0)
  4806    K X,Y,PSO X,DEA,PSOC S,RFTT ;PS O*7*340 Ki ll RFTT
  4807   "RTN","PSO DIR1",180, 0)
  4808    Q
  4809   "RTN","PSO DIR1",181, 0)
  4810    ;OERR CAL L
  4811   "RTN","PSO DIR1",182, 0)
  4812   REFOR ;
  4813   "RTN","PSO DIR1",183, 0)
  4814    D REFOR^P SODIR3
  4815   "RTN","PSO DIR1",184, 0)
  4816    G REFILLX
  4817   "RTN","PSO DIR1",185, 0)
  4818    Q
  4819   "RTN","PSO DIR1",186, 0)
  4820   DIR ;
  4821   "RTN","PSO DIR1",187, 0)
  4822    S (PSODIR ("FIELD"), PSODIR("DF LG"))=0
  4823   "RTN","PSO DIR1",188, 0)
  4824    G:$G(DIR( 0))']"" DI RX
  4825   "RTN","PSO DIR1",189, 0)
  4826    D ^DIR K  DIR,DIE,DI C,DA
  4827   "RTN","PSO DIR1",190, 0)
  4828    I $D(DUOU T)!($D(DTO UT))!($D(D IROUT)),$L ($G(X))'>1 !(Y="") S  PSODIR("DF LG")=1 G D IRX
  4829   "RTN","PSO DIR1",191, 0)
  4830    I $D(DIRU T)!($D(DIR OUT)),$G(S PEED) S PS ODIR("DFLG ")=1 G DIR X
  4831   "RTN","PSO DIR1",192, 0)
  4832    I X[U,$L( X)>1 D JUM P
  4833   "RTN","PSO DIR1",193, 0)
  4834   DIRX K DIR UT,DTOUT,D UOUT,DIROU T
  4835   "RTN","PSO DIR1",194, 0)
  4836    Q
  4837   "RTN","PSO DIR1",195, 0)
  4838   JUMP ;
  4839   "RTN","PSO DIR1",196, 0)
  4840    I $G(PSOE DIT)!($G(O R0)) S PSO DIR("DFLG" )=1 Q
  4841   "RTN","PSO DIR1",197, 0)
  4842    S X=$P(X, "^",2),DIC ="^DD(52," ,DIC(0)="Q M" D ^DIC  K DIC
  4843   "RTN","PSO DIR1",198, 0)
  4844    I Y=-1 S  PSODIR("FI ELD")=PSOD IR("FLD")  G JUMPX
  4845   "RTN","PSO DIR1",199, 0)
  4846    I $G(PSON EW1)=0 D J UMP^PSONEW 1 G JUMPX
  4847   "RTN","PSO DIR1",200, 0)
  4848    I $G(PSOR EF1)=0 D J UMP^PSOREF 1 G JUMPX
  4849   "RTN","PSO DIR1",201, 0)
  4850    I $G(PSON EW3)=0 D J UMP^PSONEW 3 G JUMPX
  4851   "RTN","PSO DIR1",202, 0)
  4852    I $G(PSOR ENW3)=0 D  JUMP^PSORE NW3 G JUMP X
  4853   "RTN","PSO DIR1",203, 0)
  4854   JUMPX S X= "^"_X
  4855   "RTN","PSO DIR1",204, 0)
  4856    Q
  4857   "RTN","PSO DIR1",205, 0)
  4858   SIGOK ;rev iew and de cide on oe rr sig
  4859   "RTN","PSO DIR1",206, 0)
  4860    I '$O(SIG (0)) S SIG OK=0 Q
  4861   "RTN","PSO DIR1",207, 0)
  4862    K SIGOK W  !,"SIG: "
  4863   "RTN","PSO DIR1",208, 0)
  4864    F SIG=0:0  S SIG=$O( SIG(SIG))  W SIG(SIG) _" ",!?5 Q :'$O(SIG(S IG))
  4865   "RTN","PSO DIR1",209, 0)
  4866    K DIR,DIR UT,DUOUT,D TOUT S DIR ("B")="YES ",DIR(0)=" Y",DIR("A" )="Is this  SIG corre ct" D ^DIR  K DIR I $ D(DIRUT) S  PSODIR("D FLG")=1 K  DIRUT,DUOU T,DTOUT Q
  4867   "RTN","PSO DIR1",210, 0)
  4868    S SIGOK=Y  I Y K PSO DIR("SIG")
  4869   "RTN","PSO DIR1",211, 0)
  4870    Q
  4871   "RTN","PSO DIR1",212, 0)
  4872   PSTPB ;
  4873   "RTN","PSO DIR1",213, 0)
  4874    W !,"New  orders ent ered throu gh this op tion must  have a Pat ient Statu s of 'NON- VA'!",!
  4875   "RTN","PSO DIR1",214, 0)
  4876    Q
  4877   "RTN","PSO DIR2")
  4878   0^8^B32135 372
  4879   "RTN","PSO DIR2",1,0)
  4880   PSODIR2 ;I HS/DSD/JCM  - rx orde r entry co ntd ;Jul 2 4, 2017@15 :24
  4881   "RTN","PSO DIR2",2,0)
  4882    ;;7.0;OUT PATIENT PH ARMACY;**3 ,9,26,46,1 24,146,139 ,152,166,4 57**;DEC 1 997;Build  65
  4883   "RTN","PSO DIR2",3,0)
  4884    ;External  reference  to ^DD(52  supported  by DBIA 9 99
  4885   "RTN","PSO DIR2",4,0)
  4886    ;External  reference  to ^VA(20 0 supporte d by DBIA  10060
  4887   "RTN","PSO DIR2",5,0)
  4888    ;External  reference  to ^%DTC  supported  by DBIA 10 000
  4889   "RTN","PSO DIR2",6,0)
  4890    ;External  reference  to ^DIC s upported b y DBIA 100 06
  4891   "RTN","PSO DIR2",7,0)
  4892    ;External  reference  to ^DIR s upported b y DBIA 100 26
  4893   "RTN","PSO DIR2",8,0)
  4894    ;
  4895   "RTN","PSO DIR2",9,0)
  4896    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- -
  4897   "RTN","PSO DIR2",10,0 )
  4898    ;
  4899   "RTN","PSO DIR2",11,0 )
  4900   EXP(PSODIR ) ;
  4901   "RTN","PSO DIR2",12,0 )
  4902    K DIR,DIC
  4903   "RTN","PSO DIR2",13,0 )
  4904    I $G(PSOD RUG("EXPIR ATION DATE "))]"" S Y =PSODRUG(" EXPIRATION  DATE") X  ^DD("DD")  S PSORX("E XPIRATION  DATE")=Y
  4905   "RTN","PSO DIR2",14,0 )
  4906    S DIR("A" )="EXPIRES ",DIR("B") =$S($G(PSO RX("EXPIRA TION DATE" ))]"":PSOR X("EXPIRAT ION DATE") ,1:"T+6M")
  4907   "RTN","PSO DIR2",15,0 )
  4908    S DIR(0)= "D^NOW::EX "
  4909   "RTN","PSO DIR2",16,0 )
  4910    S DIR("?" )="Both th e month an d date are  required. "
  4911   "RTN","PSO DIR2",17,0 )
  4912    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  EXPX
  4913   "RTN","PSO DIR2",18,0 )
  4914    S PSODIR( "EXPIRATIO N DATE")=Y
  4915   "RTN","PSO DIR2",19,0 )
  4916   EXPX K X,Y
  4917   "RTN","PSO DIR2",20,0 )
  4918    Q
  4919   "RTN","PSO DIR2",21,0 )
  4920    ;
  4921   "RTN","PSO DIR2",22,0 )
  4922   CLINIC(PSO DIR) ;
  4923   "RTN","PSO DIR2",23,0 )
  4924    K DIR,DIC  S PSODIR( "FIELD")=0
  4925   "RTN","PSO DIR2",24,0 )
  4926    S DIR(0)= "52,5" S:$ G(PSORX("C LINIC"))]" " DIR("B") =PSORX("CL INIC"),DIR ("A")="CLI NIC"
  4927   "RTN","PSO DIR2",25,0 )
  4928    D ^DIR G: PSODIR("DF LG")!PSODI R("FIELD")  CLINICX
  4929   "RTN","PSO DIR2",26,0 )
  4930    I +Y>0 S  PSODIR("CL INIC")=+Y, PSORX("CLI NIC")=$P(Y ,"^",2)
  4931   "RTN","PSO DIR2",27,0 )
  4932    E  S (PSO RX("CLINIC "),PSODIR( "CLINIC")) =""
  4933   "RTN","PSO DIR2",28,0 )
  4934   CLINICX K  X,Y,PSOX,D IC
  4935   "RTN","PSO DIR2",29,0 )
  4936    Q
  4937   "RTN","PSO DIR2",30,0 )
  4938    ;
  4939   "RTN","PSO DIR2",31,0 )
  4940   MW(PSODIR)  ;
  4941   "RTN","PSO DIR2",32,0 )
  4942    K DIR,DIC
  4943   "RTN","PSO DIR2",33,0 )
  4944    S DIR(0)= "52,11" S: $G(POERR)& '$D(PSORX( "MAIL/WIND OW")) PSOR X("MAIL/WI NDOW")=$S( $P($G(OR0) ,"^",17)=" M":"MAIL", 1:"WINDOW" )
  4945   "RTN","PSO DIR2",34,0 )
  4946    S DIR("B" )=$S($G(PS ORX("MAIL/ WINDOW"))] "":PSORX(" MAIL/WINDO W"),$G(PSO TPBFG)&($G (PSOFROM)= "NEW"):"MA IL",1:"WIN DOW")
  4947   "RTN","PSO DIR2",35,0 )
  4948    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  MWX
  4949   "RTN","PSO DIR2",36,0 )
  4950    I $G(Y(0) )']"" S PS ODIR("DFLG ")=1 G MWX
  4951   "RTN","PSO DIR2",37,0 )
  4952    S PSODIR( "MAIL/WIND OW")=Y,PSO RX("MAIL/W INDOW")=Y( 0)
  4953   "RTN","PSO DIR2",38,0 )
  4954    I $G(PSOR X("EDIT")) ]"",PSODIR ("MAIL/WIN DOW")'="W"  K PSODIR( "METHOD OF  PICK-UP")
  4955   "RTN","PSO DIR2",39,0 )
  4956   MW1 G:PSOD IR("MAIL/W INDOW")'=" W"!('$P($G (PSOPAR)," ^",12)) MW X
  4957   "RTN","PSO DIR2",40,0 )
  4958    S DIR(0)= "52,35O"
  4959   "RTN","PSO DIR2",41,0 )
  4960    S:$G(PSOR X("METHOD  OF PICK-UP "))]"" DIR ("B")=PSOR X("METHOD  OF PICK-UP ")
  4961   "RTN","PSO DIR2",42,0 )
  4962    D DIR G:P SODIR("DFL G") MWX
  4963   "RTN","PSO DIR2",43,0 )
  4964    I X[U W ! ,"Cannot j ump to ano ther field  ..",! G M W1
  4965   "RTN","PSO DIR2",44,0 )
  4966    S (PSODIR ("METHOD O F PICK-UP" ),PSORX("M ETHOD OF P ICK-UP"))= Y
  4967   "RTN","PSO DIR2",45,0 )
  4968   MWX K X,Y
  4969   "RTN","PSO DIR2",46,0 )
  4970    Q
  4971   "RTN","PSO DIR2",47,0 )
  4972    ;
  4973   "RTN","PSO DIR2",48,0 )
  4974   RMK(PSODIR ) ;
  4975   "RTN","PSO DIR2",49,0 )
  4976   RMKEN K DI R,DIC
  4977   "RTN","PSO DIR2",50,0 )
  4978    S DIR(0)= "52,12"
  4979   "RTN","PSO DIR2",51,0 )
  4980    S:$G(PSOD IR("REMARK S"))]"" DI R("B")=PSO DIR("REMAR KS")
  4981   "RTN","PSO DIR2",52,0 )
  4982    D DIR G:P SODIR("DFL G") RMKX
  4983   "RTN","PSO DIR2",53,0 )
  4984    I X[U W ! ,"Cannot j ump to ano ther field  ..",! G R MKEN
  4985   "RTN","PSO DIR2",54,0 )
  4986    S:$L(X)>0  PSODIR("R EMARKS")=X
  4987   "RTN","PSO DIR2",55,0 )
  4988    S:X="@" P SODIR("REM ARKS")=""
  4989   "RTN","PSO DIR2",56,0 )
  4990   RMKX K X,Y
  4991   "RTN","PSO DIR2",57,0 )
  4992    Q
  4993   "RTN","PSO DIR2",58,0 )
  4994    ;
  4995   "RTN","PSO DIR2",59,0 )
  4996   ISSDT(PSOD IR) ;
  4997   "RTN","PSO DIR2",60,0 )
  4998    K DIR,DIC
  4999   "RTN","PSO DIR2",61,0 )
  5000    S DIR("A" )="ISSUE D ATE",DIR(" B")=$S($G( POERR)&($G (PSORX("IS SUE DATE") )']"")&($G (PSODIR("I SSUE DATE" ))]""):PSO DIR("ISSUE  DATE"),$G (PSORX("IS SUE DATE") )]"":PSORX ("ISSUE DA TE"),1:"TO DAY")
  5001   "RTN","PSO DIR2",62,0 )
  5002    I DIR("B" ) S Y=DIR( "B") X ^DD ("DD") S D IR("B")=Y
  5003   "RTN","PSO DIR2",63,0 )
  5004    S DIR(0)= "52,1"
  5005   "RTN","PSO DIR2",64,0 )
  5006    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  ISSDTX
  5007   "RTN","PSO DIR2",65,0 )
  5008    S (PSODIR ("ISSUE DA TE"),PSOID )=Y
  5009   "RTN","PSO DIR2",66,0 )
  5010    X ^DD("DD ") S (PSOR X("ISSUE D ATE"),PSOD IR("ISSUE  DATE"))=Y
  5011   "RTN","PSO DIR2",67,0 )
  5012   ISSDTX K X ,Y
  5013   "RTN","PSO DIR2",68,0 )
  5014    Q
  5015   "RTN","PSO DIR2",69,0 )
  5016    ;
  5017   "RTN","PSO DIR2",70,0 )
  5018   FILLDT(PSO DIR) ;
  5019   "RTN","PSO DIR2",71,0 )
  5020    K DIR,DIC
  5021   "RTN","PSO DIR2",72,0 )
  5022    S:'$G(PSO NEW("DAYS  SUPPLY"))  PSONEW("DA YS SUPPLY" )=30,PSONE W("# OF RE FILLS")=1
  5023   "RTN","PSO DIR2",73,0 )
  5024    S DIR("A" )="FILL DA TE",DIR("B ")=$S($G(P SORX("FILL  DATE"))]" ":PSORX("F ILL DATE") ,1:"TODAY" )
  5025   "RTN","PSO DIR2",74,0 )
  5026    S X2=PSON EW("DAYS S UPPLY")*(P SONEW("# O F REFILLS" )+1)\1
  5027   "RTN","PSO DIR2",75,0 )
  5028    S X1=$S($ G(PSOID):P SOID,1:DT)
  5029   "RTN","PSO DIR2",76,0 )
  5030    S X2=$S(P SONEW("DAY S SUPPLY") =X2:X2,+$G (PSODIR("C S")):184,1 :366)
  5031   "RTN","PSO DIR2",77,0 )
  5032    I X2<30 D
  5033   "RTN","PSO DIR2",78,0 )
  5034    . N % S % =$P($G(PSO RX("PATIEN T STATUS") ),"^"),X2= 30
  5035   "RTN","PSO DIR2",79,0 )
  5036    . S:%?.N  %=$P($G(^P S(53,+%,0) ),"^") I % ["AUTH ABS " S X2=5
  5037   "RTN","PSO DIR2",80,0 )
  5038    ;; START  NCC REMEDI ATION >> 4 57*RJS
  5039   "RTN","PSO DIR2",81,0 )
  5040    ;; ADJUST  EXPIRE DA TE FOR 4 D AY SUPPLY
  5041   "RTN","PSO DIR2",82,0 )
  5042    I $G(CLOZ FLG),PSONE W("DAYS SU PPLY"),5 S  X2=PSONEW ("DAYS SUP PLY")*(PSO NEW("# OF  REFILLS")+ 1)\1
  5043   "RTN","PSO DIR2",83,0 )
  5044    ;; END NC C REMEDIAT ION << 457 *RJS
  5045   "RTN","PSO DIR2",84,0 )
  5046    D C^%DTC  S PSOFDMX= $P(X,".")  I DT>X S Y =$S($G(PSO ID):PSOID, 1:PSORX("I SSUE DATE" )) X ^DD(" DD") S DIR ("B")=Y
  5047   "RTN","PSO DIR2",85,0 )
  5048    S DIR(0)= "D^"_$S($G (PSOID):PS OID,+$G(PS ODIR("ISSU E DATE")): PSODIR("IS SUE DATE") ,1:DT)_$S( $G(DUZ("AG "))="I":": "_DT_":EX" ,1:":"_PSO FDMX_":EX" )
  5049   "RTN","PSO DIR2",86,0 )
  5050    S Y=PSOFD MX X ^DD(" DD")
  5051   "RTN","PSO DIR2",87,0 )
  5052    S DIR("?" ,1)="The e arliest fi ll date al lowed is d etermined  by the ISS UE DATE,"
  5053   "RTN","PSO DIR2",88,0 )
  5054    S DIR("?" ,2)="the F ILL DATE c annot be b efore the  ISSUE DATE  or AFTER  the Expira tion Date  "
  5055   "RTN","PSO DIR2",89,0 )
  5056    S DIR("?" )=Y_".  Bo th the mon th and dat e are requ ired."
  5057   "RTN","PSO DIR2",90,0 )
  5058    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  FILLDTX
  5059   "RTN","PSO DIR2",91,0 )
  5060    S PSODIR( "FILL DATE ")=Y
  5061   "RTN","PSO DIR2",92,0 )
  5062    X ^DD("DD ") S PSORX ("FILL DAT E")=Y
  5063   "RTN","PSO DIR2",93,0 )
  5064   FILLDTX K  X,Y,PSOFDM X
  5065   "RTN","PSO DIR2",94,0 )
  5066    Q
  5067   "RTN","PSO DIR2",95,0 )
  5068    ;
  5069   "RTN","PSO DIR2",96,0 )
  5070   CLERK(PSOD IR) ;
  5071   "RTN","PSO DIR2",97,0 )
  5072    I $G(DUZ( "AG"))'="I " D  G CLE RKX
  5073   "RTN","PSO DIR2",98,0 )
  5074    .S PSODIR ("CLERK CO DE")=$S($G (PSOFDR):$ P(OR0,"^", 4),1:DUZ), PSORX("CLE RK CODE")= $P($G(^VA( 200,PSODIR ("CLERK CO DE"),0))," ^")
  5075   "RTN","PSO DIR2",99,0 )
  5076    K DIR,DIC
  5077   "RTN","PSO DIR2",100, 0)
  5078    S DIR("A" )="CLERK", DIR("B")=$ S($G(PSORX ("CLERK CO DE"))]"":P SORX("CLER K CODE"),1 :$P($G(^VA (200,DUZ,0 )),"^",2)) ,DIR(0)="5 2,16"
  5079   "RTN","PSO DIR2",101, 0)
  5080    D DIR G:P SODIR("DFL G")!PSODIR ("FIELD")  CLERKX
  5081   "RTN","PSO DIR2",102, 0)
  5082    S PSODIR( "CLERK COD E")=+Y,PSO RX("CLERK  CODE")=$P( Y,"^")
  5083   "RTN","PSO DIR2",103, 0)
  5084   CLERKX Q
  5085   "RTN","PSO DIR2",104, 0)
  5086    ;
  5087   "RTN","PSO DIR2",105, 0)
  5088   DIR ;
  5089   "RTN","PSO DIR2",106, 0)
  5090    S PSODIR( "FIELD")=0
  5091   "RTN","PSO DIR2",107, 0)
  5092    G:$G(DIR( 0))']"" DI RX
  5093   "RTN","PSO DIR2",108, 0)
  5094    D ^DIR K  DIR,DIE,DI C,DA I X=" ^^" S (PSO DIR("QFLG" ),PSODIR(" DFLG"))=1  G DIRX
  5095   "RTN","PSO DIR2",109, 0)
  5096    I $D(DUOU T)!($D(DTO UT))!($D(D IROUT)),$L ($G(X))'>1 !(Y="") S  PSODIR("DF LG")=1 S:$ G(SPEED) P SODIR("QFL G")=1 G DI RX
  5097   "RTN","PSO DIR2",110, 0)
  5098    I $D(DUOU T)!($D(DTO UT)),$G(SP EED) S PSO DIR("DFLG" )=1 G DIRX
  5099   "RTN","PSO DIR2",111, 0)
  5100    I X[U,$L( X)>1 D JUM P
  5101   "RTN","PSO DIR2",112, 0)
  5102   DIRX K DIR UT,DTOUT,D UOUT,DIROU T,PSOX
  5103   "RTN","PSO DIR2",113, 0)
  5104    Q
  5105   "RTN","PSO DIR2",114, 0)
  5106    ;
  5107   "RTN","PSO DIR2",115, 0)
  5108   JUMP ;
  5109   "RTN","PSO DIR2",116, 0)
  5110    I $G(PSOE DIT)!($G(O R0)) S PSO DIR("DFLG" )=1 Q
  5111   "RTN","PSO DIR2",117, 0)
  5112    S X=$P(X, "^",2),DIC ="^DD(52," ,DIC(0)="Q M" D ^DIC  K DIC
  5113   "RTN","PSO DIR2",118, 0)
  5114    I Y=-1 S  PSODIR("FI ELD")=$G(P SODIR("FLD ")) G JUMP X
  5115   "RTN","PSO DIR2",119, 0)
  5116    I $G(PSON EW1)=0 D J UMP^PSONEW 1 G JUMPX
  5117   "RTN","PSO DIR2",120, 0)
  5118    I $G(PSON EW3)=0 D J UMP^PSONEW 3 G JUMPX
  5119   "RTN","PSO DIR2",121, 0)
  5120    I $G(PSOR ENW3)=0 D  JUMP^PSORE NW3 G JUMP X
  5121   "RTN","PSO DIR2",122, 0)
  5122   JUMPX S X= "^"_X
  5123   "RTN","PSO DIR2",123, 0)
  5124    Q
  5125   "RTN","PSO DIR2",124, 0)
  5126    ;Reset re fills when  drug chan ged to a c ontrolled  sub
  5127   "RTN","PSO DIR2",125, 0)
  5128   RFRSET ;
  5129   "RTN","PSO DIR2",126, 0)
  5130    N RFN,RFN C
  5131   "RTN","PSO DIR2",127, 0)
  5132    S (RFN,RF NC)=0
  5133   "RTN","PSO DIR2",128, 0)
  5134    F  S RFN= $O(^PSRX(+ $G(PSODIR( "IRXN")),1 ,RFN)) Q:' RFN  S RFN C=RFNC+1
  5135   "RTN","PSO DIR2",129, 0)
  5136    I $D(PSOD IR("FIELD" )) S PSODI R("FIELD") =0
  5137   "RTN","PSO DIR2",130, 0)
  5138    S PSODIR( "# OF REFI LLS")=RFNC
  5139   "RTN","PSO DIR2",131, 0)
  5140    S VALMSG= "The drug  has been c hanged and  no longer  allows re fills."
  5141   "RTN","PSO DIR2",132, 0)
  5142    W !,VALMS G,!
  5143   "RTN","PSO DIR2",133, 0)
  5144    Q
  5145   "RTN","PSO DRG")
  5146   0^5^B92777 437
  5147   "RTN","PSO DRG",1,0)
  5148   PSODRG ;IH S/DSD/JCM  - ORDER EN TRY DRUG S ELECTION ; Jul 24, 20 17@15:24
  5149   "RTN","PSO DRG",2,0)
  5150    ;;7.0;OUT PATIENT PH ARMACY;**2 0,23,36,53 ,54,46,112 ,139,207,1 48,243,268 ,324,251,3 75,387,398 ,390,427,4 11,458,457 **;DEC 199 7;Build 65
  5151   "RTN","PSO DRG",3,0)
  5152    ;Referenc e to ^PSDR UG( suppor ted by DBI A 221
  5153   "RTN","PSO DRG",4,0)
  5154    ;Referenc e to ^PS(5 0.7 suppor ted by DBI A 2223
  5155   "RTN","PSO DRG",5,0)
  5156    ;Referenc e to $$PRO MPT^PSSDIN  supported  by DBIA 3 166
  5157   "RTN","PSO DRG",6,0)
  5158    ;Referenc e to EN^PS SDIN suppo rted by DB IA 3166
  5159   "RTN","PSO DRG",7,0)
  5160    ;Referenc e to $$GET NDC^PSSNDC UT support ed by DBIA  4707
  5161   "RTN","PSO DRG",8,0)
  5162    ;Referenc e to ^OROC API contro lled subsc ription su pported by  DBIA 5367
  5163   "RTN","PSO DRG",9,0)
  5164    ;Referenc e to $$OIT M^ORX8 sup ported by  DBIA 5469
  5165   "RTN","PSO DRG",10,0)
  5166    ;Referenc e to ^VADP T supporte d by DBIA  10061
  5167   "RTN","PSO DRG",11,0)
  5168    ;Referenc e to IN^PS SHRQ2 supp orted by D BIA 5369
  5169   "RTN","PSO DRG",12,0)
  5170    ;Referenc e to ^XTMP ("ORRDI" s upported b y DBIA 544 0
  5171   "RTN","PSO DRG",13,0)
  5172    ;-------- ---------- ---------- ---------- ---------- ----------
  5173   "RTN","PSO DRG",14,0)
  5174   START ;
  5175   "RTN","PSO DRG",15,0)
  5176    S (PSONEW ("DFLG"),P SONEW("FIE LD"),PSODR G("QFLG")) =0 K PSORX ("DFLG")
  5177   "RTN","PSO DRG",16,0)
  5178    D @($S(+$ G(PSOEDIT) =1&('$D(DA )):"SELECT ^PSODRGN", 1:"SELECT" ))
  5179   "RTN","PSO DRG",17,0)
  5180    G:$G(PSOR XED("DFLG" )) END ; S elect Drug
  5181   "RTN","PSO DRG",18,0)
  5182    I $G(PSOR X("EDIT")) ,$G(PSOY), $G(PSODRUG ("IEN"))=+ PSOY D  G: $G(PSORXED ("DFLG"))  END
  5183   "RTN","PSO DRG",19,0)
  5184    . N NDC D  NDC(+$G(P SORXED("IR XN")),0,+P SOY,.NDC)  I $G(NDC)= "^" S PSOR XED("DFLG" )=1 Q
  5185   "RTN","PSO DRG",20,0)
  5186    . I $G(ND C)'="" S ( PSODRUG("N DC"),PSORX ED("FLD",2 7))=NDC
  5187   "RTN","PSO DRG",21,0)
  5188    ;
  5189   "RTN","PSO DRG",22,0)
  5190    I $G(PSOR X("EDIT")) ]"",'PSONE W("FIELD")  D TRADE
  5191   "RTN","PSO DRG",23,0)
  5192    G:$G(PSON EW("DFLG") )!($G(PSOD RG("QFLG") ))!($G(PSO RXED("DFLG "))) END
  5193   "RTN","PSO DRG",24,0)
  5194    D SET ; S et various  drug info rmation
  5195   "RTN","PSO DRG",25,0)
  5196    D NFI ; D isplay dis pense drug /orderable  item text
  5197   "RTN","PSO DRG",26,0)
  5198    D:'$G(PSO EDIT) POST  I $G(PSOR X("DFLG"))  S PSONEW( "DFLG")=1  K:'$G(PSOR X("EDIT"))  PSORX("DF LG") ; Do  any post s election a ction
  5199   "RTN","PSO DRG",27,0)
  5200   END ;D EOJ
  5201   "RTN","PSO DRG",28,0)
  5202    Q
  5203   "RTN","PSO DRG",29,0)
  5204    ;-------- ---------- ---------- ---------- ---------- ---------- --
  5205   "RTN","PSO DRG",30,0)
  5206    ;
  5207   "RTN","PSO DRG",31,0)
  5208   SELECT ;
  5209   "RTN","PSO DRG",32,0)
  5210    K:'$G(PSO RXED) CLOZ PAT
  5211   "RTN","PSO DRG",33,0)
  5212    K IT,DIC, X,Y,PSODRU G("TRADE N AME"),PSOD RUG("NDC") ,PSODRUG(" DAW"),PSOD RUG("BAD")  S:$G(POER R)&($P($G( OR0),"^",9 )) Y=$$GET 1^DIQ(50,$ P(OR0,"^", 9),.01)
  5213   "RTN","PSO DRG",34,0)
  5214    I $G(PSOD RUG("IEN") )]"" S Y=P SODRUG("NA ME"),PSONE W("OLD VAL ")=PSODRUG ("IEN")
  5215   "RTN","PSO DRG",35,0)
  5216    W !,"DRUG : "_$S($G( Y)]"":Y_"/ / ",1:"")  R X:$S($D( DTIME):DTI ME,1:300)  I '$T S DT OUT=1
  5217   "RTN","PSO DRG",36,0)
  5218    I X="",$G (Y)]"" S:Y  X=Y S:'X  X=$G(PSODR UG("IEN"))  S:X X="`" _X
  5219   "RTN","PSO DRG",37,0)
  5220    G:X="" SE LECT
  5221   "RTN","PSO DRG",38,0)
  5222    I X?1."?"  W !!,"Ans wer with D RUG NUMBER , or GENER IC NAME, o r VA PRODU CT NAME, o r",!,"NATI ONAL DRUG  CLASS, or  SYNONYM" G  SELECT
  5223   "RTN","PSO DRG",39,0)
  5224    I $G(PSOR XED),X["^"  S PSORXED ("DFLG")=1  G SELECTX
  5225   "RTN","PSO DRG",40,0)
  5226    I X="^"!( X["^^")!($ D(DTOUT))  S PSONEW(" DFLG")=1 G  SELECTX
  5227   "RTN","PSO DRG",41,0)
  5228    I '$G(POE RR),X[U,$L (X)>1 S PS ODIR("FLD" )=PSONEW(" FLD") D JU MP^PSODIR1  S:$G(PSOD IR("FIELD" )) PSONEW( "FIELD")=P SODIR("FIE LD") K PSO DIR S PSOD RG("QFLG") =1 G SELEC TX
  5229   "RTN","PSO DRG",42,0)
  5230    S DIC=50, DIC(0)="EM QZVT",DIC( "T")="",D= "B^C^VAPN^ VAC"
  5231   "RTN","PSO DRG",43,0)
  5232    S DIC("S" )="I $S('$ $GET1^DIQ( 50,+Y,100, ""I""):1,D T'>$$GET1^ DIQ(50,+Y, 100,""I"") :1,1:0),$S ($$GET1^DI Q(50,+Y,63 ,""I"")'[" "O"":0,1:1 )"   ;,$D( ^PSDRUG("" ASP"",+$G( ^(2)),+Y)) "
  5233   "RTN","PSO DRG",44,0)
  5234    D MIX^DIC 1 K DIC,D
  5235   "RTN","PSO DRG",45,0)
  5236    I $D(DTOU T) S PSONE W("DFLG")= 1 G SELECT X
  5237   "RTN","PSO DRG",46,0)
  5238    I $D(DUOU T) K DUOUT  G SELECT
  5239   "RTN","PSO DRG",47,0)
  5240    I Y<0 G S ELECT
  5241   "RTN","PSO DRG",48,0)
  5242    S:$G(PSON EW("OLD VA L"))=+Y&(' $G(PSOEDIT )) PSODRG( "QFLG")=1
  5243   "RTN","PSO DRG",49,0)
  5244    K PSOY S  PSOY=Y,PSO Y(0)=Y(0)
  5245   "RTN","PSO DRG",50,0)
  5246    I $P(PSOY (0),"^")=" OTHER DRUG "!($P(PSOY (0),"^")=" OUTSIDE DR UG") D TRA DE
  5247   "RTN","PSO DRG",51,0)
  5248   SELECTX K  X,Y,DTOUT, DUOUT,PSON EW("OLD VA L")
  5249   "RTN","PSO DRG",52,0)
  5250    Q
  5251   "RTN","PSO DRG",53,0)
  5252    ;
  5253   "RTN","PSO DRG",54,0)
  5254   NDC(RX,RFL ,DRG,NDC)  ; Editing  NDC for Re leased Rx' s or for U nresolved  ECME Rejec ts
  5255   "RTN","PSO DRG",55,0)
  5256    S NDC=$S( $G(NDC)'=" ":$G(NDC), 1:$$GETNDC ^PSONDCUT( RX,.RFL))
  5257   "RTN","PSO DRG",56,0)
  5258    ; Check i f we shoul d edit the  NDC
  5259   "RTN","PSO DRG",57,0)
  5260    ; Needs t o be relea sed or hav e unresolv ed billabl e rejects  (PSO*7*427 )
  5261   "RTN","PSO DRG",58,0)
  5262    ;
  5263   "RTN","PSO DRG",59,0)
  5264    N PSOCONT  S PSOCONT =0                           ; c ontinue fl ag
  5265   "RTN","PSO DRG",60,0)
  5266    D  Q:'PSO CONT                                    ; g et out if  NDC edit n ot allowed
  5267   "RTN","PSO DRG",61,0)
  5268    . I $$RXR LDT^PSOBPS UT(RX,RFL)  S PSOCONT =1 Q   ; R eleased -  continue a nd allow e dit
  5269   "RTN","PSO DRG",62,0)
  5270    . I $$FIN D^PSOREJUT (RX,RFL),$ $STATUS^PS OBPSUT(RX, RFL)'="" S  PSOCONT=1  Q    ; un released w /unresolve d billable  rejection s
  5271   "RTN","PSO DRG",63,0)
  5272    . Q
  5273   "RTN","PSO DRG",64,0)
  5274    ;
  5275   "RTN","PSO DRG",65,0)
  5276    S NDC=$S( $G(NDC)'=" ":$G(NDC), 1:$$GETNDC ^PSONDCUT( RX,.RFL))
  5277   "RTN","PSO DRG",66,0)
  5278    D NDCEDT^ PSONDCUT(R X,.RFL,$G( DRG),$G(PS OSITE),.ND C)
  5279   "RTN","PSO DRG",67,0)
  5280    Q
  5281   "RTN","PSO DRG",68,0)
  5282    ;
  5283   "RTN","PSO DRG",69,0)
  5284   TRADE ;
  5285   "RTN","PSO DRG",70,0)
  5286    K DIR,DIC ,DA,X,Y
  5287   "RTN","PSO DRG",71,0)
  5288    S DIR(0)= "52,6.5" S :$G(PSOTRN )]"" DIR(" B")=$G(PSO TRN) D ^DI R K DIR,DI C
  5289   "RTN","PSO DRG",72,0)
  5290    I X="@" S  Y=X K DIR UT
  5291   "RTN","PSO DRG",73,0)
  5292    I $D(DIRU T) S:$D(DU OUT)!$D(DT OUT)&('$D( PSORX("EDI T"))) PSON EW("DFLG") =1 G TRADE X
  5293   "RTN","PSO DRG",74,0)
  5294    S PSODRUG ("TRADE NA ME")=Y
  5295   "RTN","PSO DRG",75,0)
  5296   TRADEX I $ G(PSORXED( "DFLG")),$ D(DIRUT) S  PSORXED(" DFLG")=1
  5297   "RTN","PSO DRG",76,0)
  5298    K DIRUT,D TOUT,DUOUT ,X,Y,DA,DR ,DIE
  5299   "RTN","PSO DRG",77,0)
  5300    Q
  5301   "RTN","PSO DRG",78,0)
  5302   SET ;
  5303   "RTN","PSO DRG",79,0)
  5304    N STAT S  PSODRUG("I EN")=+PSOY ,PSODRUG(" VA CLASS") =$P(PSOY(0 ),"^",2)
  5305   "RTN","PSO DRG",80,0)
  5306    S PSODRUG ("NAME")=$ P(PSOY(0), "^")
  5307   "RTN","PSO DRG",81,0)
  5308    S:$$GET1^ DIQ(50,+PS OY,2.1,"I" ) PSODRUG( "OI")=$$GE T1^DIQ(50, +PSOY,2.1, "I"),PSODR UG("OIN")= $$GET1^DIQ (50,+PSOY, 2.1)
  5309   "RTN","PSO DRG",82,0)
  5310    S PSODRUG ("NDF")=$S ($$GET1^DI Q(50,+PSOY ,20,"I"):$ $GET1^DIQ( 50,+PSOY,2 0,"I")_"A" _$$GET1^DI Q(50,+PSOY ,22,"I"),1 :0)
  5311   "RTN","PSO DRG",83,0)
  5312    S PSODRUG ("MAXDOSE" )=$P(PSOY( 0),"^",4), PSODRUG("D EA")=$P(PS OY(0),"^", 3)
  5313   "RTN","PSO DRG",84,0)
  5314    S PSODRUG ("CLN")=$S ($$GET1^DI Q(50,+PSOY ,20,"I"):$ $GET1^DIQ( 50,+PSOY,2 5,"I"),1:0 )
  5315   "RTN","PSO DRG",85,0)
  5316    S PSODRUG ("SIG")=$P (PSOY(0)," ^",5)
  5317   "RTN","PSO DRG",86,0)
  5318    I $G(PSOD RUG("NDC") )="" S PSO DRUG("NDC" )=$$GETNDC ^PSSNDCUT( +PSOY,$G(P SOSITE))
  5319   "RTN","PSO DRG",87,0)
  5320    S PSODRUG ("DAW")=+$ $GET1^DIQ( 50,+PSOY,8 1)
  5321   "RTN","PSO DRG",88,0)
  5322    S PSODRUG ("STKLVL") =$$GET1^DI Q(50,+PSOY ,50)
  5323   "RTN","PSO DRG",89,0)
  5324    G:'$$GET1 ^DIQ(50,+P SOY,11) SE TX
  5325   "RTN","PSO DRG",90,0)
  5326    S PSOX1=$ G(^PSDRUG( +PSOY,660) )
  5327   "RTN","PSO DRG",91,0)
  5328    S PSODRUG ("COST")=$ $GET1^DIQ( 50,+PSOY,1 5)
  5329   "RTN","PSO DRG",92,0)
  5330    S PSODRUG ("UNIT")=$ $GET1^DIQ( 50,+PSOY,1 4.5)
  5331   "RTN","PSO DRG",93,0)
  5332    S PSODRUG ("EXPIRATI ON DATE")= $$GET1^DIQ (50,+PSOY, 17.1,"I")
  5333   "RTN","PSO DRG",94,0)
  5334   SETX K PSO X1,PSOY
  5335   "RTN","PSO DRG",95,0)
  5336    Q
  5337   "RTN","PSO DRG",96,0)
  5338   NFI ;displ ay restric tion/guide lines
  5339   "RTN","PSO DRG",97,0)
  5340    D EN^PSSD IN(PSODRUG ("OI"),PSO DRUG("IEN" )) S NFI=$ $PROMPT^PS SDIN
  5341   "RTN","PSO DRG",98,0)
  5342    I NFI]"", "ODY"[NFI  D TD^PSONF I
  5343   "RTN","PSO DRG",99,0)
  5344    K NFI Q
  5345   "RTN","PSO DRG",100,0 )
  5346   POST ;orde r checks
  5347   "RTN","PSO DRG",101,0 )
  5348    N LIST S  LIST="PSOP EPS"
  5349   "RTN","PSO DRG",102,0 )
  5350    K PSODOSD ,^TMP("PSO RXDC",$J), ^TMP($J,LI ST),^TMP(" PSODAOC",$ J)
  5351   "RTN","PSO DRG",103,0 )
  5352    K ZDGDG,Z THER,IT,PS ODLQT,PSOD OSD
  5353   "RTN","PSO DRG",104,0 )
  5354    I $D(^XTM P("ORRDI", "OUTAGE IN FO","DOWN" )) S ^TMP( "PSODAOC", $J,"NORDI" ,1,0)="Rem ote data n ot availab le - Only  local orde r checks p rocessed."
  5355   "RTN","PSO DRG",105,0 )
  5356    S ^TMP($J ,LIST,"IN" ,"PING")=" " D IN^PSS HRQ2(LIST)
  5357   "RTN","PSO DRG",106,0 )
  5358    K DIR I $ P(^TMP($J, LIST,"OUT" ,0),"^")=- 1 D
  5359   "RTN","PSO DRG",107,0 )
  5360    .D DATACK ^PSODDPRE
  5361   "RTN","PSO DRG",108,0 )
  5362    .S ^TMP(" PSODAOC",$ J,"NOSYS", 1,0)="No E nhanced Or der Checks  can be pe rformed. R eason(s):  "_$P($G(^T MP($J,LIST ,"OUT",0)) ,"^",2)
  5363   "RTN","PSO DRG",109,0 )
  5364    K ^TMP($J ,LIST,"IN" ),^TMP($J, LIST,"OUT" ,"EXCEPTIO NS")
  5365   "RTN","PSO DRG",110,0 )
  5366    G:$G(PSOR X("DFLG")) !($G(PSORX ED("DFLG") )) POSTX
  5367   "RTN","PSO DRG",111,0 )
  5368    K PSORX(" INTERVENE" ),PSOQUIT  N STAT,SIG ,PTR,NDF,V AP S PSORX ("DFLG")=0
  5369   "RTN","PSO DRG",112,0 )
  5370    W !! D HD ^PSODDPR2( ):(($Y+5)' >IOSL)
  5371   "RTN","PSO DRG",113,0 )
  5372    D ^PSOBUI LD
  5373   "RTN","PSO DRG",114,0 )
  5374    D:'$D(PSO DGCK) @$S( $G(COPY):" ^PSOCPPRE" ,1:"^PSODD PRE") ; Du plicate dr ug check
  5375   "RTN","PSO DRG",115,0 )
  5376    G:$G(PSOR X("DFLG"))  POSTX
  5377   "RTN","PSO DRG",116,0 )
  5378    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5379   "RTN","PSO DRG",117,0 )
  5380    I $$GET1^ DIQ(50,+$G (PSODRUG(" IEN")),17. 5)="PSOCLO 1" D CLOZ
  5381   "RTN","PSO DRG",118,0 )
  5382    G:PSORX(" DFLG") POS TX
  5383   "RTN","PSO DRG",119,0 )
  5384    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5385   "RTN","PSO DRG",120,0 )
  5386    W !,"Now  doing alle rgy checks .  Please  wait...",!  H 1
  5387   "RTN","PSO DRG",121,0 )
  5388    S PSONOAL ="" D ALLE RGY^PSOORU T2 D:PSONO AL'="" NOA LRGY K PSO NOAL
  5389   "RTN","PSO DRG",122,0 )
  5390    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5391   "RTN","PSO DRG",123,0 )
  5392    I '$G(PSO DGCKX) D ^ PSODGAL1 K  PSORX("IN TERVENE")
  5393   "RTN","PSO DRG",124,0 )
  5394    G:PSORX(" DFLG")!$G( PSOQUIT) P OSTX
  5395   "RTN","PSO DRG",125,0 )
  5396    ;This is  the allerg y check fo r profile  drugs CK a ction
  5397   "RTN","PSO DRG",126,0 )
  5398    I $D(PSOD GCK),$D(PS OSD) D PRF LP^PSOUTL
  5399   "RTN","PSO DRG",127,0 )
  5400    G:$G(PSOR X("DFLG"))  POSTX ;ps o*7*412
  5401   "RTN","PSO DRG",128,0 )
  5402    G:$G(PSOS PRNW)&($G( PSORENW("D FLG"))) PO STX ;speed  renew
  5403   "RTN","PSO DRG",129,0 )
  5404    ;aminogly coside
  5405   "RTN","PSO DRG",130,0 )
  5406    N AOC,CRO CPFLG S CR OCPFLG=0
  5407   "RTN","PSO DRG",131,0 )
  5408    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5409   "RTN","PSO DRG",132,0 )
  5410    S AOC=$$A OC^OROCAPI (PSODFN,$P (PSODRUG(" NDF"),"A", 2)) I $P(A OC,"^",4)] "" D
  5411   "RTN","PSO DRG",133,0 )
  5412    .S CROCPF LG=1
  5413   "RTN","PSO DRG",134,0 )
  5414    .W !!,"** *Aminoglyc oside Orde red***",!!
  5415   "RTN","PSO DRG",135,0 )
  5416    .K ^UTILI TY($J,"W")  S DIWL=1, DIWR=78,DI WF="" S X= $P(AOC,"^" ,4) D ^DIW P
  5417   "RTN","PSO DRG",136,0 )
  5418    .W ! F ZX =0:0 S ZX= $O(^UTILIT Y($J,"W",1 ,ZX)) Q:'Z X  W ?2,^U TILITY($J, "W",1,ZX,0 ),! D HD^P SODDPR2(): (($Y+5)'>I OSL)
  5419   "RTN","PSO DRG",137,0 )
  5420    .K ^UTILI TY($J,"W")
  5421   "RTN","PSO DRG",138,0 )
  5422    .S ^TMP(" PSODAOC",$ J,"CPRS",$ P(AOC,"^", 2),0)=PSOD RUG("IEN") _"^"_$P(AO C,"^",4)
  5423   "RTN","PSO DRG",139,0 )
  5424    .W !
  5425   "RTN","PSO DRG",140,0 )
  5426    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5427   "RTN","PSO DRG",141,0 )
  5428    ;dangerou s meds for  pat >64
  5429   "RTN","PSO DRG",142,0 )
  5430    I $G(PSOD RUG("OI"))  D
  5431   "RTN","PSO DRG",143,0 )
  5432    .N OI,OIR  S OI=$$OI TM^ORX8(PS ODRUG("OI" ),"99PSP")  Q:'OI
  5433   "RTN","PSO DRG",144,0 )
  5434    .S OIR=$$ DOC^OROCAP I(PSODFN,O I) I $P(OI R,"^",4)]" " D
  5435   "RTN","PSO DRG",145,0 )
  5436    ..S CROCP FLG=1
  5437   "RTN","PSO DRG",146,0 )
  5438    ..D HD^PS ODDPR2():( ($Y+5)'>IO SL) W !!," ***Dangero us Meds fo r Patient  >64***",!!  S DFN=PSO DFN D DEM^ VADPT
  5439   "RTN","PSO DRG",147,0 )
  5440    ..K ^UTIL ITY($J,"W" ) S DIWL=1 ,DIWR=78,D IWF="" S X =$P(OIR,"^ ",4) D ^DI WP
  5441   "RTN","PSO DRG",148,0 )
  5442    ..F ZX=0: 0 S ZX=$O( ^UTILITY($ J,"W",1,ZX )) Q:'ZX   W ?2,^UTIL ITY($J,"W" ,1,ZX,0),!  D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5443   "RTN","PSO DRG",149,0 )
  5444    ..K ^UTIL ITY($J,"W" )
  5445   "RTN","PSO DRG",150,0 )
  5446    ..S ^TMP( "PSODAOC", $J,"CPRS", $P(OIR,"^" ,2),0)=PSO DRUG("IEN" )_"^"_$P(O IR,"^",4)
  5447   "RTN","PSO DRG",151,0 )
  5448    ..W !
  5449   "RTN","PSO DRG",152,0 )
  5450    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5451   "RTN","PSO DRG",153,0 )
  5452    ;metformi n lab resu lts
  5453   "RTN","PSO DRG",154,0 )
  5454    N GOC S G OC=$$GOC^O ROCAPI(PSO DFN,PSODRU G("NAME"))  I $P(GOC, "^",4)]""  D
  5455   "RTN","PSO DRG",155,0 )
  5456    .S CROCPF LG=1
  5457   "RTN","PSO DRG",156,0 )
  5458    .W !!,"** *Metformin  Lab Resul ts***",!!
  5459   "RTN","PSO DRG",157,0 )
  5460    .K ^UTILI TY($J,"W")  S DIWL=1, DIWR=78,DI WF="" S X= $P(GOC,"^" ,4) D ^DIW P
  5461   "RTN","PSO DRG",158,0 )
  5462    .F ZX=0:0  S ZX=$O(^ UTILITY($J ,"W",1,ZX) ) Q:'ZX  W  ?2,^UTILI TY($J,"W", 1,ZX,0),!  D HD^PSODD PR2():(($Y +5)'>IOSL)
  5463   "RTN","PSO DRG",159,0 )
  5464    .K ^UTILI TY($J,"W")
  5465   "RTN","PSO DRG",160,0 )
  5466    .S ^TMP(" PSODAOC",$ J,"CPRS",$ P(GOC,"^", 2),0)=PSOD RUG("IEN") _"^"_$P(GO C,"^",4)
  5467   "RTN","PSO DRG",161,0 )
  5468    .W !
  5469   "RTN","PSO DRG",162,0 )
  5470    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5471   "RTN","PSO DRG",163,0 )
  5472    ;clinical  reminder  oc
  5473   "RTN","PSO DRG",164,0 )
  5474    D:'$G(PSO NCROC) CK^ PSOCROC K  CROCPFLG I  $G(PSORX( "DFLG")) Q
  5475   "RTN","PSO DRG",165,0 )
  5476    K DIWF,DI WL,DIWR,ZX ,DFN,CROCP FLG
  5477   "RTN","PSO DRG",166,0 )
  5478    I $G(PSOD RUG("DEA") )["S"!($E( $G(PSODRUG ("VA CLASS ")),1,2)=" XA"),'$G(P SODGCK) D   G POSTX ; stops if d rug is sup ply
  5479   "RTN","PSO DRG",167,0 )
  5480    .W !,"Now  Processin g Enhanced  Order Che cks!  Plea se wait... ",! H 1
  5481   "RTN","PSO DRG",168,0 )
  5482    ;enhanced  OC
  5483   "RTN","PSO DRG",169,0 )
  5484    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5485   "RTN","PSO DRG",170,0 )
  5486    W ! D @$S ($G(COPY): "OBX^PSOCP PRE",1:"OB X^PSODDPRE ") ; Set P SORX("DFLG ")=1 if pr ocess to s top new en hanced ord er checks
  5487   "RTN","PSO DRG",171,0 )
  5488   POSTX ;
  5489   "RTN","PSO DRG",172,0 )
  5490    K IT,^TMP ($J,"DI"), PSORX("INT ERVENE"),D A,^TMP($J, "PSODRDI") ,ZDGDG,ZTH ER,^TMP($J ,"DI"_PSOD FN),PSZZQU IT
  5491   "RTN","PSO DRG",173,0 )
  5492    I '$G(PSO RXED),'$G( PSOREINS)  K PSOQUIT
  5493   "RTN","PSO DRG",174,0 )
  5494    Q
  5495   "RTN","PSO DRG",175,0 )
  5496    ;
  5497   "RTN","PSO DRG",176,0 )
  5498   EOJ ;
  5499   "RTN","PSO DRG",177,0 )
  5500    K PSODRG
  5501   "RTN","PSO DRG",178,0 )
  5502    Q
  5503   "RTN","PSO DRG",179,0 )
  5504   WAIT ;
  5505   "RTN","PSO DRG",180,0 )
  5506    K DIR S D IR(0)="E", DIR("?")=" Press Retu rn to cont inue",DIR( "A")="Pres s Return t o continue ..." W !
  5507   "RTN","PSO DRG",181,0 )
  5508    D ^DIR K  DIRUT,DUOU T,DIR,X,Y
  5509   "RTN","PSO DRG",182,0 )
  5510    Q
  5511   "RTN","PSO DRG",183,0 )
  5512    ;
  5513   "RTN","PSO DRG",184,0 )
  5514   CLOZ ;
  5515   "RTN","PSO DRG",185,0 )
  5516    S ANQRTN= $$GET1^DIQ (50,+$G(PS ODRUG("IEN ")),17.5), ANQX=0
  5517   "RTN","PSO DRG",186,0 )
  5518    S P(5)=PS ODRUG("IEN "),DFN=PSO DFN,X=ANQR TN
  5519   "RTN","PSO DRG",187,0 )
  5520    X ^%ZOSF( "TEST") I   D ^PSOCLO 1 S:$G(ANQ X) PSORX(" DFLG")=1
  5521   "RTN","PSO DRG",188,0 )
  5522    K P(5),AN QRTN,ANQX, X,DFN
  5523   "RTN","PSO DRG",189,0 )
  5524    Q
  5525   "RTN","PSO DRG",190,0 )
  5526    ;
  5527   "RTN","PSO DRG",191,0 )
  5528   EN(DRG) ;r eturns lab  test iden tified for  clozapine  order che cking
  5529   "RTN","PSO DRG",192,0 )
  5530    K LAB I $ $GET1^DIQ( 50,+$G(DRG ),17.5)'=" PSOCLO1" S  LAB("NOT" )=0 Q
  5531   "RTN","PSO DRG",193,0 )
  5532    N LABARR  D LIST^DIC (50.02,"," _DRG_","," 2;3","I",, ,,,,,"LABA RR")
  5533   "RTN","PSO DRG",194,0 )
  5534    I +LABARR ("DILIST", 0)'=2 S LA B("BAD TES T")=0 K CN T Q
  5535   "RTN","PSO DRG",195,0 )
  5536    K CNT F I =1:1 Q:'$D (LABARR("D ILIST",2,I ))  D
  5537   "RTN","PSO DRG",196,0 )
  5538    .S LABT=$ S(LABARR(" DILIST","I D",I,3)=1: "WBC",1:"A NC")
  5539   "RTN","PSO DRG",197,0 )
  5540    .S LAB(LA BT)=LABARR ("DILIST", 1,I)_"^"_L ABARR("DIL IST","ID", I,2)_"^"_L ABARR("DIL IST","ID", I,3)
  5541   "RTN","PSO DRG",198,0 )
  5542    K LABT,I
  5543   "RTN","PSO DRG",199,0 )
  5544    Q
  5545   "RTN","PSO DRG",200,0 )
  5546   NOALRGY ;
  5547   "RTN","PSO DRG",201,0 )
  5548    D HD^PSOD DPR2():(($ Y+5)'>IOSL )
  5549   "RTN","PSO DRG",202,0 )
  5550    N DIR S D IR(0)="SA^ 1:YES;0:NO "
  5551   "RTN","PSO DRG",203,0 )
  5552    I $D(^TMP ($J,"PSOIN TERVENE",+ PSODFN)) D   Q
  5553   "RTN","PSO DRG",204,0 )
  5554    .S DIR("A ")="No All ergy Asses sment - Do  you want  to duplica te Interve ntion?: ", DIR("B")=" Yes"
  5555   "RTN","PSO DRG",205,0 )
  5556    .D ^DIR
  5557   "RTN","PSO DRG",206,0 )
  5558    .I 'Y D   Q
  5559   "RTN","PSO DRG",207,0 )
  5560    ..I Y=0 D  ^PSORXI Q
  5561   "RTN","PSO DRG",208,0 )
  5562    ..S PSORX ("DFLG")=1
  5563   "RTN","PSO DRG",209,0 )
  5564    .D DUPINV ^PSORXI
  5565   "RTN","PSO DRG",210,0 )
  5566    W $C(7),! ,"There is  no allerg y assessme nt on file  for this  patient."
  5567   "RTN","PSO DRG",211,0 )
  5568    W !,"You  will be pr ompted to  intervene  if you con tinue with  this pres cription"
  5569   "RTN","PSO DRG",212,0 )
  5570    I $D(PSOD GCK) W ! K  DIR S DIR (0)="E",DI R("A")="Pr ess Return  to Contin ue..." D ^ DIR K DIR
  5571   "RTN","PSO DRG",213,0 )
  5572    Q:$D(PSOD GCK)
  5573   "RTN","PSO DRG",214,0 )
  5574    N DUOUT,D TOUT,RXIEN ,RXSTA                 ;*398
  5575   "RTN","PSO DRG",215,0 )
  5576    S DIR("A" )="Do you  want to Co ntinue?: " ,DIR("B")= "N" D ^DIR
  5577   "RTN","PSO DRG",216,0 )
  5578    I 'Y!($D( DUOUT))!($ D(DTOUT))  D  Q        ;*398 - E xit/Timeou t
  5579   "RTN","PSO DRG",217,0 )
  5580    .I $D(PSO NV) S PSZZ QUIT=1 Q
  5581   "RTN","PSO DRG",218,0 )
  5582    .S PSORX( "DFLG")=1
  5583   "RTN","PSO DRG",219,0 )
  5584    .I '$O(PS CAN(0)) Q                         ;*398 - A rray has R x IEN
  5585   "RTN","PSO DRG",220,0 )
  5586    .I $G(REA )'="R" Q                          ;*398 - R einstate o nly
  5587   "RTN","PSO DRG",221,0 )
  5588    .S RXIEN= +$G(PSCAN( RX)) I 'RX IEN Q       ;*398 - G et Rx IEN
  5589   "RTN","PSO DRG",222,0 )
  5590    .S RXSTA= $$GET1^DIQ (52,RXIEN, 100,"I")    ;*398 - G et status
  5591   "RTN","PSO DRG",223,0 )
  5592    .I RXSTA= 12 Q                              ;*398 - C orrect sta tus
  5593   "RTN","PSO DRG",224,0 )
  5594    .S DIE="^ PSRX(",DA= RXIEN,DR=" 100///12"   ;*398 - D iscontinue d
  5595   "RTN","PSO DRG",225,0 )
  5596    .D ^DIE                                     ;*398 - U pdate Rx f ile
  5597   "RTN","PSO DRG",226,0 )
  5598    I $D(PSON V) S PSORX ("INTERVEN E")=0 D EN 1^PSORXI(P SONV) Q
  5599   "RTN","PSO DRG",227,0 )
  5600    D ^PSORXI
  5601   "RTN","PSO DRG",228,0 )
  5602    Q
  5603   "RTN","PSO N52")
  5604   0^3^B10947 5574
  5605   "RTN","PSO N52",1,0)
  5606   PSON52 ;BI R/DSD - fi les new en tries in p rescriptio n file ;Ju l 24, 2017 @15:24
  5607   "RTN","PSO N52",2,0)
  5608    ;;7.0;OUT PATIENT PH ARMACY;**1 ,16,23,27, 32,46,71,1 11,124,117 ,131,139,1 57,143,219 ,148,239,2 01,268,260 ,225,303,3 58,251,387 ,379,390,3 91,313,408 ,473,457** ;DEC 1997; Build 65
  5609   "RTN","PSO N52",3,0)
  5610    ;External  reference  ^PS(55 su pported by  DBIA 2228
  5611   "RTN","PSO N52",4,0)
  5612    ;External  reference  to PSOUL^ PSSLOCK su pported by  DBIA 2789
  5613   "RTN","PSO N52",5,0)
  5614    ;External  reference  to ^XUSEC  supported  by DBIA 1 0076
  5615   "RTN","PSO N52",6,0)
  5616    ;External  reference  SWSTAT^IB BAPI suppo rted by DB IA 4663
  5617   "RTN","PSO N52",7,0)
  5618    ;External  reference  SAVNDC^PS SNDCUT sup ported by  DBIA 4707
  5619   "RTN","PSO N52",8,0)
  5620    ;External  reference  to $$DS^P SSDSAPI su pported by  DBIA 5425
  5621   "RTN","PSO N52",9,0)
  5622   EN(PSOX) ; Entry Poin t
  5623   "RTN","PSO N52",10,0)
  5624   START ;
  5625   "RTN","PSO N52",11,0)
  5626    D:$D(XRTL ) T0^%ZOSV  ; Start R T Monitor
  5627   "RTN","PSO N52",12,0)
  5628    D INIT G: PSON52("QF LG") END D  NFILE Q:$ G(PSONEW(" DFLG"))
  5629   "RTN","PSO N52",13,0)
  5630    D PS55,DI K
  5631   "RTN","PSO N52",14,0)
  5632    S:$D(XRT0 ) XRTN=$T( +0) D:$D(X RT0) T1^%Z OSV ; Stop  RT Monito r
  5633   "RTN","PSO N52",15,0)
  5634    D FINISH
  5635   "RTN","PSO N52",16,0)
  5636    I $P(^PSR X(PSOX("IR XN"),0),"^ ",11)="W", $G(^("IB") ) S ^PSRX( "ACP",$P(^ PSRX(PSOX( "IRXN"),0) ,"^",2),$P (^(2),"^", 2),0,PSOX( "IRXN"))=" "
  5637   "RTN","PSO N52",17,0)
  5638   END D EOJ
  5639   "RTN","PSO N52",18,0)
  5640    Q
  5641   "RTN","PSO N52",19,0)
  5642   INIT ;
  5643   "RTN","PSO N52",20,0)
  5644    K X,%DT S :$G(PSOID)  PSOX("ISS UE DATE")= PSOID
  5645   "RTN","PSO N52",21,0)
  5646    S PSOX("C S")=0 K PS OX("NOPSDR PH")
  5647   "RTN","PSO N52",22,0)
  5648    F DEA=1:1  Q:$E(PSOD RUG("DEA") ,DEA)=""   I $E(+PSOD RUG("DEA") ,DEA)>1,$E (+PSODRUG( "DEA"),DEA )<6 S $P(P SOX("CS"), "^")=1 S:$ E(+PSODRUG ("DEA"),DE A)=2 $P(PS OX("CS")," ^",2)=1
  5649   "RTN","PSO N52",23,0)
  5650    I $P($G(P SOX("CS")) ,"^"),'$D( ^XUSEC("PS DRPH",DUZ) ) S PSOX(" NOPSDRPH") =1
  5651   "RTN","PSO N52",24,0)
  5652    S PSON52( "QFLG")=0, X1=PSOX("I SSUE DATE" ),X2=PSOX( "DAYS SUPP LY")*(PSOX ("# OF REF ILLS")+1)\ 1
  5653   "RTN","PSO N52",25,0)
  5654    I $D(CLOZ PAT) S X2= $S(X2=14:1 4,X2=7:7,1 :X2) G DT
  5655   "RTN","PSO N52",26,0)
  5656    S X2=$S(P SOX("DAYS  SUPPLY")=X 2:X2,+$G(P SOX("CS")) :184,+$G(D EA("CS")): 184,1:366)
  5657   "RTN","PSO N52",27,0)
  5658    I X2<30 D
  5659   "RTN","PSO N52",28,0)
  5660    . N % S % =$P($G(PSO RX("PATIEN T STATUS") ),"^"),X2= 30
  5661   "RTN","PSO N52",29,0)
  5662    . S:%?.N  %=$P($G(^P S(53,+%,0) ),"^") I % ["AUTH ABS " S X2=5
  5663   "RTN","PSO N52",30,0)
  5664   DT D C^%DT C S PSOX(" STOP DATE" )=$P(X,"." ) K X
  5665   "RTN","PSO N52",31,0)
  5666    ;*473 - I f Calculat ed Exp. Da te < Fill  Date with  No refills , reset Ex p.
  5667   "RTN","PSO N52",32,0)
  5668    I '$D(CLO ZPAT),'PSO X("# OF RE FILLS"),PS OX("FILL D ATE")>PSOX ("STOP DAT E") D
  5669   "RTN","PSO N52",33,0)
  5670    . N EXP S  EXP=$$FMA DD^XLFDT(P SOX("FILL  DATE"),PSO X("DAYS SU PPLY"))
  5671   "RTN","PSO N52",34,0)
  5672    . I $$FMD IFF^XLFDT( EXP,PSOX(" ISSUE DATE "))>$S(+$G (PSOX("CS" )):184,1:3 66) D
  5673   "RTN","PSO N52",35,0)
  5674    . . S EXP =$$FMADD^X LFDT(PSOX( "ISSUE DAT E"),$S(+$G (PSOX("CS" )):184,1:3 66))
  5675   "RTN","PSO N52",36,0)
  5676    . I EXP<P SOX("FILL  DATE") S E XP=PSOX("F ILL DATE")
  5677   "RTN","PSO N52",37,0)
  5678    . S PSOX( "STOP DATE ")=EXP
  5679   "RTN","PSO N52",38,0)
  5680    ; Titrati on to Main tenance Rx  Conversio n - Set Ma int. Rx Ex p. Date =  Original R x Exp. Dat e
  5681   "RTN","PSO N52",39,0)
  5682    I $G(PSOT ITRX) D
  5683   "RTN","PSO N52",40,0)
  5684    . S PSOX( "STOP DATE ")=$$GET1^ DIQ(52,PSO TITRX,26," I")
  5685   "RTN","PSO N52",41,0)
  5686    I PSOX("#  OF REFILL S")>0 S X1 =PSOX("FIL L DATE"),X 2=$S((PSOX ("DAYS SUP PLY")-10\1 )<1:1,1:PS OX("DAYS S UPPLY")-10 \1) D C^%D TC S PSOX( "NEXT POSS IBLE REFIL L")=$P(X," .") K X
  5687   "RTN","PSO N52",42,0)
  5688    S PSOX("T YPE OF RX" )=0,PSOX(" DISPENSED  DATE")=PSO X("FILL DA TE") D NOW ^%DTC S PS OX("LOGIN  DATE")=$S( $P($G(OR0) ,"^",12):$ P($G(OR0), "^",12),1: %) K %,X
  5689   "RTN","PSO N52",43,0)
  5690    S PSOX("S TATUS")=$S ($G(PSOX(" STATUS"))] "":PSOX("S TATUS"),$D (PSORX("VE RIFY")):1, $D(PSOX("N OPSDRPH")) :1,1:0)
  5691   "RTN","PSO N52",44,0)
  5692    S PSOX("C OPIES")=$S ($G(PSOX(" COPIES"))] "":PSOX("C OPIES"),1: 1)
  5693   "RTN","PSO N52",45,0)
  5694    I $G(PSOR X("PHARM") )]"" S PSO X("PHARMAC IST")=PSOR X("PHARM")  K PSORX(" PHARM")
  5695   "RTN","PSO N52",46,0)
  5696   INITX Q
  5697   "RTN","PSO N52",47,0)
  5698    ;
  5699   "RTN","PSO N52",48,0)
  5700   NFILE I $G (OR0) D  Q :$G(PSONEW ("DFLG"))
  5701   "RTN","PSO N52",49,0)
  5702    .D NOOR^P SONEW Q:$G (PSONEW("D FLG"))
  5703   "RTN","PSO N52",50,0)
  5704    .I $G(PSO SIGFL)!($G (PSODRUG(" OI"))'=$P( OR0,"^",8) ) S PSONEW ("CLERK CO DE")=DUZ,P SONEW("REM ARKS")=$G( PSONEW("RE MARKS"))_"  CPRS Orde r #"_$P(OR 0,"^")_" E dited."
  5705   "RTN","PSO N52",51,0)
  5706    S DIC="^P SRX(",DLAY GO=52,DIC( 0)="L",X=P SOX("RX #" ) K DD,DO  D FILE^DIC N S PSOX(" IRXN")=+Y  K DLAYGO,X ,Y,DIC,DD, DO
  5707   "RTN","PSO N52",52,0)
  5708    I '$D(^XU SEC("PSORP H",DUZ))!( $D(PSOX("N OPSDRPH")) ),$$DS^PSS DSAPI&(+$G (^TMP("PSO DOSF",$J,0 ))) S PSON 52(PSOX("I RXN"),"STA ")=1,PSOX( "STATUS")= 1
  5709   "RTN","PSO N52",53,0)
  5710    F PSOX1=0 :1 S PSON5 2=$P($T(DD +PSOX1),"; ;",2,4) Q: PSON52=""   K PSOY S  PSOY=$P(PS ON52,";;")  I $G(@PSO Y)]"" S $P (PSON52(PS OX("IRXN") ,$P(PSON52 ,";;",2)), "^",$P(PSO N52,";;",3 ))=@PSOY
  5711   "RTN","PSO N52",54,0)
  5712    F I=1:1:P SOX("ENT")  S ^PSRX(P SOX("IRXN" ),6,I,0)=P SOX("DOSE" ,I)_"^"_$G (PSOX("DOS E ORDERED" ,I))_"^"_$ G(PSOX("UN ITS",I))_" ^"_$G(PSOX ("NOUN",I) )_"^" D
  5713   "RTN","PSO N52",55,0)
  5714    .S ^PSRX( PSOX("IRXN "),6,I,0)= ^PSRX(PSOX ("IRXN"),6 ,I,0)_$G(P SOX("DURAT ION",I))_" ^"_$G(PSOX ("CONJUNCT ION",I))_" ^"_$G(PSOX ("ROUTE",I ))_"^"_$G( PSOX("SCHE DULE",I))_ "^"_$G(PSO X("VERB",I ))
  5715   "RTN","PSO N52",56,0)
  5716    .I $G(PSO X("ODOSE", I))]"" S ^ PSRX(PSOX( "IRXN"),6, I,1)=PSOX( "ODOSE",I)
  5717   "RTN","PSO N52",57,0)
  5718    S ^PSRX(P SOX("IRXN" ),6,0)="^5 2.0113^"_P SOX("ENT") _"^"_PSOX( "ENT")
  5719   "RTN","PSO N52",58,0)
  5720    K PSOX1,P SOY
  5721   "RTN","PSO N52",59,0)
  5722    S PSOX1=" " F  S PSO X1=$O(PSON 52(PSOX("I RXN"),PSOX 1)) Q:PSOX 1=""  S ^P SRX(PSOX(" IRXN"),PSO X1)=$G(PSO N52(PSOX(" IRXN"),PSO X1))
  5723   "RTN","PSO N52",60,0)
  5724    I $O(PSOX ("SIG",0))  D
  5725   "RTN","PSO N52",61,0)
  5726    .S D=0 F   S D=$O(PS OX("SIG",D )) Q:'D  S  ^PSRX(PSO X("IRXN"), "INS1",D,0 )=PSOX("SI G",D),TP=$ G(TP)+1
  5727   "RTN","PSO N52",62,0)
  5728    .S ^PSRX( PSOX("IRXN "),"INS1", 0)="^52.01 15^"_TP_"^ "_TP_"^"_D T_"^^" K T P,D
  5729   "RTN","PSO N52",63,0)
  5730    I $G(PSOX ("SINS"))] "" S ^PSRX (PSOX("IRX N"),"INSS" )=PSOX("SI NS")
  5731   "RTN","PSO N52",64,0)
  5732    I $G(SIGO K) D
  5733   "RTN","PSO N52",65,0)
  5734    .S $P(^PS RX(PSOX("I RXN"),"SIG "),"^",2)= 1,^PSRX(PS OX("IRXN") ,"SIG1",0) ="^52.04A^ ^"
  5735   "RTN","PSO N52",66,0)
  5736    .S D=0 F   S D=$O(SI G(D)) Q:'D   S ^PSRX( PSOX("IRXN "),"SIG1", D,0)=SIG(D ),$P(^PSRX (PSOX("IRX N"),"SIG1" ,0),"^",3) =+$P(^PSRX (PSOX("IRX N"),"SIG1" ,0),"^",3) +1,$P(^(0) ,"^",4)=+$ P(^(0),"^" ,4)+1 Q:'$ O(SIG(D))
  5737   "RTN","PSO N52",67,0)
  5738    .K SIG
  5739   "RTN","PSO N52",68,0)
  5740    I $D(PSOI NSFL) S ^P SRX(PSOX(" IRXN"),"A" ,0)="^52.3 DA^1^1",^P SRX(PSOX(" IRXN"),"A" ,1,0)=DT_" ^G^^0^Pati ent Instru ctions "_$ S(PSOINSFL =1:"",1:"N ot ")_"Sen t By Provi der."
  5741   "RTN","PSO N52",69,0)
  5742    I $G(OR0) ,$P(OR0,"^ ",24) S ^P SRX(PSOX(" IRXN"),"PK I")=$S($G( PSOSIGFL): "^1",1:1)  D ACLOG
  5743   "RTN","PSO N52",70,0)
  5744    I $P($G(P SOX("CS")) ,"^"),'+$P ($G(^PSRX( PSOX("IRXN "),"PKI")) ,"^") S $P (^PSRX(PSO X("IRXN"), "PKI"),"^" ,2)=1
  5745   "RTN","PSO N52",71,0)
  5746    K PSOX1,P SOFINFL,HL DSIG,D,PSO INSFL,D
  5747   "RTN","PSO N52",72,0)
  5748    D:$G(^TMP ("PSODAI", $J,0))
  5749   "RTN","PSO N52",73,0)
  5750    .S $P(^PS RX(PSOX("I RXN"),3)," ^",6)=1
  5751   "RTN","PSO N52",74,0)
  5752    .I $O(^TM P("PSODAI" ,$J,0)) S  DAI=0 F  S  DAI=$O(^T MP("PSODAI ",$J,DAI))  Q:'DAI  D
  5753   "RTN","PSO N52",75,0)
  5754    ..S:'$D(^ PSRX(PSOX( "IRXN"),"D AI",0)) ^P SRX(PSOX(" IRXN"),"DA I",0)="^52 .03^^" S ^ PSRX(PSOX( "IRXN"),"D AI",DAI,0) =^TMP("PSO DAI",$J,DA I,0)
  5755   "RTN","PSO N52",76,0)
  5756    ..S $P(^P SRX(PSOX(" IRXN"),"DA I",0),"^", 3)=+$P(^PS RX(PSOX("I RXN"),"DAI ",0),"^",3 )+1,$P(^(0 ),"^",4)=+ $P(^(0),"^ ",4)+1
  5757   "RTN","PSO N52",77,0)
  5758    .K ^TMP(" PSODAI",$J ),DAI
  5759   "RTN","PSO N52",78,0)
  5760    I $G(PSOX ("CHCS NUM BER"))'=""  S $P(^PSR X(PSOX("IR XN"),"EXT" ),"^")=$G( PSOX("CHCS  NUMBER"))
  5761   "RTN","PSO N52",79,0)
  5762    I $G(PSOX ("EXTERNAL  SYSTEM")) '="" S $P( ^PSRX(PSOX ("IRXN")," EXT"),"^", 2)=$G(PSOX ("EXTERNAL  SYSTEM"))
  5763   "RTN","PSO N52",80,0)
  5764    I $G(PSOX ("NEWCOPAY ")) S ^PSR X(PSOX("IR XN"),"IB") =$G(PSOX(" NEWCOPAY") )
  5765   "RTN","PSO N52",81,0)
  5766    ;Next lin e, set SC  question b ased on Co pay status ?
  5767   "RTN","PSO N52",82,0)
  5768   IBQ ;I $G( PSOBILL)=2  S ^PSRX(P SOX("IRXN" ),"IBQ")=$ S($G(PSOX( "NEWCOPAY" )):0,1:1)
  5769   "RTN","PSO N52",83,0)
  5770    N PSOSCFL D S PSOSCF LD=$S(PSOS CP'="":$G( PSOANSQ("S C")),1:"") _"^"_$G(PS OANSQ("MST "))_"^"_$G (PSOANSQ(" VEH"))_"^" _$G(PSOANS Q("RAD"))_ "^"_$G(PSO ANSQ("PGW" ))_"^"_$G( PSOANSQ("H NC"))_"^"_ $G(PSOANSQ ("CV"))_"^ "_$G(PSOAN SQ("SHAD") )
  5771   "RTN","PSO N52",84,0)
  5772    I PSOSCP< 50&($TR(PS OSCFLD,"^" )'="")&($P ($G(^PS(53 ,+$G(PSONE W("PATIENT  STATUS")) ,0)),"^",7 )'=1) D
  5773   "RTN","PSO N52",85,0)
  5774    . S ^PSRX (PSOX("IRX N"),"IBQ") =PSOSCFLD  K PSOSCFLD   ;don't s et if SC %  is null o r 0, just  set it in  ICD node
  5775   "RTN","PSO N52",86,0)
  5776    D ICD^PSO DIAG
  5777   "RTN","PSO N52",87,0)
  5778    D:$$SWSTA T^IBBAPI()  GACT^PSOP FSU0(PSOX( "IRXN"),0)
  5779   "RTN","PSO N52",88,0)
  5780    D:$G(PSOT ITRX) SAVE TIT(PSOTIT RX,PSOX("I RXN"))
  5781   "RTN","PSO N52",89,0)
  5782    K PSOTITR X,PSOANSQ, PSOANSQD,P SOX("NEWCO PAY")
  5783   "RTN","PSO N52",90,0)
  5784    L -^PSRX( "B",PSOX(" IRXN"))
  5785   "RTN","PSO N52",91,0)
  5786    Q
  5787   "RTN","PSO N52",92,0)
  5788    ;
  5789   "RTN","PSO N52",93,0)
  5790   ACLOG ;act ivity log  (digitally  signed CS  orders)
  5791   "RTN","PSO N52",94,0)
  5792    N DTTM,CN T,OCNT,XX
  5793   "RTN","PSO N52",95,0)
  5794    D NOW^%DT C S DTTM=%
  5795   "RTN","PSO N52",96,0)
  5796    S CNT=0 F  XX=0:0 S  XX=$O(^PSR X(PSOX("IR XN"),"A",X X)) Q:'XX   S CNT=XX
  5797   "RTN","PSO N52",97,0)
  5798    S OCNT=CN T
  5799   "RTN","PSO N52",98,0)
  5800    I $G(PSOC SP("NAME") )'=PSODRUG ("NAME") S  CNT=CNT+1 ,^PSRX(PSO X("IRXN"), "A",CNT,0) =DTTM_"^K^ "_DUZ_"^0^ NAME: "_PS OCSP("NAME ")
  5801   "RTN","PSO N52",99,0)
  5802    S XX=0 F   S XX=$O(P SOCSP("DOS E",XX)) Q: 'XX  I PSO CSP("DOSE" ,XX)'=$G(P SONEW("DOS E",XX)) D
  5803   "RTN","PSO N52",100,0 )
  5804    .S CNT=CN T+1,^PSRX( PSOX("IRXN "),"A",CNT ,0)=DTTM_" ^K^"_DUZ_" ^0^DOSAGE:  "_PSOCSP( "DOSE",XX)
  5805   "RTN","PSO N52",101,0 )
  5806    S XX=0 F   S XX=$O(P SOCSP("DOS E ORDERED" ,XX)) Q:'X X  I PSOCS P("DOSE OR DERED",XX) '=$G(PSONE W("DOSE OR DERED",XX) ) D
  5807   "RTN","PSO N52",102,0 )
  5808    .S CNT=CN T+1,^PSRX( PSOX("IRXN "),"A",CNT ,0)=DTTM_" ^K^"_DUZ_" ^0^DISPENS E UNITS: " _PSOCSP("D OSE ORDERE D",XX)
  5809   "RTN","PSO N52",103,0 )
  5810    I PSOCSP( "ISSUE DAT E")'=PSONE W("ISSUE D ATE") S CN T=CNT+1,^P SRX(PSOX(" IRXN"),"A" ,CNT,0)=DT TM_"^K^"_D UZ_"^0^ISS UE DATE: " _$$FMTE^XL FDT(PSOCSP ("ISSUE DA TE"))
  5811   "RTN","PSO N52",104,0 )
  5812    I PSOCSP( "DAYS SUPP LY")'=PSON EW("DAYS S UPPLY") S  CNT=CNT+1, ^PSRX(PSOX ("IRXN")," A",CNT,0)= DTTM_"^K^" _DUZ_"^0^D AYS SUPPLY : "_PSOCSP ("DAYS SUP PLY")
  5813   "RTN","PSO N52",105,0 )
  5814    I PSOCSP( "QTY")'=PS ONEW("QTY" ) S CNT=CN T+1,^PSRX( PSOX("IRXN "),"A",CNT ,0)=DTTM_" ^K^"_DUZ_" ^0^QTY: "_ PSOCSP("QT Y")
  5815   "RTN","PSO N52",106,0 )
  5816    I PSOCSP( "# OF REFI LLS")'=PSO NEW("# OF  REFILLS")  S CNT=CNT+ 1,^PSRX(PS OX("IRXN") ,"A",CNT,0 )=DTTM_"^K ^"_DUZ_"^0 ^# OF REFI LLS: "_PSO CSP("# OF  REFILLS")
  5817   "RTN","PSO N52",107,0 )
  5818    I '$$SUBS CRIB^ORDEA ($P(OR0,"^ "),PSOX("I RXN")) S C NT=CNT+1,^ PSRX(PSOX( "IRXN"),"A ",CNT,0)=D TTM_"^K^"_ DUZ_"^0^OR DER DEA AR CHIVE INFO  file entr y failure"
  5819   "RTN","PSO N52",108,0 )
  5820    I OCNT'=C NT S ^PSRX (PSOX("IRX N"),"A",0) ="^52.3DA^ "_CNT_"^"_ CNT
  5821   "RTN","PSO N52",109,0 )
  5822    Q
  5823   "RTN","PSO N52",110,0 )
  5824    ;
  5825   "RTN","PSO N52",111,0 )
  5826   PS55 ;
  5827   "RTN","PSO N52",112,0 )
  5828    L +^PS(55 ,PSODFN,"P "):$S(+$G( ^DD("DILOC KTM"))>0:+ ^DD("DILOC KTM"),1:3)
  5829   "RTN","PSO N52",113,0 )
  5830    S:'$D(^PS (55,PSODFN ,"P",0)) ^ (0)="^55.0 3PA^^"
  5831   "RTN","PSO N52",114,0 )
  5832    F PSOX1=$ P(^PS(55,P SODFN,"P", 0),"^",3): 1 Q:'$D(^P S(55,PSODF N,"P",PSOX 1))
  5833   "RTN","PSO N52",115,0 )
  5834    S PSOX("5 5 IEN")=PS OX1
  5835   "RTN","PSO N52",116,0 )
  5836    S ^PS(55, PSODFN,"P" ,PSOX1,0)= PSOX("IRXN "),$P(^PS( 55,PSODFN, "P",0),"^" ,3,4)=PSOX 1_"^"_($P( ^PS(55,PSO DFN,"P",0) ,"^",4)+1)
  5837   "RTN","PSO N52",117,0 )
  5838    S ^PS(55, PSODFN,"P" ,"A",PSONE W("STOP DA TE"),PSOX( "IRXN"))=" "
  5839   "RTN","PSO N52",118,0 )
  5840   PS55X L -^ PS(55,PSOD FN,"P")
  5841   "RTN","PSO N52",119,0 )
  5842    K PSOX1
  5843   "RTN","PSO N52",120,0 )
  5844    Q
  5845   "RTN","PSO N52",121,0 )
  5846   DIK ;
  5847   "RTN","PSO N52",122,0 )
  5848    I $D(^XUS EC("PSORPH ",DUZ)) S  DA=PSOX("I RXN"),DIE= 52,DR="41/ ///"_PSOCO U_";S:'X Y =""@1"";42 ////"_PSOC OUU_";@1"  D ^DIE K D IE,DR
  5849   "RTN","PSO N52",123,0 )
  5850    K DIK,DA  S DIK="^PS RX(",DA=PS OX("IRXN")  D IX1^DIK  K DIK
  5851   "RTN","PSO N52",124,0 )
  5852    S DA=PSOX ("IRXN") D  ORC^PSORN 52C
  5853   "RTN","PSO N52",125,0 )
  5854    Q
  5855   "RTN","PSO N52",126,0 )
  5856   FINISH ;
  5857   "RTN","PSO N52",127,0 )
  5858   ANQ ;
  5859   "RTN","PSO N52",128,0 )
  5860    ; ** STAR T NCC REME DIATION **  457/RTW R JS
  5861   "RTN","PSO N52",129,0 )
  5862    I $D(ANQD ATA) D  ;A DD ADDITIO NAL LOGIC  FOR ORDERI NG PROVIDE R RJS/457
  5863   "RTN","PSO N52",130,0 )
  5864    .I $P($G( ANQDATA)," ^",2)["UNK NOWN",$D(P SOX("PROVI DER")) S $ P(ANQDATA, "^",2)=PSO X("PROVIDE R")
  5865   "RTN","PSO N52",131,0 )
  5866    .I $D(PSO X("PROVIDE R")),$P($G (ANQDATA), "^",2)'=PS OX("PROVID ER") S $P( ANQDATA,"^ ",2)=PSOX( "PROVIDER" )
  5867   "RTN","PSO N52",132,0 )
  5868    I $G(ANQD ATA)]"" N  PSOUSER,PS O1PH,PSO2P H,PSOREASN ,PSOREMRK, DTM D NOW^ %DTC S DTM =% G:$$FIN D1^DIC(52. 52,,"X",DT M) ANQ D
  5869   "RTN","PSO N52",133,0 )
  5870    .S PSOUSE R=$P(ANQDA TA,"^",2), PSO1PH=$P( ANQDATA,"^ "),PSO2PH= $P(ANQDATA ,"^",5)
  5871   "RTN","PSO N52",134,0 )
  5872    .S PSOREA SN=$P(ANQD ATA,"^",3) ,PSOREMRK= $P(ANQDATA ,"^",4)
  5873   "RTN","PSO N52",135,0 )
  5874    .K DD,DO  S DIC="^PS (52.52,",D IC(0)="L", DLAYGO=52. 52,X=DTM
  5875   "RTN","PSO N52",136,0 )
  5876    .D FILE^D ICN K DIC, DLAYGO,DD, DO,DA,DR
  5877   "RTN","PSO N52",137,0 )
  5878    .N PS52 S  (PS52,DA) =+Y,DIE="^ PS(52.52," ,DR="1//// ^S X=PSOX( ""IRXN"")" _";2////^S  X=PSO1PH; 3////^S X= PSOUSER;4/ ///^S X=PS OREASN;5// //^S X=PSO REMRK;6/// /^S X=PSO2 PH"
  5879   "RTN","PSO N52",138,0 )
  5880    .D ^DIE K  DIE,DA,DR
  5881   "RTN","PSO N52",139,0 )
  5882    .K X,Y,%, ANQREM
  5883   "RTN","PSO N52",140,0 )
  5884    .D ALERT^ PSORENW0
  5885   "RTN","PSO N52",141,0 )
  5886    I $$GET1^ DIQ(50,+$G (PSODRUG(" IEN")),17. 5)="PSOCLO 1" D ^YSCL TST6
  5887   "RTN","PSO N52",142,0 )
  5888    ;/RBN END  MODIFICAT IONS FOR P SO*7.0*457
  5889   "RTN","PSO N52",143,0 )
  5890    ;
  5891   "RTN","PSO N52",144,0 )
  5892    N PSOTFIN
  5893   "RTN","PSO N52",145,0 )
  5894    I $D(PSOX ("NOPSDRPH "))!('$D(^ XUSEC("PSO RPH",DUZ)) ) S PSOTFI N="",PSOTF IN=$$TECH2 ^PSODGDGP( PSOX("IRXN "),PSODFN, DUZ,.PSOX)
  5895   "RTN","PSO N52",146,0 )
  5896    I $D(PSOX ("NOPSDRPH "))!('$D(^ XUSEC("PSO RPH",DUZ)) ) G FINISH P:$G(PSOTF IN)=1 G FI NISHX:$G(P SOTFIN)=2
  5897   "RTN","PSO N52",147,0 )
  5898    ;
  5899   "RTN","PSO N52",148,0 )
  5900    I PSOX("F ILL DATE") >DT,$P(PSO PAR,"^",6)  S DA=PSOX ("IRXN"),R XFL(PSOX(" IRXN"))=0  D SUS^PSOR XL K DA G  FINISHX
  5901   "RTN","PSO N52",149,0 )
  5902    ;
  5903   "RTN","PSO N52",150,0 )
  5904    ; - Calli ng ECME fo r claims g eneration  and transm ission / R EJECT hand ling
  5905   "RTN","PSO N52",151,0 )
  5906    N ACTION, PSOERX
  5907   "RTN","PSO N52",152,0 )
  5908    S PSOERX= PSOX("IRXN ")
  5909   "RTN","PSO N52",153,0 )
  5910    I $$SUBMI T^PSOBPSUT (PSOERX,0)  D  I ACTI ON="Q"!(AC TION="^")  Q
  5911   "RTN","PSO N52",154,0 )
  5912    . S ACTIO N="" D ECM ESND^PSOBP SU1(PSOERX ,0,"","OF" )
  5913   "RTN","PSO N52",155,0 )
  5914    . ; Quit  if there i s an unres olved Tric are/CHAMPV A non-bill able rejec t code, PS O*7*358
  5915   "RTN","PSO N52",156,0 )
  5916    . I $$PSO ET^PSOREJP 3(PSOERX,0 ) S ACTION ="Q" Q
  5917   "RTN","PSO N52",157,0 )
  5918    . I $$FIN D^PSOREJUT (PSOERX,0)  D
  5919   "RTN","PSO N52",158,0 )
  5920    . . S ACT ION=$$HDLG ^PSOREJU1( PSOERX,0," 79,88","OF ","IOQ","Q ")
  5921   "RTN","PSO N52",159,0 )
  5922    . I $$STA TUS^PSOBPS UT(PSOERX, 0)="E PAYA BLE" D
  5923   "RTN","PSO N52",160,0 )
  5924    . . D SAV NDC^PSSNDC UT(+$$GET1 ^DIQ(52,PS OERX,6,"I" ),$G(PSOSI TE),$$GETN DC^PSONDCU T(PSOERX,0 ))
  5925   "RTN","PSO N52",161,0 )
  5926    ;
  5927   "RTN","PSO N52",162,0 )
  5928   FINISHP ;
  5929   "RTN","PSO N52",163,0 )
  5930    I $G(PSOR X("PSOL",1 ))']"" S P SORX("PSOL ",1)=PSOX( "IRXN")_", ",RXFL(PSO X("IRXN")) =0 G FINIS HX
  5931   "RTN","PSO N52",164,0 )
  5932    F PSOX1=0 :0 S PSOX1 =$O(PSORX( "PSOL",PSO X1)) Q:'PS OX1  S PSO X2=PSOX1
  5933   "RTN","PSO N52",165,0 )
  5934    I $L(PSOR X("PSOL",P SOX2))+$L( PSOX("IRXN "))<220 S  PSORX("PSO L",PSOX2)= PSORX("PSO L",PSOX2)_ PSOX("IRXN ")_","
  5935   "RTN","PSO N52",166,0 )
  5936    E  S PSOR X("PSOL",P SOX2+1)=PS OX("IRXN") _","
  5937   "RTN","PSO N52",167,0 )
  5938    S RXFL(PS OX("IRXN") )=0
  5939   "RTN","PSO N52",168,0 )
  5940   FINISHX ;c all to bui ld Rx arra y for bing o board
  5941   "RTN","PSO N52",169,0 )
  5942    I $G(PSOR X("MAIL/WI NDOW"))["W " S BINGCR T=1,BINGRT E="W",BBFL G=1 D BBRX ^PSORN52C
  5943   "RTN","PSO N52",170,0 )
  5944    K PSOX1,P SOX2
  5945   "RTN","PSO N52",171,0 )
  5946    K ^TMP("P SODGI",$J) ,^TMP("PSO SER",$J),^ TMP("PSOSE RS",$J),^T MP("PSODGS ",$J),^TMP ("PSOTDD", $J),^TMP(" PSODOSF",$ J)
  5947   "RTN","PSO N52",172,0 )
  5948    Q
  5949   "RTN","PSO N52",173,0 )
  5950    ;
  5951   "RTN","PSO N52",174,0 )
  5952   SAVETIT(TI TRX,MNTRX)  ; Save Ti tration/Ma intenance  dose Rx in formation
  5953   "RTN","PSO N52",175,0 )
  5954    I '$D(^PS RX(+$G(TIT RX),0))!'$ D(^PSRX(+$ G(MNTRX),0 )) Q
  5955   "RTN","PSO N52",176,0 )
  5956    S $P(^PSR X(TITRX,"T IT"),"^",2 ,3)=MNTRX_ "^1"
  5957   "RTN","PSO N52",177,0 )
  5958    D RXACT^P SOBPSU2(TI TRX,0,"Mai ntenance R x#: "_$$GE T1^DIQ(52, MNTRX,.01) ,"E")
  5959   "RTN","PSO N52",178,0 )
  5960    S $P(^PSR X(MNTRX,"T IT"),"^",1 )=TITRX
  5961   "RTN","PSO N52",179,0 )
  5962    D RXACT^P SOBPSU2(MN TRX,0,"Tit ration Rx# : "_$$GET1 ^DIQ(52,TI TRX,.01)," E")
  5963   "RTN","PSO N52",180,0 )
  5964    Q
  5965   "RTN","PSO N52",181,0 )
  5966    ;
  5967   "RTN","PSO N52",182,0 )
  5968   EOJ ;
  5969   "RTN","PSO N52",183,0 )
  5970    ;B xref l ocked in r outine PSO NRXN
  5971   "RTN","PSO N52",184,0 )
  5972    L -^PSRX( "B",PSOX(" IRXN")) K  OTHDOS,DA, PSON52,PSO PRC,RTE,SC H,PSOX("IN S"),PSONEW ("INS"),PS ORXED("INS "),PSONEW( "ENT"),PSO RXED("ENT" ),OLENT
  5973   "RTN","PSO N52",185,0 )
  5974    D PSOUL^P SSLOCK(PSO X("IRXN"))
  5975   "RTN","PSO N52",186,0 )
  5976    Q
  5977   "RTN","PSO N52",187,0 )
  5978    ;
  5979   "RTN","PSO N52",188,0 )
  5980    ;;PSOX("S IG");;SIG; ;1
  5981   "RTN","PSO N52",189,0 )
  5982   DD ;;PSOX( "RX #");;0 ;;1
  5983   "RTN","PSO N52",190,0 )
  5984    ;;PSOX("I SSUE DATE" );;0;;13
  5985   "RTN","PSO N52",191,0 )
  5986    ;;PSODFN; ;0;;2
  5987   "RTN","PSO N52",192,0 )
  5988    ;;PSOX("P ATIENT STA TUS");;0;; 3
  5989   "RTN","PSO N52",193,0 )
  5990    ;;PSOX("P ROVIDER"); ;0;;4
  5991   "RTN","PSO N52",194,0 )
  5992    ;;PSOX("C LINIC");;0 ;;5
  5993   "RTN","PSO N52",195,0 )
  5994    ;;PSODRUG ("IEN");;0 ;;6
  5995   "RTN","PSO N52",196,0 )
  5996    ;;PSODRUG ("TRADE NA ME");;TN;; 1
  5997   "RTN","PSO N52",197,0 )
  5998    ;;PSOX("Q TY");;0;;7
  5999   "RTN","PSO N52",198,0 )
  6000    ;;PSOX("D AYS SUPPLY ");;0;;8
  6001   "RTN","PSO N52",199,0 )
  6002    ;;PSOX("#  OF REFILL S");;0;;9
  6003   "RTN","PSO N52",200,0 )
  6004    ;;PSOX("C OPIES");;0 ;;18
  6005   "RTN","PSO N52",201,0 )
  6006    ;;PSOX("M AIL/WINDOW ");;0;;11
  6007   "RTN","PSO N52",202,0 )
  6008    ;;PSOX("R EMARKS");; 3;;7
  6009   "RTN","PSO N52",203,0 )
  6010    ;;PSOX("A DMINCLINIC ");;0;;15 
  6011   "RTN","PSO N52",204,0 )
  6012    ;;PSOX("C LERK CODE" );;0;;16
  6013   "RTN","PSO N52",205,0 )
  6014    ;;PSODRUG ("COST");; 0;;17
  6015   "RTN","PSO N52",206,0 )
  6016    ;;PSOSITE ;;2;;9
  6017   "RTN","PSO N52",207,0 )
  6018    ;;PSOX("L OGIN DATE" );;2;;1
  6019   "RTN","PSO N52",208,0 )
  6020    ;;PSOX("F ILL DATE") ;;2;;2
  6021   "RTN","PSO N52",209,0 )
  6022    ;;PSOX("P HARMACIST" );;2;;3
  6023   "RTN","PSO N52",210,0 )
  6024    ;;PSOX("L OT #");;2; ;4
  6025   "RTN","PSO N52",211,0 )
  6026    ;;PSOX("D ISPENSED D ATE");;2;; 5
  6027   "RTN","PSO N52",212,0 )
  6028    ;;PSOX("S TOP DATE") ;;2;;6
  6029   "RTN","PSO N52",213,0 )
  6030    ;;PSODRUG ("NDC");;2 ;;7
  6031   "RTN","PSO N52",214,0 )
  6032    ;;PSODRUG ("DAW");;E PH;;1
  6033   "RTN","PSO N52",215,0 )
  6034    ;;PSODRUG ("MANUFACT URER");;2; ;8
  6035   "RTN","PSO N52",216,0 )
  6036    ;;PSOX("E XPIRATION  DATE");;2; ;11
  6037   "RTN","PSO N52",217,0 )
  6038    ;;PSOX("G ENERIC PRO VIDER");;2 ;;12
  6039   "RTN","PSO N52",218,0 )
  6040    ;;PSOX("R ELEASED DA TE/TIME"); ;2;;13
  6041   "RTN","PSO N52",219,0 )
  6042    ;;PSOX("M ETHOD OF P ICK-UP");; MP;;1
  6043   "RTN","PSO N52",220,0 )
  6044    ;;PSOX("S TATUS");;S TA;;1
  6045   "RTN","PSO N52",221,0 )
  6046    ;;PSOX("L AST DISPEN SED DATE") ;;3;;1
  6047   "RTN","PSO N52",222,0 )
  6048    ;;PSOX("N EXT POSSIB LE REFILL" );;3;;2
  6049   "RTN","PSO N52",223,0 )
  6050    ;;PSOX("C OSIGNING P ROVIDER"); ;3;;3
  6051   "RTN","PSO N52",224,0 )
  6052    ;;PSOX("T YPE OF RX" );;TYPE;;1
  6053   "RTN","PSO N52",225,0 )
  6054    ;;PSOX("S AND");;SAN D;;1
  6055   "RTN","PSO N52",226,0 )
  6056    ;;PSOX("P OE");;POE; ;1
  6057   "RTN","PSO N52",227,0 )
  6058    ;;PSOX("I NS");;INS; ;1
  6059   "RTN","PSO NEW")
  6060   0^12^B3895 6670
  6061   "RTN","PSO NEW",1,0)
  6062   PSONEW ;BI R/SAB - ne w rx order  main driv er ;Jul 24 , 2017@15: 24
  6063   "RTN","PSO NEW",2,0)
  6064    ;;7.0;OUT PATIENT PH ARMACY;**1 1,27,32,46 ,94,130,26 8,225,251, 379,390,41 7,313,411, 457**;DEC  1997;Build  65
  6065   "RTN","PSO NEW",3,0)
  6066    ;External  reference  to UL^PSS LOCK suppo rted by DB IA 2789
  6067   "RTN","PSO NEW",4,0)
  6068    ;External  reference  to $$L^PS SLOCK supp orted by D BIA 2789
  6069   "RTN","PSO NEW",5,0)
  6070    ;External  reference  to ^VA(20 0 supporte d by DBIA  224
  6071   "RTN","PSO NEW",6,0)
  6072    ;External  reference  to ^XUSEC ( supporte d by DBIA  10076
  6073   "RTN","PSO NEW",7,0)
  6074    ;External  reference  to ^ORX1  supported  by DBIA 21 86
  6075   "RTN","PSO NEW",8,0)
  6076    ;External  reference  to ^ORX2  supported  by DBIA 86 7
  6077   "RTN","PSO NEW",9,0)
  6078    ;External  reference  to ^TIUED IT support ed by DBIA  2410
  6079   "RTN","PSO NEW",10,0)
  6080    ;External  reference  to ^DD("D ILOCKTM" s upported b y DBIA 999
  6081   "RTN","PSO NEW",11,0)
  6082    ;-------- ---------- ---------- ---------- ---------- ---------- -----
  6083   "RTN","PSO NEW",12,0)
  6084   OERR ;back door new r x for v7
  6085   "RTN","PSO NEW",13,0)
  6086    K PSOREED T,COPY,SPE ED,PSOEDIT ,DUR,DRET, PSOTITRX,P SOMTFLG N  PSOCKCON,P SODAOC
  6087   "RTN","PSO NEW",14,0)
  6088    S PSOPLCK =$$L^PSSLO CK(PSODFN, 0) I '$G(P SOPLCK) D  LOCK^PSOOR CPY S VALM SG=$S($P($ G(PSOPLCK) ,"^",2)'=" ":$P($G(PS OPLCK),"^" ,2)_" is w orking on  this patie nt.",1:"An other pers on is ente ring order s for this  patient." ) K PSOPLC K S VALMBC K="" Q
  6089   "RTN","PSO NEW",15,0)
  6090    K PSOPLCK  S X=PSODF N_";DPT("  D LK^ORX2  I 'Y S VAL MSG="Anoth er person  is enterin g orders f or this pa tient.",VA LMBCK="" D  UL^PSSLOC K(PSODFN)  Q
  6091   "RTN","PSO NEW",16,0)
  6092   AGAIN N VA LMCNT K PS ODRUG,PSOC OU,PSOCOUU ,PSONOOR,P SORX("FN") ,PSORX("DF LG"),PSOQU IT,POERR S  PSORX("DF LG")=0
  6093   "RTN","PSO NEW",17,0)
  6094    W ! D HLD HDR^PSOLMU TL S (PSON EW("QFLG") ,PSONEW("D FLG"),PSOQ UIT)=0,PSO FROM="NEW" ,PSONOEDT= 1
  6095   "RTN","PSO NEW",18,0)
  6096    K ORD D F ULL^VALM1, ^PSONEW1 ;  Continue  order entr y
  6097   "RTN","PSO NEW",19,0)
  6098    I PSONEW( "QFLG") G  END
  6099   "RTN","PSO NEW",20,0)
  6100    I PSONEW( "DFLG") W  !,$C(7),"R X DELETED" ,! S:$G(PO ERR) POERR ("DFLG")=1 ,VALMBCK=" Q" G END
  6101   "RTN","PSO NEW",21,0)
  6102    D:$P($G(P SOPAR),"^" ,7)=1 AUTO ^PSONRXN I  $P($G(PSO PAR),"^",7 )'=1 S PSO X=PSONEW(" RX #") D C HECK^PSONR XN
  6103   "RTN","PSO NEW",22,0)
  6104    I PSONEW( "DFLG")!PS ONEW("QFLG ") D DEL S :$G(POERR)  POERR("DF LG")=1,VAL MBCK="R" G  END
  6105   "RTN","PSO NEW",23,0)
  6106    D NOOR I  PSONEW("DF LG") D DEL  G END
  6107   "RTN","PSO NEW",24,0)
  6108    D ^PSONEW 2 I PSONEW ("DFLG") D  DEL S:$G( POERR) POE RR("DFLG") =1,VALMBCK ="R" G END  ; Asks if  correct
  6109   "RTN","PSO NEW",25,0)
  6110    G:$G(PSOR X("FN")) E ND
  6111   "RTN","PSO NEW",26,0)
  6112    D EN^PSON 52(.PSONEW ) ; Files  entry in F ile 52
  6113   "RTN","PSO NEW",27,0)
  6114    D NPSOSD^ PSOUTIL(.P SONEW) ; A dds newly  added rx t o PSOSD ar ray
  6115   "RTN","PSO NEW",28,0)
  6116    S VALMBCK ="R"
  6117   "RTN","PSO NEW",29,0)
  6118    ;
  6119   "RTN","PSO NEW",30,0)
  6120    ; - Possi ble Titrat ion prescr iption
  6121   "RTN","PSO NEW",31,0)
  6122    I $G(PSON EW("IRXN") ) D MARK^P SOOTMRX(PS ONEW("IRXN "),0)
  6123   "RTN","PSO NEW",32,0)
  6124    ;
  6125   "RTN","PSO NEW",33,0)
  6126   END D EOJ  ; Clean up           
  6127   "RTN","PSO NEW",34,0)
  6128    I '$G(PSO RX("FN"))  W ! K DIR, DIRUT,DUOU T,DTOUT S  DIR(0)="Y" ,DIR("B")= "YES",DIR( "A")="Anot her New Or der for "_ PSORX("NAM E") D ^DIR  K DIR,DIR UT,DUOUT,D TOUT I Y K  PSONEW,PS DRUG,ORD G  AGAIN
  6129   "RTN","PSO NEW",35,0)
  6130    D ^PSOBUI LD,BLD^PSO ORUT1 S X= PSODFN_";D PT(" D ULK ^ORX2 D UL ^PSSLOCK(P SODFN)
  6131   "RTN","PSO NEW",36,0)
  6132    D RV^PSOO RFL
  6133   "RTN","PSO NEW",37,0)
  6134    S VALMBCK ="R" K PSO RX("FN") Q
  6135   "RTN","PSO NEW",38,0)
  6136    ;-------- ---------- ---------- ---------- ---------- ---------- ------
  6137   "RTN","PSO NEW",39,0)
  6138   DEL ;
  6139   "RTN","PSO NEW",40,0)
  6140    W !,$C(7) ,"RX DELET ED",!
  6141   "RTN","PSO NEW",41,0)
  6142    I $P($G(P SOPAR),"^" ,7)=1 D
  6143   "RTN","PSO NEW",42,0)
  6144    . S DIE=" ^PS(59,",D A=PSOSITE, PSOY=$O(PS ONEW("OLD  LAST RX#", ""))
  6145   "RTN","PSO NEW",43,0)
  6146    . S PSOX= PSONEW("OL D LAST RX# ",PSOY)
  6147   "RTN","PSO NEW",44,0)
  6148    . L +^PS( 59,+PSOSIT E,PSOY):$S (+$G(^DD(" DILOCKTM") )>0:+^DD(" DILOCKTM") ,1:3)
  6149   "RTN","PSO NEW",45,0)
  6150    . S DR=$S (PSOY=8:"2 003////"_P SOX,PSOY=3 :"1002.1// //"_PSOX,1 :"2003//// "_PSOX)
  6151   "RTN","PSO NEW",46,0)
  6152    . D:PSOX< $$GET1^DIQ (59,+PSOSI TE,+DR,"I" ) ^DIE K D IE,X,Y
  6153   "RTN","PSO NEW",47,0)
  6154    . L -^PS( 59,+PSOSIT E,PSOY)
  6155   "RTN","PSO NEW",48,0)
  6156    . K PSOX, PSOY Q
  6157   "RTN","PSO NEW",49,0)
  6158   EOJ ;
  6159   "RTN","PSO NEW",50,0)
  6160    I $D(PSON EW("RX #") ) L -^PSRX ("B",PSONE W("RX #"))  ; +Lock s et in PSON RXN
  6161   "RTN","PSO NEW",51,0)
  6162    K PSONOED T,PSONEW,P SODRUG,ANQ DATA,LSI,C ,MAX,MIN,N DF,REF,SIG ,SER,PSOFL AG,PSOHI,P SOLO,PSONO OR,PSOCOUU ,PSOCOU,PS ORX("EDIT" ),ZNEW
  6163   "RTN","PSO NEW",52,0)
  6164    D CLEAN^P SOVER1
  6165   "RTN","PSO NEW",53,0)
  6166    K ^TMP("P SORXDC",$J ),RORD,ACO M,ACNT,CRI T,DEF,F1,G G,I1,IEN,I NDT,LAST,M SG,NIEN,ST A,DUR,DRET ,PSOPRC
  6167   "RTN","PSO NEW",54,0)
  6168    S (ZRXN,R XN)=$O(^TM P("PSORXN" ,$J,0)) I  RXN D
  6169   "RTN","PSO NEW",55,0)
  6170    .S RXN1=^ TMP("PSORX N",$J,RXN)  D EN^PSOH LSN1(RXN,$ P(RXN1,"^" ),$P(RXN1, "^",2),"", $P(RXN1,"^ ",3))
  6171   "RTN","PSO NEW",56,0)
  6172    .I $$GET1 ^DIQ(52,RX N,100,"I") =5 D EN^PS OHLSN1(RXN ,"SC","ZS" ,"")
  6173   "RTN","PSO NEW",57,0)
  6174    .;; START  NCC REMED IATION >>  457*MZR
  6175   "RTN","PSO NEW",58,0)
  6176    .N PSOCLO ZO S PSOCL OZO=($$GET 1^DIQ(50,+ $$GET1^DIQ (52,RXN,6, "I"),17.5) ="PSOCLO1" )  ; Cloza pine order
  6177   "RTN","PSO NEW",59,0)
  6178    .I PSOCLO ZO,$G(PSOL OGDT) N OR N S ORN=$$ GET1^DIQ(5 2,RXN,39.3 ,"I") I OR N D  ;/MZR  populate  ^XTMP entr y with ord er #
  6179   "RTN","PSO NEW",60,0)
  6180    ..I $P($G (^XTMP("YS CLTRN",DT, DFN,PSOLOG DT,0)),"^" ,3)=RXN D  ORDSET^YSC LTST6(ORN)
  6181   "RTN","PSO NEW",61,0)
  6182    .;; END N CC REMEDIA TION >> 45 7*457
  6183   "RTN","PSO NEW",62,0)
  6184    .;saves d rug allerg y order ch ks pso*7*3 90
  6185   "RTN","PSO NEW",63,0)
  6186    .I $D(^TM P("PSODAOC ",$J)) D
  6187   "RTN","PSO NEW",64,0)
  6188    ..S RXN=Z RXN,PSODAO C="Rx Back door "_$S( $$GET1^DIQ (52,RXN,10 0,"I")=4:" NON-VERIFI ED ",1:"") _"NEW Orde r Acceptan ce_OP",ZNE W=1
  6189   "RTN","PSO NEW",65,0)
  6190    .D DAOC
  6191   "RTN","PSO NEW",66,0)
  6192    K ZRXN,RX N,RXN1,^TM P("PSORXN" ,$J),^TMP( "PSODAOC", $J),RET,PS ODAOC,ZNEW
  6193   "RTN","PSO NEW",67,0)
  6194    I $G(PSON OTE) D FUL L^VALM1,MA IN^TIUEDIT (3,.TIUDA, PSODFN,"", "","","",1 )
  6195   "RTN","PSO NEW",68,0)
  6196    K PSONOTE ,PSOCKCON, ZZCOPY
  6197   "RTN","PSO NEW",69,0)
  6198    ;W !! K D IR S DIR(0 )="E",DIR( "?")="Pres s Return t o continue ",DIR("A") ="Press Re turn to Co ntinue" D  ^DIR K DIR ,DTOUT,DUO UT
  6199   "RTN","PSO NEW",70,0)
  6200    Q
  6201   "RTN","PSO NEW",71,0)
  6202   NOOR ;asks  nature of  order
  6203   "RTN","PSO NEW",72,0)
  6204    N PSONOOD F
  6205   "RTN","PSO NEW",73,0)
  6206    S PSONOOD F=0
  6207   "RTN","PSO NEW",74,0)
  6208    ;; START  NCC REMEDI ATION >> 4 57*MZR
  6209   "RTN","PSO NEW",75,0)
  6210    ;/MZR Add ed a next  line becau se otherwi se data ge ts lost
  6211   "RTN","PSO NEW",76,0)
  6212    I $$GET1^ DIQ(50,+$G (PSODRUG(" IEN")),17. 5)="PSOCLO 1",'$D(PSO NEW("SAND" )),$G(PSOS AND) S PSO NEW("SAND" )=PSOSAND  K PSOSAND
  6213   "RTN","PSO NEW",77,0)
  6214    ;; EMD NC C REMEDIAT ION >> 457 *MZR
  6215   "RTN","PSO NEW",78,0)
  6216    I $G(OR0)  D  G NOOR X ;front d oor
  6217   "RTN","PSO NEW",79,0)
  6218    .S PSOI=$ S($G(PSOSI GFL):1,$G( PSODRUG("O I"))'=$P(O R0,"^",8): 1,1:0)
  6219   "RTN","PSO NEW",80,0)
  6220    .I 'PSOI  S PSONOOR= "" D:$$FIN D1^DIC(200 .051,","_D UZ_",","X" ,"PSORPH")  COUN Q  ; NoO $P(OR0 ,"^",7)
  6221   "RTN","PSO NEW",81,0)
  6222    .S PSONOO DF=1
  6223   "RTN","PSO NEW",82,0)
  6224    .D DIR I  $D(DIRUT)  S PSONEW(" DFLG")=1 Q
  6225   "RTN","PSO NEW",83,0)
  6226    .S PSONOO R=Y D:$$FI ND1^DIC(20 0.051,","_ DUZ_",","X ","PSORPH" ) COUN K D IR,DTOUT,D TOUT,DIRUT
  6227   "RTN","PSO NEW",84,0)
  6228    ;backdoor  order
  6229   "RTN","PSO NEW",85,0)
  6230    D DIR I $ D(DIRUT) S  PSONEW("D FLG")=1,VA LMBCK="Q"  Q
  6231   "RTN","PSO NEW",86,0)
  6232    S PSONOOR =Y K DIK,D A,DIE,DR,P SOI,DIR,DU OUT,DTOUT, DIRUT
  6233   "RTN","PSO NEW",87,0)
  6234    G:'$D(^XU SEC("PSORP H",DUZ)) N OORX
  6235   "RTN","PSO NEW",88,0)
  6236   COUN ;pati ent counse ling
  6237   "RTN","PSO NEW",89,0)
  6238    G:$G(PSOR X("EDIT")) &('$G(PSOS IGFL)) NOO RX K DIR,D UOUT,DTOUT ,DIRUT
  6239   "RTN","PSO NEW",90,0)
  6240    S DIR("B" )="NO",DIR (0)="52,41 " D ^DIR S  PSOCOU=$S (Y:Y,1:0)
  6241   "RTN","PSO NEW",91,0)
  6242    I $D(DIRU T)!('PSOCO U) S PSOCO UU=0 D:'$G (SPEED) PR ONTE Q
  6243   "RTN","PSO NEW",92,0)
  6244    K:'$G(PSO COU) PSOCO UU K DIR,D UOUT,DTOUT ,DIRUT I Y  S DIR(0)= "52,42",DI R("B")="NO " D ^DIR S  PSOCOUU=$ S(Y:Y,1:0)
  6245   "RTN","PSO NEW",93,0)
  6246   PRONTE K P SONOTE,DIR ,DIRUT,DUO UT
  6247   "RTN","PSO NEW",94,0)
  6248    I $T(MAIN ^TIUEDIT)] "",'$G(SPE ED) D  K D IR,DIRUT,D UOUT
  6249   "RTN","PSO NEW",95,0)
  6250    .S DIR(0) ="Y",DIR(" B")="No",D IR("A")="D o you want  to enter  a Progress  Note",DIR ("A",1)=""  D ^DIR K  DIR
  6251   "RTN","PSO NEW",96,0)
  6252    .S PSONOT E=+Y Q  ;I  'Y!($D(DI RUT)) Q
  6253   "RTN","PSO NEW",97,0)
  6254   NOORX K X, Y,DIR,DUOU T,DTOUT,DI RUT
  6255   "RTN","PSO NEW",98,0)
  6256    Q
  6257   "RTN","PSO NEW",99,0)
  6258   DIR ;ask n ature of o rder
  6259   "RTN","PSO NEW",100,0 )
  6260    K DIR,DTO UT,DTOUT,D IRUT I $T( NA^ORX1)]" "  D  Q
  6261   "RTN","PSO NEW",101,0 )
  6262    .S PSONOO R=$$NA^ORX 1($S($G(PS ONOODF)!($ G(PSONOBCK )):"S",1:" W"),0,"B", "Nature of  Order",0, "WPSDIVR"_ $S($$GET1^ DIQ(200,DU Z,53.3):"E ",1:""))
  6263   "RTN","PSO NEW",102,0 )
  6264    .I +PSONO OR S (Y,PS ONOOR)=$P( PSONOOR,"^ ",3) Q
  6265   "RTN","PSO NEW",103,0 )
  6266    .S DIRUT= 1 K PSONOO R
  6267   "RTN","PSO NEW",104,0 )
  6268    I $D(PSON OOR) S DF= PSONOOR,PS ONODF=$S(D F="E":"PRO VIDER ENTE RED",DF="V ":"VERBAL" ,DF="P":"T ELEPHONE", DF="D":"DU PLICATE",D F="S":"SER VICE CORRE CTED",DF=" I":"POLICY ",DF="R":" SERVICE RE JECTED",1: "WRITTEN")
  6269   "RTN","PSO NEW",105,0 )
  6270    K DIR,DTO UT,DTOUT,D IRUT S DIR ("A")="Nat ure of Ord er: ",DIR( "B")=$S($D (PSONOOR): PSONODF,1: "WRITTEN")
  6271   "RTN","PSO NEW",106,0 )
  6272    S DIR(0)= "SA^W:WRIT TEN;V:VERB AL;P:TELEP HONE;S:SER VICE CORRE CTED;D:DUP LICATE;I:P OLICY;R:SE RVICE REJE CTED"_$S($ $GET1^DIQ( 200,DUZ,53 .3):";E:PR OVIDER ENT ERED",1:"" )
  6273   "RTN","PSO NEW",107,0 )
  6274    D ^DIR K  DF,PSONODF  Q:$D(DIRU T)  S PSON OOR=Y
  6275   "RTN","PSO NEW",108,0 )
  6276   DIRX Q
  6277   "RTN","PSO NEW",109,0 )
  6278    ;
  6279   "RTN","PSO NEW",110,0 )
  6280   NOORE(PSON EW) ;entry  point for  renew
  6281   "RTN","PSO NEW",111,0 )
  6282    D NOOR I  $D(DIRUT)  S PSONEW(" DFLG")=1 Q
  6283   "RTN","PSO NEW",112,0 )
  6284    S PSONEW( "NOO")=PSO NOOR
  6285   "RTN","PSO NEW",113,0 )
  6286    Q
  6287   "RTN","PSO NEW",114,0 )
  6288   DAOC ;adds  all backd oor order  checks to  file 100.0 5.
  6289   "RTN","PSO NEW",115,0 )
  6290    D ^PSONEW OC K ^TMP( "PSODAOC", $J),PSRDI
  6291   "RTN","PSO NEW",116,0 )
  6292    Q
  6293   "RTN","PSO NEW1")
  6294   0^13^B2163 6420
  6295   "RTN","PSO NEW1",1,0)
  6296   PSONEW1 ;B IR/DSD - n ew Rx orde r entry ;J ul 24, 201 7@15:24
  6297   "RTN","PSO NEW1",2,0)
  6298    ;;7.0;OUT PATIENT PH ARMACY;**4 6,104,117, 143,422,45 7**;DEC 19 97;Build 6 5
  6299   "RTN","PSO NEW1",3,0)
  6300    ;External  reference  ^PS(55 su pported by  DBIA 2228
  6301   "RTN","PSO NEW1",4,0)
  6302    ;
  6303   "RTN","PSO NEW1",5,0)
  6304   START ;
  6305   "RTN","PSO NEW1",6,0)
  6306    S (PSONEW ("DFLG"),P SONEW("FIE LD"),PSONE W1)=0
  6307   "RTN","PSO NEW1",7,0)
  6308    ;
  6309   "RTN","PSO NEW1",8,0)
  6310   1 S PSONEW ("FLD")=1  S PSONEW(" FIELD")=0
  6311   "RTN","PSO NEW1",9,0)
  6312    I $P($G(P SOPAR),"^" ,7)'=1 D M ANUAL^PSON RXN ; Get  Manual Rx  number
  6313   "RTN","PSO NEW1",10,0 )
  6314    G:PSONEW( "QFLG")!PS ONEW("DFLG ") END G:P SONEW("FIE LD") @PSON EW("FIELD" )
  6315   "RTN","PSO NEW1",11,0 )
  6316    ;
  6317   "RTN","PSO NEW1",12,0 )
  6318   2 S PSONEW ("FLD")=2  D PTSTAT^P SODIR1(.PS ONEW) ; Ge t Patient  Status
  6319   "RTN","PSO NEW1",13,0 )
  6320    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6321   "RTN","PSO NEW1",14,0 )
  6322    ;
  6323   "RTN","PSO NEW1",15,0 )
  6324   3 S PSONEW ("FLD")=3  D ^PSODRG   ; Get dru g and rela ted inform ation
  6325   "RTN","PSO NEW1",16,0 )
  6326    G:PSONEW( "DFLG") EN D D EN^PSO DIAG  ; ge t ICD diag nosis code s for orde r
  6327   "RTN","PSO NEW1",17,0 )
  6328    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6329   "RTN","PSO NEW1",18,0 )
  6330    ;
  6331   "RTN","PSO NEW1",19,0 )
  6332    ;/RBN - B EGIN CHANG ES PSO*7.0 *457
  6333   "RTN","PSO NEW1",20,0 )
  6334   31 I $D(^T MP($J,"CLO ZFLG",PSOD FN)) D  ;  Get Dosing
  6335   "RTN","PSO NEW1",21,0 )
  6336    . S PSONE W("# OF RE FILLS")=0
  6337   "RTN","PSO NEW1",22,0 )
  6338    . S PSONE W("DAYS SU PPLY")=4
  6339   "RTN","PSO NEW1",23,0 )
  6340    . S PSONE W("DOSE",1 )=100
  6341   "RTN","PSO NEW1",24,0 )
  6342    . S PSONE W("DOSE OR DERED",1)= 1
  6343   "RTN","PSO NEW1",25,0 )
  6344    . S PSONE W("DURATIO N",1)=4
  6345   "RTN","PSO NEW1",26,0 )
  6346    . S PSONE W("QTY")=4
  6347   "RTN","PSO NEW1",27,0 )
  6348    . S PSONE W("ENT")=1
  6349   "RTN","PSO NEW1",28,0 )
  6350    . S CLOZF LG=1 ; /MZ R Added it  to assure  check for  duration  in PSOORED 5
  6351   "RTN","PSO NEW1",29,0 )
  6352    S PSONEW( "FLD")=31  D DOSE^PSO DIR(.PSONE W) ; Get D osing
  6353   "RTN","PSO NEW1",30,0 )
  6354    ;/RBN - E ND CHANGES  PSO*7.0*4 57
  6355   "RTN","PSO NEW1",31,0 )
  6356    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6357   "RTN","PSO NEW1",32,0 )
  6358    ;
  6359   "RTN","PSO NEW1",33,0 )
  6360   32 K PSODE LINS
  6361   "RTN","PSO NEW1",34,0 )
  6362    I '$G(PSO NEW("ENT") ) W !,"Inc omplete Do saging Dat a!",! K DI RUT G 31
  6363   "RTN","PSO NEW1",35,0 )
  6364    S:'$D(PSO OEINS) PSO OEINS=$G(P SONEW("INS ")) S:'$D( PSOOSINS)  PSOOSINS=$ G(PSONEW(" SINS"))
  6365   "RTN","PSO NEW1",36,0 )
  6366    I '$P($G( ^PS(55,PSO DFN,"LAN") ),"^") S P SONEW("FLD ")=32 D IN S^PSODIR(. PSONEW) ;  Get Patien t Instruct ions
  6367   "RTN","PSO NEW1",37,0 )
  6368    I $P($G(^ PS(55,PSOD FN,"LAN")) ,"^") D
  6369   "RTN","PSO NEW1",38,0 )
  6370    .N PSOINS CH,PSODONE  S PSODONE =0
  6371   "RTN","PSO NEW1",39,0 )
  6372    .F  D  Q: PSODONE
  6373   "RTN","PSO NEW1",40,0 )
  6374    ..S PSONE W("FLD")=3 2 D INS^PS ODIR(.PSON EW)
  6375   "RTN","PSO NEW1",41,0 )
  6376    ..I '$G(P SONEW("DFL G")),'PSOD ONE,'$G(PS ODELINS) D  SINS^PSOD IR(.PSONEW )
  6377   "RTN","PSO NEW1",42,0 )
  6378    ..I $G(PS ONEW("DFLG ")) S PSOD ONE=1 K PS ONEW("DFLG ") D  Q
  6379   "RTN","PSO NEW1",43,0 )
  6380    ...I $G(P SONEW("INS "))]"",$G( PSONEW("SI NS"))="" K  PSONEW("I NS"),PSONE W("SIG") Q
  6381   "RTN","PSO NEW1",44,0 )
  6382    ...I $G(P SONEW("INS "))="",$G( PSONEW("SI NS"))]"" K  PSONEW("S INS")
  6383   "RTN","PSO NEW1",45,0 )
  6384    ..S PSOIN SCH=$$INSC HK^PSOHELP 3(.PSONEW)
  6385   "RTN","PSO NEW1",46,0 )
  6386    ..I 'PSOI NSCH S PSO DONE=1
  6387   "RTN","PSO NEW1",47,0 )
  6388    G:$G(PSON EW("DFLG") ) END G:$G (PSONEW("F IELD")) @P SONEW("FIE LD")
  6389   "RTN","PSO NEW1",48,0 )
  6390    ;
  6391   "RTN","PSO NEW1",49,0 )
  6392    ;
  6393   "RTN","PSO NEW1",50,0 )
  6394   4 D EN^PSO FSIG(.PSON EW) I $O(S IG(0)) S S IGOK=1
  6395   "RTN","PSO NEW1",51,0 )
  6396    ;S PSONEW ("FLD")=4  D SIG^PSOD IR1(.PSONE W) ; Get R x directio ns
  6397   "RTN","PSO NEW1",52,0 )
  6398    ;G:PSONEW ("DFLG") E ND G:PSONE W("FIELD")  @PSONEW(" FIELD")
  6399   "RTN","PSO NEW1",53,0 )
  6400    ;
  6401   "RTN","PSO NEW1",54,0 )
  6402   7 S PSONEW ("FLD")=7  D DAYS^PSO DIR1(.PSON EW) ; Get  days suppl y
  6403   "RTN","PSO NEW1",55,0 )
  6404    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6405   "RTN","PSO NEW1",56,0 )
  6406    ;
  6407   "RTN","PSO NEW1",57,0 )
  6408   5 S PSONEW ("FLD")=5  D QTY^PSOD IR1(.PSONE W) ; Get q uantity
  6409   "RTN","PSO NEW1",58,0 )
  6410    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6411   "RTN","PSO NEW1",59,0 )
  6412    ;
  6413   "RTN","PSO NEW1",60,0 )
  6414   6 I $P($G( PSOPAR),"^ ",15) S PS ONEW("FLD" )=6 D COPI ES^PSODIR1 (.PSONEW)  ; Get labe l copies
  6415   "RTN","PSO NEW1",61,0 )
  6416    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6417   "RTN","PSO NEW1",62,0 )
  6418    ;
  6419   "RTN","PSO NEW1",63,0 )
  6420   8 I $G(^TM P($J,"CLOZ FLG",PSODF N)) G 9  ;  PSO*7.0*4 57
  6421   "RTN","PSO NEW1",64,0 )
  6422    S PSONEW( "FLD")=8 D  REFILL^PS ODIR1(.PSO NEW) ; Get  # of refi lls
  6423   "RTN","PSO NEW1",65,0 )
  6424    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6425   "RTN","PSO NEW1",66,0 )
  6426    ;
  6427   "RTN","PSO NEW1",67,0 )
  6428   9 S PSONEW ("FLD")=9  D PROV^PSO DIR(.PSONE W) ; Get P rovider
  6429   "RTN","PSO NEW1",68,0 )
  6430    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6431   "RTN","PSO NEW1",69,0 )
  6432    G:$G(DUZ( "AG"))'="I " 11
  6433   "RTN","PSO NEW1",70,0 )
  6434    ;
  6435   "RTN","PSO NEW1",71,0 )
  6436   10 Q:$G(DU Z("AG"))'= "I"  S PSO NEW("FLD") =10 D EXP^ PSODIR2(.P SONEW) ; G et Expirat ion Date -  Indian He alth Servi ce ONLY
  6437   "RTN","PSO NEW1",72,0 )
  6438    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6439   "RTN","PSO NEW1",73,0 )
  6440    ;
  6441   "RTN","PSO NEW1",74,0 )
  6442   11 S PSONE W("FLD")=1 1 D CLINIC ^PSODIR2(. PSONEW) ;  Get Clinic
  6443   "RTN","PSO NEW1",75,0 )
  6444    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6445   "RTN","PSO NEW1",76,0 )
  6446    ;
  6447   "RTN","PSO NEW1",77,0 )
  6448   12 S PSONE W("FLD")=1 2 D MW^PSO DIR2(.PSON EW) ; Get  Mail/Windo w Info
  6449   "RTN","PSO NEW1",78,0 )
  6450    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6451   "RTN","PSO NEW1",79,0 )
  6452    ;
  6453   "RTN","PSO NEW1",80,0 )
  6454   13 S PSONE W("FLD")=1 3 D RMK^PS ODIR2(.PSO NEW) ; Get  Remarks
  6455   "RTN","PSO NEW1",81,0 )
  6456    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6457   "RTN","PSO NEW1",82,0 )
  6458    ;
  6459   "RTN","PSO NEW1",83,0 )
  6460   14 S PSONE W("FLD")=1 4 D ISSDT^ PSODIR2(.P SONEW) ; G et Issue D ate
  6461   "RTN","PSO NEW1",84,0 )
  6462    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6463   "RTN","PSO NEW1",85,0 )
  6464    ;
  6465   "RTN","PSO NEW1",86,0 )
  6466   15 S PSONE W("FLD")=1 5 D FILLDT ^PSODIR2(. PSONEW) ;  Get Fill d ate
  6467   "RTN","PSO NEW1",87,0 )
  6468    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6469   "RTN","PSO NEW1",88,0 )
  6470    ;
  6471   "RTN","PSO NEW1",89,0 )
  6472   16 S PSONE W("FLD")=1 6 D CLERK^ PSODIR2(.P SONEW) ; G et Clerk C ode
  6473   "RTN","PSO NEW1",90,0 )
  6474    G:PSONEW( "DFLG") EN D G:PSONEW ("FIELD")  @PSONEW("F IELD")
  6475   "RTN","PSO NEW1",91,0 )
  6476    ;
  6477   "RTN","PSO NEW1",92,0 )
  6478   END ;
  6479   "RTN","PSO NEW1",93,0 )
  6480    K PSONEW1 ,PSOOEINS, PSOOSINS,^ TMP($J,"CL OZFLG",PSO DFN)
  6481   "RTN","PSO NEW1",94,0 )
  6482    Q
  6483   "RTN","PSO NEW1",95,0 )
  6484    ;
  6485   "RTN","PSO NEW1",96,0 )
  6486   JUMP ;
  6487   "RTN","PSO NEW1",97,0 )
  6488    S PSONEW( "FIELD")=$ S(+Y=.01:1 ,+Y=3:2,+Y =6:3,+Y=10 :4,+Y=7:5, +Y=10.6:6, +Y=8:7,+Y= 9:8,+Y=4:9 ,+Y=29:10, +Y=5:11,+Y =11:12,+Y= 12:13,+Y=1 :14,+Y=22: 15,+Y=16:1 6,+Y=113:3 1,+Y=114:3 2,1:PSONEW ("FLD"))
  6489   "RTN","PSO NEW1",98,0 )
  6490    I PSONEW( "FIELD")>P SONEW("FLD ") W !,$C( 7),"Cannot  jump ahea d ..",! S  PSONEW("FI ELD")=PSON EW("FLD")
  6491   "RTN","PSO NEW1",99,0 )
  6492    Q
  6493   "RTN","PSO ORED1")
  6494   0^10^B7919 3159
  6495   "RTN","PSO ORED1",1,0 )
  6496   PSOORED1 ; ISC-BHAM/S AB - edit  orders fro m backdoor  ;Jul 24,  2017@15:24
  6497   "RTN","PSO ORED1",2,0 )
  6498    ;;7.0;OUT PATIENT PH ARMACY;**5 ,23,46,78, 114,117,13 1,146,223, 148,244,24 9,268,206, 313,444,42 2,457**;DE C 1997;Bui ld 65
  6499   "RTN","PSO ORED1",3,0 )
  6500    ;External  reference  ^PS(55 su pported by  DBIA 2228
  6501   "RTN","PSO ORED1",4,0 )
  6502    ;External  reference  ^PS(50.7  supported  by DBIA 22 23
  6503   "RTN","PSO ORED1",5,0 )
  6504    ;
  6505   "RTN","PSO ORED1",6,0 )
  6506    ;*244 cal l to remov e DC'd Rx' s from Rx  ien string s
  6507   "RTN","PSO ORED1",7,0 )
  6508    ;
  6509   "RTN","PSO ORED1",8,0 )
  6510   EN(PSORENW ) ;
  6511   "RTN","PSO ORED1",9,0 )
  6512    N LST,ORD ,ORN K VAL MBCK,PSORX ("FN") S P SOAC=1,(PS ORX("QFLG" ),PSORX("D FLG"))=0 ; D DREN^PSO ORNW2,INIT
  6513   "RTN","PSO ORED1",10, 0)
  6514    D INIT
  6515   "RTN","PSO ORED1",11, 0)
  6516    D @$S($P( PSOPAR,"^" ,7):"AUTO^ PSONRXN",1 :"MANUAL^P SONRXN")
  6517   "RTN","PSO ORED1",12, 0)
  6518    I '$D(PSO NEW("RX #" )),'$P(PSO PAR,"^",7)  D PAUSE^V ALM1 K VAL MSG,PSONEW ("QFLG") S  VALMBCK=" Q" Q
  6519   "RTN","PSO ORED1",13, 0)
  6520    I '$D(PSO NEW("RX #" )) K VALMS G D DEL^PS ONEW,PAUSE ^VALM1 S V ALMBCK="Q"  Q
  6521   "RTN","PSO ORED1",14, 0)
  6522    S PSORENW ("RX #")=P SONEW("RX  #") I '$P( PSOPAR,"^" ,7) D  Q:$ G(PSONEW(" DFLG"))!($ G(PSONEW(" QFLG")))
  6523   "RTN","PSO ORED1",15, 0)
  6524    .S PSOX=P SORENW("RX  #") D CHE CK^PSONRXN
  6525   "RTN","PSO ORED1",16, 0)
  6526    I $G(PSON EW("DFLG") )!$G(PSONE W("QFLG"))  D DEL^PSO NEW,PAUSE^ VALM1 S VA LMBCK="Q"  K PSORENW  Q
  6527   "RTN","PSO ORED1",17, 0)
  6528    D EN^PSOO RNE1(.PSOR ENW) I '$G (PSORX("FN ")) D:$P($ G(PSOPAR), "^",7)=1   S VALMBCK= "Q" Q
  6529   "RTN","PSO ORED1",18, 0)
  6530    .S DIE="^ PS(59,",DA =PSOSITE,P SOY=$O(PSO NEW("OLD L AST RX#"," ")),PSOX=P SONEW("OLD  LAST RX#" ,PSOY)
  6531   "RTN","PSO ORED1",19, 0)
  6532    .L +^PS(5 9,+PSOSITE ,PSOY):$S( +$G(^DD("D ILOCKTM")) >0:+^DD("D ILOCKTM"), 1:3)
  6533   "RTN","PSO ORED1",20, 0)
  6534    .S DR=$S( PSOY=8:"20 03////"_PS OX,PSOY=3: "1002.1/// /"_PSOX,1: "2003////" _PSOX)
  6535   "RTN","PSO ORED1",21, 0)
  6536    .D:PSOX<$ P(^PS(59,+ PSOSITE,PS OY),"^",3)  ^DIE K DI E,X,Y L -^ PS(59,+PSO SITE,PSOY)
  6537   "RTN","PSO ORED1",22, 0)
  6538    .I $D(PSO NEW("RX #" )) L -^PSR X("B",PSON EW("RX #") )
  6539   "RTN","PSO ORED1",23, 0)
  6540    .K PSOX,P SOY Q
  6541   "RTN","PSO ORED1",24, 0)
  6542    Q:$G(COPY )
  6543   "RTN","PSO ORED1",25, 0)
  6544   TRY S $P(^ PSRX(PSORE NW("OIRXN" ),"STA")," ^")=15,DA= PSORENW("O IRXN")
  6545   "RTN","PSO ORED1",26, 0)
  6546    S $P(^PSR X(DA,3),"^ ",5)=DT,$P (^PSRX(DA, 3),"^",10) =$P(^PSRX( DA,3),"^")
  6547   "RTN","PSO ORED1",27, 0)
  6548    D REVERSE ^PSOBPSU1( DA,,"DC",7 ),CAN^PSOT PCAN(DA)
  6549   "RTN","PSO ORED1",28, 0)
  6550    D RMP^PSO CAN3                  ;*244
  6551   "RTN","PSO ORED1",29, 0)
  6552    ;cancel/d iscontinue  action
  6553   "RTN","PSO ORED1",30, 0)
  6554    S PHARM=" ",STAT="RP ",COMM="Pr escription  discontin ued due to  editing."  D EN^PSOH LSN1(DA,ST AT,PHARM,C OMM,PSONOO R) K STAT, PHARM,COMM
  6555   "RTN","PSO ORED1",31, 0)
  6556    S ACOM="D iscontinue d due to e diting. Ne w Rx creat ed "_$P(^P SRX(PSOREN W("IRXN"), 0),"^")_". "
  6557   "RTN","PSO ORED1",32, 0)
  6558    I $G(^PSR X(DA,"H")) ]"" D
  6559   "RTN","PSO ORED1",33, 0)
  6560    .I $P(^PS RX(DA,"STA "),"^")=3! ($P(^("STA "),"^")=16 ) D
  6561   "RTN","PSO ORED1",34, 0)
  6562    ..S DIE=5 2,DR="22// /"_$P(^PSR X(DA,3),"^ ") D ^DIE  S ACOM="Di scontinued  due to ed iting whil e on hold.  " K:$P(^P SRX(DA,"H" ),"^") ^PS RX("AH",$P (^PSRX(DA, "H"),"^"), DA)
  6563   "RTN","PSO ORED1",35, 0)
  6564    ..S ^PSRX (DA,"H")=" "
  6565   "RTN","PSO ORED1",36, 0)
  6566    S RXDA=DA ,(DA,SUSDA )=$O(^PS(5 2.5,"B",RX DA,0)) D:D A
  6567   "RTN","PSO ORED1",37, 0)
  6568    .S SUSD=$ P($G(^PS(5 2.5,DA,0)) ,"^",2)
  6569   "RTN","PSO ORED1",38, 0)
  6570    .S:+$G(^P S(52.5,DA, "P"))'=1 A COM="Disco ntinued du e to editi ng while s uspended."
  6571   "RTN","PSO ORED1",39, 0)
  6572    .I $O(^PS RX(RXDA,1, 0)) S DA=R XDA D:'$G( ^PS(52.5,+ SUSDA,"P") ) REF^PSOC AN2
  6573   "RTN","PSO ORED1",40, 0)
  6574    .S DA=SUS DA,DIK="^P S(52.5," D  ^DIK K DI K
  6575   "RTN","PSO ORED1",41, 0)
  6576    K SUSD,SU SDA S DA=R XDA,RXREF= 0,PSODFN=+ $P(^PSRX(D A,0),"^",2 ) D
  6577   "RTN","PSO ORED1",42, 0)
  6578    .S ACNT=0  F SUB=0:0  S SUB=$O( ^PSRX(DA," A",SUB)) Q :'SUB  S A CNT=SUB
  6579   "RTN","PSO ORED1",43, 0)
  6580    .S RFCNT= 0 F RF=0:0  S RF=$O(^ PSRX(DA,1, RF)) Q:'RF   S RFCNT= RF S:RF>5  RFCNT=RF+1
  6581   "RTN","PSO ORED1",44, 0)
  6582    .D NOW^%D TC S ^PSRX (DA,"A",0) ="^52.3DA^ "_(ACNT+1) _"^"_(ACNT +1),^PSRX( DA,"A",ACN T+1,0)=%_" ^C^"_DUZ_" ^"_RFCNT_" ^"_$G(ACOM )
  6583   "RTN","PSO ORED1",45, 0)
  6584    .I $G(PSO OIFLG),'$G (PSOMRFLG)  S $P(^PSR X(DA,"A",A CNT+1,1)," ^")="Pharm acy Ordera ble Item E dited."
  6585   "RTN","PSO ORED1",46, 0)
  6586    .I '$G(PS OOIFLG),$G (PSOMRFLG)  S $P(^PSR X(DA,"A",A CNT+1,1)," ^")="Medic ation Rout e/Schedule  Edited."
  6587   "RTN","PSO ORED1",47, 0)
  6588    .I $G(PSO OIFLG),$G( PSOMRFLG)  S $P(^PSRX (DA,"A",AC NT+1,1),"^ ")="Pharma cy Orderab le Item an d Medicati on Route/S chedule Ed ited."
  6589   "RTN","PSO ORED1",48, 0)
  6590    .S REA="C " D EXP^PS OHELP1
  6591   "RTN","PSO ORED1",49, 0)
  6592    I $G(^PS( 52.4,DA,0) )]"" S PSC DA=DA,DIK= "^PS(52.4, " D ^DIK S  DA=PSCDA  K DIK,PSCD A
  6593   "RTN","PSO ORED1",50, 0)
  6594    Q
  6595   "RTN","PSO ORED1",51, 0)
  6596   INS K X,QU IT,Y,DIR,D IRUT,DUOUT ,DTOUT,DIC ,INSDEL,UP MI,^TMP($J ,"INS1")
  6597   "RTN","PSO ORED1",52, 0)
  6598    I '$O(^PS RX(PSORXED ("IRXN"),6 ,0)),'$O(P SORXED("DO SE",0)) D  UPMI Q:$G( QUIT)  ;G  INS1
  6599   "RTN","PSO ORED1",53, 0)
  6600    I $G(^PSR X(PSORXED( "IRXN"),"I NS"))]"" S  PSORXED(" FLD",114)= ^PSRX(PSOR XED("IRXN" ),"INS") K  UPMI G IN S1
  6601   "RTN","PSO ORED1",54, 0)
  6602    K DD,GG F  I=0:0 S I =$O(^PSRX( PSORXED("I RXN"),"INS 1",I)) Q:' I  S DD=$G (DD)+1
  6603   "RTN","PSO ORED1",55, 0)
  6604    I $G(DD)= 1 S PSORXE D("FLD",11 4)=^PSRX(P SORXED("IR XN"),"INS1 ",$O(^PSRX (PSORXED(" IRXN"),"IN S1",0)),0)  K UPMI,DD  G INS1
  6605   "RTN","PSO ORED1",56, 0)
  6606    I $O(^PSR X(PSORXED( "IRXN"),"I NS1",0)) D   G INSX
  6607   "RTN","PSO ORED1",57, 0)
  6608    .F I=0:0  S I=$O(^PS RX(PSORXED ("IRXN")," INS1",I))  Q:'I  S ^T MP($J,"INS 1",I,0)=^P SRX(PSORXE D("IRXN"), "INS1",I,0 )
  6609   "RTN","PSO ORED1",58, 0)
  6610    .S ^TMP($ J,"INS1",0 )=^PSRX(PS ORXED("IRX N"),"INS1" ,0)
  6611   "RTN","PSO ORED1",59, 0)
  6612    .S DIC="^ TMP($J,""I NS1"",",DW PK=2,DWLW= 80 D EN^DI WE I $G(X) ="^" K ^TM P($J,"INS1 ") Q
  6613   "RTN","PSO ORED1",60, 0)
  6614    .I '$O(^T MP($J,"INS 1",0)) S I NSDEL=1
  6615   "RTN","PSO ORED1",61, 0)
  6616    .S D=0 F   S D=$O(^P SRX(PSORXE D("IRXN"), "INS1",D))  Q:'D  S P SORXED("SI G",D)=^PSR X(PSORXED( "IRXN"),"I NS1",D,0)
  6617   "RTN","PSO ORED1",62, 0)
  6618   INS1 K Y,D IR,DIRUT,D UOUT,DTOUT ,DIC,X
  6619   "RTN","PSO ORED1",63, 0)
  6620    I $G(PSOR XED("IRXN" )) S:'$D(P SOOEINS) P SOOEINS=$G (^PSRX(PSO RXED("IRXN "),"INS"))  S:'$D(PSO OSINS) PSO OSINS=$G(^ PSRX(PSORX ED("IRXN") ,"INSS"))  ;*422
  6621   "RTN","PSO ORED1",64, 0)
  6622    I $G(UPMI ) K UPMI I  $G(^PS(50 .7,PSODRUG ("OI"),"IN S"))]"" S  PSORXED("F LD",114)=^ PS(50.7,PS ODRUG("OI" ),"INS")
  6623   "RTN","PSO ORED1",65, 0)
  6624    S:$G(PSOR XED("FLD", 114))]"" D IR("B")=PS ORXED("FLD ",114)
  6625   "RTN","PSO ORED1",66, 0)
  6626    S DIR("?" )="Enter Q uick codes  or Free T ext",DIR(0 )="52,114"  D ^DIR
  6627   "RTN","PSO ORED1",67, 0)
  6628    I $D(DTOU T)!($D(DUO UT)) K PSO RXED("FLD" ,114),PSOR XED("FLD", 114.1) S ( PSORXED("I NS"),PSORX ED("SIG",1 ))=$G(PSOO EINS) S:$P ($G(^PS(55 ,PSODFN,"L AN")),"^")  PSORXED(" SINS")=$G( PSOOSINS)  D EN^PSOFS IG(.PSORXE D,1) G INS Q  ;*422
  6629   "RTN","PSO ORED1",68, 0)
  6630    I $G(PSOR XED("DFLG" )) S (PSOR XED("SIG") ,PSORXED(" INS"))=$G( PSOOEINS), PSORXED("S INS")=$G(P SOOSINS) K  PSORXED(" SIG") D EN ^PSOFSIG(. PSONEW,1)  G INSQ  ;* 422
  6631   "RTN","PSO ORED1",69, 0)
  6632    S PSODELI NS=0 I X=" @" S PSODE LINS=1 D D ELINS^PSOH ELP3 ;*422
  6633   "RTN","PSO ORED1",70, 0)
  6634    I '$G(PSO DELINS),($ G(X)="@"!( $G(X)=""))  S (X,INS1 ,PSORXED(" INS"))=$G( PSOOEINS)  ;*422
  6635   "RTN","PSO ORED1",71, 0)
  6636    I $G(PSOD ELINS) S ( INS1,PSORX ED("FLD",1 14),PSORXE D("FLD",11 4.1))="" K  PSORXED(" INS"),PSOR XED("SIG") ,PSORXED(" SINS")  ;* 422
  6637   "RTN","PSO ORED1",72, 0)
  6638    I X'="",X '="@" D SI G^PSOHELP  G INS1:'$D (X)
  6639   "RTN","PSO ORED1",73, 0)
  6640    I $G(INS1 )]"" W " ( "_$E(INS1, 2,9999999) _")"
  6641   "RTN","PSO ORED1",74, 0)
  6642    S:$G(INS1 )]"" (PSOR XED("INS") ,PSORXED(" SIG",1),PS ORXED("FLD ",114))=$E (INS1,2,99 99999) D E N^PSOFSIG( .PSORXED)
  6643   "RTN","PSO ORED1",75, 0)
  6644    I $G(PSOD ELINS) G I NSQ
  6645   "RTN","PSO ORED1",76, 0)
  6646   INSX I '$P ($G(^PS(55 ,PSODFN,"L AN")),"^")  G INSQ
  6647   "RTN","PSO ORED1",77, 0)
  6648    K DIR
  6649   "RTN","PSO ORED1",78, 0)
  6650    I $G(^PSR X(PSORXED( "IRXN"),"I NSS"))]""  S PSORXED( "SINS")=^P SRX(PSORXE D("IRXN"), "INSS")
  6651   "RTN","PSO ORED1",79, 0)
  6652    D SINS^PS ODIR(.PSOR XED) ;*422
  6653   "RTN","PSO ORED1",80, 0)
  6654    I $G(PSOR XED("DFLG" )) K PSORX ED("FLD",1 14) S PSOR XED("INS") =$G(PSOOEI NS) S:$P($ G(^PS(55,P SODFN,"LAN ")),"^") P SORXED("SI NS")=$G(PS OOSINS) D  EN^PSOFSIG (.PSORXED, 1) G INSQ   ;*422
  6655   "RTN","PSO ORED1",81, 0)
  6656    S:$G(PSOR XED("SINS" ))]"" PSOR XED("FLD", 114.1)=$G( PSORXED("S INS"))  ;* 422
  6657   "RTN","PSO ORED1",82, 0)
  6658    S PSOINSC H=$$INSCHK ^PSOHELP3( .PSORXED)   ;*422
  6659   "RTN","PSO ORED1",83, 0)
  6660    G:PSOINSC H INS1  ;* 422
  6661   "RTN","PSO ORED1",84, 0)
  6662   INSQ K DIR UT,DUOUT,D TOUT,DIR,X ,Y,DIC,DWP K,PSOOEINS ,PSOOSINS, PSODELINS
  6663   "RTN","PSO ORED1",85, 0)
  6664    Q
  6665   "RTN","PSO ORED1",86, 0)
  6666   INIT ;setu p psorenw  array
  6667   "RTN","PSO ORED1",87, 0)
  6668    S PSORENW ("RX0")=^P SRX(PSOREN W("IRXN"), 0),PSORENW ("RX2")=^( 2),PSORENW ("RX3")=^( 3),PSORENW ("STA")=^( "STA"),PSO RENW("TN") =$G(^("TN" ))
  6669   "RTN","PSO ORED1",88, 0)
  6670    I $G(PSOS IGFL),$G(P SORX("SIG" ))]"" S PS ORENW("SIG ")=PSORX(" SIG"),SIGO K=0
  6671   "RTN","PSO ORED1",89, 0)
  6672    E  D
  6673   "RTN","PSO ORED1",90, 0)
  6674    .I '$P($G (^PSRX(PSO RENW("IRXN "),"SIG")) ,"^",2) S  PSORENW("S IG")=$P($G (^("SIG")) ,"^")
  6675   "RTN","PSO ORED1",91, 0)
  6676    .E  D
  6677   "RTN","PSO ORED1",92, 0)
  6678    ..S SIGOK =1 Q:$O(SI G(0))
  6679   "RTN","PSO ORED1",93, 0)
  6680    ..S D=0 F  I=0:0 S D =D+1,I=$O( ^PSRX(PSOR ENW("IRXN" ),"SIG1",I )) Q:'I  S  SIG(D)=^P SRX(PSOREN W("IRXN"), "SIG1",I,0 )
  6681   "RTN","PSO ORED1",94, 0)
  6682    ..K PSOX1 ,D
  6683   "RTN","PSO ORED1",95, 0)
  6684    S PSORENW ("OIRXN")= PSORENW("I RXN")
  6685   "RTN","PSO ORED1",96, 0)
  6686    S PSORENW ("PROVIDER ")=$S($G(P SORENW("PR OVIDER")): PSORENW("P ROVIDER"), 1:$P(PSORE NW("RX0"), "^",4))
  6687   "RTN","PSO ORED1",97, 0)
  6688    S (PSOREN W("PROVIDE R NAME"),P SORX("PROV IDER NAME" ))=$P($G(^ VA(200,PSO RENW("PROV IDER"),0)) ,"^")
  6689   "RTN","PSO ORED1",98, 0)
  6690    I $P($G(^ VA(200,PSO RENW("PROV IDER"),"PS ")),"^",7) ,$P($G(^(" PS")),"^", 8) S PSORE NW("COSIGN ING PROVID ER")=$P($G (^("PS")), "^",8)
  6691   "RTN","PSO ORED1",99, 0)
  6692    S PSORENW ("CLINIC") =$S($G(PSO RENW("CLIN IC")):PSOR ENW("CLINI C"),1:$P(P SORENW("RX 0"),"^",5) )
  6693   "RTN","PSO ORED1",100 ,0)
  6694    S PSORENW ("REMARKS" )="New Ord er Created  by "_$S($ G(COPY)&(' $G(PSOEDIT )):"copyin g",1:"edit ing")_" Rx  # "_$P(PS ORENW("RX0 "),"^")_". "
  6695   "RTN","PSO ORED1",101 ,0)
  6696    ;
  6697   "RTN","PSO ORED1",102 ,0)
  6698    ; - Maint enance Dos e Rx Remar ks field
  6699   "RTN","PSO ORED1",103 ,0)
  6700    I $G(PSOM TFLG) S PS ORENW("REM ARKS")="Ma intenance  Rx created  from Titr ation Rx#  "_$P(PSORE NW("RX0"), "^")_"."
  6701   "RTN","PSO ORED1",104 ,0)
  6702    ;
  6703   "RTN","PSO ORED1",105 ,0)
  6704    S PSORENW ("COSIGNER ")=$S($G(P SORENW("CO SIGNER")): PSORENW("C OSIGNER"), $P(PSORENW ("RX3"),"^ ",3):$P(PS ORENW("RX3 "),"^",3), 1:"")
  6705   "RTN","PSO ORED1",106 ,0)
  6706    K:PSORENW ("COSIGNER ")="" PSOR ENW("COSIG NER")
  6707   "RTN","PSO ORED1",107 ,0)
  6708    S PSORENW ("PSODFN") =$P(PSOREN W("RX0")," ^",2)
  6709   "RTN","PSO ORED1",108 ,0)
  6710    S PSORENW ("ORX #")= $P(PSORENW ("RX0"),"^ ")
  6711   "RTN","PSO ORED1",109 ,0)
  6712    S:$G(PSOD RUG("IEN") ) PSORENW( "DRUG IEN" )=PSODRUG( "IEN")
  6713   "RTN","PSO ORED1",110 ,0)
  6714    ;; START  NCC REMEDI ATION >> 4 57*RJS - A DJUST MAX  DAYS SUPPL Y FOR 4 DA Y SUPPLY
  6715   "RTN","PSO ORED1",111 ,0)
  6716    I $$GET1^ DIQ(50,+$G (PSODRUG(" IEN")),17. 5)="PSOCLO 1",$P(PSOR ENW("RX0") ,"^",8)<5  S PSORENW( "DAYS SUPP LY")=$P(PS ORENW("RX0 "),"^",8)
  6717   "RTN","PSO ORED1",112 ,0)
  6718    ;; END NC C REMEDIAT ION << 457 *RJS
  6719   "RTN","PSO ORED1",113 ,0)
  6720    I $G(PSOR ENW("DAYS  SUPPLY"))  G QTY
  6721   "RTN","PSO ORED1",114 ,0)
  6722    S PSORENW ("DAYS SUP PLY")=$S($ D(CLOZPAT) :7,1:$P(PS ORENW("RX0 "),"^",8))
  6723   "RTN","PSO ORED1",115 ,0)
  6724   QTY S PSOR ENW("QTY") =$S($G(PSO RENW("QTY" )):PSORENW ("QTY"),1: $P(PSORENW ("RX0"),"^ ",7))
  6725   "RTN","PSO ORED1",116 ,0)
  6726   RFN S PSOR ENW("# OF  REFILLS")= $S($D(CLOZ PAT):0,$G( PSORENW("#  OF REFILL S")):PSORE NW("# OF R EFILLS"),1 :$P(PSOREN W("RX0")," ^",9))
  6727   "RTN","PSO ORED1",117 ,0)
  6728    S (PSOID, Y,PSORENW( "FILL DATE "),PSORENW ("ISSUE DA TE"))=DT
  6729   "RTN","PSO ORED1",118 ,0)
  6730    ;
  6731   "RTN","PSO ORED1",119 ,0)
  6732    ; - Maint enance Rx  Fill Date  is set wit h Next Pos sible Fill  from Titr ation Rx
  6733   "RTN","PSO ORED1",120 ,0)
  6734    I $G(PSOM TFLG),$P($ G(PSORENW( "RX3")),"^ ",2)>DT S  PSORENW("F ILL DATE") =$P(PSOREN W("RX3")," ^",2)
  6735   "RTN","PSO ORED1",121 ,0)
  6736    ;
  6737   "RTN","PSO ORED1",122 ,0)
  6738    S:PSORENW ("CLINIC")  PSORX("CL INIC")=$P( ^SC(+PSORE NW("CLINIC "),0),"^")
  6739   "RTN","PSO ORED1",123 ,0)
  6740    S PSORENW ("PATIENT  STATUS")=$ S($G(PSORE NW("PATIEN T STATUS") ):PSORENW( "PATIENT S TATUS"),'$ P(PSORENW( "RX0"),"^" ,3):$G(^PS (55,PSOREN W("PSODFN" ),"PS")),1 :$P(PSOREN W("RX0")," ^",3))
  6741   "RTN","PSO ORED1",124 ,0)
  6742    S PSORENW ("PTST NOD E")=$G(^PS (53,PSOREN W("PATIENT  STATUS"), 0))
  6743   "RTN","PSO ORED1",125 ,0)
  6744    S PSDAYS= $S($G(PSOR ENW("DAYS  SUPPLY")): PSORENW("D AYS SUPPLY "),'$P(PSO RENW("RX0" ),"^",8):$ P(PSORENW( "PTST NODE "),"^",3), 1:$P(PSORE NW("RX0"), "^",8))
  6745   "RTN","PSO ORED1",126 ,0)
  6746    I $G(PSOD RUG("IEN") ) S DREN=P SODRUG("IE N"),POERR= 1 D DRG^PS OORDRG K P OERR
  6747   "RTN","PSO ORED1",127 ,0)
  6748    D:$G(PSOR ENW("# OF  REFILLS")) ']"" RF
  6749   "RTN","PSO ORED1",128 ,0)
  6750    ;
  6751   "RTN","PSO ORED1",129 ,0)
  6752    ; - Maint enance Rx  # of Refil ls adjustm ent
  6753   "RTN","PSO ORED1",130 ,0)
  6754    I $G(PSOM TFLG),$G(P SORENW("#  OF REFILLS "))>0 S PS ORENW("# O F REFILLS" )=PSORENW( "# OF REFI LLS")-1
  6755   "RTN","PSO ORED1",131 ,0)
  6756    ;
  6757   "RTN","PSO ORED1",132 ,0)
  6758    S PSORENW ("MAIL/WIN DOW")=$S($ G(PSORENW( "MAIL/WIND OW"))]"":P SORENW("MA IL/WINDOW" ),1:$P(PSO RENW("RX0" ),"^",11))
  6759   "RTN","PSO ORED1",133 ,0)
  6760    S PSORX(" MAIL/WINDO W")=$S(PSO RENW("MAIL /WINDOW")= "W":"WINDO W",1:"MAIL ")
  6761   "RTN","PSO ORED1",134 ,0)
  6762    S PSORENW ("COPIES") =$S($G(PSO RENW("COPI ES")):PSOR ENW("COPIE S"),$P(PSO RENW("RX0" ),"^",18): $P(PSORENW ("RX0"),"^ ",18),1:1)
  6763   "RTN","PSO ORED1",135 ,0)
  6764    S PSORENW ("CLERK CO DE")=DUZ
  6765   "RTN","PSO ORED1",136 ,0)
  6766    S:$G(PSOR X("CLERK C ODE"))']""  PSORX("CL ERK CODE") =$P($G(^VA (200,DUZ,0 )),"^")
  6767   "RTN","PSO ORED1",137 ,0)
  6768    Q:$D(COPY )  S PSORE NW("ENT")= 0
  6769   "RTN","PSO ORED1",138 ,0)
  6770    K PSORENW ("ENT") F  I=0:0 S I= $O(PSORENW ("DOSE",I) ) Q:'I  S  PSORENW("E NT")=$G(PS ORENW("ENT "))+1
  6771   "RTN","PSO ORED1",139 ,0)
  6772    I $O(^TMP ($J,"INS1" ,0)) D
  6773   "RTN","PSO ORED1",140 ,0)
  6774    .K PSORXE D("SIG"),D D
  6775   "RTN","PSO ORED1",141 ,0)
  6776    .F I=0:0  S I=$O(^TM P($J,"INS1 ",I)) Q:'I   S PSOREN W("SIG",I) =^TMP($J," INS1",I,0)
  6777   "RTN","PSO ORED1",142 ,0)
  6778    .K ^TMP($ J,"INS1")
  6779   "RTN","PSO ORED1",143 ,0)
  6780    I $G(^PSR X(PSORENW( "IRXN"),"I NS"))]"" S  PSORENW(" INS")=^PSR X(PSORENW( "IRXN"),"I NS")
  6781   "RTN","PSO ORED1",144 ,0)
  6782    I $G(^PSR X(PSORENW( "IRXN"),"I NSS"))]""  S PSORENW( "SINS")=^P SRX(PSOREN W("IRXN"), "INSS")
  6783   "RTN","PSO ORED1",145 ,0)
  6784    I '$G(PSO RENW("ENT" )),'$G(PSO SIGFL) D D OLST1^PSOO RED3(.PSOR ENW) S PSO RENW("ENT" )=+$G(OLEN T)
  6785   "RTN","PSO ORED1",146 ,0)
  6786    Q
  6787   "RTN","PSO ORED1",147 ,0)
  6788   RF ;# of r efills
  6789   "RTN","PSO ORED1",148 ,0)
  6790    ; Retriev ing the Ma ximum Numb er of Refi lls allowe d
  6791   "RTN","PSO ORED1",149 ,0)
  6792    S PSORENW ("# OF REF ILLS")=$$M AXNUMRF^PS OUTIL(+$G( PSODRUG("I EN")),PSDA YS,+$G(PSO RENW("PATI ENT STATUS ")),.CLOZP AT)
  6793   "RTN","PSO ORED1",150 ,0)
  6794    Q
  6795   "RTN","PSO ORED1",151 ,0)
  6796   UPMI ;add  dosing dat a for pre- poe rxs
  6797   "RTN","PSO ORED1",152 ,0)
  6798    W !! K PS ONEW("DFLG "),DIR,DIR UT,DTOUT,D UOUT S DIR (0)="Y",DI R("B")="No ",DIR("A") ="Dosing I nstruction s Are Miss ing!! Do Y ou Want to  Add Them"
  6799   "RTN","PSO ORED1",153 ,0)
  6800    D ^DIR I  'Y!($D(DIR UT)) S QUI T=1 K DIR, DIRUT,DUOT ,DUOUT Q
  6801   "RTN","PSO ORED1",154 ,0)
  6802    S UPMI=1, EDTHLD=$G( PSORX("EDI T")) K PSO RX("EDIT")
  6803   "RTN","PSO ORED1",155 ,0)
  6804    D DOSE1^P SOORED5(.P SORXED) S  (PSORXED,P SORX("EDIT "))=EDTHLD  K EDTHLD  I $G(PSONE W("DFLG"))  S QUIT=1
  6805   "RTN","PSO ORED1",156 ,0)
  6806    Q
  6807   "RTN","PSO ORED5")
  6808   0^7^B68317 198
  6809   "RTN","PSO ORED5",1,0 )
  6810   PSOORED5 ; BIR/SAB-Rx s without  dosing inf o ;Jul 24,  2017@15:2 4
  6811   "RTN","PSO ORED5",2,0 )
  6812    ;;7.0;OUT PATIENT PH ARMACY;**4 6,75,78,10 0,99,117,1 33,251,378 ,372,416,3 13,450,486 ,457**;DEC  1997;Buil d 65
  6813   "RTN","PSO ORED5",3,0 )
  6814    ;^PS(51.2  - DBIA 22 26
  6815   "RTN","PSO ORED5",4,0 )
  6816    ;^PS(50.7  - DBIA 22 23
  6817   "RTN","PSO ORED5",5,0 )
  6818    ;^PSDRUG  - DBIA 221
  6819   "RTN","PSO ORED5",6,0 )
  6820    ;^PS(55 -  DBIA 2228
  6821   "RTN","PSO ORED5",7,0 )
  6822    ;called b y psoored2  and psodi r
  6823   "RTN","PSO ORED5",8,0 )
  6824    ;pre-poe  rxs and ne w backdoor  rxs
  6825   "RTN","PSO ORED5",9,0 )
  6826   DOSE1(PSOR XED) ;for  new rxs
  6827   "RTN","PSO ORED5",10, 0)
  6828   DOSE ;pre- poe rx
  6829   "RTN","PSO ORED5",11, 0)
  6830    D KV K RO U,STRE,FIE LD,DOSEOR, DUPD,X,Y,U NITS S ENT =1,OLENT=E NT
  6831   "RTN","PSO ORED5",12, 0)
  6832   ASK S ROU= "PSOORED5"  D ASK^PSO BKDED K RO U G:$D(DIR UT) EXE  ; 486
  6833   "RTN","PSO ORED5",13, 0)
  6834    I $G(JUMP ) K JUMP G  JUMP
  6835   "RTN","PSO ORED5",14, 0)
  6836    I $G(QUIT )]"" K QUI T,ROU Q
  6837   "RTN","PSO ORED5",15, 0)
  6838    ;
  6839   "RTN","PSO ORED5",16, 0)
  6840    I $G(VERB )]"" S PSO RXED("VERB ",ENT)=VER B G DUPD
  6841   "RTN","PSO ORED5",17, 0)
  6842    I $G(PSOR X("EDIT")) ']"" W:$G( PSORXED("V ERB",ENT)) ]"" !,"VER B: "_PSORX ED("VERB", ENT) G DUP D
  6843   "RTN","PSO ORED5",18, 0)
  6844   VER D VER^ PSOOREDX
  6845   "RTN","PSO ORED5",19, 0)
  6846    I X[U,$L( X)>1 S FIE LD="VER" G  JUMP
  6847   "RTN","PSO ORED5",20, 0)
  6848    G EX:$D(D TOUT),EXE: $D(DUOUT)  I X="@" K  PSORXED("V ERB",ENT), VERB G DUP D
  6849   "RTN","PSO ORED5",21, 0)
  6850    S:X'="" ( PSORXED("V ERB",ENT), VERB)=X
  6851   "RTN","PSO ORED5",22, 0)
  6852   DUPD ;
  6853   "RTN","PSO ORED5",23, 0)
  6854    I $G(PSOR XED("DOSE" ,ENT))'?.N &($G(PSORX ED("DOSE", ENT))'?.N1 ".".N)!'DO SE("LD") K  PSORXED(" DOSE ORDER ED",ENT),D UPD G NOU1
  6855   "RTN","PSO ORED5",24, 0)
  6856    D KV S DI R(0)="52.0 113,1",DIR ("A")="DIS PENSE UNIT S PER DOSE "_$S($G(PS ORXED("NOU N",ENT))]" ":"("_PSOR XED("NOUN" ,ENT)_")", 1:"")
  6857   "RTN","PSO ORED5",25, 0)
  6858    I '$G(PSO RXED("DOSE ",ENT)),$G (PSORXED(" DOSE",ENT- 1)) S PSOR XED("DOSE" ,ENT)=PSOR XED("DOSE" ,ENT-1)
  6859   "RTN","PSO ORED5",26, 0)
  6860    S DIR("B" )=$S($G(PS ORXED("DOS E ORDERED" ,ENT))]"": PSORXED("D OSE ORDERE D",ENT),$G (DUPD)]"": DUPD,1:"")  S:$E($G(D IR("B")),1 )="." DIR( "B")="0"_$ G(DIR("B") ) K:DIR("B ")="" DIR( "B")
  6861   "RTN","PSO ORED5",27, 0)
  6862    D ^DIR I  X[U,$L(X)> 1 S FIELD= "DUPD" G J UMP
  6863   "RTN","PSO ORED5",28, 0)
  6864    G EX:$D(D TOUT),EXE: $D(DUOUT)
  6865   "RTN","PSO ORED5",29, 0)
  6866    I X="@"!( X=0) W !," Dispense U nits Per D ose is Req uired!!",!  G DUPD
  6867   "RTN","PSO ORED5",30, 0)
  6868    D STR^PSO OREDX
  6869   "RTN","PSO ORED5",31, 0)
  6870    ;
  6871   "RTN","PSO ORED5",32, 0)
  6872   NOU1 G:'$D (DUPD) RTE  D CNON^PS OORED3 N P SONDEF
  6873   "RTN","PSO ORED5",33, 0)
  6874    I $G(NOUN )]"",$G(PS ORX("EDIT" ))']"" S P SORXED("NO UN",ENT)=N OUN W !,"N OUN: "_$G( NOUN) G RT E
  6875   "RTN","PSO ORED5",34, 0)
  6876    I $G(PSOR X("EDIT")) ']"",$G(PS ORXED("NOU N",ENT))]" " W !,"NOU N: "_PSORX ED("NOUN", ENT) G RTE
  6877   "RTN","PSO ORED5",35, 0)
  6878   NOU D NOU^ PSOOREDX I  X[U,$L(X) >1 S FIELD ="NOU" G J UMP
  6879   "RTN","PSO ORED5",36, 0)
  6880    G EXE:$D( DTOUT)!$D( DUOUT) I X ="@" K PSO RXED("NOUN ",ENT),NOU N G RTE
  6881   "RTN","PSO ORED5",37, 0)
  6882    I X'="",$ G(PSONDEF) ="" S NOUN =X
  6883   "RTN","PSO ORED5",38, 0)
  6884    I X'="",$ G(PSONDEF) '=X S NOUN =X
  6885   "RTN","PSO ORED5",39, 0)
  6886    S:X'="" P SORXED("NO UN",ENT)=X
  6887   "RTN","PSO ORED5",40, 0)
  6888    ;
  6889   "RTN","PSO ORED5",41, 0)
  6890   RTE I $G(E NT)>1,$G(P SORX("EDIT "))']"",$G (PSORXED(" ROUTE",ENT -1)),$G(PS ORXED("ROU TE",ENT))' ]"" S PSOR XED("ROUTE ",ENT)=PSO RXED("ROUT E",ENT-1)  G SCH
  6891   "RTN","PSO ORED5",42, 0)
  6892    I '$G(DRE T),'$G(PSO RXED("ROUT E",ENT)),$ P(^PS(50.7 ,PSODRUG(" OI"),0),"^ ",6) S PSO RXED("ROUT E",ENT)=$P (^PS(50.7, PSODRUG("O I"),0),"^" ,6)
  6893   "RTN","PSO ORED5",43, 0)
  6894    I $G(DRET ) S PSORXE D("ROUTE", ENT)=""
  6895   "RTN","PSO ORED5",44, 0)
  6896    I $G(RTE)  K RTE
  6897   "RTN","PSO ORED5",45, 0)
  6898    D KV S DI R(0)="FO^2 :45",DIR(" A")="ROUTE ",DIR("?") ="^D HLP^P SOORED4"
  6899   "RTN","PSO ORED5",46, 0)
  6900    S DIR("B" )=$S($G(PS ORXED("ROU TE",ENT)): $P(^PS(51. 2,PSORXED( "ROUTE",EN T),0),"^") ,$G(RTE)]" ":RTE,$G(D RET):"",1: "PO") K:DI R("B")=""  DIR("B")
  6901   "RTN","PSO ORED5",47, 0)
  6902    D ^DIR I  X[U,$L(X)> 1 S FIELD= "RTE" G JU MP
  6903   "RTN","PSO ORED5",48, 0)
  6904    G EX:$D(D TOUT),EXE: $D(DUOUT)
  6905   "RTN","PSO ORED5",49, 0)
  6906    I X="@"!( X="") K RT E,ERTE S D RET=1,PSOR XED("ROUTE ",ENT)=""  G SCH
  6907   "RTN","PSO ORED5",50, 0)
  6908    K DRET I  X=$P($G(^P S(51.2,+$G (PSORXED(" ROUTE",ENT )),0)),"^" ) S RTE=$P (^PS(51.2, PSORXED("R OUTE",ENT) ,0),"^"),E RTE=$P(^PS (51.2,PSOR XED("ROUTE ",ENT),0), "^",2) W X _" "_$G(ER TE) G SCH
  6909   "RTN","PSO ORED5",51, 0)
  6910    S DIC=51. 2,DIC(0)=" QEZM",DIC( "S")="I $P (^(0),""^" ",4)" D ^D IC Q:X[U   G:Y=-1 RTE  W "  "_$P (Y(0),"^", 2)
  6911   "RTN","PSO ORED5",52, 0)
  6912    S:X'="" P SORXED("RO UTE",ENT)= +Y,RTE=Y(0 ,0),ERTE=$ P(Y(0),"^" ,2)
  6913   "RTN","PSO ORED5",53, 0)
  6914    ;
  6915   "RTN","PSO ORED5",54, 0)
  6916   SCH D SCH^ PSOBKDED I  X[U,$L(X) >1 S FIELD ="SCH" G J UMP
  6917   "RTN","PSO ORED5",55, 0)
  6918    G EX:$D(D TOUT),EXE: $D(DUOUT)  S SCH=Y D  SCH^PSOSIG  I $G(SCH) ']"" G SCH
  6919   "RTN","PSO ORED5",56, 0)
  6920    S PSORXED ("SCHEDULE ",ENT)=SCH  W " ("_SC HEX_")" K  SCH,SCHEX, X,Y,PSOSCH
  6921   "RTN","PSO ORED5",57, 0)
  6922    S:$G(PSOR XED("ENT") )<ENT PSOR XED("ENT") =ENT
  6923   "RTN","PSO ORED5",58, 0)
  6924    ;
  6925   "RTN","PSO ORED5",59, 0)
  6926   DUR D KV K  EXP S DIR (0)="52.01 13,4",DIR( "A")="LIMI TED DURATI ON (IN DAY S, HOURS O R MINUTES) "
  6927   "RTN","PSO ORED5",60, 0)
  6928    I '$G(CLO ZFLG),$G(P SORXED("SA ND")) D
  6929   "RTN","PSO ORED5",61, 0)
  6930    .N DFN S  DFN=PSODFN  D CLOZPAT ^PSOCLUTL
  6931   "RTN","PSO ORED5",62, 0)
  6932    K PSORXED ("DURATION ",ENT)
  6933   "RTN","PSO ORED5",63, 0)
  6934    I $D(DUR)  S DIR("B" )=DUR
  6935   "RTN","PSO ORED5",64, 0)
  6936    D ^DIR I  X[U,$L(X)> 1 S FIELD= "DUR" G JU MP
  6937   "RTN","PSO ORED5",65, 0)
  6938    G EX:$D(D TOUT),EXE: $D(DUOUT)
  6939   "RTN","PSO ORED5",66, 0)
  6940    ;; START  NCC REMEDI ATION >> 4 57*RJS - A DJUST FOR  4 DAY SUPP LY
  6941   "RTN","PSO ORED5",67, 0)
  6942    ;/RBN Beg in modific ation for  #326 ;/MZR  Added a m essage and  correct c hecking fo r Hours/Mi nutes
  6943   "RTN","PSO ORED5",68, 0)
  6944    I $G(DIR( "B"))!$G(P SORXED("DU RATION",EN T)) N Z,MA X D  I Z>M AX G DUR
  6945   "RTN","PSO ORED5",69, 0)
  6946    .I X=+X S  Z=X
  6947   "RTN","PSO ORED5",70, 0)
  6948    .E  S Z=$ E(X,$L(X)) ,Z=$S(Z="L ":30*X,Z=" W":7*X,Z=" H":X/24,Z= "M":X/1440 ,1:+X)
  6949   "RTN","PSO ORED5",71, 0)
  6950    .S MAX=$S ($G(DIR("B ")):+DIR(" B"),1:$G(P SORXED("DU RATION",EN T)))
  6951   "RTN","PSO ORED5",72, 0)
  6952    .I Z>MAX  D
  6953   "RTN","PSO ORED5",73, 0)
  6954    ..W " ("_ $S(X["L":" MONTHS",X[ "W":"WEEKS ",X["H":"H OURS",X["M ":"MINUTES ",1:"DAYS" )_")"
  6955   "RTN","PSO ORED5",74, 0)
  6956    ..W !,"NO T MORE THA N ",MAX,"  DAYS"
  6957   "RTN","PSO ORED5",75, 0)
  6958    ;; END NC C REMEDIAT ION << 457 *RJS
  6959   "RTN","PSO ORED5",76, 0)
  6960    D DUR1^PS OOREDX
  6961   "RTN","PSO ORED5",77, 0)
  6962    ;
  6963   "RTN","PSO ORED5",78, 0)
  6964   CON D CON^ PSOOREDX I  X[U,$L(X) >1 S FIELD ="CON" G J UMP
  6965   "RTN","PSO ORED5",79, 0)
  6966    G EX:$D(D TOUT),EXE: $D(DUOUT)
  6967   "RTN","PSO ORED5",80, 0)
  6968    I X="@",$ G(PSORXED( "CONJUNCTI ON",ENT))= "" W !,?10 ,"Invalid  Entry - no thing to d elete!!" G  CON
  6969   "RTN","PSO ORED5",81, 0)
  6970    S:X'=""&( X'="@") PS ORXED("CON JUNCTION", ENT)=Y
  6971   "RTN","PSO ORED5",82, 0)
  6972    I X="@" D  CON1^PSOO REDX G:$D( DIRUT) EX  G:'Y CON S :'$G(COPY)  PSOSIGFL= 1 D UPD^PS OOREDX G C ON
  6973   "RTN","PSO ORED5",83, 0)
  6974    ;
  6975   "RTN","PSO ORED5",84, 0)
  6976    I '$$DURO K^PSOORED3 (.PSORXED, ENT) D  G  DUR
  6977   "RTN","PSO ORED5",85, 0)
  6978    . W !!,"D uration is  required  for the do sage enter ed prior t o the THEN  conjuncti on.",$C(7) ,!
  6979   "RTN","PSO ORED5",86, 0)
  6980    N PSODLBD 4 S PSOSAV X=X,PSODLB D4=1
  6981   "RTN","PSO ORED5",87, 0)
  6982    I $G(PSOR XED("CONJU NCTION",EN T))]"" S P SOCKCON=1  D DCHK1^PS ODOSUT G:$ G(PSORXED( "DFLG"))!( $G(PSORX(" DFLG"))) E X S ENT=EN T+1 K DIR  G ASK
  6983   "RTN","PSO ORED5",88, 0)
  6984    E  K PSOC KCON I $$D CHK^PSODOS UT S PSORX ED("DFLG") =1,PSORX(" DFLG")=1 G  EX
  6985   "RTN","PSO ORED5",89, 0)
  6986    I PSOSAVX ="",$G(PSO RXED)!($D( PSOEDDOS))  K PSOCKCO N
  6987   "RTN","PSO ORED5",90, 0)
  6988    K PSOSAVX
  6989   "RTN","PSO ORED5",91, 0)
  6990    ;
  6991   "RTN","PSO ORED5",92, 0)
  6992   EXS ;Entry  point for  EXE to re build SIG   PSO*7.0*4 50
  6993   "RTN","PSO ORED5",93, 0)
  6994    S X=$G(PS ORXED("INS ")) D SIG^ PSOHELP S: $G(INS1)]" " PSORXED( "SIG")=$E( INS1,2,999 9999)
  6995   "RTN","PSO ORED5",94, 0)
  6996    D EN^PSOF SIG(.PSORX ED) I $O(S IG(0)) S P SORXED("EN T")=ENT,SI GOK=1
  6997   "RTN","PSO ORED5",95, 0)
  6998    Q:$G(PSOR EEDT)!($G( PSOORRNW))
  6999   "RTN","PSO ORED5",96, 0)
  7000    K QTYHLD  S:$G(PSORX ED("QTY"))  QTYHLD=PS ORXED("QTY ") D QTY^P SOSIG(.PSO RXED) I $G (PSORXED(" QTY")) S Q TY=1
  7001   "RTN","PSO ORED5",97, 0)
  7002    I $G(QTYH LD),'$G(PS ORXED("QTY ")) S PSOR XED("QTY") =QTYHLD
  7003   "RTN","PSO ORED5",98, 0)
  7004    K QTYHLD  Q:$G(PSOFR OM)="NEW"! ($G(COPY)) !($G(PSOFR OM))!($G(P SOREEDT))
  7005   "RTN","PSO ORED5",99, 0)
  7006    Q:$G(PSOS IGFL)  D
  7007   "RTN","PSO ORED5",100 ,0)
  7008    .S D=0 F   S D=$O(SI G(D)) Q:'D   S ^PSRX( PSORXED("I RXN"),"SIG 1",D,0)=SI G(D),$P(^P SRX(PSORXE D("IRXN"), "SIG1",0), "^",3)=+$P ($G(^PSRX( PSORXED("I RXN"),"SIG 1",0)),"^" ,3)+1,$P(^ (0),"^",4) =+$P($G(^( 0)),"^",4) +1 Q:'$O(S IG(D))
  7009   "RTN","PSO ORED5",101 ,0)
  7010    .S (A,I)= 0 F  S I=$ O(^PSRX(PS ORXED("IRX N"),"A",I) ) Q:'I  S  A=A+1
  7011   "RTN","PSO ORED5",102 ,0)
  7012    .S:'$D(^P SRX(PSORXE D("IRXN"), "A",0)) ^P SRX(PSORXE D("IRXN"), "A",0)="^5 2.3DA^"
  7013   "RTN","PSO ORED5",103 ,0)
  7014    .S $P(^PS RX(PSORXED ("IRXN")," A",0),"^", 3)=$P($G(^ PSRX(PSORX ED("IRXN") ,"A",0))," ^",3)+1,$P (^(0),"^", 4)=$P($G(^ (0)),"^",4 )+1
  7015   "RTN","PSO ORED5",104 ,0)
  7016    .D NOW^%D TC S A=A+1 ,^PSRX(PSO RXED("IRXN "),"A",A,0 )=%_"^E^"_ DUZ_"^0^Ne w Dosing I nstruction s Added",^ PSRX(PSORX ED("IRXN") ,"A",A,1)= "ORIGINAL  SIG^" D
  7017   "RTN","PSO ORED5",105 ,0)
  7018    ..I '$P(^ PSRX(PSORX ED("IRXN") ,"SIG"),"^ ",2) S $P( ^PSRX(PSOR XED("IRXN" ),"A",A,1) ,"^",2)=$P (^PSRX(PSO RXED("IRXN "),"SIG"), "^") Q
  7019   "RTN","PSO ORED5",106 ,0)
  7020    ..F I=0:0  S I=$O(^P SRX(PSORXE D("IRXN"), "SIG1",I))  Q:'I  S ^ PSRX(PSORX ED("IRXN") ,"A",A,2,I ,0)=^PSRX( PSORXED("I RXN"),"SIG 1",I,0),^P SRX(PSORXE D("IRXN"), "A",A,2,0) ="^52.34A^ "_I_"^"_I
  7021   "RTN","PSO ORED5",107 ,0)
  7022    .S ^PSRX( PSORXED("I RXN"),"SIG ")="^1" K  SIG,A,I
  7023   "RTN","PSO ORED5",108 ,0)
  7024    S ^PSRX(P SORXED("IR XN"),6,0)= "^52.0113^ "_ENT_"^"_ ENT
  7025   "RTN","PSO ORED5",109 ,0)
  7026    F I=1:1:E NT S ^PSRX (PSORXED(" IRXN"),6,I ,0)=PSORXE D("DOSE",I )_"^"_$G(P SORXED("DO SE ORDERED ",I))_"^"_ $G(PSORXED ("UNITS",I ))_"^"_$G( PSORXED("N OUN",I))_" ^" D
  7027   "RTN","PSO ORED5",110 ,0)
  7028    .S ^PSRX( PSORXED("I RXN"),6,I, 0)=^PSRX(P SORXED("IR XN"),6,I,0 )_$G(PSORX ED("DURATI ON",I))_"^ "_$G(PSORX ED("CONJUN CTION",I)) _"^"_$G(PS ORXED("ROU TE",I))_"^ "_$G(PSORX ED("SCHEDU LE",I))_"^ "_$G(PSORX ED("VERB", I))
  7029   "RTN","PSO ORED5",111 ,0)
  7030    .I $G(PSO RXED("DOSE ",I))]"" S  ^PSRX(PSO RXED("IRXN "),6,I,1)= PSORXED("D OSE",I)
  7031   "RTN","PSO ORED5",112 ,0)
  7032    S ^PSRX(P SORXED("IR XN"),"POE" )=1 G EX
  7033   "RTN","PSO ORED5",113 ,0)
  7034    Q
  7035   "RTN","PSO ORED5",114 ,0)
  7036   EX I $D(DU OUT)!($D(D TOUT)) S P SONEW("DFL G")=1
  7037   "RTN","PSO ORED5",115 ,0)
  7038    ;I $D(DUO UT)!($D(DT OUT)) S:'$ G(PSORX("E DIT")) PSO NEW("DFLG" )=1
  7039   "RTN","PSO ORED5",116 ,0)
  7040    G:$G(PSOS IGFL)!($G( PSORX("EDI T")))!($G( PSORXED))! ($G(PSOREE DT)) EX1
  7041   "RTN","PSO ORED5",117 ,0)
  7042    K PSORXED ("DOSE"),P SORXED("NO UN"),PSORX ED("VERB") ,PSORXED(" DOSE ORDER ED"),PSORX ED("ROUTE" ),SIG,PSOR XED("SCHED ULE"),PSOR XED("DURAT ION"),PSOR XED("CONJU NCTION"),P SORXED("OD OSE")
  7043   "RTN","PSO ORED5",118 ,0)
  7044   EX1 K UNIT N,STRE,DOS E,DUPD,SCH ,VERB,NOUN ,DOSEOR,RT E,DUR,X,Y, ENTS,PSOSC H,ENT,PSOR TE,DURA,ER TE,ROU
  7045   "RTN","PSO ORED5",119 ,0)
  7046   KV K DIR,D IRUT,DTOUT ,DUOUT
  7047   "RTN","PSO ORED5",120 ,0)
  7048    Q
  7049   "RTN","PSO ORED5",121 ,0)
  7050    ;This lin e tag was  added to c heck if EX it is bein g performe d while ED ITing.  If  it is,
  7051   "RTN","PSO ORED5",122 ,0)
  7052    ;process  SIG and do  not delet e order.   Previous c alls to EX  when due  to $D(DUOU T) were
  7053   "RTN","PSO ORED5",123 ,0)
  7054    ;changed  to go to t his line t ag instead .
  7055   "RTN","PSO ORED5",124 ,0)
  7056   EXE I $G(P SORX("EDIT "))]"" K D UOUT G EXS   ;*PSO*7. 0*450
  7057   "RTN","PSO ORED5",125 ,0)
  7058    G EX
  7059   "RTN","PSO ORED5",126 ,0)
  7060    ;
  7061   "RTN","PSO ORED5",127 ,0)
  7062   UPD ;updat es dosing  array
  7063   "RTN","PSO ORED5",128 ,0)
  7064    D UPD^PSO ORED6
  7065   "RTN","PSO ORED5",129 ,0)
  7066    Q
  7067   "RTN","PSO ORED5",130 ,0)
  7068   JUMP ;
  7069   "RTN","PSO ORED5",131 ,0)
  7070    I $G(PSOR XED("SCHED ULE",1))'] "" W $C(7) ,!!,"All D osing Inst ructions m ust be ent ered befor e Jumping  to other F ields!",!!  G @FIELD
  7071   "RTN","PSO ORED5",132 ,0)
  7072    I $L($E(X ,2,99))<3  W !,"Field  Name Must  Be At Lea st 3 Chara cters in L ength",! G  @FIELD
  7073   "RTN","PSO ORED5",133 ,0)
  7074    D FNM^PSO OREDX
  7075   "RTN","PSO ORED5",134 ,0)
  7076    I FLDNM'] "" K X,NM, FLDNM W !, "INVALID F IELD NAME.   PLEASE T RY AGAIN!" ,! G @FIEL D
  7077   "RTN","PSO ORED5",135 ,0)
  7078    F AR=1:1: PSORXED("E NT") W !,A R_". "_$P( FLDNM,"^", 2)_": "_$S (NM="ROU"& ($G(PSORXE D($P(FLDNM ,"^"),AR)) ):$P(^PS(5 1.2,PSORXE D($P(FLDNM ,"^"),AR), 0),"^"),1: $G(PSORXED ($P(FLDNM, "^"),AR)))  S AR1=AR
  7079   "RTN","PSO ORED5",136 ,0)
  7080    D KV
  7081   "RTN","PSO ORED5",137 ,0)
  7082    I $G(PSOF ROM)'="NEW ",'$G(COPY ) S DIR("A ",1)="* In dicates wh ich fields  will crea te a New O rder"
  7083   "RTN","PSO ORED5",138 ,0)
  7084    S DIR("A" )="Select  Field by n umber",DIR (0)="NO^1: "_AR1 D ^D IR G:$D(DI RUT) @FIEL D
  7085   "RTN","PSO ORED5",139 ,0)
  7086    D JFN^PSO OREDX G:FL DNM="" @FI ELD G @FLD NM
  7087   "RTN","PSO ORED5",140 ,0)
  7088    G EX
  7089   "RTN","PSO ORED5",141 ,0)
  7090    Q
  7091   "RTN","PSO ORED5",142 ,0)
  7092   LAN ;
  7093   "RTN","PSO ORED5",143 ,0)
  7094    Q:'$G(PSO DRUG("IEN" ))
  7095   "RTN","PSO ORED5",144 ,0)
  7096    I $G(OR0) ,'$G(PSONE W("DOSE OR DERED",II) ),$P($G(^P S(55,PSODF N,"LAN")), "^") D  K  QI,QII Q
  7097   "RTN","PSO ORED5",145 ,0)
  7098    .Q:$G(OTH DOS(II))
  7099   "RTN","PSO ORED5",146 ,0)
  7100    .F QI=0:0  S QI=$O(^ PSDRUG(PSO DRUG("IEN" ),"DOS2",Q I)) Q:'QI   D  Q:$G(Q II)
  7101   "RTN","PSO ORED5",147 ,0)
  7102    ..Q:$G(PS ONEW("DOSE ",II))']""
  7103   "RTN","PSO ORED5",148 ,0)
  7104    ..I PSONE W("DOSE",I I)=$P(^PSD RUG(PSODRU G("IEN")," DOS2",QI,0 ),"^") S P SONEW("ODO SE",II)=$P (^PSDRUG(P SODRUG("IE N"),"DOS2" ,QI,0),"^" ,4),QII=1
  7105   "RTN","PSO ORED5",149 ,0)
  7106    I $G(Y),$ P($G(DOSE( Y)),"^",13 )]"" S PSO RXED("ODOS E",ENT)=$P (DOSE(Y)," ^",13) Q
  7107   "RTN","PSO ORED5",150 ,0)
  7108    K QII F I =0:0 S I=$ O(^PSDRUG( PSODRUG("I EN"),"DOS2 ",I)) Q:'I   I DOSE=$ P(^PSDRUG( PSODRUG("I EN"),"DOS2 ",I,0),"^" ) D  Q:$G( QII)
  7109   "RTN","PSO ORED5",151 ,0)
  7110    .S PSORXE D("ODOSE", ENT)=$P(^P SDRUG(PSOD RUG("IEN") ,"DOS2",I, 0),"^",4), QII=1
  7111   "RTN","PSO ORED5",152 ,0)
  7112    K QII,I
  7113   "RTN","PSO ORED5",153 ,0)
  7114    Q
  7115   "RTN","PSO ORED5",154 ,0)
  7116    ;
  7117   "RTN","PSO ORNEW")
  7118   0^14^B9855 2577
  7119   "RTN","PSO ORNEW",1,0 )
  7120   PSOORNEW ; BIR/SAB -  display or ders from  oerr ;6/19 /06 3:53pm
  7121   "RTN","PSO ORNEW",2,0 )
  7122    ;;7.0;OUT PATIENT PH ARMACY;**1 1,23,27,32 ,55,46,71, 90,94,106, 131,133,14 3,237,222, 258,206,22 5,251,386, 390,391,37 2,416,431, 313,408,43 6,411,444, 486,446,45 7**;DEC 19 97;Build 6 5
  7123   "RTN","PSO ORNEW",3,0 )
  7124    ;External  reference  to ^PS(50 .7 support ed by DBIA  2223
  7125   "RTN","PSO ORNEW",4,0 )
  7126    ;External  reference  to ^PSDRU G supporte d by DBIA  221
  7127   "RTN","PSO ORNEW",5,0 )
  7128    ;External  reference  to ^PS(50 .606 suppo rted by DB IA 2174
  7129   "RTN","PSO ORNEW",6,0 )
  7130    ;External  reference  to ^PS(55  supported  by DBIA 2 228
  7131   "RTN","PSO ORNEW",7,0 )
  7132    ;External  reference  to EN1^OR CFLAG supp orted by D BIA 3620
  7133   "RTN","PSO ORNEW",8,0 )
  7134    ;
  7135   "RTN","PSO ORNEW",9,0 )
  7136    ;PSO*237  quit Finis h if Today  > Issue d ate + 365
  7137   "RTN","PSO ORNEW",10, 0)
  7138    ;
  7139   "RTN","PSO ORNEW",11, 0)
  7140   DSPL I $G( PSODSPL) S  VALMBCK=" Q" K PSODS PL,PSOANSQ D Q
  7141   "RTN","PSO ORNEW",12, 0)
  7142    Q:'$D(PSO LMC)  K ^T MP("PSOPO" ,$J) S PSO LMC=PSOLMC +1
  7143   "RTN","PSO ORNEW",13, 0)
  7144    I $D(CLOZ PAT) S PSO NEW("DAYS  SUPPLY")=$ S($G(PSONE W("DAYS SU PPLY")):PS ONEW("DAYS  SUPPLY"), 1:7) G OI
  7145   "RTN","PSO ORNEW",14, 0)
  7146    S PSONEW( "DAYS SUPP LY")=$S($G (PSONEW("D AYS SUPPLY ")):PSONEW ("DAYS SUP PLY"),+$G( ^PS(55,PSO DFN,"PS")) &($P(^PS(5 3,+$G(^PS( 55,PSODFN, "PS")),0), "^",3))&(' $G(PSONEW( "DAYS SUPP LY"))):$P( ^PS(53,+$G (^PS(55,PS ODFN,"PS") ),0),"^",3 ),1:30)
  7147   "RTN","PSO ORNEW",15, 0)
  7148   OI I '$G(P SODRUG("OI ")) D
  7149   "RTN","PSO ORNEW",16, 0)
  7150    .N OI,OID  S (OI,PSO DRUG("OI") )=$P(OR0," ^",8),PSOD RUG("OIN") =$P(^PS(50 .7,$P(OR0, "^",8),0), "^"),OID=$ P(OR0,"^", 9)
  7151   "RTN","PSO ORNEW",17, 0)
  7152    .I $P($G( OR0),"^",9 ) S POERR= 1,DREN=$P( OR0,"^",9)  D DRG^PSO ORDRG K PO ERR
  7153   "RTN","PSO ORNEW",18, 0)
  7154    I '$D(CLO ZPAT) I $G (PSODRUG(" DEA"))["A" ,$G(PSODRU G("DEA"))' ["B"!($G(P SODRUG("DE A"))["F")  S PSONEW(" # OF REFIL LS")=0
  7155   "RTN","PSO ORNEW",19, 0)
  7156    I $D(CLOZ PAT) S PSO NEW("# OF  REFILLS")= $S($D(PSON EW("# OF R EFILLS")): PSONEW("#  OF REFILLS "),$G(CLOZ PAT)=2&($P (OR0,"^",1 1)>2):3,$G (CLOZPAT)& ($P(OR0,"^ ",11)>1):1 ,1:0)
  7157   "RTN","PSO ORNEW",20, 0)
  7158    S IEN=0 D  OBX^PSOOR FI1,DIN^PS ONFI(PSODR UG("OI"),$ S($G(PSODR UG("IEN")) :PSODRUG(" IEN"),1:"" ))
  7159   "RTN","PSO ORNEW",21, 0)
  7160    D LMDISP^ PSOORFI5(+ $G(ORD)) ;  Display F lag/Unflag  Informati on
  7161   "RTN","PSO ORNEW",22, 0)
  7162    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="*(1 ) Orderabl e Item: "_ $P(^PS(50. 7,PSODRUG( "OI"),0)," ^")_" "_$P (^PS(50.60 6,$P(^(0), "^",2),0), "^")_NFIO
  7163   "RTN","PSO ORNEW",23, 0)
  7164    S:NFIO["< DIN>" NFIO =IEN_","_( $L(^TMP("P SOPO",$J,I EN,0))-4)
  7165   "RTN","PSO ORNEW",24, 0)
  7166    K LST I $ G(PSODRUG( "NAME"))]" " D  G PT
  7167   "RTN","PSO ORNEW",25, 0)
  7168    .S IEN=IE N+1,^TMP(" PSOPO",$J, IEN,0)=" ( 2)"_$S($D( ^PSDRUG("A Q",PSODRUG ("IEN"))): "      CMO P ",1:"            ") _"Drug: "_ PSODRUG("N AME")_NFID
  7169   "RTN","PSO ORNEW",26, 0)
  7170    .S:NFID[" <DIN>" NFI D=IEN_","_ ($L(^TMP(" PSOPO",$J, IEN,0))-4)
  7171   "RTN","PSO ORNEW",27, 0)
  7172    .I $P($G( ^PSDRUG(PS ODRUG("IEN "),0)),"^" ,10)]"" S  IEN=IEN+1, ^TMP("PSOP O",$J,IEN, 0)="        Drug Mess age:" D DR GMSG
  7173   "RTN","PSO ORNEW",28, 0)
  7174    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)=" (2 )            Drug: No  Dispense  Drug Selec ted"
  7175   "RTN","PSO ORNEW",29, 0)
  7176   PT D DOSE2 ^PSOORFI4
  7177   "RTN","PSO ORNEW",30, 0)
  7178    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)=" (4 )   Pat In struct:" D :$O(PSONEW ("SIG",0))  INST^PSOO RFI4
  7179   "RTN","PSO ORNEW",31, 0)
  7180    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="  P rovider Co mments:" S  TY=3 D IN ST^PSOORFI 1
  7181   "RTN","PSO ORNEW",32, 0)
  7182    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="        Instru ctions:" S  TY=2 D IN ST^PSOORFI 1
  7183   "RTN","PSO ORNEW",33, 0)
  7184    K PSOELSE  S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="                  SIG:"
  7185   "RTN","PSO ORNEW",34, 0)
  7186    F I=0:0 S  I=$O(SIG( I)) Q:'I   S SIG=SIG( I) D
  7187   "RTN","PSO ORNEW",35, 0)
  7188    .F SG=1:1 :$L(SIG) S :$L(^TMP(" PSOPO",$J, IEN,0)_" " _$P(SIG,"  ",SG))>80  IEN=IEN+1, $P(^TMP("P SOPO",$J,I EN,0)," ", 20)=" " S: $P(SIG," " ,SG)'="" ^ TMP("PSOPO ",$J,IEN,0 )=$G(^TMP( "PSOPO",$J ,IEN,0))_"  "_$P(SIG, " ",SG)
  7189   "RTN","PSO ORNEW",36, 0)
  7190    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)=" (5 ) Patient  Status: "_ $P($G(^PS( 53,+PSONEW ("PATIENT  STATUS"),0 )),"^")
  7191   "RTN","PSO ORNEW",37, 0)
  7192    K PSOELSE  I $G(PSON EW("ISSUE  DATE"))']" " S PSOELS E=1 S IEN= IEN+1,(PSO ID,Y)=$E($ P(OR0,"^", 6),1,7) X  ^DD("DD")  S PSONEW(" ISSUE DATE ")=Y,^TMP( "PSOPO",$J ,IEN,0)="  (4)     Is sue Date:  "_Y
  7193   "RTN","PSO ORNEW",38, 0)
  7194    I '$G(PSO ELSE) S IE N=IEN+1,^T MP("PSOPO" ,$J,IEN,0) =" (6)      Issue Dat e: "_PSONE W("ISSUE D ATE")
  7195   "RTN","PSO ORNEW",39, 0)
  7196    K PSOELSE  I $G(PSOR X("FILL DA TE"))']""  S PSOELSE= 1 D
  7197   "RTN","PSO ORNEW",40, 0)
  7198    .S (Y,PSO RX("FILL D ATE"))=$S( $E($P(OR0, "^",6),1,7 )<DT:DT,1: $E($P(OR0, "^",6),1,7 )) X ^DD(" DD") S PSO NEW("FILL  DATE")=Y,^ TMP("PSOPO ",$J,IEN,0 )=^TMP("PS OPO",$J,IE N,0)_"                    (5) Fi ll Date: " _Y
  7199   "RTN","PSO ORNEW",41, 0)
  7200    I '$G(PSO ELSE) S Y= PSORX("FIL L DATE") X  ^DD("DD")  S PSORX(" FILL DATE" )=Y,^TMP(" PSOPO",$J, IEN,0)=^TM P("PSOPO", $J,IEN,0)_ "       (7 ) Fill Dat e: "_PSORX ("FILL DAT E")
  7201   "RTN","PSO ORNEW",42, 0)
  7202    I $P(OR0, "^",18) S  IEN=IEN+1, Y=$P(OR0," ^",18) X ^ DD("DD") S  $P(^TMP(" PSOPO",$J, IEN,0)," " ,39)="Effe ctive Date : "_Y
  7203   "RTN","PSO ORNEW",43, 0)
  7204    I $D(CLOZ PAT) D ELI G^PSOORFI2  S:'$D(PSO NEW("QTY") ) PSONEW(" QTY")=0
  7205   "RTN","PSO ORNEW",44, 0)
  7206    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)=" (8 )    Days  Supply: "_ PSONEW("DA YS SUPPLY" )
  7207   "RTN","PSO ORNEW",45, 0)
  7208    S ^TMP("P SOPO",$J,I EN,0)=^TMP ("PSOPO",$ J,IEN,0)_"                 (9)    QTY"_$S($ P($G(^PSDR UG(+$G(PSO DRUG("IEN" )),660))," ^",8)]"":"  ("_$P($G( ^PSDRUG(+P SODRUG("IE N"),660)), "^",8)_")" ,1:" (  )" )
  7209   "RTN","PSO ORNEW",46, 0)
  7210    S ^TMP("P SOPO",$J,I EN,0)=^TMP ("PSOPO",$ J,IEN,0)_" : "_$S($G( PSONEW("QT Y"))]"":PS ONEW("QTY" ),1:$P(OR0 ,"^",10))
  7211   "RTN","PSO ORNEW",47, 0)
  7212    I $P($G(^ PSDRUG(+$G (PSODRUG(" IEN")),5)) ,"^")]"" D
  7213   "RTN","PSO ORNEW",48, 0)
  7214    .S $P(RN, " ",79)="  ",IEN=IEN+ 1
  7215   "RTN","PSO ORNEW",49, 0)
  7216    .S ^TMP(" PSOPO",$J, IEN,0)=$E( RN,$L("QTY  DSP MSG:  "_$P(^PSDR UG(PSODRUG ("IEN"),5) ,"^"))+1,7 9)_"QTY DS P MSG: "_$ P(^PSDRUG( PSODRUG("I EN"),5),"^ ") K RN
  7217   "RTN","PSO ORNEW",50, 0)
  7218    S IEN=IEN +1
  7219   "RTN","PSO ORNEW",51, 0)
  7220    I $P(OR0, "^",24) S  ^TMP("PSOP O",$J,IEN, 0)="   Pro vider orde red: days  supply "_+ $P(OR0,"^" ,22)_", qu antity "_+ $P(OR0,"^" ,10)_" & r efills "_+ $P(OR0,"^" ,11)
  7221   "RTN","PSO ORNEW",52, 0)
  7222    E  S ^TMP ("PSOPO",$ J,IEN,0)="        Pro vider orde red "_+$P( OR0,"^",11 )_" refill s"
  7223   "RTN","PSO ORNEW",53, 0)
  7224    D:$D(CLOZ PAT) PQTY^ PSOORFI4
  7225   "RTN","PSO ORNEW",54, 0)
  7226    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="(10 )   # of R efills: "_ $S($G(PSON EW("# OF R EFILLS"))] "":PSONEW( "# OF REFI LLS"),1:$P (OR0,"^",1 1))_"                 (11)   Rou ting: "_$S ($G(PSONEW ("MAIL/WIN DOW"))="M" :"MAIL",1: "WINDOW")
  7227   "RTN","PSO ORNEW",55, 0)
  7228    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="(12 )          Clinic: "_ PSORX("CLI NIC")
  7229   "RTN","PSO ORNEW",56, 0)
  7230    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="(13 )       Pr ovider: "_ PSONEW("PR OVIDER NAM E")
  7231   "RTN","PSO ORNEW",57, 0)
  7232    D:$P(OR0, "^",24)!(( +$G(PSODRU G("DEA"))> 1)&(+$G(PS ODRUG("DEA "))<6)) PR V^PSOORFI5 ($G(PSONEW ("PROVIDER ")),$G(PSO DRUG("IEN" )),$P(OR0, "^"))
  7233   "RTN","PSO ORNEW",58, 0)
  7234    I $P($G(^ VA(200,$S( $G(PSONEW( "PROVIDER" )):PSONEW( "PROVIDER" ),1:$P(OR0 ,"^",5))," PS")),"^", 7)&($P($G( ^("PS"))," ^",8)) D
  7235   "RTN","PSO ORNEW",59, 0)
  7236    .S IEN=IE N+1,PSONEW ("COSIGNIN G PROVIDER ")=$S($G(P SONEW("COS IGNING PRO VIDER")):P SONEW("COS IGNING PRO VIDER"),1: $P(^("PS") ,"^",8))
  7237   "RTN","PSO ORNEW",60, 0)
  7238    .S ^TMP(" PSOPO",$J, IEN,0)="        Cos-P rovider: " _$P(^VA(20 0,PSONEW(" COSIGNING  PROVIDER") ,0),"^")
  7239   "RTN","PSO ORNEW",61, 0)
  7240    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="(14 )          Copies: "_ $S($G(PSON EW("COPIES ")):PSONEW ("COPIES") ,1:1)
  7241   "RTN","PSO ORNEW",62, 0)
  7242    S PSONEW( "REMARKS") =$S($G(PSO NEW("REMAR KS"))]"":P SONEW("REM ARKS"),$P( OR0,"^",17 )="C":"Adm inistered  in Clinic. ",1:"")
  7243   "RTN","PSO ORNEW",63, 0)
  7244    K PSONEW( "ADMINCLIN IC") S:$P( OR0,"^",17 )="C" PSON EW("ADMINC LINIC")=1
  7245   "RTN","PSO ORNEW",64, 0)
  7246    S IEN=IEN +1,^TMP("P SOPO",$J,I EN,0)="(15 )        R emarks:"
  7247   "RTN","PSO ORNEW",65, 0)
  7248    I $G(PSON EW("REMARK S"))]"" D
  7249   "RTN","PSO ORNEW",66, 0)
  7250    .F SG=1:1 :$L(PSONEW ("REMARKS" )) S:$L(^T MP("PSOPO" ,$J,IEN,0) _" "_$P(PS ONEW("REMA RKS")," ", SG))>80 IE N=IEN+1,$P (^TMP("PSO PO",$J,IEN ,0)," ",20 )=" " D
  7251   "RTN","PSO ORNEW",67, 0)
  7252    ..S:$P(PS ONEW("REMA RKS")," ", SG)'="" ^T MP("PSOPO" ,$J,IEN,0) =$G(^TMP(" PSOPO",$J, IEN,0))_"  "_$P(PSONE W("REMARKS ")," ",SG)
  7253   "RTN","PSO ORNEW",68, 0)
  7254    I $G(PSOS IGFL)!(PSO DRUG("OI") '=$P(OR0," ^",8)) S P SONEW("CLE RK CODE")= DUZ,PSORX( "CLERK COD E")=$P(^VA (200,DUZ,0 ),"^"),VAL MSG="This  change wil l create a  new presc ription!"
  7255   "RTN","PSO ORNEW",69, 0)
  7256    S $P(RN,"  ",35)=" " ,IEN=IEN+1 ,^TMP("PSO PO",$J,IEN ,0)="   En try By: "_ $P(^VA(200 ,PSONEW("C LERK CODE" ),0),"^")_ $E(RN,$L($ P(^VA(200, PSONEW("CL ERK CODE") ,0),"^"))+ 1,35)
  7257   "RTN","PSO ORNEW",70, 0)
  7258    S Y=$P(OR 0,"^",12)  X ^DD("DD" ) S ^TMP(" PSOPO",$J, IEN,0)=^TM P("PSOPO", $J,IEN,0)_ "Entry Dat e: "_$E($P (OR0,"^",1 2),4,5)_"/ "_$E($P(OR 0,"^",12), 6,7)_"/"_$ E($P(OR0," ^",12),2,3 )_" "_$P(Y ,"@",2) K  RN
  7259   "RTN","PSO ORNEW",71, 0)
  7260    I PSOLMC< 2 D ^PSOLM PO1 S VALM BCK="Q",PS OLMC=0
  7261   "RTN","PSO ORNEW",72, 0)
  7262    S:PSOLMC> 1 VALMBCK= "R"
  7263   "RTN","PSO ORNEW",73, 0)
  7264    Q
  7265   "RTN","PSO ORNEW",74, 0)
  7266   ORCHK D PR OVCOM^PSOO RFI4,ORCHK ^PSOORFI4
  7267   "RTN","PSO ORNEW",75, 0)
  7268    Q
  7269   "RTN","PSO ORNEW",76, 0)
  7270   EDT D KV S  DIR("A",1 )="* Indic ates which  fields wi ll create  an new Ord er",DIR("A ")="Select  Field to  Edit by nu mber",DIR( 0)="LO^1:1 5" D ^DIR  Q:$D(DTOUT )!($D(DUOU T))
  7271   "RTN","PSO ORNEW",77, 0)
  7272   EDTSEL N L ST,FLD,OUT  D KV S OU T=0
  7273   "RTN","PSO ORNEW",78, 0)
  7274    S PSONEW( "FLD")=0
  7275   "RTN","PSO ORNEW",79, 0)
  7276    I +Y S LS T=Y D FULL ^VALM1 N P SODOSE M P SODOSE=PSO NEW D  G D SPL
  7277   "RTN","PSO ORNEW",80, 0)
  7278    .F FLD=1: 1:$L(LST," ,") Q:$P(L ST,",",FLD )']""!(OUT )  D @(+$P (LST,",",F LD)) D:$P( LST,",",FL D)=8 REF D  KV
  7279   "RTN","PSO ORNEW",81, 0)
  7280    E  S VALM BCK="" Q
  7281   "RTN","PSO ORNEW",82, 0)
  7282    Q
  7283   "RTN","PSO ORNEW",83, 0)
  7284   ACP ;
  7285   "RTN","PSO ORNEW",84, 0)
  7286    N PSOORNE W,DIR,Y S  Y=0,PSOORN EW=1
  7287   "RTN","PSO ORNEW",85, 0)
  7288    I $G(ORD) ,+$P($G(^P S(52.41,+O RD,0)),"^" ,23)=1 D   Q:$D(DIRUT )!'Y  D EN 1^ORCFLAG( +$P($G(^PS (52.41,ORD ,0)),"^"))  H 1
  7289   "RTN","PSO ORNEW",86, 0)
  7290    . D FULL^ VALM1
  7291   "RTN","PSO ORNEW",87, 0)
  7292    . I '$D(^ XUSEC("PSO RPH",DUZ))  D  S Y=0  Q
  7293   "RTN","PSO ORNEW",88, 0)
  7294    . . S DIR ("A",1)="O rder must  be unflagg ed by a ph armacist b efore it c an be fini shed."
  7295   "RTN","PSO ORNEW",89, 0)
  7296    . . S DIR ("A",2)=""
  7297   "RTN","PSO ORNEW",90, 0)
  7298    . . S DIR (0)="E",DI R("A")="En ter RETURN  to contin ue" W !,$C (7) D ^DIR
  7299   "RTN","PSO ORNEW",91, 0)
  7300    . . S VAL MBCK="R"
  7301   "RTN","PSO ORNEW",92, 0)
  7302    . D KV
  7303   "RTN","PSO ORNEW",93, 0)
  7304    . S DIR(" A",1)="Thi s Order is  flagged.  In order t o finish i t"
  7305   "RTN","PSO ORNEW",94, 0)
  7306    . S DIR(" A",2)="you  must unfl ag it firs t."
  7307   "RTN","PSO ORNEW",95, 0)
  7308    . S DIR(" A",3)=""
  7309   "RTN","PSO ORNEW",96, 0)
  7310    . S DIR(0 )="Y",DIR( "A")="Unfl ag Order", DIR("B")=" NO"
  7311   "RTN","PSO ORNEW",97, 0)
  7312    . W ! D ^ DIR I $D(D IRUT)!'Y S  VALMBCK=" Q"
  7313   "RTN","PSO ORNEW",98, 0)
  7314    I $G(ORD) ,+$P($G(^P S(52.41,+O RD,0)),"^" ,23)=1 Q
  7315   "RTN","PSO ORNEW",99, 0)
  7316    ;
  7317   "RTN","PSO ORNEW",100 ,0)
  7318    I $D(CLOZ PAT),+$G(P SONEW("QTY "))=0 S VA LMSG="Unab le to calc ulate the  quantity,  enter a qu antity" G  DSPL
  7319   "RTN","PSO ORNEW",101 ,0)
  7320    S (PSODIR ("DFLG"),P SORX("DFLG "),PSODIR( "QFLD"))=0 ,ACP=1 D O RCHK
  7321   "RTN","PSO ORNEW",102 ,0)
  7322    G:$G(PSON EW("QFLG") ) DSPL
  7323   "RTN","PSO ORNEW",103 ,0)
  7324    I $G(PSOD IR("DFLG") )!$G(PSORX ("DFLG"))  Q
  7325   "RTN","PSO ORNEW",104 ,0)
  7326    I $G(PSON EW("FLD")) !($G(PSODR UG("NAME") )']"")!('$ O(SIG(0)))  G DSPL
  7327   "RTN","PSO ORNEW",105 ,0)
  7328    I $G(PSOD RUG("NAME" ))]"",'$G( ORCHK)!($G (ORDRG)'=P SODRUG("NA ME")) D  I  $G(PSORX( "DFLG")) D  CLEAN^PSO VER1 G DSP L
  7329   "RTN","PSO ORNEW",106 ,0)
  7330    . D POST^ PSODRG S:' $G(PSORX(" DFLG")) OR CHK=1,ORDR G=PSODRUG( "NAME")
  7331   "RTN","PSO ORNEW",107 ,0)
  7332    D:'$G(PSO RX("DFLG") ) DOSCK^PS ODOSUT("N" ) I $G(PSO RX("DFLG") ) G DSPL
  7333   "RTN","PSO ORNEW",108 ,0)
  7334    I '$D(PSO NEW("RX #" )) S PSOFR OM="NEW",R TN=$S($P($ G(PSOPAR), "^",7):"AU TO^PSONRXN ",1:"MANUA L^PSONRXN" ) D @RTN Q :PSONEW("Q FLG")  I ' $P($G(PSOP AR),"^",7)  S PSOX=PS ONEW("RX # ") D CHECK ^PSONRXN
  7335   "RTN","PSO ORNEW",109 ,0)
  7336    D RXNCHK^ PSOORNE1 I  $G(PSONEW ("QFLG"))  S PSONEW(" DFLG")=1 Q
  7337   "RTN","PSO ORNEW",110 ,0)
  7338    I DT>$$FM ADD^XLFDT( $P(OR0,"^" ,6),365) D  EXPR^PSON EW2 G DSPL
  7339   "RTN","PSO ORNEW",111 ,0)
  7340    D STOP^PS ONEW2,DISP LAY^PSONEW 2,^PSONEWF
  7341   "RTN","PSO ORNEW",112 ,0)
  7342    I $G(PSOC PZ("DFLG") ) W !!,"No  action ta ken!",! K  DIR S DIR( 0)="E",DIR ("?")="Pre ss Return  to continu e",DIR("A" )="Press R eturn to c ontinue" D  ^DIR,KV K  PSOCPZ("D FLG"),DRET ,PSOANSQD  S VALMBCK= "Q" Q
  7343   "RTN","PSO ORNEW",113 ,0)
  7344    ;
  7345   "RTN","PSO ORNEW",114 ,0)
  7346    K PSOCPZ( "DFLG") D  KV S DIR(0 )="Y",DIR( "A")="Are  you sure y ou want to  Accept th is Order", DIR("B")=" NO" D ^DIR  I $D(DIRU T) D KV K  DRET,PSOAN SQ,PSOANSQ D S VALMBC K="Q" Q
  7347   "RTN","PSO ORNEW",115 ,0)
  7348    D KV I 'Y  K PSOANSQ  G DSPL
  7349   "RTN","PSO ORNEW",116 ,0)
  7350    I $G(PSON EW("MAIL/W INDOW"))[" W" D:$P($G (PSOPAR)," ^",12)  S  BINGCRT="Y ",BINGRTE= "W",PSORX( "MAIL/WIND OW")="WIND OW" K RTN
  7351   "RTN","PSO ORNEW",117 ,0)
  7352    .W ! K DI R,DIRUT S  DIR(0)="52 ,35O"
  7353   "RTN","PSO ORNEW",118 ,0)
  7354    .S:$G(PSO RX("METHOD  OF PICK-U P"))]"" DI R("B")=PSO RX("METHOD  OF PICK-U P") D ^DIR  I $D(DIRU T) K DIR,D IRUT Q
  7355   "RTN","PSO ORNEW",119 ,0)
  7356    .S (PSONE W("METHOD  OF PICK-UP "),PSORX(" METHOD OF  PICK-UP")) =Y K X,Y
  7357   "RTN","PSO ORNEW",120 ,0)
  7358    S PSONEW( "POE")=1 K  PSORX("DF LG"),PSONE W("DFLG")  D EN^PSON5 2(.PSONEW)  G:$G(PSON EW("DFLG") ) ABORT D  DCORD^PSON EW2 D:$G(P KI)=898020 20 ALERT^P SOPKIV1
  7359   "RTN","PSO ORNEW",121 ,0)
  7360    ; - Possi ble Titrat ion Rx?
  7361   "RTN","PSO ORNEW",122 ,0)
  7362    I $G(PSON EW("IRXN") ) D MARK^P SOOTMRX(PS ONEW("IRXN "),0)
  7363   "RTN","PSO ORNEW",123 ,0)
  7364    ;saves dr ug allergy  order chk s pso*7*39 0
  7365   "RTN","PSO ORNEW",124 ,0)
  7366    I $D(^TMP ("PSODAOC" ,$J)) D
  7367   "RTN","PSO ORNEW",125 ,0)
  7368    .I $G(PSO RX("DFLG") ) K ^TMP(" PSODAOC",$ J) Q
  7369   "RTN","PSO ORNEW",126 ,0)
  7370    .S RXN=PS ONEW("IRXN "),PSODAOC ="Finished  CPRS Rx " _$S($P(^PS RX(RXN,"ST A"),"^")=4 :"NON-VERI FIED ",1:" ")_"Order  Acceptance _OP"
  7371   "RTN","PSO ORNEW",127 ,0)
  7372    .D DAOC^P SONEW
  7373   "RTN","PSO ORNEW",128 ,0)
  7374    D NPSOSD^ PSOUTIL(.P SONEW),FUL L^VALM1 K  PSORX("MAI L/WINDOW")
  7375   "RTN","PSO ORNEW",129 ,0)
  7376    D EOJ^PSO NEW
  7377   "RTN","PSO ORNEW",130 ,0)
  7378   ABORT S VA LMBCK="Q", DIR(0)="E" ,DIR("?")= "Press Ret urn to con tinue",DIR ("A")="Pre ss Return  to Continu e" D ^DIR, CLEAN^PSOV ER1,KV
  7379   "RTN","PSO ORNEW",131 ,0)
  7380    Q
  7381   "RTN","PSO ORNEW",132 ,0)
  7382   KV K DIRUT ,DUOUT,DTO UT,DIR,PSO EDDOS
  7383   "RTN","PSO ORNEW",133 ,0)
  7384    Q
  7385   "RTN","PSO ORNEW",134 ,0)
  7386   REF ;
  7387   "RTN","PSO ORNEW",135 ,0)
  7388    ; Retriev ing the Ma ximum Numb er of Refi lls allowe d
  7389   "RTN","PSO ORNEW",136 ,0)
  7390    N MAXRF S  MAXRF=$$M AXNUMRF^PS OUTIL(+$G( PSODRUG("I EN")),+$G( PSONEW("DA YS SUPPLY" )),+$G(PSO NEW("PATIE NT STATUS" )),.CLOZPA T)
  7391   "RTN","PSO ORNEW",137 ,0)
  7392    I ($G(PSO NEW("# OF  REFILLS")) '="")&($G( PSONEW("#  OF REFILLS "))'>MAXRF ) D
  7393   "RTN","PSO ORNEW",138 ,0)
  7394    . S PSONE W("N# REF" )=PSONEW(" # OF REFIL LS")
  7395   "RTN","PSO ORNEW",139 ,0)
  7396    E  D
  7397   "RTN","PSO ORNEW",140 ,0)
  7398    . S (PSON EW("N# REF "),PSONEW( "# OF REFI LLS"))=MAX RF
  7399   "RTN","PSO ORNEW",141 ,0)
  7400    Q
  7401   "RTN","PSO ORNEW",142 ,0)
  7402   1 I $P($G( OR0),"^",2 4) D  Q
  7403   "RTN","PSO ORNEW",143 ,0)
  7404    . W !!,"D igitally S igned Orde r - Ordera ble Item c annot be c hanged",!  D PZ
  7405   "RTN","PSO ORNEW",144 ,0)
  7406    N PSOBDR, PSOBDRG S  PSOBDRG=1  D 1^PSOORN W2 Q  ;oi
  7407   "RTN","PSO ORNEW",145 ,0)
  7408    ;
  7409   "RTN","PSO ORNEW",146 ,0)
  7410   4 D INS^PS OORNW2 Q
  7411   "RTN","PSO ORNEW",147 ,0)
  7412    ;
  7413   "RTN","PSO ORNEW",148 ,0)
  7414   3 I $G(LST )["3,",$P( OR0,"^",24 ) D  Q 
  7415   "RTN","PSO ORNEW",149 ,0)
  7416    . W !!,"D igitally S igned Orde r - Dose c annot be c hanged",!  D PZ
  7417   "RTN","PSO ORNEW",150 ,0)
  7418    N PSOEDDO S S PSOEDD OS=1 D DOS E^PSOORED4 (.PSONEW)  Q
  7419   "RTN","PSO ORNEW",151 ,0)
  7420    ;
  7421   "RTN","PSO ORNEW",152 ,0)
  7422   6 D 4^PSOO RNW2 Q  ;i dt
  7423   "RTN","PSO ORNEW",153 ,0)
  7424    ;
  7425   "RTN","PSO ORNEW",154 ,0)
  7426   7 D 5^PSOO RNW2 Q  ;f dt
  7427   "RTN","PSO ORNEW",155 ,0)
  7428    ;
  7429   "RTN","PSO ORNEW",156 ,0)
  7430   5 D 3^PSOO RNW2 Q  ;p stat
  7431   "RTN","PSO ORNEW",157 ,0)
  7432    ;
  7433   "RTN","PSO ORNEW",158 ,0)
  7434   13 I $P($G (OR0),"^", 24) D  Q
  7435   "RTN","PSO ORNEW",159 ,0)
  7436    . W !!,"D igitally S igned Orde r - Provid er cannot  be changed ",! D PZ
  7437   "RTN","PSO ORNEW",160 ,0)
  7438    D 12^PSOO RNW2 Q  ;d oc
  7439   "RTN","PSO ORNEW",161 ,0)
  7440    ;
  7441   "RTN","PSO ORNEW",162 ,0)
  7442   12 D 11^PS OORNW2 Q   ;cli
  7443   "RTN","PSO ORNEW",163 ,0)
  7444    ;
  7445   "RTN","PSO ORNEW",164 ,0)
  7446   2 N PSOCSI G I '$G(PS OBDRG) N P SOBDR,PSOB DRG S PSOB DRG=1,PSOQ FLG=0
  7447   "RTN","PSO ORNEW",165 ,0)
  7448    N CPRN S  CPRN=+$P($ G(OR0),"^" ,24) D 2^P SOORNW1 Q: $G(PSOQFLG )  D EN^PS ODIAG  ;dr g/ICD
  7449   "RTN","PSO ORNEW",166 ,0)
  7450    I $G(PSOC SIG) K PSO CSIG G 3
  7451   "RTN","PSO ORNEW",167 ,0)
  7452    Q
  7453   "RTN","PSO ORNEW",168 ,0)
  7454    ;
  7455   "RTN","PSO ORNEW",169 ,0)
  7456   9 D 8^PSOO RNW2 Q  ;q ty
  7457   "RTN","PSO ORNEW",170 ,0)
  7458    ;
  7459   "RTN","PSO ORNEW",171 ,0)
  7460   8 N CPRN S  CPRN=+$P( $G(OR0),"^ ",24) D 7^ PSOORNW2 Q   ;ds
  7461   "RTN","PSO ORNEW",172 ,0)
  7462    ;
  7463   "RTN","PSO ORNEW",173 ,0)
  7464   10 I $P($G (OR0),"^", 24) D  Q
  7465   "RTN","PSO ORNEW",174 ,0)
  7466    . W !!,"D igitally S igned Orde r - Refill s cannot b e changed" ,! D PZ
  7467   "RTN","PSO ORNEW",175 ,0)
  7468    D 9^PSOOR NW2 Q  ;#r fs
  7469   "RTN","PSO ORNEW",176 ,0)
  7470    ;
  7471   "RTN","PSO ORNEW",177 ,0)
  7472   14 D 13^PS OORNW2 Q   ;cop
  7473   "RTN","PSO ORNEW",178 ,0)
  7474    ;
  7475   "RTN","PSO ORNEW",179 ,0)
  7476   11 D 10^PS OORNW2 Q   ;m/w
  7477   "RTN","PSO ORNEW",180 ,0)
  7478    ;
  7479   "RTN","PSO ORNEW",181 ,0)
  7480   15 D 14^PS OORNW2 Q   ;rem
  7481   "RTN","PSO ORNEW",182 ,0)
  7482    ;
  7483   "RTN","PSO ORNEW",183 ,0)
  7484   DRGMSG ;
  7485   "RTN","PSO ORNEW",184 ,0)
  7486    F SG=1:1: $L($P(^PSD RUG(PSODRU G("IEN"),0 ),"^",10))  S:$L(^TMP ("PSOPO",$ J,IEN,0)_"  "_$P($P(^ PSDRUG(PSO DRUG("IEN" ),0),"^",1 0)," ",SG) )>80 IEN=I EN+1,$P(^T MP("PSOPO" ,$J,IEN,0) ," ",20)="  " D
  7487   "RTN","PSO ORNEW",185 ,0)
  7488    .S:$P($P( ^PSDRUG(PS ODRUG("IEN "),0),"^", 10)," ",SG )'="" ^TMP ("PSOPO",$ J,IEN,0)=$ G(^TMP("PS OPO",$J,IE N,0))_" "_ $P($P(^PSD RUG(PSODRU G("IEN"),0 ),"^",10), " ",SG)
  7489   "RTN","PSO ORNEW",186 ,0)
  7490    K SG
  7491   "RTN","PSO ORNEW",187 ,0)
  7492    Q
  7493   "RTN","PSO ORNEW",188 ,0)
  7494    ;
  7495   "RTN","PSO ORNEW",189 ,0)
  7496   PZ ;
  7497   "RTN","PSO ORNEW",190 ,0)
  7498    N DIR S D IR(0)="E", DIR("A")=" Press Retu rn to Cont inue" D ^D IR W !
  7499   "RTN","PSO ORNEW",191 ,0)
  7500    Q
  7501   "RTN","PSO RENW0")
  7502   0^2^B98709 139
  7503   "RTN","PSO RENW0",1,0 )
  7504   PSORENW0 ; IHS/DSD/JC M-renew ma in driver  continuati on ;Jul 24 , 2017@15: 24
  7505   "RTN","PSO RENW0",2,0 )
  7506    ;;7.0;OUT PATIENT PH ARMACY;**1 1,27,32,59 ,64,46,71, 96,100,130 ,237,206,2 51,375,379 ,372,411,4 57**;DEC 1 997;Build  65
  7507   "RTN","PSO RENW0",3,0 )
  7508    ;External  reference  to ^PS(50 .7 support ed by DBIA  2223
  7509   "RTN","PSO RENW0",4,0 )
  7510    ;External  reference  to ^PSDRU G supporte d by DBIA  221
  7511   "RTN","PSO RENW0",5,0 )
  7512    ;External  reference  to PSOL^P SSLOCK sup ported by  DBIA 2789
  7513   "RTN","PSO RENW0",6,0 )
  7514    ;External  reference  to PSOUL^ PSSLOCK su pported by  DBIA 2789
  7515   "RTN","PSO RENW0",7,0 )
  7516    ;
  7517   "RTN","PSO RENW0",8,0 )
  7518    ;PSO*237  was not ad ding to Cl ozapine Ov erride fil e, fix
  7519   "RTN","PSO RENW0",9,0 )
  7520   PROCESS ;
  7521   "RTN","PSO RENW0",10, 0)
  7522    D ^PSOREN W1
  7523   "RTN","PSO RENW0",11, 0)
  7524    D INST2^P SORENW
  7525   "RTN","PSO RENW0",12, 0)
  7526    I $D(PSOR X("BAR COD E")),PSODF N'=PSORENW ("PSODFN")  D NEWPT
  7527   "RTN","PSO RENW0",13, 0)
  7528    S PSORENW ("DFLG")=0 ,PSORENW(" FILL DATE" )=PSORNW(" FILL DATE" )
  7529   "RTN","PSO RENW0",14, 0)
  7530    I $G(PSOR NW("MAIL/W INDOW"))]" " S PSOREN W("MAIL/WI NDOW")=PSO RNW("MAIL/ WINDOW")
  7531   "RTN","PSO RENW0",15, 0)
  7532    W !!,"Now  Renewing  Rx # "_PSO RENW("ORX  #")_"   Dr ug: "_$$GE T1^DIQ(50, +$G(PSOREN W("DRUG IE N")),.01), !
  7533   "RTN","PSO RENW0",16, 0)
  7534    D CHECK G :PSORENW(" DFLG") PRO CESSX
  7535   "RTN","PSO RENW0",17, 0)
  7536    D FILDATE
  7537   "RTN","PSO RENW0",18, 0)
  7538    D DRUG G: PSORENW("D FLG")!PSOR X("DFLG")  PROCESSX
  7539   "RTN","PSO RENW0",19, 0)
  7540    D RXN G:P SORENW("DF LG") PROCE SSX
  7541   "RTN","PSO RENW0",20, 0)
  7542    D STOP^PS ORENW1,OER R^PSORENW1 :$G(PSOFDR )
  7543   "RTN","PSO RENW0",21, 0)
  7544   DSPL K PSO EDT,PSOLM  D DSPLY^PS ORENW3 G:P SORENW("DF LG") PROCE SSX
  7545   "RTN","PSO RENW0",22, 0)
  7546    S PSORENW ("QFLG")=0  D:'$G(PSO FDR) EDIT
  7547   "RTN","PSO RENW0",23, 0)
  7548    G:PSORENW ("DFLG")!$ G(PSORX("F N")) PROCE SSX
  7549   "RTN","PSO RENW0",24, 0)
  7550    G:'$G(PSO RX("FN"))& ('$G(PSORE NW("QFLG") )) DSPL
  7551   "RTN","PSO RENW0",25, 0)
  7552    D:$$FIND1 ^DIC(200.0 51,","_DUZ _",","X"," PSORPH")!( '$P(PSOPAR ,"^",2)) V ER1^PSOORN E4(.PSOREN W) I PSORE NW("DFLG") =1 G PROCE SSX
  7553   "RTN","PSO RENW0",26, 0)
  7554    I $G(NEWD OSE),PSORE NW("ENT")> 0 K NEWDOS E G DSPL
  7555   "RTN","PSO RENW0",27, 0)
  7556    D EN^PSOR N52(.PSORE NW)
  7557   "RTN","PSO RENW0",28, 0)
  7558    D RNPSOSD ^PSOUTIL
  7559   "RTN","PSO RENW0",29, 0)
  7560    D CAN,DCO RD^PSONEW2
  7561   "RTN","PSO RENW0",30, 0)
  7562    S BBRN1=$ $FIND1^DIC (52,,"X",P SORENW("NR X #")) I $ $GET1^DIQ( 52,BBRN1,1 1,"I")["W"  S BINGCRT ="Y",BINGR TE="W"
  7563   "RTN","PSO RENW0",31, 0)
  7564    ;PSO*237  add to Clo zapine Ove rride file
  7565   "RTN","PSO RENW0",32, 0)
  7566   ANQ I $G(A NQDATA)]""  N PSOUSER ,PSO1PH,PS O2PH,PSORE ASN,PSOREM RK S PSOUS ER=$P(ANQD ATA,"^",5) ,PSO1PH=$P (ANQDATA," ^"),PSO2PH =$P(ANQDAT A,"^",5),P SOREASN=$P (ANQDATA," ^",3),PSOR EMRK=$P(AN QDATA,"^", 4) D NOW^% DTC G:$$FI ND1^DIC(52 .52,,"X",% ) ANQ D
  7567   "RTN","PSO RENW0",33, 0)
  7568    .;; ** ST ART NCC RE MEDIATION  ** 457/RTW  
  7569   "RTN","PSO RENW0",34, 0)
  7570    .N PSOUSE R,PSO1PH,P SO2PH,PSOR EASN,PSORE MRK,PSOPRO V
  7571   "RTN","PSO RENW0",35, 0)
  7572    .S PSOPRO V=$P(ANQDA TA,"^",2), PSO1PH=$P( ANQDATA,"^ "),PSO2PH= $P(ANQDATA ,"^",5),PS OREASN=$P( ANQDATA,"^ ",3),PSORE MRK=$P(ANQ DATA,"^",4 )
  7573   "RTN","PSO RENW0",36, 0)
  7574    .S XQA(PS O2PH)="",X QA(PSOPROV )=""
  7575   "RTN","PSO RENW0",37, 0)
  7576    .I $D(ORO ) S PSOPRO V=$P(ORO," ^",4)
  7577   "RTN","PSO RENW0",38, 0)
  7578    .K DD,DO  S DIC="^PS (52.52,",D IC(0)="L", DLAYGO=52. 52,X=%
  7579   "RTN","PSO RENW0",39, 0)
  7580    .D FILE^D ICN K DIC, DLAYGO,DD, DO,DA,DR
  7581   "RTN","PSO RENW0",40, 0)
  7582    .N PS52 S  (PS52,DA) =+Y,DIE="^ PS(52.52," ,DR="1//// "_PSORENW( "IRXN")_"; 2////"_PSO 1PH_";3/// /"_PSOPROV _";4////"_ PSOREASN_" ;5////"_PS OREMRK_";6 ////"_PSO2 PH
  7583   "RTN","PSO RENW0",41, 0)
  7584    .D ^DIE K  DIE,DA,DR
  7585   "RTN","PSO RENW0",42, 0)
  7586    .K ANQDAT A,X,Y,%,AN QREM
  7587   "RTN","PSO RENW0",43, 0)
  7588    .D ALERT
  7589   "RTN","PSO RENW0",44, 0)
  7590    ; ** END  NCC REMEDI ATION ** 4 57/RTW
  7591   "RTN","PSO RENW0",45, 0)
  7592    ;
  7593   "RTN","PSO RENW0",46, 0)
  7594   PROCESSX N  PSORWRIT  I PSORENW( "DFLG")!$G (PSORX("DF LG")) S PS OBBCLK=1 W :'$G(POERR ) !,$C(7), "RENEWED R X DELETED" ,! S PSOWR IT=1,PSORE RR=1 D
  7595   "RTN","PSO RENW0",47, 0)
  7596    .D:$P($G( PSOLST(+$G (ORN))),"^ ",2) PSOUL ^PSSLOCK($ P(PSOLST(O RN),"^",2) ) S POERR( "DFLG")=1  D CLEAN^PS OVER1 D
  7597   "RTN","PSO RENW0",48, 0)
  7598    ..W !! K  DIR S DIR( 0)="E",DIR ("?")="Pre ss Return  to continu e",DIR("A" )="Press R eturn to C ontinue" D  ^DIR K DI R,DTOUT,DU OUT S VALM BCK="Q"
  7599   "RTN","PSO RENW0",49, 0)
  7600    D:$G(PSOR ENW("OLD F ILL DATE") )]"" SUSDA TEK^PSOUTI L(.PSORENW )
  7601   "RTN","PSO RENW0",50, 0)
  7602    K PRC,PHI ,PSOQUIT,B BRN,BBRN1, PSORENW,PS ODRUG,PSOR X("PROVIDE R NAME"),P SORX("CLIN IC"),PSORX ("FN")
  7603   "RTN","PSO RENW0",51, 0)
  7604    K PSOEDT, PSOLM S:$G (PSORENW(" FROM"))=""  (PSORENW( "DFLG"),PS ORENW("QFL G"))=0
  7605   "RTN","PSO RENW0",52, 0)
  7606    D CLEAN^P SOVER1
  7607   "RTN","PSO RENW0",53, 0)
  7608    Q
  7609   "RTN","PSO RENW0",54, 0)
  7610    ;
  7611   "RTN","PSO RENW0",55, 0)
  7612   CHECK ;
  7613   "RTN","PSO RENW0",56, 0)
  7614    I '$D(PSO RX("BAR CO DE")),PSOR ENW("PSODF N")'=PSODF N D  G CHE CKX
  7615   "RTN","PSO RENW0",57, 0)
  7616    .W !!,?5, $C(7),"Can 't renew R x # "_$P(P SORENW("RX 0"),"^")_" , it is no t for this  patient."  S PSORENW ("DFLG")=1
  7617   "RTN","PSO RENW0",58, 0)
  7618    .S:$G(POE RR) VALMSG ="Can't re new Rx # " _$P(PSOREN W("RX0")," ^")_", not  for this  patient.", VALMBCK="R "
  7619   "RTN","PSO RENW0",59, 0)
  7620    ;Invalid  dosage che ck
  7621   "RTN","PSO RENW0",60, 0)
  7622    N PSOOCPR X,PSOOLPF, PSOOLPD,PS ONOSIG S P SOOCPRX=PS ORENW("OIR XN") D CDO SE
  7623   "RTN","PSO RENW0",61, 0)
  7624    I PSOOLPF !(PSONOSIG ) D  G CHE CKX
  7625   "RTN","PSO RENW0",62, 0)
  7626    .S PSOREN W("DFLG")= 1
  7627   "RTN","PSO RENW0",63, 0)
  7628    .W !!,$C( 7),"Cannot  renew Rx  # "_$P(PSO RENW("RX0" ),"^")_$S( PSOOLPF:",  invalid d osage of " _$G(PSOOLP D),1:", Mi ssing Sig" )
  7629   "RTN","PSO RENW0",64, 0)
  7630    .S:$G(POE RR) VALMSG ="Cannot r enew Rx #  "_$P(PSORE NW("RX0"), "^")_$S(PS OOLPF:", i nvalid Dos age of "_$ G(PSOOLPD) ,1:", Miss ing Sig")  S VALMBCK= "R"
  7631   "RTN","PSO RENW0",65, 0)
  7632    .I '$G(PS ORNSPD) W  ! K DIR S  DIR(0)="E" ,DIR("?")= "Press Ret urn to con tinue",DIR ("A")="Pre ss Return  to Continu e" D ^DIR  K DIR
  7633   "RTN","PSO RENW0",66, 0)
  7634    .I $G(PSO RNSPD) W !
  7635   "RTN","PSO RENW0",67, 0)
  7636    ;
  7637   "RTN","PSO RENW0",68, 0)
  7638    N PSOS S  (PSOS,PSOX ,PSOY)=""  K ACOM,DIR ,DIRUT,DIR UT,DUOUT N  DRG
  7639   "RTN","PSO RENW0",69, 0)
  7640    I $G(PSOS D) F  S PS OS=$O(PSOS D(PSOS)) Q :PSOS=""   F  S PSOX= $O(PSOSD(P SOS,PSOX))  Q:PSOX']" "!(PSORENW ("DFLG"))   I PSORENW ("OIRXN")= +PSOSD(PSO S,PSOX) S  PSOY=PSOSD (PSOS,PSOX ) I $TR($P (PSOY,"^", 3),"B")]""  D  K ACOM ,DIR,DIRUT ,DIRUT,DUO UT
  7641   "RTN","PSO RENW0",70, 0)
  7642    . S PSORE NW("DFLG") =1
  7643   "RTN","PSO RENW0",71, 0)
  7644    . W !,$C( 7),"Cannot  renew Rx  # ",$P(PSO RENW("RX0" ),"^")
  7645   "RTN","PSO RENW0",72, 0)
  7646    . S PSORE A=$P(PSOY, "^",3),PSO STAT=+PSOR ENW("STA")
  7647   "RTN","PSO RENW0",73, 0)
  7648    . D STATU S^PSOUTIL( PSOREA,PSO STAT) K PS OREA,PSOST AT
  7649   "RTN","PSO RENW0",74, 0)
  7650    .I $G(ACO M)]"" D
  7651   "RTN","PSO RENW0",75, 0)
  7652    ..S DRG=$ $GET1^DIQ( 52,PSORENW ("OIRXN"), 6)
  7653   "RTN","PSO RENW0",76, 0)
  7654    ..W ! S D IR(0)="Y", DIR("A",1) ="Do you w ant to Dis continue t his Pendin g Order",D IR("A")="f or "_DRG,D IR("B")="N o"
  7655   "RTN","PSO RENW0",77, 0)
  7656    ..D ^DIR  I 'Y!($D(D IRUT)) Q
  7657   "RTN","PSO RENW0",78, 0)
  7658    ..D NOOR^ PSOCAN4 Q: $D(DIRUT)   D DE^PSOO RFI2
  7659   "RTN","PSO RENW0",79, 0)
  7660    .Q
  7661   "RTN","PSO RENW0",80, 0)
  7662    I PSOY="" ,'$G(PSOOR RNW) D
  7663   "RTN","PSO RENW0",81, 0)
  7664    .W !,$C(7 ),"Cannot  renew Rx #  ",$P(PSOR ENW("RX0") ,"^")," la ter Rx exi sts." S PS ORENW("DFL G")=1
  7665   "RTN","PSO RENW0",82, 0)
  7666    .S:$G(POE RR) VALMSG ="Cannot r enew Rx #  "_$P(PSORE NW("RX0"), "^")_" lat er Rx exis ts.",VALMB CK="R"
  7667   "RTN","PSO RENW0",83, 0)
  7668    K PSOX,PS OY G:PSORE NW("DFLG")  CHECKX
  7669   "RTN","PSO RENW0",84, 0)
  7670    ;
  7671   "RTN","PSO RENW0",85, 0)
  7672    I $A($E(P SORENW("OR X #"),$L(P SORENW("OR X #"))))'< 90 D  Q
  7673   "RTN","PSO RENW0",86, 0)
  7674    . W !,$C( 7),"Cannot  renew Rx  # "_PSOREN W("ORX #") _", Max nu mber of re newals rea ched."
  7675   "RTN","PSO RENW0",87, 0)
  7676    .S:$G(POE RR)!('$G(S PEED)) (AC OM,VALMSG) ="Cannot r enew Rx #  "_PSORENW( "ORX #")_" , Max numb er reached .",VALMBCK ="R"
  7677   "RTN","PSO RENW0",88, 0)
  7678    . S PSORE NW("DFLG") =1
  7679   "RTN","PSO RENW0",89, 0)
  7680    .I $G(OR0 )]"" D
  7681   "RTN","PSO RENW0",90, 0)
  7682    ..S DRG=$ $GET1^DIQ( 52,PSORENW ("OIRXN"), 6)
  7683   "RTN","PSO RENW0",91, 0)
  7684    ..W ! S D IR(0)="Y", DIR("A",1) ="Do you w ant to Dis continue t his Pendin g Order",D IR("A")="f or "_DRG,D IR("B")="N o"
  7685   "RTN","PSO RENW0",92, 0)
  7686    ..D ^DIR  I 'Y!($D(D IRUT)) Q
  7687   "RTN","PSO RENW0",93, 0)
  7688    ..D NOOR^ PSOCAN4 Q: $D(DIRUT)   D DE^PSOO RFI2
  7689   "RTN","PSO RENW0",94, 0)
  7690    .K ACOM Q
  7691   "RTN","PSO RENW0",95, 0)
  7692    D CHKDIV  G:PSORENW( "DFLG") CH ECKX
  7693   "RTN","PSO RENW0",96, 0)
  7694    ;
  7695   "RTN","PSO RENW0",97, 0)
  7696    D CHKPRV^ PSOUTIL
  7697   "RTN","PSO RENW0",98, 0)
  7698   CHECKX Q
  7699   "RTN","PSO RENW0",99, 0)
  7700    ;
  7701   "RTN","PSO RENW0",100 ,0)
  7702   CHKDIV ;
  7703   "RTN","PSO RENW0",101 ,0)
  7704    G:$P(PSOR ENW("RX2") ,"^",9)=+P SOSITE CHK DIVX
  7705   "RTN","PSO RENW0",102 ,0)
  7706    W !?5,$C( 7),"RX # " ,$P(PSOREN W("RX0")," ^")," is f or (",$$GE T1^DIQ(59, $P(PSORENW ("RX2"),"^ ",9),.01), ") divisio n."
  7707   "RTN","PSO RENW0",103 ,0)
  7708    I '$P($G( PSOSYS),"^ ",2) S PSO RENW("DFLG ")=1 G CHK DIVX
  7709   "RTN","PSO RENW0",104 ,0)
  7710    D:$P($G(P SOSYS),"^" ,3) DIR
  7711   "RTN","PSO RENW0",105 ,0)
  7712   CHKDIVX Q
  7713   "RTN","PSO RENW0",106 ,0)
  7714    ;
  7715   "RTN","PSO RENW0",107 ,0)
  7716   DRUG ;
  7717   "RTN","PSO RENW0",108 ,0)
  7718    K PSOY
  7719   "RTN","PSO RENW0",109 ,0)
  7720    S PSOY=PS ORENW("DRU G IEN"),PS OY(0)=^PSD RUG(PSOY,0 ),PSORENWD =1
  7721   "RTN","PSO RENW0",110 ,0)
  7722    I '$P($G( ^PSDRUG(PS OY,2)),"^" ) D  Q:$G( PSORX("DFL G"))
  7723   "RTN","PSO RENW0",111 ,0)
  7724    .I $$GET1 ^DIQ(52,PS ORENW("OIR XN"),39.2, "I") S PSO DRUG("OI") =$$GET1^DI Q(52,PSORE NW("OIRXN" ),39.2,"I" ),PSODRUG( "OIN")=$$G ET1^DIQ(52 ,PSORENW(" OIRXN"),39 .2) Q
  7725   "RTN","PSO RENW0",112 ,0)
  7726    .W !!,"Ca nnot Renew !!  No Pha rmacy Orde rable Item !" S VALMS G="Cannot  Renew!!  N o Pharmacy  Orderable  Item!",PS ORX("DFLG" )=1
  7727   "RTN","PSO RENW0",113 ,0)
  7728    D SET^PSO DRG
  7729   "RTN","PSO RENW0",114 ,0)
  7730    D POST^PS ODRG D:'PS ORX("DFLG" ) DOSCK^PS ODOSUT("R" ) S:$G(PSO RX("DFLG") ) PSORENW( "DFLG")=1  ;remove or der checks  for v7. d o allergy  checks onl y
  7731   "RTN","PSO RENW0",115 ,0)
  7732    S PSONOOR =PSORENW(" NOO")
  7733   "RTN","PSO RENW0",116 ,0)
  7734    K PSORX(" INTERVENE" )
  7735   "RTN","PSO RENW0",117 ,0)
  7736    S:$D(PSON EW("STATUS ")) PSOREN W("STATUS" )=PSONEW(" STATUS")
  7737   "RTN","PSO RENW0",118 ,0)
  7738    K PSOY,PS ONEW("STAT US"),PSORE NWD
  7739   "RTN","PSO RENW0",119 ,0)
  7740    Q
  7741   "RTN","PSO RENW0",120 ,0)
  7742    ;
  7743   "RTN","PSO RENW0",121 ,0)
  7744   RXN ;
  7745   "RTN","PSO RENW0",122 ,0)
  7746    K PSOX
  7747   "RTN","PSO RENW0",123 ,0)
  7748    S PSOX=$E (PSORENW(" ORX #"),$L (PSORENW(" ORX #")))
  7749   "RTN","PSO RENW0",124 ,0)
  7750    S PSORENW ("NRX #")= $S(PSOX?1N :PSORENW(" ORX #")_"A ",1:$E(PSO RENW("ORX  #"),1,$L(P SORENW("OR X #"))-1)_ $C($A(PSOX )+1))
  7751   "RTN","PSO RENW0",125 ,0)
  7752   RETRY I $O (^PSRX("B" ,PSORENW(" NRX #"),0) ) D  G:'$G (PSORENW(" DFLG")) RE TRY
  7753   "RTN","PSO RENW0",126 ,0)
  7754    .W:$A($E( PSORENW("N RX #"),$L( PSORENW("O RX #"))))' =90 !,"Rx  # "_PSOREN W("NRX #") _" is alre ady on fil e."
  7755   "RTN","PSO RENW0",127 ,0)
  7756    .S:$G(PSO FDR) VALMS G="Rx # "_ PSORENW("N RX #")_" i s already  on file."
  7757   "RTN","PSO RENW0",128 ,0)
  7758    .I $A($E( PSORENW("N RX #"),$L( PSORENW("O RX #"))))= 90 D
  7759   "RTN","PSO RENW0",129 ,0)
  7760    ..W !,"Rx  # "_PSORE NW("NRX #" )_" is alr eady on fi le. Cannot  renew Rx  #"_PSORENW ("ORX #")_ ".",!,"A n ew Rx must  be entere d.",!
  7761   "RTN","PSO RENW0",130 ,0)
  7762    ..S:$G(PS OFDR) VALM SG="Rx # " _PSORENW(" NRX #")_"  is already  on file.  Cannot ren ew Rx #"_P SORENW("OR X #")_". A  new Rx mu st be ente red."
  7763   "RTN","PSO RENW0",131 ,0)
  7764    ..K DIR S  DIR(0)="E ",DIR("?") ="Press Re turn to co ntinue",DI R("A")="Pr ess Return  to Contin ue" D ^DIR  K DIR
  7765   "RTN","PSO RENW0",132 ,0)
  7766    ..S:$G(PO ERR)!($G(P SOFDR)) VA LMSG="Cann ot renew R x # "_PSOR ENW("ORX # ")_", Max  number rea ched.",VAL MBCK="R" S  PSORENW(" DFLG")=1
  7767   "RTN","PSO RENW0",133 ,0)
  7768    .S PSOX=$ E(PSORENW( "NRX #"),$ L(PSORENW( "NRX #")))
  7769   "RTN","PSO RENW0",134 ,0)
  7770    .S PSOREN W("NRX #") =$S(PSOX?1 N:PSORENW( "NRX #")_" A",1:$E(PS ORENW("NRX  #"),1,$L( PSORENW("N RX #"))-1) _$C($A(PSO X)+1))
  7771   "RTN","PSO RENW0",135 ,0)
  7772   RXNX K PSO X
  7773   "RTN","PSO RENW0",136 ,0)
  7774    Q
  7775   "RTN","PSO RENW0",137 ,0)
  7776    ;
  7777   "RTN","PSO RENW0",138 ,0)
  7778   FILDATE ;
  7779   "RTN","PSO RENW0",139 ,0)
  7780    S PSORENW ("IRXN")=P SORENW("OI RXN")
  7781   "RTN","PSO RENW0",140 ,0)
  7782    D NEXT^PS OUTIL(.PSO RENW)
  7783   "RTN","PSO RENW0",141 ,0)
  7784    I PSORENW ("FILL DAT E")<$P(PSO RENW("RX3" ),"^",2) D
  7785   "RTN","PSO RENW0",142 ,0)
  7786    .D RENFDT ^PSOUTIL(. PSORENW)
  7787   "RTN","PSO RENW0",143 ,0)
  7788    .I PSOREN W("FILL DA TE")<DT,PS ORENW("FIL L DATE")<P SORNW("FIL L DATE") S  (Y,PSOREN W("FILL DA TE"))=DT X  ^DD("DD")  S PSORX(" FILL DATE" )=Y K Y
  7789   "RTN","PSO RENW0",144 ,0)
  7790    K PSORENW ("IRXN")
  7791   "RTN","PSO RENW0",145 ,0)
  7792    Q
  7793   "RTN","PSO RENW0",146 ,0)
  7794    ;
  7795   "RTN","PSO RENW0",147 ,0)
  7796   EDIT ;
  7797   "RTN","PSO RENW0",148 ,0)
  7798    K DIR,X,Y
  7799   "RTN","PSO RENW0",149 ,0)
  7800    S DIR(0)= "Y",DIR("B ")=$S($G(D UZ("AG"))' ="I":"Y",$ G(PSEXDT): "Y",1:"N")
  7801   "RTN","PSO RENW0",150 ,0)
  7802    S DIR("A" )="Edit re newed Rx " ,DIR("?")= "Answer YE S to edit  the renewe d Rx, NO n ot to."
  7803   "RTN","PSO RENW0",151 ,0)
  7804    D ^DIR K  DIR S:$D(D IRUT) PSOR ENW("DFLG" )=1
  7805   "RTN","PSO RENW0",152 ,0)
  7806    G:PSORENW ("DFLG") E DITX
  7807   "RTN","PSO RENW0",153 ,0)
  7808    K PSOQUIT ,PSORX("FN ") I Y S P SORNALL=1  D INIT^PSO RENW3,EN^P SOORNE4(.P SORENW) K  PSORNALL S :$G(PSOQUI T) PSORENW ("DFLG")=1  I '$G(PSO RX("FN"))  D FULL^VAL M1 Q
  7809   "RTN","PSO RENW0",154 ,0)
  7810    Q:$G(PSOR X("FN"))
  7811   "RTN","PSO RENW0",155 ,0)
  7812   EDITX S PS OEDT=1,VAL MBCK="Q" K  X,Y,DIRUT ,DTOUT,DUO UT S PSORE NW("QFLG") =1
  7813   "RTN","PSO RENW0",156 ,0)
  7814    Q
  7815   "RTN","PSO RENW0",157 ,0)
  7816    ;
  7817   "RTN","PSO RENW0",158 ,0)
  7818   DELETE ;
  7819   "RTN","PSO RENW0",159 ,0)
  7820    K DA,DIK
  7821   "RTN","PSO RENW0",160 ,0)
  7822    S DA=$O(^ PS(52.5,"B ",PSORENW( "OIRXN"),0 )),DIK="^P S(52.5,"
  7823   "RTN","PSO RENW0",161 ,0)
  7824    D ^DIK K  DIK,DIC
  7825   "RTN","PSO RENW0",162 ,0)
  7826    Q
  7827   "RTN","PSO RENW0",163 ,0)
  7828    ;
  7829   "RTN","PSO RENW0",164 ,0)
  7830   CAN ;
  7831   "RTN","PSO RENW0",165 ,0)
  7832    K REA,DA, MSG
  7833   "RTN","PSO RENW0",166 ,0)
  7834    S REA="C" ,DA=PSOREN W("OIRXN")
  7835   "RTN","PSO RENW0",167 ,0)
  7836    S MSG="Re newed"_$S( $G(PSOFDR) :" from CP RS",1:"")
  7837   "RTN","PSO RENW0",168 ,0)
  7838    S PSCAN(P SORENW("OR X #"))=DA_ "^C"
  7839   "RTN","PSO RENW0",169 ,0)
  7840    D CAN^PSO CAN
  7841   "RTN","PSO RENW0",170 ,0)
  7842    K REA,DA, MSG,PSCAN
  7843   "RTN","PSO RENW0",171 ,0)
  7844    Q
  7845   "RTN","PSO RENW0",172 ,0)
  7846    ;
  7847   "RTN","PSO RENW0",173 ,0)
  7848   DIR ;
  7849   "RTN","PSO RENW0",174 ,0)
  7850    S DIR(0)= "Y",DIR("A ")="CONTIN UE ",DIR(" B")="N"
  7851   "RTN","PSO RENW0",175 ,0)
  7852    S DIR("?" )="Answer  YES to Con tinue, NO  to bypass"
  7853   "RTN","PSO RENW0",176 ,0)
  7854    D ^DIR K  DIR
  7855   "RTN","PSO RENW0",177 ,0)
  7856    S:$D(DIRU T)!('Y) PS ORENW("DFL G")=1
  7857   "RTN","PSO RENW0",178 ,0)
  7858   DIRX K DIR UT,DTOUT,D UOUT,X,Y
  7859   "RTN","PSO RENW0",179 ,0)
  7860    Q
  7861   "RTN","PSO RENW0",180 ,0)
  7862   NEWPT ;
  7863   "RTN","PSO RENW0",181 ,0)
  7864    S PSOQFLG =0 N PSODF N
  7865   "RTN","PSO RENW0",182 ,0)
  7866    S PSODFN= PSORENW("P SODFN")
  7867   "RTN","PSO RENW0",183 ,0)
  7868    D ^PSOPTP ST I PSOQF LG S PSORE NW("DFLG") =1,PSOQFLG =0 G NEWPT X
  7869   "RTN","PSO RENW0",184 ,0)
  7870    D PROFILE ^PSOREF1
  7871   "RTN","PSO RENW0",185 ,0)
  7872   NEWPTX Q
  7873   "RTN","PSO RENW0",186 ,0)
  7874    ;
  7875   "RTN","PSO RENW0",187 ,0)
  7876   EN(PSORENW )        ;  Entry Poi nt for Bat ch Barcode  Option
  7877   "RTN","PSO RENW0",188 ,0)
  7878    S PSORENR X=$G(PSOBB C("OIRXN") )
  7879   "RTN","PSO RENW0",189 ,0)
  7880    I $G(PSOR ENRX) D PS OL^PSSLOCK (PSORENRX)  I '$G(PSO MSG) D  K  DIR,PSOMSG  W ! S DIR ("A")="Pre ss Return  to continu e",DIR(0)= "E",DIR("? ")="Press  Return to  continue"  D ^DIR K D IR W ! Q
  7881   "RTN","PSO RENW0",190 ,0)
  7882    .I $P($G( PSOMSG),"^ ",2)'="" W  $C(7),!!, $P(PSOMSG, "^",2) Q
  7883   "RTN","PSO RENW0",191 ,0)
  7884    .W $C(7), !!,"Anothe r person i s editing  Rx "_$$GET 1^DIQ(52,P SORENRX,.0 1,"I")
  7885   "RTN","PSO RENW0",192 ,0)
  7886    K PSOMSG, PSOBBCLK S  PSOBARCD= 1 D PROCES S K PSOBAR CD
  7887   "RTN","PSO RENW0",193 ,0)
  7888    D KLIB^PS ORENW1
  7889   "RTN","PSO RENW0",194 ,0)
  7890    I $G(PSOR ENRX),$G(P SOBBCLK) D  PSOUL^PSS LOCK(PSORE NRX)
  7891   "RTN","PSO RENW0",195 ,0)
  7892    K PSORENR X,PSOBBCLK
  7893   "RTN","PSO RENW0",196 ,0)
  7894    Q
  7895   "RTN","PSO RENW0",197 ,0)
  7896   CDOSE ;Val idate Dosa ge field o n Renewal,  Copy, Edi t
  7897   "RTN","PSO RENW0",198 ,0)
  7898    ;PSOOCPRX  must be s et to inte rnal Rx nu mber
  7899   "RTN","PSO RENW0",199 ,0)
  7900    Q:'$G(PSO OCPRX)
  7901   "RTN","PSO RENW0",200 ,0)
  7902    N PSOOLP, PSOOKZ
  7903   "RTN","PSO RENW0",201 ,0)
  7904    S PSOOLP= "",(PSOOLP F,PSONOSIG )=0 F  S P SOOLP=$O(^ PSRX(PSOOC PRX,6,PSOO LP)) Q:PSO OLP=""!(PS OOLPF)  I  $P($G(^PSR X(PSOOCPRX ,6,PSOOLP, 0)),"^")[" 0.." S PSO OLPD=$P($G (^(0)),"^" ),PSOOLPF= 1
  7905   "RTN","PSO RENW0",202 ,0)
  7906    Q:PSOOLPF
  7907   "RTN","PSO RENW0",203 ,0)
  7908    S PSOOKZ= 0
  7909   "RTN","PSO RENW0",204 ,0)
  7910    I $P($G(^ PSRX(PSOOC PRX,"SIG") ),"^",2) S  PSOOLP=""  F  S PSOO LP=$O(^PSR X(PSOOCPRX ,"SIG1",PS OOLP)) Q:P SOOLP=""!( PSOOKZ)  I  $G(^PSRX( PSOOCPRX," SIG1",PSOO LP,0))'=""  S PSOOKZ= 1
  7911   "RTN","PSO RENW0",205 ,0)
  7912    I '$P($G( ^PSRX(PSOO CPRX,"SIG" )),"^",2), $P($G(^("S IG")),"^") '="" S PSO OKZ=1
  7913   "RTN","PSO RENW0",206 ,0)
  7914    I 'PSOOKZ  S PSONOSI G=1
  7915   "RTN","PSO RENW0",207 ,0)
  7916    Q
  7917   "RTN","PSO RENW0",208 ,0)
  7918    ;
  7919   "RTN","PSO RENW0",209 ,0)
  7920    ;; ** STA RT NCC REM EDIATION * * 457/RTW
  7921   "RTN","PSO RENW0",210 ,0)
  7922   ALERT ; se nd an aler t to the t hree appro ving team  members
  7923   "RTN","PSO RENW0",211 ,0)
  7924    S XQADATA =PSCLPAT
  7925   "RTN","PSO RENW0",212 ,0)
  7926    S PSOLAST 4=$E($P($G (^DPT(PSCL PAT,0)),"^ ",9),6,9)
  7927   "RTN","PSO RENW0",213 ,0)
  7928    S XQAARCH =1
  7929   "RTN","PSO RENW0",214 ,0)
  7930    S XQAFLG= "D"
  7931   "RTN","PSO RENW0",215 ,0)
  7932    S XQA(PSO 2PH)="",XQ A(PSOUSER) =""
  7933   "RTN","PSO RENW0",216 ,0)
  7934    D NOW^%DT C S Y=% D  DD^%DT S P SCDATE=Y
  7935   "RTN","PSO RENW0",217 ,0)
  7936    S XQAMSG= $$GET1^DIQ (2,PSCLPAT ,.01)_" (" _PSOLAST4_ ")"_": CLO ZAPINE OVE RRIDE RX P ROCESSED   :"_PSCDATE
  7937   "RTN","PSO RENW0",218 ,0)
  7938    S XQAID=" PSI"_","_P SCLPAT
  7939   "RTN","PSO RENW0",219 ,0)
  7940    D SETUP^X QALERT
  7941   "RTN","PSO RENW0",220 ,0)
  7942    W !!,"OVE RRIDE ALER TS HAVE BE EN SENT TO  THE APPRO VING TEAM  MEMBERS",! !
  7943   "RTN","PSO RENW0",221 ,0)
  7944    Q
  7945   "RTN","PSO RENW4")
  7946   0^11^B7597 6559
  7947   "RTN","PSO RENW4",1,0 )
  7948   PSORENW4 ; BIR/SAB -  rx speed r enew ;Jul  24, 2017@1 5:24
  7949   "RTN","PSO RENW4",2,0 )
  7950    ;;7.0;OUT PATIENT PH ARMACY;**1 1,23,27,32 ,37,64,46, 75,71,100, 130,117,15 2,148,264, 225,301,39 0,313,411, 444,457**; DEC 1997;B uild 65
  7951   "RTN","PSO RENW4",3,0 )
  7952    ;External  reference  to ^PSDRU G( support ed by DBIA  221
  7953   "RTN","PSO RENW4",4,0 )
  7954    ;External  reference  to ^PS(50 .7 support ed by DBIA  2223
  7955   "RTN","PSO RENW4",5,0 )
  7956    ;External  reference  to $$L^PS SLOCK supp orted by D BIA 2789
  7957   "RTN","PSO RENW4",6,0 )
  7958    ;External  reference  to UL^PSS LOCK suppo rted by DB IA 2789
  7959   "RTN","PSO RENW4",7,0 )
  7960    ;External  reference  to PSOL^P SSLOCK sup ported by  DBIA 2789
  7961   "RTN","PSO RENW4",8,0 )
  7962    ;External  reference  to PSOUL^ PSSLOCK su pported by  DBIA 2789
  7963   "RTN","PSO RENW4",9,0 )
  7964    ;External  reference  to LK^ORX 2 supporte d by DBIA  867
  7965   "RTN","PSO RENW4",10, 0)
  7966    ;External  reference  to ULK^OR X2 support ed by DBIA  867
  7967   "RTN","PSO RENW4",11, 0)
  7968    ;External  reference  to ^PSRX  supported  by DBIA 35 00
  7969   "RTN","PSO RENW4",12, 0)
  7970    ;External  reference  to ^VA(20 0 supporte d by DBIA  10060
  7971   "RTN","PSO RENW4",13, 0)
  7972   SEL K PSOD RUG ;PSO*7 *301
  7973   "RTN","PSO RENW4",14, 0)
  7974    N PSOSPRN W,PSOIBOLD  S PSOSPRN W=1
  7975   "RTN","PSO RENW4",15, 0)
  7976    I $P(PSOP AR,"^",4)= 0 S VALMSG ="Renewing  is NOT Al lowed. Che ck Site Pa rameters!" ,VALMBCK=" " Q
  7977   "RTN","PSO RENW4",16, 0)
  7978    N VALMCNT  I '$G(PSO CNT) S VAL MSG="This  patient ha s no Presc riptions!" ,VALMBCK=" " Q
  7979   "RTN","PSO RENW4",17, 0)
  7980    S PSOPLCK =$$L^PSSLO CK(PSODFN, 0) I '$G(P SOPLCK) D  LOCK^PSOOR CPY S VALM SG=$S($P($ G(PSOPLCK) ,"^",2)'=" ":$P($G(PS OPLCK),"^" ,2)_" is w orking on  this patie nt.",1:"An other pers on is ente ring order s for this  patient." ) K PSOPLC K S VALMBC K="" Q
  7981   "RTN","PSO RENW4",18, 0)
  7982    K PSOPLCK  S X=PSODF N_";DPT("  D LK^ORX2  I 'Y S VAL MSG="Anoth er person  is enterin g orders f or this pa tient.",VA LMBCK="" D  UL^PSSLOC K(PSODFN)  Q
  7983   "RTN","PSO RENW4",19, 0)
  7984    K PRC,PHI ,PSORX("ED IT"),PSOFD R,DIR,DUOU T,DIRUT,PS ORNSPD S D IR("A")="S elect Orde rs by numb er",DIR(0) ="LO^1:"_P SOCNT D ^D IR I $D(DT OUT)!($D(D UOUT)) K D IR,DIRUT,D TOUT,DUOUT  S VALMBCK ="" G SELQ
  7985   "RTN","PSO RENW4",20, 0)
  7986    ;
  7987   "RTN","PSO RENW4",21, 0)
  7988    ;>> Begin  NCC remed iation *45 7/RJS
  7989   "RTN","PSO RENW4",22, 0)
  7990    D  I $G(P SOERR)=2 S  PSOERR=0  G SELQ
  7991   "RTN","PSO RENW4",23, 0)
  7992    .N PSDRGI EN,ORDLN S  ORDLN=$G( PSOLST(+Y) ) Q:+ORDLN '=52
  7993   "RTN","PSO RENW4",24, 0)
  7994    .S PSDRGI EN=$$GET1^ DIQ(52,+$P (ORDLN,"^" ,2),6) Q:' PSDRGIEN
  7995   "RTN","PSO RENW4",25, 0)
  7996    .I $$GET1 ^DIQ(50,PS DRGIEN,17. 5)="PSOCLO 1" D  S PS OERR=2
  7997   "RTN","PSO RENW4",26, 0)
  7998    ..N Y,ORU B S Y("1") ="^^Renew^ RN",ORUB=1  D NS^XQOR M4
  7999   "RTN","PSO RENW4",27, 0)
  8000    ..K DIR S  DIR(0)="E ",DIR("A") ="Press Re turn to Co ntinue" D  ^DIR K DIR ,DTOUT,DUO UT,DIRUT
  8001   "RTN","PSO RENW4",28, 0)
  8002    ;<< END N CC remedia tion *457/ RJS
  8003   "RTN","PSO RENW4",29, 0)
  8004    ;
  8005   "RTN","PSO RENW4",30, 0)
  8006    K DIR,DIR UT,DTOUT,P SOOELSE,DT OUT I +Y S  (SPEED,PS OOELSE,PSO RNSPD)=1 D  FULL^VALM 1 S LST=Y  D
  8007   "RTN","PSO RENW4",31, 0)
  8008    .S (PSODI R("DFLG"), PSODIR("FI ELD"))=0,P SOOPT=3,(P SORENW("DF LG"),PSORE NW("QFLG") ,PSORX("DF LG"))=0 D  INIT Q:PSO RENW("DFLG ")
  8009   "RTN","PSO RENW4",32, 0)
  8010    .F ORD=1: 1:$L(LST," ,") Q:$P(L ST,",",ORD )']""  S O RN=$P(LST, ",",ORD) D :+PSOLST(O RN)=52 PRO CESS S (PS OQUIT,PSOR ENW("DFLG" ),POERR,PO ERR("DFLG" ),PSORX("D FLG"))=0
  8011   "RTN","PSO RENW4",33, 0)
  8012    I '$G(PSO OELSE) S V ALMBCK=""  G SELQ
  8013   "RTN","PSO RENW4",34, 0)
  8014    S VALMBCK ="R"
  8015   "RTN","PSO RENW4",35, 0)
  8016    D ^PSOBUI LD,BLD^PSO ORUT1 K DI R,DIRUT,DT OUT,DUOUT, LST,ORD,IE N,ORN,RPH, ST,REFL,RE F,PSOACT,O RSV,PSORNW ,PSORENW,P SONO,PSOCO ,PSOCU,PSO DIR,DSMSG, SPEED,PSOR ENW,PSOOEL SE,PSOOPT, PSORX("FIL L DATE"),P SORX("ISSU E DATE"),P SOID,PSOMS G,PSORX("D FLG"),PSOQ TY
  8017   "RTN","PSO RENW4",36, 0)
  8018   SELQ K PSO RNSPD,RTE, DRET,PRC,P HI,PSOSPRN W,X S X=PS ODFN_";DPT (" D ULK^O RX2,UL^PSS LOCK(PSODF N),CLEAN^P SOVER1
  8019   "RTN","PSO RENW4",37, 0)
  8020    Q
  8021   "RTN","PSO RENW4",38, 0)
  8022    ;
  8023   "RTN","PSO RENW4",39, 0)
  8024   PROCESS ;  Process on e order at  a time
  8025   "RTN","PSO RENW4",40, 0)
  8026    I $$LMREJ ^PSOREJU1( $P(PSOLST( ORN),"^",2 )) D  K DI R,PSOMSG D  PAUSE^VAL M1 Q
  8027   "RTN","PSO RENW4",41, 0)
  8028    .W $C(7), !,"Rx "_$$ GET1^DIQ(5 2,$P(PSOLS T(ORN),"^" ,2),.01)_"  has OPEN/ UNRESOLVED  3rd Party  Payer Rej ects!"
  8029   "RTN","PSO RENW4",42, 0)
  8030    I $$TITRX ^PSOUTL($P (PSOLST(OR N),"^",2)) ="t" D  K  DIR,PSOMSG  D PAUSE^V ALM1 Q
  8031   "RTN","PSO RENW4",43, 0)
  8032    .W $C(7), !,"Rx# "_$ $GET1^DIQ( 52,$P(PSOL ST(ORN),"^ ",2),.01)_ " is marke d as 'Titr ation Rx'  and cannot  be renewe d."
  8033   "RTN","PSO RENW4",44, 0)
  8034    D PSOL^PS SLOCK($P(P SOLST(ORN) ,"^",2)) I  '$G(PSOMS G) W $C(7) ,!!,$S($P( $G(PSOMSG) ,"^",2)'=" ":$P($G(PS OMSG),"^", 2),1:"Anot her person  is editin g Rx "_$$G ET1^DIQ(52 ,$P(PSOLST (ORN),"^", 2),.01,"I" )),! K DIR ,PSOMSG D  PAUSE^VALM 1 Q
  8035   "RTN","PSO RENW4",45, 0)
  8036    K RET,DRE T,PRC,PHI  N PSORXN S  (PSORENW( "OIRXN"),P SORXN)=$P( PSOLST(ORN ),"^",2),P SOFROM="NE W"
  8037   "RTN","PSO RENW4",46, 0)
  8038    N ARR,RXN KEY D GETS ^DIQ(52,PS ORXN,"**", "I","ARR")  S RXNKEY= PSORXN_","
  8039   "RTN","PSO RENW4",47, 0)
  8040    ;S PSOREN W("RX0")=^ PSRX(PSORX N,0),PSORE NW("RX2")= ^(2),PSORE NW("RX3")= ^(3)
  8041   "RTN","PSO RENW4",48, 0)
  8042    D
  8043   "RTN","PSO RENW4",49, 0)
  8044    .N J S (P SORENW("RX 0"),PSOREN W("RX2"),P SORENW("RX 3"))=""
  8045   "RTN","PSO RENW4",50, 0)
  8046    .F J=.01, 2,3,4,5,6, 7,8,9,11,1 ,13,14,16, 17,10.6,10 .3 S PSORE NW("RX0")= PSORENW("R X0")_$G(AR R(52,RXNKE Y,J,"I"))_ U
  8047   "RTN","PSO RENW4",51, 0)
  8048    .F J=21,2 2,23,24,25 ,26,27,28, 20,104,29, 30,31,32.2 ,32.1,32.3  S PSORENW ("RX2")=PS ORENW("RX2 ")_$G(ARR( 52,RXNKEY, J,"I"))_U
  8049   "RTN","PSO RENW4",52, 0)
  8050    .F J=101, 102,109,10 2.1,26.1,3 4.1,12,102 .2,112,127  S PSORENW ("RX3")=PS ORENW("RX3 ")_$G(ARR( 52,RXNKEY, J,"I"))_U
  8051   "RTN","PSO RENW4",53, 0)
  8052    S PSORENW ("STA")=AR R(52,RXNKE Y,100,"I")   ;^("STA" )
  8053   "RTN","PSO RENW4",54, 0)
  8054    S PSORENW ("TN")=ARR (52,RXNKEY ,6.5,"I")    ;$G(^("T N"))
  8055   "RTN","PSO RENW4",55, 0)
  8056    S SIGOK=A RR(52,RXNK EY,10.1,"I ") I SIGOK  D
  8057   "RTN","PSO RENW4",56, 0)
  8058    .N I F I= 1:1:SIGOK  S SIG(I)=$ G(ARR(52.0 4,I_","_RX NKEY,.01," I"))
  8059   "RTN","PSO RENW4",57, 0)
  8060    S PSOIBOL D=$G(PSORE NW("OIRXN" )) D SETIB ^PSORENW1
  8061   "RTN","PSO RENW4",58, 0)
  8062    I '$G(PSO RENW("PROV IDER")) D
  8063   "RTN","PSO RENW4",59, 0)
  8064    .S PSOREN W("PROVIDE R")=ARR(52 ,RXNKEY,4, "I")  ;$P( PSORENW("R X0"),"^",4 )
  8065   "RTN","PSO RENW4",60, 0)
  8066    .S:ARR(52 ,RXNKEY,10 9,"I") PSO RENW("COSI GNING PROV IDER")=ARR (52,RXNKEY ,109,"I")
  8067   "RTN","PSO RENW4",61, 0)
  8068    S PSORX(" PROVIDER N AME")=$$GE T1^DIQ(200 ,ARR(52,RX NKEY,4,"I" ),.01)
  8069   "RTN","PSO RENW4",62, 0)
  8070    I '$G(PSO RENW("CLIN IC")) S PS ORENW("CLI NIC")=ARR( 52,RXNKEY, 5,"I")
  8071   "RTN","PSO RENW4",63, 0)
  8072    S PSORENW ("REMARKS" )="RENEWED  FROM RX #  "_ARR(52, RXNKEY,.01 ,"I")
  8073   "RTN","PSO RENW4",64, 0)
  8074    S PSORENW ("SIG")=AR R(52,RXNKE Y,10,"I")
  8075   "RTN","PSO RENW4",65, 0)
  8076    S PSORENW ("PSODFN") =ARR(52,RX NKEY,2,"I" )
  8077   "RTN","PSO RENW4",66, 0)
  8078    S PSORENW ("ORX #")= ARR(52,RXN KEY,.01,"I ")
  8079   "RTN","PSO RENW4",67, 0)
  8080    S PSORENW ("DRUG IEN ")=ARR(52, RXNKEY,6," I")
  8081   "RTN","PSO RENW4",68, 0)
  8082    S PSORENW ("QTY")=AR R(52,RXNKE Y,7,"I")
  8083   "RTN","PSO RENW4",69, 0)
  8084    S PSORENW ("INS")=$S ($G(PSOREN W("ENT"))] "":PSORENW ("ENT"),1: ARR(52,RXN KEY,114,"I "))
  8085   "RTN","PSO RENW4",70, 0)
  8086    S:'$G(PSO RENW("ENT" )) PSORENW ("ENT")=0
  8087   "RTN","PSO RENW4",71, 0)
  8088    N I S I=" " F  S I=$ O(ARR(52.0 113,I)) Q: 'I  D
  8089   "RTN","PSO RENW4",72, 0)
  8090    .S PSOREN W("ENT")=P SORENW("EN T")+1,PSOR ENW("DOSE" ,PSORENW(" ENT"))=ARR (52.0113,I ,.01,"I")
  8091   "RTN","PSO RENW4",73, 0)
  8092    .S PSOREN W("UNITS", PSORENW("E NT"))=ARR( 52.0113,I, 2,"I")
  8093   "RTN","PSO RENW4",74, 0)
  8094    .S PSOREN W("DOSE OR DERED",PSO RENW("ENT" ))=ARR(52. 0113,I,1," I")
  8095   "RTN","PSO RENW4",75, 0)
  8096    .S PSOREN W("ROUTE", PSORENW("E NT"))=ARR( 52.0113,I, 6,"I")
  8097   "RTN","PSO RENW4",76, 0)
  8098    .S PSOREN W("SCHEDUL E",PSORENW ("ENT"))=A RR(52.0113 ,I,7,"I")
  8099   "RTN","PSO RENW4",77, 0)
  8100    .S PSOREN W("DURATIO N",PSORENW ("ENT"))=A RR(52.0113 ,I,4,"I")
  8101   "RTN","PSO RENW4",78, 0)
  8102    .S PSOREN W("CONJUNC TION",PSOR ENW("ENT") )=ARR(52.0 113,I,5,"I ")
  8103   "RTN","PSO RENW4",79, 0)
  8104    .S PSOREN W("NOUN",P SORENW("EN T"))=ARR(5 2.0113,I,3 ,"I")
  8105   "RTN","PSO RENW4",80, 0)
  8106    .S PSOREN W("VERB",P SORENW("EN T"))=ARR(5 2.0113,I,8 ,"I")
  8107   "RTN","PSO RENW4",81, 0)
  8108    .I ARR(52 .0113,I,9, "I")]"" S  PSORENW("O DOSE",PSOR ENW("ENT") )=ARR(52.0 113,I,9,"I ")
  8109   "RTN","PSO RENW4",82, 0)
  8110    I $$GET1^ DIQ(50,+$G (PSORENW(" DRUG IEN") ),17.5)="P SOCLO1" N  PSON S PSO N=0 D  I P SON K PSON  D POZ,KLI B^PSORENW1  D PSOUL^P SSLOCK($P( PSOLST(ORN ),"^",2))  Q
  8111   "RTN","PSO RENW4",83, 0)
  8112    .I '$L($$ GET1^DIQ(2 00,PSORENW ("PROVIDER "),53.2)), '$L($$GET1 ^DIQ(200,P SORENW("PR OVIDER"),5 3.3)) D  Q
  8113   "RTN","PSO RENW4",84, 0)
  8114    ..S PSON= 1 W $C(7), !!,"Only p roviders w ith DEA# o r a VA# ca n write pr escription s for cloz apine.",!
  8115   "RTN","PSO RENW4",85, 0)
  8116    .I '$$FIN D1^DIC(200 .051,","_P SORENW("PR OVIDER")_" ,","X","YS CL AUTHORI ZED") D 
  8117   "RTN","PSO RENW4",86, 0)
  8118    ..S PSON= 1 W $C(7), !!,"Provid er must ho ld YSCL AU THORIZED k ey to writ e prescrip tions for  clozapine. ",!
  8119   "RTN","PSO RENW4",87, 0)
  8120    I $G(PSOR NW("MAIL/W INDOW"))]" " S PSOREN W("MAIL/WI NDOW")=PSO RNW("MAIL/ WINDOW")
  8121   "RTN","PSO RENW4",88, 0)
  8122    I $D(ARR( 52.02)) D   K T
  8123   "RTN","PSO RENW4",89, 0)
  8124    .S T="" F   S T=$O(A RR(52.02,T )) Q:'T  S  PHI(+T)=A RR(52.02,T ,.01,"I")
  8125   "RTN","PSO RENW4",90, 0)
  8126    W !!,"Now  Renewing  Rx # "_PSO RENW("ORX  #")_"   Dr ug: "_$$GE T1^DIQ(50, +$G(PSOREN W("DRUG IE N")),.01), !
  8127   "RTN","PSO RENW4",91, 0)
  8128    I '$$GET1 ^DIQ(50,+$ G(PSORENW( "DRUG IEN" )),2.1,"I" ) D  G:$G( PSORENW("D FLG")) PRO CESSX
  8129   "RTN","PSO RENW4",92, 0)
  8130    .I ARR(52 ,RXNKEY,39 .2,"I") S  PSODRUG("O I")=ARR(52 ,RXNKEY,39 .2,"I"),PS ODRUG("OIN ")=$$GET1^ DIQ(50.7,A RR(52,RXNK EY,39.2,"I "),.01) Q
  8131   "RTN","PSO RENW4",93, 0)
  8132    .W !!,"Ca nnot Renew !!  No Pha rmacy Orde rable Item !" S VALMS G="Cannot  Renew!!  N o Pharmacy  Orderable  Item!",PS ORX("DFLG" )=1
  8133   "RTN","PSO RENW4",94, 0)
  8134    D POZ
  8135   "RTN","PSO RENW4",95, 0)
  8136    D CHECK^P SORENW0 G: PSORENW("D FLG") PROC ESSX
  8137   "RTN","PSO RENW4",96, 0)
  8138    D FILDATE ^PSORENW0
  8139   "RTN","PSO RENW4",97, 0)
  8140    D DRUG^PS ORENW0 G:P SORENW("DF LG") PROCE SSX
  8141   "RTN","PSO RENW4",98, 0)
  8142    D RXN^PSO RENW0 G:PS ORENW("DFL G") PROCES SX
  8143   "RTN","PSO RENW4",99, 0)
  8144    D STOP^PS ORENW1
  8145   "RTN","PSO RENW4",100 ,0)
  8146   DSPL K PSO EDT,PSOLM, BBFLG,BBRX ,BINGCRT,B INGRTE S P SDY=PSOREN W("DAYS SU PPLY"),PSR F=PSORENW( "# OF REFI LLS")
  8147   "RTN","PSO RENW4",101 ,0)
  8148    F DEA=1:1  Q:$E(PSOD RUG("DEA") ,DEA)=""   I $E(+PSOD RUG("DEA") ,DEA)>1,$E (+PSODRUG( "DEA"),DEA )<6 S PSOD IR("CS")=1
  8149   "RTN","PSO RENW4",102 ,0)
  8150    N MXRFLS
  8151   "RTN","PSO RENW4",103 ,0)
  8152    S MXRFLS= $$MAXNUMRF ^PSOUTIL(+ $G(PSODRUG ("IEN")),+ $G(PSORENW ("DAYS SUP PLY")),+AR R(52,RXNKE Y,3,"I"),. CLOZPAT)
  8153   "RTN","PSO RENW4",104 ,0)
  8154    I MXRFLS< PSORENW("#  OF REFILL S") S PSOR ENW("# OF  REFILLS")= MXRFLS
  8155   "RTN","PSO RENW4",105 ,0)
  8156    D DSPLY^P SORENW3 G: PSORENW("D FLG") PROC ESSX
  8157   "RTN","PSO RENW4",106 ,0)
  8158    D:$$FIND1 ^DIC(200.0 51,","_DUZ _",","X"," PSORPH")!( '$P(PSOPAR ,"^",2)) V ER1^PSOORN E4(.PSOREN W) G:PSORE NW("DFLG") =1 PROCESS X
  8159   "RTN","PSO RENW4",107 ,0)
  8160    I $G(PSOQ TY) D QTY^ PSODIR1(.P SORENW) G: PSORENW("D FLG")=1 PR OCESSX
  8161   "RTN","PSO RENW4",108 ,0)
  8162    D EN^PSOR N52(.PSORE NW)
  8163   "RTN","PSO RENW4",109 ,0)
  8164    D RNPSOSD ^PSOUTIL
  8165   "RTN","PSO RENW4",110 ,0)
  8166    D CAN^PSO RENW0,DCOR D^PSONEW2
  8167   "RTN","PSO RENW4",111 ,0)
  8168    S PSORENW ("# OF REF ILLS")=PSR F K PSDY,P SRF,PSODIR ("CS"),DEA ,PSORENW(" ENT")
  8169   "RTN","PSO RENW4",112 ,0)
  8170    S BBRN1=$ $FIND1^DIC (52,,"X",P SORENW("NR X #")) I $ $GET1^DIQ( 52,BBRN1,1 1,"I")["W"  S BINGCRT ="Y",BINGR TE="W",BBF LG=1,BBRX( 1)=$G(BBRX (1))_BBRN1 _","
  8171   "RTN","PSO RENW4",113 ,0)
  8172   PROCESSX I  PSORENW(" DFLG") D
  8173   "RTN","PSO RENW4",114 ,0)
  8174    .K PHI,PR C,PSODRUG, SIG,PSORXE D,SIGOK
  8175   "RTN","PSO RENW4",115 ,0)
  8176    .K PSOREN W("DOSE"), PSORENW("D URATION"), PSORENW("D RUG IEN"), PSORENW("E NT"),PSORE NW("INS"), PSORENW("N OUN"),PSOR ENW("ROUTE "),PSORENW ("SCHEDULE "),PSORENW ("SIG"),PS ORENW("VER B"),PSOREN W("UNITS")
  8177   "RTN","PSO RENW4",116 ,0)
  8178    .I '$G(PO ERR) W !,$ C(7),"Rx N OT RENEWED . RENEWED  RX DELETED ",! S POER R("DFLG")= 1 D CLEAN^ PSOVER1,PO Z
  8179   "RTN","PSO RENW4",117 ,0)
  8180    K PSORDLO K I PSOREN W("DFLG")  S PSORDLOK =1
  8181   "RTN","PSO RENW4",118 ,0)
  8182    D:$G(PSOR ENW("OLD F ILL DATE") )]"" SUSDA TEK^PSOUTI L(.PSORENW )
  8183   "RTN","PSO RENW4",119 ,0)
  8184    K BBRN,BB RN1,PSODRU G,PSORX("P ROVIDER NA ME"),PSORX ("CLINIC")
  8185   "RTN","PSO RENW4",120 ,0)
  8186    K PSOEDT, PSOLM S:$G (PSORENW(" FROM"))=""  (PSORENW( "DFLG"),PS ORENW("QFL G"))=0
  8187   "RTN","PSO RENW4",121 ,0)
  8188    I $G(PSOR DLOK) D PS OUL^PSSLOC K($P(PSOLS T(ORN),"^" ,2))
  8189   "RTN","PSO RENW4",122 ,0)
  8190    D KLIB^PS ORENW1
  8191   "RTN","PSO RENW4",123 ,0)
  8192    K PSORDLO K
  8193   "RTN","PSO RENW4",124 ,0)
  8194    S RXN=$O( ^TMP("PSOR XN",$J,0))  I RXN N Z RXN S ZRXN =RXN D
  8195   "RTN","PSO RENW4",125 ,0)
  8196    .S RXN1=^ TMP("PSORX N",$J,RXN)  D EN^PSOH LSN1(RXN,$ P(RXN1,"^" ),$P(RXN1, "^",2),"", $P(RXN1,"^ ",3))
  8197   "RTN","PSO RENW4",126 ,0)
  8198    .I $P(^PS RX(RXN,"ST A"),"^")=5  D EN^PSOH LSN1(RXN," SC","ZS",$ P(RXN1,"^" ,4))
  8199   "RTN","PSO RENW4",127 ,0)
  8200    .;saves d rug allerg y order ch ks pso*7*3 90
  8201   "RTN","PSO RENW4",128 ,0)
  8202    .I $D(^TM P("PSODAOC ",$J,"ALLE RGY")) D 
  8203   "RTN","PSO RENW4",129 ,0)
  8204    ..I $G(PS ORX("DFLG" ))!$G(PSOR ENW("DFLG" )) K ^TMP( "PSODAOC", $J) Q
  8205   "RTN","PSO RENW4",130 ,0)
  8206    ..S RXN=Z RXN,PSODAO C="Rx Back door "_$S( $$GET1^DIQ (52,RXN,10 0,"I")=4:" NON-VERIFI ED ",1:"") _"SPEED RE NEW Order  Acceptance _OP"
  8207   "RTN","PSO RENW4",131 ,0)
  8208    ..S PSOAR ENW=1 D DA OC^PSONEW  K PSOARENW
  8209   "RTN","PSO RENW4",132 ,0)
  8210    K ZRXN,RX N,RXN1,^TM P("PSORXN" ,$J),^TMP( "PSODAOC", $J)
  8211   "RTN","PSO RENW4",133 ,0)
  8212    Q
  8213   "RTN","PSO RENW4",134 ,0)
  8214   INIT ;
  8215   "RTN","PSO RENW4",135 ,0)
  8216    D ASK Q:P SORENW("DF LG")
  8217   "RTN","PSO RENW4",136 ,0)
  8218    D NOORE^P SONEW(.PSO RENW) Q:PS ORENW("DFL G")
  8219   "RTN","PSO RENW4",137 ,0)
  8220    Q
  8221   "RTN","PSO RENW4",138 ,0)
  8222   ASK ;upfro nt questio ns
  8223   "RTN","PSO RENW4",139 ,0)
  8224    W !! D IS SDT^PSODIR 2(.PSORENW ) Q:PSOREN W("DFLG")   S PSORENW ("ISSUE DA TE")=PSOID
  8225   "RTN","PSO RENW4",140 ,0)
  8226    D FILLDT^ PSODIR2(.P SORENW) K  PSONEW("DA YS SUPPLY" ),PSONEW(" # OF REFIL LS") Q:PSO RENW("DFLG ")
  8227   "RTN","PSO RENW4",141 ,0)
  8228    S PSORNW( "FILL DATE ")=PSORENW ("FILL DAT E")
  8229   "RTN","PSO RENW4",142 ,0)
  8230    D MW^PSOD IR2(.PSORE NW) Q:PSOR ENW("DFLG" )
  8231   "RTN","PSO RENW4",143 ,0)
  8232    D PTSTAT^ PSODIR1(.P SORENW) Q: PSORENW("D FLG")
  8233   "RTN","PSO RENW4",144 ,0)
  8234    D DAYS^PS ODIR1(.PSO RENW) Q:PS ORENW("DFL G")
  8235   "RTN","PSO RENW4",145 ,0)
  8236    S PSODRUG ("DEA")=0  D REFILL^P SODIR1(.PS ORENW) K P SODRUG("DE A") Q:PSOR ENW("DFLG" )
  8237   "RTN","PSO RENW4",146 ,0)
  8238    K DIR,DIR UT S DIR(0 )="Y",DIR( "B")="No", DIR("A")=" Do you wan t to edit  Renewed Rx (s) QTY "  D ^DIR I $ D(DIRUT) S  PSORENW(" DFLG")=1 K  DIR,DIRUT  Q
  8239   "RTN","PSO RENW4",147 ,0)
  8240    S PSOQTY= Y K DIR,DI RUT,Y
  8241   "RTN","PSO RENW4",148 ,0)
  8242    D CLINIC^ PSODIR2(.P SORENW) Q: PSORENW("D FLG")
  8243   "RTN","PSO RENW4",149 ,0)
  8244    D PROV^PS ODIR(.PSOR ENW) S:PSO RENW("DFLG ") PSORENW ("DFLG")=0
  8245   "RTN","PSO RENW4",150 ,0)
  8246    Q
  8247   "RTN","PSO RENW4",151 ,0)
  8248    ;
  8249   "RTN","PSO RENW4",152 ,0)
  8250   POZ ;
  8251   "RTN","PSO RENW4",153 ,0)
  8252    K DIR S D IR(0)="E", DIR("A")=" Press Retu rn to Cont inue" D ^D IR K DIR,D IRUT,DTOUT
  8253   "RTN","PSO RENW4",154 ,0)
  8254    Q
  8255   "VER")
  8256   8.0^22.2
  8257   "^DD",52.5 2,52.52,4, 0)
  8258   REASON FOR  OVERRIDE^ RP52.54'^P S(52.54,^0 ;5^Q
  8259   "^DD",52.5 2,52.52,4, 3)
  8260   Enter the  reason for  the overr ide of thi s prescrip tion.
  8261   "^DD",52.5 2,52.52,4, 8.5)
  8262   ^
  8263   "^DD",52.5 2,52.52,4, 9)
  8264   ^
  8265   "^DD",52.5 2,52.52,4, 21,0)
  8266   ^.001^1^1^ 3160701^^^ ^
  8267   "^DD",52.5 2,52.52,4, 21,1,0)
  8268   This field  records t he reason  as a point er to file  #52.54.
  8269   "^DD",52.5 2,52.52,4, "DT")
  8270   3160218
  8271   "^DD",52.5 2,52.52,5, 0)
  8272   COMMENTS^R FIX^^0;6^K :$L(X)>200 !($L(X)<5) !(X?." ")  X
  8273   "^DD",52.5 2,52.52,5, 3)
  8274   Enter comm ents descr ibing the  reason ove rride the  lockout.   Input must  be betwee n 5 and 20 0 characte rs in leng th.
  8275   "^DD",52.5 2,52.52,5, 9)
  8276   ^
  8277   "^DD",52.5 2,52.52,5, 21,0)
  8278   ^.001^1^1^ 3160315^^^ ^
  8279   "^DD",52.5 2,52.52,5, 21,1,0)
  8280   This is an y informat ion about  why the pr escription  was fille d.
  8281   "^DD",52.5 2,52.52,5, "DT")
  8282   2900302
  8283   "^DD",52.5 2,52.52,6, 0)
  8284   SECOND APP ROVING TEA M MEMBER^R P200'^VA(2 00,^1;1^Q
  8285   "^DD",52.5 2,52.52,6, 3)
  8286   Enter the  name of th e second a pproving t eam member .
  8287   "^DD",52.5 2,52.52,6, 21,0)
  8288   ^.001^1^1^ 3160310^^^
  8289   "^DD",52.5 2,52.52,6, 21,1,0)
  8290   This field  records t he name as  a pointer  to file 2 00).
  8291   "^DD",52.5 2,52.52,6, "DT")
  8292   3160516
  8293   "^DD",52.5 4,52.54,0)
  8294   FIELD^^.01 ^1
  8295   "^DD",52.5 4,52.54,0, "DT")
  8296   3151223
  8297   "^DD",52.5 4,52.54,0, "IX","B",5 2.54,.01)
  8298  
  8299   "^DD",52.5 4,52.54,0, "NM","CLOZ APINE OVER RIDE REASO NS")
  8300  
  8301   "^DD",52.5 4,52.54,0, "PT",52.52 ,4)
  8302  
  8303   "^DD",52.5 4,52.54,0, "PT",53.8, 4)
  8304  
  8305   "^DD",52.5 4,52.54,0, "VRPK")
  8306   PSO
  8307   "^DD",52.5 4,52.54,.0 1,0)
  8308   OVERRIDE R EASON^RF^^ 0;1^K:$L(X )>100!($L( X)<3)!'(X' ?1P.E) X
  8309   "^DD",52.5 4,52.54,.0 1,1,0)
  8310   ^.1
  8311   "^DD",52.5 4,52.54,.0 1,1,1,0)
  8312   52.54^B
  8313   "^DD",52.5 4,52.54,.0 1,1,1,1)
  8314   S ^PS(52.5 4,"B",$E(X ,1,30),DA) =""
  8315   "^DD",52.5 4,52.54,.0 1,1,1,2)
  8316   K ^PS(52.5 4,"B",$E(X ,1,30),DA)
  8317   "^DD",52.5 4,52.54,.0 1,3)
  8318   Enter the  reason for  the overr ide (input  should be  3 to 100  characters  in length ).
  8319   "^DD",52.5 4,52.54,.0 1,21,0)
  8320   ^^1^1^3160 310^
  8321   "^DD",52.5 4,52.54,.0 1,21,1,0)
  8322   This field  contains  the reason  for the C lozapine l ockout ove rride.
  8323   "^DD",52.5 4,52.54,.0 1,"DT")
  8324   3160310
  8325   "^DIC",52. 54,52.54,0 )
  8326   CLOZAPINE  OVERRIDE R EASONS^52. 54
  8327   "^DIC",52. 54,52.54,0 ,"GL")
  8328   ^PS(52.54,
  8329   "^DIC",52. 54,52.54," %D",0)
  8330   ^^2^2^3160 310^
  8331   "^DIC",52. 54,52.54," %D",1,0)
  8332   This file  contains t he possibl e reasons  for overri ding a Clo zapine 
  8333   "^DIC",52. 54,52.54," %D",2,0)
  8334   prescripti on or orde r lockout.
  8335   "^DIC",52. 54,"B","CL OZAPINE OV ERRIDE REA SONS",52.5 4)
  8336  
  8337   **INSTALL  NAME**
  8338   PSJ*5.0*32 7
  8339   "BLD",9848 ,0)
  8340   PSJ*5.0*32 7^INPATIEN T MEDICATI ONS^0^3171 129^y
  8341   "BLD",9848 ,1,0)
  8342   ^^1^1^3161 228^^
  8343   "BLD",9848 ,1,1,0)
  8344   MENTAL HEA LTH NCC PR OJECT 5.01
  8345   "BLD",9848 ,4,0)
  8346   ^9.64PA^55 ^2
  8347   "BLD",9848 ,4,53.8,0)
  8348   53.8
  8349   "BLD",9848 ,4,53.8,22 2)
  8350   y^y^f^^^^n
  8351   "BLD",9848 ,4,55,0)
  8352   55
  8353   "BLD",9848 ,4,55,2,0)
  8354   ^9.641^55. 06^1
  8355   "BLD",9848 ,4,55,2,55 .06,0)
  8356   UNIT DOSE   (sub-file )
  8357   "BLD",9848 ,4,55,2,55 .06,1,0)
  8358   ^9.6411^30 1^1
  8359   "BLD",9848 ,4,55,2,55 .06,1,301, 0)
  8360   CLOZAPINE  DOSAGE (MG /DAY)
  8361   "BLD",9848 ,4,55,222)
  8362   y^y^p^^^^n ^^n
  8363   "BLD",9848 ,4,55,224)
  8364  
  8365   "BLD",9848 ,4,"APDD", 55,55.06)
  8366  
  8367   "BLD",9848 ,4,"APDD", 55,55.06,3 01)
  8368  
  8369   "BLD",9848 ,4,"B",53. 8,53.8)
  8370  
  8371   "BLD",9848 ,4,"B",55, 55)
  8372  
  8373   "BLD",9848 ,6.3)
  8374   64
  8375   "BLD",9848 ,"ABPKG")
  8376   n
  8377   "BLD",9848 ,"INID")
  8378   ^n
  8379   "BLD",9848 ,"INIT")
  8380   ADDMENUS^P SJ327P
  8381   "BLD",9848 ,"KRN",0)
  8382   ^9.67PA^77 9.2^20
  8383   "BLD",9848 ,"KRN",.4, 0)
  8384   .4
  8385   "BLD",9848 ,"KRN",.40 1,0)
  8386   .401
  8387   "BLD",9848 ,"KRN",.40 2,0)
  8388   .402
  8389   "BLD",9848 ,"KRN",.40 3,0)
  8390   .403
  8391   "BLD",9848 ,"KRN",.5, 0)
  8392   .5
  8393   "BLD",9848 ,"KRN",.84 ,0)
  8394   .84
  8395   "BLD",9848 ,"KRN",3.6 ,0)
  8396   3.6
  8397   "BLD",9848 ,"KRN",3.8 ,0)
  8398   3.8
  8399   "BLD",9848 ,"KRN",9.2 ,0)
  8400   9.2
  8401   "BLD",9848 ,"KRN",9.8 ,0)
  8402   9.8
  8403   "BLD",9848 ,"KRN",9.8 ,"NM",0)
  8404   ^9.68A^38^ 31
  8405   "BLD",9848 ,"KRN",9.8 ,"NM",1,0)
  8406   PSJOE^^0^B 117611925
  8407   "BLD",9848 ,"KRN",9.8 ,"NM",2,0)
  8408   PSGOE42^^0 ^B12999428
  8409   "BLD",9848 ,"KRN",9.8 ,"NM",3,0)
  8410   PSJCLOZ^^0 ^B19497331 4
  8411   "BLD",9848 ,"KRN",9.8 ,"NM",4,0)
  8412   PSGOE7^^0^ B44925465
  8413   "BLD",9848 ,"KRN",9.8 ,"NM",6,0)
  8414   PSGOE41^^0 ^B11596164 8
  8415   "BLD",9848 ,"KRN",9.8 ,"NM",7,0)
  8416   PSJRXLAB^^ 0^B3774089 8
  8417   "BLD",9848 ,"KRN",9.8 ,"NM",8,0)
  8418   PSJCLOLS^^ 0^B1014058 5
  8419   "BLD",9848 ,"KRN",9.8 ,"NM",9,0)
  8420   PSGOEV^^0^ B98579383
  8421   "BLD",9848 ,"KRN",9.8 ,"NM",12,0 )
  8422   PSGOE92^^0 ^B47389177
  8423   "BLD",9848 ,"KRN",9.8 ,"NM",13,0 )
  8424   PSGOER^^0^ B90736774
  8425   "BLD",9848 ,"KRN",9.8 ,"NM",14,0 )
  8426   PSGOER0^^0 ^B25398399
  8427   "BLD",9848 ,"KRN",9.8 ,"NM",15,0 )
  8428   PSGOE8^^0^ B59653552
  8429   "BLD",9848 ,"KRN",9.8 ,"NM",16,0 )
  8430   PSGOE81^^0 ^B13731951 2
  8431   "BLD",9848 ,"KRN",9.8 ,"NM",17,0 )
  8432   PSGOE82^^0 ^B40950850
  8433   "BLD",9848 ,"KRN",9.8 ,"NM",18,0 )
  8434   PSJCOM^^0^ B47901552
  8435   "BLD",9848 ,"KRN",9.8 ,"NM",19,0 )
  8436   PSGOT^^0^B 26696723
  8437   "BLD",9848 ,"KRN",9.8 ,"NM",20,0 )
  8438   PSJOE1^^0^ B38671512
  8439   "BLD",9848 ,"KRN",9.8 ,"NM",21,0 )
  8440   PSGOD^^0^B 38576760
  8441   "BLD",9848 ,"KRN",9.8 ,"NM",23,0 )
  8442   PSGPEN^^0^ B58973143
  8443   "BLD",9848 ,"KRN",9.8 ,"NM",24,0 )
  8444   PSGNE3^^0^ B96245293
  8445   "BLD",9848 ,"KRN",9.8 ,"NM",25,0 )
  8446   PSGOEF^^0^ B137183745
  8447   "BLD",9848 ,"KRN",9.8 ,"NM",26,0 )
  8448   PSGON^^0^B 39542310
  8449   "BLD",9848 ,"KRN",9.8 ,"NM",27,0 )
  8450   PSGOEE^^0^ B125406322
  8451   "BLD",9848 ,"KRN",9.8 ,"NM",29,0 )
  8452   PSGOETO^^0 ^B45746599
  8453   "BLD",9848 ,"KRN",9.8 ,"NM",30,0 )
  8454   PSGOE91^^0 ^B14329522 8
  8455   "BLD",9848 ,"KRN",9.8 ,"NM",31,0 )
  8456   PSJCOM1^^0 ^B55041838
  8457   "BLD",9848 ,"KRN",9.8 ,"NM",33,0 )
  8458   PSJLMUDE^^ 0^B8729608 3
  8459   "BLD",9848 ,"KRN",9.8 ,"NM",35,0 )
  8460   PSJLMPRU^^ 0^B2034782 2
  8461   "BLD",9848 ,"KRN",9.8 ,"NM",36,0 )
  8462   PSJOEA^^0^ B32154460
  8463   "BLD",9848 ,"KRN",9.8 ,"NM",37,0 )
  8464   PSJOEA1^^0 ^B29905654
  8465   "BLD",9848 ,"KRN",9.8 ,"NM",38,0 )
  8466   PSJ327P^^0 ^B688619
  8467   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGNE3",2 4)
  8468  
  8469   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOD",21 )
  8470  
  8471   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE41", 6)
  8472  
  8473   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE42", 2)
  8474  
  8475   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE7",4 )
  8476  
  8477   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE8",1 5)
  8478  
  8479   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE81", 16)
  8480  
  8481   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE82", 17)
  8482  
  8483   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE91", 30)
  8484  
  8485   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOE92", 12)
  8486  
  8487   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOEE",2 7)
  8488  
  8489   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOEF",2 5)
  8490  
  8491   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOER",1 3)
  8492  
  8493   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOER0", 14)
  8494  
  8495   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOETO", 29)
  8496  
  8497   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOEV",9 )
  8498  
  8499   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGON",26 )
  8500  
  8501   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGOT",19 )
  8502  
  8503   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSGPEN",2 3)
  8504  
  8505   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJ327P", 38)
  8506  
  8507   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJCLOLS" ,8)
  8508  
  8509   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJCLOZ", 3)
  8510  
  8511   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJCOM",1 8)
  8512  
  8513   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJCOM1", 31)
  8514  
  8515   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJLMPRU" ,35)
  8516  
  8517   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJLMUDE" ,33)
  8518  
  8519   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJOE",1)
  8520  
  8521   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJOE1",2 0)
  8522  
  8523   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJOEA",3 6)
  8524  
  8525   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJOEA1", 37)
  8526  
  8527   "BLD",9848 ,"KRN",9.8 ,"NM","B", "PSJRXLAB" ,7)
  8528  
  8529   "BLD",9848 ,"KRN",19, 0)
  8530   19
  8531   "BLD",9848 ,"KRN",19, "NM",0)
  8532   ^9.68A^3^3
  8533   "BLD",9848 ,"KRN",19, "NM",1,0)
  8534   PSJL MANAG ER^^0
  8535   "BLD",9848 ,"KRN",19, "NM",2,0)
  8536   PSJLAB LIS T^^0
  8537   "BLD",9848 ,"KRN",19, "NM",3,0)
  8538   PSJLIST OV ERRIDES^^0
  8539   "BLD",9848 ,"KRN",19, "NM","B"," PSJL MANAG ER",1)
  8540  
  8541   "BLD",9848 ,"KRN",19, "NM","B"," PSJLAB LIS T",2)
  8542  
  8543   "BLD",9848 ,"KRN",19, "NM","B"," PSJLIST OV ERRIDES",3 )
  8544  
  8545   "BLD",9848 ,"KRN",19. 1,0)
  8546   19.1
  8547   "BLD",9848 ,"KRN",19. 1,"NM",0)
  8548   ^9.68A^^
  8549   "BLD",9848 ,"KRN",101 ,0)
  8550   101
  8551   "BLD",9848 ,"KRN",409 .61,0)
  8552   409.61
  8553   "BLD",9848 ,"KRN",771 ,0)
  8554   771
  8555   "BLD",9848 ,"KRN",779 .2,0)
  8556   779.2
  8557   "BLD",9848 ,"KRN",870 ,0)
  8558   870
  8559   "BLD",9848 ,"KRN",898 9.51,0)
  8560   8989.51
  8561   "BLD",9848 ,"KRN",898 9.52,0)
  8562   8989.52
  8563   "BLD",9848 ,"KRN",899 4,0)
  8564   8994
  8565   "BLD",9848 ,"KRN","B" ,.4,.4)
  8566  
  8567   "BLD",9848 ,"KRN","B" ,.401,.401 )
  8568  
  8569   "BLD",9848 ,"KRN","B" ,.402,.402 )
  8570  
  8571   "BLD",9848 ,"KRN","B" ,.403,.403 )
  8572  
  8573   "BLD",9848 ,"KRN","B" ,.5,.5)
  8574  
  8575   "BLD",9848 ,"KRN","B" ,.84,.84)
  8576  
  8577   "BLD",9848 ,"KRN","B" ,3.6,3.6)
  8578  
  8579   "BLD",9848 ,"KRN","B" ,3.8,3.8)
  8580  
  8581   "BLD",9848 ,"KRN","B" ,9.2,9.2)
  8582  
  8583   "BLD",9848 ,"KRN","B" ,9.8,9.8)
  8584  
  8585   "BLD",9848 ,"KRN","B" ,19,19)
  8586  
  8587   "BLD",9848 ,"KRN","B" ,19.1,19.1 )
  8588  
  8589   "BLD",9848 ,"KRN","B" ,101,101)
  8590  
  8591   "BLD",9848 ,"KRN","B" ,409.61,40 9.61)
  8592  
  8593   "BLD",9848 ,"KRN","B" ,771,771)
  8594  
  8595   "BLD",9848 ,"KRN","B" ,779.2,779 .2)
  8596  
  8597   "BLD",9848 ,"KRN","B" ,870,870)
  8598  
  8599   "BLD",9848 ,"KRN","B" ,8989.51,8 989.51)
  8600  
  8601   "BLD",9848 ,"KRN","B" ,8989.52,8 989.52)
  8602  
  8603   "BLD",9848 ,"KRN","B" ,8994,8994 )
  8604  
  8605   "BLD",9848 ,"QDEF")
  8606   ^^^^NO^^^^ YES^^NO
  8607   "BLD",9848 ,"QUES",0)
  8608   ^9.62^^
  8609   "BLD",9848 ,"REQB",0)
  8610   ^9.611^8^8
  8611   "BLD",9848 ,"REQB",1, 0)
  8612   PSJ*5.0*25 4^2
  8613   "BLD",9848 ,"REQB",2, 0)
  8614   PSJ*5.0*54 ^2
  8615   "BLD",9848 ,"REQB",3, 0)
  8616   PSJ*5.0*27 5^2
  8617   "BLD",9848 ,"REQB",4, 0)
  8618   PSJ*5.0*28 1^2
  8619   "BLD",9848 ,"REQB",5, 0)
  8620   PSJ*5.0*31 5^2
  8621   "BLD",9848 ,"REQB",6, 0)
  8622   PSJ*5.0*31 7^2
  8623   "BLD",9848 ,"REQB",7, 0)
  8624   PSJ*5.0*33 4^2
  8625   "BLD",9848 ,"REQB",8, 0)
  8626   PSJ*5.0*33 8^2
  8627   "BLD",9848 ,"REQB","B ","PSJ*5.0 *254",1)
  8628  
  8629   "BLD",9848 ,"REQB","B ","PSJ*5.0 *275",3)
  8630  
  8631   "BLD",9848 ,"REQB","B ","PSJ*5.0 *281",4)
  8632  
  8633   "BLD",9848 ,"REQB","B ","PSJ*5.0 *315",5)
  8634  
  8635   "BLD",9848 ,"REQB","B ","PSJ*5.0 *317",6)
  8636  
  8637   "BLD",9848 ,"REQB","B ","PSJ*5.0 *334",7)
  8638  
  8639   "BLD",9848 ,"REQB","B ","PSJ*5.0 *338",8)
  8640  
  8641   "BLD",9848 ,"REQB","B ","PSJ*5.0 *54",2)
  8642  
  8643   "FIA",53.8 )
  8644   CLOZAPINE  MEDICATION  OVERRIDES
  8645   "FIA",53.8 ,0)
  8646   ^PS(53.8,
  8647   "FIA",53.8 ,0,0)
  8648   53.8D
  8649   "FIA",53.8 ,0,1)
  8650   y^y^f^^^^n
  8651   "FIA",53.8 ,0,10)
  8652  
  8653   "FIA",53.8 ,0,11)
  8654  
  8655   "FIA",53.8 ,0,"RLRO")
  8656  
  8657   "FIA",53.8 ,0,"VR")
  8658   5.0^PSJ
  8659   "FIA",53.8 ,53.8)
  8660   0
  8661   "FIA",55)
  8662   PHARMACY P ATIENT
  8663   "FIA",55,0 )
  8664   ^PS(55,
  8665   "FIA",55,0 ,0)
  8666   55P
  8667   "FIA",55,0 ,1)
  8668   y^y^p^^^^n ^^n
  8669   "FIA",55,0 ,10)
  8670  
  8671   "FIA",55,0 ,11)
  8672  
  8673   "FIA",55,0 ,"RLRO")
  8674  
  8675   "FIA",55,0 ,"VR")
  8676   5.0^PSJ
  8677   "FIA",55,5 5)
  8678   1
  8679   "FIA",55,5 5.06)
  8680   1
  8681   "FIA",55,5 5.06,301)
  8682  
  8683   "INIT")
  8684   ADDMENUS^P SJ327P
  8685   "KRN",19,2 921742,-1)
  8686   0^2
  8687   "KRN",19,2 921742,0)
  8688   PSJLAB LIS T^Display  Inpatient  Lab Tests  and Result s^^R^^^^^^ ^^INPATIEN T MEDICATI ONS
  8689   "KRN",19,2 921742,1,0 )
  8690   ^19.06^3^3 ^3160329^^
  8691   "KRN",19,2 921742,1,1 ,0)
  8692   This optio n displays  results o f lab test s for pati ents recei ving cloza pine
  8693   "KRN",19,2 921742,1,2 ,0)
  8694   as require d by the c ircular re garding pa tient mana gement pro tocol for  the
  8695   "KRN",19,2 921742,1,3 ,0)
  8696   use of clo zapine. Th is is for  inpatient  pharmacy.
  8697   "KRN",19,2 921742,25)
  8698   PSJRXLAB
  8699   "KRN",19,2 921742,"U" )
  8700   DISPLAY IN PATIENT LA B TESTS AN
  8701   "KRN",19,2 921744,-1)
  8702   0^3
  8703   "KRN",19,2 921744,0)
  8704   PSJLIST OV ERRIDES^Li st Inpatie nt Clozapi ne Overrid es^^R^^^^^ ^^^INPATIE NT MEDICAT IONS
  8705   "KRN",19,2 921744,1,0 )
  8706   ^^2^2^3160 407^
  8707   "KRN",19,2 921744,1,1 ,0)
  8708   This gener ates a lis t of inpat ient order ed clozapi ne prescri ptions ent ered
  8709   "KRN",19,2 921744,1,2 ,0)
  8710   by overrid ing the lo ckout.
  8711   "KRN",19,2 921744,25)
  8712   PSJCLOLS
  8713   "KRN",19,2 921744,"U" )
  8714   LIST INPAT IENT CLOZA PINE OVERR
  8715   "KRN",19,2 921784,-1)
  8716   0^1
  8717   "KRN",19,2 921784,0)
  8718   PSJL MANAG ER^Clozapi ne Inpatie nt Medicat ions Manag er^^M^^PSO LOCKCLOZ^^ ^^^^INPATI ENT MEDICA TIONS
  8719   "KRN",19,2 921784,1,0 )
  8720   ^19.06^1^1 ^3160620^^ ^^
  8721   "KRN",19,2 921784,1,1 ,0)
  8722   This menu  contains o ptions use d to contr ol inpatie nt Clozapi ne dispens ing.
  8723   "KRN",19,2 921784,10, 0)
  8724   ^19.01IP^5 ^4
  8725   "KRN",19,2 921784,10, 3,0)
  8726   2921744^^3
  8727   "KRN",19,2 921784,10, 3,"^")
  8728   PSJLIST OV ERRIDES
  8729   "KRN",19,2 921784,10, 5,0)
  8730   2921742^^2
  8731   "KRN",19,2 921784,10, 5,"^")
  8732   PSJLAB LIS T
  8733   "KRN",19,2 921784,99)
  8734   64366,3413 0
  8735   "KRN",19,2 921784,"U" )
  8736   CLOZAPINE  INPATIENT  MEDICATION
  8737   "MBREQ")
  8738   0
  8739   "ORD",18,1 9)
  8740   19;18;;;OP T^XPDTA;OP TF1^XPDIA; OPTE1^XPDI A;OPTF2^XP DIA;;OPTDE L^XPDIA
  8741   "ORD",18,1 9,0)
  8742   OPTION
  8743   "PKG",221, -1)
  8744   1^1
  8745   "PKG",221, 0)
  8746   INPATIENT  MEDICATION S^PSJ^UNIT  DOSE AND  IVS
  8747   "PKG",221, 20,0)
  8748   ^9.402P^^
  8749   "PKG",221, 22,0)
  8750   ^9.49I^1^1
  8751   "PKG",221, 22,1,0)
  8752   5.0^297121 5^2981113^ 1
  8753   "PKG",221, 22,1,"PAH" ,1,0)
  8754   327^317112 9^52073644 0
  8755   "PKG",221, 22,1,"PAH" ,1,1,0)
  8756   ^^1^1^3171 129
  8757   "PKG",221, 22,1,"PAH" ,1,1,1,0)
  8758   MENTAL HEA LTH NCC PR OJECT 5.01
  8759   "QUES","XP F1",0)
  8760   Y
  8761   "QUES","XP F1","??")
  8762   ^D REP^XPD H
  8763   "QUES","XP F1","A")
  8764   Shall I wr ite over y our |FLAG|  File
  8765   "QUES","XP F1","B")
  8766   YES
  8767   "QUES","XP F1","M")
  8768   D XPF1^XPD IQ
  8769   "QUES","XP F2",0)
  8770   Y
  8771   "QUES","XP F2","??")
  8772   ^D DTA^XPD H
  8773   "QUES","XP F2","A")
  8774   Want my da ta |FLAG|  yours
  8775   "QUES","XP F2","B")
  8776   YES
  8777   "QUES","XP F2","M")
  8778   D XPF2^XPD IQ
  8779   "QUES","XP I1",0)
  8780   YO
  8781   "QUES","XP I1","??")
  8782   ^D INHIBIT ^XPDH
  8783   "QUES","XP I1","A")
  8784   Want KIDS  to INHIBIT  LOGONs du ring the i nstall
  8785   "QUES","XP I1","B")
  8786   NO
  8787   "QUES","XP I1","M")
  8788   D XPI1^XPD IQ
  8789   "QUES","XP M1",0)
  8790   PO^VA(200, :EM
  8791   "QUES","XP M1","??")
  8792   ^D MG^XPDH
  8793   "QUES","XP M1","A")
  8794   Enter the  Coordinato r for Mail  Group '|F LAG|'
  8795   "QUES","XP M1","B")
  8796  
  8797   "QUES","XP M1","M")
  8798   D XPM1^XPD IQ
  8799   "QUES","XP O1",0)
  8800   Y
  8801   "QUES","XP O1","??")
  8802   ^D MENU^XP DH
  8803   "QUES","XP O1","A")
  8804   Want KIDS  to Rebuild  Menu Tree s Upon Com pletion of  Install
  8805   "QUES","XP O1","B")
  8806   YES
  8807   "QUES","XP O1","M")
  8808   D XPO1^XPD IQ
  8809   "QUES","XP Z1",0)
  8810   Y
  8811   "QUES","XP Z1","??")
  8812   ^D OPT^XPD H
  8813   "QUES","XP Z1","A")
  8814   Want to DI SABLE Sche duled Opti ons, Menu  Options, a nd Protoco ls
  8815   "QUES","XP Z1","B")
  8816   NO
  8817   "QUES","XP Z1","M")
  8818   D XPZ1^XPD IQ
  8819   "QUES","XP Z2",0)
  8820   Y
  8821   "QUES","XP Z2","??")
  8822   ^D RTN^XPD H
  8823   "QUES","XP Z2","A")
  8824   Want to MO VE routine s to other  CPUs
  8825   "QUES","XP Z2","B")
  8826   NO
  8827   "QUES","XP Z2","M")
  8828   D XPZ2^XPD IQ
  8829   "RTN")
  8830   31
  8831   "RTN","PSG NE3")
  8832   0^24^B9624 5293
  8833   "RTN","PSG NE3",1,0)
  8834   PSGNE3 ;BI R/CML3,MLM -DETERMINE  DEFAULT F OR START &  STOP TIME S ;Jul 26,  2017@18:0 4:02
  8835   "RTN","PSG NE3",2,0)
  8836    ;;5.0;INP ATIENT MED ICATIONS ; **4,26,47, 50,63,69,1 05,80,111, 183,193,17 9,275,327* *;16 DEC 9 7;Build 64
  8837   "RTN","PSG NE3",3,0)
  8838    ;
  8839   "RTN","PSG NE3",4,0)
  8840    ; Referen ce to ^PS( 51.1 is su pported by  DBIA 2177
  8841   "RTN","PSG NE3",5,0)
  8842    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191
  8843   "RTN","PSG NE3",6,0)
  8844    ; Referen ce to PSBA PIPM is su pported by  DBIA 3564
  8845   "RTN","PSG NE3",7,0)
  8846    ;
  8847   "RTN","PSG NE3",8,0)
  8848    N X1,X2,Y
  8849   "RTN","PSG NE3",9,0)
  8850   NOW ;
  8851   "RTN","PSG NE3",10,0)
  8852    S:'$D(PSG ST) PSGST= ""
  8853   "RTN","PSG NE3",11,0)
  8854    S PSGDT=$ $DATE^PSJU TL2(),PSGN ESD=$$ENSD ($S(PSGST[ "P":"PRN", 1:PSGSCH), PSGS0Y,PSG DT,PSGDT)
  8855   "RTN","PSG NE3",12,0)
  8856    ;
  8857   "RTN","PSG NE3",13,0)
  8858   STOP ; exi t when sta rt date fo und
  8859   "RTN","PSG NE3",14,0)
  8860    K ET,F,FT ,LT,NT,PSG NE3,TT G:$ D(PSGOES)! $D(PSGODF)  SF S PSGN ESDO=$$END D^PSGMI(PS GNESD)
  8861   "RTN","PSG NE3",15,0)
  8862    Q
  8863   "RTN","PSG NE3",16,0)
  8864    ;
  8865   "RTN","PSG NE3",17,0)
  8866   ENFD(PSGDT ) ; find d efault sto p date
  8867   "RTN","PSG NE3",18,0)
  8868    N X1,X2,X 3DMIN,Y
  8869   "RTN","PSG NE3",19,0)
  8870   SF I '$O(^ PS(55,PSGP ,5,"AUS",P SGDT)),'$D (^PS(53.1, "AC",PSGP) ),+$G(^PS( 55,PSGP,5. 1)) S $P(^ PS(55,PSGP ,5.1),U)=" "
  8871   "RTN","PSG NE3",20,0)
  8872    S PSJSYSW 0=$G(PSJSY SW0) ; Ini tialize/re store PSJS YSW0 ward  parameters ; clinic o rders may  not have t hem. Kille d at exit  in ENKV^PS GSETU
  8873   "RTN","PSG NE3",21,0)
  8874    I $G(PSGO EA)="R",$P (PSJSYSW0, "^",4) D E NWALL(%,0, PSGP)
  8875   "RTN","PSG NE3",22,0)
  8876    S PSGNEFD ="",PSGNEW =$S('$P(PS JSYSW0,U,4 ):0,+$G(^P S(55,PSGP, 5.1))'>PSG DT:0,1:+$G (^PS(55,PS GP,5.1)))  S:PSGNEW<P SGNESD PSG NEW=0
  8877   "RTN","PSG NE3",23,0)
  8878    I PSGNEW, ($G(PSGOEA )="R") S X 1=$P(%,"." ),X2=3 D C ^%DTC S PS GNEW=$S($P (X,".")_(P SGNESD#1)' >PSGNEW:PS GNEW,1:0)
  8879   "RTN","PSG NE3",24,0)
  8880    I PSGST=" O" S PSGNE FD=$$ENOSD ^PSJDCU(PS JSYSW0,PSG NESD,PSGP)  I PSGNEFD ]"" G OUT
  8881   "RTN","PSG NE3",25,0)
  8882    ;PSJ*179; x-ref to " APPSJ"
  8883   "RTN","PSG NE3",26,0)
  8884    I PSGST'= "O",PSGSCH ]"",$S(PSG SCH="ONCE" :1,PSGSCH= "STAT":1,P SGSCH="ONE  TIME":1,1 :0)!($P($G (^PS(51.1, +$O(^PS(51 .1,"AC","P SJ",PSGSCH ,0)),0))," ^",5)="O")  S PSGNEFD =$$ENOSD^P SJDCU(PSJS YSW0,PSGNE SD,PSGP) I  PSGNEFD]" " G OUT
  8885   "RTN","PSG NE3",27,0)
  8886    S X1=$P(P SGNESD,"." ),X2=$S($P (PSJSYSW0, "^",3):+$P (PSJSYSW0, "^",3),1:1 4)
  8887   "RTN","PSG NE3",28,0)
  8888    D
  8889   "RTN","PSG NE3",29,0)
  8890    . ; *** p si 06 082  - RDC 08/2 006;ADDED  VAR AA TO  CHK FOR AP PT and CLI NIC ***
  8891   "RTN","PSG NE3",30,0)
  8892    . N A,AA, B
  8893   "RTN","PSG NE3",31,0)
  8894    . Q:'$D(P SGORD)  S  A=""
  8895   "RTN","PSG NE3",32,0)
  8896    . I PSGOR D["P" S A= $G(^PS(53. 1,+PSGORD, "DSS"))
  8897   "RTN","PSG NE3",33,0)
  8898    . I PSGOR D["U" S A= $G(^PS(55, PSGP,5,+PS GORD,8))
  8899   "RTN","PSG NE3",34,0)
  8900    . I PSGOR D["I" S A= $G(^PS(55, PSGP,"IV", +PSGORD,"D SS"))
  8901   "RTN","PSG NE3",35,0)
  8902    . ;PSJ*5* 179;Clin D ef Stop
  8903   "RTN","PSG NE3",36,0)
  8904    . S AA=$P (A,"^",2), A=$P(A,"^" ) I A,AA S  X2=14 I $ D(^PS(53.4 6,"B",A))  S B=$O(^PS (53.46,"B" ,A,"")),X2 =$P(^PS(53 .46,B,0)," ^",2) I X2 ="" S X2=1 4
  8905   "RTN","PSG NE3",37,0)
  8906    D
  8907   "RTN","PSG NE3",38,0)
  8908    .N CLOZFL G I $G(PSG ORD)["P",$ $GET1^DIQ( 53.1,+PSGO RD,.01) S  CLOZFLG=$$ ISCLOZ^PSJ CLOZ(+PSGO RD) I 1
  8909   "RTN","PSG NE3",39,0)
  8910    .E  I $G( PSGORD),$$ GET1^DIQ(5 5.06,+PSGO RD_","_PSG P,.01) S C LOZFLG=$$I SCLOZ^PSJC LOZ(,,PSGP ,+PSGORD)  I 1
  8911   "RTN","PSG NE3",40,0)
  8912    .E  S CLO ZFLG=$$ISC LOZ^PSJCLO Z(,,,,$G(P SGDRG))
  8913   "RTN","PSG NE3",41,0)
  8914    .Q:'CLOZF LG
  8915   "RTN","PSG NE3",42,0)
  8916    .N DFN,X1  S DFN=PSG P
  8917   "RTN","PSG NE3",43,0)
  8918    .I '$D(CL OZPAT) D C LOZPAT^PSJ CLOZ
  8919   "RTN","PSG NE3",44,0)
  8920    .N PSGANC ,PSGCFLG,P SGOVRD
  8921   "RTN","PSG NE3",45,0)
  8922    .S PSGANC =$$CL^YSCL TST2(DFN), PSGCFLG=1
  8923   "RTN","PSG NE3",46,0)
  8924    .S PSGOVR D=$$OVERRI DE^YSCLTST 2(DFN)
  8925   "RTN","PSG NE3",47,0)
  8926    .S X2=$S( $G(CLOZPAT )=2:28,$G( CLOZPAT)=1 :14,$G(CLO ZPAT)=0:7, 1:90)
  8927   "RTN","PSG NE3",48,0)
  8928    .I $$GET1 ^DIQ(55,DF N,53)?1U6N  S X2=4
  8929   "RTN","PSG NE3",49,0)
  8930    .I 'PSGOV RD,'+$P(PS GANC,"^",4 ) S X2=4
  8931   "RTN","PSG NE3",50,0)
  8932    D C^%DTC
  8933   "RTN","PSG NE3",51,0)
  8934    I $G(PSGN EDFD) I $S ($P(PSGNED FD,"^")["L ":PSGS0XT! PSGS0Y,1:1 ) D DFD
  8935   "RTN","PSG NE3",52,0)
  8936    I $G(PSGO RD),$G(PSG FD) S X3DM IN=$$GETDU R^PSJLIVMD (PSGP,+$G( PSGORD),$S ($G(PSGORD )["P":"P", $G(PSGORD) ["V":"IV", 1:5),1) I  X3DMIN]""  D  I PSGNE FD]"" G OU T
  8937   "RTN","PSG NE3",53,0)
  8938    . S X3DMI N=$$DURMIN ^PSJLIVMD( X3DMIN) I  $G(X3DMIN)  S PSGNEFD =$$FMADD^X LFDT(PSGNE SD,,,X3DMI N)
  8939   "RTN","PSG NE3",54,0)
  8940    S X=+(X_$ S($P(PSJSY SW0,"^",7) :"."_$P(PS JSYSW0,"^" ,7),1:(PSG NESD#1)))
  8941   "RTN","PSG NE3",55,0)
  8942    S PSGNEFD =$S('PSGNE FD:X,X<PSG NEFD:X,1:P SGNEFD)
  8943   "RTN","PSG NE3",56,0)
  8944    I PSGNEW, (PSGNEW<PS GNEFD),$P( PSJSYSW0,U ,4) D
  8945   "RTN","PSG NE3",57,0)
  8946    . I $G(PS GORD),$G(P SGRDTX) I  PSGORD=$P( PSGRDTX,U, 4),PSGNEW< PSGRDTX Q    ; Reques ted Start  is after S top
  8947   "RTN","PSG NE3",58,0)
  8948    . S PSGNE FD=PSGNEW
  8949   "RTN","PSG NE3",59,0)
  8950    ;; END NC C REMEDIAT ION >> 327 *RJS
  8951   "RTN","PSG NE3",60,0)
  8952    ;
  8953   "RTN","PSG NE3",61,0)
  8954   OUT ;
  8955   "RTN","PSG NE3",62,0)
  8956    ;*179 Acc ount for d rug changi ng
  8957   "RTN","PSG NE3",63,0)
  8958    I $G(PSGP DNX)&('$G( PSBSTR)) S :$G(PSGSDX ) PSGNESD= PSGSDX S:$ G(PSGFDX)  PSGNEFD=PS GFDX
  8959   "RTN","PSG NE3",64,0)
  8960    I '$D(PSG ODF),'$D(P SGOES) S P SGNEFDO=$$ ENDD^PSGMI (PSGNEFD)
  8961   "RTN","PSG NE3",65,0)
  8962    K PSGDL,P SGNEW Q
  8963   "RTN","PSG NE3",66,0)
  8964    ;
  8965   "RTN","PSG NE3",67,0)
  8966   DFD ;
  8967   "RTN","PSG NE3",68,0)
  8968    I $P(PSGN EDFD,"^")[ "D" S X1=$ P(PSGNESD, "."),X2=+P SGNEDFD D  C^%DTC S X =+(X_"."_$ S($P(PSJSY SW0,"^",7) :$P(PSJSYS W0,"^",7), 1:$P(PSGNE SD,".",2)) )
  8969   "RTN","PSG NE3",69,0)
  8970    I $P(PSGN EDFD,"^")[ "L" S PSGD L=+PSGNEDF D D EN1^PS GDL
  8971   "RTN","PSG NE3",70,0)
  8972    S PSGNEFD =$S(PSGNEW <X&PSGNEW: PSGNEW,1:X ) Q:$P(PSG NEDFD,"^") '["D"!'$P( PSJSYSW0," ^",4)!PSGN EW
  8973   "RTN","PSG NE3",71,0)
  8974    Q
  8975   "RTN","PSG NE3",72,0)
  8976    ;
  8977   "RTN","PSG NE3",73,0)
  8978   ENOR ;
  8979   "RTN","PSG NE3",74,0)
  8980    K PSGOES, PSGODF S X =$P($G(^PS (53.1,DA,2 )),"^")
  8981   "RTN","PSG NE3",75,0)
  8982    S $P(^PS( 53.1,DA,0) ,"^",7)=$S (X="PRN":" P",X="ONCE ":"O",X="S TAT":"O",X ="ONE TIME ":"O",X="O N CALL":"O C",$P(PSGN EDFD,"^",3 )]"":$P(PS GNEDFD,"^" ,3),1:"C")  D PSGNE3  S X=PSGNES D
  8983   "RTN","PSG NE3",76,0)
  8984    Q
  8985   "RTN","PSG NE3",77,0)
  8986    ;
  8987   "RTN","PSG NE3",78,0)
  8988   ENSET0(DFN ) ; Set "0 " node and  build xre fs for ent ries found  without o ne.
  8989   "RTN","PSG NE3",79,0)
  8990    N DA,DIK  S ^PS(55,D FN,0)=DFN, DIK="^PS(5 5,",DIK(1) =.01,DA=DF N D EN^DIK
  8991   "RTN","PSG NE3",80,0)
  8992    S $P(^PS( 55,DFN,5.1 ),"^",11)= 2 ; Mark a s converte d for POE
  8993   "RTN","PSG NE3",81,0)
  8994    Q
  8995   "RTN","PSG NE3",82,0)
  8996    ;
  8997   "RTN","PSG NE3",83,0)
  8998   ENWALL(SD, FD,DFN) ;  Update def ault stop  date if ap propriate.
  8999   "RTN","PSG NE3",84,0)
  9000    N WALL,NW ALL,X1,X2, X3
  9001   "RTN","PSG NE3",85,0)
  9002    D NOW^%DT C S X3=%
  9003   "RTN","PSG NE3",86,0)
  9004    S WALL=+$ G(^PS(55,D FN,5.1)),X 1=$P(SD,". "),X2=3 D  C^%DTC I + (X_"."_$P( SD,".",2)) '>+WALL Q
  9005   "RTN","PSG NE3",87,0)
  9006    S X1=$P(X 3,"."),X2= $S($P(PSJS YSW0,U,3): +$P(PSJSYS W0,U,3),1: 14) D C^%D TC
  9007   "RTN","PSG NE3",88,0)
  9008    S NWALL=X _$S($P(PSJ SYSW0,U,7) :"."_$P(PS JSYSW0,U,7 ),1:SD#1)
  9009   "RTN","PSG NE3",89,0)
  9010    S $P(^PS( 55,DFN,5.1 ),U)=+$S(F D>NWALL:FD ,1:NWALL)
  9011   "RTN","PSG NE3",90,0)
  9012    Q
  9013   "RTN","PSG NE3",91,0)
  9014    ;
  9015   "RTN","PSG NE3",92,0)
  9016   ENSD(SCH,A T,LI,OSD)  ;Find star t dt/tm
  9017   "RTN","PSG NE3",93,0)
  9018    ;SCH=sche dule,AT=ad min times, LI=login d ate/time,O SD=Renewed  orders st art
  9019   "RTN","PSG NE3",94,0)
  9020    I $G(APPT ),$G(PSGOR D)["P" S X D=$$DATE2^ PSJUTL2($S (($$FMDIFF ^XLFDT(APP T,PSGDT,2) <0):PSGDT, 1:APPT)) Q  XD
  9021   "RTN","PSG NE3",95,0)
  9022    N X,OSDLI  D
  9023   "RTN","PSG NE3",96,0)
  9024    .I $L(LI) <13 S X=LI  Q
  9025   "RTN","PSG NE3",97,0)
  9026    .I $L(LI) =14 S X=$E (LI,13,14)  S:X>29 X= $E(LI,1,12 )_5 S:X'>2 9 X=$E(LI, 1,12)_1 Q
  9027   "RTN","PSG NE3",98,0)
  9028    .I $L(LI) =13 S X=$E (LI,13)_0  S:X>29 X=$ E(LI,1,12) _5 S:X'>29  X=$E(LI,1 ,12)_1 Q
  9029   "RTN","PSG NE3",99,0)
  9030    I $G(LI)  S:(LI=$G(O SD)) OSDLI =1
  9031   "RTN","PSG NE3",100,0 )
  9032    S LI=+$FN (X,"",4) I  '$P(LI,". ",2) S LI= $$FMADD^XL FDT(LI,-1, 0,0,0)_.24
  9033   "RTN","PSG NE3",101,0 )
  9034    I $G(OSDL I) S OSD=L I K OSDLI
  9035   "RTN","PSG NE3",102,0 )
  9036    ;BHW;PSJ* 5*179;Re-c alc Start  date
  9037   "RTN","PSG NE3",103,0 )
  9038    N PSGBCAD M,PSGBCLDT ,PSGBCLA,P SGBCFR,PSG BTT,PSGBST ,PSGBCSHH, PSGBCLHH,P SGBSAT,PSG BSATN,PSGB NAT,PSGBCL IT,PSGBCTD Y
  9039   "RTN","PSG NE3",104,0 )
  9040    N PSGBCTD D,PSGBCTDA ,PSGDAYC,P SGBDNXT,PS GBCSCD,PSG BCLID
  9041   "RTN","PSG NE3",105,0 )
  9042    S (PSGBST ,PSGBCFR,P SGBCADM)=" "
  9043   "RTN","PSG NE3",106,0 )
  9044    S PSGBCOR D=$S($G(PS GORD):PSGO RD,$G(PSJO RD):PSJORD ,1:$G(PSGO RD))
  9045   "RTN","PSG NE3",107,0 )
  9046    I PSGBCOR D S:'$P($G (^PS(55,DF N,$S($G(PS GBCORD)["V ":"IV",1:5 ),+PSGBCOR D,0)),"^", 2) PSGBCOR D=""
  9047   "RTN","PSG NE3",108,0 )
  9048    I PSGBCOR D["U" S PS GBCOT=5,PS GBCND=0,PS GBCPO=25
  9049   "RTN","PSG NE3",109,0 )
  9050    I PSGBCOR D["V" S PS GBCOT="IV" ,PSGBCND=2 ,PSGBCPO=5
  9051   "RTN","PSG NE3",110,0 )
  9052    I (PSGBCO RD'["U")&( PSGBCORD'[ "V") S PSG BCORD=""
  9053   "RTN","PSG NE3",111,0 )
  9054    I +$G(DFN )&(+PSGBCO RD) S PSGB CPRV=PSGBC ORD D
  9055   "RTN","PSG NE3",112,0 )
  9056    .F  S PSG BCADM=$$EN ^PSBAPIPM( DFN,PSGBCP RV) Q:PSGB CADM'=""   S PSGBCPRV =$P(^PS(55 ,DFN,PSGBC OT,+PSGBCP RV,PSGBCND ),U,PSGBCP O) Q:(PSGB CPRV="")!( PSGBCPRV[" P")
  9057   "RTN","PSG NE3",113,0 )
  9058    .Q
  9059   "RTN","PSG NE3",114,0 )
  9060    I $L(PSGB CADM) D  I  PSGBST Q  +PSGBST
  9061   "RTN","PSG NE3",115,0 )
  9062    .S PSGBCL ID=$P(LI," .",1),PSGB CLIT=$E($P (LI,".",2) ,1,2) I $L (PSGBCLIT) =1 S PSGBC LIT=PSGBCL IT*10
  9063   "RTN","PSG NE3",116,0 )
  9064    .S PSGBCS CH=$P(PSGB CADM,U,1), PSGBCSCD=$ P(PSGBCSCH ,".",1),PS GBCLDT=$P( PSGBCADM,U ,2),PSGBCL A=$P(PSGBC ADM,U,3)
  9065   "RTN","PSG NE3",117,0 )
  9066    .I "GR"'[ PSGBCLA Q
  9067   "RTN","PSG NE3",118,0 )
  9068    .S PSGBCF R=""
  9069   "RTN","PSG NE3",119,0 )
  9070    .I PSGBCO RD["U" S P SGBCFR=$P( ^PS(55,DFN ,5,+PSGBCO RD,2),U,6)
  9071   "RTN","PSG NE3",120,0 )
  9072    .I PSGBCO RD["V" S P SGBCFR=$P( ^PS(55,DFN ,"IV",+PSG BCORD,0),U ,15)
  9073   "RTN","PSG NE3",121,0 )
  9074    .;Convert
  9075   "RTN","PSG NE3",122,0 )
  9076    .S PSGBCF R=$S(PSGBC FR="D":144 0,PSGBCFR= "O":0,1:PS GBCFR)*60
  9077   "RTN","PSG NE3",123,0 )
  9078    .I 'PSGBC FR,'AT Q
  9079   "RTN","PSG NE3",124,0 )
  9080    .S X=PSGB CSCH D H^% DTC S PSGB CSCH=%H*86 400+%T,PSG BCSHH=%H_" ,"_%T
  9081   "RTN","PSG NE3",125,0 )
  9082    .S X=PSGB CLDT D H^% DTC S PSGB CLDT=%H*86 400+%T,PSG BCLHH=%H_" ,"_%T
  9083   "RTN","PSG NE3",126,0 )
  9084    .;Sched A dmin Time
  9085   "RTN","PSG NE3",127,0 )
  9086    .I PSGBCS CH D
  9087   "RTN","PSG NE3",128,0 )
  9088    ..;Check  admin time s/freq
  9089   "RTN","PSG NE3",129,0 )
  9090    ..I AT D   Q:PSGBST
  9091   "RTN","PSG NE3",130,0 )
  9092    ...S PSGB SAT=$P($P( PSGBCADM," ^",1),".", 2) Q:'PSGB SAT
  9093   "RTN","PSG NE3",131,0 )
  9094    ...I $L(P SGBSAT)=1  S PSGBSAT= PSGBSAT*10
  9095   "RTN","PSG NE3",132,0 )
  9096    ...I ((PS GBSAT<PSGB CLIT)!(PSG BCSCD<PSGB CLID))&(PS GBCSCD'>PS GBCLID) S  PSGBSAT=PS GBCLIT  ;& (PSGBCFR<8 6400)
  9097   "RTN","PSG NE3",133,0 )
  9098    ...S PSGB NAT=""
  9099   "RTN","PSG NE3",134,0 )
  9100    ...I ($L( $P(AT,"-", 1))=4)&($L (PSGBSAT)' =4) S PSGB SAT=PSGBSA T_$E("00", 1,4-$L(PSG BSAT))
  9101   "RTN","PSG NE3",135,0 )
  9102    ...F PSGB SATN=1:1 S  PSGBNAT=$ P(AT,"-",P SGBSATN) Q :PSGBNAT=" "  I PSGBN AT>PSGBSAT  Q
  9103   "RTN","PSG NE3",136,0 )
  9104    ...;If DO W
  9105   "RTN","PSG NE3",137,0 )
  9106    ...I ("SU -MO-TU-WE- TH-FR-SA"[ $P(SCH,"-" ,1)) D  Q: PSGBST
  9107   "RTN","PSG NE3",138,0 )
  9108    ....;Get  TODAY
  9109   "RTN","PSG NE3",139,0 )
  9110    ....D NOW ^%DTC I '$ L(PSGBNAT) ,PSGBCSCD' <X S X1=X, X2=1 D C^% DTC
  9111   "RTN","PSG NE3",140,0 )
  9112    ....S PSG BCTDD=X D  DW^%DTC S  PSGBCTDY=$ E(X,1,2)
  9113   "RTN","PSG NE3",141,0 )
  9114    ....K PSG BCTMP F PS GBCTMP="SU :1","MO:2" ,"TU:3","W E:4","TH:5 ","FR:6"," SA:7" S PS GBCTMP($P( PSGBCTMP," :",1))=$P( PSGBCTMP," :",2),PSGB CTMP($P(PS GBCTMP,":" ,2))=$P(PS GBCTMP,":" ,1)
  9115   "RTN","PSG NE3",142,0 )
  9116    ....;DAY  of Last Ad min
  9117   "RTN","PSG NE3",143,0 )
  9118    ....S X=P SGBCSCD D  DW^%DTC S  PSGBCTDA=$ E(X,1,2) I  PSGBCSCD< PSGBCTDD S  PSGBCTDA= PSGBCTDY
  9119   "RTN","PSG NE3",144,0 )
  9120    ....;Get  Next Day i n Sched
  9121   "RTN","PSG NE3",145,0 )
  9122    ....S PSG DAYC=PSGBC TMP(PSGBCT DA),(PSGBD NXT,X)=""
  9123   "RTN","PSG NE3",146,0 )
  9124    ....F X=P SGDAYC:1:7  I SCH[$G( PSGBCTMP(X )) S PSGBD NXT=PSGBCT MP(X) Q
  9125   "RTN","PSG NE3",147,0 )
  9126    ....I '$L (PSGBDNXT)  S PSGBDNX T=$P(SCH," -",1)
  9127   "RTN","PSG NE3",148,0 )
  9128    ....;Set  new Start  Day
  9129   "RTN","PSG NE3",149,0 )
  9130    ....S PSG BCTDY=PSGB CTMP(PSGBC TDY)
  9131   "RTN","PSG NE3",150,0 )
  9132    ....S PSG BDNXT=PSGB CTMP(PSGBD NXT)
  9133   "RTN","PSG NE3",151,0 )
  9134    ....S X2= PSGBDNXT-P SGBCTDY I  X2<0 S X2= (7-PSGBCTD Y)+PSGBDNX T
  9135   "RTN","PSG NE3",152,0 )
  9136    ....S X1= PSGBCTDD D  C^%DTC  ; Add # of d ays
  9137   "RTN","PSG NE3",153,0 )
  9138    ....I +X  S PSGBST=X _"."_($S(' $L(PSGBNAT )!(PSGBCLI D'=X):$P(A T,"-",1),1 :PSGBNAT))
  9139   "RTN","PSG NE3",154,0 )
  9140    ....Q
  9141   "RTN","PSG NE3",155,0 )
  9142    ...;IF no  Next Admi n
  9143   "RTN","PSG NE3",156,0 )
  9144    ...I (('P SGBNAT)&(P SGBCFR))!( (PSGBCFR>8 6399)&(PSG BCSCD<PSGB CLID)) S X 1=$S(PSGBC FR<86400:P SGBCLID,1: PSGBCSCD), X2=$S(PSGB CFR<86400: 1,1:PSGBCF R/60/60/24 ) D C^%DTC  S PSGBST= +X_"."_($S (PSGBNAT:P SGBNAT,1:$ P(AT,"-",1 ))) Q
  9145   "RTN","PSG NE3",157,0 )
  9146    ...S PSGB ST=PSGBCSC D_"."_PSGB NAT
  9147   "RTN","PSG NE3",158,0 )
  9148    ...Q
  9149   "RTN","PSG NE3",159,0 )
  9150    ..I 'PSGB CFR Q
  9151   "RTN","PSG NE3",160,0 )
  9152    ..;Add Fr eq
  9153   "RTN","PSG NE3",161,0 )
  9154    ..S PSGBS T=PSGBCSCH +PSGBCFR,P SGBST=(PSG BST\86400) _","_(PSGB ST#86400)
  9155   "RTN","PSG NE3",162,0 )
  9156    ..I $P(PS GBST,",",2 )<3600 S $ P(PSGBST," ,",2)=3600
  9157   "RTN","PSG NE3",163,0 )
  9158    ..;If nex t day
  9159   "RTN","PSG NE3",164,0 )
  9160    ..I $P(PS GBST,",",2 )<3600 S % H=$S(+PSGB ST=+PSGBCS HH:+PSGBST ,1:PSGBST- 1)_",86400 "
  9161   "RTN","PSG NE3",165,0 )
  9162    ..S %H=PS GBST D YMD ^%DTC S PS GBST=X_(+$ E(%,1,5))
  9163   "RTN","PSG NE3",166,0 )
  9164    ..I PSGBS T<LI S PSG BST="" Q
  9165   "RTN","PSG NE3",167,0 )
  9166    ..;If the  date/time  is > than  the First  admin
  9167   "RTN","PSG NE3",168,0 )
  9168    ..I AT,($ P(PSGBST," .",1)>PSGB CLID) D
  9169   "RTN","PSG NE3",169,0 )
  9170    ...S PSGB SAT=$P(PSG BST,".",2)  I $L(PSGB SAT)=1 S P SGBSAT=PSG BSAT*10
  9171   "RTN","PSG NE3",170,0 )
  9172    ...S PSGB SATN=$P(AT ,"-",1)  ; First admi n TIME
  9173   "RTN","PSG NE3",171,0 )
  9174    ...I PSGB SAT>PSGBSA TN S PSGBS T=$P(PSGBS T,".",1)_" ."_PSGBSAT N
  9175   "RTN","PSG NE3",172,0 )
  9176    ...Q
  9177   "RTN","PSG NE3",173,0 )
  9178    ..Q
  9179   "RTN","PSG NE3",174,0 )
  9180    .;Future  Date?
  9181   "RTN","PSG NE3",175,0 )
  9182    .I (PSGBS T)&((PSGBS T<LI)!(($P (PSGBCADM, "^",1)+.00 01)>PSGBST )) D
  9183   "RTN","PSG NE3",176,0 )
  9184    ..S INFO= ($S(($P(PS GBCADM,"^" ,1)+.0001> PSGBST):$P (PSGBCADM, "^",1)+.00 01,1:$G(LI )))_U_($G( PSGFD))_U_ ($G(PSGSCH ))_U_($G(P SGST))_U_( $G(PSGPDRG ))_U_($G(P SGS0Y))
  9185   "RTN","PSG NE3",177,0 )
  9186    ..S PSGBS T=$$ENQ^PS JORP2(PSGP ,INFO)
  9187   "RTN","PSG NE3",178,0 )
  9188    ..I PSGBS T<LI S PSG BST="" Q
  9189   "RTN","PSG NE3",179,0 )
  9190    ..Q
  9191   "RTN","PSG NE3",180,0 )
  9192    .;No Sche d time
  9193   "RTN","PSG NE3",181,0 )
  9194    .I PSGBCL DT,PSGBCFR ,'PSGBCSCH  D  Q
  9195   "RTN","PSG NE3",182,0 )
  9196    ..;Add Fr eq
  9197   "RTN","PSG NE3",183,0 )
  9198    ..S PSGBS T=PSGBCLDT +PSGBCFR,P SGBST=(PSG BST\86400) _","_(PSGB ST#86400)
  9199   "RTN","PSG NE3",184,0 )
  9200    ..I $P(PS GBST,",",2 )<3600 S $ P(PSGBST," ,",2)=3600
  9201   "RTN","PSG NE3",185,0 )
  9202    ..I $P(PS GBST,",",2 )#3600 S P SGBTT=$P(( $P(PSGBST, ",",2)/360 0)+1,".",1 )*3600,$P( PSGBST,"," ,2)=PSGBTT
  9203   "RTN","PSG NE3",186,0 )
  9204    ..;If nex t day
  9205   "RTN","PSG NE3",187,0 )
  9206    ..I $P(PS GBST,",",2 )<3600 S % H=$S(+PSGB ST=+PSGBCL HH:+PSGBST ,1:PSGBST- 1)_",86400 "
  9207   "RTN","PSG NE3",188,0 )
  9208    ..S %H=PS GBST D YMD ^%DTC S PS GBST=X_(+$ E(%,1,3))
  9209   "RTN","PSG NE3",189,0 )
  9210    ..I PSGBS T<LI S PSG BST="" Q
  9211   "RTN","PSG NE3",190,0 )
  9212    ..Q
  9213   "RTN","PSG NE3",191,0 )
  9214    ;BHW;PSJ* 5*179;END
  9215   "RTN","PSG NE3",192,0 )
  9216    I $G(PSJS YSW0)=""!( $P(PSJSYSW 0,U,5)=2)  Q LI
  9217   "RTN","PSG NE3",193,0 )
  9218    S:SCH["PR N" AT=""
  9219   "RTN","PSG NE3",194,0 )
  9220    N INT,PSG  S:(SCH'[" PRN"&(SCH' ?1"Q".N1"H ")&(LI'=OS D)&('AT)&( $G(PSGST)' ="O")) AT= $E(OSD,9,1 0) S OSD=$ E(OSD,1,10 )
  9221   "RTN","PSG NE3",195,0 )
  9222    S INT=$S( SCH="QD":2 4,SCH="QOD ":48,SCH=" QH":1,SCH? 1"Q".N1"D" :(+$P(SCH, "Q",2)*24) ,SCH?1"Q". N1"H":+$P( SCH,"Q",2) ,LI=OSD:24 ,1:24)
  9223   "RTN","PSG NE3",196,0 )
  9224    S:INT=24  OSD=$$FMAD D^XLFDT(LI ,0,-INT,0, 0)
  9225   "RTN","PSG NE3",197,0 )
  9226    I 'AT,INT >23 S:$P(P SJSYSW0,U, 5)!($E(LI, 11,12)>30)  AT=$E($$F MADD^XLFDT (LI,0,1,0, 0),9,10) S :AT="00" A T=24 S:'AT  AT=$E(LI, 9,10)
  9227   "RTN","PSG NE3",198,0 )
  9228    I SCH?1"Q ".N1"H",'A T S ND=OSD ,PSG(+ND)= "" S:(INT> 24)&('$G(P SJREN)) IN T=24 S DAY S=INT\24,H RS=(-INT\2 4*24+INT)  F  S ND=$$ FMADD^XLFD T(ND,DAYS, HRS),PSG(+ ND)="" Q:N D>LI
  9229   "RTN","PSG NE3",199,0 )
  9230    Q:INT=24& '$L(AT,"-" ) $E(LI,1, 8)_AT
  9231   "RTN","PSG NE3",200,0 )
  9232    I '$O(PSG (LI)) S X= $S(OSD>1:O SD,LI>1:LI ,1:$$DATE^ PSJUTL2) D
  9233   "RTN","PSG NE3",201,0 )
  9234    .F  S ND= X D  Q:ND> LI  S:(INT >24)&('$G( PSJREN)) I NT=24 S DA YS=INT\24, HRS=(-INT\ 24*24+INT)  S X=$$FMA DD^XLFDT($ S($P(ND,". ",2)=24:$P (ND,".")_" .23",1:ND) ,DAYS,HRS)  S:$P(X,". ")'>$P(ND, ".") X=$$F MADD^XLFDT (X,1,0,0,0 )
  9235   "RTN","PSG NE3",202,0 )
  9236    ..F Y=1:1  S AT1=$P( AT,"-",Y)  Q:'AT1  S  ND=ND\1_". "_AT1,PSG( +ND)=""
  9237   "RTN","PSG NE3",203,0 )
  9238    Q:$P(PSJS YSW0,U,5)  $O(PSG(LI) )
  9239   "RTN","PSG NE3",204,0 )
  9240    S INT=""  F ND=0:0 S  ND=$O(PSG (ND)) S X= $$FMDIFF^X LFDT(LI,ND ,2) S:X<0  X=-X Q:INT &(X'<INT)   S INT=+X, OND=ND Q:I NT=0
  9241   "RTN","PSG NE3",205,0 )
  9242    Q $S($G(O ND):OND,1: LI)  ;Use  login time  if OND is  null PSJ* 5*193
  9243   "RTN","PSG OD")
  9244   0^21^B3857 6760
  9245   "RTN","PSG OD",1,0)
  9246   PSGOD ;BIR /CML3 - CR EATES NEW  ORDER FROM  OLD ONE ; Jul 26, 20 17@18:04:0
  9247   "RTN","PSG OD",2,0)
  9248    ;;5.0;INP ATIENT MED ICATIONS;* *67,58,111 ,133,181,2 86,281,315 ,338,327** ;16 DEC 97 ;Build 64
  9249   "RTN","PSG OD",3,0)
  9250    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  9251   "RTN","PSG OD",4,0)
  9252    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191.
  9253   "RTN","PSG OD",5,0)
  9254    ;
  9255   "RTN","PSG OD",6,0)
  9256    ;*286 - D o not allo w copied U nit Dose o rders for  outpatient s
  9257   "RTN","PSG OD",7,0)
  9258    D INP^VAD PT I 'VAIN (4) W !,"Y ou cannot  copy Unit  Dose order s for this  patient!"  H 2 Q
  9259   "RTN","PSG OD",8,0)
  9260    I $P($G(^ PS(55,PSGP ,5,+PSJORD ,0)),"^",2 2) D  Q
  9261   "RTN","PSG OD",9,0)
  9262    .W !,"Thi s order is  marked 'N ot To Be G iven' and  can't be c opied!" H  2
  9263   "RTN","PSG OD",10,0)
  9264    ; /MZR PS J*5*327 st art
  9265   "RTN","PSG OD",11,0)
  9266    N CLOZFLG  D  G:$G(A NQX) DONE
  9267   "RTN","PSG OD",12,0)
  9268    .S CLOZFL G=$$ISCLOZ ^PSJCLOZ(, ,PSGP,+PSJ ORD) Q:'CL OZFLG  ; c ontinue ju st with Cl ozapine dr ug
  9269   "RTN","PSG OD",13,0)
  9270    .N CLOZNU M,CLOZUID
  9271   "RTN","PSG OD",14,0)
  9272    .S CLOZNU M=$$GET1^D IQ(55,DFN, 53)
  9273   "RTN","PSG OD",15,0)
  9274    .I CLOZNU M'="" S CL OZUID=$$FI ND1^DIC(60 3.01,,"X", CLOZNUM)
  9275   "RTN","PSG OD",16,0)
  9276    .I '$G(CL OZUID) D   Q
  9277   "RTN","PSG OD",17,0)
  9278    ..W !!,"* ** This pa tient has  no clozapi ne registr ation numb er ***"
  9279   "RTN","PSG OD",18,0)
  9280    ..W !,"** * and must  be reregi stered *** "
  9281   "RTN","PSG OD",19,0)
  9282    ..D PAUSE ^VALM1 S A NQX=1 Q
  9283   "RTN","PSG OD",20,0)
  9284    .S CLOZPA T=$$GET1^D IQ(603.01, CLOZUID,2, "I"),CLOZP AT=$S(CLOZ PAT="M":2, CLOZPAT="B ":1,CLOZPA T="W":0,1: 90)
  9285   "RTN","PSG OD",21,0)
  9286    ; /MZR PS J*5*327 en d
  9287   "RTN","PSG OD",22,0)
  9288    F  W !!," Do you wan t to copy  this order " S %=2 D  YN^DICN Q: %  D CH
  9289   "RTN","PSG OD",23,0)
  9290    G:%'=1 DO NE
  9291   "RTN","PSG OD",24,0)
  9292    ;
  9293   "RTN","PSG OD",25,0)
  9294    W !!,"... copying... " N OLDON
  9295   "RTN","PSG OD",26,0)
  9296    K PSGORQF
  9297   "RTN","PSG OD",27,0)
  9298    N PSGPDRG ,Q
  9299   "RTN","PSG OD",28,0)
  9300    S PSGOEPR =$P($G(^PS (55,PSGP,5 .1)),"^",2 ),OLDON=PS GORD,Q=""
  9301   "RTN","PSG OD",29,0)
  9302    K PSGODN  S F=$S(PSG ORD["P":"^ PS(53.1,"_ +PSGORD_", ",1:"^PS(5 5,"_PSGP_" ,5,"_+PSGO RD_",") F  N=0,.2,2,2 .1,6 S PSG ODN(N)=$G( @(F_N_")") )
  9303   "RTN","PSG OD",30,0)
  9304    S PSGPR=$ P(PSGODN(0 ),"^",2),P SGMR=$P(PS GODN(0),"^ ",3),PSGSM =$P(PSGODN (0),"^",5) ,PSGHSM=$P (PSGODN(0) ,"^",6),PS GST=$P(PSG ODN(0),"^" ,7)
  9305   "RTN","PSG OD",31,0)
  9306    S PSGPDRG =+PSGODN(. 2),PSGDO=$ P(PSGODN(. 2),"^",2)
  9307   "RTN","PSG OD",32,0)
  9308    ;*315
  9309   "RTN","PSG OD",33,0)
  9310    S:$G(PSGO DN(2.1))]" " PSGDUR=+ PSGODN(2.1 ),PSGRMVT= $P(PSGODN( 2.1),U,2), PSGRMV=$P( PSGODN(2.1 ),U,3),PSG RF=$P(PSGO DN(2.1),U, 4)
  9311   "RTN","PSG OD",34,0)
  9312    S PSGSI=P SGODN(6)
  9313   "RTN","PSG OD",35,0)
  9314    ; The nak ed referen ce below r efers to t he full re ference in side indir ection to  ^PS(55,PSG P,5,+PSGOR D, or ^PS( 55,PSGP,"I V",+PSGORD , or ^PS(5 3.1,+PSGOR D
  9315   "RTN","PSG OD",36,0)
  9316    S PSGODN( 3)=0 F Q=0 :0 S Q=$O( @(F_"3,"_Q _")")) Q:' Q  I $D(^( Q,0)) S PS GODN(3,Q)= ^(0),PSGOD N(3)=PSGOD N(3)+1 S ^ PS(53.45,P SJSYSP,1,Q ,0)=^(0)
  9317   "RTN","PSG OD",37,0)
  9318    ;S:PSGODN (12)>0 ^PS (53.45,PSJ SYSP,4,0)= "^53.4504"  S:PSGODN( 3)>0 ^PS(5 3.45,PSJSY SP,1,0)="^ 53.4501"
  9319   "RTN","PSG OD",38,0)
  9320    S:PSGODN( 3)>0 ^PS(5 3.45,PSJSY SP,1,0)="^ 53.4501"
  9321   "RTN","PSG OD",39,0)
  9322    ; The nak ed referen ce below r efers to t he full re ference in side indir ection to  ^PS(55,PSG P,5,+PSGOR D, or ^PS( 55,PSGP,"I V",+PSGORD , or ^PS(5 3.1,+PSGOR D  
  9323   "RTN","PSG OD",40,0)
  9324    ;338
  9325   "RTN","PSG OD",41,0)
  9326    N PSGK534 5 S PSGK53 45=0
  9327   "RTN","PSG OD",42,0)
  9328    S (PSGODN (1),Q)=0 F   S Q=$O(@ (F_"1,"_Q_ ")")) Q:'Q   S ND=$G( ^(Q,0)) I  ND D
  9329   "RTN","PSG OD",43,0)
  9330    .I '$P(ND ,"^",3),'P SGK5345 S  PSGODN(1)= PSGODN(1)+ 1,PSGODN(1 ,PSGODN(1) )=$P(ND,"^ ",1,2) S ^ PS(53.45,P SJSYSP,2,P SGODN(1),0 )=^(0)
  9331   "RTN","PSG OD",44,0)
  9332    .I '$P(ND ,"^",3),PS GK5345 S P SGODN(1,PS GODN(1))=$ P(ND,"^",1 ,2) S ^PS( 53.45,PSJS YSP,2,PSGO DN(1),0)=^ (0) S PSGO DN(1)=PSGO DN(1)+1,PS GK5345=0 K  ^PS(53.45 ,PSJSYSP,2 ,PSGODN(1) ,0)
  9333   "RTN","PSG OD",45,0)
  9334    .I $P(ND, "^",3) S P SGODN(1)=P SGODN(1)+1  K ^PS(53. 45,PSJSYSP ,2,PSGODN( 1),0) S PS GK5345=1
  9335   "RTN","PSG OD",46,0)
  9336    K PSGK534 5
  9337   "RTN","PSG OD",47,0)
  9338    S PSGS0Y= $P(PSGODN( 2),"^",5), PSGS0XT=$P (PSGODN(2) ,"^",6),PS GNESD="",P SGSCH=$P(P SGODN(2),U )
  9339   "RTN","PSG OD",48,0)
  9340    S PSGODF= 1,PSGNEDFD =$P($$GTNE DFD^PSGOE7 ("U",+PSGP DRG),U)_"^ ^"_PSGST_" ^"_PSGSCH
  9341   "RTN","PSG OD",49,0)
  9342    W "." D ^ PSGNE3
  9343   "RTN","PSG OD",50,0)
  9344    K PSGEFN, PSGOEEF,PS GOEE,PSGOE OS S PSGEF N="1:13" F  X=1:1:13  S PSGEFN(X )=""
  9345   "RTN","PSG OD",51,0)
  9346    S PSGPDN= $$OINAME^P SJLMUTL(PS GPDRG),PSG OINST="",P SGSDN=$$EN DD^PSGMI(P SGNESD)_U_ $$ENDTC^PS GMI(PSGNES D),PSGFDN= $$ENDD^PSG MI(PSGNEFD )_U_$$ENDT C^PSGMI(PS GNEFD)
  9347   "RTN","PSG OD",52,0)
  9348    S PSGAT=P SGS0Y,PSGE BN=DUZ,PSG LIN=$$ENDD ^PSGMI(PSG DT)_U_$$EN DTC^PSGMI( PSGDT),PSG EBN=$$ENNP N^PSGMI(DU Z),PSGSTAT =$S(PSGOEA V:"ACTIVE" ,1:"NON-VE RIFIED")
  9349   "RTN","PSG OD",53,0)
  9350    W "." D C HK^PSGOEV( "^^"_PSGMR _"^^^^"_PS GST,PSGPDR G_U_PSGDO, PSGSCH_U_P SGNESD_"^^ "_PSGNEFD)
  9351   "RTN","PSG OD",54,0)
  9352    I $G(PSGS CH)]"" D
  9353   "RTN","PSG OD",55,0)
  9354    .N X S X= PSGSCH N S WD,SDW,XAB B,QX D ENO S^PSGS0 I  $G(X)=""!$ G(PSJNSS)  S CHK=1 K  PSJNSS Q
  9355   "RTN","PSG OD",56,0)
  9356    .I $G(PSG AT)="",$G( PSGS0Y) S  PSGAT=PSGS 0Y
  9357   "RTN","PSG OD",57,0)
  9358    .I $G(PSG AT),($G(PS GS0Y)="")  S PSGS0Y=P SGAT
  9359   "RTN","PSG OD",58,0)
  9360    .I $G(PSG S0XT)="D", $G(PSGS0Y) ="" S CHK= 1 D  K PSJ NSS
  9361   "RTN","PSG OD",59,0)
  9362    ..W ! K D IR S DIR(0 )="FOA",DI R("A")="    WARNING -  Admin tim es are req uired for  DAY OF WEE K schedule s    " D ^ DIR K DIR
  9363   "RTN","PSG OD",60,0)
  9364    S PSGSD=P SGNESD,PSG FD=PSGNEFD
  9365   "RTN","PSG OD",61,0)
  9366    K PSJACEP T S VALMBC K="Q" D:$D (Y) EN^VAL M("PSJU LM  ACCEPT")
  9367   "RTN","PSG OD",62,0)
  9368    I $G(PSJA CEPT)=1 D  OC S:$D(PS GORQF) PSJ ACEPT=0 S: $G(PSJACEP T)=1 VALMB CK="",PSJN OO=$$ENNOO ^PSJUTL5(" N")
  9369   "RTN","PSG OD",63,0)
  9370    I '$G(PSJ ACEPT)!($G (PSJNOO)<0 ) W:'$G(PS JCOFLG) !! ,"Order no t copied."  D PAUSE^V ALM1:'$G(P SJCOFLG) G  ORIG    ; PSJCOFLG s et in PSOD GAL1 for a llergies
  9371   "RTN","PSG OD",64,0)
  9372    S PSGNESD =PSGSD,PSG NEFD=PSGFD
  9373   "RTN","PSG OD",65,0)
  9374    K PSGOEE  D ^PSGOETO  S PSJORD= PSGORD I P SGOEAV D
  9375   "RTN","PSG OD",66,0)
  9376    .I '$D(PS GOEE),+PSJ SYSU=3 D E N^PSGPEN(P SGORD)
  9377   "RTN","PSG OD",67,0)
  9378    .;; START  NCC REMED IATION >>  327*RJS
  9379   "RTN","PSG OD",68,0)
  9380    .I +$G(PS GCOPY)!(+$ G(PSGEDT))  D
  9381   "RTN","PSG OD",69,0)
  9382    ..I CLOZF LG D
  9383   "RTN","PSG OD",70,0)
  9384    ...I $D(^ TMP($J,"PS GCLOZ",DFN ,+$G(PSJOR D),"SAND") ) D   K ^T MP($J,"PSG CLOZ",DFN, +PSJORD,"S AND")
  9385   "RTN","PSG OD",71,0)
  9386    ....S DIE ="^PS(55," _DFN_",5," ,DA=+PSJOR D,DA(1)=DF N,DR="301/ ///"_^TMP( $J,"PSGCLO Z",DFN,+PS JORD,"SAND ") D ^DIE
  9387   "RTN","PSG OD",72,0)
  9388    ...N PSGD N S PSGDN= $P(CLOZFLG ,U,2)
  9389   "RTN","PSG OD",73,0)
  9390    ...D PSJF ILE^PSJCLO Z(DFN),INP SND^YSCLTS T5 K:$D(^T MP($J,"CLO ZFLG",DFN) ) ^TMP($J, "CLOZFLG", DFN)
  9391   "RTN","PSG OD",74,0)
  9392    .;; END N CC REMEDIA TION >> 32 7*RJS
  9393   "RTN","PSG OD",75,0)
  9394    .D SETOC^ PSJNEWOC(P SGORD) ;RT C 178789 S tore aller gy if auto  vf is on
  9395   "RTN","PSG OD",76,0)
  9396    D GETUD^P SJLMGUD(PS GP,PSGORD) ,ENSFE^PSG OEE0(PSGP, PSGORD),^P SGOE1,EN^V ALM("PSJ L M UD ACTIO N")
  9397   "RTN","PSG OD",77,0)
  9398    ;RTC 1787 89 - store  allery if  not verif ied the ne wly copied  order
  9399   "RTN","PSG OD",78,0)
  9400    I ($G(PSG ORD)["P"), ($P($G(^PS (53.1,+PSG ORD,0)),U, 9)="N"),($ G(PSJOCFG) ="COPY UD" ) D SETOC^ PSJNEWOC(P SGORD)
  9401   "RTN","PSG OD",79,0)
  9402    ;
  9403   "RTN","PSG OD",80,0)
  9404    S PSGCANF L=0,(PSGOR D,PSJORD)= OLDON W !! ,"You are  finished w ith the ne w order.", !,"The fol lowing ACT ION prompt  is for th e original  order."
  9405   "RTN","PSG OD",81,0)
  9406    K DIR S D IR(0)="E"  D ^DIR K D IR
  9407   "RTN","PSG OD",82,0)
  9408   ORIG ;Redi splay orig inal order
  9409   "RTN","PSG OD",83,0)
  9410    D GETUD^P SJLMGUD(PS GP,OLDON), INIT^PSJLM UDE(PSGP,O LDON)
  9411   "RTN","PSG OD",84,0)
  9412   DONE ;
  9413   "RTN","PSG OD",85,0)
  9414    K %,%H,%I ,DA,F,N,PS GODN,PSGOD F,PSGS0XT, PSGS0Y,PSG NESD,PSGTO L,PSGTOO,P SGUOW,X,Y, ^PS(53.45, PSJSYSP,1) ,^PS(53.45 ,PSJSYSP,2 )
  9415   "RTN","PSG OD",86,0)
  9416    K PSGPR,P SGMR,PSGSM ,PSGHSM,PS GST,PSGPDR G,PSGDO,PS GNEDFD,PSG SCH,PSGNEF D
  9417   "RTN","PSG OD",87,0)
  9418    Q
  9419   "RTN","PSG OD",88,0)
  9420    ;
  9421   "RTN","PSG OD",89,0)
  9422   CH ;
  9423   "RTN","PSG OD",90,0)
  9424    W !!?2,"A nswer 'YES ' to have  a new, non -verified  order crea ted for th is patient ,",!,"usin g the info rmation fr om this or der.  (The  START and  STOP date s will be" ,!,"recalc ulated.)   Enter 'NO'  (or '^')  to stop no w." Q
  9425   "RTN","PSG OD",91,0)
  9426    ;
  9427   "RTN","PSG OD",92,0)
  9428   WH ;
  9429   "RTN","PSG OD",93,0)
  9430    W !!?2,"A nswer 'YES ' to take  action on  this new o rder.  Ent er 'NO' (o r '^') to  return",!, "to the or iginal ord er now." Q
  9431   "RTN","PSG OD",94,0)
  9432    ;
  9433   "RTN","PSG OD",95,0)
  9434   OC ;Perfor m order ch ecks
  9435   "RTN","PSG OD",96,0)
  9436    NEW PSJDD ,X,PSJALLG Y
  9437   "RTN","PSG OD",97,0)
  9438    ;*286 - O rder check s on curre nt dispens e drugs
  9439   "RTN","PSG OD",98,0)
  9440    F X=0:0 S  X=$O(^PS( 53.45,PSJS YSP,2,X))  Q:'X  D
  9441   "RTN","PSG OD",99,0)
  9442    . S PSJDD =$G(^PS(53 .45,PSJSYS P,2,X,0))
  9443   "RTN","PSG OD",100,0)
  9444    . I +PSJD D S PSJALL GY(+PSJDD) =""
  9445   "RTN","PSG OD",101,0)
  9446    ;S X=+$O( PSGODN(1,0 )) Q:'X  S  PSJDD=+$G (PSGODN(1, X)) Q:'PSJ DD
  9447   "RTN","PSG OD",102,0)
  9448    S PSJDD=+ $O(PSJALLG Y(0)) Q:'P SJDD
  9449   "RTN","PSG OD",103,0)
  9450    D FULL^VA LM1
  9451   "RTN","PSG OD",104,0)
  9452    ;; START  NCC REMEDI ATION >> 3 27*RJS FOR  TOTAL DAI LY DOSE
  9453   "RTN","PSG OD",105,0)
  9454    I CLOZFLG  S ANQX=0  D TDD^PSJC LOZ
  9455   "RTN","PSG OD",106,0)
  9456    Q:$G(PSGO RQF) 
  9457   "RTN","PSG OD",107,0)
  9458    ;/RJS Beg in PSJ*5.0 *327 modif ication FO R ORDER CH ECKS
  9459   "RTN","PSG OD",108,0)
  9460    S PSJDD=+ $O(PSJALLG Y(0)) Q:'P SJDD
  9461   "RTN","PSG OD",109,0)
  9462    D FULL^VA LM1
  9463   "RTN","PSG OD",110,0)
  9464    D ENDDC^P SGSICHK($G (PSGP),PSJ DD) Q:$G(P SGORQF)
  9465   "RTN","PSG OD",111,0)
  9466    D IN^PSJO CDS($G(PSG ORD),"UD", PSJDD) Q:$ G(PSGORQF)
  9467   "RTN","PSG OD",112,0)
  9468    D ORD^PSJ CLOZ
  9469   "RTN","PSG OD",113,0)
  9470    Q
  9471   "RTN","PSG OE41")
  9472   0^6^B11596 1648
  9473   "RTN","PSG OE41",1,0)
  9474   PSGOE41 ;B IR/CML3-RE GULAR ORDE R ENTRY (C ONT.) ;Jul  26, 2017@ 18:04:02 
  9475   "RTN","PSG OE41",2,0)
  9476    ;;5.0;INP ATIENT MED ICATIONS;* *50,63,64, 69,58,111, 136,113,26 7,315,334, 327**;16 D EC 97;Buil d 64
  9477   "RTN","PSG OE41",3,0)
  9478    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  9479   "RTN","PSG OE41",4,0)
  9480    ; Referen ce to ^DIC N is suppo rted by DB IA 10009.
  9481   "RTN","PSG OE41",5,0)
  9482    ; Referen ce to %DT  is support ed by DBIA  10003.
  9483   "RTN","PSG OE41",6,0)
  9484    ; Referen ce to %DTC  is suppor ted by DBI A 10000.
  9485   "RTN","PSG OE41",7,0)
  9486    ; Referen ce to ^PS( 51.1 is su pported by  DBIA 2177 .
  9487   "RTN","PSG OE41",8,0)
  9488    ; Referen ce to ^PS( 50.7 is su pported by  DBIA# 218 0
  9489   "RTN","PSG OE41",9,0)
  9490    ;
  9491   "RTN","PSG OE41",10,0 )
  9492   39 ; admin  times
  9493   "RTN","PSG OE41",11,0 )
  9494    G:$P(PSGN EDFD,"^",3 )="P"!($P( PSGNEDFD," ^",3)="OC" ) 8
  9495   "RTN","PSG OE41",12,0 )
  9496    I $$ODD^P SGS0(PSGS0 XT) D PSGD UR G 8
  9497   "RTN","PSG OE41",13,0 )
  9498    W !,"ADMI N TIMES: " _$S(PSGS0Y :PSGS0Y_"/ / ",1:"")  R X:DTIME  I X="^"!'$ T W:'$T $C (7) S PSGO ROE1=1,PSG DUR="" G D ONE
  9499   "RTN","PSG OE41",14,0 )
  9500    I X="",PS GS0Y]"" S  PSGNOHI=1, X=PSGS0Y ; *315 If ad min time d efault was  taken the n don't hi ghlight ad min time.
  9501   "RTN","PSG OE41",15,0 )
  9502    I X="",$G (PSGS0XT)= "D" I $L(P SGSCH,"@") =2,$P(PSGS CH,"@",2)  S (PSGAT,P SGS0Y)=$P( PSGSCH,"@" ,2) G 8
  9503   "RTN","PSG OE41",16,0 )
  9504    I X?1."?"  D ENHLP^P SGOEM(53.1 ,39) G 39
  9505   "RTN","PSG OE41",17,0 )
  9506    I X="@" D  DEL G:%'= 1 39 S (PS GFOK(39),P SGS0Y)=""  G 39
  9507   "RTN","PSG OE41",18,0 )
  9508    S PSGF2=3 9 I $E(X)= "^" D FF G :Y>0 @Y G  39
  9509   "RTN","PSG OE41",19,0 )
  9510    I (PSGS0X T="D")&('$ G(X)!(X["@ "&($P($G(X ),"@",2))) ) I ((",P, R,")'[("," _$G(PSGST) _",")) D   G 39
  9511   "RTN","PSG OE41",20,0 )
  9512    .W $C(7), "  ??" S X ="?" W !," This is a  'DAY OF TH E WEEK' sc hedule and  MUST have  admin tim es." D ENH LP^PSGOEM( 53.1,39)
  9513   "RTN","PSG OE41",21,0 )
  9514    I $G(PSGS 0XT)'="D", $G(PSGS0XT )'="P",$G( PSGS0XT)'= "OC" D TIM ES G:'$D(X ) 39 D PSG DUR G:'$D( X) 39 G:$G (X)="^" DO NE ;*315
  9515   "RTN","PSG OE41",22,0 )
  9516    I $G(PSGS 0XT)="O",X ="" S (PSG AT,PSGS0Y) =X,PSGFOK( 39)="" G 8
  9517   "RTN","PSG OE41",23,0 )
  9518    D ENCHK^P SGS0 I '$D (X) W $C(7 ),"  ??" G  39
  9519   "RTN","PSG OE41",24,0 )
  9520    S (PSGAT, PSGS0Y)=X, PSGFOK(39) =""
  9521   "RTN","PSG OE41",25,0 )
  9522    ;
  9523   "RTN","PSG OE41",26,0 )
  9524   8 ; specia l instruct ions
  9525   "RTN","PSG OE41",27,0 )
  9526    S PSGSI=$ $EDITSI^PS JBCMA5($G( PSGP),$G(P SGORD))
  9527   "RTN","PSG OE41",28,0 )
  9528    S PSGF2=8  I $E(X)=" ^" D FF G: Y>0 @Y G 8
  9529   "RTN","PSG OE41",29,0 )
  9530    I X="@",P SGSI="" W  $C(7),"  ? ?" S X="?"  D ENHLP^P SGOEM(53.1 ,8) G 8
  9531   "RTN","PSG OE41",30,0 )
  9532    I X="@" D  DEL G:%'= 1 8 S (PSG FOK(8),PSG SI)="" G:' $G(PSGOE3)  10
  9533   "RTN","PSG OE41",31,0 )
  9534    I X?1."?"  D ENHLP^P SGOEM(53.1 ,8) G 8
  9535   "RTN","PSG OE41",32,0 )
  9536    S PSGSI=$ S((PSGSI>0 &(PSGSI<3) ):$G(^PS(5 3.45,+PSJS YSP,5,1,0) )_" "_$G(^ PS(53.45,+ PSJSYSP,5, 2,0)),PSGS I>2:"Instr uctions to o long. Se e Order Vi ew or BCMA  for full  text",1:"" )
  9537   "RTN","PSG OE41",33,0 )
  9538    S:PSGSI="  " PSGSI=" " I PSGSI] "" S PSGSI =$$ENBCMA^ PSJUTL("U" ),PSGFOK(8 )=""
  9539   "RTN","PSG OE41",34,0 )
  9540    Q:$G(PSGO E3)
  9541   "RTN","PSG OE41",35,0 )
  9542   10 ; start  date/time
  9543   "RTN","PSG OE41",36,0 )
  9544    D ^PSGNE3
  9545   "RTN","PSG OE41",37,0 )
  9546    S:'$D(PSG NESDO) PSG NESDO=$$EN DD^PSGMI(P SGNESD) S  PSGSD=PSGN ESDO
  9547   "RTN","PSG OE41",38,0 )
  9548   A10 W !,"S TART DATE/ TIME: "_PS GSD_"// "  R X:DTIME  I X="^"!'$ T W:'$T $C (7) S PSGO ROE1=1 G D ONE
  9549   "RTN","PSG OE41",39,0 )
  9550    I X="",PS GNESD W "   "_PSGSD G  O25
  9551   "RTN","PSG OE41",40,0 )
  9552    I X="P" D  ENPREV^PS GDL W:'$D( X) $C(7) G :'$D(X) A1 0 S PSGNES D=+X,PSGSD =$$ENDD^PS GMI(+X) W  "  ",PSGSD  G O25
  9553   "RTN","PSG OE41",41,0 )
  9554    S PSGF2=1 0 I X="@"! (X?1."?")  W:X="@" $C (7),"  (Re quired)" S :X="@" X=" ?" D ENHLP ^PSGOEM(53 .1,10)
  9555   "RTN","PSG OE41",42,0 )
  9556    I $E(X)=" ^" D FF G: Y>0 @Y G A 10
  9557   "RTN","PSG OE41",43,0 )
  9558    NEW TMPX  S TMPX=X,X 1=PSGDT,X2 =-7 D C^%D TC K %DT S  %DT="ERTX ",%DT(0)=X ,X=TMPX D  ^%DT K %DT  I Y'>0 D  ENHLP^PSGO EM(53.1,10 ) G A10
  9559   "RTN","PSG OE41",44,0 )
  9560    S PSGNESD =+Y,PSGSD= $$ENDD^PSG MI(+Y),(PS GNEFD,PSGF D)=""
  9561   "RTN","PSG OE41",45,0 )
  9562    ;
  9563   "RTN","PSG OE41",46,0 )
  9564   O25 ;
  9565   "RTN","PSG OE41",47,0 )
  9566    S PSGFOK( 10)="" I $ P(PSGNEDFD ,"^",3)="O " S PSGNEF D=$$ENOSD^ PSJDCU(PSJ SYSW0,PSGN ESD,PSGP)  I PSGNEFD] "" S PSGFD =$$ENDD^PS GMI(PSGNEF D)
  9567   "RTN","PSG OE41",48,0 )
  9568    ;
  9569   "RTN","PSG OE41",49,0 )
  9570   25 ; stop  date
  9571   "RTN","PSG OE41",50,0 )
  9572    Q:$G(PSGO E3)
  9573   "RTN","PSG OE41",51,0 )
  9574    I 'PSGNEF D D ENFD^P SGNE3(PSGD T) S PSGFD =PSGNEFDO
  9575   "RTN","PSG OE41",52,0 )
  9576    ;/RBN-RJS  Begin cha nges for e mergency r egistratio n of cloza pine patie nt Set end  date to s tart date  + 4 days a t midnight .
  9577   "RTN","PSG OE41",53,0 )
  9578    N PSGCFLG ,PSGEMRG,P SGTDTD,CLO ZFLG,CLOZP AT
  9579   "RTN","PSG OE41",54,0 )
  9580    S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, ,,PSGDRG)  I CLOZFLG  D
  9581   "RTN","PSG OE41",55,0 )
  9582    .S PSGCFL G=1,PSGOVR D=$$OVERRI DE^YSCLTST 2(PSGP)
  9583   "RTN","PSG OE41",56,0 )
  9584    .S PSGCFL G=0
  9585   "RTN","PSG OE41",57,0 )
  9586    .I $D(ANQ DATA),$P(A NQDATA,"^" ,3)=9 D
  9587   "RTN","PSG OE41",58,0 )
  9588    ..N X,X1, X2,X3 S X3 =$G(PSGNES D),X1=X3,X 2=4 D C^%D TC S PSGNE FD=X,PSGFD =$$ENDD^PS GMI(PSGNEF D)
  9589   "RTN","PSG OE41",59,0 )
  9590    ..S PSGOL DED=PSGFD, PSGNEFDOLD =PSGNEFD,P SGTDTD=1
  9591   "RTN","PSG OE41",60,0 )
  9592    .I $$GET1 ^DIQ(55,PS GP,53)?1U6 N D
  9593   "RTN","PSG OE41",61,0 )
  9594    ..N X,X1, X2,X3 S X3 =$P(PSGNES D,".",1)_" .2359",X1= X3,X2=4 D  C^%DTC S P SGNEFD=X,P SGFD=$$END D^PSGMI(PS GNEFD)
  9595   "RTN","PSG OE41",62,0 )
  9596    ..S PSGOL DED=PSGFD, PSGNEFDOLD =PSGNEFD,P SGEMRG=1
  9597   "RTN","PSG OE41",63,0 )
  9598    .D CLOZPA T^PSJCLOZ
  9599   "RTN","PSG OE41",64,0 )
  9600    .I $D(CLO ZPAT),'$G( PSGEMRG),' $G(PSGTDTD ) D
  9601   "RTN","PSG OE41",65,0 )
  9602    ..N X,X1, X2
  9603   "RTN","PSG OE41",66,0 )
  9604    ..S X1=PS GNESD,X2=$ S($G(CLOZP AT)=2:28,$ G(CLOZPAT) =1:14,$G(C LOZPAT)=0: 7,1:90) D  C^%DTC S P SGNEFD=X,P SGFD=$$END D^PSGMI(PS GNEFD)
  9605   "RTN","PSG OE41",67,0 )
  9606    ..S PSGCF LG=0,PSGOL DED=PSGFD, PSGNEFDOLD =PSGNEFD
  9607   "RTN","PSG OE41",68,0 )
  9608    ;/RBN-RJS  End chang es for eme rgency reg istration  of clozapi ne patient
  9609   "RTN","PSG OE41",69,0 )
  9610    N MSG,PSG TMPST S PS GTMPST=$G( PSGST) S:' +$G(PSGRF)  PSGRF=+$$ GET1^DIQ(5 0.7,$G(PSG PDRG),12," I") ;*315  One time o rders for  MRR's requ ire messag e to instr uct pharma cists
  9611   "RTN","PSG OE41",70,0 )
  9612    I +$G(PSG RF),$$FIND 1^DIC(51.1 ,,"X",$G(P SGSCH)) D
  9613   "RTN","PSG OE41",71,0 )
  9614    .S:PSGTMP ST=($G(PSG ST)="R") P SGST=$$GET 1^DIQ(51.1 ,$$FIND1^D IC(51.1,," X",$G(PSGS CH)),5,"I" ) ;Handle  "Fill on R equest"
  9615   "RTN","PSG OE41",72,0 )
  9616    I $G(PSGT MPST)="O", +$G(PSGRF)  S (PSGNEF D,PSGFD)=" " D
  9617   "RTN","PSG OE41",73,0 )
  9618    .I +$G(PS GRF)=1 S M SG(1)="Thi s NOW orde r has an O rderable I tem for wh ich a remo val is req uired" D
  9619   "RTN","PSG OE41",74,0 )
  9620    ..S MSG(2 )=" at the  next admi nistration ."
  9621   "RTN","PSG OE41",75,0 )
  9622    ..S MSG(3 )="The Sto p DATE/TIM E entered  should be  the next a nticipated  administr ation for  the medica tion.",MSG (3,"F")="! "
  9623   "RTN","PSG OE41",76,0 )
  9624    .I +$G(PS GRF)=2 S M SG(1)="Thi s NOW orde r has an O rderable I tem for wh ich a remo val period  is option al",MSG(1, "F")="!!"  D
  9625   "RTN","PSG OE41",77,0 )
  9626    ..S MSG(2 )="prior t o the next  administr ation.",MS G(2,"F")=" !"
  9627   "RTN","PSG OE41",78,0 )
  9628    ..S MSG(3 )="If Earl y Removal  is needed,  enter Rem oval Time  in Stop DA TE/TIME fi eld.",MSG( 3,"F")="!"
  9629   "RTN","PSG OE41",79,0 )
  9630    ..S MSG(4 )="If an E arly Remov al is not  required,  the Stop D ATE/TIME e ntered"
  9631   "RTN","PSG OE41",80,0 )
  9632    ..S MSG(5 )="should  be the nex t anticipa ted admini stration f or the med ication.", MSG(5,"F") ="!"
  9633   "RTN","PSG OE41",81,0 )
  9634    .I +$G(PS GRF)=3 S M SG(1)="Thi s NOW orde r has an O rderable I tem that r equires a  removal pe riod prior ",MSG(1,"F ")="!!" D
  9635   "RTN","PSG OE41",82,0 )
  9636    ..S MSG(2 )=" to the  next admi nistration .",MSG(2," F")="!"
  9637   "RTN","PSG OE41",83,0 )
  9638    ..S MSG(3 )="Please  Enter the  Stop DATE/ TIME to re flect the  Removal Ti me for thi s medicati on.",MSG(3 ,"F")="!"
  9639   "RTN","PSG OE41",84,0 )
  9640    .D EN^DDI OL(.MSG)
  9641   "RTN","PSG OE41",85,0 )
  9642   A25 W !,"S TOP DATE/T IME: "_$S( PSGFD]"":P SGFD_"// " ,1:"") R X :DTIME I X ="^"!'$T W :'$T $C(7)  S PSGOROE 1=1 G DONE
  9643   "RTN","PSG OE41",86,0 )
  9644    I X="",PS GNEFD W "    "_PSGFD  S PSGFOK(2 5)=""  G W 25
  9645   "RTN","PSG OE41",87,0 )
  9646    S PSGF2=2 5 I $E(X)= "^" D FF G :Y>0 @Y G  A25
  9647   "RTN","PSG OE41",88,0 )
  9648    I X="@"!( X?1."?") W :X="@" $C( 7),"  (Req uired)" S: X="@" X="? " D ENHLP^ PSGOEM(53. 1,25)
  9649   "RTN","PSG OE41",89,0 )
  9650    I X=+X,(X >0),(X'>20 00000) G A 25:'$$ENDL ^PSGDL(PSG SCH,X) K P SGDLS S PS GDL=X W "  ...dose li mit..." D  EN1^PSGDL
  9651   "RTN","PSG OE41",90,0 )
  9652    K %DT S % DT="ERTX", %DT(0)=PSG NESD D ^%D T K %DT I  Y'>0 W $C( 7),!!?13," *** WARNIN G! INVALID  STOP DATE  OR PRIOR  TO START D ATE! ***", ! G A25
  9653   "RTN","PSG OE41",91,0 )
  9654    ;/RJS Beg in changes  for emerg ency regis tration of  clozapine  patient S et end dat e to start  date + 4  days at mi dnight.
  9655   "RTN","PSG OE41",92,0 )
  9656    I CLOZFLG  D  I $G(P SGCFLG) S  PSGCFLG=0  G A25
  9657   "RTN","PSG OE41",93,0 )
  9658    .N X2 S X 2=$S($G(CL OZPAT)=2:2 8,$G(CLOZP AT)=1:14,$ G(CLOZPAT) =0:7,1:90)
  9659   "RTN","PSG OE41",94,0 )
  9660    .I $G(PSG EMRG)!$G(P SGTDTD) S  X2=4
  9661   "RTN","PSG OE41",95,0 )
  9662    .I $P(Y," .")>$P(PSG NEFD,".")  D  S PSGCF LG=1 Q
  9663   "RTN","PSG OE41",96,0 )
  9664    ..I X2=4  W !!?13,"* ** EMERGEN CY SUPPLY  NOT TO EXC EED 4 DAYS ! ***",! Q
  9665   "RTN","PSG OE41",97,0 )
  9666    ..W !!,"* ** STOP DA TE/TIME NO T TO EXCEE D "_X2_" D AYS! ***", ! Q
  9667   "RTN","PSG OE41",98,0 )
  9668    .S (PSGFD X,PSGFD,PS GNEFD)=+Y, PSGFDN=$$E NDD^PSGMI( PSGFD)_"^" _$$ENDTC^P SGMI(PSGFD )
  9669   "RTN","PSG OE41",99,0 )
  9670    ;/RJS End  changes f or emergen cy registr ation of c lozapine p atient
  9671   "RTN","PSG OE41",100, 0)
  9672   A255 ;
  9673   "RTN","PSG OE41",101, 0)
  9674    I $G(PSGC FLG) S PSG CFLG=0 G A 25
  9675   "RTN","PSG OE41",102, 0)
  9676    S PSGNEFD =+Y,PSGFD= $$ENDD^PSG MI(+Y),PSG FOK(25)=""
  9677   "RTN","PSG OE41",103, 0)
  9678    K PSGEMRG ,PSGTDTD
  9679   "RTN","PSG OE41",104, 0)
  9680    ;; END NC C REMEDIAT ION RJS*32 7
  9681   "RTN","PSG OE41",105, 0)
  9682   W25 ;
  9683   "RTN","PSG OE41",106, 0)
  9684    N Z
  9685   "RTN","PSG OE41",107, 0)
  9686    D DOSE I  $G(Z)]"",Z >PSGNEFD D   G A25
  9687   "RTN","PSG OE41",108, 0)
  9688    .W !,"The re must be  an admin  time that  falls betw een the St art Date/T ime"
  9689   "RTN","PSG OE41",109, 0)
  9690    .W !,"and  the Stop  Date/Time. "
  9691   "RTN","PSG OE41",110, 0)
  9692    I PSGNEFD <PSGDT W $ C(7),!!?13 ,"*** WARN ING! THE S TOP DATE E NTERED IS  IN THE PAS T! ***",!
  9693   "RTN","PSG OE41",111, 0)
  9694    D EFDNEW^ PSJUTL  ;D isplay Exp ected Firs t Dose;BHW ;PSJ*5*136
  9695   "RTN","PSG OE41",112, 0)
  9696    I $G(PSGD UR),'$G(PS GOROE1) D  VERTIMES ; *315
  9697   "RTN","PSG OE41",113, 0)
  9698   NEXT ;
  9699   "RTN","PSG OE41",114, 0)
  9700    S:'+$G(PS GRF) PSGRF =+$$GET1^D IQ(50.7,$G (PSGPDRG), 12,"I")
  9701   "RTN","PSG OE41",115, 0)
  9702    G:'$D(PSG AARR) 1^PS GOE42
  9703   "RTN","PSG OE41",116, 0)
  9704    ;
  9705   "RTN","PSG OE41",117, 0)
  9706   DONE ;
  9707   "RTN","PSG OE41",118, 0)
  9708    I PSGOROE 1 K Y W $C (7),"  ... order not  entered... "
  9709   "RTN","PSG OE41",119, 0)
  9710    K F,F0,F1 ,PSGF2,F3, PSG,SDT,PS GEMRG,PSGC LOZ Q
  9711   "RTN","PSG OE41",120, 0)
  9712    ;
  9713   "RTN","PSG OE41",121, 0)
  9714   FF ; up-ar row to ano ther field
  9715   "RTN","PSG OE41",122, 0)
  9716    D ENFF^PS GOEM I Y>0 ,Y'=39,Y'= 8,Y'=10,Y' =25 S Y=Y_ "^PSGOE4"_ $S("^109^1 3^3^7^26^" [("^"_Y_"^ "):"",1:2)  S:$P(Y,U) =2 FB=PSGF 2_"^PSGOE4 1"
  9717   "RTN","PSG OE41",123, 0)
  9718    Q
  9719   "RTN","PSG OE41",124, 0)
  9720    ;
  9721   "RTN","PSG OE41",125, 0)
  9722   DEL ; dele te entry
  9723   "RTN","PSG OE41",126, 0)
  9724    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  9725   "RTN","PSG OE41",127, 0)
  9726    Q
  9727   "RTN","PSG OE41",128, 0)
  9728   TIMES    ; At least o ne admin t ime, not m ore than i nterval al lows.
  9729   "RTN","PSG OE41",129, 0)
  9730    I $G(PSGS 0XT)'="O", X="" W !," This order  requires  at least o ne adminis tration ti me." K X Q   ;No time s
  9731   "RTN","PSG OE41",130, 0)
  9732    N H,I,MAX
  9733   "RTN","PSG OE41",131, 0)
  9734    I PSGSCH] "" I $D(^P S(51.1,"AC ","PSJ",PS GSCH)) S H =+$O(^PS(5 1.1,"AC"," PSJ",PSGSC H,0)) S I= $P($G(^PS( 51.1,H,0)) ,"^",3)
  9735   "RTN","PSG OE41",132, 0)
  9736    I $G(PSGS T)="O",$L( X,"-")>1 W  !,"This i s a One Ti me Order -  only one  admin time  is permit ted." K X  Q
  9737   "RTN","PSG OE41",133, 0)
  9738    I $G(PSGS T)="O" Q   ;Done vali dating One  Time
  9739   "RTN","PSG OE41",134, 0)
  9740    I +$G(I)= 0 Q  ;No f requency -  can not c heck frequ ency relat ed items
  9741   "RTN","PSG OE41",135, 0)
  9742    S MAX=144 0/I
  9743   "RTN","PSG OE41",136, 0)
  9744    I MAX<1 D   Q
  9745   "RTN","PSG OE41",137, 0)
  9746    . I $L(X, "-")'=1 W  !,"This or der requir es one adm in time."  K X Q
  9747   "RTN","PSG OE41",138, 0)
  9748    I MAX'<1, $L(X,"-")> MAX W !,"T he number  of admin t imes enter ed is grea ter than i ndicated b y the sche dule." K X  Q  ;Too m any times
  9749   "RTN","PSG OE41",139, 0)
  9750    I MAX'<1, $L(X,"-")< MAX W !,"T he number  of admin t imes enter ed is fewe r than ind icated by  the schedu le."  ;Too  few times
  9751   "RTN","PSG OE41",140, 0)
  9752    Q
  9753   "RTN","PSG OE41",141, 0)
  9754   DOSE ;Make  certain a t least on e dose is  given.
  9755   "RTN","PSG OE41",142, 0)
  9756    Q:$G(PSGS T)="OC"!($ G(PSGST)=" P")
  9757   "RTN","PSG OE41",143, 0)
  9758    N INFO,X
  9759   "RTN","PSG OE41",144, 0)
  9760    S Z="",IN FO=($G(PSG NESD))_U_( $G(PSGNEFD ))_U_($G(P SGSCH))_U_ ($G(PSGST) )_U_($G(PS GDRG))_U_( $G(PSGS0Y) )
  9761   "RTN","PSG OE41",145, 0)
  9762    I '$L($G( PSGP)) N P SGP S PSGP =""
  9763   "RTN","PSG OE41",146, 0)
  9764    S Z=$$ENQ ^PSJORP2(P SGP,INFO)   ;Expected  first dos e.
  9765   "RTN","PSG OE41",147, 0)
  9766    Q
  9767   "RTN","PSG OE41",148, 0)
  9768    ;
  9769   "RTN","PSG OE41",149, 0)
  9770    ;*315 new  tags
  9771   "RTN","PSG OE41",150, 0)
  9772   PSGDUR ; P rompt for  Removal ti mes if adm in times a re on 24hr  rotations  and Site  Params are  enabled.
  9773   "RTN","PSG OE41",151, 0)
  9774    ; check p arameter f iles for r emoval cri teria quit  if remova l rotation  not enabl ed (<2)
  9775   "RTN","PSG OE41",152, 0)
  9776    ; if enab led determ ine type ( hard vers  soft stop)
  9777   "RTN","PSG OE41",153, 0)
  9778    ;0 = no r emoval (cu rrent cap/ tab functi onality)
  9779   "RTN","PSG OE41",154, 0)
  9780    ;1 = remo val at nex t admin (c urrent pat ch functio nality)
  9781   "RTN","PSG OE41",155, 0)
  9782    ;2 = remo val prior  to next ad min; soft  stop (phar macist opt ional prom pt to desi gnate dura tion of ad ministrati on
  9783   "RTN","PSG OE41",156, 0)
  9784    ;3 = remo val prior  to next ad min; hard  stop (phar macist req uired prom pt to desi gnate dura tion of ad ministrati on)
  9785   "RTN","PSG OE41",157, 0)
  9786    ; prompt  for remova l if = 2 t hen allow  skip, if =  3 then fo rce entry
  9787   "RTN","PSG OE41",158, 0)
  9788    ;
  9789   "RTN","PSG OE41",159, 0)
  9790    S PSGRF=+ $$GET1^DIQ (50.7,$G(P SGPDRG),12 ,"I") Q:(( PSGRF<2)!( $G(PSGST)= "O")!($G(P SGST)="P") !($G(PSGST )="OC"))   ; no remov al flag or  no remova l rotation
  9791   "RTN","PSG OE41",160, 0)
  9792    Q:$G(PSGS 0XT)>1440   ; Duratio n of Admin istration  valid only  for 24 ho urs - subj ect to cha nge in fut ure.
  9793   "RTN","PSG OE41",161, 0)
  9794    N RP,PSGI DF,WMSG,PS GDERR S (P SGIDF,PSGD ERR)=0 S:$ G(PSGDUR)> 0 RP=PSGDU R/60 S:"BI D,TID,QID" [$G(PSGSCH ) PSGIDF=1  ; Use sep arate vali dation for  Times Per  Day type  orders
  9795   "RTN","PSG OE41",162, 0)
  9796    S PSGF2=3 9
  9797   "RTN","PSG OE41",163, 0)
  9798    W !,"DURA TION OF AD MINISTRATI ON (HRS):  "_$S($G(RP ):RP_"// " ,1:"") R R P:DTIME I  RP="^"!'$T  W:'$T $C( 7) S PSGOR OE1=1,X="^ " K PSGFOK (39) Q
  9799   "RTN","PSG OE41",164, 0)
  9800    I RP="",$ G(PSGS0XT) ="D" I $L( PSGSCH,"@" )=2,$P(PSG SCH,"@",2)  S (PSGAT, PSGRMV)=$P (PSGSCH,"@ ",2) G 8
  9801   "RTN","PSG OE41",165, 0)
  9802    I RP="@", PSGRF'=3 D  DEL G:%'= 1 PSGDUR S  (PSGFOK(3 9),PSGS0Y, PSGDUR,PSG RMVT)="",P SGRMV=-1 S :$$GET1^DI Q(53.1,+$G (PSGORD),1 37) (PSGDU R,PSGRMVT) ="@" Q
  9803   "RTN","PSG OE41",166, 0)
  9804    I (RP'="" ),(RP'="@" ),($E(RP)' ="^"),($E( RP)'="?")  S:(RP'?1N. 2N)!(+(RP) <1) RP="?"
  9805   "RTN","PSG OE41",167, 0)
  9806    I RP?1."? " D DURHLP ^PSGOEM(RP ,PSGRF) G  PSGDUR
  9807   "RTN","PSG OE41",168, 0)
  9808    I $E(RP)= "^" D FF G :Y>0 @Y G  PSGDUR
  9809   "RTN","PSG OE41",169, 0)
  9810    I (+RP>0) ,'PSGIDF D   I PSGRMV <1 G PSGDU R ; exclud e TPD sche dules
  9811   "RTN","PSG OE41",170, 0)
  9812    .S PSGDUR =(RP*60),P SGRMV=$G(P SGS0XT)-PS GDUR
  9813   "RTN","PSG OE41",171, 0)
  9814    .I PSGRMV <1 W !,"DU RATION OF  ADMINISTRA TION MATCH ES OR EXCE EDS ORDER  FREQUENCY"  S RP="",P SGDERR=1 K  PSGDUR,PS GRMV Q  ;G  PSGDUR
  9815   "RTN","PSG OE41",172, 0)
  9816    Q:$G(PSGD ERR)=1
  9817   "RTN","PSG OE41",173, 0)
  9818    I PSGRF=3 ,(+RP<1) W  !,"ENTRY  IS REQUIRE D" S RP=""  G PSGDUR
  9819   "RTN","PSG OE41",174, 0)
  9820    I PSGRF=2 ,(+RP<1) D
  9821   "RTN","PSG OE41",175, 0)
  9822    .W !,"You  have not  entered Du ration of  Administra tion for t his medica tion order , "
  9823   "RTN","PSG OE41",176, 0)
  9824    .W !,"the refore the  BCMA user  will not  be prompte d to remov e the medi cation pri or "
  9825   "RTN","PSG OE41",177, 0)
  9826    .W !,"to  the next A dmin Time. "
  9827   "RTN","PSG OE41",178, 0)
  9828    .S PSGRMV =-1,RP=0
  9829   "RTN","PSG OE41",179, 0)
  9830    I PSGIDF, (+RP>0) D   ;Only for  TPD sched ules
  9831   "RTN","PSG OE41",180, 0)
  9832    .N F,P,PS GARR
  9833   "RTN","PSG OE41",181, 0)
  9834    .S PSGADT =$S($G(PSG DUR)=-1:X, $G(PSGS0Y) :PSGS0Y,$G (PSGAT):PS GAT,1:""), PSGAT=PSGA DT
  9835   "RTN","PSG OE41",182, 0)
  9836    .S PSGARR =$L($G(PSG ADT),"-")
  9837   "RTN","PSG OE41",183, 0)
  9838    .F P=1:1: PSGARR D
  9839   "RTN","PSG OE41",184, 0)
  9840    ..S PSGAR R(P)=($P(P SGADT,"-", P)/100) S: (P>1) F(P) =PSGARR(P) -PSGARR(P- 1)
  9841   "RTN","PSG OE41",185, 0)
  9842    ..I $G(F( P)),($G(F( P))'=RP) S  WMSG=1_U_ "Duration  of Adminis tration do es not cor respond to  one or mo re",WMSG(1 )="of this  order's s cheduled A dministrat ion Times! "
  9843   "RTN","PSG OE41",186, 0)
  9844    S:(+RP>0)  PSGDUR=(R P*60)
  9845   "RTN","PSG OE41",187, 0)
  9846    W:(+RP>0)  ?60,RP,"  HOURS"
  9847   "RTN","PSG OE41",188, 0)
  9848    D:$G(WMSG ) EN^DDIOL ($P(WMSG,U ,2)),EN^DD IOL(WMSG(1 ))
  9849   "RTN","PSG OE41",189, 0)
  9850    Q:'$G(PSG OE3)!'+$G( PSGDUR)
  9851   "RTN","PSG OE41",190, 0)
  9852    ;
  9853   "RTN","PSG OE41",191, 0)
  9854   VERTIMES ;  Redisplay  Admin and  Removal t imes
  9855   "RTN","PSG OE41",192, 0)
  9856    S PSGRF=+ $$GET1^DIQ (50.7,$G(P SGPDRG),12 ,"I") Q:(P SGRF<2)!($ G(PSGST)=" O")
  9857   "RTN","PSG OE41",193, 0)
  9858    N PSGADT, PSGRARR,PS GAARR
  9859   "RTN","PSG OE41",194, 0)
  9860    ;If we ha ve a frequ ency and t his is odd  type orde r then we  need to st art calcul ations wit h order st art time.
  9861   "RTN","PSG OE41",195, 0)
  9862    I $G(PSGS 0XT),$G(PS GNESD),+$G (PSGDUR),$ G(PSGAT)=" ",$G(PSGS0 Y)="" D  Q
  9863   "RTN","PSG OE41",196, 0)
  9864    .N L
  9865   "RTN","PSG OE41",197, 0)
  9866    .S (PSGAA RR,PSGRARR )=1,PSGADT =$P($P(PSG NESD,U,1), ".",2),L=$ L(PSGADT)
  9867   "RTN","PSG OE41",198, 0)
  9868    .S PSGRAR R(1)=((((( PSGADT*60) +PSGDUR)/6 0)#24)*100 ) S:PSGRAR R(1)=0 PSG RARR(1)=24 00 S:$L(PS GRARR(1))= 3 PSGRARR( 1)="0"_PSG RARR(1)
  9869   "RTN","PSG OE41",199, 0)
  9870    .S PSGRAR R(1)=$E(PS GRARR(1),1 ,L)_"(R)"
  9871   "RTN","PSG OE41",200, 0)
  9872    .S PSGAAR R(1)=PSGAD T,PSGAARR( 1)=$E(PSGA ARR(1),1,L )_"(A)"
  9873   "RTN","PSG OE41",201, 0)
  9874    .D WRITE
  9875   "RTN","PSG OE41",202, 0)
  9876    ;
  9877   "RTN","PSG OE41",203, 0)
  9878    S (PSGRAR R,PSGAARR) =$S($G(PSG AT):$L(PSG AT,"-"),1: $L(PSGS0Y, "-"))
  9879   "RTN","PSG OE41",204, 0)
  9880    N P,L
  9881   "RTN","PSG OE41",205, 0)
  9882    F P=1:1:P SGRARR D
  9883   "RTN","PSG OE41",206, 0)
  9884    .S PSGADT =$S($G(PSG AT):$P(PSG AT,"-",P), 1:$P(PSGS0 Y,"-",P)), L=$L(PSGAD T)
  9885   "RTN","PSG OE41",207, 0)
  9886    .S PSGADT =$S($L(PSG ADT)=4:PSG ADT/100,1: PSGADT*1)
  9887   "RTN","PSG OE41",208, 0)
  9888    .S PSGRAR R(P)=((((( PSGADT*60) +PSGDUR)/6 0)#24)*100 ) S:PSGRAR R(P)=0 PSG RARR(P)=24 00 S:$L(PS GRARR(P))= 3 PSGRARR( P)="0"_PSG RARR(P)
  9889   "RTN","PSG OE41",209, 0)
  9890    .S PSGRAR R(P)=$E(PS GRARR(P),1 ,L)_"(R)"
  9891   "RTN","PSG OE41",210, 0)
  9892    .S PSGAAR R(P)=(PSGA DT*100) S: $L(PSGAARR (P))=3 PSG AARR(P)="0 "_PSGAARR( P)
  9893   "RTN","PSG OE41",211, 0)
  9894    .S PSGAAR R(P)=$E(PS GAARR(P),1 ,L)_"(A)"
  9895   "RTN","PSG OE41",212, 0)
  9896    D WRITE
  9897   "RTN","PSG OE41",213, 0)
  9898    Q
  9899   "RTN","PSG OE41",214, 0)
  9900    ;
  9901   "RTN","PSG OE41",215, 0)
  9902   WRITE ;
  9903   "RTN","PSG OE41",216, 0)
  9904    W !!,"Ver ify Admin  and remova l times",!
  9905   "RTN","PSG OE41",217, 0)
  9906    W !,"(A)D MINISTRATI ON -(R)EMO VAL TIMES"
  9907   "RTN","PSG OE41",218, 0)
  9908    W !,"____ __________ __________ __________ __________ __________ __________ __________ _",!
  9909   "RTN","PSG OE41",219, 0)
  9910    F P=1:1:P SGAARR W P SGAARR(P)_ "-"_PSGRAR R(P)  W:P' =PSGAARR "  , "
  9911   "RTN","PSG OE41",220, 0)
  9912    D ASK
  9913   "RTN","PSG OE41",221, 0)
  9914    Q
  9915   "RTN","PSG OE41",222, 0)
  9916    ;
  9917   "RTN","PSG OE41",223, 0)
  9918   ASK ;
  9919   "RTN","PSG OE41",224, 0)
  9920    N Y
  9921   "RTN","PSG OE41",225, 0)
  9922    S DIR("A" )="Is this  correct", DIR(0)="Y"  D ^DIR I  $D(DUOUT)! $D(DTOUT)  W:'$T $C(7 ) S PSGOEE =0 K PSGDU R G DONE
  9923   "RTN","PSG OE41",226, 0)
  9924    I 'Y K X  S PSGDUR=- 1 G 39
  9925   "RTN","PSG OE41",227, 0)
  9926    N P S P=1 ,PSGRMVT=$ P(PSGRARR( P),"(",1)
  9927   "RTN","PSG OE41",228, 0)
  9928    F  S P=$O (PSGRARR(P )) Q:P=""   D
  9929   "RTN","PSG OE41",229, 0)
  9930    .S PSGRMV T=PSGRMVT_ "-"_$P(PSG RARR(P),"( ",1)
  9931   "RTN","PSG OE41",230, 0)
  9932    Q
  9933   "RTN","PSG OE41",231, 0)
  9934    ;
  9935   "RTN","PSG OE42")
  9936   0^2^B12999 428
  9937   "RTN","PSG OE42",1,0)
  9938   PSGOE42 ;B IR/CML3-RE GULAR ORDE R ENTRY (C ONT.) ;Jul  26, 2017@ 18:04:02
  9939   "RTN","PSG OE42",2,0)
  9940    ;;5.0;INP ATIENT MED ICATIONS ; **327**;16  DEC 97;Bu ild 64
  9941   "RTN","PSG OE42",3,0)
  9942    ;
  9943   "RTN","PSG OE42",4,0)
  9944    ;
  9945   "RTN","PSG OE42",5,0)
  9946   1 I +$G(PS GCLOZ) K P SGCLOZ Q   ;NCC REDEM TION *327/ RJS QUIT I F STOP DAT E HAS BEEN  MODIFIED  AND PROCES S
  9947   "RTN","PSG OE42",6,0)
  9948    ; provide r
  9949   "RTN","PSG OE42",7,0)
  9950    I '+$G(PS JSYSU) S P STMPI=PSGP R,PSTMPN=P SGPRN G A1
  9951   "RTN","PSG OE42",8,0)
  9952    I $S(+PSJ SYSU=3:0,1 :$P(PSJSYS U,";",2))  G:$P(PSJSY SW0,"^",24 ) 5 G DONE
  9953   "RTN","PSG OE42",9,0)
  9954    S PSTMPI= PSGPR,PSTM PN=PSGPRN
  9955   "RTN","PSG OE42",10,0 )
  9956    ;;A1 W !, "PROVIDER:  ",$S(PSGP R:PSGPRN_" // ",1:"")  R X:DTIME  I X="^"!' $T W:'$T $ C(7) S PSG OROE1=1 G  DONE
  9957   "RTN","PSG OE42",11,0 )
  9958   A1 W !,"PR OVIDER: ", $S(PSGPR:P SGPRN_"//  ",1:"") R  X:DTIME I  X="^" W $C (7) S PSGO ROE1=1 G D ONE
  9959   "RTN","PSG OE42",12,0 )
  9960    I $S(X="" :'PSGPR,1: X="@") W $ C(7),"  (R equired)"  S X="?",PS GF2=1 D EN HLP^PSGOEM (53.1,1) G  1
  9961   "RTN","PSG OE42",13,0 )
  9962    I X="",PS GPR S X=PS GPRN I PSG PR'=PSGPRN ,$$GET1^DI Q(200,PSGP R,53.1,"I" ) W "    " _$$GET1^DI Q(200,PSGP R,53.2)_"     "_$$GET 1^DIQ(200, PSGPR,53.3 ) S PSGFOK (1)="" G A 2
  9963   "RTN","PSG OE42",14,0 )
  9964    S PSGF2=1  I X?1."?"  D ENHLP^P SGOEM(53.1 ,1)
  9965   "RTN","PSG OE42",15,0 )
  9966    I $E(X)=" ^" D FF G: Y>0 @Y G 1
  9967   "RTN","PSG OE42",16,0 )
  9968    K DIC S D IC="^VA(20 0,",DIC(0) ="EMQZ",DI C("S")="I  $D(^(""PS" ")),^(""PS ""),$S('$P (^(""PS"") ,""^"",4): 1,1:$P(^(" "PS""),""^ "",4)>DT)"  D ^DIC K  DIC I Y'>0  G 1
  9969   "RTN","PSG OE42",17,0 )
  9970    S PSGPR=+ Y,PSGPRN=$ P(Y(0,0)," ^"),PSGFOK (1)=""
  9971   "RTN","PSG OE42",18,0 )
  9972   A2 ;; STAR T NCC T4 M ODS >> 327 *RJS
  9973   "RTN","PSG OE42",19,0 )
  9974    I $$ISCLO Z^PSJCLOZ( ,,,,PSGDRG ) D
  9975   "RTN","PSG OE42",20,0 )
  9976    .S ANQX=0  D PROVCHK ^PSJCLOZ(P SGPR) ;(PS GP,PSGDRG)
  9977   "RTN","PSG OE42",21,0 )
  9978    .I ANQX=0  K PSTMPN, PSTMPI
  9979   "RTN","PSG OE42",22,0 )
  9980    I $G(ANQX ) S PSGPR= PSTMPI,PSG PRN=PSTMPN  W ! K ANQ X G A1
  9981   "RTN","PSG OE42",23,0 )
  9982    ;; END NC C T4 MODS  << 327*RJS
  9983   "RTN","PSG OE42",24,0 )
  9984   5 ; self m ed
  9985   "RTN","PSG OE42",25,0 )
  9986    I '$P(PSJ SYSW0,"^", 24) G DONE
  9987   "RTN","PSG OE42",26,0 )
  9988   A5 W !,"SE LF MED: "  W:PSGSM]""  $P("NO^YE S","^",PSG SM+1),"//  " R X:DTIM E I X="^"! '$T W:'$T  $C(7) S PS GOROE1=1 G  DONE
  9989   "RTN","PSG OE42",27,0 )
  9990    I "01"[X, $L(X)<2 S: PSGSM=""&( X]"") PSGS M=X W:PSGS M]"" "  (" ,$P("NO^YE S","^",PSG SM+1),")"  G DONE
  9991   "RTN","PSG OE42",28,0 )
  9992    I X="@" W :PSGSM=""  $C(7),"  ? ?" G:PSGSM ="" A5 D D EL G:%'=1  A5 S (PSGS M,PSGHSM)= "" G DONE
  9993   "RTN","PSG OE42",29,0 )
  9994    S PSGF2=5  I X?1"^". E D FF G:Y >0 @Y G A5
  9995   "RTN","PSG OE42",30,0 )
  9996    I X?1."?"  S PSGF2=5  D ENHLP^P SGOEM(53.1 ,5) G A5
  9997   "RTN","PSG OE42",31,0 )
  9998    D YN I  S  PSGSM=$E( X)="Y",PSG FOK(5)=""  G 6:PSGSM, DONE
  9999   "RTN","PSG OE42",32,0 )
  10000    W $C(7) D  ENHLP^PSG OEM(53.1,5 ) G A5
  10001   "RTN","PSG OE42",33,0 )
  10002    ;
  10003   "RTN","PSG OE42",34,0 )
  10004   6 ; hospit al supplie d self med
  10005   "RTN","PSG OE42",35,0 )
  10006    W !,"HOSP ITAL SUPPL IED SELF M ED: " W:PS GHSM]"" $P ("NO^YES", "^",PSGHSM +1),"// "  R X:DTIME  I X="^"!'$ T W:'$T $C (7) S PSGO ROE1=1 G D ONE
  10007   "RTN","PSG OE42",36,0 )
  10008    I "01"[X, $L(X)<2 S: PSGHSM=""& (X]"") PSG HSM=X W:PS GHSM]"" "   (",$P("NO ^YES","^", PSGHSM+1), ")" G DONE
  10009   "RTN","PSG OE42",37,0 )
  10010    I X="@" W :PSGHSM=""  $C(7),"   ??" G:PSGH SM="" 6 D  DEL G:%'=1  6 S PSGHS M="" G DON E
  10011   "RTN","PSG OE42",38,0 )
  10012    S PSGF2=6  I X?1"^". E D FF G:Y >0 @Y G 6
  10013   "RTN","PSG OE42",39,0 )
  10014    I X?1."?"  D ENHLP^P SGOEM(53.1 ,6) G 6
  10015   "RTN","PSG OE42",40,0 )
  10016    D YN I  S  PSGHSM=$E (X)="Y" G  DONE
  10017   "RTN","PSG OE42",41,0 )
  10018    W $C(7) S  PSGF2=6 D  ENHLP^PSG OEM(53.1,6 ) G 6
  10019   "RTN","PSG OE42",42,0 )
  10020    Q
  10021   "RTN","PSG OE42",43,0 )
  10022    ;
  10023   "RTN","PSG OE42",44,0 )
  10024   DONE ;
  10025   "RTN","PSG OE42",45,0 )
  10026    K F,F0,F1 ,PSGF2,F3, PSG,SDT Q
  10027   "RTN","PSG OE42",46,0 )
  10028    ;
  10029   "RTN","PSG OE42",47,0 )
  10030   FF ; up-ar row to ano ther field
  10031   "RTN","PSG OE42",48,0 )
  10032    D ENFF^PS GOEM I Y>0 ,Y'=1,Y'=5  S Y=Y_"^P SGOE4"_$S( "^109^13^3 ^7^26^"[(" ^"_Y_"^"): "",1:1)
  10033   "RTN","PSG OE42",49,0 )
  10034    Q
  10035   "RTN","PSG OE42",50,0 )
  10036    ;
  10037   "RTN","PSG OE42",51,0 )
  10038   DEL ; dele te entry
  10039   "RTN","PSG OE42",52,0 )
  10040    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  10041   "RTN","PSG OE42",53,0 )
  10042    Q
  10043   "RTN","PSG OE42",54,0 )
  10044    ;
  10045   "RTN","PSG OE42",55,0 )
  10046   YN ; yes/n o as a set  of codes
  10047   "RTN","PSG OE42",56,0 )
  10048    I X'?.U F  Y=1:1:$L( X) I $E(X, Y)?1L S X= $E(X,1,Y-1 )_$C($A(X, Y)-32)_$E( X,Y+1,$L(X ))
  10049   "RTN","PSG OE42",57,0 )
  10050    F Y="NO", "YES" I $P (Y,X)="" W  $P(Y,X,2)  Q
  10051   "RTN","PSG OE42",58,0 )
  10052    Q
  10053   "RTN","PSG OE42",59,0 )
  10054    ;
  10055   "RTN","PSG OE42",60,0 )
  10056   2 ; dispen se drug mu ltiple
  10057   "RTN","PSG OE42",61,0 )
  10058    I PSGDRG, '$D(^PS(53 .45,PSJSYS P,2)) S ^( 2,0)="^53. 4502P^1^1" ,^(1,0)=PS GDRG_"^"_P SGUD
  10059   "RTN","PSG OE42",62,0 )
  10060    K DA,DR S  DIE="^PS( 53.45,",DA =PSJSYSP,D R=2,DR(2,5 3.4502)=$S ($G(PSGFOK (13)):.02, 1:".01;.02 ") D ^DIE
  10061   "RTN","PSG OE42",63,0 )
  10062    I '$O(^PS (53.45,PSJ SYSP,2,0))  W $C(7),! !,"WARNING : This ord er must ha ve at leas t one disp ense drug  before pha rmacy can" ,!?9,"veri fy it!"
  10063   "RTN","PSG OE42",64,0 )
  10064    I $G(PSGF OK(13)) Q
  10065   "RTN","PSG OE42",65,0 )
  10066    G @FB
  10067   "RTN","PSG OE7")
  10068   0^4^B44925 465
  10069   "RTN","PSG OE7",1,0)
  10070   PSGOE7 ;BI R/CML3-SEL ECT DRUG ; Jul 26, 20 17@18:04:0 2
  10071   "RTN","PSG OE7",2,0)
  10072    ;;5.0;INP ATIENT MED ICATIONS;* *9,26,34,5 2,55,50,87 ,111,181,2 54,267,260 ,288,281,3 17,327**;1 6 DEC 97;B uild 64
  10073   "RTN","PSG OE7",3,0)
  10074    ;
  10075   "RTN","PSG OE7",4,0)
  10076    ; Referen ce to ^PS( 50.7 is su pported by  DBIA 2180
  10077   "RTN","PSG OE7",5,0)
  10078    ; Referen ce to ^PS( 59.7 is su pported by  DBIA 2181
  10079   "RTN","PSG OE7",6,0)
  10080    ; Referen ce to ^PSD RUG( is su pported by  DBIA 2192
  10081   "RTN","PSG OE7",7,0)
  10082    ; Referen ce to ^PSN APIS is su pported by  DBIA 2531
  10083   "RTN","PSG OE7",8,0)
  10084    ; Referen ce to $$GE T^XPAR is  supported  by DBIA 22 63
  10085   "RTN","PSG OE7",9,0)
  10086    ; Referen ce to ^VAD PT is supp orted by D BIA 10061
  10087   "RTN","PSG OE7",10,0)
  10088    ; Referen ce to ^TMP ("PSODAOC" ,$J suppor ted by DBI A 6071
  10089   "RTN","PSG OE7",11,0)
  10090    ; NFI-UD  chgs for F R#: 1
  10091   "RTN","PSG OE7",12,0)
  10092    ; 
  10093   "RTN","PSG OE7",13,0)
  10094    ;S PSGDIC S="U"_$S($ D(PSJOERR) :",I",1:"" )
  10095   "RTN","PSG OE7",14,0)
  10096    S PSGDICS ="U"
  10097   "RTN","PSG OE7",15,0)
  10098    ;
  10099   "RTN","PSG OE7",16,0)
  10100   AD ; Ask D rug
  10101   "RTN","PSG OE7",17,0)
  10102    K PSJDOSE ,PSJDOX ;v ar array u se in ^PSJ DOSE
  10103   "RTN","PSG OE7",18,0)
  10104    K PSGODO, ^TMP("PSJI NTER",$J)  D KILL^PSJ BCMA5(+$G( PSJSYSP))
  10105   "RTN","PSG OE7",19,0)
  10106    K DIC S D IC="^PS(50 .7,",DIC(0 )="EMQZVT" ,D="B^C" I  '$P(PSJSY SU,";",4)  S DIC("S") ="I $$ENOI SC^PSJUTL( Y,""U"")"
  10107   "RTN","PSG OE7",20,0)
  10108    N PSJTABS ,PSJPLTYP, PSJPDLOC
  10109   "RTN","PSG OE7",21,0)
  10110    E  D
  10111   "RTN","PSG OE7",22,0)
  10112    .I '$D(PS JDGCK) S D IC("T")="" ,DIC="^PSD RUG(",DIC( "S")="I $$ GET1^DIQ(5 0,+Y,2.1," "I""),$$GE T1^DIQ(50, +Y,63)[""U "" S X(1)= +$$GET1^DI Q(50,+Y,10 0,""I"") I  $S('X(1): 1,1:X(1)>D T)",D="B^C ^VAPN^VAC^ NDC^XATC"
  10113   "RTN","PSG OE7",23,0)
  10114    .I $D(PSJ DGCK) S DI C("T")="", DIC="^PSDR UG(",DIC(" S")="I $$G ET1^DIQ(50 ,+Y,2.1,"" I""),$$GCN ^PSGOE7(+Y ),$$PKGFLG ^PSGOE7($$ GET1^DIQ(5 0,+Y,63))  S X(1)=+$$ GET1^DIQ(5 0,+Y,100," "I"") I $S ('X(1):1,1 :X(1)>DT)" ,D="B^C^VA PN^VAC^NDC ^XATC"
  10115   "RTN","PSG OE7",24,0)
  10116    ;
  10117   "RTN","PSG OE7",25,0)
  10118   AD1 ;
  10119   "RTN","PSG OE7",26,0)
  10120    K PSGORD, PSJORD,PSJ ALLGY,PSGU SRX,^TMP(" PSJINTER", $J),^PS(53 .45,+$G(PS JSYSP),5), ^PS(53.45, +$G(PSJSYS P),6),PSJP LTYP,PSJPD LOC
  10121   "RTN","PSG OE7",27,0)
  10122    K ^TMP("P SODAOC",$J )
  10123   "RTN","PSG OE7",28,0)
  10124    S PSGORQF =0 R !!,"S elect DRUG : ",X:DTIM E I '$T W  $C(7) S X= "^"
  10125   "RTN","PSG OE7",29,0)
  10126    ; -- save  off value  of X in P SGUSRX so  variable c an be reli able check ed at DO t ag
  10127   "RTN","PSG OE7",30,0)
  10128    S PSGUSRX =X
  10129   "RTN","PSG OE7",31,0)
  10130    I $D(PSJD GCK) I ($G (PSJOCNT)= 1&(X=""))  D  Q
  10131   "RTN","PSG OE7",32,0)
  10132    .W !!,"No t enough a ctive prof ile drugs  to perform  drug chec k",!
  10133   "RTN","PSG OE7",33,0)
  10134    .K DIR S  DIR(0)="E" ,DIR("A")= "Press Ret urn to Con tinue..."  D ^DIR K D IR W @IOF
  10135   "RTN","PSG OE7",34,0)
  10136    I $D(PSJD GCK),X=""  N PSGDGCKF  S PSGDGCK F=1 G DGCK X
  10137   "RTN","PSG OE7",35,0)
  10138    I ("^"[X) !(X="") S  PSGORQF=1  G DONE
  10139   "RTN","PSG OE7",36,0)
  10140    G:X?1"S." 1.E DONE
  10141   "RTN","PSG OE7",37,0)
  10142    I X?1."?"  W !!?2,"S elect the  medication  you wish  the patien t to recei ve." W:PSJ SYSU<3 "   You should  consult", !,"with yo ur pharmac y before o rdering an y non-form ulary medi cation." W  !
  10143   "RTN","PSG OE7",38,0)
  10144    ; PSJ*5*3 17 - PADE  - Define P ADE identi fier for l ookups if  kernel par ameter tur ned on
  10145   "RTN","PSG OE7",39,0)
  10146    I $$GET^X PAR("SYS", "PSJ PADE  OE BALANCE S") N PSJT ABS N:'$G( VAIN(4))&$ G(PSGP) VA IN,DFN,PSJ TABS D
  10147   "RTN","PSG OE7",40,0)
  10148    .N PSJORC L,PSJCLNK  K DIC("W")
  10149   "RTN","PSG OE7",41,0)
  10150    .I '$G(VA IN(4)),$G( PSGP) S DF N=PSGP D I NP^VADPT
  10151   "RTN","PSG OE7",42,0)
  10152    .; If cli nic order,  quit if c linic loca tion is no t linked t o PADE
  10153   "RTN","PSG OE7",43,0)
  10154    .S PSJORC L="" I $G( PSGORD)["P " S PSJORC L=$$GET1^D IQ(53.1,+$ G(PSGORD), 113,"I")_" ^"_$$GET1^ DIQ(53.1,+ $G(PSGORD) ,126,"I")  I 1
  10155   "RTN","PSG OE7",44,0)
  10156    .E  I $G( PSGORD)["U " S PSJORC L=$$GET1^D IQ(55.06,+ $G(PSGORD) _","_+$G(P SGP),130," I")_"^"_$$ GET1^DIQ(5 5.06,+$G(P SGORD)_"," _+$G(PSGP) ,131,"I")  I 1
  10157   "RTN","PSG OE7",45,0)
  10158    .E  I $G( PSGORD)["V " S PSJORC L=$$GET1^D IQ(55.01,+ $G(PSGORD) _","_+$G(P SGP),136," I")_"^"_$$ GET1^DIQ(5 5.01,+$G(P SGORD)_"," _+$G(PSGP) ,139,"I")
  10159   "RTN","PSG OE7",46,0)
  10160    .I PSJORC L,$P(PSJOR CL,"^",2)  S PSJCLNK= $$PADECL^P SJPAD50(+$ G(PSJORCL) ) Q:'PSJCL NK
  10161   "RTN","PSG OE7",47,0)
  10162    .I '$G(PS JCLNK) Q:' $$PADEWD^P SJPAD50(+$ G(VAIN(4)) )
  10163   "RTN","PSG OE7",48,0)
  10164    .S $P(PSJ TABS," ",4 0)=""
  10165   "RTN","PSG OE7",49,0)
  10166    .S PSJPLT YP=$S($G(P SJCLNK):"" "CL""",1:" ""WD"""),P SJPDLOC=$S (PSJPLTYP= "CL":+PSJO RCL,1:+$G( VAIN(4)))
  10167   "RTN","PSG OE7",50,0)
  10168    .S DIC("W ")="W $E(P SJTABS,1,( 40-$L($S($ G(DIY)]""" ":$G(DIY), 1:$$GET1^D IQ(50,+$G( Y),.01)))) )_""  PADE : ""_$$DRG QTY^PSJPAD SI(+Y,"_PS JPLTYP_"," _$G(PSJPDL OC)_")_""    ""_$$GET 1^DIQ(50,+ Y,101)"
  10169   "RTN","PSG OE7",51,0)
  10170    ;
  10171   "RTN","PSG OE7",52,0)
  10172    D MIX^DIC 1 G:X?1."? " AD1 G:"^ "[X!(Y'>0)  AD1 S (PS GDO,PSGDRG ,PSGDRGN,P SGNEDFD,PS GPDRG,PSGP DRGN)=""
  10173   "RTN","PSG OE7",53,0)
  10174    I $D(PSJD GCK) I $$P SJSUPCK^PS JDGCK(+Y)  G AD1
  10175   "RTN","PSG OE7",54,0)
  10176    ;
  10177   "RTN","PSG OE7",55,0)
  10178   DGCKX I $P (PSJSYSU," ;",4) D  G  DO
  10179   "RTN","PSG OE7",56,0)
  10180    .S:'$D(PS JDGCK) PSG DRG=+Y,PSG DRGN=Y(0,0 )
  10181   "RTN","PSG OE7",57,0)
  10182    .S:$D(PSJ DGCK)&'$D( PSGDGCKF)  PSGDRG=+Y, PSGDRGN=Y( 0,0)
  10183   "RTN","PSG OE7",58,0)
  10184    .S:$D(PSJ DGCK)&$D(P SGDGCKF) P SGDRG=$P($ $DGCKIEN^P SJDGCK()," ;",2),PSGD RGN=$$GET1 ^DIQ(50,PS GDRG,.01)
  10185   "RTN","PSG OE7",59,0)
  10186    .D DIN^PS JDIN(+$$GE T1^DIQ(50, PSGDRG,2.1 ,"I"),PSGD RG)
  10187   "RTN","PSG OE7",60,0)
  10188    .I '$D(PS JDGCK) I $ P(Y(0),"^" ,9) D NF S :Y>0 PSGDR G=+Y(0),PS GDRGN=Y(0, 0) D SNFM
  10189   "RTN","PSG OE7",61,0)
  10190    .I $D(PSJ DGCK)&'$D( PSGDGCKF)  I $P(Y(0), "^",9) D N F S:Y>0 PS GDRG=+Y(0) ,PSGDRGN=Y (0,0) D SN FM
  10191   "RTN","PSG OE7",62,0)
  10192    .S PSGPDR G=+$$GET1^ DIQ(50,PSG DRG,2.1,"I "),PSGPDRG N=$$OINAME ^PSJLMUTL( PSGPDRG)
  10193   "RTN","PSG OE7",63,0)
  10194    I '$D(PSJ DGCK) S PS GPDRG=+Y,P SGPDRGN=$$ OINAME^PSJ LMUTL(PSGP DRG)
  10195   "RTN","PSG OE7",64,0)
  10196    I $D(PSJD GCK)&'$D(P SGDGCKF) S  PSGPDRG=+ Y,PSGPDRGN =$$OINAME^ PSJLMUTL(P SGPDRG)
  10197   "RTN","PSG OE7",65,0)
  10198    D LIST^DI C(50,,.01, "I",,,PSGP DRG,"ASP", ,,"ARRAY")  I +ARRAY( "DILIST",0 )=1 S (X,P SGDRG)=ARR AY("DILIST ",2,1),PSG DRGN=$$END DN^PSGMI(X )
  10199   "RTN","PSG OE7",66,0)
  10200    ;
  10201   "RTN","PSG OE7",67,0)
  10202   DO ; dosag e ordered
  10203   "RTN","PSG OE7",68,0)
  10204    NEW PSJAL LGY,PSGFLG ,ANQX  ;;  NCC Remedi ation 317/ 327 interg ation.  RJ S-327
  10205   "RTN","PSG OE7",69,0)
  10206    S PSGNEDF D=$$GTNEDF D("U",PSGP DRG)
  10207   "RTN","PSG OE7",70,0)
  10208    ; -- if P SGDGCKF is  set, CK a ction is b eing used  and no DRU G was ente red, do no t set PSJA LLGY array
  10209   "RTN","PSG OE7",71,0)
  10210    I $G(PSGD RG),$P(PSJ SYSU,";",4 ) D  G:$G( PSGORQF) A D
  10211   "RTN","PSG OE7",72,0)
  10212    .S:'$G(PS GDGCKF) PS JALLGY(PSG DRG)=$S($G (PSGUSRX)= ""&($G(PSG DRG)):"",1 :"P")
  10213   "RTN","PSG OE7",73,0)
  10214    .D ENDDC^ PSGSICHK(P SGP,PSGDRG )
  10215   "RTN","PSG OE7",74,0)
  10216    ;;START N CC T4 MODS  >> 327*RJ S
  10217   "RTN","PSG OE7",75,0)
  10218    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, ,,PSGDRG)
  10219   "RTN","PSG OE7",76,0)
  10220    I $P(PSJS YSU,";",4) ,CLOZFLG D   G:$G(ANQ X) AD
  10221   "RTN","PSG OE7",77,0)
  10222    .D ^PSOCL O1
  10223   "RTN","PSG OE7",78,0)
  10224    I '$P(PSJ SYSU,";",4 ) D  G:$G( ANQX) AD S  PSGX=PSGP DRG D END^ PSGSICHK G :Y<0 AD
  10225   "RTN","PSG OE7",79,0)
  10226    .I CLOZFL G D ^PSOCL O1 S PSGFL G=1
  10227   "RTN","PSG OE7",80,0)
  10228    ;; END NC C T4 MODS  << 327*RJS
  10229   "RTN","PSG OE7",81,0)
  10230    S PSGDO=" "
  10231   "RTN","PSG OE7",82,0)
  10232    ;
  10233   "RTN","PSG OE7",83,0)
  10234   DONE ;
  10235   "RTN","PSG OE7",84,0)
  10236    K DIC,%,% Y,PSGDICS, PSJLUAPP,Q 1,Q2,Q3,Z, PSJALLGY,P SGUSRX Q
  10237   "RTN","PSG OE7",85,0)
  10238    ;
  10239   "RTN","PSG OE7",86,0)
  10240   NF ;
  10241   "RTN","PSG OE7",87,0)
  10242    S Y=0 W $ C(7),!!,"P LEASE NOTE : The sele cted item  is not cur rently on  your medic al center' s",!?13,"f ormulary."  Q:'$P(PSJ SYSU,";",2 )
  10243   "RTN","PSG OE7",88,0)
  10244    N CNT S C NT=0 F Q1= 0:0 S Q1=$ O(^PSDRUG( PSGDRG,65, Q1)) Q:'Q1   I $$CHKD RG(+$G(^(Q 1,0))) S C NT=CNT+1
  10245   "RTN","PSG OE7",89,0)
  10246    I CNT=0 W  !!,"There  are no fo rmulary al ternatives  entered f or this it em." W:PSJ SYSU>2 "   You should  consult", !,"with yo ur pharmac y before o rdering th is item."  S Y=0 Q
  10247   "RTN","PSG OE7",90,0)
  10248    I CNT=1 S  Q1=$O(^PS DRUG(PSGDR G,65,0)),Q 1=+$G(^(Q1 ,0)),Q3=$P (^PSDRUG(Q 1,0),"^")  W !!,Q3,"  has been e ntered as  a formular y " W:$X>6 7 ! W "alt ernative."
  10249   "RTN","PSG OE7",91,0)
  10250    I  F Q=1: 1 S %=2 W  !!,"Is ",$ S(Q=1:"thi s",1:Q3),"  acceptabl e" D YN^DI CN Q:%  D  NFOH
  10251   "RTN","PSG OE7",92,0)
  10252    I CNT=1 S :%=1 (Y(0) ,Y)=Q1,Y(0 ,0)=Q3 S:% <0 Y=-1 Q
  10253   "RTN","PSG OE7",93,0)
  10254    K DA,DIC  S DA(1)=PS GDRG,DIC=" ^PSDRUG("_ PSGDRG_",6 5,",DIC(0) ="AEMQZ",D IC("A")="S elect FORM ULARY ALTE RNATIVE: "  W ! D ^DI C K DIC Q
  10255   "RTN","PSG OE7",94,0)
  10256    ;
  10257   "RTN","PSG OE7",95,0)
  10258   NFOH ;
  10259   "RTN","PSG OE7",96,0)
  10260    S X="Answ er 'YES' t o order th is formula ry alterna tive ("_Q3 _") for th e patient  instead of  the non-f ormulary i tem origin ally selec ted.  Answ er 'NO' to  use the d rug origin ally selec ted."
  10261   "RTN","PSG OE7",97,0)
  10262    W !!?2 F  Y=1:1:$L(X ," ") S Z= $P(X," ",Y ) W:$L(Z)+ $X+2>IOM !  W Z," "
  10263   "RTN","PSG OE7",98,0)
  10264    Q
  10265   "RTN","PSG OE7",99,0)
  10266   CHKDRG(DRG ) ; Determ ine if dis pense drug  is valid  for Unit D ose.
  10267   "RTN","PSG OE7",100,0 )
  10268    I $D(^PSD RUG(DRG,0) ),$P($G(^( 2)),U,3)[" U" S X=+$G (^("I")) I  'X!(X>DT)  Q DRG
  10269   "RTN","PSG OE7",101,0 )
  10270    Q 0
  10271   "RTN","PSG OE7",102,0 )
  10272    ;
  10273   "RTN","PSG OE7",103,0 )
  10274   SNFM ; sho w non-form ulary mess age
  10275   "RTN","PSG OE7",104,0 )
  10276    S Y=1 Q:P SJSYSU=3!' $O(^PS(59. 7,1,21,0))   W $C(7), ! S Q=0 F   S Q=$O(^P S(59.7,1,2 1,Q)) Q:'Q   W !,$G(^ (Q,0))
  10277   "RTN","PSG OE7",105,0 )
  10278    W ! D REA D^PSJUTL S  Y=1 Q
  10279   "RTN","PSG OE7",106,0 )
  10280    ;
  10281   "RTN","PSG OE7",107,0 )
  10282   GTNEDFD(AP P,PDRG) ;  Find defau lts from O rderable I tem.
  10283   "RTN","PSG OE7",108,0 )
  10284    Q $P($G(^ PS(50.7,+P DRG,0)),"^ ",5,8)
  10285   "RTN","PSG OE7",109,0 )
  10286    N Q,X S X =""
  10287   "RTN","PSG OE7",110,0 )
  10288    F Q=1:1:$ L(APP) S X =$E(APP,Q)  Q:X=""  S  X=$O(^PS( 50.3,+PDRG ,1,"B",X,0 )) I X S X =$P($G(^PS (50.3,+PDR G,1,X,0)), "^",5,8) Q
  10289   "RTN","PSG OE7",111,0 )
  10290    Q X
  10291   "RTN","PSG OE7",112,0 )
  10292    ;
  10293   "RTN","PSG OE7",113,0 )
  10294   PKGFLG(PKF ) ;Return  0 for not  in range o f acceptab le package  flags, 1  for within  range
  10295   "RTN","PSG OE7",114,0 )
  10296    I $S(PKF[ "U":1,1:0)  Q 1
  10297   "RTN","PSG OE7",115,0 )
  10298    I $S(PKF[ "I":1,1:0)  Q 1
  10299   "RTN","PSG OE7",116,0 )
  10300    Q 0
  10301   "RTN","PSG OE7",117,0 )
  10302    ;
  10303   "RTN","PSG OE7",118,0 )
  10304   GCN(PSGIEN ID) ;Retur n 0 for no t matched,  1 for mat ched with  no GCNSEQN O, 1^1 for  matched w ith a GCNS EQNO
  10305   "RTN","PSG OE7",119,0 )
  10306    N PSGNDFI D,PSGGCNPT ,PSGGCNID
  10307   "RTN","PSG OE7",120,0 )
  10308    S PSGNDFI D=$P($G(^P SDRUG(PSGI ENID,"ND") ),"^"),PSG GCNPT=$P($ G(^PSDRUG( PSGIENID," ND")),"^", 3)
  10309   "RTN","PSG OE7",121,0 )
  10310    I 'PSGNDF ID!('PSGGC NPT) Q 0
  10311   "RTN","PSG OE7",122,0 )
  10312    S PSGGCNI D=$$PROD0^ PSNAPIS(PS GNDFID,PSG GCNPT)
  10313   "RTN","PSG OE7",123,0 )
  10314    I $P(PSGG CNID,"^",7 ) Q PSGIEN ID_";"_PSG NDFID_";"_ $P(PSGGCNI D,"^",7)
  10315   "RTN","PSG OE7",124,0 )
  10316    Q PSGIENI D_";"_PSGN DFID
  10317   "RTN","PSG OE8")
  10318   0^15^B5965 3552
  10319   "RTN","PSG OE8",1,0)
  10320   PSGOE8 ;BI R/CML3 - E DIT ORDERS  IN 53.1 ; Jul 26, 20 17@18:04:0 2
  10321   "RTN","PSG OE8",2,0)
  10322    ;;5.0;INP ATIENT MED ICATIONS ; **47,50,65 ,72,110,11 1,188,192, 113,223,26 9,287,315, 338,327**; 16 DEC 97; Build 64
  10323   "RTN","PSG OE8",3,0)
  10324    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  10325   "RTN","PSG OE8",4,0)
  10326    ; Referen ce to ^PS( 50.7 is su pported by  DBIA# 218 0
  10327   "RTN","PSG OE8",5,0)
  10328    ; Referen ce to ^PS( 51.1 is su pported by  DBIA 2177
  10329   "RTN","PSG OE8",6,0)
  10330    ; Referen ce to ^PS( 51.2 is su pported by  DBIA# 217 8
  10331   "RTN","PSG OE8",7,0)
  10332    ; Referen ce to ^PSD RUG is sup ported by  DBIA# 2192
  10333   "RTN","PSG OE8",8,0)
  10334    ;
  10335   "RTN","PSG OE8",9,0)
  10336   101 ;Order able Item
  10337   "RTN","PSG OE8",10,0)
  10338    S MSG=0,F 2=101,PSGO OPD=PSGPD, PSGOOPDN=P SGPDN S:PS GOEEF(F2)  BACK="101^ PSGOE8"
  10339   "RTN","PSG OE8",11,0)
  10340    S %=1 I $ P(PSJSYSU, ";",3)>1 W  !!,$C(7), "WARNING!   If you ch ange the d rug of an  order, the  Dosage Or dered and  Dispense", !,"Drug(s)  are delet ed." F  W  !,"Do you  wish to co ntinue" S  %=2 D YN^D ICN Q:%
  10341   "RTN","PSG OE8",12,0)
  10342    I %'=1 G  DONE
  10343   "RTN","PSG OE8",13,0)
  10344   A101 ;
  10345   "RTN","PSG OE8",14,0)
  10346    I $$PNDRE N($G(PSGOR D)) D  Q
  10347   "RTN","PSG OE8",15,0)
  10348    . W !!?5, "Orderable  Item may  not be edi ted at thi s point."  D PAUSE^VA LM1
  10349   "RTN","PSG OE8",16,0)
  10350    W !,"ORDE RABLE ITEM : ",$S(PSG PD:PSGPDN_ "// ",1:"" ) R X:DTIM E I X="^"! '$T W:'$T  $C(7) S PS GOEE=0 G D ONE
  10351   "RTN","PSG OE8",17,0)
  10352    ;; START  NCC T4 MOD S >> 327*R JS
  10353   "RTN","PSG OE8",18,0)
  10354   A201 I X=" ",PSGPD S  X=PSGPDN I  PSGPD'=PS GPDN,$L($$ GET1^DIQ(5 0.7,PSGPD, .01)) G:'$ G(ANQX) DO NE
  10355   "RTN","PSG OE8",19,0)
  10356    S PSGPDOL D=PSGPD,PS GPDNOLD=PS GPDN,PSGPD RGOLD=PSGP DRG
  10357   "RTN","PSG OE8",20,0)
  10358    ;; END NC C T4 MODS  >> 327*RJS
  10359   "RTN","PSG OE8",21,0)
  10360    I X="",PS GPD S X=PS GPDN I PSG PD'=PSGPDN ,$D(^PS(50 .7,PSGPD,0 )) G DONE
  10361   "RTN","PSG OE8",22,0)
  10362    I $S(X="@ ":1,X]"":0 ,1:'PSGPD)  W $C(7),"   (Require d)" S X="? " D ENHLP^ PSGOEM(53. 1,101) G A 101
  10363   "RTN","PSG OE8",23,0)
  10364    I X?1."?"  D ENHLP^P SGOEM(53.1 ,101)
  10365   "RTN","PSG OE8",24,0)
  10366    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 101
  10367   "RTN","PSG OE8",25,0)
  10368    ;BHW;PSJ* 5.0*192;Mo dify ^DIC  call to us e MIX^DIC  and only B /C cross-r eferences
  10369   "RTN","PSG OE8",26,0)
  10370    K DIC,D S  DIC="^PS( 50.7,",DIC (0)="EMQZ" ,DIC("S")= "I $$ENOIS C^PSJUTL(Y ,""U"")",D ="B^C" D M IX^DIC1 K  DIC,D I Y' >0 G A101
  10371   "RTN","PSG OE8",27,0)
  10372    F  S %=2  D DH,YN^DI CN Q:%
  10373   "RTN","PSG OE8",28,0)
  10374    I %'=1 G  A101
  10375   "RTN","PSG OE8",29,0)
  10376    S (PSGPDR G,PSGPD)=+ Y,(PSGPDN, PSGPDRGN)= $$OINAME^P SJLMUTL(PS GPDRG)
  10377   "RTN","PSG OE8",30,0)
  10378    S PSGNEDF D=$$GTNEDF D^PSGOE7(" U",PSGPDRG )
  10379   "RTN","PSG OE8",31,0)
  10380    S PSGPDNX =1,PSGDO=" ",(PSGPDRG ,PSGPD)=+Y ,(PSGPDN,P SGPDRGN)=$ $OINAME^PS JLMUTL(PSG PDRG) K ^P S(53.45,PS JSYSP,2) S  X=$O(^PSD RUG("ASP", PSGPD,0))  I X,'$O(^( X)) D
  10381   "RTN","PSG OE8",32,0)
  10382    .S ^PS(53 .45,PSJSYS P,2,0)="^5 3.4502P^1^ 1",^(1,0)= X,^PS(53.4 5,PSJSYSP, 2,"B",X,1) =""
  10383   "RTN","PSG OE8",33,0)
  10384    S PSGDRGT MP=X
  10385   "RTN","PSG OE8",34,0)
  10386    D ENDRG^P SGOEF1(PSG PD,0)
  10387   "RTN","PSG OE8",35,0)
  10388    ;; START  NCC T4 MOD S >> 327*R JS
  10389   "RTN","PSG OE8",36,0)
  10390    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,P SGPD) I CL OZFLG D  I  $G(ANQX)  K ANQX G A 201
  10391   "RTN","PSG OE8",37,0)
  10392    .N PSGDRG  S ANQX=0, PSGDRG=$P( CLOZFLG,U, 2) D CLOZ^ PSJCLOZ(DF N,PSGDRG)
  10393   "RTN","PSG OE8",38,0)
  10394    .I $G(ANQ X) W ! S X =$E(PSGPDN OLD,0,4),P SGPDN=PSGP DNOLD,PSGP D=PSGPDOLD ,PSGPDRG=P SGPDRGOLD  K PSGDRGTM P,PSGPDOLD ,PSGPDNOLD ,PSGPDRGOL D
  10395   "RTN","PSG OE8",39,0)
  10396    ;; END NC C T4 MODS  >> 327*RJS
  10397   "RTN","PSG OE8",40,0)
  10398    I $S($D(D TOUT):1,$D (DUOUT):1, $D(DIRUT): 1,1:0) G D ONE
  10399   "RTN","PSG OE8",41,0)
  10400    ;G DONE
  10401   "RTN","PSG OE8",42,0)
  10402    ;
  10403   "RTN","PSG OE8",43,0)
  10404   109 ; dosa ge ordered
  10405   "RTN","PSG OE8",44,0)
  10406    S MSG=0,F 2=109 S:$G (PSGOEEF(F 2)) BACK=" 109^PSGOE8 "
  10407   "RTN","PSG OE8",45,0)
  10408   A109 ;
  10409   "RTN","PSG OE8",46,0)
  10410    I $$PNDRE N($G(PSGOR D)) D  Q
  10411   "RTN","PSG OE8",47,0)
  10412    . W !!?5, "Dosage ma y not be e dited at t his point. " D PAUSE^ VALM1
  10413   "RTN","PSG OE8",48,0)
  10414    S PSGOEEF (F2)=PSGOE E
  10415   "RTN","PSG OE8",49,0)
  10416    D EDITDOS E^PSJDOSE  S X=PSGDO  S:X="" PSG DREQ=1 G D ONE
  10417   "RTN","PSG OE8",50,0)
  10418    W !,"DOSA GE ORDERED : ",$S(PSG DO]"":PSGD O_"// ",1: "") R X:DT IME I X="^ "!'$T W:'$ T $C(7) S  PSGOEE=0 G  DONE
  10419   "RTN","PSG OE8",51,0)
  10420    I X=""&(P SGDO]"") S  X=PSGDO
  10421   "RTN","PSG OE8",52,0)
  10422    I $$CHECK (PSJSYSP)& (X="")&(PS GDO']"") W  $C(7),"     (Require d) " G A10 9
  10423   "RTN","PSG OE8",53,0)
  10424    I $$CHECK (PSJSYSP)& (X="@") W  $C(7),"       (Requir ed) " G A1 09
  10425   "RTN","PSG OE8",54,0)
  10426    I '$$CHEC K(PSJSYSP) &(X="@") S  PSGDO=""  G DONE
  10427   "RTN","PSG OE8",55,0)
  10428    I X?1."?"  D ENHLP^P SGOEM(53.1 ,109) G A1 09
  10429   "RTN","PSG OE8",56,0)
  10430    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 109
  10431   "RTN","PSG OE8",57,0)
  10432    I $E(X,$L (X))=" " F   S X=$E(X ,1,$L(X)-1 ) Q:$E(X,$ L(X))'=" "
  10433   "RTN","PSG OE8",58,0)
  10434    I $S(X?.E 1C.E:1,$L( X)>20:1,X= "":0,X["^" :1,X?1.P:1 ,1:X=+X) W  $C(7),"   ",$S(X?1.P !(X=""):"( Required)" ,1:"??") D  ENHLP^PSG OEM(53.1,1 09) G A109
  10435   "RTN","PSG OE8",59,0)
  10436    S PSGDO=X  G DONE
  10437   "RTN","PSG OE8",60,0)
  10438    ;
  10439   "RTN","PSG OE8",61,0)
  10440   3 ; med ro ute
  10441   "RTN","PSG OE8",62,0)
  10442    S MSG=0,F 2=3 S:PSGO EEF(F2) BA CK="3^PSGO E8"
  10443   "RTN","PSG OE8",63,0)
  10444   A3 I $$PND REN($G(PSG ORD)) D  Q
  10445   "RTN","PSG OE8",64,0)
  10446    . W !!?5, "Med Route  may not b e edited a t this poi nt." D PAU SE^VALM1
  10447   "RTN","PSG OE8",65,0)
  10448    W !,"MED  ROUTE: ",$ S(PSGMR:PS GMRN_"// " ,1:"") R X :DTIME I X ="^"!'$T W :'$T $C(7)  S PSGOEE= 0 G DONE
  10449   "RTN","PSG OE8",66,0)
  10450    I X="",PS GMR S X=PS GMRN I PSG MR'=PSGMRN ,$D(^PS(51 .2,PSGMR,0 )) W "  "_ $P(^(0),"^ ",3) G DON E
  10451   "RTN","PSG OE8",67,0)
  10452    I $S(X="@ ":1,X]"":0 ,1:'PSGMR)  W $C(7),"   (Require d)" S X="? " D ENHLP^ PSGOEM(53. 1,3) G A3
  10453   "RTN","PSG OE8",68,0)
  10454    I X?1."?"  D ENHLP^P SGOEM(53.1 ,3)
  10455   "RTN","PSG OE8",69,0)
  10456    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 3
  10457   "RTN","PSG OE8",70,0)
  10458    K DIC S D IC="^PS(51 .2,",DIC(0 )="EMQZ",D IC("S")="I  $P(^(0)," "^"",4)" D  ^DIC K DI C I Y'>0 G  A3
  10459   "RTN","PSG OE8",71,0)
  10460    S PSGMR=+ Y,PSGMRN=Y (0,0) G DO NE
  10461   "RTN","PSG OE8",72,0)
  10462    ;
  10463   "RTN","PSG OE8",73,0)
  10464   26 ; sched ule
  10465   "RTN","PSG OE8",74,0)
  10466    S MSG=0,F 2=26 S:PSG OEEF(F2) B ACK="26^PS GOE8"
  10467   "RTN","PSG OE8",75,0)
  10468   A26 I $$PN DREN($G(PS GORD)) D   Q
  10469   "RTN","PSG OE8",76,0)
  10470    . W !!?5, "Schedule  may not be  edited at  this poin t." D PAUS E^VALM1
  10471   "RTN","PSG OE8",77,0)
  10472    W !,"SCHE DULE: ",$S (PSGSCH]"" :PSGSCH_"/ / ",1:"")  R X:DTIME  I X="^"!'$ T W:'$T $C (7) S PSGO EE=0 G DON E
  10473   "RTN","PSG OE8",78,0)
  10474    S:X="" X= PSGSCH,PSG SCH="" I " @"[X W $C( 7),"  (Req uired)" S  X="?" D EN HLP^PSGOEM (53.1,26)  G A26
  10475   "RTN","PSG OE8",79,0)
  10476    S DOW=0 I  $$DOW^PSI VUTL($$ENL U^PSGMI(X) ) S DOW=1
  10477   "RTN","PSG OE8",80,0)
  10478    I X?1."?"  D ENHLP^P SGOEM(53.1 ,26) G A26
  10479   "RTN","PSG OE8",81,0)
  10480    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 26
  10481   "RTN","PSG OE8",82,0)
  10482    ;BHW;PSJ* 5*188;Add  flag and I EN return  variable f or PSGS0 ( PSJ*5*134) , Highligh t Admin Ti mes if the y changed.
  10483   "RTN","PSG OE8",83,0)
  10484    N PSGOES, PSJSLUP,PS GSFLG S PS JSLUP=1,PS GSFLG=1 D  EN^PSGS0 I  '$D(X) W  $C(7),"  ? ?" S X="?"  D ENHLP^P SGOEM(53.1 ,26) G A26
  10485   "RTN","PSG OE8",84,0)
  10486    I X'=PSGS CH D
  10487   "RTN","PSG OE8",85,0)
  10488    . K PSGDU R,PSGRMVT, PSGRMV,ND2 P1 ;*315 R emoval tim es are tie d to ADMIN  times.
  10489   "RTN","PSG OE8",86,0)
  10490    . N XX
  10491   "RTN","PSG OE8",87,0)
  10492    . S PSGSC H=X
  10493   "RTN","PSG OE8",88,0)
  10494    . I PSGS0 Y'=PSGAT S  PSGAT=PSG S0Y  ;Chan ge so that  any sched ule change  will adju st the typ e and defa ult the ad min times  - DRF
  10495   "RTN","PSG OE8",89,0)
  10496    . D  ;Cha nge schedu le type to  agree wit h schedule
  10497   "RTN","PSG OE8",90,0)
  10498    .. I $G(D OW) S PSGS T="C",PSGS TN=$$ENSTN ^PSGMI(PSG ST) Q
  10499   "RTN","PSG OE8",91,0)
  10500    .. I (PSG SCH[" PRN" )!(PSGSCH= "PRN") I $ $PRNOK^PSG S0(PSGSCH)  S PSGOST= PSGST,PSGS T="P",PSGS TN=$$ENSTN ^PSGMI(PSG ST) Q
  10501   "RTN","PSG OE8",92,0)
  10502    .. I '$G( PSGSCIEN), PSGSCH]""  S XX=+$O(^ PS(51.1,"A C","PSJ",P SGSCH,0)), PSGSCIEN=X X
  10503   "RTN","PSG OE8",93,0)
  10504    .. S PSGO ST=$G(PSGS T),PSGST=$ P($G(^PS(5 1.1,PSGSCI EN,0)),"^" ,5) I PSGS T="D" S PS GST="C"  ; DOW schedu les are co nverted to  Continuou s
  10505   "RTN","PSG OE8",94,0)
  10506    .. S PSGS TN=$$ENSTN ^PSGMI(PSG ST)
  10507   "RTN","PSG OE8",95,0)
  10508    . I $G(PS JSYSW0),($ P(PSJSYSW0 ,U,5)'=2), '$G(PSGEFN (8)) W !!, "NOTE: Thi s may caus e the Admi n Times an d the Star t Time to  be out of  sync."
  10509   "RTN","PSG OE8",96,0)
  10510    . W !!,"N OTE: This  change in  schedule a lso change s the ADMI N TIMES an d SCHEDULE  TYPE.",!
  10511   "RTN","PSG OE8",97,0)
  10512    . S MSG=1  S:'$G(PSG OEEF(39))  PSGOEEF(39 )=1 ;*287  - Prevent  infinite l oop editin g admin ti mes
  10513   "RTN","PSG OE8",98,0)
  10514    . I ($G(P SGRF)>1),P SGST="C" D
  10515   "RTN","PSG OE8",99,0)
  10516    ..S PSGF2 =39,BACK=" 39^PSGOE81 " D 39^PSG OE81 S BAC K="26^PSGO E8",PSGF2= 26,PSGOAT= PSGAT ;*31 5 Prompt f or Admin t o get DOA
  10517   "RTN","PSG OE8",100,0 )
  10518    ..Q
  10519   "RTN","PSG OE8",101,0 )
  10520    . I $G(PS JNEWOE) D  PAUSE^VALM 1
  10521   "RTN","PSG OE8",102,0 )
  10522    I PSGST=" O" S PSGOE EF(7)=1 I  +$G(PSGRF)  S PSGOEEF (25)=1 D 2 5^PSGOE81  S PSGF2=26
  10523   "RTN","PSG OE8",103,0 )
  10524    G DONE
  10525   "RTN","PSG OE8",104,0 )
  10526    ;
  10527   "RTN","PSG OE8",105,0 )
  10528   7 ; schedu le type
  10529   "RTN","PSG OE8",106,0 )
  10530    S MSG=0,F 2=7 S:PSGO EEF(F2) BA CK="7^PSGO E8"
  10531   "RTN","PSG OE8",107,0 )
  10532   A7 W !,"SC HEDULE TYP E: "_$S(PS GSTN]"":PS GSTN_"// " ,1:"") R X :DTIME S X =$TR(X,"co procf","CO PROCF") I  X="^"!'$T  S PSGOEE=0  W $C(7) G  DONE
  10533   "RTN","PSG OE8",108,0 )
  10534    I X="" S  X=PSGST,PS GSTN=$$ENS TN^PSGMI(X ) W:PSGSTN ]"" "  ",P SGSTN G DO NE
  10535   "RTN","PSG OE8",109,0 )
  10536    S:X="F" X ="R"
  10537   "RTN","PSG OE8",110,0 )
  10538    I ",?,??, C,O,OC,P,R ,"'[(","_X _",") W "  ??" G A7
  10539   "RTN","PSG OE8",111,0 )
  10540    I $$PRNOK ^PSGS0($G( PSGSCH)),X ="C" W "   ??" G A7
  10541   "RTN","PSG OE8",112,0 )
  10542    I X="@"!( X?1."?") W :X="@" $C( 7),"  (Req uired)" S: X="@" X="? " D ENHLP^ PSGOEM(53. 1,7) G A7
  10543   "RTN","PSG OE8",113,0 )
  10544    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 7
  10545   "RTN","PSG OE8",114,0 )
  10546    ;*223 Don 't allow O  sched typ e on C ord ers
  10547   "RTN","PSG OE8",115,0 )
  10548    I X="O",$ $SCHTP(PSG SCH)'="O"  W !,"  SCH EDULE ("_P SGSCH_") i s not a ON E TIME Sch edule." G  A7
  10549   "RTN","PSG OE8",116,0 )
  10550    ;*269 Don 't allow C  sched typ e on O ord ers
  10551   "RTN","PSG OE8",117,0 )
  10552    I X="C",$ $SCHTP(PSG SCH)="O" W  !,"  SCHE DULE ("_PS GSCH_") is  not a CON TINUOUS Sc hedule." G  A7
  10553   "RTN","PSG OE8",118,0 )
  10554    S PSGOST= PSGST
  10555   "RTN","PSG OE8",119,0 )
  10556    S PSGST=X ,PSGSTN=$$ ENSTN^PSGM I(X) W:PSG STN]"" "   ",PSGSTN
  10557   "RTN","PSG OE8",120,0 )
  10558    I X="P",$ G(PSGAT)]" " S PSGOAT =PSGAT S P SGAT="" D
  10559   "RTN","PSG OE8",121,0 )
  10560    .W !!,"NO TE: This c hange in s chedule ty pe also ch anges the  ADMIN TIME S.",!
  10561   "RTN","PSG OE8",122,0 )
  10562    .S MSG=1, PSGOEEF(39 )=1
  10563   "RTN","PSG OE8",123,0 )
  10564    .I $G(PSJ NEWOE) D P AUSE^VALM1
  10565   "RTN","PSG OE8",124,0 )
  10566    ;
  10567   "RTN","PSG OE8",125,0 )
  10568   DONE ;
  10569   "RTN","PSG OE8",126,0 )
  10570    I PSGOEE  G:'PSGOEEF (F2) @BACK  S PSGOEE= PSGOEEF(F2 )
  10571   "RTN","PSG OE8",127,0 )
  10572    K F,F0,F2  Q
  10573   "RTN","PSG OE8",128,0 )
  10574    ;
  10575   "RTN","PSG OE8",129,0 )
  10576   DEL ; dele te entry
  10577   "RTN","PSG OE8",130,0 )
  10578    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  10579   "RTN","PSG OE8",131,0 )
  10580    Q
  10581   "RTN","PSG OE8",132,0 )
  10582    ;
  10583   "RTN","PSG OE8",133,0 )
  10584   DH ;
  10585   "RTN","PSG OE8",134,0 )
  10586    W !!?2,"W hen the dr ug of an o rder is ch anged, the  Dosage Or dered and  Dispense D rug(s)",!, "for the o rder are n o longer v alid, and  therefore  deleted fr om the ord er.",!,"If  possible,  a new cor responding  dispense  drug will  be added t o the orde r."
  10587   "RTN","PSG OE8",135,0 )
  10588    W !!?2,"A nswer 'YES ' to conti nue with t his change .  Answer  'NO' to se lect anoth er",!,"dru g or to ac cept the d rug as it  was.  Ente r an '^' t o exit thi s edit." Q
  10589   "RTN","PSG OE8",136,0 )
  10590    ;
  10591   "RTN","PSG OE8",137,0 )
  10592   CHECK(PSJS YSP) ; Che ck to see  if multipl e dispense  drugs
  10593   "RTN","PSG OE8",138,0 )
  10594    ; Input   -     PSJS YSP
  10595   "RTN","PSG OE8",139,0 )
  10596    ; Returns   0 = only  one.
  10597   "RTN","PSG OE8",140,0 )
  10598    ;           1 = more  than one
  10599   "RTN","PSG OE8",141,0 )
  10600    ; Checks  Inactive D ate and do esn't coun t if < or  = today.
  10601   "RTN","PSG OE8",142,0 )
  10602    N PSJRSB, PSJINACT,P SJRBCNT S  PSJRBCNT=0
  10603   "RTN","PSG OE8",143,0 )
  10604    F PSJRSB= 0:0 S PSJR SB=$O(^PS( 53.45,PSJS YSP,2,PSJR SB)) Q:'PS JRSB  D
  10605   "RTN","PSG OE8",144,0 )
  10606    .S PSJINA CT=$P(^PS( 53.45,PSJS YSP,2,PSJR SB,0),"^", 3)
  10607   "RTN","PSG OE8",145,0 )
  10608    .I (PSJIN ACT="")!(( PSJINACT>0 )&(PSJINAC T>DT)) D
  10609   "RTN","PSG OE8",146,0 )
  10610    ..S PSJRB CNT=$S('$D (PSJRBCNT) :1,1:PSJRB CNT+1)
  10611   "RTN","PSG OE8",147,0 )
  10612    Q $S(PSJR BCNT>1:1,1 :0)
  10613   "RTN","PSG OE8",148,0 )
  10614    ;
  10615   "RTN","PSG OE8",149,0 )
  10616   PNDREN(PND ON) ;
  10617   "RTN","PSG OE8",150,0 )
  10618    I PNDON'[ "P" Q 0
  10619   "RTN","PSG OE8",151,0 )
  10620    S RNWL="^ PS(53.1,"_ +PNDON_",0 )" S RNWL= $G(@(RNWL) ) S RNWL=$ S($P(RNWL, "^",24)="R ":1,1:0)
  10621   "RTN","PSG OE8",152,0 )
  10622    Q RNWL
  10623   "RTN","PSG OE8",153,0 )
  10624    ;
  10625   "RTN","PSG OE8",154,0 )
  10626   SCHTP(SCH)  ; *223 Re turn SCHed ule type
  10627   "RTN","PSG OE8",155,0 )
  10628    N X I SCH ="" Q ""
  10629   "RTN","PSG OE8",156,0 )
  10630    S X=$O(^P S(51.1,"AP PSJ",SCH,0 ))
  10631   "RTN","PSG OE8",157,0 )
  10632    Q:'$G(X)  ""
  10633   "RTN","PSG OE8",158,0 )
  10634    Q $P(^PS( 51.1,X,0), "^",5)
  10635   "RTN","PSG OE8",159,0 )
  10636    ;
  10637   "RTN","PSG OE81")
  10638   0^16^B1373 19512
  10639   "RTN","PSG OE81",1,0)
  10640   PSGOE81 ;B IR/CML3-NO N-VERIFIED  ORDER EDI T (CONT.)  ;Jul 26, 2 017@18:04: 02
  10641   "RTN","PSG OE81",2,0)
  10642    ;;5.0;INP ATIENT MED ICATIONS;* *26,50,64, 58,82,110, 111,136,11 3,267,315, 334,327**; 16 DEC 97; Build 64
  10643   "RTN","PSG OE81",3,0)
  10644    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  10645   "RTN","PSG OE81",4,0)
  10646    ; Referen ce to ^PS( 50.7 is su pported by  DBIA# 218 0
  10647   "RTN","PSG OE81",5,0)
  10648    ; Referen ce to ^PS( 51.1 is su pported by  DBIA 2177 .
  10649   "RTN","PSG OE81",6,0)
  10650    ;
  10651   "RTN","PSG OE81",7,0)
  10652   39 ; admin  times
  10653   "RTN","PSG OE81",8,0)
  10654    N PSGDOA
  10655   "RTN","PSG OE81",9,0)
  10656    S MSG=0,P SGF2=39 S: PSGOEEF(PS GF2) BACK= "39^PSGOE8 1",ORIG=$G (PSGAT),PS GDOA=$G(PS GDUR)
  10657   "RTN","PSG OE81",10,0 )
  10658   A39 ;*315  next 2 lin es
  10659   "RTN","PSG OE81",11,0 )
  10660    I (PSGST= "P")!$$PRN OK^PSGS0($ G(PSGSCH))  G DONE
  10661   "RTN","PSG OE81",12,0 )
  10662    I $$ODD^P SGS0(PSGS0 XT) D PSGD UR G DONE
  10663   "RTN","PSG OE81",13,0 )
  10664    W !,"ADMI N TIMES: " _$S(PSGAT: PSGAT_"//  ",1:"") R  X:DTIME I  X="^"!('$T ) W:'$T $C (7) S PSGO EE=0 S:X=" ^" (X,PSGA T)=$G(ORIG ),PSGDUR=" " G DONE ; *315
  10665   "RTN","PSG OE81",14,0 )
  10666    I X="" S: (($G(PSGS0 XT)="D")&' $G(PSGS0Y) ) PSGOEE=0  S:$G(PSGA T) X=PSGAT ,PSGNOHI=1  ;*315 If  admin time  default w as taken t hen don't  highlight  admin time .
  10667   "RTN","PSG OE81",15,0 )
  10668    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 39
  10669   "RTN","PSG OE81",16,0 )
  10670    I X=" "!( X?1."?") D  ENHLP^PSG OEM(53.1,3 9) G A39
  10671   "RTN","PSG OE81",17,0 )
  10672    I PSGS0XT ="D"&'$G(X ) I ((",P, R,")'[("," _$G(PSGST) _",")) D   G A39
  10673   "RTN","PSG OE81",18,0 )
  10674    .W $C(7), "  ??" S X ="?" W !," This is a  'DAY OF TH E WEEK' sc hedule and  MUST have  admin tim es." D ENH LP^PSGOEM( 53.1,39)
  10675   "RTN","PSG OE81",19,0 )
  10676    I X="@" D  DEL G:%'= 1 A39 S PS GAT="",X=" "
  10677   "RTN","PSG OE81",20,0 )
  10678    I $G(PSGS 0XT),'$$OD D^PSGS0(PS GS0XT),$G( PSGS0XT)'= "P",$G(PSG S0XT)'="OC ",'$$PRNOK ^PSGS0(PSG SCH),($G(P SGST)'="O" ) D TIMES  G:'$D(X) A 39 D PSGDU R G:'$D(X)  A39 G:$G( X)="^" DON E ;*315
  10679   "RTN","PSG OE81",21,0 )
  10680    I (($G(PS GST)="O")! ($G(PSGST) ="OC")),X= "" D  G DO NE
  10681   "RTN","PSG OE81",22,0 )
  10682    .S (PSGS0 Y,PSGAT)=X
  10683   "RTN","PSG OE81",23,0 )
  10684    .I (($G(P SGRF))&($G (PSGST)="O ")) N PSGR O S (PSGRO ,PSGOEEF(2 5))=1,PSGO EEF(39)=1  D 25
  10685   "RTN","PSG OE81",24,0 )
  10686    D ENCHK^P SGS0 I '$D (X) W $C(7 ) G A39
  10687   "RTN","PSG OE81",25,0 )
  10688    S PSGOAT= PSGAT
  10689   "RTN","PSG OE81",26,0 )
  10690    S (PSGS0Y ,PSGAT)=X  G DONE
  10691   "RTN","PSG OE81",27,0 )
  10692    ;
  10693   "RTN","PSG OE81",28,0 )
  10694   8 ; specia l instruct ions
  10695   "RTN","PSG OE81",29,0 )
  10696    S MSG=0,P SGF2=8 S:P SGOEEF(PSG F2) BACK=" 8^PSGOE81"
  10697   "RTN","PSG OE81",30,0 )
  10698   A8 ; speci al instruc tions
  10699   "RTN","PSG OE81",31,0 )
  10700    S PSGSI=$ $EDITSI^PS JBCMA5($G( PSGP),$G(P SGORD)) I  $G(PSGP),$ G(PSGORD)  I '$$DIFFS I^PSJBCMA5 (PSGP,PSGO RD) S PSGO EE=0 G DON E
  10701   "RTN","PSG OE81",32,0 )
  10702    S PSGSI=$ S((PSGSI>0 &(PSGSI<4) ):$G(^PS(5 3.45,+PSJS YSP,5,1,0) )_" "_$G(^ PS(53.45,+ PSJSYSP,5, 2,0)),PSGS I>3:"Instr uctions to o long. Se e Order Vi ew or BCMA  for full  text",1:"" )
  10703   "RTN","PSG OE81",33,0 )
  10704    S:PSGSI="  " PSGSI=" " I PSGSI] "" S PSGSI =$$ENBCMA^ PSJUTL("U" ) G DONE
  10705   "RTN","PSG OE81",34,0 )
  10706    Q
  10707   "RTN","PSG OE81",35,0 )
  10708    ;
  10709   "RTN","PSG OE81",36,0 )
  10710   10 ; start  date/time
  10711   "RTN","PSG OE81",37,0 )
  10712    S MSG=0,P SGF2=10 S: PSGOEEF(PS GF2) BACK= "10^PSGOE8 1"
  10713   "RTN","PSG OE81",38,0 )
  10714   A10 ; star t date/tim e
  10715   "RTN","PSG OE81",39,0 )
  10716    K PSGSDX  N DUR,DURM IN,TMPFD
  10717   "RTN","PSG OE81",40,0 )
  10718    I $G(PSGO RD)["P",$G (PSGP) I $ $LASTREN^P SJLMPRI(PS GP,PSGORD)  D  Q
  10719   "RTN","PSG OE81",41,0 )
  10720    .W !?5,"S tart Date  may not be  edited at  this poin t. " D PAU SE^VALM1
  10721   "RTN","PSG OE81",42,0 )
  10722    W !,"STAR T DATE/TIM E: "_$S($P (PSGSDN,"^ ")]"":$P(P SGSDN,"^") _"// ",1:" ") R X:DTI ME
  10723   "RTN","PSG OE81",43,0 )
  10724    I X="^"!' $T W:'$T $ C(7) S PSG OEE=0 G DO NE
  10725   "RTN","PSG OE81",44,0 )
  10726    I X="",PS GSD W "  " _$P(PSGSDN ,"^") G DO NE
  10727   "RTN","PSG OE81",45,0 )
  10728    I X="P" D  ENPREV^PS GDL W:'$D( X) $C(7) G :'$D(X) A1 0 D  G DON E
  10729   "RTN","PSG OE81",46,0 )
  10730    .S PSGSD= +X,PSGSDN= $$ENDD^PSG MI(PSGSD)_ "^"_$$ENDT C^PSGMI(PS GSD)
  10731   "RTN","PSG OE81",47,0 )
  10732    .W "  ",$ P(PSGSDN," ^")
  10733   "RTN","PSG OE81",48,0 )
  10734    I X="@"!( X?1."?") W :X="@" $C( 7),"  (Req uired)" S: X="@" X="? " D ENHLP^ PSGOEM(53. 1,10)
  10735   "RTN","PSG OE81",49,0 )
  10736    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 10
  10737   "RTN","PSG OE81",50,0 )
  10738    NEW TMPX  S TMPX=X,X 1=+$G(PSGL I),X2=-7 D  C^%DTC K  %DT S %DT= "ERTX",%DT (0)=X,X=TM PX
  10739   "RTN","PSG OE81",51,0 )
  10740    D ^%DT K  %DT I Y'>0  D ENHLP^P SGOEM(53.1 ,10) G A10
  10741   "RTN","PSG OE81",52,0 )
  10742    I PSGFD<Y  D  G A10
  10743   "RTN","PSG OE81",53,0 )
  10744    .W $C(7), !?5,"*** T HE START D ATE CANNOT  BE AFTER  THE STOP D ATE! ***", ! S MSG=1
  10745   "RTN","PSG OE81",54,0 )
  10746    N X1,X2,D IFF,PSGEMR G,PSGBACK, CLOZFLG S  X1=PSGFD,X 2=Y D ^%DT C S DIFF=X
  10747   "RTN","PSG OE81",55,0 )
  10748    I $G(PSGO RD) S CLOZ FLG=$$ISCL OZ^PSJCLOZ (+PSGORD)  I 1
  10749   "RTN","PSG OE81",56,0 )
  10750    E  S CLOZ FLG=$$ISCL OZ^PSJCLOZ (,,,,PSGDR G)
  10751   "RTN","PSG OE81",57,0 )
  10752    S PSGEMRG =$S($$GET1 ^DIQ(55,DF N,53)?1U6N :1,1:0),PS GBACK=0
  10753   "RTN","PSG OE81",58,0 )
  10754    I PSGEMRG ,$G(CLOZFL G),DIFF>4  D  G A10    ; Emergen cy Registr ation peri od not to  exceed 4 d ays
  10755   "RTN","PSG OE81",59,0 )
  10756    .W !!?13, "*** EMERG ENCY SUPPL Y NOT TO E XCEED 4 DA YS! ***",!
  10757   "RTN","PSG OE81",60,0 )
  10758    I 'PSGEMR G,$G(CLOZF LG) D  G:P SGBACK A10
  10759   "RTN","PSG OE81",61,0 )
  10760    .N CLOZPA T,X2 D CLO ZPAT^PSJCL OZ
  10761   "RTN","PSG OE81",62,0 )
  10762    .S X2=$S( $P($G(ANQD ATA),"^",3 )=9:4,$G(C LOZPAT)=2: 28,$G(CLOZ PAT)=1:14, $G(CLOZPAT )=0:7,1:90 )
  10763   "RTN","PSG OE81",63,0 )
  10764    .I DIFF>X 2 W !!,"** * SUPPLY P ERIOD NOT  TO EXCEED  "_X2_" DAY S! ***",!  S PSGBACK= 1
  10765   "RTN","PSG OE81",64,0 )
  10766    S (PSGSDX ,PSGSD,PSG NESD)=+Y,P SGSDN=$$EN DD^PSGMI(P SGSD)_"^"_ $$ENDTC^PS GMI(PSGSD)
  10767   "RTN","PSG OE81",65,0 )
  10768    I $G(PSGO RD)["P",$G (PSGP) S D UR=$$GETDU R^PSJLIVMD (PSGP,+PSG ORD,"P",1)  I DUR]""  S DURMIN=$ $DURMIN^PS JLIVMD(DUR ) I DURMIN  D
  10769   "RTN","PSG OE81",66,0 )
  10770    . S TMPFD =$$FMADD^X LFDT(PSGSD ,,,DURMIN)  K:(TMPFD< PSGSD) TMP FD I $G(TM PFD) S PSG FD=TMPFD,P SGFDN=$$EN DD^PSGMI(P SGFD)_"^"_ $$ENDTC^PS GMI(PSGFD)
  10771   "RTN","PSG OE81",67,0 )
  10772    G DONE
  10773   "RTN","PSG OE81",68,0 )
  10774    ;
  10775   "RTN","PSG OE81",69,0 )
  10776   25 ; stop  date
  10777   "RTN","PSG OE81",70,0 )
  10778    S MSG=0,P SGF2=25 S: PSGOEEF(PS GF2) BACK= "25^PSGOE8 1"
  10779   "RTN","PSG OE81",71,0 )
  10780   A25 ;
  10781   "RTN","PSG OE81",72,0 )
  10782    ;; START  NCC REMEDI ATION RJS* 327
  10783   "RTN","PSG OE81",73,0 )
  10784    N CLOZFLG ,CLOZPAT
  10785   "RTN","PSG OE81",74,0 )
  10786    I $G(PSGO RD) S CLOZ FLG=$$ISCL OZ^PSJCLOZ (+PSGORD)  I 1
  10787   "RTN","PSG OE81",75,0 )
  10788    E  S CLOZ FLG=$$ISCL OZ^PSJCLOZ (,,,,PSGDR G)
  10789   "RTN","PSG OE81",76,0 )
  10790    I $G(CLOZ FLG) N CLO ZPAT,PSGDR G S PSGDRG =$P(CLOZFL G,U,2) D C LOZPAT^PSJ CLOZ
  10791   "RTN","PSG OE81",77,0 )
  10792    I $G(CLOZ FLG) N PSG OLDED,PSGF DNOLD S PS GOLDED=PSG FD,PSGFDNO LD=PSGFDN
  10793   "RTN","PSG OE81",78,0 )
  10794    ;; END NC C REMEDIAT ION RJS*32 7
  10795   "RTN","PSG OE81",79,0 )
  10796    N MSG,PSG TMPST S PS GTMPST=$G( PSGST) S:' +$G(PSGRF)  PSGRF=+$$ GET1^DIQ(5 0.7,$G(PSG PDRG),12," I") ;*315  One time o rders for  MRR's requ ire messag e to instr uct pharma cists
  10797   "RTN","PSG OE81",80,0 )
  10798    I $$FIND1 ^DIC(51.1, ,"X",$G(PS GSCH)) D
  10799   "RTN","PSG OE81",81,0 )
  10800    . S:PSGTM PST=($G(PS GST)="R")  PSGST=$$GE T1^DIQ(51. 1,$$FIND1^ DIC(51.1,, "X",$G(PSG SCH)),5,"I ") ;Handle  "Fill on  Request"
  10801   "RTN","PSG OE81",82,0 )
  10802    .Q
  10803   "RTN","PSG OE81",83,0 )
  10804    I $G(PSGT MPST)="O", +$G(PSGRF)  S (PSGFDN ,PSGFD)=""  D 
  10805   "RTN","PSG OE81",84,0 )
  10806    . I +$G(P SGRF)=1 S  MSG(1)="Th is NOW ord er has an  Orderable  Item for w hich a rem oval is re quired" D
  10807   "RTN","PSG OE81",85,0 )
  10808    .. S MSG( 2)=" at th e next adm inistratio n."
  10809   "RTN","PSG OE81",86,0 )
  10810    .. S MSG( 3)="The St op DATE/TI ME entered  should be  the next  anticipate d administ ration for  the medic ation.",MS G(3,"F")=" !"
  10811   "RTN","PSG OE81",87,0 )
  10812    ..Q
  10813   "RTN","PSG OE81",88,0 )
  10814    . I +$G(P SGRF)=2 S  MSG(1)="Th is NOW ord er has an  Orderable  Item for w hich a rem oval perio d is optio nal",MSG(1 ,"F")="!!"  D
  10815   "RTN","PSG OE81",89,0 )
  10816    .. S MSG( 2)="prior  to the nex t administ ration.",M SG(2,"F")= "!"
  10817   "RTN","PSG OE81",90,0 )
  10818    .. S MSG( 3)="If Ear ly Removal  is needed , enter Re moval Time  in Stop D ATE/TIME f ield.",MSG (3,"F")="! "
  10819   "RTN","PSG OE81",91,0 )
  10820    .. S MSG( 4)="If an  Early Remo val is not  required,  the Stop  DATE/TIME  entered"
  10821   "RTN","PSG OE81",92,0 )
  10822    .. S MSG( 5)="should  be the ne xt anticip ated admin istration  for the me dication." ,MSG(5,"F" )="!"
  10823   "RTN","PSG OE81",93,0 )
  10824    ..Q
  10825   "RTN","PSG OE81",94,0 )
  10826    . I +$G(P SGRF)=3 S  MSG(1)="Th is NOW ord er has an  Orderable  Item that  requires a  removal p eriod prio r",MSG(1," F")="!!" D
  10827   "RTN","PSG OE81",95,0 )
  10828    .. S MSG( 2)=" to th e next adm inistratio n.",MSG(2, "F")="!"
  10829   "RTN","PSG OE81",96,0 )
  10830    .. S MSG( 3)="Please  Enter the  Stop DATE /TIME to r eflect the  Removal T ime for th is medicat ion.",MSG( 3,"F")="!"
  10831   "RTN","PSG OE81",97,0 )
  10832    ..Q
  10833   "RTN","PSG OE81",98,0 )
  10834    . D EN^DD IOL(.MSG)
  10835   "RTN","PSG OE81",99,0 )
  10836    .Q
  10837   "RTN","PSG OE81",100, 0)
  10838    K PSGFDX  N PSGEMRG
  10839   "RTN","PSG OE81",101, 0)
  10840    W !,"STOP  DATE/TIME : "_$S($P( PSGFDN,"^" )]"":$P(PS GFDN,"^")_ "// ",1:"" ) R X:DTIM E I X="^"! '$T W:'$T  $C(7) S PS GOEE=0 G D ONE
  10841   "RTN","PSG OE81",102, 0)
  10842    I X="",PS GFD S X=$P (PSGFDN,"^ ")
  10843   "RTN","PSG OE81",103, 0)
  10844    I $E(X)=" ^" D ENFF^ PSGOE82 G: Y>0 @Y G A 25
  10845   "RTN","PSG OE81",104, 0)
  10846    I X="@"!( X?1."?") W :X="@" $C( 7),"  (Req uired)" S: X="@" X="? " D ENHLP^ PSGOEM(53. 1,25)
  10847   "RTN","PSG OE81",105, 0)
  10848    I X=+X,(X >0),(X'>20 00000) G A 25:'$$ENDL ^PSGDL(PSG SCH,X) K P SGDLS S PS GDL=X W "  ...dose li mit..." D  ENE^PSGDL
  10849   "RTN","PSG OE81",106, 0)
  10850    K %DT S % DT="ERTX", %DT(0)=PSG SD D ^%DT  K %DT I Y' >0 W $C(7) ,!!?13,"** * WARNING!  INVALID S TOP DATE O R PRIOR TO  START DAT E! ***",!  G A25
  10851   "RTN","PSG OE81",107, 0)
  10852    ;/RJS Beg in changes  for emerg ency regis tration of  clozapine  patient S et end dat e to start  date + 4  days at mi dnight.
  10853   "RTN","PSG OE81",108, 0)
  10854    I $$GET1^ DIQ(55,DFN ,53)?1U6N, $G(CLOZFLG ) D  G:X>4  A25  ;def  418867 RJ S*327
  10855   "RTN","PSG OE81",109, 0)
  10856    .N X1,X2  S X1=+Y,X2 =PSGSD D ^ %DTC
  10857   "RTN","PSG OE81",110, 0)
  10858    .S PSGEMR G=1 Q:X'>4
  10859   "RTN","PSG OE81",111, 0)
  10860    .I X>4 D
  10861   "RTN","PSG OE81",112, 0)
  10862    ..W !!?13 ,"*** EMER GENCY SUPP LY NOT TO  EXCEED 4 D AYS! ***", !
  10863   "RTN","PSG OE81",113, 0)
  10864    ..S $P(PS GFD,".",2) =2359,X1=P SGSD,X2=4  D C^%DTC S  PSGFD=X
  10865   "RTN","PSG OE81",114, 0)
  10866    ..S $P(PS GFDN,"^",1 )=$$ENDD^P SGMI(PSGFD ),$P(PSGFD N,"^",2)=P SGFD
  10867   "RTN","PSG OE81",115, 0)
  10868    ;/RJS End  changes f or emergen cy registr ation of c lozapine p atient Set  end date  to start d ate + 4 da ys at midn ight.
  10869   "RTN","PSG OE81",116, 0)
  10870    ;/RJS Beg in verify  that stop  date does  not exceed  maximum d ays supply  based on  lab freque ncy
  10871   "RTN","PSG OE81",117, 0)
  10872   A255 I '$G (PSGEMRG), $G(CLOZFLG ) N PSGBAC K D  G:$G( PSGBACK) A 25
  10873   "RTN","PSG OE81",118, 0)
  10874    .N PSGCFL G S PSGCFL G=1
  10875   "RTN","PSG OE81",119, 0)
  10876    .N X,X1,X 2
  10877   "RTN","PSG OE81",120, 0)
  10878    .S X2=$S( $P($G(ANQD ATA),"^",3 )=9:4,$G(C LOZPAT)=2: 28,$G(CLOZ PAT)=1:14, $G(CLOZPAT )=0:7,1:90 )
  10879   "RTN","PSG OE81",121, 0)
  10880    .S X1=+Y  D
  10881   "RTN","PSG OE81",122, 0)
  10882    ..N X2 S  X2=PSGSD D  ^%DTC S X 1=PSGSD
  10883   "RTN","PSG OE81",123, 0)
  10884    .I X>X2 W  !!,"*** S TOP DATE/T IME NOT TO  EXCEED "_ X2_" DAYS!  ***",! S  PSGBACK=1  Q
  10885   "RTN","PSG OE81",124, 0)
  10886    K:($G(PSG EMRG)) PSG EMRG
  10887   "RTN","PSG OE81",125, 0)
  10888    ;/RJS End  verify th at stop da te does no t exceed m aximum day s supply b ased on la b frequenc y.
  10889   "RTN","PSG OE81",126, 0)
  10890    ;; END NC C REMEDIAT ION RJS*32 7
  10891   "RTN","PSG OE81",127, 0)
  10892    S (PSGFDX ,PSGFD,PSG NEFD)=+Y,P SGFDN=$$EN DD^PSGMI(P SGFD)_"^"_ $$ENDTC^PS GMI(PSGFD)
  10893   "RTN","PSG OE81",128, 0)
  10894   W25 ;
  10895   "RTN","PSG OE81",129, 0)
  10896    N Z,MSG
  10897   "RTN","PSG OE81",130, 0)
  10898    D DOSE I  $G(Z)]"",Z >PSGNEFD D   G A25
  10899   "RTN","PSG OE81",131, 0)
  10900    . S MSG(1 )="There i s no admin istration  time that  falls betw een the St art Date/T ime"
  10901   "RTN","PSG OE81",132, 0)
  10902    . S MSG(2 )="and the  Stop Date /Time."
  10903   "RTN","PSG OE81",133, 0)
  10904    . D EN^DD IOL(.MSG)
  10905   "RTN","PSG OE81",134, 0)
  10906    I PSGFD<P SGDT W $C( 7),!!?13," *** WARNIN G! THE STO P DATE ENT ERED IS IN  THE PAST!  ***",! S  MSG=1
  10907   "RTN","PSG OE81",135, 0)
  10908    Q:+$G(PSG RO)
  10909   "RTN","PSG OE81",136, 0)
  10910    ;
  10911   "RTN","PSG OE81",137, 0)
  10912   DONE ;
  10913   "RTN","PSG OE81",138, 0)
  10914    ;Display  Expected F irst Dose; BHW;PSJ*5* 136
  10915   "RTN","PSG OE81",139, 0)
  10916    D EFDNV^P SJUTL
  10917   "RTN","PSG OE81",140, 0)
  10918    I PSGOEE  G:'PSGOEEF (PSGF2) @B ACK S PSGO EE=PSGOEEF (PSGF2)
  10919   "RTN","PSG OE81",141, 0)
  10920    D:+$G(PSG DUR) VERTI MES ;*315
  10921   "RTN","PSG OE81",142, 0)
  10922    K ORIG,PS GOLDED,PSG NEFDOLD,PS GFDNOLD
  10923   "RTN","PSG OE81",143, 0)
  10924    S:'+$G(PS GRF) PSGRF =+$$GET1^D IQ(50.7,$G (PSGPDRG), 12,"I")
  10925   "RTN","PSG OE81",144, 0)
  10926    Q
  10927   "RTN","PSG OE81",145, 0)
  10928    ;
  10929   "RTN","PSG OE81",146, 0)
  10930   FF ; up-ar row to ano ther field
  10931   "RTN","PSG OE81",147, 0)
  10932    D ENFF^PS GOEM I Y>0 ,Y'=39,Y'= 8,Y'=10,Y' =25 S Y=Y_ "^PSGOE8"_ $S("^109^1 3^3^7^26^" [("^"_Y_"^ "):"",1:2)  S:Y=2 FB= PSGF2_"^PS GOE81"
  10933   "RTN","PSG OE81",148, 0)
  10934    Q
  10935   "RTN","PSG OE81",149, 0)
  10936    ;
  10937   "RTN","PSG OE81",150, 0)
  10938   DEL ; dele te entry
  10939   "RTN","PSG OE81",151, 0)
  10940    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  10941   "RTN","PSG OE81",152, 0)
  10942    Q
  10943   "RTN","PSG OE81",153, 0)
  10944    ;
  10945   "RTN","PSG OE81",154, 0)
  10946   TIMES ;At  least one  admin time , not more  than inte rval allow s.
  10947   "RTN","PSG OE81",155, 0)
  10948    I ($G(PSG S0XT)'="O" ),($G(PSGS T)'="OC"), '$$PRNOK^P SGS0(PSGSC H) I X=""  D EN^DDIOL ("This ord er require s at least  one admin istration  time.") K  X Q  ;No t imes
  10949   "RTN","PSG OE81",156, 0)
  10950    N H,I,MAX
  10951   "RTN","PSG OE81",157, 0)
  10952    I PSGSCH] "" I $D(^P S(51.1,"AC ","PSJ",PS GSCH)) S H =+$O(^PS(5 1.1,"AC"," PSJ",PSGSC H,0)) S I= $P($G(^PS( 51.1,H,0)) ,"^",3)
  10953   "RTN","PSG OE81",158, 0)
  10954    I $G(PSGS T)="O",$L( X,"-")>1 D  EN^DDIOL( "This is a  One Time  Order. Onl y one admi nistration  time is p ermitted." ) K X Q
  10955   "RTN","PSG OE81",159, 0)
  10956    I $G(PSGS T)="O" Q   ;Done vali dating One  Time
  10957   "RTN","PSG OE81",160, 0)
  10958    I +$G(I)= 0 Q  ;No f requency -  can not c heck frequ ency relat ed items
  10959   "RTN","PSG OE81",161, 0)
  10960    S MAX=144 0/I
  10961   "RTN","PSG OE81",162, 0)
  10962    I MAX<1,$ L(X,"-")>1  D EN^DDIO L("This or der requir es one adm inistratio n time.")  K X Q
  10963   "RTN","PSG OE81",163, 0)
  10964    I MAX'<1, $L(X,"-")> MAX D EN^D DIOL("The  number of  admin time s entered  is greater  than indi cated by t he schedul e.") K X Q   ;Too man y times
  10965   "RTN","PSG OE81",164, 0)
  10966    I MAX'<1, $L(X,"-")< MAX D EN^D DIOL("The  number of  admin time s entered  is fewer t han indica ted by the  schedule. ")  ;Too f ew times
  10967   "RTN","PSG OE81",165, 0)
  10968    Q
  10969   "RTN","PSG OE81",166, 0)
  10970    ;
  10971   "RTN","PSG OE81",167, 0)
  10972   DOSE ;Make  certain a t least on e dose is  given.
  10973   "RTN","PSG OE81",168, 0)
  10974    N INFO,X
  10975   "RTN","PSG OE81",169, 0)
  10976    S Z="",IN FO=$S($G(P SGNESD):PS GNESD,1:$G (PSGSD))_U _($G(PSGNE FD))_U_($G (PSGSCH))_ U_($G(PSGS T))_U_($G( PSGDRG))_U _($G(PSGS0 Y))
  10977   "RTN","PSG OE81",170, 0)
  10978    Q:$G(PSGS T)="OC"!($ G(PSGST)=" P")
  10979   "RTN","PSG OE81",171, 0)
  10980    I '$L($G( PSGP)) N P SGP S PSGP =""
  10981   "RTN","PSG OE81",172, 0)
  10982    S Z=$$ENQ ^PSJORP2(P SGP,INFO)   ;Expected  first dos e.
  10983   "RTN","PSG OE81",173, 0)
  10984    Q
  10985   "RTN","PSG OE81",174, 0)
  10986    ;
  10987   "RTN","PSG OE81",175, 0)
  10988    ;*315 new  tags
  10989   "RTN","PSG OE81",176, 0)
  10990   PSGDUR ; P rompt for  Removal ti mes if adm in times a re on 24hr  rotations  and Site  Params are  enabled.
  10991   "RTN","PSG OE81",177, 0)
  10992    ; check p arameter f iles for r emoval cri teria quit  if remova l rotation  not enabl ed (<2)
  10993   "RTN","PSG OE81",178, 0)
  10994    ; if enab led determ ine type ( hard vers  soft stop)
  10995   "RTN","PSG OE81",179, 0)
  10996    ;0 = no r emoval (cu rrent cap/ tab functi onality)
  10997   "RTN","PSG OE81",180, 0)
  10998    ;1 = remo val at nex t admin (c urrent pat ch functio nality)
  10999   "RTN","PSG OE81",181, 0)
  11000    ;2 = remo val prior  to next ad min; soft  stop (phar macist opt ional prom pt to desi gnate dura tion of ad ministrati on
  11001   "RTN","PSG OE81",182, 0)
  11002    ;3 = remo val prior  to next ad min; hard  stop (phar macist req uired prom pt to desi gnate dura tion of ad ministrati on)
  11003   "RTN","PSG OE81",183, 0)
  11004    ; prompt  for remova l if = 2 t hen allow  skip, if =  3 then fo rce entry
  11005   "RTN","PSG OE81",184, 0)
  11006    ;
  11007   "RTN","PSG OE81",185, 0)
  11008    S PSGRF=+ $$GET1^DIQ (50.7,$G(P SGPDRG),12 ,"I") Q:(( PSGRF<2)!( $G(PSGST)= "O")!($G(P SGST)="P") !($G(PSGST )="OC"))   ; no remov al flag or  no remova l rotation
  11009   "RTN","PSG OE81",186, 0)
  11010    Q:$G(PSGS 0XT)>1440   ; Duratio n of Admin istration  valid only  for 24 ho urs - subj ect to cha nge in fut ure.
  11011   "RTN","PSG OE81",187, 0)
  11012    N RP,PSGI DF,WMSG,PS GDERR S (P SGIDF,PSGD ERR)=0 S:$ G(PSGDUR)> 0 RP=(PSGD UR/60) S:" BID,TID,QI D"[$G(PSGS CH) PSGIDF =1  ; Use  separate v alidation  for Times  per day ty pe orders
  11013   "RTN","PSG OE81",188, 0)
  11014    S PSGF2=3 9
  11015   "RTN","PSG OE81",189, 0)
  11016    W !,"DURA TION OF AD MINISTRATI ON (HRS):  "_$S($G(RP ):RP_"// " ,1:"") R R P:DTIME I  RP="^"!'$T  W:'$T $C( 7) S PSGDU R=$G(PSGDO A),X="^",P SGOEE=0 Q
  11017   "RTN","PSG OE81",190, 0)
  11018    I RP="" S :$G(PSGDUR )>0 RP=($G (PSGDUR)/6 0)
  11019   "RTN","PSG OE81",191, 0)
  11020    I RP="",$ G(PSGS0XT) ="D",$L(PS GSCH,"@")= 2,$P(PSGSC H,"@",2) S  (PSGAT,PS GRMVT)=$P( PSGSCH,"@" ,2) G 8
  11021   "RTN","PSG OE81",192, 0)
  11022    I RP="@", PSGRF'=3 D  DEL G:%'= 1 PSGDUR S  (PSGS0Y,P SGDUR,PSGR MVT)="",PS GRMV=-1 S: +$$GET1^DI Q(53.1,+$G (PSGORD),1 37) (PSGDU R,PSGRMV,P SGRMVT)="@ " Q
  11023   "RTN","PSG OE81",193, 0)
  11024    I (RP'="" ),(RP'="@" ),($E(RP)' ="^"),($E( RP)'="?")  S:(RP'?1N. 2N)!(+(RP) <1) RP="?"
  11025   "RTN","PSG OE81",194, 0)
  11026    I RP?1."? " D DURHLP ^PSGOEM(RP ,PSGRF) G  PSGDUR
  11027   "RTN","PSG OE81",195, 0)
  11028    I $E(RP)= "^" D FF G :Y>0 @Y G  PSGDUR
  11029   "RTN","PSG OE81",196, 0)
  11030    I (+RP>0) ,'PSGIDF D   I PSGRMV <1 G PSGDU R ; exclud e BID,TID  or QID sch edules
  11031   "RTN","PSG OE81",197, 0)
  11032    .S PSGDUR =(RP*60),P SGRMV=$G(P SGS0XT)-PS GDUR
  11033   "RTN","PSG OE81",198, 0)
  11034    .I PSGRMV <1 W !,"DU RATION OF  ADMINISTRA TION MATCH ES OR EXCE EDS ORDER  FREQUENCY"  S RP="",P SGDERR=1 K  PSGDUR,PS GRMV ; G P SGDUR
  11035   "RTN","PSG OE81",199, 0)
  11036    Q:$G(PSGD ERR)=1
  11037   "RTN","PSG OE81",200, 0)
  11038    I PSGRF=3 ,(+RP<1) W  $C(7),!," ENTRY IS R EQUIRED" S  RP="" G P SGDUR
  11039   "RTN","PSG OE81",201, 0)
  11040    I PSGRF=2 ,(+RP<1) D
  11041   "RTN","PSG OE81",202, 0)
  11042    .W !,"You  have not  entered Du ration of  Administra tion for t his medica tion order , "
  11043   "RTN","PSG OE81",203, 0)
  11044    .W !,"the refore the  BCMA user  will not  be prompte d to remov e the medi cation pri or "
  11045   "RTN","PSG OE81",204, 0)
  11046    .W !,"to  the next A dmin Time. "
  11047   "RTN","PSG OE81",205, 0)
  11048    .S PSGRMV =-1,RP=0
  11049   "RTN","PSG OE81",206, 0)
  11050    I PSGIDF, (+RP>0) D   ;Only for  TPD sched ules
  11051   "RTN","PSG OE81",207, 0)
  11052    .N F,P,PS GARR
  11053   "RTN","PSG OE81",208, 0)
  11054    .S PSGADT =$S($G(PSG DUR)=-1:X, $G(PSGAT): PSGAT,$G(P SGS0Y):PSG S0Y,1:""), PSGS0Y=PSG ADT
  11055   "RTN","PSG OE81",209, 0)
  11056    .S PSGARR =$L($G(PSG ADT),"-")
  11057   "RTN","PSG OE81",210, 0)
  11058    .F P=1:1: PSGARR D
  11059   "RTN","PSG OE81",211, 0)
  11060    ..S PSGAR R(P)=($P(P SGADT,"-", P)/100) S: (P>1) F(P) =PSGARR(P) -PSGARR(P- 1)
  11061   "RTN","PSG OE81",212, 0)
  11062    ..I $G(F( P)),($G(F( P))'=RP) S  WMSG=1_U_ "Duration  of Adminis tration do es not cor respond to  one or mo re",WMSG(1 )="of this  order's s cheduled A dministrat ion Times! "
  11063   "RTN","PSG OE81",213, 0)
  11064    S:(+RP>0)  PSGDUR=(R P*60)
  11065   "RTN","PSG OE81",214, 0)
  11066    W:(+RP>0)  ?60,RP,"  HOURS"
  11067   "RTN","PSG OE81",215, 0)
  11068    D:$G(WMSG ) EN^DDIOL ($P(WMSG,U ,2)),EN^DD IOL(WMSG(1 ))
  11069   "RTN","PSG OE81",216, 0)
  11070    Q
  11071   "RTN","PSG OE81",217, 0)
  11072    ;
  11073   "RTN","PSG OE81",218, 0)
  11074   VERTIMES ;  Redisplay  Admin and  Removal t imes
  11075   "RTN","PSG OE81",219, 0)
  11076    S PSGRF=+ $$GET1^DIQ (50.7,$G(P SGPDRG),12 ,"I") Q:(P SGRF<2)!($ G(PSGST)=" O")
  11077   "RTN","PSG OE81",220, 0)
  11078    N PSGADT, PSGRARR,PS GAARR
  11079   "RTN","PSG OE81",221, 0)
  11080    ;If we ha ve a frequ ency and t his is odd  type orde r then we  need to st art calcul ations wit h order st art time.
  11081   "RTN","PSG OE81",222, 0)
  11082    I $G(PSGS 0XT),$G(PS GNESD),+$G (PSGDUR),$ G(PSGAT)=" " D  Q
  11083   "RTN","PSG OE81",223, 0)
  11084    .N L
  11085   "RTN","PSG OE81",224, 0)
  11086    .S (PSGAA RR,PSGRARR )=1,PSGADT =$P($P(PSG NESD,U,1), ".",2),L=$ L(PSGADT)
  11087   "RTN","PSG OE81",225, 0)
  11088    .S PSGRAR R(1)=((((( PSGADT*60) +PSGDUR)/6 0)#24)*100 ) S:PSGRAR R(1)=0 PSG RARR(1)=24 00 S:$L(PS GRARR(1))= 3 PSGRARR( 1)="0"_PSG RARR(1)
  11089   "RTN","PSG OE81",226, 0)
  11090    .S PSGRAR R(1)=$E(PS GRARR(1),1 ,L)_"(R)"
  11091   "RTN","PSG OE81",227, 0)
  11092    .S PSGAAR R(1)=PSGAD T,PSGAARR( 1)=$E(PSGA ARR(1),1,L )_"(A)"
  11093   "RTN","PSG OE81",228, 0)
  11094    .D WRITE
  11095   "RTN","PSG OE81",229, 0)
  11096    ;
  11097   "RTN","PSG OE81",230, 0)
  11098    S (PSGRAR R,PSGAARR) =$S($G(PSG AT):$L(PSG AT,"-"),1: $L(PSGS0Y, "-"))
  11099   "RTN","PSG OE81",231, 0)
  11100    N P,L
  11101   "RTN","PSG OE81",232, 0)
  11102    F P=1:1:P SGRARR D
  11103   "RTN","PSG OE81",233, 0)
  11104    .S PSGADT =$S($G(PSG AT):$P(PSG AT,"-",P), 1:$P(PSGS0 Y,"-",P)), L=$L(PSGAD T)
  11105   "RTN","PSG OE81",234, 0)
  11106    .S PSGADT =$S($L(PSG ADT)=4:PSG ADT/100,1: PSGADT*1)
  11107   "RTN","PSG OE81",235, 0)
  11108    .S PSGRAR R(P)=((((( PSGADT*60) +PSGDUR)/6 0)#24)*100 ) S:PSGRAR R(P)=0 PSG RARR(P)=24 00 S:$L(PS GRARR(P))= 3 PSGRARR( P)="0"_PSG RARR(P)
  11109   "RTN","PSG OE81",236, 0)
  11110    .S PSGRAR R(P)=$E(PS GRARR(P),1 ,L)_"(R)"
  11111   "RTN","PSG OE81",237, 0)
  11112    .S PSGAAR R(P)=(PSGA DT*100) S: $L(PSGAARR (P))=3 PSG AARR(P)="0 "_PSGAARR( P)
  11113   "RTN","PSG OE81",238, 0)
  11114    .S PSGAAR R(P)=$E(PS GAARR(P),1 ,L)_"(A)"
  11115   "RTN","PSG OE81",239, 0)
  11116    D WRITE
  11117   "RTN","PSG OE81",240, 0)
  11118    Q
  11119   "RTN","PSG OE81",241, 0)
  11120    ;
  11121   "RTN","PSG OE81",242, 0)
  11122   WRITE ;
  11123   "RTN","PSG OE81",243, 0)
  11124    W !!,"Ver ify Admin  and remova l times",!
  11125   "RTN","PSG OE81",244, 0)
  11126    W !,"(A)D MINISTRATI ON -(R)EMO VAL TIMES"
  11127   "RTN","PSG OE81",245, 0)
  11128    W !,"____ __________ __________ __________ __________ __________ __________ __________ _",!
  11129   "RTN","PSG OE81",246, 0)
  11130    F P=1:1:P SGAARR W P SGAARR(P)_ "-"_PSGRAR R(P)  W:P' =PSGAARR "  , "
  11131   "RTN","PSG OE81",247, 0)
  11132    D ASK
  11133   "RTN","PSG OE81",248, 0)
  11134    Q
  11135   "RTN","PSG OE81",249, 0)
  11136    ;
  11137   "RTN","PSG OE81",250, 0)
  11138   ASK ;
  11139   "RTN","PSG OE81",251, 0)
  11140    N Y
  11141   "RTN","PSG OE81",252, 0)
  11142    S DIR("A" )="Is this  correct", DIR(0)="Y"  D ^DIR I  $D(DUOUT)! $D(DTOUT)  W:'$T $C(7 ) S PSGOEE =0 K PSGDU R G DONE
  11143   "RTN","PSG OE81",253, 0)
  11144    I 'Y K X  S PSGDUR=- 1 G A39
  11145   "RTN","PSG OE81",254, 0)
  11146    N P S P=1 ,PSGRMVT=$ P(PSGRARR( P),"(",1)
  11147   "RTN","PSG OE81",255, 0)
  11148    F  S P=$O (PSGRARR(P )) Q:P=""   D
  11149   "RTN","PSG OE81",256, 0)
  11150    .S PSGRMV T=PSGRMVT_ "-"_$P(PSG RARR(P),"( ",1)
  11151   "RTN","PSG OE81",257, 0)
  11152    Q
  11153   "RTN","PSG OE81",258, 0)
  11154    ;
  11155   "RTN","PSG OE82")
  11156   0^17^B4095 0850
  11157   "RTN","PSG OE82",1,0)
  11158   PSGOE82 ;B IR/CML3-NO N-VERIFIED  ORDER EDI T (CONT.)  ;Jul 26, 2 017@18:04: 02
  11159   "RTN","PSG OE82",2,0)
  11160    ;;5.0;INP ATIENT MED ICATIONS ; **2,35,50, 67,58,81,1 27,168,181 ,276,317,3 27**;16 DE C 97;Build  64
  11161   "RTN","PSG OE82",3,0)
  11162    ;
  11163   "RTN","PSG OE82",4,0)
  11164    ; Referen ce to ^DD( 53.1 is su pported by  DBIA #225 6.
  11165   "RTN","PSG OE82",5,0)
  11166    ; Referen ce to ^VA( 200 is sup ported by  DBIA #1006 0.
  11167   "RTN","PSG OE82",6,0)
  11168    ; Referen ce to ^DIE  is suppor ted by DBI A #10018.
  11169   "RTN","PSG OE82",7,0)
  11170    ; Referen ce to ^DIC  is suppor ted by DBI A #10006.
  11171   "RTN","PSG OE82",8,0)
  11172    ; Referen ce to ^DIC N is suppo rted by DB IA #10009.
  11173   "RTN","PSG OE82",9,0)
  11174    ; Referen ce to $$GE T^XPAR is  supported  by DBIA #2 263
  11175   "RTN","PSG OE82",10,0 )
  11176    ;
  11177   "RTN","PSG OE82",11,0 )
  11178   1 ; provid er
  11179   "RTN","PSG OE82",12,0 )
  11180    S MSG=0,P SGF2=1 S:P SGOEEF(PSG F2) BACK=" 1^PSGOE82"
  11181   "RTN","PSG OE82",13,0 )
  11182   A1 I $G(PS GORD)["P", $G(PSGP) I  $$LASTREN ^PSJLMPRI( PSGP,PSGOR D) D  Q
  11183   "RTN","PSG OE82",14,0 )
  11184    . W !?5," This order  has been  renewed. P rovider ma y not be e dited at t his point.  " D PAUSE ^VALM1
  11185   "RTN","PSG OE82",15,0 )
  11186    ;; START  NCC T4 MOD S >> 327*R JS
  11187   "RTN","PSG OE82",16,0 )
  11188    S PSTMPI= PSGPR,PSTM PN=PSGPRN
  11189   "RTN","PSG OE82",17,0 )
  11190    W !,"PROV IDER: ",$S (PSGPR:PSG PRN_"// ", 1:"") R X: DTIME I X= "^"!'$T W: '$T $C(7)  S PSGOEE=0  G DONE
  11191   "RTN","PSG OE82",18,0 )
  11192    I $S(X="" :'PSGPR,1: X="@") W $ C(7),"  (R equired)"  S X="?" D  ENHLP^PSGO EM(53.1,1)  G A1
  11193   "RTN","PSG OE82",19,0 )
  11194    I X="",PS GPR S X=PS GPRN I PSG PR'=PSGPRN ,$$GET1^DI Q(200,PSGP R,53.1,"I" ) G:'$G(AN QX) DONE
  11195   "RTN","PSG OE82",20,0 )
  11196    I +$G(ANQ X) G A2
  11197   "RTN","PSG OE82",21,0 )
  11198    I X?1."?"  D ENHLP^P SGOEM(53.1 ,1)
  11199   "RTN","PSG OE82",22,0 )
  11200    I $E(X)=" ^" D ENFF  G:Y>0 @Y G  A1
  11201   "RTN","PSG OE82",23,0 )
  11202    K DIC S D IC="^VA(20 0,",DIC(0) ="EMQZ",DI C("S")="I  $$GET1^DIQ (200,PSGPR ,53.1,""I" "),$S('$$G ET1^DIQ(20 0,PSGPR,53 .4,""I""): 1,1:$$GET1 ^DIQ(200,P SGPR,53.4, ""I"")>DT) " D ^DIC K  DIC I Y'> 0 G A1
  11203   "RTN","PSG OE82",24,0 )
  11204   A2 S ANQX= 0 D CLOZPR V
  11205   "RTN","PSG OE82",25,0 )
  11206    I $G(ANQX ) S PSGPR= PSTMPI,PSG PRN=PSTMPN   K PSTMPN ,PSTMPI,AN QX G A1
  11207   "RTN","PSG OE82",26,0 )
  11208    ;; END NC C T4 MODS  << 327*RJS
  11209   "RTN","PSG OE82",27,0 )
  11210    S PSGPR=+ Y,PSGPRN=Y (0,0) G DO NE
  11211   "RTN","PSG OE82",28,0 )
  11212    ;
  11213   "RTN","PSG OE82",29,0 )
  11214   5 ; self m ed
  11215   "RTN","PSG OE82",30,0 )
  11216    S MSG=0,P SGF2=5 S:P SGOEEF(PSG F2) BACK=" 5^PSGOE82"  K PSGOEEF (6) S:PSGS M PSGOEEF( 6)=1
  11217   "RTN","PSG OE82",31,0 )
  11218   A5 W !,"SE LF MED: "  W $P("NO^Y ES","^",PS GSM+1),"//  " R X:DTI ME I X="^" !'$T W:'$T  $C(7) S P SGOEE=0 G  DONE
  11219   "RTN","PSG OE82",32,0 )
  11220    ;I "01"[X ,$L(X)<2 S :PSGSM=""& (X]"") PSG SM=X W:PSG SM]"" "  ( ",$P("NO^Y ES","^",PS GSM+1),")"  G:'PSGSM  DONE S PSG OEEF(6)=1  G 6
  11221   "RTN","PSG OE82",33,0 )
  11222    I "01"[X, $L(X)<2 S: X]"" PSGSM =+X W:PSGS M]"" "  (" ,$P("NO^YE S","^",PSG SM+1),")"  G:'PSGSM D ONE S PSGO EEF(6)=1 G  6
  11223   "RTN","PSG OE82",34,0 )
  11224    I X="@" W  $C(7),"   (Required) " G A5
  11225   "RTN","PSG OE82",35,0 )
  11226    I X?1"^". E D ENFF G :Y>0 @Y G  A5
  11227   "RTN","PSG OE82",36,0 )
  11228    I X?1."?"  D ENHLP^P SGOEM(53.1 ,5) G A5
  11229   "RTN","PSG OE82",37,0 )
  11230    D YN I  S  PSGSM=$E( X)="Y" K P SGOEEF(6)  G:'PSGSM D ONE S PSGO EEF(6)=1 G  6
  11231   "RTN","PSG OE82",38,0 )
  11232    W $C(7) D  ENHLP^PSG OEM(53.1,5 ) G A5
  11233   "RTN","PSG OE82",39,0 )
  11234    ;
  11235   "RTN","PSG OE82",40,0 )
  11236   6 ; hospit al supplie d self med
  11237   "RTN","PSG OE82",41,0 )
  11238    S MSG=0,P SGF2=6 S:P SGOEEF(PSG F2) BACK=" 6^PSGOE82"
  11239   "RTN","PSG OE82",42,0 )
  11240   A6 W !,"HO SPITAL SUP PLIED SELF  MED: " W: PSGHSM]""  $P("NO^YES ","^",PSGH SM+1),"//  " R X:DTIM E I X="^"! '$T W:'$T  $C(7) S PS GOEE=0 G D ONE
  11241   "RTN","PSG OE82",43,0 )
  11242    I "01"[X, $L(X)=1 S: X]"" PSGHS M=+X W "   (",$P("NO^ YES","^",P SGHSM+1)," )" S MSG=0 ,PSGF2=5 G  DONE
  11243   "RTN","PSG OE82",44,0 )
  11244    I X="@" W  $C(7),"   (Required) " G A6
  11245   "RTN","PSG OE82",45,0 )
  11246    I X?1"^". E D ENFF G :Y>0 @Y G  A6
  11247   "RTN","PSG OE82",46,0 )
  11248    I X?1."?"  D ENHLP^P SGOEM(53.1 ,6) G A6
  11249   "RTN","PSG OE82",47,0 )
  11250    D YN I  S  PSGHSM=$E (X)="Y" S  MSG=0,PSGF 2=5 G DONE
  11251   "RTN","PSG OE82",48,0 )
  11252    W $C(7) D  ENHLP^PSG OEM(53.1,6 ) G A6
  11253   "RTN","PSG OE82",49,0 )
  11254    ;
  11255   "RTN","PSG OE82",50,0 )
  11256   2 ; dispen se drug mu ltiple
  11257   "RTN","PSG OE82",51,0 )
  11258    ;*276 - D isallow un authorized  nurses fr om editing  Dispense  Drug
  11259   "RTN","PSG OE82",52,0 )
  11260    I '$P($G( PSJSYSU)," ;",4) W !, "You are n ot authori zed to edi t Dispense  Drugs." D  PAUSE^VAL M1 Q
  11261   "RTN","PSG OE82",53,0 )
  11262    S MSG=0,P SGF2=2,BAC K="2^PSGOE 82" K PSGO EEND
  11263   "RTN","PSG OE82",54,0 )
  11264    N PSGX,AR RAY D LIST ^DIC(53.45 02,","_PSJ SYSP_",",, "I",,,,,,, "ARRAY") S  PSGX=+ARR AY("DILIST ",0)
  11265   "RTN","PSG OE82",55,0 )
  11266    N PSJPNDR N I $G(PSG ORD) I $E( PSGORD,$L( PSGORD))=" P",$$GET1^ DIQ(53.1,+ PSGORD,103 ,"I")="R"  S PSJPNDRN =1 D
  11267   "RTN","PSG OE82",56,0 )
  11268    .S $P(PSJ PNDRN,"^", 2)="Dispen se drugs f or renewal  orders ca nnot be de leted, but  can be gi ven an INA CTIVE DATE .  "
  11269   "RTN","PSG OE82",57,0 )
  11270    ; PSJ*5*3 17 - If PS J PADE OE  BALANCES p arameter i s YES, PAD E balances  should di splay as i dentifier.
  11271   "RTN","PSG OE82",58,0 )
  11272    N PSJPADL K S PSJPAD LK=0  ; Fl ag indicat ing PADE d rug lookup  was done,  don't do  drug looku p twice -  PSJ*5*317
  11273   "RTN","PSG OE82",59,0 )
  11274    I $$GET^X PAR("SYS", "PSJ PADE  OE BALANCE S") D
  11275   "RTN","PSG OE82",60,0 )
  11276    .N DA,DIC ,DIE,DR,DI R,PSJLOC,P SJDRG,PSJD DC,DFN,PSJ ORD,PSJPOI ,PSJORCL,P SJCLNK,PSJ CLND
  11277   "RTN","PSG OE82",61,0 )
  11278    .; If cli nic order,  quit if c linic loca tion is no t linked t o PADE
  11279   "RTN","PSG OE82",62,0 )
  11280    .S PSJORC L=$S($G(PS GORD)["P": $$GET1^DIQ (53.1,+$G( PSGORD),11 3,"I")_"^" _$$GET1^DI Q(53.1,+$G (PSGORD),1 26,"I"),1: "")
  11281   "RTN","PSG OE82",63,0 )
  11282    .I PSJORC L,$P(PSJOR CL,"^",2)  S PSJCLNK= $$PADECL^P SJPAD50(+$ G(PSJORCL) ) Q:'PSJCL NK
  11283   "RTN","PSG OE82",64,0 )
  11284    .I '$G(PS JCLNK) Q:' $$PADEWD^P SJPAD50(+$ G(VAIN(4)) )
  11285   "RTN","PSG OE82",65,0 )
  11286    .I $G(PSG ORD) S PSJ POI=$$GET1 ^DIQ(53.1, PSGORD,108 ,"I")
  11287   "RTN","PSG OE82",66,0 )
  11288    .S DFN=$G (PSGP),PSJ ORD=$G(PSG ORD)
  11289   "RTN","PSG OE82",67,0 )
  11290    .N ARRAY  D LIST^DIC (53.4502," ,"_+$G(PSJ SYSP)_",", ,"I",,,,,, ,"ARRAY")
  11291   "RTN","PSG OE82",68,0 )
  11292    .F I=1:1  Q:'$D(ARRA Y("DILIST" ,2,I))  S  PSJDDC=ARR AY("DILIST ",2,I),PSJ DRG(PSJDDC )=$$GET1^D IQ(53.4502 ,PSJDDC_", "_PSJSYSP, .01,"I") I  '$G(PSJPO I) D
  11293   "RTN","PSG OE82",69,0 )
  11294    ..S PSJPO I=+$$GET1^ DIQ(50,+$G (PSJDRG(PS JDDC)),2.1 ,"I")
  11295   "RTN","PSG OE82",70,0 )
  11296    ..I '$G(P SJPOI),$G( PSGPD),($$ GET1^DIQ(5 0.7,+$G(PS GPD),.01)] "") S PSJP OI=+PSGPD
  11297   "RTN","PSG OE82",71,0 )
  11298    .S PSJCLN D=$S($G(PS JORD)["U": $$GET1^DIQ (55.06,+PS JORD_","_D FN,28,"I") ,$G(PSJORD )["P":$$GE T1^DIQ(53. 1,+PSGORD, 113,"I")_" ^"_$$GET1^ DIQ(53.1,+ PSGORD,126 ,"I"),1:"" )
  11299   "RTN","PSG OE82",72,0 )
  11300    .S PSJLOC =$S(PSJCLN D&$P(PSJCL ND,"^",2): +PSJCLND_" C",1:"")
  11301   "RTN","PSG OE82",73,0 )
  11302    .S:'PSJLO C PSJLOC=+ $G(VAIN(4) ) I '$G(PS JLOC) D
  11303   "RTN","PSG OE82",74,0 )
  11304    ..N VAIN  D INP^VADP T S PSJLOC =$G(VAIN(4 ))
  11305   "RTN","PSG OE82",75,0 )
  11306    .S PSJPAD LK=1
  11307   "RTN","PSG OE82",76,0 )
  11308    .D READDD ^PSJPAD50( .PSJDRG,$S ($G(PSGPD) :+$G(PSGPD ),1:+$G(PS JPOI)),PSJ LOC,PSJORD ,$G(PSGORD ))
  11309   "RTN","PSG OE82",77,0 )
  11310    ; PSJ*5*3 17 - If PS J PADE OE  BALANCES p arameter i s NO, PADE  balances  should NOT  display a s identife r.
  11311   "RTN","PSG OE82",78,0 )
  11312    I '$G(PSJ PADLK) N D A,DIC,DIE, DR,DIR S D IE="^PS(53 .45,",DA=P SJSYSP,DR= 2,DR(2,53. 4502)=".01 ;.02"_$S($ G(PSJPNDRN ):";.03",1 :"") D ^DI E
  11313   "RTN","PSG OE82",79,0 )
  11314    I '$O(^PS (53.45,PSJ SYSP,2,0))  W $C(7),! !,"WARNING : This ord er must ha ve at leas t one disp ense drug  before pha rmacy can" ,!?9,"veri fy it!",!  S MSG=1
  11315   "RTN","PSG OE82",80,0 )
  11316    D DDOC(PS GX)
  11317   "RTN","PSG OE82",81,0 )
  11318    NEW PSJDO SE
  11319   "RTN","PSG OE82",82,0 )
  11320    D DOSECHK ^PSJDOSE
  11321   "RTN","PSG OE82",83,0 )
  11322    I +$G(PSJ DSFLG) D D SPWARN^PSJ DOSE S PSG OEEF(109)= 1
  11323   "RTN","PSG OE82",84,0 )
  11324    G DONE
  11325   "RTN","PSG OE82",85,0 )
  11326    ;
  11327   "RTN","PSG OE82",86,0 )
  11328   40 ; comme nts
  11329   "RTN","PSG OE82",87,0 )
  11330    S MSG=0,P SGF2=40,BA CK="40^PSG OE82",DA=P SJSYSP,DR= 1,DIE="^PS (53.45," D  ^DIE W !  G DONE
  11331   "RTN","PSG OE82",88,0 )
  11332    ;
  11333   "RTN","PSG OE82",89,0 )
  11334   66 ; provi der commen ts
  11335   "RTN","PSG OE82",90,0 )
  11336    ;S MSG=0, PSGF2=66,B ACK="66^PS GOE82",DA= PSJSYSP,DR =4,DIE="^P S(53.45,"  D ^DIE W !  G DONE
  11337   "RTN","PSG OE82",91,0 )
  11338    ;
  11339   "RTN","PSG OE82",92,0 )
  11340   DONE ;
  11341   "RTN","PSG OE82",93,0 )
  11342    I PSGOEE  G:'PSGOEEF (PSGF2) @B ACK S PSGO EE=PSGOEEF (PSGF2)
  11343   "RTN","PSG OE82",94,0 )
  11344    K F,F0,PS GF2,F3,PSG ,SDT Q
  11345   "RTN","PSG OE82",95,0 )
  11346    ;
  11347   "RTN","PSG OE82",96,0 )
  11348   ENFF ; up- arrow to a nother fie ld
  11349   "RTN","PSG OE82",97,0 )
  11350    S Y=-1 I  '$D(PSGOEE F)!(X?1"^" 1.9N) W $C (7),"  ??"  Q
  11351   "RTN","PSG OE82",98,0 )
  11352    S X=$E(X, 2,99) I X= +X S Y=$S( $D(PSGOEEF (X)):X,1:- 1) W "  "  W:Y>0 $$CO DES2^PSIVU TL(53.1,X)  W:Y'>0 $C (7),"??" Q
  11353   "RTN","PSG OE82",99,0 )
  11354    K DIC S D IC="^DD(53 .1,",DIC(0 )="QEM",DI C("S")="I  $D(PSGOEEF (+Y))" D ^ DIC K DIC  S Y=+Y S:Y >0 Y=$P($T (@("F"_Y)) ,";",3) Q
  11355   "RTN","PSG OE82",100, 0)
  11356    ;
  11357   "RTN","PSG OE82",101, 0)
  11358   DEL ; dele te entry
  11359   "RTN","PSG OE82",102, 0)
  11360    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  11361   "RTN","PSG OE82",103, 0)
  11362    Q
  11363   "RTN","PSG OE82",104, 0)
  11364    ;
  11365   "RTN","PSG OE82",105, 0)
  11366   CLOZPRV ;;  START NCC  T4 MODS > > 327*RJS
  11367   "RTN","PSG OE82",106, 0)
  11368    N CLOZFLG  I $G(PSGO RD)["P",$$ GET1^DIQ(5 3.1,+PSGOR D,.01) S C LOZFLG=$$I SCLOZ^PSJC LOZ(+PSGOR D) I 1
  11369   "RTN","PSG OE82",107, 0)
  11370    E  I $G(P SGORD),$$G ET1^DIQ(55 .06,+PSGOR D_","_PSGP ,.01) S CL OZFLG=$$IS CLOZ^PSJCL OZ(,,PSGP, +PSGORD) I  1
  11371   "RTN","PSG OE82",108, 0)
  11372    E  S CLOZ FLG=$$ISCL OZ^PSJCLOZ (,,,,+$G(P SGDRG))
  11373   "RTN","PSG OE82",109, 0)
  11374    I CLOZFLG  D
  11375   "RTN","PSG OE82",110, 0)
  11376    .I PSGPR' =+Y S PSGP R=+Y,PSGPR N=Y(0,0)
  11377   "RTN","PSG OE82",111, 0)
  11378    .S ANQX=0  D PROVCHK ^PSJCLOZ(P SGPR)
  11379   "RTN","PSG OE82",112, 0)
  11380    .I ANQX=0  K PSTMPN, PSTMPI
  11381   "RTN","PSG OE82",113, 0)
  11382    ;; END NC C T4 MODS  << 327*RJS
  11383   "RTN","PSG OE82",114, 0)
  11384    Q
  11385   "RTN","PSG OE82",115, 0)
  11386    ;
  11387   "RTN","PSG OE82",116, 0)
  11388   YN ; yes/n o as a set  of codes
  11389   "RTN","PSG OE82",117, 0)
  11390    I X'?.U F  Y=1:1:$L( X) I $E(X, Y)?1L S X= $E(X,1,Y-1 )_$C($A(X, Y)-32)_$E( X,Y+1,$L(X ))
  11391   "RTN","PSG OE82",118, 0)
  11392    F Y="NO", "YES" I $P (Y,X)="" W  $P(Y,X,2)  Q
  11393   "RTN","PSG OE82",119, 0)
  11394    Q
  11395   "RTN","PSG OE82",120, 0)
  11396   DDOC(PSGX)  ; Order c heck on ad ditional d ispense dr ug for all ergy and a dv. reacti ons.
  11397   "RTN","PSG OE82",121, 0)
  11398    N PSGY,PS GND1,PSGND 3,PSJALLGY
  11399   "RTN","PSG OE82",122, 0)
  11400    S PSGY=0  F  S PSGX= $O(^PS(53. 45,PSJSYSP ,2,PSGX))  Q:'PSGX  S  PSGY=$P($ G(^PS(53.4 5,PSJSYSP, 2,PSGX,0)) ,"^") Q:PS GY=""  D
  11401   "RTN","PSG OE82",123, 0)
  11402    . N INTER VEN,PSJDDI ,PSJIREQ,P SJRXREQ,PS JDD,PSGORQ F,PSJPDRG  S PSJDD=PS GY
  11403   "RTN","PSG OE82",124, 0)
  11404    . S Y=1,( PSJIREQ,PS JRXREQ,INT ERVEN,X)=" "
  11405   "RTN","PSG OE82",125, 0)
  11406    . I '$G(P SJALGY1) S  PSJALLGY( PSJDD)=""  D ALLERGY^ PSJOC
  11407   "RTN","PSG OE82",126, 0)
  11408    . ;D IVSO L^PSGSICHK
  11409   "RTN","PSG OE82",127, 0)
  11410    . I ($D(P SGORQF)) D
  11411   "RTN","PSG OE82",128, 0)
  11412    .. K ^PS( 53.45,PSJS YSP,2,PSGX ),^PS(53.4 5,PSJSYSP, 2,"B",PSGY )
  11413   "RTN","PSG OE82",129, 0)
  11414    Q
  11415   "RTN","PSG OE82",130, 0)
  11416    ;
  11417   "RTN","PSG OE82",131, 0)
  11418   F101 ;;101 ^PSGOE8
  11419   "RTN","PSG OE82",132, 0)
  11420   F109 ;;109 ^PSGOE8
  11421   "RTN","PSG OE82",133, 0)
  11422   F3 ;;3^PSG OE8
  11423   "RTN","PSG OE82",134, 0)
  11424   F7 ;;7^PSG OE8
  11425   "RTN","PSG OE82",135, 0)
  11426   PSGF26 ;;2 6^PSGOE8
  11427   "RTN","PSG OE82",136, 0)
  11428   F39 ;;39^P SGOE81
  11429   "RTN","PSG OE82",137, 0)
  11430   F8 ;;8^PSG OE81
  11431   "RTN","PSG OE82",138, 0)
  11432   F10 ;;10^P SGOE81
  11433   "RTN","PSG OE82",139, 0)
  11434   PSGF25 ;;2 5^PSGOE81
  11435   "RTN","PSG OE82",140, 0)
  11436   F1 ;;1^PSG OE82
  11437   "RTN","PSG OE82",141, 0)
  11438   F5 ;;5^PSG OE82
  11439   "RTN","PSG OE82",142, 0)
  11440   PSGF2 ;;2^ PSGOE82
  11441   "RTN","PSG OE91")
  11442   0^30^B1432 95228
  11443   "RTN","PSG OE91",1,0)
  11444   PSGOE91 ;B IR/CML3-AC TIVE ORDER  EDIT (CON T.) ;Jul 2 6, 2017@18 :04:02
  11445   "RTN","PSG OE91",2,0)
  11446    ;;5.0;INP ATIENT MED ICATIONS;* *50,64,58, 110,111,13 6,113,179, 265,267,28 5,315,334, 327**;16 D EC 97;Buil d 64
  11447   "RTN","PSG OE91",3,0)
  11448    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  11449   "RTN","PSG OE91",4,0)
  11450    ; Referen ce to ^PS( 55 is supp orted by D BIA #2191.
  11451   "RTN","PSG OE91",5,0)
  11452    ; Referen ce to ^PS( 50.7 is su pported by  DBIA# 218 0
  11453   "RTN","PSG OE91",6,0)
  11454    ; Referen ce to ^PS( 51.1 is su pported by  DBIA 2177 .
  11455   "RTN","PSG OE91",7,0)
  11456    ;External  reference  YSCLTST2  supported  by DBIA 45 56
  11457   "RTN","PSG OE91",8,0)
  11458    ;
  11459   "RTN","PSG OE91",9,0)
  11460   41 ; admin  times
  11461   "RTN","PSG OE91",10,0 )
  11462    ;S MSG=0, PSGF2=41,O RIG=$G(PSG AT) S:PSGO EEF(PSGF2)  BACK="41^ PSGOE91"
  11463   "RTN","PSG OE91",11,0 )
  11464    ;*315 nex t 5 lines
  11465   "RTN","PSG OE91",12,0 )
  11466    N PSGDOA
  11467   "RTN","PSG OE91",13,0 )
  11468    S MSG=0,P SGF2=41,OR IG=$G(PSGA T),PSGDOA= $G(PSGDUR)  S:PSGOEEF (PSGF2) BA CK="41^PSG OE91"
  11469   "RTN","PSG OE91",14,0 )
  11470    I (PSGST= "P")!$$PRN OK^PSGS0($ G(PSGSCH))  G DONE
  11471   "RTN","PSG OE91",15,0 )
  11472    I $$ODD^P SGS0(PSGS0 XT) D PSGD UR G DONE
  11473   "RTN","PSG OE91",16,0 )
  11474   A41 I $G(P SJORD),$G( PSGP) I $$ COMPLEX^PS JOE(PSGP,P SJORD) S P SGOEE=0 D   G DONE
  11475   "RTN","PSG OE91",17,0 )
  11476    .W !!?5," ADMIN TIME S may not  be edited  for active  complex o rders." D  PAUSE^VALM 1
  11477   "RTN","PSG OE91",18,0 )
  11478    W !,"ADMI N TIMES: " _$S(PSGAT: PSGAT_"//  ",1:"") R  X:DTIME I  X="^"!('$T ) W:'$T $C (7) S PSGO EE=0 S:X=" ^" (X,PSGA T)=$G(ORIG ),PSGDUR=" " G DONE
  11479   "RTN","PSG OE91",19,0 )
  11480    I X="" S: $G(PSGAT)  X=PSGAT,PS GNOHI=1 ;* 315 If adm in time de fault was  taken then  don't hig hlight adm in time.
  11481   "RTN","PSG OE91",20,0 )
  11482    I $E(X)=" ^" D ENFF^ PSGOE92 G: Y>0 @Y G A 41
  11483   "RTN","PSG OE91",21,0 )
  11484    I X="@" I  (PSGS0XT= "D")!(PSGS CH["@") I  ((",P,R,OC ,O,")'[(", "_$G(PSGST )_",")) D   G A41
  11485   "RTN","PSG OE91",22,0 )
  11486    .W $C(7), "  ??" S X ="?" W:PSG S0XT="D"!( PSGSCH["@" ) !,"This  is a 'DAY  OF THE WEE K' schedul e and MUST  have admi n times."  D ENHLP^PS GOEM(55.06 ,41)
  11487   "RTN","PSG OE91",23,0 )
  11488    I X="@" D  DEL G:%'= 1 A41 S PS GAT="",X=" "
  11489   "RTN","PSG OE91",24,0 )
  11490    I ((PSGST ="O")!($G( PSGST)="OC ")!($G(PSG ST)="P")!$ $ODD^PSGS0 ($P($G(ZZN D),"^",3)) !($P($G(ZZ ND),"^",5) ="O")),X=" " D  G DON E
  11491   "RTN","PSG OE91",25,0 )
  11492    .S (PSGS0 Y,PSGAT)=X
  11493   "RTN","PSG OE91",26,0 )
  11494    .I (($G(P SGRF))&($G (PSGST)="O ")) N PSGR O S PSGOEE F(34)=1,PS GOEEF(41)= 1,PSGRO=1  D 34
  11495   "RTN","PSG OE91",27,0 )
  11496    I $G(PSGS 0XT) I '$$ ODD^PSGS0( PSGS0XT),$ G(PSGST)'= "P",$G(PSG ST)'="OC", '$$PRNOK^P SGS0(PSGSC H) I ($G(P SGST)'="O" ) D TIMES  G:'$D(X) A 41 D PSGDU R G:'$D(X)  A41 G:$G( X)="^" DON E ;*315
  11497   "RTN","PSG OE91",28,0 )
  11498    I X?1."?"  D ENHLP^P SGOEM(55.0 6,41) G A4 1
  11499   "RTN","PSG OE91",29,0 )
  11500    D ENCHK^P SGS0 I '$D (X) W $C(7 ),"  ??" S  X="?" D E NHLP^PSGOE M(55.06,41 ) G A41
  11501   "RTN","PSG OE91",30,0 )
  11502    S PSGOAT= PSGAT
  11503   "RTN","PSG OE91",31,0 )
  11504    S (PSGS0Y ,PSGAT)=X  G DONE
  11505   "RTN","PSG OE91",32,0 )
  11506    ;
  11507   "RTN","PSG OE91",33,0 )
  11508   8 ; specia l instruct ions
  11509   "RTN","PSG OE91",34,0 )
  11510    S MSG=0,P SGF2=8 S:P SGOEEF(PSG F2) BACK=" 8^PSGOE91"
  11511   "RTN","PSG OE91",35,0 )
  11512   A8 I $G(PS GP),$G(PSG ORD) I $$C OMPLEX^PSJ OE(PSGP,PS GORD) D
  11513   "RTN","PSG OE91",36,0 )
  11514    .N X,Y,PA RENT S PAR ENT=$S(PSG ORD["U":$$ GET1^DIQ(5 5.06,+PSGO RD_","_PSG P,125,"I") ,1:$$GET1^ DIQ(53.1,+ PSGORD,125 ,"I"))
  11515   "RTN","PSG OE91",37,0 )
  11516    .I PARENT  D FULL^VA LM1 W !!?5 ,"This ord er is part  of a comp lex order.  Please re view the f ollowing " ,!?5,"asso ciated ord ers before  changing  this order ." D CMPLX ^PSJCOM1(P SGP,PARENT ,PSGORD)
  11517   "RTN","PSG OE91",38,0 )
  11518    I $E(X)=U  D ENFF^PS GOE92 G:Y> 0 @Y G A8
  11519   "RTN","PSG OE91",39,0 )
  11520    S PSGSI=$ $EDITSI^PS JBCMA5($G( PSGP),$G(P SGORD)) I  $G(PSGP),$ G(PSGORD)  I '$$DIFFS I^PSJBCMA5 (PSGP,PSGO RD) S PSGO EE=0 G DON E
  11521   "RTN","PSG OE91",40,0 )
  11522    S PSGSI=$ S((PSGSI>0 &(PSGSI<4) ):$$GET1^D IQ(53.455, "1,"_+PSJS YSP,.01)_"  "_$$GET1^ DIQ(53.455 ,"2,"_+PSJ SYSP,.01), PSGSI>3:"I nstruction s too long . See Orde r View or  BCMA for f ull text." ,1:"")
  11523   "RTN","PSG OE91",41,0 )
  11524    S:PSGSI="  " PSGSI=" " I PSGSI] "" S PSGSI =$$ENBCMA^ PSJUTL("U" ) G DONE
  11525   "RTN","PSG OE91",42,0 )
  11526    Q
  11527   "RTN","PSG OE91",43,0 )
  11528    ;
  11529   "RTN","PSG OE91",44,0 )
  11530   10 ; start  date/time
  11531   "RTN","PSG OE91",45,0 )
  11532    S MSG=0,P SGF2=10 S: PSGOEEF(PS GF2) BACK= "10^PSGOE9 1"
  11533   "RTN","PSG OE91",46,0 )
  11534   A10 ;
  11535   "RTN","PSG OE91",47,0 )
  11536    I $G(PSJO RD),$G(PSG P) I $$COM PLEX^PSJOE (PSGP,PSJO RD) S PSGO EE=0 D  G  DONE
  11537   "RTN","PSG OE91",48,0 )
  11538    .W !!?5," Start Date /Time may  not be edi ted for ac tive compl ex orders. " D PAUSE^ VALM1
  11539   "RTN","PSG OE91",49,0 )
  11540    K PSGSDX
  11541   "RTN","PSG OE91",50,0 )
  11542    W !,"STAR T DATE/TIM E: "_$S($P (PSGSDN,"^ ")]"":$P(P SGSDN,"^") _"// ",1:" ") R X:DTI ME I X="^" !'$T W:'$T  $C(7) S P SGOEE=0 G  DONE
  11543   "RTN","PSG OE91",51,0 )
  11544    I X="",PS GSD W "  " _PSGSDN G  DONE
  11545   "RTN","PSG OE91",52,0 )
  11546    I X="P" D  ENPREV^PS GDL W:'$D( X) $C(7) G :'$D(X) A1 0 S PSGSD= +X,PSGSDN= $$ENDD^PSG MI(PSGSD)_ "^"_$$ENDT C^PSGMI(PS GSD) W "   ",$P(PSGSD N,"^") G D ONE
  11547   "RTN","PSG OE91",53,0 )
  11548    I X="@"!( X?1."?") W :X="@" $C( 7),"  (Req uired)" S: X="@" X="? " D ENHLP^ PSGOEM(55. 06,10)
  11549   "RTN","PSG OE91",54,0 )
  11550    I $E(X)=" ^" D ENFF^ PSGOE92 G: Y>0 @Y G A 10
  11551   "RTN","PSG OE91",55,0 )
  11552    NEW TMPX  S TMPX=X,X 1=PSGDT,X2 =-7 D C^%D TC K %DT S  %DT="ERTX ",%DT(0)=X ,X=TMPX D  ^%DT K %DT  I Y'>0 D  ENHLP^PSGO EM(55.06,1 0) G A10
  11553   "RTN","PSG OE91",56,0 )
  11554    I PSGFD<Y  W $C(7),! ?5,"*** TH E START DA TE CANNOT  BE AFTER T HE STOP DA TE! ***",!  S MSG=1 G  A10
  11555   "RTN","PSG OE91",57,0 )
  11556    N X1,X2,D IFF,PSGEMR G,PSGBACK  S X1=PSGFD ,X2=Y D ^% DTC S DIFF =X
  11557   "RTN","PSG OE91",58,0 )
  11558    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, PSGP,+$G(P SJORD))
  11559   "RTN","PSG OE91",59,0 )
  11560    S PSGEMRG =$S($$GET1 ^DIQ(55,DF N,53)?1U6N :1,1:0),PS GBACK=0
  11561   "RTN","PSG OE91",60,0 )
  11562    I PSGEMRG ,$G(CLOZFL G),DIFF>4  D  G A10    ; Emergen cy Registr ation peri od not to  exceed 4 d ays
  11563   "RTN","PSG OE91",61,0 )
  11564    .W !!?13, "*** EMERG ENCY SUPPL Y NOT TO E XCEED 4 DA YS! ***",!
  11565   "RTN","PSG OE91",62,0 )
  11566    I 'PSGEMR G,$G(CLOZF LG) D  G:P SGBACK A10
  11567   "RTN","PSG OE91",63,0 )
  11568    .N CLOZPA T,X2,PSGCF LG,PSGANC  D CLOZPAT^ PSJCLOZ
  11569   "RTN","PSG OE91",64,0 )
  11570    .S PSGCFL G=1,PSGANC =$$CL^YSCL TST2(DFN)
  11571   "RTN","PSG OE91",65,0 )
  11572    .I '$$OVE RRIDE^YSCL TST2(DFN), '+$P(PSGAN C,"^",4) S  X2=4
  11573   "RTN","PSG OE91",66,0 )
  11574    .E  S X2= $S($G(CLOZ PAT)=2:28, $G(CLOZPAT )=1:14,$G( CLOZPAT)=0 :7,1:90)
  11575   "RTN","PSG OE91",67,0 )
  11576    .I DIFF>X 2 W !!,"** * SUPPLY P ERIOD NOT  TO EXCEED  "_X2_" DAY S! ***",!  S PSGBACK= 1
  11577   "RTN","PSG OE91",68,0 )
  11578    S (PSGSDX ,PSGSD)=+Y ,PSGSDN=$$ ENDD^PSGMI (PSGSD)_"^ "_$$ENDTC^ PSGMI(PSGS D)
  11579   "RTN","PSG OE91",69,0 )
  11580    G DONE
  11581   "RTN","PSG OE91",70,0 )
  11582    ;
  11583   "RTN","PSG OE91",71,0 )
  11584   34 ; stop  date
  11585   "RTN","PSG OE91",72,0 )
  11586    S MSG=0,P SGF2=34 S: PSGOEEF(PS GF2) BACK= "34^PSGOE9 1"
  11587   "RTN","PSG OE91",73,0 )
  11588   A34 ;
  11589   "RTN","PSG OE91",74,0 )
  11590    K PSGFDX  N PSGEMRG
  11591   "RTN","PSG OE91",75,0 )
  11592    I $G(PSJO RD),$G(PSG P) I $$COM PLEX^PSJOE (PSGP,PSJO RD),'$$LAS TCHLD^PSJC LOZ(PSGP,P SJORD) S P SGOEE=0 D   G DONE
  11593   "RTN","PSG OE91",76,0 )
  11594    .W !!?5," Stop Date/ Time may n ot be edit ed for act ive comple x orders."  D PAUSE^V ALM1
  11595   "RTN","PSG OE91",77,0 )
  11596    ;; START  NCC REMEDI ATION RJS* 327
  11597   "RTN","PSG OE91",78,0 )
  11598    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, PSGP,+$G(P SJORD))
  11599   "RTN","PSG OE91",79,0 )
  11600    I $G(CLOZ FLG) N CLO ZPAT,PSGDR G S PSGDRG =$P(CLOZFL G,U,2) D C LOZPAT^PSJ CLOZ
  11601   "RTN","PSG OE91",80,0 )
  11602    I $D(CLOZ PAT) N PSG OLDED,PSGF DNOLD S PS GOLDED=PSG FD,PSGFDNO LD=PSGFDN
  11603   "RTN","PSG OE91",81,0 )
  11604    ;; END NC C REMEDIAT ION RJS*32 7
  11605   "RTN","PSG OE91",82,0 )
  11606    N MSG,PSG TMPST S PS GTMPST=$G( PSGST) S:' +$G(PSGRF)  PSGRF=+$$ GET1^DIQ(5 0.7,$G(PSG PDRG),12," I") ;*315  One time o rders for  MRR's requ ire messag e to instr uct pharma cists
  11607   "RTN","PSG OE91",83,0 )
  11608    I +$G(PSG RF),$$FIND 1^DIC(51.1 ,,"X",$G(P SGSCH)) D
  11609   "RTN","PSG OE91",84,0 )
  11610    .S:PSGTMP ST=($G(PSG ST)="R") P SGST=$$GET 1^DIQ(51.1 ,$$FIND1^D IC(51.1,," X",$G(PSGS CH)),5,"I" ) ;Handle  "Fill on R equest"
  11611   "RTN","PSG OE91",85,0 )
  11612    I $G(PSGT MPST)="O", +$G(PSGRF)  S (PSGFDN ,PSGFD)=""  D 
  11613   "RTN","PSG OE91",86,0 )
  11614    .I +$G(PS GRF)=1 S M SG(1)="Thi s NOW orde r has an O rderable I tem for wh ich a remo val is req uired" D
  11615   "RTN","PSG OE91",87,0 )
  11616    ..S MSG(2 )=" at the  next admi nistration ."
  11617   "RTN","PSG OE91",88,0 )
  11618    ..S MSG(3 )="The Sto p DATE/TIM E entered  should be  the next a nticipated  administr ation for  the medica tion.",MSG (3,"F")="! "
  11619   "RTN","PSG OE91",89,0 )
  11620    .I +$G(PS GRF)=2 S M SG(1)="Thi s NOW orde r has an O rderable I tem for wh ich a remo val period  is option al",MSG(1, "F")="!!"  D
  11621   "RTN","PSG OE91",90,0 )
  11622    ..S MSG(2 )="prior t o the next  administr ation.",MS G(2,"F")=" !"
  11623   "RTN","PSG OE91",91,0 )
  11624    ..S MSG(3 )="If Earl y Removal  is needed,  enter Rem oval Time  in Stop DA TE/TIME fi eld.",MSG( 3,"F")="!"
  11625   "RTN","PSG OE91",92,0 )
  11626    ..S MSG(4 )="If an E arly Remov al is not  required,  the Stop D ATE/TIME e ntered"
  11627   "RTN","PSG OE91",93,0 )
  11628    ..S MSG(5 )="should  be the nex t anticipa ted admini stration f or the med ication.", MSG(5,"F") ="!"
  11629   "RTN","PSG OE91",94,0 )
  11630    .I +$G(PS GRF)=3 S M SG(1)="Thi s NOW orde r has an O rderable I tem that r equires a  removal pe riod prior ",MSG(1,"F ")="!!" D
  11631   "RTN","PSG OE91",95,0 )
  11632    ..S MSG(2 )=" to the  next admi nistration .",MSG(2," F")="!"
  11633   "RTN","PSG OE91",96,0 )
  11634    ..S MSG(3 )="Please  Enter the  Stop DATE/ TIME to re flect the  Removal Ti me for thi s medicati on.",MSG(3 ,"F")="!"
  11635   "RTN","PSG OE91",97,0 )
  11636    .D EN^DDI OL(.MSG)
  11637   "RTN","PSG OE91",98,0 )
  11638    W !,"STOP  DATE/TIME : "_$S($P( PSGFDN,"^" )]"":$P(PS GFDN,"^")_ "// ",1:"" ) R X:DTIM E I X="^"! '$T W:'$T  $C(7) S PS GOEE=0 G D ONE
  11639   "RTN","PSG OE91",99,0 )
  11640    I X="",PS GFD W "    "_$P(PSGFD N,"^") G W 34
  11641   "RTN","PSG OE91",100, 0)
  11642    I $E(X)=" ^" D ENFF^ PSGOE92 G: Y>0 @Y G A 34
  11643   "RTN","PSG OE91",101, 0)
  11644    I X="@"!( X?1."?") W :X="@" $C( 7),"  (Req uired)" S: X="@" X="? " D ENHLP^ PSGOEM(55. 06,34)
  11645   "RTN","PSG OE91",102, 0)
  11646    I X=+X,(X >0),(X'>20 00000) G A 34:'$$ENDL ^PSGDL(PSG SCH,X) K P SGDLS S PS GDL=X W "  ...dose li mit..." D  ENE^PSGDL
  11647   "RTN","PSG OE91",103, 0)
  11648    K %DT S % DT="ERTX", %DT(0)=PSG SD D ^%DT  K %DT I Y' >0 W $C(7) ,!!?13,"** * WARNING!  INVALID S TOP DATE O R PRIOR TO  START DAT E! ***",!  G A34
  11649   "RTN","PSG OE91",104, 0)
  11650    S (PSGFDX ,PSGFD)=+Y ,PSGFDN=$$ ENDD^PSGMI (PSGFD)_"^ "_$$ENDTC^ PSGMI(PSGF D)
  11651   "RTN","PSG OE91",105, 0)
  11652    ;/RJS Beg in changes  for emerg ency regis tration of  clozapine  patient S et end dat e to start  date + 4  days at mi dnight.
  11653   "RTN","PSG OE91",106, 0)
  11654    I $$GET1^ DIQ(55,DFN ,53)?1U6N, $G(CLOZFLG ) D  G:X>4  A34  ;def  418867 RJ S*327
  11655   "RTN","PSG OE91",107, 0)
  11656    .S X1=+Y, X2=PSGSD D  ^%DTC
  11657   "RTN","PSG OE91",108, 0)
  11658    .S PSGEMR G=1 Q:X'>4
  11659   "RTN","PSG OE91",109, 0)
  11660    .I X>4 D
  11661   "RTN","PSG OE91",110, 0)
  11662    ..W !!?13 ,"*** EMER GENCY SUPP LY NOT TO  EXCEED 4 D AYS! ***", !
  11663   "RTN","PSG OE91",111, 0)
  11664    ..S $P(PS GFD,".",2) =2359,X1=P SGSD,X2=4  D C^%DTC S  PSGFD=X
  11665   "RTN","PSG OE91",112, 0)
  11666    ..S $P(PS GFDN,"^",1 )=$$ENDD^P SGMI(PSGFD ),$P(PSGFD N,"^",2)=P SGFD
  11667   "RTN","PSG OE91",113, 0)
  11668    ;/RJS End  changes f or emergen cy registr ation of c lozapine p atient Set  end date  to start d ate + 4 da ys at midn ight.
  11669   "RTN","PSG OE91",114, 0)
  11670   C34 I '$G( PSGEMRG),$ G(CLOZFLG)  N PSGBACK  D  G:$G(P SGBACK) A3 4
  11671   "RTN","PSG OE91",115, 0)
  11672    .N PSGANC ,PSGOVRD,P SGCFLG S P SGCFLG=1
  11673   "RTN","PSG OE91",116, 0)
  11674    .S:$$OVER RIDE^YSCLT ST2(DFN) P SGOVRD=1
  11675   "RTN","PSG OE91",117, 0)
  11676    .S PSGANC =$$CL^YSCL TST2(DFN)
  11677   "RTN","PSG OE91",118, 0)
  11678    .N X,X1,X 2
  11679   "RTN","PSG OE91",119, 0)
  11680    .I '$G(PS GOVRD),'+$ P(PSGANC," ^",4) S X2 =4
  11681   "RTN","PSG OE91",120, 0)
  11682    .E  S X2= $S($G(CLOZ PAT)=2:28, $G(CLOZPAT )=1:14,$G( CLOZPAT)=0 :7,1:90)
  11683   "RTN","PSG OE91",121, 0)
  11684    .S X1=+Y  D
  11685   "RTN","PSG OE91",122, 0)
  11686    ..N X2 S  X2=PSGSD D  ^%DTC S X 1=PSGFD
  11687   "RTN","PSG OE91",123, 0)
  11688    .I X>X2 S  PSGFD=PSG OLDED,PSGF DN=PSGFDNO LD D
  11689   "RTN","PSG OE91",124, 0)
  11690    ..W !!,"* ** STOP DA TE/TIME NO T TO EXCEE D "_X2_" D AYS! ***", ! S PSGBAC K=1
  11691   "RTN","PSG OE91",125, 0)
  11692    K:$G(PSGE MRG) PSGEM RG
  11693   "RTN","PSG OE91",126, 0)
  11694    ;/RJS End  verify th at stop da te does no t exceed m aximum day s supply b ased on la b frequenc y.
  11695   "RTN","PSG OE91",127, 0)
  11696    S (PSGFDX ,PSGFD)=+Y ,PSGFDN=$$ ENDD^PSGMI (PSGFD)_"^ "_$$ENDTC^ PSGMI(PSGF D)
  11697   "RTN","PSG OE91",128, 0)
  11698    ;; END NC C REMEDIAT ION RJS*32 7
  11699   "RTN","PSG OE91",129, 0)
  11700   W34 ;Compa re to Star t Date
  11701   "RTN","PSG OE91",130, 0)
  11702    N Z,MSG
  11703   "RTN","PSG OE91",131, 0)
  11704    D DOSE I  $G(Z)]"",Z >$S($G(PSG FD):PSGFD, 1:$G(PSGNE FD)) D  G  A34
  11705   "RTN","PSG OE91",132, 0)
  11706    .S MSG(1) ="There is  no admini stration t ime that f alls betwe en the Sta rt Date/Ti me"
  11707   "RTN","PSG OE91",133, 0)
  11708    .S MSG(2) ="and the  Stop Date/ Time."
  11709   "RTN","PSG OE91",134, 0)
  11710    .D EN^DDI OL(.MSG)
  11711   "RTN","PSG OE91",135, 0)
  11712    I PSGFD<P SGDT W $C( 7),!!?13," *** WARNIN G! THE STO P DATE ENT ERED IS IN  THE PAST!  ***",! S  MSG=1
  11713   "RTN","PSG OE91",136, 0)
  11714    Q:+$G(PSG RO)
  11715   "RTN","PSG OE91",137, 0)
  11716    ;
  11717   "RTN","PSG OE91",138, 0)
  11718   DONE ;
  11719   "RTN","PSG OE91",139, 0)
  11720    ;Display  Expected F irst Dose; BHW;PSJ*5* 136
  11721   "RTN","PSG OE91",140, 0)
  11722    ;BHW;PSJ* 5*179; - R emove EFD  call.  Add ed to PSGO EE.
  11723   "RTN","PSG OE91",141, 0)
  11724    I PSGOEE  G:'PSGOEEF (PSGF2) @B ACK S PSGO EE=PSGOEEF (PSGF2)
  11725   "RTN","PSG OE91",142, 0)
  11726    D:+$G(PSG DUR) VERTI MES ;*315
  11727   "RTN","PSG OE91",143, 0)
  11728    S:'+$G(PS GRF) PSGRF =+$$GET1^D IQ(50.7,$G (PSGPDRG), 12,"I")
  11729   "RTN","PSG OE91",144, 0)
  11730    K F,F0,F1 ,PSGF2,F3, PSG,SDT,OR IG Q
  11731   "RTN","PSG OE91",145, 0)
  11732    ;
  11733   "RTN","PSG OE91",146, 0)
  11734   FF ; up-ar row to ano ther field
  11735   "RTN","PSG OE91",147, 0)
  11736    D ENFF^PS GOEM I Y>0 ,Y'=41,Y'= 8,Y'=10,Y' =34 S Y=Y_ "^PSGOE9"_ $S("^109^1 3^3^7^26^" [("^"_Y_"^ "):"",1:2)  S:Y=2 FB= PSGF2_"^PS GOE91"
  11737   "RTN","PSG OE91",148, 0)
  11738    Q
  11739   "RTN","PSG OE91",149, 0)
  11740    ;
  11741   "RTN","PSG OE91",150, 0)
  11742   DEL ; dele te entry
  11743   "RTN","PSG OE91",151, 0)
  11744    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  11745   "RTN","PSG OE91",152, 0)
  11746    Q
  11747   "RTN","PSG OE91",153, 0)
  11748    ;
  11749   "RTN","PSG OE91",154, 0)
  11750   TIMES ;At  least one  admin time , not more  than inte rval allow s.
  11751   "RTN","PSG OE91",155, 0)
  11752    I $G(PSGS T)'="O",($ G(PSGST)'= "OC"),($G( PSGST)'="R ") I X=""  D EN^DDIOL ("This ord er require s at least  one admin istration  time.") K  X Q  ;No t imes
  11753   "RTN","PSG OE91",156, 0)
  11754    N H,I,MAX
  11755   "RTN","PSG OE91",157, 0)
  11756    I PSGSCH] "" S H=$$F IND1^DIC(5 1.1,,"X",P SGSCH) I H  S I=$$GET 1^DIQ(51.1 ,H,2,"I")
  11757   "RTN","PSG OE91",158, 0)
  11758    I $G(PSGS T)="O",$L( X,"-")>1 D  EN^DDIOL( "This is a  One Time  Order. Onl y one admi nistration  time is p ermitted." ) K X Q
  11759   "RTN","PSG OE91",159, 0)
  11760    I $G(PSGS T)="O" Q   ;Done vali dating One  Time
  11761   "RTN","PSG OE91",160, 0)
  11762    I +$G(I)= 0 Q  ;No f requency -  can not c heck frequ ency relat ed items
  11763   "RTN","PSG OE91",161, 0)
  11764    S MAX=144 0/I
  11765   "RTN","PSG OE91",162, 0)
  11766    I MAX<1,$ L(X,"-")>1  D EN^DDIO L("This or der requir es one adm inistratio n time.")  K X Q
  11767   "RTN","PSG OE91",163, 0)
  11768    I MAX'<1, $L(X,"-")> MAX D EN^D DIOL("The  number of  admin time s entered  is greater  than indi cated by t he schedul e.") K X Q   ;Too man y times
  11769   "RTN","PSG OE91",164, 0)
  11770    I MAX'<1, $L(X,"-")< MAX D EN^D DIOL("The  number of  admin time s entered  is fewer t han indica ted by the  schedule. ")  ;Too f ew times
  11771   "RTN","PSG OE91",165, 0)
  11772    Q
  11773   "RTN","PSG OE91",166, 0)
  11774    ;
  11775   "RTN","PSG OE91",167, 0)
  11776   DOSE ;Make  certain a t least on e dose is  given.
  11777   "RTN","PSG OE91",168, 0)
  11778    N INFO,X
  11779   "RTN","PSG OE91",169, 0)
  11780    S Z="",IN FO=($S($G( PSGSD):PSG SD,1:$G(PS GNESD)))_U _($S($G(PS GFD):PSGFD ,1:$G(PSGN EFD)))_U_( $G(PSGSCH) )_U_($G(PS GST))_U_($ G(PSGDRG)) _U_($G(PSG S0Y))
  11781   "RTN","PSG OE91",170, 0)
  11782    Q:$G(PSGS T)="OC"!($ G(PSGST)=" P")
  11783   "RTN","PSG OE91",171, 0)
  11784    I '$L($G( PSGP)) N P SGP S PSGP =""
  11785   "RTN","PSG OE91",172, 0)
  11786    S Z=$$ENQ ^PSJORP2(P SGP,INFO)   ;Expected  first dos e.
  11787   "RTN","PSG OE91",173, 0)
  11788    Q
  11789   "RTN","PSG OE91",174, 0)
  11790    ;*315 New  tags
  11791   "RTN","PSG OE91",175, 0)
  11792   PSGDUR ; P rompt for  Removal ti mes if adm in times a re on 24hr  rotations  and Site  Params are  enabled.
  11793   "RTN","PSG OE91",176, 0)
  11794    ; check p arameter f iles for r emoval cri teria quit  if remova l rotation  not enabl ed (<2)
  11795   "RTN","PSG OE91",177, 0)
  11796    ; if enab led determ ine type ( hard vers  soft stop)
  11797   "RTN","PSG OE91",178, 0)
  11798    ;0 = no r emoval
  11799   "RTN","PSG OE91",179, 0)
  11800    ;1 = remo val at nex t admin
  11801   "RTN","PSG OE91",180, 0)
  11802    ;2 = remo val prior  to next ad min; soft  stop
  11803   "RTN","PSG OE91",181, 0)
  11804    ;3 = remo val prior  to next ad min; hard  stop
  11805   "RTN","PSG OE91",182, 0)
  11806    ; prompt  for remova l if = 2 t hen allow  skip, if =  3 then fo rce entry
  11807   "RTN","PSG OE91",183, 0)
  11808    ;
  11809   "RTN","PSG OE91",184, 0)
  11810    S PSGRF=+ $$GET1^DIQ (50.7,$G(P SGPDRG),12 ,"I") Q:(( PSGRF<2)!( $G(PSGST)= "O")!($G(P SGST)="P") !($G(PSGST )="OC"))   ; no remov al flag or  no remova l rotation
  11811   "RTN","PSG OE91",185, 0)
  11812    Q:$G(PSGS 0XT)>1440   ; Duratio n of Admin istration  valid only  for 24 ho urs - subj ect to cha nge in fut ure.
  11813   "RTN","PSG OE91",186, 0)
  11814    N RP,PSGI DF,WMSG,PS GDERR S (P SGIDF,PSGD ERR)=0 S:$ G(PSGDUR)> 0 RP=(PSGD UR/60) S:" BID,TID,QI D"[$G(PSGS CH) PSGIDF =1  ; Use  separate v alidation  for Times  per day ty pe orders
  11815   "RTN","PSG OE91",187, 0)
  11816    S PSGF2=4 1
  11817   "RTN","PSG OE91",188, 0)
  11818    W !,"DURA TION OF AD MINISTRATI ON (HRS):  "_$S($G(RP ):RP_"// " ,1:"") R R P:DTIME I  RP="^"!'$T  W:'$T $C( 7) S PSGDU R=$G(PSGDO A),X="^",P SGOEE=0 Q
  11819   "RTN","PSG OE91",189, 0)
  11820    I RP="" S :$G(PSGDUR )>0 RP=($G (PSGDUR)/6 0)
  11821   "RTN","PSG OE91",190, 0)
  11822    I RP="",$ G(PSGS0XT) ="D",$L(PS GSCH,"@")= 2,$P(PSGSC H,"@",2) S  (PSGAT,PS GRMVT)=$P( PSGSCH,"@" ,2) G 8
  11823   "RTN","PSG OE91",191, 0)
  11824    I RP="@", PSGRF'=3 D  DEL G:%'= 1 PSGDUR S  PSGS0Y="" ,(PSGDUR,P SGRMVT)="@ ",PSGRMV=- 1 Q
  11825   "RTN","PSG OE91",192, 0)
  11826    I (RP'="" ),(RP'="@" ),($E(RP)' ="^"),($E( RP)'="?")  S:(RP'?1N. 2N)!(+(RP) <1) RP="?"
  11827   "RTN","PSG OE91",193, 0)
  11828    I RP?1."? " D DURHLP ^PSGOEM(RP ,PSGRF) G  PSGDUR
  11829   "RTN","PSG OE91",194, 0)
  11830    I $E(RP)= "^" D FF G :Y>0 @Y G  PSGDUR
  11831   "RTN","PSG OE91",195, 0)
  11832    I (+RP>0) ,'PSGIDF D   I PSGRMV <1 G PSGDU R ; exclud e BID,TID  or QID sch edules
  11833   "RTN","PSG OE91",196, 0)
  11834    . S PSGDU R=(RP*60), PSGRMV=$G( PSGS0XT)-P SGDUR
  11835   "RTN","PSG OE91",197, 0)
  11836    . I PSGRM V<1 W !,"D URATION OF  ADMINISTR ATION MATC HES OR EXC EEDS ORDER  FREQUENCY " S RP="", PSGDERR=1  K PSGDUR,P SGRMV ; G  PSGDUR Q
  11837   "RTN","PSG OE91",198, 0)
  11838    .Q
  11839   "RTN","PSG OE91",199, 0)
  11840    Q:$G(PSGD ERR)=1
  11841   "RTN","PSG OE91",200, 0)
  11842    I PSGRF=3 ,(+RP<1) W  $C(7),!," ENTRY IS R EQUIRED" S  RP="" G P SGDUR
  11843   "RTN","PSG OE91",201, 0)
  11844    I PSGRF=2 ,(+RP<1) D
  11845   "RTN","PSG OE91",202, 0)
  11846    .W !,"You  have not  entered Du ration of  Administra tion for t his medica tion order , "
  11847   "RTN","PSG OE91",203, 0)
  11848    .W !,"the refore the  BCMA user  will not  be prompte d to remov e the medi cation pri or "
  11849   "RTN","PSG OE91",204, 0)
  11850    .W !,"to  the next A dmin Time. "
  11851   "RTN","PSG OE91",205, 0)
  11852    .S PSGRMV =-1,RP=0
  11853   "RTN","PSG OE91",206, 0)
  11854    I PSGIDF, (+RP>0) D   ;Only for  TPD sched ules
  11855   "RTN","PSG OE91",207, 0)
  11856    .N F,P,PS GARR
  11857   "RTN","PSG OE91",208, 0)
  11858    .S PSGADT =$S($G(PSG DUR)=-1:X, $G(PSGS0Y) :PSGS0Y,$G (PSGAT):PS GAT,1:""), PSGS0Y=PSG ADT
  11859   "RTN","PSG OE91",209, 0)
  11860    .S PSGARR =$L($G(PSG ADT),"-")
  11861   "RTN","PSG OE91",210, 0)
  11862    .F P=1:1: PSGARR D
  11863   "RTN","PSG OE91",211, 0)
  11864    ..S PSGAR R(P)=($P(P SGADT,"-", P)/100) S: (P>1) F(P) =PSGARR(P) -PSGARR(P- 1)
  11865   "RTN","PSG OE91",212, 0)
  11866    ..I $G(F( P)),($G(F( P))'=RP) S  WMSG=1_U_ "Duration  of Adminis tration do es not cor respond to  one or mo re",WMSG(1 )="of this  order's s cheduled A dministrat ion Times! "
  11867   "RTN","PSG OE91",213, 0)
  11868    S:(+RP>0)  PSGDUR=(R P*60)
  11869   "RTN","PSG OE91",214, 0)
  11870    W:(+RP>0)  ?60,RP,"  HOURS"
  11871   "RTN","PSG OE91",215, 0)
  11872    D:$G(WMSG ) EN^DDIOL ($P(WMSG,U ,2)),EN^DD IOL(WMSG(1 ))
  11873   "RTN","PSG OE91",216, 0)
  11874    Q
  11875   "RTN","PSG OE91",217, 0)
  11876    ;
  11877   "RTN","PSG OE91",218, 0)
  11878   VERTIMES ;  Redisplay  Admin and  Removal t imes *315
  11879   "RTN","PSG OE91",219, 0)
  11880    S PSGRF=+ $$GET1^DIQ (50.7,$G(P SGPDRG),12 ,"I") Q:(P SGRF<2)!($ G(PSGST)=" O")
  11881   "RTN","PSG OE91",220, 0)
  11882    N PSGADT, PSGRARR,PS GAARR
  11883   "RTN","PSG OE91",221, 0)
  11884    ;If we ha ve a frequ ency and t his is odd  type orde r then we  need to st art calcul ations wit h order st art time.
  11885   "RTN","PSG OE91",222, 0)
  11886    I $G(PSGS 0XT),$G(PS GNESD),+$G (PSGDUR),$ G(PSGAT)=" " D  Q
  11887   "RTN","PSG OE91",223, 0)
  11888    .N L
  11889   "RTN","PSG OE91",224, 0)
  11890    .S (PSGAA RR,PSGRARR )=1,PSGADT =$P($P(PSG NESD,U,1), ".",2),L=$ L(PSGADT)
  11891   "RTN","PSG OE91",225, 0)
  11892    .S PSGRAR R(1)=((((( PSGADT*60) +PSGDUR)/6 0)#24)*100 ) S:PSGRAR R(1)=0 PSG RARR(1)=24 00 S:$L(PS GRARR(1))= 3 PSGRARR( 1)="0"_PSG RARR(1)
  11893   "RTN","PSG OE91",226, 0)
  11894    .S PSGRAR R(1)=$E(PS GRARR(1),1 ,L)_"(R)"
  11895   "RTN","PSG OE91",227, 0)
  11896    .S PSGAAR R(1)=PSGAD T,PSGAARR( 1)=$E(PSGA ARR(1),1,L )_"(A)"
  11897   "RTN","PSG OE91",228, 0)
  11898    .D WRITE
  11899   "RTN","PSG OE91",229, 0)
  11900    ;
  11901   "RTN","PSG OE91",230, 0)
  11902    S (PSGRAR R,PSGAARR) =$S($G(PSG AT):$L(PSG AT,"-"),1: $L(PSGS0Y, "-"))
  11903   "RTN","PSG OE91",231, 0)
  11904    N P,L
  11905   "RTN","PSG OE91",232, 0)
  11906    F P=1:1:P SGRARR D
  11907   "RTN","PSG OE91",233, 0)
  11908    .S PSGADT =$S($G(PSG AT):$P(PSG AT,"-",P), 1:$P(PSGS0 Y,"-",P)), L=$L(PSGAD T)
  11909   "RTN","PSG OE91",234, 0)
  11910    .S PSGADT =$S($L(PSG ADT)=4:PSG ADT/100,1: PSGADT*1)
  11911   "RTN","PSG OE91",235, 0)
  11912    .S PSGRAR R(P)=((((( PSGADT*60) +PSGDUR)/6 0)#24)*100 ) S:PSGRAR R(P)=0 PSG RARR(P)=24 00 S:$L(PS GRARR(P))= 3 PSGRARR( P)="0"_PSG RARR(P)
  11913   "RTN","PSG OE91",236, 0)
  11914    .S PSGRAR R(P)=$E(PS GRARR(P),1 ,L)_"(R)"
  11915   "RTN","PSG OE91",237, 0)
  11916    .S PSGAAR R(P)=(PSGA DT*100) S: $L(PSGAARR (P))=3 PSG AARR(P)="0 "_PSGAARR( P)
  11917   "RTN","PSG OE91",238, 0)
  11918    .S PSGAAR R(P)=$E(PS GAARR(P),1 ,L)_"(A)"
  11919   "RTN","PSG OE91",239, 0)
  11920    D WRITE
  11921   "RTN","PSG OE91",240, 0)
  11922    Q
  11923   "RTN","PSG OE91",241, 0)
  11924    ;
  11925   "RTN","PSG OE91",242, 0)
  11926   WRITE ;
  11927   "RTN","PSG OE91",243, 0)
  11928    W !!,"Ver ify Admin  and remova l times",!
  11929   "RTN","PSG OE91",244, 0)
  11930    W !,"(A)D MINISTRATI ON -(R)EMO VAL TIMES"
  11931   "RTN","PSG OE91",245, 0)
  11932    W !,"____ __________ __________ __________ __________ __________ __________ __________ _",!
  11933   "RTN","PSG OE91",246, 0)
  11934    F P=1:1:P SGAARR W P SGAARR(P)_ "-"_PSGRAR R(P)  W:P' =PSGAARR "  , "
  11935   "RTN","PSG OE91",247, 0)
  11936    D ASK
  11937   "RTN","PSG OE91",248, 0)
  11938    Q
  11939   "RTN","PSG OE91",249, 0)
  11940    ;
  11941   "RTN","PSG OE91",250, 0)
  11942   ASK ;
  11943   "RTN","PSG OE91",251, 0)
  11944    N Y
  11945   "RTN","PSG OE91",252, 0)
  11946    S DIR("A" )="Is this  correct", DIR(0)="Y"  D ^DIR I  $D(DUOUT)! $D(DTOUT)  W:'$T $C(7 ) S PSGOEE =0 K PSGDU R G DONE
  11947   "RTN","PSG OE91",253, 0)
  11948    I 'Y K X  S PSGDUR=- 1,PSGFOK(8 )="" G A41
  11949   "RTN","PSG OE91",254, 0)
  11950    N P S P=1 ,PSGRMVT=$ P(PSGRARR( P),"(",1)
  11951   "RTN","PSG OE91",255, 0)
  11952    F  S P=$O (PSGRARR(P )) Q:P=""   D
  11953   "RTN","PSG OE91",256, 0)
  11954    .S PSGRMV T=PSGRMVT_ "-"_$P(PSG RARR(P),"( ",1)
  11955   "RTN","PSG OE91",257, 0)
  11956    Q
  11957   "RTN","PSG OE92")
  11958   0^12^B4738 9177
  11959   "RTN","PSG OE92",1,0)
  11960   PSGOE92 ;B IR/CML3 -  ACTIVE ORD ER EDIT (C ONT.) ;Jul  26, 2017@ 18:04:02
  11961   "RTN","PSG OE92",2,0)
  11962    ;;5.0;INP ATIENT MED ICATIONS ; **2,35,50, 58,81,110, 215,237,27 6,316,317, 327**;16 D EC 97;Buil d 64
  11963   "RTN","PSG OE92",3,0)
  11964    ;
  11965   "RTN","PSG OE92",4,0)
  11966    ;Referenc e to ^DD(5 3.1 is sup ported by  DBIA #2256 .
  11967   "RTN","PSG OE92",5,0)
  11968    ;Referenc e to ^PS(5 5 is suppo rted by DB IA #2191.
  11969   "RTN","PSG OE92",6,0)
  11970    ;Referenc e to ^PSDR UG is supp orted by D BIA #2192.
  11971   "RTN","PSG OE92",7,0)
  11972    ;Referenc e to $$GET ^XPAR is s upported b y DBIA #22 63
  11973   "RTN","PSG OE92",8,0)
  11974    ;
  11975   "RTN","PSG OE92",9,0)
  11976   1 ; provid er
  11977   "RTN","PSG OE92",10,0 )
  11978    S MSG=0,P SGF2=1 S:P SGOEEF(PSG F2) BACK=" 1^PSGOE92"
  11979   "RTN","PSG OE92",11,0 )
  11980   A1 I $G(PS JORD),$G(P SGP) I $$C OMPLEX^PSJ OE(PSGP,PS JORD) S PS GOEE=0 D   G DONE
  11981   "RTN","PSG OE92",12,0 )
  11982    .W !!?5," Provider m ay not be  edited for  active co mplex orde rs." D PAU SE^VALM1
  11983   "RTN","PSG OE92",13,0 )
  11984    W !,"PROV IDER: ",$S (PSGPR:PSG PRN_"// ", 1:"") R X: DTIME I X= "^"!'$T W: '$T $C(7)  S PSGOEE=0  G DONE
  11985   "RTN","PSG OE92",14,0 )
  11986    ;; START  NCC T4 MOD S >> 327*R JS
  11987   "RTN","PSG OE92",15,0 )
  11988    S PSTMPI= PSGPR,PSTM PN=PSGPRN
  11989   "RTN","PSG OE92",16,0 )
  11990    I $S(X="" :'PSGPR,1: X="@") W $ C(7),"  (R equired)"  S X="?" D  ENHLP^PSGO EM(55.06,1 ) G A1
  11991   "RTN","PSG OE92",17,0 )
  11992    I +$G(ANQ X) G A2
  11993   "RTN","PSG OE92",18,0 )
  11994    I X="",PS GPR S X=PS GPRN I PSG PR'=PSGPRN ,$L($$GET1 ^DIQ(200,P SGPR,53.1) ) G DONE
  11995   "RTN","PSG OE92",19,0 )
  11996    I X?1."?"  D ENHLP^P SGOEM(55.0 6,1)
  11997   "RTN","PSG OE92",20,0 )
  11998    I $E(X)=" ^" D ENFF  G:Y>0 @Y G  A1
  11999   "RTN","PSG OE92",21,0 )
  12000    K DIC S D IC="^VA(20 0,",DIC(0) ="EMQZ",DI C("S")="I  $D(^(""PS" ")),^(""PS ""),$S('$P (^(""PS"") ,""^"",4): 1,1:$P(^(" "PS""),""^ "",4)>DT)"  D ^DIC K  DIC I Y'>0  G A1
  12001   "RTN","PSG OE92",22,0 )
  12002   A2 D CLOZP RV^PSGOE82
  12003   "RTN","PSG OE92",23,0 )
  12004    I $G(ANQX ) W ! S PS GPR=PSTMPI ,PSGPRN=PS TMPN  K PS TMPN,PSTMP I,ANQX G A 1
  12005   "RTN","PSG OE92",24,0 )
  12006    ;; END NC C T4 MODS  << 327*RJS
  12007   "RTN","PSG OE92",25,0 )
  12008    S PSGPR=+ Y,PSGPRN=Y (0,0) G DO NE
  12009   "RTN","PSG OE92",26,0 )
  12010    ;
  12011   "RTN","PSG OE92",27,0 )
  12012   5 ; self m ed
  12013   "RTN","PSG OE92",28,0 )
  12014    I $G(PSJO RD),$G(PSG P) I $$COM PLEX^PSJOE (PSGP,PSJO RD) S PSGO EE=0 D  G  DONE
  12015   "RTN","PSG OE92",29,0 )
  12016    .W !!?5," Self Med m ay not be  edited for  active co mplex orde rs." D PAU SE^VALM1
  12017   "RTN","PSG OE92",30,0 )
  12018    S MSG=0,P SGF2=5 S:P SGOEEF(PSG F2) BACK=" 5^PSGOE92"  K PSGOEEF (6) S:PSGS M PSGOEEF( 6)=""
  12019   "RTN","PSG OE92",31,0 )
  12020   A5 W !,"SE LF MED: "  W:PSGSM]""  $P("NO^YE S","^",PSG SM+1),"//  " R X:DTIM E I X="^"! '$T W:'$T  $C(7) S PS GOEE=0 G D ONE
  12021   "RTN","PSG OE92",32,0 )
  12022    I "01"[X, $L(X)<2 S: X]"" PSGSM =+X W:PSGS M]"" "  (" ,$P("NO^YE S","^",PSG SM+1),")"  G:'PSGSM D ONE S PSGO EEF(6)=""  G 6
  12023   "RTN","PSG OE92",33,0 )
  12024    I X="@" W  $C(7),"   (Required) " G A5
  12025   "RTN","PSG OE92",34,0 )
  12026    I X?1"^". E D ENFF G :Y>0 @Y G  A5
  12027   "RTN","PSG OE92",35,0 )
  12028    I X?1."?"  D ENHLP^P SGOEM(55.0 6,5) G A5
  12029   "RTN","PSG OE92",36,0 )
  12030    D YN I  S  PSGSM=$E( X)="Y" K P SGOEEF(6)  G:'PSGSM D ONE S PSGO EEF(6)=""  G 6
  12031   "RTN","PSG OE92",37,0 )
  12032    W $C(7) D  ENHLP^PSG OEM(55.06, 5) G A5
  12033   "RTN","PSG OE92",38,0 )
  12034    ;
  12035   "RTN","PSG OE92",39,0 )
  12036   6 ; hospit al supplie d self med
  12037   "RTN","PSG OE92",40,0 )
  12038    S MSG=0,P SGF2=6 S:P SGOEEF(PSG F2) BACK=" 6^PSGOE92"
  12039   "RTN","PSG OE92",41,0 )
  12040   A6 I $G(PS JORD),$G(P SGP) I $$C OMPLEX^PSJ OE(PSGP,PS JORD) S PS GOEE=0 D   G DONE
  12041   "RTN","PSG OE92",42,0 )
  12042    .W !!?5," Hospital S upplied Se lf Med may  not be ed ited for a ctive comp lex orders ." D PAUSE ^VALM1
  12043   "RTN","PSG OE92",43,0 )
  12044    W !,"HOSP ITAL SUPPL IED SELF M ED: " W:PS GHSM]"" $P ("NO^YES", "^",PSGHSM +1),"// "  R X:DTIME  I X="^"!'$ T W:'$T $C (7) S PSGO EE=0 G DON E
  12045   "RTN","PSG OE92",44,0 )
  12046    I "01"[X, $L(X)=1 S: X]"" PSGHS M=+X W "   (",$P("NO^ YES","^",P SGHSM+1)," )" S MSG=0 ,PSGF2=5 G  DONE
  12047   "RTN","PSG OE92",45,0 )
  12048    I X="@" W  $C(7),"   (Required) " G A6
  12049   "RTN","PSG OE92",46,0 )
  12050    I X?1"^". E D ENFF G :Y>0 @Y G  A6
  12051   "RTN","PSG OE92",47,0 )
  12052    I X?1."?"  D ENHLP^P SGOEM(55.0 6,6) G A6
  12053   "RTN","PSG OE92",48,0 )
  12054    D YN I  S  PSGHSM=$E (X)="Y" S  MSG=0,PSGF 2=5 G DONE
  12055   "RTN","PSG OE92",49,0 )
  12056    W $C(7) D  ENHLP^PSG OEM(55.06, 6) G A6
  12057   "RTN","PSG OE92",50,0 )
  12058    ;
  12059   "RTN","PSG OE92",51,0 )
  12060   2 ; dispen se drug mu ltiple
  12061   "RTN","PSG OE92",52,0 )
  12062    ;*276 - D isallow un authorized  nurses fr om editing  Dispense  Drug
  12063   "RTN","PSG OE92",53,0 )
  12064    I '$P($G( PSJSYSU)," ;",4) W !, "You are n ot authori zed to edi t Dispense  Drugs." D  PAUSE^VAL M1 Q
  12065   "RTN","PSG OE92",54,0 )
  12066    I $G(PSGP ),$G(PSGOR D) I $$COM PLEX^PSJOE (PSGP,PSGO RD) D
  12067   "RTN","PSG OE92",55,0 )
  12068    .N X,Y,PA RENT S PAR ENT=$S(PSG ORD["U":$$ GET1^DIQ(5 5.06,+PSGO RD_","_PSG P,125,"I") ,1:$$GET1^ DIQ(53.1,+ PSGORD,125 ,"I"))
  12069   "RTN","PSG OE92",56,0 )
  12070    .I PARENT  D FULL^VA LM1 W !!?5 ,"This ord er is part  of a comp lex order.  Please re view the f ollowing " ,!?5,"asso ciated ord ers before  changing  this order ." D CMPLX ^PSJCOM1(P SGP,PARENT ,PSGORD)
  12071   "RTN","PSG OE92",57,0 )
  12072    S MSG=0,P SGF2=2,BAC K="2^PSGOE 92",PSGOEE ND=1
  12073   "RTN","PSG OE92",58,0 )
  12074    N PSGX,AR RAY D LIST ^DIC(53.45 02,","_PSJ SYSP_",",, "I",,,,,,, "ARRAY") S  PSGX=+ARR AY("DILIST ",0)
  12075   "RTN","PSG OE92",59,0 )
  12076    ; PSJ*5*3 17 - If PS J PADE OE  BALANCES p arameter i s YES, PAD E balances  should di splay as i dentifier.
  12077   "RTN","PSG OE92",60,0 )
  12078    N PSJPADL K S PSJPAD LK=0  ; Fl ag indicat ing PADE d rug lookup  was done,  don't do  drug looku p twice -  PSJ*5*317
  12079   "RTN","PSG OE92",61,0 )
  12080    I $$GET^X PAR("SYS", "PSJ PADE  OE BALANCE S") D
  12081   "RTN","PSG OE92",62,0 )
  12082    .N DA,DIC ,DIE,DR,DI R,PSJLOC,P SJDRG,PSJD DC,PSJORD, DFN,PSJORC L,PSJCLNK, PSJCLND S  PSJCLND=""
  12083   "RTN","PSG OE92",63,0 )
  12084    .; If cli nic order,  quit if c linic loca tion is no t linked t o PADE
  12085   "RTN","PSG OE92",64,0 )
  12086    .I $G(PSG ORD)["P" S  PSJCLND=$ $GET1^DIQ( 53.1,+$G(P SGORD),113 ,"I")_"^"_ $$GET1^DIQ (53.1,+$G( PSGORD),12 6,"I") I 1
  12087   "RTN","PSG OE92",65,0 )
  12088    .E  I $G( PSGORD)["U " S PSJCLN D=$$GET1^D IQ(55.06,+ $G(PSGORD) _","_+$G(P SGP),130," I")_"^"_$$ GET1^DIQ(5 5.06,+$G(P SGORD)_"," _+$G(PSGP) ,131,"I")  I 1
  12089   "RTN","PSG OE92",66,0 )
  12090    .E  I $G( PSGORD)["V " S PSJCLN D=$$GET1^D IQ(55.01,+ $G(PSGORD) _","_+$G(P SGP),136," I")_"^"_$$ GET1^DIQ(5 5.01,+$G(P SGORD)_"," _+$G(PSGP) ,139,"I")
  12091   "RTN","PSG OE92",67,0 )
  12092    .S PSJORC L=$S(PSJCL ND&$P(PSJC LND,"^",2) :+PSJCLND_ "C",1:"")
  12093   "RTN","PSG OE92",68,0 )
  12094    .I PSJORC L S PSJCLN K=$$PADECL ^PSJPAD50( +$G(PSJORC L)) Q:'PSJ CLNK
  12095   "RTN","PSG OE92",69,0 )
  12096    .I '$G(PS JCLNK) Q:' $$PADEWD^P SJPAD50(+$ G(VAIN(4)) )
  12097   "RTN","PSG OE92",70,0 )
  12098    .S DFN=$G (PSGP),PSJ ORD=$G(PSG ORD)
  12099   "RTN","PSG OE92",71,0 )
  12100    .N ARRAY  D LIST^DIC (53.4502," ,"_PSJSYSP _",",,"I", ,,,,,,"ARR AY")
  12101   "RTN","PSG OE92",72,0 )
  12102    .F I=1:1  Q:'$D(ARRA Y("DILIST" ,2,I))  S  PSJDDC=ARR AY("DILIST ",2,I),PSJ DRG(PSJDDC )=$$GET1^D IQ(53.4502 ,PSJDDC_", "_PSJSYSP, .01,"I")
  12103   "RTN","PSG OE92",73,0 )
  12104    .S PSJLOC =$S($G(PSJ ORD)["U":+ $$GET1^DIQ (55.06,+PS JORD_","_D FN,130,"I" )_"C",$G(P SJORD)["P" :+$$GET1^D IQ(53.1,+$ G(PSGORD), 113,"I")_" C",1:"")
  12105   "RTN","PSG OE92",74,0 )
  12106    .S:'PSJLO C PSJLOC=+ $G(VAIN(4) ) I '$G(PS JLOC) D
  12107   "RTN","PSG OE92",75,0 )
  12108    ..N VAIN  D INP^VADP T S PSJLOC =$G(VAIN(4 ))
  12109   "RTN","PSG OE92",76,0 )
  12110    .S PSJPAD LK=1
  12111   "RTN","PSG OE92",77,0 )
  12112    .D READDD ^PSJPAD50( .PSJDRG,$G (PSGPDRG), PSJLOC,PSJ ORD,$G(PSG ORD))
  12113   "RTN","PSG OE92",78,0 )
  12114    ; PSJ*5*3 17 - If PS J PADE OE  BALANCES p arameter i s NO, PADE  balances  should NOT  display a s identife r.
  12115   "RTN","PSG OE92",79,0 )
  12116    I '$G(PSJ PADLK) N D A,DIE,DR S  DIE="^PS( 53.45,",DA =PSJSYSP,D R=2,DR(2,5 3.4502)=". 02//1;.03"  D ^DIE
  12117   "RTN","PSG OE92",80,0 )
  12118    I '$G(ARR AY("DILIST ",0)) W $C (7),!!,"WA RNING: Thi s order mu st have at  least one  dispense  drug befor e pharmacy  can",!?9, "verify it !",! S MSG =1
  12119   "RTN","PSG OE92",81,0 )
  12120    D DDOC^PS GOE82(PSGX ) ;* Perfo rm allergy /adv. reac tion order  checks
  12121   "RTN","PSG OE92",82,0 )
  12122    N PSJDOSE
  12123   "RTN","PSG OE92",83,0 )
  12124    D DOSECHK ^PSJDOSE
  12125   "RTN","PSG OE92",84,0 )
  12126    I +$G(PSJ DSFLG) D D SPWARN^PSJ DOSE S:$G( PSGOEEF(10 9))="" PSG OEEF(109)= 1 ; PSJ*5* 237 - Chec k PSGOEEF( 109) to pr event infi nite loop
  12127   "RTN","PSG OE92",85,0 )
  12128    ; PSJ*5*2 15 - If Di spense Dru g(s) chang ed, make e ntry in Ac tivity Log .
  12129   "RTN","PSG OE92",86,0 )
  12130    ; Compare  the edite d dispense  drug info rmation in  ^PS(53.45  to the ac tive
  12131   "RTN","PSG OE92",87,0 )
  12132    ; order d ispense dr ug informa tion in ^P S(55.
  12133   "RTN","PSG OE92",88,0 )
  12134    S (PSJDDT MP,PSJDD55 ,PSJDTMP1, PSJDD551)= ""
  12135   "RTN","PSG OE92",89,0 )
  12136    N ARRAY D  LIST^DIC( 53.4502,", "_PSJSYSP_ ",",.02,"I ",,,,,,,"A RRAY")
  12137   "RTN","PSG OE92",90,0 )
  12138    F I=1:1 Q :'$D(ARRAY ("DILIST", 2,I))  S P SJDDTMP=AR RAY("DILIS T",2,I) D
  12139   "RTN","PSG OE92",91,0 )
  12140    .S PSJDDT MP(PSJDDTM P)=ARRAY(" DILIST",1, I)_"^"_ARR AY("DILIST ","ID",I,. 02)
  12141   "RTN","PSG OE92",92,0 )
  12142    .S PSJDTM P1="Disp D rug: "_"(" _$P($G(PSJ DDTMP(PSJD DTMP)),"^" ,1)_") "_$ $GET1^DIQ( 50,$P($G(P SJDDTMP(PS JDDTMP))," ^",1),.01) _" Units:  "_$P($G(PS JDDTMP(PSJ DDTMP)),"^ ",2)_" "
  12143   "RTN","PSG OE92",93,0 )
  12144    N ARR1 D  LIST^DIC(5 5.07,","_+ ON_","_DFN _",",.02," I",,,,,,," ARR1")
  12145   "RTN","PSG OE92",94,0 )
  12146    F I=1:1 Q :'$D(ARR1( "DILIST",2 ,I))  S PS JDD55=ARR1 ("DILIST", 2,I) D
  12147   "RTN","PSG OE92",95,0 )
  12148    .S PSJDD5 5(PSJDD55) =ARR1("DIL IST",1,I)_ "^"_ARR1(" DILIST","I D",I,.02)
  12149   "RTN","PSG OE92",96,0 )
  12150    .S PSJDD5 51="Disp D rug: "_"(" _$P($G(PSJ DD55(PSJDD 55)),"^",1 )_") "_$$G ET1^DIQ(50 ,$P($G(PSJ DD55(PSJDD 55)),"^",1 ),.01)_" U nits: "_$P ($G(PSJDD5 5(PSJDD55) ),"^",2)_"  "
  12151   "RTN","PSG OE92",97,0 )
  12152    ; If the  two tempor ary string s PSJDTMP1  and PSJDD 551 do not  match eac h other ex actly
  12153   "RTN","PSG OE92",98,0 )
  12154    ; then an  edit has  been made  to the Dis pense Drug  Field.  M ake a new  entry in
  12155   "RTN","PSG OE92",99,0 )
  12156    ; the Act ivity Log  for this o rder.
  12157   "RTN","PSG OE92",100, 0)
  12158    I PSJDTMP 1'=PSJDD55 1 D NEWUDA L^PSGAL5(D FN,+ON,600 0,"Dispens e Drug",PS JDD551)
  12159   "RTN","PSG OE92",101, 0)
  12160    K PSGOEEN D,PSJDDTMP ,PSJDTMP1, PSJDD55,PS JDD551 G D ONE
  12161   "RTN","PSG OE92",102, 0)
  12162    ;
  12163   "RTN","PSG OE92",103, 0)
  12164   15 ; comme nts
  12165   "RTN","PSG OE92",104, 0)
  12166    I $G(PSJO RD),$G(PSG P) I $$COM PLEX^PSJOE (PSGP,PSJO RD) S PSGO EE=0 D  G  DONE
  12167   "RTN","PSG OE92",105, 0)
  12168    . W !!?5, "Comments  may not be  edited fo r active c omplex ord ers." D PA USE^VALM1
  12169   "RTN","PSG OE92",106, 0)
  12170    S MSG=0,P SGF2=15,BA CK="15^PSG OE92",DA=P SJSYSP,DR= 1,DIE="^PS (53.45," D  ^DIE W !  G DONE
  12171   "RTN","PSG OE92",107, 0)
  12172    ;
  12173   "RTN","PSG OE92",108, 0)
  12174   72 ; provi der commen ts
  12175   "RTN","PSG OE92",109, 0)
  12176    ;
  12177   "RTN","PSG OE92",110, 0)
  12178   DONE ;
  12179   "RTN","PSG OE92",111, 0)
  12180    I PSGOEE  G:'PSGOEEF (PSGF2) @B ACK S PSGO EE=PSGOEEF (PSGF2)
  12181   "RTN","PSG OE92",112, 0)
  12182    K F,F0,PS GF2,F3,PSG ,SDT Q
  12183   "RTN","PSG OE92",113, 0)
  12184    ;
  12185   "RTN","PSG OE92",114, 0)
  12186   ENFF ; up- arrow to a nother fie ld
  12187   "RTN","PSG OE92",115, 0)
  12188    S Y=-1 I  '$D(PSGOEE F) W $C(7) ,"  ??" Q
  12189   "RTN","PSG OE92",116, 0)
  12190    S X=$E(X, 2,99) I X= +X S Y=$S( $D(PSGOEEF (X)):X,1:- 1) W "  "  W:Y>0 $$CO DES2^PSIVU TL(53.1,X)  W:Y'>0 $C (7),"??" Q
  12191   "RTN","PSG OE92",117, 0)
  12192    K DIC S D IC="^DD(53 .1,",DIC(0 )="QEM",DI C("S")="I  $D(PSGOEEF (+Y))" D ^ DIC K DIC  S Y=+Y S:Y >0 Y=$P($T (@("F"_Y)) ,";",3) Q
  12193   "RTN","PSG OE92",118, 0)
  12194    ;
  12195   "RTN","PSG OE92",119, 0)
  12196   DEL ; dele te entry
  12197   "RTN","PSG OE92",120, 0)
  12198    W !?3,"SU RE YOU WAN T TO DELET E" S %=0 D  YN^DICN I  %'=1 W $C (7),"  <NO THING DELE TED>"
  12199   "RTN","PSG OE92",121, 0)
  12200    Q
  12201   "RTN","PSG OE92",122, 0)
  12202    ;
  12203   "RTN","PSG OE92",123, 0)
  12204   YN ; yes/n o as a set  of codes
  12205   "RTN","PSG OE92",124, 0)
  12206    I X'?.U F  Y=1:1:$L( X) I $E(X, Y)?1L S X= $E(X,1,Y-1 )_$C($A(X, Y)-32)_$E( X,Y+1,$L(X ))
  12207   "RTN","PSG OE92",125, 0)
  12208    F Y="NO", "YES" I $P (Y,X)="" W  $P(Y,X,2)  Q
  12209   "RTN","PSG OE92",126, 0)
  12210    Q
  12211   "RTN","PSG OE92",127, 0)
  12212    ;
  12213   "RTN","PSG OE92",128, 0)
  12214   F101 ;;101 ^PSGOE9
  12215   "RTN","PSG OE92",129, 0)
  12216   F109 ;;109 ^PSGOE9
  12217   "RTN","PSG OE92",130, 0)
  12218   F3 ;;3^PSG OE9
  12219   "RTN","PSG OE92",131, 0)
  12220   F7 ;;7^PSG OE9
  12221   "RTN","PSG OE92",132, 0)
  12222   PSGF26 ;;2 6^PSGOE9
  12223   "RTN","PSG OE92",133, 0)
  12224   F41 ;;41^P SGOE91
  12225   "RTN","PSG OE92",134, 0)
  12226   F8 ;;8^PSG OE91
  12227   "RTN","PSG OE92",135, 0)
  12228   F10 ;;10^P SGOE91
  12229   "RTN","PSG OE92",136, 0)
  12230   F34 ;;34^P SGOE91
  12231   "RTN","PSG OE92",137, 0)
  12232   F1 ;;1^PSG OE92
  12233   "RTN","PSG OE92",138, 0)
  12234   F5 ;;5^PSG OE92
  12235   "RTN","PSG OE92",139, 0)
  12236   PSGF2 ;;2^ PSGOE92
  12237   "RTN","PSG OEE")
  12238   0^27^B1254 06322
  12239   "RTN","PSG OEE",1,0)
  12240   PSGOEE ;BI R/CML3 - E DIT ACTIVE  OR NON-VE RIFIED ORD ERS ;Jul 2 6, 2017@18 :04:02
  12241   "RTN","PSG OEE",2,0)
  12242    ;;5.0;INP ATIENT MED ICATIONS;* *4,7,29,47 ,64,58,82, 91,110,111 ,112,142,1 79,181,254 ,267,268,2 81,315,338 ,327**;16  DEC 97;Bui ld 64
  12243   "RTN","PSG OEE",3,0)
  12244    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  12245   "RTN","PSG OEE",4,0)
  12246    ;
  12247   "RTN","PSG OEE",5,0)
  12248    ; Referen ce to ^PS( 55 is supp orted by D BIA# 2191.
  12249   "RTN","PSG OEE",6,0)
  12250    ; Referen ce to ^PSS LOCK is su pported by  DBIA# 278 9.
  12251   "RTN","PSG OEE",7,0)
  12252    ; Referen ce to ^TMP ("PSODAOC" ,$J is sup ported by  DBIA# 6071 .
  12253   "RTN","PSG OEE",8,0)
  12254    ;
  12255   "RTN","PSG OEE",9,0)
  12256    D NOW^%DT C S PSGDT= % K PSGEFN ,PSGOEEF S  PSGOEEF=0  I PSGORD[ "A"!(PSGOR D["O") G A CT
  12257   "RTN","PSG OEE",10,0)
  12258   531 ; edit  orders in  53.1
  12259   "RTN","PSG OEE",11,0)
  12260   ENF ; Entr y point
  12261   "RTN","PSG OEE",12,0)
  12262    D EN2^PSG OEEW
  12263   "RTN","PSG OEE",13,0)
  12264    K PSJACEP T D EDLOOP  G:'$G(PSJ ACEPT) OUT
  12265   "RTN","PSG OEE",14,0)
  12266    I $G(PSGO EENO) D
  12267   "RTN","PSG OEE",15,0)
  12268    . N PSGOE ENO S PSGO EENO=1 D N EW
  12269   "RTN","PSG OEE",16,0)
  12270    E  D
  12271   "RTN","PSG OEE",17,0)
  12272    . N PSGOE ENO S PSGO EENO=0 D U PD
  12273   "RTN","PSG OEE",18,0)
  12274    I $G(PSGO EAV) D ACT 1 Q
  12275   "RTN","PSG OEE",19,0)
  12276    D DONE1
  12277   "RTN","PSG OEE",20,0)
  12278    S PSGOEEF =0,PSJORD= PSGORD D G ETUD^PSJLM GUD(PSGP,P SGORD),ENS FE^PSGOEE0 (PSGP,PSGO RD)
  12279   "RTN","PSG OEE",21,0)
  12280    Q
  12281   "RTN","PSG OEE",22,0)
  12282   ACT ; Perf orm Edit
  12283   "RTN","PSG OEE",23,0)
  12284    NEW ANQX, PSJALGY1
  12285   "RTN","PSG OEE",24,0)
  12286    K PSGOEER
  12287   "RTN","PSG OEE",25,0)
  12288    S ANQX=0
  12289   "RTN","PSG OEE",26,0)
  12290    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, PSGP,+PSGO RD)
  12291   "RTN","PSG OEE",27,0)
  12292    I $G(CLOZ FLG),PSJOP  D
  12293   "RTN","PSG OEE",28,0)
  12294    .D PROVCH K^PSJCLOZ( PSGOPR)
  12295   "RTN","PSG OEE",29,0)
  12296    I +$G(ANQ X) D PAUSE ^VALM1 Q
  12297   "RTN","PSG OEE",30,0)
  12298    D EN2^PSG OEEW,EDLOO P G:'$G(PS JACEPT) OU T
  12299   "RTN","PSG OEE",31,0)
  12300    I $G(PSGO EENO) D
  12301   "RTN","PSG OEE",32,0)
  12302    . N PSGOE ENO S PSGO EENO=1 D N EW
  12303   "RTN","PSG OEE",33,0)
  12304    E  D
  12305   "RTN","PSG OEE",34,0)
  12306    . N PSGOE ENO S PSGO EENO=0 D U PD
  12307   "RTN","PSG OEE",35,0)
  12308    S:$D(PSGO EF)!$G(PSG OEENO) PSG CANFL=-1
  12309   "RTN","PSG OEE",36,0)
  12310   ACT1 ; Con tinue edit ing
  12311   "RTN","PSG OEE",37,0)
  12312    D DONE1
  12313   "RTN","PSG OEE",38,0)
  12314    S PSGOEEF =0 D GETUD ^PSJLMGUD( PSGP,PSGOR D),ENSFE^P SGOEE0(PSG P,PSGORD)  D:PSGOEAV  UNL^PSSLOC K(PSGP,PSG ORD)
  12315   "RTN","PSG OEE",39,0)
  12316    Q
  12317   "RTN","PSG OEE",40,0)
  12318   EDIT ; Edi t
  12319   "RTN","PSG OEE",41,0)
  12320    I $G(Y) D  ASKOVR(Y, $G(PSGORD) ,.PSJSTARI )
  12321   "RTN","PSG OEE",42,0)
  12322    D FULL^VA LM1
  12323   "RTN","PSG OEE",43,0)
  12324    W ! S PSG OEER="" F  Q=1:1 S Q1 =$P(Y,",", Q) Q:'Q1   S X=$P($T( @(PSGOEEG_ Q1)),";",3 ),PSGOEER= PSGOEER_X_ ";",PSGOEE F(+X)=Q S: Q1=1 PSJAL GY1=1
  12325   "RTN","PSG OEE",44,0)
  12326    S LIMIT=$ L(PSGOEER, ";")-1,(PS GDEF,PSGOE E)=0 F  S  PSGOEE=PSG OEE+1 Q:PS GOEE>LIMIT   I +$P(PS GOEER,";", PSGOEE)=10 1 S PSGDEF =1
  12327   "RTN","PSG OEE",45,0)
  12328    S PSGOEER =$E(PSGOEE R,1,$L(PSG OEER)-1),( MSG,PSGOEE )=0 F  S P SGOEE=PSGO EE+1 Q:PSG OEE>$L(PSG OEER,";")   S F1=$S(P SGOEEG=3:5 3.1,1:55.0 6) I 'PSGD EF!((PSGDE F)&(+$P(PS GOEER,";", PSGOEE)'=2 )) D @$P(P SGOEER,";" ,PSGOEE) Q :'PSGOEE
  12329   "RTN","PSG OEE",46,0)
  12330    Q
  12331   "RTN","PSG OEE",47,0)
  12332   EDLOOP ; C ontinue pr ompting fo r fields t o edit.
  12333   "RTN","PSG OEE",48,0)
  12334    K PSJNOO
  12335   "RTN","PSG OEE",49,0)
  12336    D:$G(Y) E DIT I $G(P SGOROE1)=1 !($G(PSGOE E)=0) S VA LMBCK="R", (PSGOROE1, PSJACEPT)= 0 Q
  12337   "RTN","PSG OEE",50,0)
  12338    D ENNOU^P SGOEE0 I ' $G(PSGOEEN O),DR="" S  VALMBCK=" R" Q
  12339   "RTN","PSG OEE",51,0)
  12340    K VALMSG
  12341   "RTN","PSG OEE",52,0)
  12342    I '$G(PSG OEENO),$G( PSGPDNX) D  CKDT
  12343   "RTN","PSG OEE",53,0)
  12344    I $G(PSGO EENO) D
  12345   "RTN","PSG OEE",54,0)
  12346    .S VALMSG ="This cha nge will c ause a new  order to  be created ." D GTSTA TUS,CHKDD, CKDT
  12347   "RTN","PSG OEE",55,0)
  12348    .S PSGEBN =$$ENNPN^P SGMI(DUZ), PSGLIN=$$E NDD^PSGMI( PSGDT)_U_$ $ENDTC^PSG MI(PSGDT)
  12349   "RTN","PSG OEE",56,0)
  12350    D CHK^PSG OEV("^^"_P SGMR_"^^^^ "_PSGST,PS GPDRG_U_PS GDO,PSGSCH _U_PSGSD_" ^^"_PSGFD)
  12351   "RTN","PSG OEE",57,0)
  12352    K VALMBCK ,PSJACEPT, PSGPDNX D  EN^VALM("P SJU LM ACC EPT") Q:'$ G(PSJACEPT )
  12353   "RTN","PSG OEE",58,0)
  12354    I $G(PSGS 0XT)="D",' $G(PSGS0Y)  I ((",P,R ,")'[(","_ $G(PSGST)_ ",")) D  Q
  12355   "RTN","PSG OEE",59,0)
  12356    .S PSJACE PT=0 W !!, "This is a  'DAY OF T HE WEEK' s chedule an d MUST hav e admin ti mes." D PA USE^VALM1
  12357   "RTN","PSG OEE",60,0)
  12358    I ($G(PSG OEER)["26^ PSGOE9")!( $G(PSGOEER )["26^PSGO E8")!($G(P SGOEER)["1 09^PSGOE9" )!($G(PSGO EER)["109^ PSGOE8")!( $G(PSGOEER )["3^PSGOE 9")!($G(PS GOEER)["3^ PSGOE8")!( $G(PSGOEER )["101^PSG OE9")!($G( PSGOEER)[" 101^PSGOE8 ") S PSGOE ENO=1
  12359   "RTN","PSG OEE",61,0)
  12360    I $G(PSGO EENO)!($G( PSGOEER)[" 2^PSGOE92" )!($G(PSGO EER)["2^PS GOE82") D  OC S:($G(P SGOEER)["2 ^PSGOE82")  PSJDSVFY= 1
  12361   "RTN","PSG OEE",62,0)
  12362    I $G(PSGO RQF) S PSJ NOO=-1
  12363   "RTN","PSG OEE",63,0)
  12364    I '$G(PSJ NOO),$G(PS GOEENO) S  PSJNOO=$$E NNOO^PSJUT L5("E")
  12365   "RTN","PSG OEE",64,0)
  12366    D K1 S PS JACEPT=$S( $G(PSJNOO) <0:0,1:1)
  12367   "RTN","PSG OEE",65,0)
  12368    S VALMBCK =$S('PSJAC EPT:"R",'P SGOEAV:"R" ,1:"Q")
  12369   "RTN","PSG OEE",66,0)
  12370    Q
  12371   "RTN","PSG OEE",67,0)
  12372   OC ;Perfor m OC (only  when OI o r Dosage w as edited)  & dosing  check
  12373   "RTN","PSG OEE",68,0)
  12374    NEW PSJDD ,PSJALLGY
  12375   "RTN","PSG OEE",69,0)
  12376    K PSGORQF
  12377   "RTN","PSG OEE",70,0)
  12378    D FULL^VA LM1
  12379   "RTN","PSG OEE",71,0)
  12380    N CLOZFLG ,ANQX S CL OZFLG=$$IS CLOZ^PSJCL OZ(,,PSGP, +PSGORD)
  12381   "RTN","PSG OEE",72,0)
  12382    I $G(CLOZ FLG) D  I  $G(PSGORQF ) Q
  12383   "RTN","PSG OEE",73,0)
  12384    .S (ANQX, PSGORQF)=0 ,PSGDRG=$P (CLOZFLG,U ,2) D TDD^ PSJCLOZ I  $G(PSGORQF ) Q
  12385   "RTN","PSG OEE",74,0)
  12386    .I +$G(PS GETDD) S A NQX=0 D CL OZ^PSJCLOZ (PSGP,PSGD RG) I $G(A NQX) S PSG ORQF=1 Q
  12387   "RTN","PSG OEE",75,0)
  12388    S PSJDD=+ $$DD53P45^ PSJMISC()  I 'PSJDD S  PSGORQF=1  Q
  12389   "RTN","PSG OEE",76,0)
  12390    I $G(PSJA LGY1)!$G(P SGOEENO) D
  12391   "RTN","PSG OEE",77,0)
  12392    . D ENDDC ^PSGSICHK( PSGP,PSJDD )
  12393   "RTN","PSG OEE",78,0)
  12394    D:'$G(PSG ORQF) IN^P SJOCDS($G( PSGORD),"U D",PSJDD)
  12395   "RTN","PSG OEE",79,0)
  12396    Q
  12397   "RTN","PSG OEE",80,0)
  12398   CHKDD ;***  Check ina ctive Disp ense drug  within the  order.
  12399   "RTN","PSG OEE",81,0)
  12400    D CHKDRG^ PSGOE2
  12401   "RTN","PSG OEE",82,0)
  12402    Q
  12403   "RTN","PSG OEE",83,0)
  12404   CKDT ; Che ck if new  start/stop  dates sho uld be cal culated.
  12405   "RTN","PSG OEE",84,0)
  12406    S PSGS0Y= $S($D(PSGS 0Y):PSGS0Y ,1:$G(PSGA T))
  12407   "RTN","PSG OEE",85,0)
  12408    ;PSJ*5*17 9 Recalc s tart date  if Before  last given
  12409   "RTN","PSG OEE",86,0)
  12410    I ($P($G( PSBSTR),"^ ")>PSGSD)! ('$G(PSGNE WDT)&(PSGS D=$G(PSGOS D))&(PSGFD =$G(PSGOFD )))!($G(PS GOST)'=PSG ST)!(PSGSC H'=$G(PSGO SCH))!($G( PSGPDNX))  D
  12411   "RTN","PSG OEE",87,0)
  12412    .N PSGOES  S PSGOES= 1,PSGOFD=P SGFD D ^PS GNE3 I $G( PSGOFD) S  PSGNEFD=PS GFD
  12413   "RTN","PSG OEE",88,0)
  12414    .S PSGSD= PSGNESD,PS GSDN=$$END D^PSGMI(PS GNESD)_U_$ $ENDTC^PSG MI(PSGNESD ),PSGFD=PS GNEFD,PSGF DN=$$ENDD^ PSGMI(PSGN EFD)_U_$$E NDTC^PSGMI (PSGNEFD), PSGNEWDT=1
  12415   "RTN","PSG OEE",89,0)
  12416    .I $D(PSG OFD),PSGOF D]"",PSGFD '=PSGOFD S  PSGOEEF(2 5)=1
  12417   "RTN","PSG OEE",90,0)
  12418    .I $D(PSG OSD),PSGOS D]"",PSGSD '=PSGOSD S  PSGOEEF(1 0)=1
  12419   "RTN","PSG OEE",91,0)
  12420    ;BHW;PSJ* 5*179;Add  EFD call h ere, remov ed from PS GOE91
  12421   "RTN","PSG OEE",92,0)
  12422    D EFDACT^ PSJUTL
  12423   "RTN","PSG OEE",93,0)
  12424    Q
  12425   "RTN","PSG OEE",94,0)
  12426   NEW3 ;
  12427   "RTN","PSG OEE",95,0)
  12428    ;S:PSGOEA V PSGOEAV= "0^1"
  12429   "RTN","PSG OEE",96,0)
  12430   NEW ;
  12431   "RTN","PSG OEE",97,0)
  12432    I $D(^PS( 53.45,+$G( PSJSYSP),5 )) N PSJFS I S PSJFSI =1 D FILES I^PSJBCMA5 (DFN,PSGOR D) N SIARR AY S SIARR AY="" D
  12433   "RTN","PSG OEE",98,0)
  12434    .I PSGORD ["P" M SIA RRAY=^PS(5 3.1,+PSGOR D,15) D NE WNVAL^PSGA L5(PSGORD, 6000,"SPEC IAL INSTRU CTIONS",,. SIARRAY)
  12435   "RTN","PSG OEE",99,0)
  12436    .I PSGORD ["U" M SIA RRAY=^PS(5 5,DFN,5,+P SGORD,15)  D NEWUDAL^ PSGAL5(PSG ORD,6000," SPECIAL IN STRUCTIONS ",,.SIARRA Y)
  12437   "RTN","PSG OEE",100,0 )
  12438    W !,"...d iscontinui ng origina l order... "
  12439   "RTN","PSG OEE",101,0 )
  12440    I PSGORD[ "P" S PSJC OM=+$P($G( ^PS(53.1,+ PSGORD,.2) ),"^",8) I  PSJCOM D  NEW^PSJCOM 1 Q
  12441   "RTN","PSG OEE",102,0 )
  12442    ;DC and U nlock orde r.
  12443   "RTN","PSG OEE",103,0 )
  12444    S PSGEDIT ="DE" D EN OR^PSGOECS ,UNL^PSSLO CK(PSGP,PS GORD) K PS GEDIT
  12445   "RTN","PSG OEE",104,0 )
  12446    W !!," .. .creating  new order. .." W:'PSG OEAV "(you  will now  work on th is new ord er)"
  12447   "RTN","PSG OEE",105,0 )
  12448    S PSGS0Y= PSGAT,PSGN ESD=PSGSD, PSGNEFD=PS GFD,PSGOEP R=PSGPR,PS GPDRG=PSGP D,PSGPDRGN =PSGPDN,PS GOEE="E"
  12449   "RTN","PSG OEE",106,0 )
  12450    S PSGOORD =PSGORD D  ^PSGOETO K  PSGOEOS
  12451   "RTN","PSG OEE",107,0 )
  12452    I PSGOORD ["U" S $P( ^PS(55,PSG P,5,+PSGOO RD,0),"^", 26,27)=PSG ORD_"^E"
  12453   "RTN","PSG OEE",108,0 )
  12454    E  S $P(^ PS(53.1,+P SGOORD,0), "^",26,27) =PSGORD_"^ E"
  12455   "RTN","PSG OEE",109,0 )
  12456    I $G(PSJF SI) I $$GE TSI^PSJBCM A5(DFN,PSG OORD) D FI LESI^PSJBC MA5(DFN,PS GORD)
  12457   "RTN","PSG OEE",110,0 )
  12458    I 'PSGOEA V,($G(PSGO RD)["P"),' $G(^PS(53. 1,+PSGORD, 2.5)),$G(^ PS(53.1,+P SGORD,0))  D
  12459   "RTN","PSG OEE",111,0 )
  12460    . N DUR S  DUR=$$GET DUR^PSJLIV MD(PSGP,PS GORD,$S(PS GORD["P":" P",1:5),1)  I DUR]""  K DA,DR,DI E S DIE="^ PS(53.1,", DA=+PSGORD ,DR="116// //"_DUR D  ^DIE
  12461   "RTN","PSG OEE",112,0 )
  12462    I PSGOEAV  D
  12463   "RTN","PSG OEE",113,0 )
  12464    . S ^TMP( "PSODAOC", $J,"IP IEN ")=PSGORD
  12465   "RTN","PSG OEE",114,0 )
  12466    . D SETOC ^PSJNEWOC( PSGORD) ;P SJ*5*281 s tores orde r checks
  12467   "RTN","PSG OEE",115,0 )
  12468    I PSGOEAV ,+PSJSYSU= 3,'$D(PSGO ES) D EN^P SGPEN(PSGO RD),UNL^PS SLOCK(PSGP ,PSGORD) Q
  12469   "RTN","PSG OEE",116,0 )
  12470    S PSJORD= PSGORD,PSG ACT=$$ENAC TION^PSGOE 1(PSGP,PSG ORD)
  12471   "RTN","PSG OEE",117,0 )
  12472    ;K ^TMP(" PSODAOC",$ J),^TMP("P SJDAOC",$J )
  12473   "RTN","PSG OEE",118,0 )
  12474    Q
  12475   "RTN","PSG OEE",119,0 )
  12476   UPD ;
  12477   "RTN","PSG OEE",120,0 )
  12478    ;/327*MZR  added nex t line to  prevent up dating if  nothing ch anged
  12479   "RTN","PSG OEE",121,0 )
  12480    Q:$G(PSGO EE)=0
  12481   "RTN","PSG OEE",122,0 )
  12482    K DA W !! ,"...updat ing order. .."
  12483   "RTN","PSG OEE",123,0 )
  12484    I PSGORD[ "P" S PSJC OM=+$P($G( ^PS(53.1,+ PSGORD,.2) ),"^",8) I  PSJCOM D  UPD^PSJCOM  Q
  12485   "RTN","PSG OEE",124,0 )
  12486    I $$DIFFS I^PSJBCMA5 (DFN,PSGOR D) D
  12487   "RTN","PSG OEE",125,0 )
  12488    .N SIARRA Y M:PSGORD ["P" SIARR AY=^PS(53. 1,+PSGORD, 15) M:PSGO RD["U" SIA RRAY=^PS(5 5,DFN,5,+P SGORD,15)
  12489   "RTN","PSG OEE",126,0 )
  12490    .Q:'$D(SI ARRAY)
  12491   "RTN","PSG OEE",127,0 )
  12492    .I PSGORD ["P" D NEW NVAL^PSGAL 5(PSGORD,6 000,"SPECI AL INSTRUC TIONS",,.S IARRAY)
  12493   "RTN","PSG OEE",128,0 )
  12494    .I PSGORD ["U" D NEW UDAL^PSGAL 5(DFN,PSGO RD,6000,"S PECIAL INS TRUCTIONS" ,,.SIARRAY )
  12495   "RTN","PSG OEE",129,0 )
  12496    ; Set tri gger for F IELD (12)  Dispense D rug to pri nt a updat ed pick li st.
  12497   "RTN","PSG OEE",130,0 )
  12498    I PSGORD[ "U",$D(^PS (53.45,PSJ SYSP,2,1,0 )),$D(^PS( 55,PSGP,5, +PSGORD,1, 1,0)) D
  12499   "RTN","PSG OEE",131,0 )
  12500    .N PSJX12 ,PSJF12 S  PSJF12=0
  12501   "RTN","PSG OEE",132,0 )
  12502    .F PSJX12 =0:1 S PSJ X12=$O(^PS (53.45,PSJ SYSP,2,PSJ X12)) Q:+P SJX12=0  S :$G(^PS(53 .45,PSJSYS P,2,PSJX12 ,0))'=$G(^ PS(55,PSGP ,5,+PSGORD ,1,PSJX12, 0)) PSJF12 =1
  12503   "RTN","PSG OEE",133,0 )
  12504    .S:PSJF12  ^PS(55,"A UE",PSGP,+ PSGORD)=""
  12505   "RTN","PSG OEE",134,0 )
  12506    N TMP,PSG SIF S TMP= PSGOEENO N  PSGOEENO  S PSGOEENO =TMP
  12507   "RTN","PSG OEE",135,0 )
  12508    N II F II =1:1:$L($G (DR),";")  I $E($P($G (DR),";",I I),1,7)="1 22////" S  PSGSIF=$P( PSGSI,"^", 2),PSGSI=$ P(PSGSI,"^ ") Q
  12509   "RTN","PSG OEE",136,0 )
  12510    I $G(PSJC OM),$G(PSJ COMSI) K P SJCOMSI,^T MP("PSGSI" ,$J) M ^TM P("PSGSI", $J,5)=^PS( 53.45,PSJS YSP,5) D
  12511   "RTN","PSG OEE",137,0 )
  12512    .D FILESI ^PSJBCMA5( DFN,PSGORD )
  12513   "RTN","PSG OEE",138,0 )
  12514    .N PSJCHI LD,PSJOEOR D S PSJOEO RD=0 F  S  PSJOEORD=$ O(^PS(55," ACX",PSJCO M,PSJOEORD )) Q:'PSJO EORD  D
  12515   "RTN","PSG OEE",139,0 )
  12516    .. S PSJC HILD=0 F   S PSJCHILD =$O(^PS(55 ,"ACX",PSJ COM,PSJOEO RD,PSJCHIL D)) Q:'PSJ CHILD  D
  12517   "RTN","PSG OEE",140,0 )
  12518    ... Q:PSJ CHILD=PSGO RD  N DR,D A,DIE,ORD  S DR=$S(PS JCHILD["V" :"31////"_ $G(P("OPI" )),1:"8/// /"_$G(PSGS I)) S DR=D R_";"_$S(P SJCHILD["V ":146,1:12 2)_"////"_ +$G(PSGSIF )
  12519   "RTN","PSG OEE",141,0 )
  12520    ... I '$D (^PS(53.45 ,+$G(PSJSY SP),5)) M  ^PS(53.45, +$G(PSJSYS P),5)=^TMP ("PSGSI",$ J,5)
  12521   "RTN","PSG OEE",142,0 )
  12522    ... D FIL ESI^PSJBCM A5(DFN,PSJ CHILD)
  12523   "RTN","PSG OEE",143,0 )
  12524    ... ;PSJ* 5*179 Comm ent edits
  12525   "RTN","PSG OEE",144,0 )
  12526    ... S DR= $TR($G(DR) ,"*") I DR '="" S DA= +PSJCHILD, DIE=$S(PSJ CHILD["U": "^PS(55,"_ PSGP_",5," ,1:"^PS(53 .1,") S:DI E["^PS(55, " DA(1)=PS GP D ^DIE  W "." D EN 1^PSJHL2(P SGP,"XX",+ PSJCHILD_" U")
  12527   "RTN","PSG OEE",145,0 )
  12528    . K ^TMP( "PSGSI",$J )
  12529   "RTN","PSG OEE",146,0 )
  12530    S DR=$TR( DR,"*") I  DR'="" S D A=+PSGORD, DIE=$S(PSG ORD["U":"^ PS(55,"_PS GP_",5,",1 :"^PS(53.1 ,") S:DIE[ "^PS(55,"  DA(1)=PSGP  D ^DIE W  "."
  12531   "RTN","PSG OEE",147,0 )
  12532    F Q=1,3 K  @(PSGOEEW F_Q_")") S  %X="^PS(5 3.45,"_PSJ SYSP_","_$ S(Q=1:2,1: 1)_",",%Y= PSGOEEWF_Q _"," K @(P SGOEEWF_Q_ ")") D %XY ^%RCR W ". "
  12533   "RTN","PSG OEE",148,0 )
  12534    S $P(@(PS GOEEWF_"1, 0)"),"^",2 )=$S(PSGOR D["U":55.0 7,1:53.11) _"P"
  12535   "RTN","PSG OEE",149,0 )
  12536    I $D(^PS( 53.45,+$G( PSJSYSP),5 )) D FILES I^PSJBCMA5 (DFN,PSJOR D)
  12537   "RTN","PSG OEE",150,0 )
  12538    ; Naked r eference o n the line  below ref ers to ful l referenc e using in direction  to either  ^PS(55 or  ^PS(53.1,
  12539   "RTN","PSG OEE",151,0 )
  12540    S ND=$G(@ ($S(PSGORD ["U":"^PS( 55,"_PSGP_ ",5,",1:"^ PS(53.1,") _+PSGORD_" ,0)")) I $ P(ND,"^",2 1) S ORIFN =$P(ND,"^" ,21),ND1=$ G(^(.2)),N D2=$G(^(2) ),ND2P1=$G (^(2.1)) W  !,"...upd ating OE/R R..." D EN 1^PSJHL2(P SGP,"XX",P SGORD) ;*3 15
  12541   "RTN","PSG OEE",152,0 )
  12542    I $$ENACT ION^PSGOE1 (PSGP,PSGO RD)["V" S  VALMBCK="R "
  12543   "RTN","PSG OEE",153,0 )
  12544    I PSJSYSL ,PSJSYSL<3  S $P(@($S (PSGORD["U ":"^PS(55, "_PSGP_",5 ,",1:"^PS( 53.1,")_+P SGORD_",7) "),"^",1,2 )=PSGDT_"^ "_$E("D",P SGOEENO)_" E",PSGTOL= 2,PSGUOW=D UZ,PSGTOO= PSGORD'["U "+1,DA=+PS GORD D ENL ^PSGVDS
  12545   "RTN","PSG OEE",154,0 )
  12546    ; **This  is where t he Automat ed Dispens ing Machin e hook is  called. Do  NOT DELET E or chang e this loc ation **
  12547   "RTN","PSG OEE",155,0 )
  12548    D EDIT^PS JADM
  12549   "RTN","PSG OEE",156,0 )
  12550    ; **END o f Interfac e Hook **
  12551   "RTN","PSG OEE",157,0 )
  12552    Q
  12553   "RTN","PSG OEE",158,0 )
  12554   OUT ;
  12555   "RTN","PSG OEE",159,0 )
  12556    D ABORT K  PSGNEWDT  S PSGCANFL =1 D GETUD ^PSJLMGUD( PSGP,PSGOR D),ENSFE^P SGOEE0(PSG P,PSGORD), INIT^PSJLM UDE(PSGP,P SGORD)
  12557   "RTN","PSG OEE",160,0 )
  12558    Q
  12559   "RTN","PSG OEE",161,0 )
  12560   DONE ;
  12561   "RTN","PSG OEE",162,0 )
  12562    I PSGORD[ "P",'$D(PS GOEF),PSGS CH]"",$O(^ PS(53.1,+P SGORD,1,0) ) D ENF^PS GOEE0
  12563   "RTN","PSG OEE",163,0 )
  12564   DONE1 ;
  12565   "RTN","PSG OEE",164,0 )
  12566    ;; START  NCC REMEDI ATION >> 3 27*RJS ;/R BN & MZR c hanged con ditions on  the next  line
  12567   "RTN","PSG OEE",165,0 )
  12568    I $G(PSGE DT),$$GET1 ^DIQ(55.06 ,+$G(PSGOR D)_","_DFN ,.01,"I")  D
  12569   "RTN","PSG OEE",166,0 )
  12570    .N CLOZFL G,PSGDRG S  CLOZFLG=$ $ISCLOZ^PS JCLOZ(,,DF N,+PSGORD)
  12571   "RTN","PSG OEE",167,0 )
  12572    .I $G(CLO ZFLG) S PS GDRG=$P(CL OZFLG,U,2)  D
  12573   "RTN","PSG OEE",168,0 )
  12574    ..N DIE,D A,DR S DIE ="^PS(55," _DFN_",5," ,DA=+PSGOR D,DA(1)=DF N,DR="301/ ///"
  12575   "RTN","PSG OEE",169,0 )
  12576    ..I $D(^T MP("PSJCOM ",$J,+$G(P SGORD))) D   K ^TMP($ J,"PSGCLOZ ",DFN,+PSG ORD,"SAND" ) I 1
  12577   "RTN","PSG OEE",170,0 )
  12578    ...S DR=D R_$G(^TMP( "PSJCOM",$ J,+PSGORD, "SAND"))
  12579   "RTN","PSG OEE",171,0 )
  12580    ..E  I $G (^TMP($J," PSGCLOZ",D FN,+$G(PSJ ORD),"SAND ")) D  K ^ TMP($J,"PS GCLOZ",DFN ,+PSJORD," SAND") I 1
  12581   "RTN","PSG OEE",172,0 )
  12582    ...S DR=D R_$G(^TMP( $J,"PSGCLO Z",DFN,+PS JORD,"SAND "))
  12583   "RTN","PSG OEE",173,0 )
  12584    ..E  I $G (^TMP($J," PSGCLOZ",D FN,+$G(PSG ORD),"SAND ")) D  K ^ TMP($J,"PS GCLOZ",DFN ,+PSGORD," SAND")
  12585   "RTN","PSG OEE",174,0 )
  12586    ...S DR=D R_$G(^TMP( $J,"PSGCLO Z",DFN,+PS GORD,"SAND "))
  12587   "RTN","PSG OEE",175,0 )
  12588    ..D ^DIE
  12589   "RTN","PSG OEE",176,0 )
  12590    ..N PSGDN  S PSGDN=P SGDRG
  12591   "RTN","PSG OEE",177,0 )
  12592    ..D PSJFI LE^PSJCLOZ (DFN),INPS ND^YSCLTST 5
  12593   "RTN","PSG OEE",178,0 )
  12594    ;; END NC C REMEDIAT ION >> 327 *RJS
  12595   "RTN","PSG OEE",179,0 )
  12596    I PSGORD[ "U" S X=+P SGORD L -^ PS(55,PSGP ,5,X)
  12597   "RTN","PSG OEE",180,0 )
  12598    E  L -^PS (53.1,+PSG ORD)
  12599   "RTN","PSG OEE",181,0 )
  12600    K ^PS(53. 45,+PSJSYS P,1),^(2), ^(5),^(6)
  12601   "RTN","PSG OEE",182,0 )
  12602    I '$D(PSG OEF) K PSG SD,PSGSCH, PSGST,PSGF D
  12603   "RTN","PSG OEE",183,0 )
  12604    K DA,DIE, DIR,DP,DR, DRG,ND,ND0 ,ND1,ND2,N D2P1,ORIFN ,PSGAL,PSG ALEF,PSGAT ,PSGOEE,PS GOEEF,PSGO EEG,PSGOEE WF,PSGEFN, PSGTOL,PSG TOO,PSGUOW ,XREF,PSGE FN,PSGMR,P SGMRN,PSGO ROE1,PSGPD ,PSGPDN,PS GSI,PSGPR, PSGSM,PSGH SM,PSGSTN, PSGSDN,PSG FDN,PSGPRN
  12605   "RTN","PSG OEE",184,0 )
  12606    K PSGDO,P SGOEENO Q
  12607   "RTN","PSG OEE",185,0 )
  12608   K1 ;
  12609   "RTN","PSG OEE",186,0 )
  12610    K BACK,F1 ,F2,PSGF2, MSG,PSGEFN ,PSGNEWDT, PSGOEEND,P SGOPD,PSGO PDN,PSGOMR ,PSGOMRN,P SGOSCH,PSG OSI,PSGOPR ,PSGOSM,PS GOHSM,PSGO SD,PSGOFD, PSGOST,PSG OPRN,PSGOS TN,PSGOSDN ,PSGOFDN,P SGODO,PSGP DRG,PSGPDR GN,PSGOEER
  12611   "RTN","PSG OEE",187,0 )
  12612    Q
  12613   "RTN","PSG OEE",188,0 )
  12614    ;
  12615   "RTN","PSG OEE",189,0 )
  12616   ABORT ; Di splay no c hange mess age and pa use.
  12617   "RTN","PSG OEE",190,0 )
  12618    D FULL^VA LM1
  12619   "RTN","PSG OEE",191,0 )
  12620    S (PSGDI, PSGDFLG)=' $$DDOK^PSG OE2(PSGOEE WF_"1,",+$ G(@(PSGOEE WF_".2)")) )
  12621   "RTN","PSG OEE",192,0 )
  12622    S PSGPFLG ='$$OIOK^P SGOE2(+$G( @(PSGOEEWF _".2)")))
  12623   "RTN","PSG OEE",193,0 )
  12624    I '$G(PSJ RNFLG) W ! !,$C(7),"N o changes  made to th is order."  D PAUSE^V ALM1  ;if  flag set i n PSODGAL1 , no repea t message
  12625   "RTN","PSG OEE",194,0 )
  12626    K PSGOEEF  S PSGOEEF =0
  12627   "RTN","PSG OEE",195,0 )
  12628    Q
  12629   "RTN","PSG OEE",196,0 )
  12630    ;
  12631   "RTN","PSG OEE",197,0 )
  12632   GTSTATUS ;  Determine  status of  new order  and set L M title.
  12633   "RTN","PSG OEE",198,0 )
  12634    S PSGSTAT =$S($P($G( PSJSYSP0), U,9):"ACTI VE",1:"NON -VERIFIED" )
  12635   "RTN","PSG OEE",199,0 )
  12636    S VALM("T ITLE")=PSG STAT_" UNI T DOSE "_$ S(PSGSTAT= "PENDING": "("_PSGPRI O_")",1:"" )
  12637   "RTN","PSG OEE",200,0 )
  12638    Q
  12639   "RTN","PSG OEE",201,0 )
  12640    ;
  12641   "RTN","PSG OEE",202,0 )
  12642   ASKOVR(Y,P SJOVRON,PS JSTARI)  ;  Check to  see if any  starred f ields are  being edit ed. If so,  ask if th ey wish to  view over rides/inte rventions  if they ex ist
  12643   "RTN","PSG OEE",203,0 )
  12644    Q:'$D(Y)! $D(PSJSTAR I)  N II,I 3,YY S YY= $S(Y:Y,1:$ TR($P(Y,"^ ",4),"="))
  12645   "RTN","PSG OEE",204,0 )
  12646    Q:'YY  S  PSJOVRON=$ S($G(PSJOV RON):PSJOV RON,1:$G(P SJORD)) Q: '$G(PSJOVR ON)
  12647   "RTN","PSG OEE",205,0 )
  12648    N PSJORD  S PSJORD=P SJOVRON
  12649   "RTN","PSG OEE",206,0 )
  12650    I '$G(PSJ STARI) F I I=1:1:$L(Y Y,",") Q:$ G(PSJSTARI )  S I3=$P (YY,",",II ) I I3 S:$ G(PSGEFN(I 3))!($G(PS JSTAR)[("( "_I3_")"))  PSJSTARI= 1
  12651   "RTN","PSG OEE",207,0 )
  12652    I $G(PSJS TARI) I ($ G(PSJORD)& $G(PSGP))  I $$ASKDIS P^PSGSICH1  D FULL^VA LM1 D OVRD ISP^PSGSIC H2(PSGP,PS JORD,3)
  12653   "RTN","PSG OEE",208,0 )
  12654    Q
  12655   "RTN","PSG OEE",209,0 )
  12656    ;
  12657   "RTN","PSG OEE",210,0 )
  12658   FIELDS ;
  12659   "RTN","PSG OEE",211,0 )
  12660   31 ;;101^P SGOE8;PSGO PD;PSGPD;1 01;1
  12661   "RTN","PSG OEE",212,0 )
  12662   32 ;;109^P SGOE8;PSGO DO;PSGDO;1 09;PSGODO] ""
  12663   "RTN","PSG OEE",213,0 )
  12664   33 ;;10^PS GOE81;PSGO SD;PSGSD;1 0;0
  12665   "RTN","PSG OEE",214,0 )
  12666   34 ;;3^PSG OE8;PSGOMR ;PSGMR;3;1
  12667   "RTN","PSG OEE",215,0 )
  12668   35 ;;25^PS GOE81;PSGO FD;PSGFD;2 5;0
  12669   "RTN","PSG OEE",216,0 )
  12670   36 ;;7^PSG OE8;PSGOST ;PSGST;7;0
  12671   "RTN","PSG OEE",217,0 )
  12672   37 ;;5^PSG OE82;PSGOS M;PSGSM;5; 0
  12673   "RTN","PSG OEE",218,0 )
  12674   38 ;;26^PS GOE8;PSGOS CH;PSGSCH; 26;1
  12675   "RTN","PSG OEE",219,0 )
  12676   39 ;;39^PS GOE81;PSGO AT;PSGAT;3 9;0
  12677   "RTN","PSG OEE",220,0 )
  12678   310 ;;1^PS GOE82;PSGO PR;PSGPR;1 ;1
  12679   "RTN","PSG OEE",221,0 )
  12680   311 ;;8^PS GOE81;PSGO SI;PSGSI;8 ;0
  12681   "RTN","PSG OEE",222,0 )
  12682   312 ;;2^PS GOE82;;;2; 0
  12683   "RTN","PSG OEE",223,0 )
  12684   313 ;;40^P SGOE82;;;4 0;0
  12685   "RTN","PSG OEE",224,0 )
  12686   51 ;;101^P SGOE9;PSGO PD;PSGPD;1 01;1
  12687   "RTN","PSG OEE",225,0 )
  12688   52 ;;109^P SGOE9;PSGO DO;PSGDO;1 09;PSGODO] ""
  12689   "RTN","PSG OEE",226,0 )
  12690   53 ;;10^PS GOE91;PSGO SD;PSGSD;1 0;1
  12691   "RTN","PSG OEE",227,0 )
  12692   54 ;;3^PSG OE9;PSGOMR ;PSGMR;3;1
  12693   "RTN","PSG OEE",228,0 )
  12694   55 ;;34^PS GOE91;PSGO FD;PSGFD;3 4;1 
  12695   "RTN","PSG OEE",229,0 )
  12696   56 ;;7^PSG OE9;PSGOST ;PSGST;7;0
  12697   "RTN","PSG OEE",230,0 )
  12698   57 ;;5^PSG OE92;PSGOS M;PSGSM;5; 0
  12699   "RTN","PSG OEE",231,0 )
  12700   58 ;;26^PS GOE9;PSGOS CH;PSGSCH; 26;1
  12701   "RTN","PSG OEE",232,0 )
  12702   59 ;;41^PS GOE91;PSGO AT;PSGAT;4 1;0
  12703   "RTN","PSG OEE",233,0 )
  12704   510 ;;1^PS GOE92;PSGO PR;PSGPR;1 ;1
  12705   "RTN","PSG OEE",234,0 )
  12706   511 ;;8^PS GOE91;PSGO SI;PSGSI;8 ;0
  12707   "RTN","PSG OEE",235,0 )
  12708   512 ;;2^PS GOE92;;;2; 0
  12709   "RTN","PSG OEE",236,0 )
  12710   513 ;;15^P SGOE92;;;1 5;0
  12711   "RTN","PSG OEF")
  12712   0^25^B1371 83745
  12713   "RTN","PSG OEF",1,0)
  12714   PSGOEF ;BI R/CML3 - F INISH ORDE RS ENTERED  THROUGH O E/RR ;Jul  26, 2017@1 8:04:02
  12715   "RTN","PSG OEF",2,0)
  12716    ;;5.0;INP ATIENT MED ICATIONS;* *7,30,29,3 5,39,47,50 ,56,80,116 ,110,111,1 33,153,134 ,222,113,1 81,260,199 ,281,315,3 27**;16 DE C 97;Build  64
  12717   "RTN","PSG OEF",3,0)
  12718    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  12719   "RTN","PSG OEF",4,0)
  12720    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191
  12721   "RTN","PSG OEF",5,0)
  12722    ; Referen ce to ^PSD RUG( is su pported by  DBIA 2192
  12723   "RTN","PSG OEF",6,0)
  12724    ; Referen ce to DOSE ^PSSORPH i s supporte d by DBIA  3234.
  12725   "RTN","PSG OEF",7,0)
  12726    ; Referen ce to ^TMP ("PSODAOC" ,$J is sup ported by  DBIA 6071.
  12727   "RTN","PSG OEF",8,0)
  12728    ; Referen ce to FULL ^VALM1 is  supported  by DBIA 10 116.
  12729   "RTN","PSG OEF",9,0)
  12730    ; Referen ce to ^PS( 50.7 is su pported by  DBIA# 218 0
  12731   "RTN","PSG OEF",10,0)
  12732    ;
  12733   "RTN","PSG OEF",11,0)
  12734   START ;
  12735   "RTN","PSG OEF",12,0)
  12736    I '$D(^PS (53.1,+PSG ORD)) W $C (7),!?3,"C annot find  this pend ing order  (#",+PSGOR D,")." Q
  12737   "RTN","PSG OEF",13,0)
  12738    D NOW^%DT C S PSGDT= +$E(%,1,12 ) K PSGFDX ,PSGEFN,PS GOEEF,PSGO ES,PSGONF, PSGRDTX S  PSGOES=1,( PSGOEF,PSG OEEF)=0,PS GOEEG=3
  12739   "RTN","PSG OEF",14,0)
  12740    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(+P SGORD)
  12741   "RTN","PSG OEF",15,0)
  12742    I $G(CLOZ FLG),'$D(C LOZPAT) D  CLOZPAT^PS JCLOZ
  12743   "RTN","PSG OEF",16,0)
  12744    I $D(PSJT UD) S PSGD O=$P($G(^P S(53.1,+PS GORD,.3)), U),(PSGPDR G,PSGPD)=P SJCOI,(PSG PDRGN,PSGP DN)=$$OINA ME^PSJLMUT L(PSGPD)
  12745   "RTN","PSG OEF",17,0)
  12746    I $P($G(^ PS(53.1,+P SGORD,0)), U,24)'="R"  S X=PSGSC H D EN^PSG ORS0 D
  12747   "RTN","PSG OEF",18,0)
  12748    .S:($D(X) &($P($G(^P S(53.1,+PS GORD,2))," ^",5)="")& ($P($G(^PS (53.1,+PSG ORD,0)),"^ ",24)="N") ) PSGAT=PS GS0Y
  12749   "RTN","PSG OEF",19,0)
  12750    .N PSJDOX ,PSJDOSE,P SJPIECE,PS JUNIT,PSJX ,X
  12751   "RTN","PSG OEF",20,0)
  12752    .S X=$G(^ PS(53.1,+P SGORD,1,1, 0)) Q:'+X
  12753   "RTN","PSG OEF",21,0)
  12754    .D DOSE^P SSORPH(.PS JDOX,+X,"U ")
  12755   "RTN","PSG OEF",22,0)
  12756    .I $S('$D (PSJDOX):1 ,1:+PSJDOX (1)=-1) Q
  12757   "RTN","PSG OEF",23,0)
  12758    .S PSJPIE CE=$S($P(P SJDOX(1),U )="":3,1:1 )
  12759   "RTN","PSG OEF",24,0)
  12760    .S X=^PS( 53.1,+PSGO RD,.2)
  12761   "RTN","PSG OEF",25,0)
  12762    .S:PSJPIE CE=3 PSJDO SE=$P(X,U, 2)
  12763   "RTN","PSG OEF",26,0)
  12764    .S:PSJPIE CE=1 PSJDO SE=$P(X,U, 5),PSJUNIT =$P(X,U,6)
  12765   "RTN","PSG OEF",27,0)
  12766    .F X=0:0  S X=$O(PSJ DOX(X)) Q: +$G(PSJX)! 'X  D
  12767   "RTN","PSG OEF",28,0)
  12768    ..I PSJPI ECE=3,($P( PSJDOX(X), U,3)'=PSJD OSE) Q
  12769   "RTN","PSG OEF",29,0)
  12770    ..I PSJPI ECE=1,($P( PSJDOX(X), U,1)_$P(PS JDOX(X),U, 2)'=(PSJDO SE_PSJUNIT )) Q
  12771   "RTN","PSG OEF",30,0)
  12772    ..S:+$P(P SJDOX(X),U ,12) $P(^P S(53.45,PS JSYSP,2,1, 0),U,2)=+$ P(PSJDOX(X ),U,12),PS JX=1
  12773   "RTN","PSG OEF",31,0)
  12774    I PSGEB'= PSGOPR F X =7,11 S Y= $T(@(3_X)) ,@("PSGEFN ("_X_")="_ $P(Y,";",7 )),PSGOEEF (+$P(Y,";" ,3))="",PS GOEEF=PSGO EEF+1
  12775   "RTN","PSG OEF",32,0)
  12776    D GTST^PS GOE6(+PSGO RD)
  12777   "RTN","PSG OEF",33,0)
  12778    I $P($G(^ PS(53.1,+P SGORD,0)), U,24)'="R"  S PSGSD=" " D:PSGS0Y ]""
  12779   "RTN","PSG OEF",34,0)
  12780    .N PSJX S  PSJX=$P($ G(^PS(53.1 ,+PSGORD,0 )),U,25) I  PSJX="" Q
  12781   "RTN","PSG OEF",35,0)
  12782    .I PSJX[" U" S PSGSD =$P($G(^PS (55,DFN,5, +PSJX,2)), U,2) Q
  12783   "RTN","PSG OEF",36,0)
  12784    .I PSJX[" V" S PSGSD =$P($G(^PS (55,DFN,"I V",+PSJX,0 )),U,2) Q
  12785   "RTN","PSG OEF",37,0)
  12786    .I PSJX[" P" S PSGSD =$P($G(^PS (53.1,+PSJ X,2)),U,2)
  12787   "RTN","PSG OEF",38,0)
  12788    S:PSGSD=" " PSGSD=PS GLI
  12789   "RTN","PSG OEF",39,0)
  12790    S PSGNEDF D=$$GTNEDF D^PSGOE7(" U",+PSGPD)
  12791   "RTN","PSG OEF",40,0)
  12792    S:$P($G(P SGNEDFD),U ,3)="" $P( PSGNEDFD,U ,3)=PSGST   ; N PSGOE A S PSGOEA ="R"
  12793   "RTN","PSG OEF",41,0)
  12794   ZZ S (PSGN ESD,PSGSD) =$$ENSD^PS GNE3(PSGSC H,PSGS0Y,P SGLI,PSGSD )
  12795   "RTN","PSG OEF",42,0)
  12796    ;; START  NCC REMEDI ATION >> 3 27*RJS - n ext line h as been ad ded
  12797   "RTN","PSG OEF",43,0)
  12798    I $G(CLOZ FLG) D COM PLEX1^PSJC LOZ
  12799   "RTN","PSG OEF",44,0)
  12800    ;if this  is a renew al order,  ignore any  'requeste d start da te' receiv ed.  Use t he system  calculated  start dat e.
  12801   "RTN","PSG OEF",45,0)
  12802    I $P($G(^ PS(53.1,+P SGORD,0)), U,24)'="R"  D
  12803   "RTN","PSG OEF",46,0)
  12804    . D REQDT ^PSJLIVMD( PSGORD)
  12805   "RTN","PSG OEF",47,0)
  12806    E  D
  12807   "RTN","PSG OEF",48,0)
  12808    . S X=$$D START^PSJD CU(DFN,$P( ^PS(53.1,+ PSGORD,0), U,25)) I X ]"" S (PSG NESD,PSGSD )=X K PSGR SD
  12809   "RTN","PSG OEF",49,0)
  12810    D   ; Ext end the De fault Stop  Date if n eeded for  the first  renewed or der.
  12811   "RTN","PSG OEF",50,0)
  12812    .N PSGOEA O,PSGWALLO
  12813   "RTN","PSG OEF",51,0)
  12814    .I $P($G( ^PS(53.1,+ PSGORD,0)) ,U,24)="R"  S PSGOEAO =PSGOEA,PS GOEA="R",P SGWALLO=$P (^PS(55,DF N,5.1),U)
  12815   "RTN","PSG OEF",52,0)
  12816    .D ENFD^P SGNE3(PSGL I) S PSGFD =$S($G(PSG RDTX(+PSGO RD,"PSGFD" )):PSGRDTX (+PSGORD," PSGFD"),1: PSGNEFD)
  12817   "RTN","PSG OEF",53,0)
  12818    .I $P($G( ^PS(53.1,+ PSGORD,0)) ,U,24)="R"  S PSGOEA= PSGOEAO,$P (^PS(55,DF N,5.1),U)= PSGWALLO
  12819   "RTN","PSG OEF",54,0)
  12820    N DUR,PSG RNSD S PSG RNSD=+$$LA STREN^PSJL MPRI(DFN,P SGORD) I P SGRNSD S D UR=$$GETDU R^PSJLIVMD (DFN,PSGOR D,"P",1) I  DUR]"" D
  12821   "RTN","PSG OEF",55,0)
  12822    . N DURMI N S DURMIN =$$DURMIN^ PSJLIVMD(D UR) I DURM IN S PSGFD =$$FMADD^X LFDT(PSGRN SD,,,DURMI N)
  12823   "RTN","PSG OEF",56,0)
  12824    S PSGOFD= "",PSGSDN= $$ENDD^PSG MI(PSGSD)_ U_$$ENDTC^ PSGMI(PSGS D),PSGFDN= $$ENDD^PSG MI(PSGFD)_ U_$$ENDTC^ PSGMI(PSGF D)
  12825   "RTN","PSG OEF",57,0)
  12826    S PSGLIN= $$ENDD^PSG MI(PSGLI)_ U_$$ENDTC^ PSGMI(PSGL I)
  12827   "RTN","PSG OEF",58,0)
  12828    I '$$GET1 ^DIQ(53.45 02,"1,"_PS JSYSP,.01, "I") N DRG ,DRGCNT S  DRGCNT=0 D
  12829   "RTN","PSG OEF",59,0)
  12830    .F X=0:0  S X=$O(^PS DRUG("ASP" ,+PSGPD,X) ) Q:'X!(DR GCNT>1)  S :$P($G(^PS DRUG(+X,2) ),U,3)["U"  DRGCNT=DR GCNT+1,DRG =+X
  12831   "RTN","PSG OEF",60,0)
  12832    .I DRGCNT =1 K ^PS(5 3.45,PSJSY SP,2) S ^P S(53.45,PS JSYSP,2,1, 0)=DRG_U_1 ,^PS(53.45 ,PSJSYSP,2 ,0)="^53.4 502^1^1",P S(53.45,PS JSYSP,2,"B ",+DRG,1)= ""
  12833   "RTN","PSG OEF",61,0)
  12834    Q
  12835   "RTN","PSG OEF",62,0)
  12836   FINISH ;
  12837   "RTN","PSG OEF",63,0)
  12838    ; force d isplay of  second scr een if CPR S order ch ecks exist
  12839   "RTN","PSG OEF",64,0)
  12840    N NSFF,PS GOEF39,PSG EDTOI S NS FF=1 K PSJ NSS,PSGEDT OI,PSGOEER ,ZZND
  12841   "RTN","PSG OEF",65,0)
  12842    N PSJRMAB T
  12843   "RTN","PSG OEF",66,0)
  12844    I $G(PSGO RD),$D(PSG RDTX(+PSGO RD)) D  K  PSGRDTX
  12845   "RTN","PSG OEF",67,0)
  12846    .;PSJOCDS C stores t he default  start & s top date ^  cal start  & stop da te (use in  dosing ca lculation  for durati on)
  12847   "RTN","PSG OEF",68,0)
  12848    .;for som e reasons  PSGSD & PS GFD are re set to the  cal dates  if order  has durati on defined
  12849   "RTN","PSG OEF",69,0)
  12850    .S PSJOCD SC("CX","P SGSD",+PSG ORD)=$G(PS GSD)_U_$G( PSGRDTX(+P SGORD,"PSG RSD"))
  12851   "RTN","PSG OEF",70,0)
  12852    .S PSJOCD SC("CX","P SGFD",+PSG ORD)=$G(PS GFD)_U_$G( PSGRDTX(+P SGORD,"PSG RFD"))
  12853   "RTN","PSG OEF",71,0)
  12854    .S:$G(PSG RDTX(+PSGO RD,"PSGRSD ")) PSGSD= PSGRDTX(+P SGORD,"PSG RSD")
  12855   "RTN","PSG OEF",72,0)
  12856    .S:$G(PSG RDTX(+PSGO RD,"PSGRFD ")) PSGFD= $S($G(PSGR DTX(+PSGOR D,"PSGRFD" )):PSGRDTX (+PSGORD," PSGRFD"),1 :$G(PSGNEF D))
  12857   "RTN","PSG OEF",73,0)
  12858    N PSJCOM  S PSJCOM=+ $P($G(^PS( 53.1,+PSGO RD,.2)),"^ ",8)
  12859   "RTN","PSG OEF",74,0)
  12860    ; 
  12861   "RTN","PSG OEF",75,0)
  12862    ; PSJ*5*2 22
  12863   "RTN","PSG OEF",76,0)
  12864    ; PSJCT1  is a count er variabl e.  Every  piece of a  complex o rder calls  PSGOEF.
  12865   "RTN","PSG OEF",77,0)
  12866    ; The onl y time thi s code is  to look fo r overlapp ing admin  times is w hen the
  12867   "RTN","PSG OEF",78,0)
  12868    ; first p art of a c omplex ord er is bein g finished .  This va riable wil l keep tra ck
  12869   "RTN","PSG OEF",79,0)
  12870    ; of how  many "part s" of the  complex or der have b een checke d.
  12871   "RTN","PSG OEF",80,0)
  12872    ; 
  12873   "RTN","PSG OEF",81,0)
  12874    ; Also, s ince the u ser can se lect multi ple comple x orders t o finish,  like selec ting
  12875   "RTN","PSG OEF",82,0)
  12876    ; orders  1-2 or 1-3  from the  profile, P SJCT1A wil l keep tra ck of whet her the pa rent
  12877   "RTN","PSG OEF",83,0)
  12878    ; order n umber is t he same as  the first  parent or der number  selected  for finish ing.
  12879   "RTN","PSG OEF",84,0)
  12880    ; Since t he PSJCT1  counter va riable wil l still be  set if mu ltiple com plex order s
  12881   "RTN","PSG OEF",85,0)
  12882    ; are sel ected, PSJ CT1 will b e re-set t o 1 if the  parent co mplex orde r number ( PSJCT1A) i s
  12883   "RTN","PSG OEF",86,0)
  12884    ; not equ al to the  original p arent orde r number ( PSJCOM).
  12885   "RTN","PSG OEF",87,0)
  12886    ; 
  12887   "RTN","PSG OEF",88,0)
  12888    S PSJCT1= $G(PSJCT1) +1
  12889   "RTN","PSG OEF",89,0)
  12890    I PSJCT1= 1 S PSJCT1 A=PSJCOM
  12891   "RTN","PSG OEF",90,0)
  12892    I $G(PSJC T1A)'=PSJC OM S PSJCT 1=1,PSJCT1 A=PSJCOM
  12893   "RTN","PSG OEF",91,0)
  12894    ; End of  flag setti ng for PSJ *5*222
  12895   "RTN","PSG OEF",92,0)
  12896    D FULL^VA LM1
  12897   "RTN","PSG OEF",93,0)
  12898    ;; START  NCC REMEDI ATION >> 3 27*RJS
  12899   "RTN","PSG OEF",94,0)
  12900    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(+P SGORD)
  12901   "RTN","PSG OEF",95,0)
  12902    I PSGSTAT '="ACTIVE" ,PSGSTAT'= "NON-VERIF IED",PSGST AT'="DISCO NTINUED",$ G(CLOZFLG)  D  I $G(A NQX) Q
  12903   "RTN","PSG OEF",96,0)
  12904    .N PSGDRG  S PSGDRG= $P(CLOZFLG ,U,2)
  12905   "RTN","PSG OEF",97,0)
  12906    .S ANQX=0  D CLOZ^PS JCLOZ(PSGP ,PSGDRG)
  12907   "RTN","PSG OEF",98,0)
  12908    .I $G(ANQ X) K DIR S  DIR(0)="E " D ^DIR K  DIR
  12909   "RTN","PSG OEF",99,0)
  12910    ;; END NC C REMEDIAT ION << 327 *RJS
  12911   "RTN","PSG OEF",100,0 )
  12912    I '$D(IOI NORM)!('$D (IOINHI))  S X="IORVO FF;IORVON; IOINHI;IOI NORM" D EN DR^%ZISS
  12913   "RTN","PSG OEF",101,0 )
  12914    I $G(PSJC OM)'="",$G (PSJCT1)=1  D
  12915   "RTN","PSG OEF",102,0 )
  12916    . D OVERL AP^PSGOEF2  I $G(PSJO VRLP)=1 D
  12917   "RTN","PSG OEF",103,0 )
  12918    . . N X,X 1,DIR
  12919   "RTN","PSG OEF",104,0 )
  12920    . . W !!, "**WARNING **"
  12921   "RTN","PSG OEF",105,0 )
  12922    . . W !," The highli ghted admi n times fo r these po rtions of  this compl ex order o verlap.",! !
  12923   "RTN","PSG OEF",106,0 )
  12924    . . S (X, X1)="" F   S X=$O(^TM P("PSJATOV R",$J,X))  Q:X=""  D
  12925   "RTN","PSG OEF",107,0 )
  12926    . . . S X 1=$G(^TMP( "PSJATOVR" ,$J,X))
  12927   "RTN","PSG OEF",108,0 )
  12928    . . . W $ S($P(X1,"^ ",4)=1:IOR VON,1:""), "Part "_X, IORVOFF,"  has a sche dule of "_ $P(X1,"^", 2)_" and a dmin time( s) of "
  12929   "RTN","PSG OEF",109,0 )
  12930    . . . W $ S($P(X1,"^ ",4)=1:IOR VON,1:""), $P(X1,"^", 3),IORVOFF
  12931   "RTN","PSG OEF",110,0 )
  12932    . . . W !
  12933   "RTN","PSG OEF",111,0 )
  12934    . . . W $ S($G(PSJOV R("CONJ",X ))="A":"AN D",$G(PSJO VR("CONJ", X))="T":"T HEN",1:"") ,!
  12935   "RTN","PSG OEF",112,0 )
  12936    . . W !," Please ens ure the sc hedules an d administ ration tim es are app ropriate." ,!
  12937   "RTN","PSG OEF",113,0 )
  12938    . . S DIR (0)="EA",D IR("A")="P ress Retur n to conti nue..." D  ^DIR W !
  12939   "RTN","PSG OEF",114,0 )
  12940    K ^TMP("P SJATOVR",$ J)
  12941   "RTN","PSG OEF",115,0 )
  12942    I $G(PSJP ROT)=3,'$D (PSJTUD),' $$ENIVUD^P SGOEF1(PSG ORD) Q
  12943   "RTN","PSG OEF",116,0 )
  12944    I $G(PSGO SCH)]"" D   S:$G(PSGS 0XT)'="" $ P(^PS(53.1 ,+PSGORD,2 ),"^",6)=P SGS0XT
  12945   "RTN","PSG OEF",117,0 )
  12946    .N PSGOES ,PSGS0Y,PS GSCH S X=P SGOSCH K:$ G(PSJTUD)  NSFF D ENO S^PSGS0
  12947   "RTN","PSG OEF",118,0 )
  12948    .I '($G(P SGORD)["P" &($P($G(^P S(53.1,+PS GORD,0))," ^",24)="R" )) I $G(X) ]""&$G(PSG S0Y) S:$G( PSGAT)=""  PSGAT=PSGS 0Y
  12949   "RTN","PSG OEF",119,0 )
  12950    .I $G(PSJ NSS) S PSG OSCH="" K  PSJNSS
  12951   "RTN","PSG OEF",120,0 )
  12952    .I $G(PSG ORD)["P",$ G(PSGAT),$ G(PSGS0Y), ($G(PSGOSC H)]"") I P SGAT'=PSGS 0Y D
  12953   "RTN","PSG OEF",121,0 )
  12954    ..S PSGNS TAT=1 W $C (7),!!,"PL EASE NOTE:   This ord er's admin  times (", PSGAT,")"
  12955   "RTN","PSG OEF",122,0 )
  12956    ..W !?13, " do not m atch the w ard times  (",PSGS0Y, ")"
  12957   "RTN","PSG OEF",123,0 )
  12958    ..W !?13, " for this  administr ation sche dule (",PS GOSCH,")", !
  12959   "RTN","PSG OEF",124,0 )
  12960    ..S DIR(0 )="EA",DIR ("A")="Pre ss Return  to continu e..." D ^D IR K DIR   W !
  12961   "RTN","PSG OEF",125,0 )
  12962    I $G(PSGS 0XT)="" S  $P(^PS(53. 1,+PSGORD, 2),"^",6)= $S($P($G(Z ZND),"^",3 )'="":$P(Z ZND,"^",3) ,1:"")
  12963   "RTN","PSG OEF",126,0 )
  12964    S CHK=0 S :$P($G(^PS (53.1,+PSG ORD,0)),U, 24)'="R" P SGSI=$$ENP C^PSJUTL(" U",+PSJSYS P,180,PSGS I)
  12965   "RTN","PSG OEF",127,0 )
  12966    I '$G(PSJ TUD),$G(PS JNSS),($G( PSGOSCH)]" ") D NSSCO NT^PSGS0(P SGOSCH,PSG S0XT) K PS JNSS S PSG OSCH=""
  12967   "RTN","PSG OEF",128,0 )
  12968    S PSGOEFF =PSGOSCH=" "+('$O(^PS (53.45,PSJ SYSP,2,0)) *10)
  12969   "RTN","PSG OEF",129,0 )
  12970    I PSGOEFF  S X=$S(PS GOEFF#2:"  a SCHEDULE ",1:"")_$S (PSGOEFF=1 1:" and",1 :"")_$S(PS GOEFF>9:"  at least o ne DISPENS E DRUG",1: "")
  12971   "RTN","PSG OEF",130,0 )
  12972    I 'PSGOEF F I (($G(P SGS0XT)="D ")&($G(PSG AT)="")) S  X=" Admin  Times",PS GOEFF=1,PS GOEF39=1
  12973   "RTN","PSG OEF",131,0 )
  12974    ; *315 DR P If remov al flag in  50.7 is a  2 or a 3  then order  must be r eviewed an d removal  times ente red if req uired.
  12975   "RTN","PSG OEF",132,0 )
  12976    S PSGRF=$ $GET1^DIQ( 50.7,$G(PS GPDRG),12, "I")
  12977   "RTN","PSG OEF",133,0 )
  12978    ; Abort F inish proc ess if no  Stop Date  entered ($ G(PSJRMABT ))
  12979   "RTN","PSG OEF",134,0 )
  12980    I $G(PSGR F),$G(PSGD UR)="",'$G (PSGRMV),$ $FIND1^DIC (51.1,""," X",$G(PSGS CH)) S PSJ RMABT=0 D   I PSJRMAB T D ABORTA CC Q
  12981   "RTN","PSG OEF",135,0 )
  12982    . N PSGTM PST S PSGT MPST=$S($G (PSGST)="R ":$$GET1^D IQ(51.1,$$ FIND1^DIC( 51.1,,"X", PSGSCH),5, "I"),1:$G( PSGST)) ;H andle "Fil l on Reque st"
  12983   "RTN","PSG OEF",136,0 )
  12984    . I ($G(P SGTMPST)'= "O"),($G(P SGTMPST)'= "P"),($G(P SGTMPST)'= "OC"),+$G( PSGRF)>1 S  X="",PSGO EFF=1,PSGO EF39=1
  12985   "RTN","PSG OEF",137,0 )
  12986    . I $G(PS GTMPST)="O " S (PSGFD N,PSGFD)=" " D 
  12987   "RTN","PSG OEF",138,0 )
  12988    .. S F1=5 3.1,MSG=0, Y=$T(35),@ ("PSGFN(35 )="_$P(Y," ;",7)),PSG OEEF(+$P(Y ,";",3))=1 ,(PSGOEE,P SGOEEF)=1  W ! D @$P( $T(35),";" ,3) S CHK= 0 I 'PSGOE E S PSJRMA BT=1
  12989   "RTN","PSG OEF",139,0 )
  12990    .. W:PSJR MABT $C(7) ,!!,"INVAL ID STOP DA TE"  S DIR (0)="EA",D IR("A")="P ress Retur n to conti nue..." D  ^DIR K DIR   W !
  12991   "RTN","PSG OEF",140,0 )
  12992    ..Q
  12993   "RTN","PSG OEF",141,0 )
  12994    .Q
  12995   "RTN","PSG OEF",142,0 )
  12996    ;
  12997   "RTN","PSG OEF",143,0 )
  12998    I PSGOEFF ,X]"" S X= X_" before  it can be  finished. "
  12999   "RTN","PSG OEF",144,0 )
  13000    I PSGOEFF ,X]"" S CH K=1 W $C(7 ),!!,"PLEA SE NOTE: T his order  must have"  F Q=1:1:$ L(X," ") S  Y=$P(X,"  ",Q) W:$L( Y)+$X>78 !  W Y," "
  13001   "RTN","PSG OEF",145,0 )
  13002    I $G(PSGO EF39) S PS GOEE=0,PSG OEFF=0 D   I 'PSGOEE  D REFRESH^ VALM G DON E
  13003   "RTN","PSG OEF",146,0 )
  13004    .S F1=53. 1,MSG=0,Y= $T(39),@(" PSGFN(39)= "_$P(Y,";" ,7)),PSGOE EF(+$P(Y," ;",3))=1,( PSGOEEF,PS GOEE)=1 W  ! D @$P($T (39),";",3 ) S CHK=0
  13005   "RTN","PSG OEF",147,0 )
  13006    .I $G(PSG RMVT),'PSG OEE D INIT ^PSJLMUDE( $G(PSGP),$ G(PSGORD))  ;*315 IF  REMOVE TIM E SET THEN  REDISPLAY  DETAIL
  13007   "RTN","PSG OEF",148,0 )
  13008    .Q
  13009   "RTN","PSG OEF",149,0 )
  13010    I PSGOEFF =1 S F1=53 .1,MSG=0,Y =$T(38),@( "PSGFN(38) ="_$P(Y,"; ",7)),PSGO EEF(+$P(Y, ";",3))=1, (PSGOEE,PS GOEEF)=1 W  ! D @$P($ T(38),";", 3) S CHK=0  G:'PSGOEE  DONE
  13011   "RTN","PSG OEF",150,0 )
  13012    I PSGOEFF =11 S F1=5 3.1,MSG=0, Y=$T(32),@ ("PSGFN(32 )="_$P(Y," ;",7)),PSG OEEF(+$P(Y ,";",3))=1 ,(PSGOEE,P SGOEEF)=1  W ! D @$P( $T(32),";" ,3) D  G:' PSGOEE DON E
  13013   "RTN","PSG OEF",151,0 )
  13014    .S F1=53. 1,MSG=0,Y= $T(38),@(" PSGFN(38)= "_$P(Y,";" ,7)),PSGOE EF(+$P(Y," ;",3))=1,( PSGOEE,PSG OEEF)=1 W  ! D @$P($T (38),";",3 ) S CHK=0
  13015   "RTN","PSG OEF",152,0 )
  13016    I PSGOEFF >9 S CHK=7  D ENDRG^P SGOEF1(+PS GPD,0) I C HK D ABORT ACC Q
  13017   "RTN","PSG OEF",153,0 )
  13018    I 'PSGOEF F D OC531^ PSGOESF ;  check ever y dispense  drug from  CPRS
  13019   "RTN","PSG OEF",154,0 )
  13020    S VALMBG= 1
  13021   "RTN","PSG OEF",155,0 )
  13022    I 'PSGOEF F&($D(PSGO RQF)) D RE ^VALM4 Q
  13023   "RTN","PSG OEF",156,0 )
  13024    I $G(MSG)  K DIR S D IR(0)="E"  W !! D ^DI R
  13025   "RTN","PSG OEF",157,0 )
  13026    I PSGOEFF  D:PSGST=" " GTST^PSG OE6(+PSGOR D)
  13027   "RTN","PSG OEF",158,0 )
  13028    S PSJLMFI N=1
  13029   "RTN","PSG OEF",159,0 )
  13030    K PSJACEP T I $O(^PS (53.1,+PSG ORD,12,0))  S PSJLMP2 =1
  13031   "RTN","PSG OEF",160,0 )
  13032    S PSGOEEN O=0,PSGSTA T=$S($P(PS JSYSP0,U,9 ):"ACTIVE" ,1:"NON-VE RIFIED")
  13033   "RTN","PSG OEF",161,0 )
  13034    NEW PSJDO SE,PSJDOX, PSJDSFLG
  13035   "RTN","PSG OEF",162,0 )
  13036    D DOSECHK ^PSJDOSE
  13037   "RTN","PSG OEF",163,0 )
  13038    S:+$G(PSJ DSFLG) VAL MSG="Dosag e Ordered  & Dispense  Drug are  not compat ible"
  13039   "RTN","PSG OEF",164,0 )
  13040    I PSGODO= PSGDO S PS GOEEF(109) =""
  13041   "RTN","PSG OEF",165,0 )
  13042    I PSGODO' =PSGDO S P SGOEENO=1, VALMSG="Th is change  will cause  a new ord er to be c reated  "
  13043   "RTN","PSG OEF",166,0 )
  13044    ;I $G(PSG PDN)["CLOZ ",+$G(PSGC OMP) D COM PLEX^PSJCL OZ  ;; RJS *327
  13045   "RTN","PSG OEF",167,0 )
  13046    D EN^VALM ("PSJU LM  ACCEPT")
  13047   "RTN","PSG OEF",168,0 )
  13048    I $G(PSJN SS) D  S P SGOEEF(26) ="" K PSJA CEPT,PSJNS S
  13049   "RTN","PSG OEF",169,0 )
  13050    .K DIR S  DIR(0)="FO A",DIR("A" )="Invalid  Schedule"  D ^DIR K  DIR
  13051   "RTN","PSG OEF",170,0 )
  13052    I $G(PSGS 0XT)="D",' $G(PSGS0Y) ,'$G(PSGAT ),((",P,R, ")'[(","_$ G(PSGST)_" ,")) D  S  PSGOEEF(39 )="" K PSJ ACEPT
  13053   "RTN","PSG OEF",171,0 )
  13054    .K DIR S  DIR(0)="FO A",DIR("A" )="   WARN ING - Admi n times ar e required  for DAY O F WEEK sch edules  "  D ^DIR K D IR
  13055   "RTN","PSG OEF",172,0 )
  13056    ;***PSJ*5 *113
  13057   "RTN","PSG OEF",173,0 )
  13058    ;; START  NCC REMEDI ATION >> 3 27*RJS
  13059   "RTN","PSG OEF",174,0 )
  13060    I $G(PSJA CEPT) D  I  $G(PSGORQ F) D ABORT ACC Q
  13061   "RTN","PSG OEF",175,0 )
  13062    .I $G(PSG CLZ)!(+$G( PSGRDTX))  D
  13063   "RTN","PSG OEF",176,0 )
  13064    ..I $G(CL OZFLG) D
  13065   "RTN","PSG OEF",177,0 )
  13066    ...S DIR( 0)="N^12.5 :3000:1",D IR("A")="C LOZAPINE d osage (mg/ day) ? " D  ^DIR K DI R I $D(DIR UT) S (CHK ,PSGORQF)= 1 Q  ;G DO NE:$G(CHK)
  13067   "RTN","PSG OEF",178,0 )
  13068    ...S (^TM P("PSJCOM" ,$J,+PSGOR D,"SAND"), PSOSAND)=X
  13069   "RTN","PSG OEF",179,0 )
  13070    ...D CLOZ PAT^PSJCLO Z
  13071   "RTN","PSG OEF",180,0 )
  13072    ...S X1=P SGSD,X2=$S ($G(CLOZPA T)=2:28,$G (CLOZPAT)= 1:14,$G(CL OZPAT)=0:7 ,$G(CLOZPA T)=3:4,1:9 0)
  13073   "RTN","PSG OEF",181,0 )
  13074    ...D C^%D TC I $G(PS GFD),$G(PS GFD)'>X Q   ; added b y MZR to n ot overrid e an exist ing Stop D ate/Time
  13075   "RTN","PSG OEF",182,0 )
  13076    ...S PSGF D=X,PSGFDN =$$ENDD^PS GMI(PSGFD) _"^"_$$END TC^PSGMI(P SGFD)
  13077   "RTN","PSG OEF",183,0 )
  13078    ;; END NC C REMEDIAT ION >> 327 *RJS
  13079   "RTN","PSG OEF",184,0 )
  13080    I $G(PSGA T)="",(PSG ST="C"!(PS GST="R"))  D
  13081   "RTN","PSG OEF",185,0 )
  13082    .I $G(PSG S0XT) Q:$$ ODD^PSGS0( PSGS0XT)
  13083   "RTN","PSG OEF",186,0 )
  13084    .Q:$$PRNO K^PSGS0($G (PSGSCH))
  13085   "RTN","PSG OEF",187,0 )
  13086    .Q:($P($G (ZZND),"^" ,5)'="C")
  13087   "RTN","PSG OEF",188,0 )
  13088    .K PSJACE PT
  13089   "RTN","PSG OEF",189,0 )
  13090    .K DIR S  DIR(0)="FO A",DIR("A" )="  WARNI NG - Admin  times are  required  for CONTIN UOUS order s " D ^DIR  K DIR
  13091   "RTN","PSG OEF",190,0 )
  13092    ;***
  13093   "RTN","PSG OEF",191,0 )
  13094    I '$G(PSJ ACEPT) D A BORTACC Q
  13095   "RTN","PSG OEF",192,0 )
  13096    I $G(PSJR NF),$G(^PS (53.1,+PSG ORD,4)) D
  13097   "RTN","PSG OEF",193,0 )
  13098    . W $C(7) ,!!,"ACCEP TING THIS  ORDER WILL  CHANGE TH E STATUS T O ACTIVE."
  13099   "RTN","PSG OEF",194,0 )
  13100    . S DIR(0 )="Y",DIR( "A")="Do y ou wish to  make this  order Act ive",DIR(" ?",1)="Ent er ""N"" i f you wish  to exit w ithout Act ivating th is order,"
  13101   "RTN","PSG OEF",195,0 )
  13102    . S DIR(" ?")="or "" Y"" to con tinue with  the Activ ation proc ess." D ^D IR S:'Y Y= -1 K DIR
  13103   "RTN","PSG OEF",196,0 )
  13104    I $G(PSJR NF),$G(Y)= -1 S PSJAC EPT=0 D AB ORTACC Q
  13105   "RTN","PSG OEF",197,0 )
  13106    I $G(PSJR NF),$G(Y)= 1 S PSGOEA V=1
  13107   "RTN","PSG OEF",198,0 )
  13108    I $G(PSGE DTOI) D OC ^PSJOE1
  13109   "RTN","PSG OEF",199,0 )
  13110    I $S($G(P SGORQF):0, $G(PSGEDTO I):0,$G(PS GOEER)["10 9^PSGOE8": 1,$G(PSGOE ER)["3^PSG OE8":1,$G( PSGOEER)[" 26^PSGOE8" :1,$G(PSGO EER)["10^P SGOE81":1, $G(PSGOEER )["25^PSGO E81":1,1:0 ) D
  13111   "RTN","PSG OEF",200,0 )
  13112    . NEW PSJ DD S PSJDD =+$$DD53P4 5^PSJMISC( )
  13113   "RTN","PSG OEF",201,0 )
  13114    . D:$G(PS JDD) IN^PS JOCDS($G(P SGORD),"UD ",PSJDD)
  13115   "RTN","PSG OEF",202,0 )
  13116    I $G(PSGO RQF) S PSG OEENO=0,PS JACEPT=0
  13117   "RTN","PSG OEF",203,0 )
  13118    I PSGOEEN O S PSJNOO =$$ENNOO^P SJUTL5("E" ),PSJACEPT =$S(PSJNOO <0:0,1:1)
  13119   "RTN","PSG OEF",204,0 )
  13120   ACCEPT ;
  13121   "RTN","PSG OEF",205,0 )
  13122    N PSGUDFI N S PSGUDF IN=1
  13123   "RTN","PSG OEF",206,0 )
  13124    S VALMBCK =$S($G(PSJ ACEPT):"Q" ,1:"R")
  13125   "RTN","PSG OEF",207,0 )
  13126    I '$G(PSJ ACEPT) D A BORTACC Q
  13127   "RTN","PSG OEF",208,0 )
  13128    K PSGOES, PSGRSD,PSG RSDN D:PSG OEENO NEW3 ^PSGOEE D: 'PSGOEENO  UPD^PSGOEF 1 I $D(PSG OEF)!PSGOE ENO S PSGC ANFL=-1
  13129   "RTN","PSG OEF",209,0 )
  13130    ;saves dr ug allergy  signs/sym ptoms PSJ* 5*260
  13131   "RTN","PSG OEF",210,0 )
  13132    I $D(^TMP ("PSODAOC" ,$J,"ALLER GY")) D
  13133   "RTN","PSG OEF",211,0 )
  13134    .N DA,OCC DT,ORN,ORL ,Z,RET,PSJ DAOC
  13135   "RTN","PSG OEF",212,0 )
  13136    .S PSJDAO C="IP "_$S ($G(PSGORD )["P":"Pen ding/Non-V erified",$ G(PSGORD)[ "U":"Unit  Dose",$G(P SGORD)["V" :"IV",1:"" )_" Allerg y",OCCDT=$ $NOW^XLFDT
  13137   "RTN","PSG OEF",213,0 )
  13138    .I PSGORD ["P" S ORN =$P(^PS(53 .1,+PSGORD ,0),U,21)
  13139   "RTN","PSG OEF",214,0 )
  13140    .I PSGORD ["U" S ORN =$P(^PS(55 ,DFN,5,+PS GORD,0),U, 21)
  13141   "RTN","PSG OEF",215,0 )
  13142    .I PSGORD ["V" S ORN =$P(^PS(55 ,DFN,"IV", +PSGORD,0) ,U,21)
  13143   "RTN","PSG OEF",216,0 )
  13144    .Q:'$G(OR N)
  13145   "RTN","PSG OEF",217,0 )
  13146    . S PSJAG YSV=1 ;use  in ^PSJOE  to store  allergy (a lso clean  up this va r)
  13147   "RTN","PSG OEF",218,0 )
  13148    D DONE1^P SGOEE
  13149   "RTN","PSG OEF",219,0 )
  13150    D DONE
  13151   "RTN","PSG OEF",220,0 )
  13152    Q
  13153   "RTN","PSG OEF",221,0 )
  13154   BYPASS ;
  13155   "RTN","PSG OEF",222,0 )
  13156    S PSGCANF L=1
  13157   "RTN","PSG OEF",223,0 )
  13158    ;
  13159   "RTN","PSG OEF",224,0 )
  13160   DONE ;
  13161   "RTN","PSG OEF",225,0 )
  13162    K CHK,DA, DIE,DR,DRG ,MSG,Q1,Q2 ,PSGNSTAT, PSGEDTOI,P SGOEER,ZZN D
  13163   "RTN","PSG OEF",226,0 )
  13164    K PSJOVR
  13165   "RTN","PSG OEF",227,0 )
  13166    Q
  13167   "RTN","PSG OEF",228,0 )
  13168   ABORTACC ;  Abort Acc ept proces s.
  13169   "RTN","PSG OEF",229,0 )
  13170    ;*315
  13171   "RTN","PSG OEF",230,0 )
  13172    K PSGDUR, PSGRMVT,PS GRMV,PSGRF
  13173   "RTN","PSG OEF",231,0 )
  13174    K PSJCT1, PSJOVR,PSJ OVRLP,PSJC T1A K ^TMP ("PSODAOC" ,$J)  ;,^T MP("PSGCPL X",$J,$G(D FN))
  13175   "RTN","PSG OEF",232,0 )
  13176    D ABORT^P SGOEE K PS GOEEF D GE TUD^PSJLMG UD(PSGP,PS GORD),^PSG OEF,ENSFE^ PSGOEE0(PS GP,PSGORD) ,INIT^PSJL MUDE(PSGP, PSGORD) S  VALMBCK="R ",PSGSD=PS GNESD,PSGF D=PSGNEFD  Q
  13177   "RTN","PSG OEF",233,0 )
  13178    ;
  13179   "RTN","PSG OEF",234,0 )
  13180    ;
  13181   "RTN","PSG OEF",235,0 )
  13182   31 ;;101^P SGOE8;PSGO PD;PSGPD;1 01;1
  13183   "RTN","PSG OEF",236,0 )
  13184   32 ;;109^P SGOE8;PSGO DO;PSGDO;1 09;PSGODO] ""
  13185   "RTN","PSG OEF",237,0 )
  13186   33 ;;10^PS GOE81;PSGO SD;PSGSD;1 0;0
  13187   "RTN","PSG OEF",238,0 )
  13188   34 ;;3^PSG OE8;PSGOMR ;PSGMR;3;1
  13189   "RTN","PSG OEF",239,0 )
  13190   35 ;;25^PS GOE81;PSGO FD;PSGFD;2 5;0
  13191   "RTN","PSG OEF",240,0 )
  13192   36 ;;7^PSG OE8;PSGOST ;PSGST;7;0
  13193   "RTN","PSG OEF",241,0 )
  13194   37 ;;5^PSG OE82;PSGOS M;PSGSM;5; 0
  13195   "RTN","PSG OEF",242,0 )
  13196   38 ;;26^PS GOE8;PSGOS CH;PSGSCH; 26;1      
  13197   "RTN","PSG OEF",243,0 )
  13198   39 ;;39^PS GOE81;PSGO AT;PSGAT;3 9;0
  13199   "RTN","PSG OEF",244,0 )
  13200   310 ;;1^PS GOE82;PSGO PR;PSGPR;1 ;1
  13201   "RTN","PSG OEF",245,0 )
  13202   311 ;;8^PS GOE81;PSGO SI;PSGSI;8 ;0
  13203   "RTN","PSG OEF",246,0 )
  13204   312 ;;2^PS GOE82;;;2; 0
  13205   "RTN","PSG OEF",247,0 )
  13206   313 ;;40^P SGOE82;;;4 0;0
  13207   "RTN","PSG OEF",248,0 )
  13208    ;
  13209   "RTN","PSG OEF",249,0 )
  13210   AH ;
  13211   "RTN","PSG OEF",250,0 )
  13212    W !!?2,"A nswer 'YES ' to accep t this ord er as a NO N-VERIFIED  UNIT DOSE  order.  A nswer",!," 'NO' to ed it this or der now.   Enter '^'  to BYPASS  this order , leaving  it as",!," a PENDING  INPATIENT  order."
  13213   "RTN","PSG OEF",251,0 )
  13214    Q
  13215   "RTN","PSG OER")
  13216   0^13^B9073 6774
  13217   "RTN","PSG OER",1,0)
  13218   PSGOER ;BI R/CML3 - R ENEW A SIN GLE ORDER  ;Jul 26, 2 017@18:04: 02
  13219   "RTN","PSG OER",2,0)
  13220    ;;5.0;INP ATIENT MED ICATIONS ; **11,30,29 ,35,70,58, 95,110,111 ,133,141,1 98,181,246 ,278,281,3 15,338,327 **;16 DEC  97;Build 6 4
  13221   "RTN","PSG OER",3,0)
  13222    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  13223   "RTN","PSG OER",4,0)
  13224    ;
  13225   "RTN","PSG OER",5,0)
  13226    ; Referen ce to ^PS( 51.1 suppo rted by DB IA 2177.
  13227   "RTN","PSG OER",6,0)
  13228    ; Referen ce to ^PS( 55 support ed by DBIA  2191.
  13229   "RTN","PSG OER",7,0)
  13230    ; Referen ce to ^PSS LOCK is su pported by  DBIA 2789 .
  13231   "RTN","PSG OER",8,0)
  13232    ; Referen ce to ^PSB APIPM is s upported b y DBIA 356 4.
  13233   "RTN","PSG OER",9,0)
  13234    ; Referen ce to ^PS( 59.7 is su pported by  DBIA 2181 .
  13235   "RTN","PSG OER",10,0)
  13236    ; Referen ce to ^PSD RUG( is su pported by  DBIA 2192 .
  13237   "RTN","PSG OER",11,0)
  13238    ; Referen ce to ^TMP ("PSODAOC" ,$J is sup ported by  DBIA 6071.
  13239   "RTN","PSG OER",12,0)
  13240    ;
  13241   "RTN","PSG OER",13,0)
  13242    ; renew a  single or der
  13243   "RTN","PSG OER",14,0)
  13244    I $G(PSJC OM) D ^PSJ COMR Q
  13245   "RTN","PSG OER",15,0)
  13246    N PSJEXPI R S PSJEXP IR=$$EXPIR ED(PSGP,PS GORD) I PS JEXPIR D   Q
  13247   "RTN","PSG OER",16,0)
  13248    .W !!?3,"   THIS ORD ER" W:PSJE XPIR'=2 "  HAS BEEN I NACTIVE FO R ONE OR M ORE SCHEDU LED",!?8,"  ADMINISTR ATIONS AND "
  13249   "RTN","PSG OER",17,0)
  13250    .W " CANN OT BE RENE WED!" D PA USE^VALM1
  13251   "RTN","PSG OER",18,0)
  13252    I $G(PSGS CH)]"",($G (PSGS0XT)= "D"),($G(P SGAT)="")  D  Q
  13253   "RTN","PSG OER",19,0)
  13254    .N SWD,SD W,XABB,X,Q X S X=$G(P SGSCH) D D W^PSGS0 Q: ($G(X)="")   I $G(PSG S0XT)="" S  PSGS0XT=" D"
  13255   "RTN","PSG OER",20,0)
  13256    .Q:((",P, R,")[(","_ $G(PSGST)_ ","))
  13257   "RTN","PSG OER",21,0)
  13258    .I $G(PSG S0XT)="D", $G(PSGAT)= "" S CHK=1  W !!?3,"T his order  contains a  'DAY OF T HE WEEK' s chedule wi thout admi n times"
  13259   "RTN","PSG OER",22,0)
  13260    .W !?11,"  and CANNO T be renew ed!" D PAU SE^VALM1
  13261   "RTN","PSG OER",23,0)
  13262    I $G(PSGS CH)]"",'$$ DOW^PSIVUT L(PSGSCH), '$$PRNOK^P SGS0(PSGSC H) I '$D(^ PS(51.1,"A C","PSJ",P SGSCH)) D   Q
  13263   "RTN","PSG OER",24,0)
  13264    .W !!?3," This order  contains  an invalid  schedule  and CANNOT  be renewe d!" D PAUS E^VALM1
  13265   "RTN","PSG OER",25,0)
  13266    W !! K DI R S DIR(0) ="Y",DIR(" A")=$S($P( PSJSYSP0," ^",3):"REN EW THIS OR DER",1:"MA RK THIS OR DER FOR RE NEWAL"),DI R("B")="YE S"
  13267   "RTN","PSG OER",26,0)
  13268    S DIR("?" )="Answer  'YES' to " _$S($P(PSJ SYSP0,"^", 3):"renew  this order ",1:"mark  this order  for renew al")_".  A nswer 'NO'  (or '^')  to stop no w." D ^DIR
  13269   "RTN","PSG OER",27,0)
  13270    I '$D(DIR UT),Y D NE W S PSGCAN FL=1 D DON E Q
  13271   "RTN","PSG OER",28,0)
  13272    I '$D(DIR UT),PSJSYS U S PSGND4 =$G(^PS(55 ,PSGP,5,+P SGORD,4))  I $P(PSGND 4,"^",15), $P(PSGND4, "^",16) D  UNMARK,DON E Q
  13273   "RTN","PSG OER",29,0)
  13274    D DONE,AB ORT^PSGOEE
  13275   "RTN","PSG OER",30,0)
  13276    Q
  13277   "RTN","PSG OER",31,0)
  13278    ;
  13279   "RTN","PSG OER",32,0)
  13280   UNMARK ;  
  13281   "RTN","PSG OER",33,0)
  13282    W !!,"THI S ORDER HA S BEEN 'MA RKED FOR R ENEWAL'.", ! K DIR S  DIR(0)="Y" ,DIR("A")= "DO YOU WA NT TO 'UNM ARK IT'",D IR("B")="N O"
  13283   "RTN","PSG OER",34,0)
  13284    S DIR("?" ,1)="  Ans wer 'YES'  to unmark  this order .  Answer  'NO' (or ' ^') to lea ve the ord er",DIR("? ")="marked .  (An ans wer is req uired.)" D  ^DIR
  13285   "RTN","PSG OER",35,0)
  13286    I 'Y D AB ORT^PSGOEE  G DONE
  13287   "RTN","PSG OER",36,0)
  13288    S DA(1)=P SGP,DA=+PS GORD,PSGAL ("C")=2118 0+PSJSYSU  D ^PSGAL5  S $P(PSGND 4,"^",15,1 7)="^^",^P S(55,PSGP, 5,DA,4)=PS GND4 W ".. .DONE!"
  13289   "RTN","PSG OER",37,0)
  13290    ;
  13291   "RTN","PSG OER",38,0)
  13292   DONE ;
  13293   "RTN","PSG OER",39,0)
  13294    K %DT,DA, DIE,DIR,DR ,FDSD,PSGA L,PSGALR,P SGDL,PSGDL S,PSGFD,PS GFOK,PSGND 4,PSGOEE,P SGOER0,PSG OER1,PSGOE R2,PSGOERD P,PSGPOSA, PSGPOSD,PS GPR,PSGPX, PSGRD,PSGS D,PSGTOL,P SGTOO,PSGU OW,PSGWLL, RF Q
  13295   "RTN","PSG OER",40,0)
  13296    ;
  13297   "RTN","PSG OER",41,0)
  13298   NEW ; get  info, writ e record
  13299   "RTN","PSG OER",42,0)
  13300   EXTEND ; e xtend stop  date on r enewal ord er
  13301   "RTN","PSG OER",43,0)
  13302    N DUOUT,P SJABT,PSGD RG,PSJREN, PSGOREAS S  PSGDRG=$P ($G(^PS(55 ,PSGP,5,+P SGORD,1,1, 0)),"^"),P SJREN=1
  13303   "RTN","PSG OER",44,0)
  13304    I $G(PSGS T)="O" N A CT S ACT=$ $EN^PSBAPI PM(PSGP,PS GORD) I $P (ACT,"^",2 ),($P(ACT, "^",3)="G" ) I $P(ACT ,"^",2)>$P ($G(^PS(55 ,PSGP,5,+P SGORD,2)), "^",2) D   Q
  13305   "RTN","PSG OER",45,0)
  13306    . W !!?5, "THIS ONE- TIME ORDER  HAS ALREA DY BEEN GI VEN AND CA NNOT BE RE NEWED",! S  (DIRUT,PS GORQF)=1 D  READ
  13307   "RTN","PSG OER",46,0)
  13308    ;D OC55
  13309   "RTN","PSG OER",47,0)
  13310    ;Q:$D(PSG ORQF)  ; q uit if not  to contin ue
  13311   "RTN","PSG OER",48,0)
  13312    ;; START  NCC T4 MOD S >> 327*R JS
  13313   "RTN","PSG OER",49,0)
  13314    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, PSGP,+PSGO RD) I CLOZ FLG D
  13315   "RTN","PSG OER",50,0)
  13316    .N PSGDRG ,PSGPR S P SGDRG=$P(C LOZFLG,U,2 ),PSGPR=PS GOPR D CLO Z^PSJCLOZ( DFN,PSGDRG ) S:$G(ANQ X) PSGCANF L=1
  13317   "RTN","PSG OER",51,0)
  13318    ;; END NC C T4 MODS  >> 327*RJS
  13319   "RTN","PSG OER",52,0)
  13320    D NOW^%DT C S PSGDT= %,PSGND4=$ G(^PS(55,P SGP,5,+PSG ORD,4)) I  '$P(PSJSYS P0,"^",3)  D MARK Q
  13321   "RTN","PSG OER",53,0)
  13322    S PSGWLL= $S('$P(PSJ SYSW0,"^", 4):0,1:+$G (^PS(55,PS GP,5.1))), PSGOEE="R"  K PSGOEOS
  13323   "RTN","PSG OER",54,0)
  13324    K ^PS(53. 45,PSJSYSP ,1),^(2) D  MOVE(3,1) ,MOVE(1,2)
  13325   "RTN","PSG OER",55,0)
  13326    D DATE^PS GOER0(PSGP ,PSGORD,PS GDT) I ($G (X)="^")!' $D(PSGFOK( 106))!$G(D UOUT) D DO NE,ABORT^P SGOEE S VA LMBCK="R", COMQUIT=1  Q
  13327   "RTN","PSG OER",56,0)
  13328    ;D OC55
  13329   "RTN","PSG OER",57,0)
  13330    ;I $G(PSG ORQF) D DO NE,ABORT^P SGOEE S VA LMBCK="R", COMQUIT=1  Q
  13331   "RTN","PSG OER",58,0)
  13332   SPEED ;
  13333   "RTN","PSG OER",59,0)
  13334    I +$G(PSJ SYSU)=3 D  EN^PSGPEN( PSGORD)
  13335   "RTN","PSG OER",60,0)
  13336    Q:$G(DUOU T)
  13337   "RTN","PSG OER",61,0)
  13338    N PSGOEAV  S PSGOEAV =+PSJSYSU
  13339   "RTN","PSG OER",62,0)
  13340    W !!,"... updating o rder..." K  DA S DA(1 )=PSGP,DA= +PSGORD,PS GAL("C")=P SJSYSU*10+ 18000 D ^P SGAL5 W ". "
  13341   "RTN","PSG OER",63,0)
  13342    I $$LS^PS SLOCK(PSGP ,PSGORD) D  UPDREN(PS GORD,PSGDT ,PSGOEPR,P SGOFD,PSJN OO),UPDREN OE(PSGP,PS GORD,PSGDT ) D UNL^PS SLOCK(PSGP ,PSGORD)
  13343   "RTN","PSG OER",64,0)
  13344    S ^TMP("P SODAOC",$J ,"IP IEN") =PSGORD    ;set up wh ich IEN wi ll be used  to store  order chec ks
  13345   "RTN","PSG OER",65,0)
  13346    D SETOC^P SJNEWOC(PS GORD) ;PSJ *5*281 sto res order  checks
  13347   "RTN","PSG OER",66,0)
  13348    K ^TMP("P SODAOC",$J ),^TMP("PS JDAOC",$J)
  13349   "RTN","PSG OER",67,0)
  13350    ;
  13351   "RTN","PSG OER",68,0)
  13352    I 'PSGOER DP,$P(PSJS YSW0,"^",4 ),PSGFD'<P SGWLL S $P (^PS(55,PS GP,5.1),"^ ")=+PSGFD
  13353   "RTN","PSG OER",69,0)
  13354    W ".DONE! " S VALMBC K="Q" Q
  13355   "RTN","PSG OER",70,0)
  13356    ;
  13357   "RTN","PSG OER",71,0)
  13358   MARK ;
  13359   "RTN","PSG OER",72,0)
  13360    I $P(PSGN D4,"^",15) ,$P(PSGND4 ,"^",16) W  $C(7),!!? 3,"...THIS  ORDER IS  ALREADY MA RKED FOR R ENEWAL!... " Q
  13361   "RTN","PSG OER",73,0)
  13362    K DA S $P (PSGND4,"^ ",15,17)=" 1^"_DUZ_"^ "_PSGDT,^P S(55,PSGP, 5,+PSGORD, 4)=PSGND4, PSGAL("C") =13180,DA( 1)=PSGP,DA =+PSGORD W  "." D ^PS GAL5
  13363   "RTN","PSG OER",74,0)
  13364    I $D(PSJS YSO) S PSG ORD=+PSGOR D_"A",PSGP OSA="R",PS GPOSD=PSGD T D ENPOS^ PSGVDS
  13365   "RTN","PSG OER",75,0)
  13366    Q
  13367   "RTN","PSG OER",76,0)
  13368   MOVE(X,Y)  ; Move com ments/disp ense drugs  from 55 t o 53.45.
  13369   "RTN","PSG OER",77,0)
  13370    S Q=0 F   S Q=$O(^PS (55,PSGP,5 ,+PSGORD,X ,Q)) Q:'Q   S ^PS(53. 45,PSJSYSP ,Y,Q,0)=$G (^(Q,0)) S  ^PS(53.45 ,PSJSYSP,Y ,0)="^53.4 50"_Y_"P^" _Q_U_Q
  13371   "RTN","PSG OER",78,0)
  13372    ;S:Q ^PS( 53.45,Y,0) ="^53.450" _Y_"P^"_Q_ U_Q
  13373   "RTN","PSG OER",79,0)
  13374    Q
  13375   "RTN","PSG OER",80,0)
  13376   OC55 ;* Or der checks  for Speed  finish an d regular  finish
  13377   "RTN","PSG OER",81,0)
  13378    ;PSJ*5*18 1 - no lon ger use (O C will be  triggered  from OC^PS GOER0)
  13379   "RTN","PSG OER",82,0)
  13380    Q
  13381   "RTN","PSG OER",83,0)
  13382   NEWOC55 ;
  13383   "RTN","PSG OER",84,0)
  13384    N INTERVE N,PSJDDI,P SJIREQ,PSJ RXREQ,PSJP DRG,PSJDD, PSJDD0,PSJ ALLGY
  13385   "RTN","PSG OER",85,0)
  13386    S Y=1,(PS JIREQ,PSJR XREQ,INTER VEN,X)=""
  13387   "RTN","PSG OER",86,0)
  13388    F PSGDDI= 0:0 S PSGD DI=$O(^PS( 55,PSGP,5, +PSGORD,1, PSGDDI)) Q :'+PSGDDI   D
  13389   "RTN","PSG OER",87,0)
  13390    . S PSJDD 0=$G(^PS(5 5,PSGP,5,+ PSGORD,1,P SGDDI,0))
  13391   "RTN","PSG OER",88,0)
  13392    . S PSJX= $P(PSJDD0, U,3) I PSJ X]"",(PSJX '>$G(PSGDT )) Q
  13393   "RTN","PSG OER",89,0)
  13394    . S PSJDD =+PSJDD0
  13395   "RTN","PSG OER",90,0)
  13396    . S PSJX= $S('$D(^PS DRUG(+PSJD D,0)):1,$P ($G(^(2)), U,3)'["U": 1,$G(^("I" ))="":0,1: ^("I")'>$G (PSGDT))
  13397   "RTN","PSG OER",91,0)
  13398    . Q:PSJX
  13399   "RTN","PSG OER",92,0)
  13400    . S PSJAL LGY(PSJDD) =""
  13401   "RTN","PSG OER",93,0)
  13402    S PSJDD=$ O(PSJALLGY (0))
  13403   "RTN","PSG OER",94,0)
  13404    I '+PSJDD  W !!,"No  active dis pense drug  was found " D PAUSE^ PSJLMUT1 Q
  13405   "RTN","PSG OER",95,0)
  13406    K PSGORQF  D ENDDC^P SGSICHK(PS GP,PSJDD)
  13407   "RTN","PSG OER",96,0)
  13408    D:'$G(PSG ORQF) IN^P SJOCDS(PSG ORD,"UD",P SJDD) Q:$G (PSGORQF)
  13409   "RTN","PSG OER",97,0)
  13410    Q
  13411   "RTN","PSG OER",98,0)
  13412   UPDREN(PSG ORD,RNWDT, PSGOEPR,PS GOFD,PSJNO O,RDUZ) ;  update ren ewed order
  13413   "RTN","PSG OER",99,0)
  13414    N DR,DA,D IC,DIE,DD, DO,PSGRZER O,PSGRFOUR ,PSGOORD
  13415   "RTN","PSG OER",100,0 )
  13416    S DR="",P SGOEENO=0, PSGOORD=PS GORD,PSGNE SD=PSGSD Q :'PSGORD!' RNWDT!'PSG OEPR!'PSGO FD  S PSJN OO=$S($G(P SJNOO)]"": $G(PSJNOO) ,1:"E")
  13417   "RTN","PSG OER",101,0 )
  13418    S PSGRZER O="^PS(55, "_PSGP_",5 ,"_+PSGORD _",0)",PSG OEORD=$P(@ PSGRZERO," ^",21)
  13419   "RTN","PSG OER",102,0 )
  13420    ; PSJ*5*1 41 - chang ed PSGOEPR  to PSGPR  for field  1 of the D R string b elow.
  13421   "RTN","PSG OER",103,0 )
  13422    S DA(1)=P SGP,DA=+PS GORD,DIE=" ^PS(55,"_P SGP_",5,"  S DR="34// //^S X=PSG FD" S:$G(P SGPR) DR=D R_";1////" _PSGPR_";1 10////"_PS JNOO D ^DI E
  13423   "RTN","PSG OER",104,0 )
  13424    K DR,DA,D IC,DIE,DD, DO S DIC=" ^PS(55,"_P SGP_",5,"_ +PSGORD_", 14,",DIC(0 )="L",DIC( "P")="55.6 114DA",ND1 4=$G(@(DIC _"0)")),DI NUM=$P(ND1 4,"^",3)+1 ,DA(2)=PSG P,DA(1)=+P SGORD D
  13425   "RTN","PSG OER",105,0 )
  13426    . S DIC(" DR")=".01/ ///"_$G(RN WDT)_";1// //"_$S($G( RDUZ):RDUZ ,1:$G(DUZ) )_";2////" _$G(PSGOEP R)_";3//// "_$G(PSGOF D)_";4//// "_+PSGOEOR D,X=$G(RNW DT) D FILE ^DICN
  13427   "RTN","PSG OER",106,0 )
  13428    K DR,DA,D IC,DIE,DD, DO S DA(1) =PSGP,DA=+ PSGORD,DIE ="^PS(55," _PSGP_",5, ",DR="28// //A;105/// /@;107//// @"
  13429   "RTN","PSG OER",107,0 )
  13430    ;PSJ*5*19 8
  13431   "RTN","PSG OER",108,0 )
  13432    S PSGRFOU R="^PS(55, "_PSGP_",5 ,"_+PSGORD _",4)",PSG RFOUR=@PSG RFOUR I $P (PSGRFOUR, "^",2)<RNW DT S DR=DR _";16////@ ;17////@"  I $G(PSJOR D)["P",+PS JSYSU=1 S  DR=DR_";18 ////@;19// //@"
  13433   "RTN","PSG OER",109,0 )
  13434    I '$G(PSJ SPEED) I $ G(PSGAT)]" ",$G(PSGAT )'=$P($G(@ (DIE_+PSGO RD_",2)")) ,"^",5) S  DR=DR_";41 ////"_PSGA T
  13435   "RTN","PSG OER",110,0 )
  13436    D ^DIE
  13437   "RTN","PSG OER",111,0 )
  13438    ; PSJ*5*2 78 - Check  to re-ass ign ordera ble item
  13439   "RTN","PSG OER",112,0 )
  13440    N PSGPOI  S PSGPOI=$ $ACTIVE^PS JORREN(PSG P,PSGORD)  Q:+PSGPOI= 1  ;Quit i f no chang e to OI
  13441   "RTN","PSG OER",113,0 )
  13442    I +PSGPOI >1,$P(PSGP OI,U,2) D   ;replace  OI
  13443   "RTN","PSG OER",114,0 )
  13444    . N DR,DA ,DIE S DA( 1)=PSGP,DA =+PSGORD,D IE="^PS(55 ,"_PSGP_", 5,",DR="10 8///^S X=$ P(PSGPOI,U ,2)" D ^DI E
  13445   "RTN","PSG OER",115,0 )
  13446    Q
  13447   "RTN","PSG OER",116,0 )
  13448   UPDRENOE(P SGP,PSGORD ,RDATE) ;
  13449   "RTN","PSG OER",117,0 )
  13450    D EXPOE(P SGP,PSGORD ,$G(RDATE) ) ; expire  original  Orders Fil e order
  13451   "RTN","PSG OER",118,0 )
  13452    I PSGORD' ["P" K DA, DR,DIE S D A(1)=DFN,D A=+PSGORD, DIE="^PS(5 5,"_DFN_$S (PSGORD="U ":",5,",1: ",""IV""," ),DR=$S(DI E["IV":110 ,1:66)_"// //@" D ^DI E
  13453   "RTN","PSG OER",119,0 )
  13454    D ENUDTX^ PSJOREN(PS GP,PSGORD, "NR")
  13455   "RTN","PSG OER",120,0 )
  13456    D EN1^PSJ HL2(PSGP," SN",PSGORD ,"ORDER RE NEWED")
  13457   "RTN","PSG OER",121,0 )
  13458    Q
  13459   "RTN","PSG OER",122,0 )
  13460   READ ; hol d screen
  13461   "RTN","PSG OER",123,0 )
  13462    I $D(IOST ) Q:$E(IOS T)'="C"
  13463   "RTN","PSG OER",124,0 )
  13464    W !?5,"Pr ess return  to contin ue  " R X: $S($D(DTIM E):DTIME,1 :300)
  13465   "RTN","PSG OER",125,0 )
  13466    Q
  13467   "RTN","PSG OER",126,0 )
  13468   EXPOE(DFN, PSJORDER,E XPDT) ; ex pire old O rders File  entry
  13469   "RTN","PSG OER",127,0 )
  13470    I PSJORDE R["P" S FI LE="^PS(53 .1,"_+PSJO RDER_",0)" ,PSJORDER= $P(@FILE," ^",25)
  13471   "RTN","PSG OER",128,0 )
  13472    I (PSJORD ER'["U"),( PSJORDER'[ "V") Q
  13473   "RTN","PSG OER",129,0 )
  13474    N CURDAT  D NOW^%DTC  S CURDAT= $$DATE2^PS JUTL2(%)
  13475   "RTN","PSG OER",130,0 )
  13476    S PSJEXPO E=$S($G(EX PDT):EXPDT ,1:CURDAT)  D EN1^PSJ HL2(DFN,"S C",PSJORDE R) K PSJEX POE
  13477   "RTN","PSG OER",131,0 )
  13478    Q
  13479   "RTN","PSG OER",132,0 )
  13480   EXPIRED(PS JX,PSJY) ;
  13481   "RTN","PSG OER",133,0 )
  13482    ; INPUT 
  13483   "RTN","PSG OER",134,0 )
  13484    ;       P SJX - Phar macy Patie nt, pointe r to ^PS(5 5
  13485   "RTN","PSG OER",135,0 )
  13486    ;       P SJY - Inpa tient Orde r Number(a ppended wi th "V" or  "U")
  13487   "RTN","PSG OER",136,0 )
  13488    ; OUTPUT
  13489   "RTN","PSG OER",137,0 )
  13490    ;   0  -   Order has  not excee ded the Ex pired Time  Limit 
  13491   "RTN","PSG OER",138,0 )
  13492    ;   1  -   Order has  exceeded  the Expire d Time Lim it
  13493   "RTN","PSG OER",139,0 )
  13494    N STOP,ST ATUS,NOW,C UTOFF,FREQ ,LAST,ST,X ,DFN,U,PSG DT,SD,WD,P SJPSTO,PSG DW,PSGOC,Z ZND,LASTAT ,LSTSTR,PS BCNT S DFN =PSJX,U="^ ",CUTOFF=0
  13495   "RTN","PSG OER",140,0 )
  13496    S STATUS= $S(PSJY["U ":$P($G(^P S(55,PSJX, 5,+PSJY,0) ),"^",9),P SJY["V":$P ($G(^PS(55 ,PSJX,"IV" ,+PSJY,0)) ,"^",17),1 :"")
  13497   "RTN","PSG OER",141,0 )
  13498    S NOW=$S( $G(PSGDT): PSGDT,1:$$ DATE^PSJUT L2())
  13499   "RTN","PSG OER",142,0 )
  13500    S STOP=$S (PSJY["U": $P($G(^PS( 55,PSJX,5, +PSJY,2)), U,4),1:$P( $G(^PS(55, PSJX,"IV", +PSJY,0)), "^",3))
  13501   "RTN","PSG OER",143,0 )
  13502    I NOW<STO P Q 0
  13503   "RTN","PSG OER",144,0 )
  13504    ;*315 ND2 P1 ON NEXT  LINE
  13505   "RTN","PSG OER",145,0 )
  13506    I PSJY["U " N ND2,ND 0 S ND0=$G (^PS(55,PS JX,5,+PSJY ,0)),ND2=$ G(^PS(55,P SJX,5,+PSJ Y,2)),ND2P 1=$G(^PS(5 5,PSJX,5,+ PSJY,2.1)) ,FREQ=$P(N D2,"^",6)  D
  13507   "RTN","PSG OER",146,0 )
  13508    .N SCHED  S SCHED=$P ($G(^PS(55 ,PSJX,5,+P SJY,2)),"^ ") I SCHED ["PRN" S F REQ=$$PRNF REQ(SCHED)
  13509   "RTN","PSG OER",147,0 )
  13510    .S LSTSTR =$P(ND2,"^ ",2)_"^"_$ P(ND2,"^", 4)_"^"_SCH ED_"^"_$P( ND0,"^",7) _"^^"_$P(N D2,"^",5)
  13511   "RTN","PSG OER",148,0 )
  13512    .S LAST=$ $EN^PSBAPI PM(PSJX,PS JY) I LAST ,($P(ND0," ^",7)="O") ,($P(LAST, "^",3)="G" ) I LAST>$ P(ND2,"^", 2) S CUTOF F=$$FMADD^ XLFDT(NOW, ,-1) Q
  13513   "RTN","PSG OER",149,0 )
  13514    .I 'LAST! (LAST>$P(N D2,"^",4))  S LAST=$$ LASTAT^PSJ ORP2(DFN,L STSTR) S:L AST CUTOFF =$$FMADD^X LFDT(LAST, ,,FREQ) Q
  13515   "RTN","PSG OER",150,0 )
  13516    .I SCHED[ "PRN",($P( LSTSTR,"^" ,6)="") S  CUTOFF=$$F MADD^XLFDT (LAST,,,FR EQ) Q
  13517   "RTN","PSG OER",151,0 )
  13518    .I $$DOW^ PSIVUTL(SC HED) S CUT OFF=$$NXTD OW(DFN,$P( LSTSTR,"^" ),$P(LSTST R,"^",2),$ P(LSTSTR," ^",3),$P(L STSTR,"^", 6)) Q
  13519   "RTN","PSG OER",152,0 )
  13520    .S LAST=$ $EN^PSBAPI PM(PSJX,PS JY) I 'LAS T!(LAST>$P (ND2,"^",4 )) S CUTOF F=$$FMADD^ XLFDT(NOW, ,-1) Q
  13521   "RTN","PSG OER",153,0 )
  13522    .S $P(LST STR,"^")=$ $FMADD^XLF DT(LAST,,, ,1),$P(LST STR,"^",2) =$$FMADD^X LFDT(PSGDT ,,,FREQ) S  CUTOFF=$$ ENQ^PSJORP 2(PSJX,LST STR)
  13523   "RTN","PSG OER",154,0 )
  13524    I PSJY["V " N LIMIT  S LIMIT=$P ($G(^PS(59 .7,1,31)), "^",4) S L IMIT=$S((L IMIT]""):+ LIMIT,1:24 ) S CUTOFF =$$FMADD^X LFDT(STOP, ,LIMIT) D
  13525   "RTN","PSG OER",155,0 )
  13526    .I '($G(P (4))]"") N  P,YP,XP S  YP=$G(^PS (55,DFN,"I V",+PSJY,0 )) F XP=1: 1:23 S P(X P)=$P(YP,U ,XP)
  13527   "RTN","PSG OER",156,0 )
  13528    .Q:'($G(P (4))]"")
  13529   "RTN","PSG OER",157,0 )
  13530    .Q:'$$SCH REQ^PSJLIV FD(.P)
  13531   "RTN","PSG OER",158,0 )
  13532    .N INTERV AL,LSTSTR, ND0,SCHED, IVSTYP S N D0=$G(^PS( 55,PSJX,"I V",+PSJY,0 )),INTERVA L=$P(ND0," ^",15),SCH ED=$P(ND0, "^",9) Q:S CHED=""
  13533   "RTN","PSG OER",159,0 )
  13534    .S IVSTYP =$S($$DOW^ PSIVUTL(SC HED):"D",I NTERVAL="O ":"O",1:"C "),LSTSTR= $P(ND0,"^" ,2)_"^"_$P (ND0,"^",3 )_"^"_SCHE D_"^"_IVST YP_"^^"_$P (ND0,"^",1 1)
  13535   "RTN","PSG OER",160,0 )
  13536    .S LAST=$ $EN^PSBAPI PM(PSJX,PS JY) I LAST ,IVSTYP="O ",LAST>$P( ND0,"^",2) ,($P(LAST, "^",3)="G" ) S CUTOFF =$$FMADD^X LFDT(NOW,, -1) Q
  13537   "RTN","PSG OER",161,0 )
  13538    .I 'LAST! (LAST>$P(N D0,"^",3)) !(LAST&(IV STYP="O"))  S CUTOFF= $$FMADD^XL FDT(NOW,,- 1) Q
  13539   "RTN","PSG OER",162,0 )
  13540    .I IVSTYP ="D" S CUT OFF=$$NXTD OW(LAST,SC HED,$G(P(2 )),$P($G(P (9)),"@"), $G(P(11)))  Q
  13541   "RTN","PSG OER",163,0 )
  13542    .I SCHED[ "PRN" S FR EQ=$$PRNFR EQ(SCHED)  S CUTOFF=$ $FMADD^XLF DT(LAST,,, FREQ) Q
  13543   "RTN","PSG OER",164,0 )
  13544    .S LAST=$ $EN^PSBAPI PM(PSJX,PS JY) I 'LAS T!(LAST>$P (ND0,"^",3 )) S CUTOF F=$$FMADD^ XLFDT(NOW, ,-1) Q
  13545   "RTN","PSG OER",165,0 )
  13546    .S $P(LST STR,"^")=$ $FMADD^XLF DT(LAST,,, ,1),$P(LST STR,"^",2) =$$FMADD^X LFDT(PSGDT ,31) S CUT OFF=$$ENQ^ PSJORP2(PS JX,LSTSTR)
  13547   "RTN","PSG OER",166,0 )
  13548    K LYN,PSB DT,PSBFLAG ,PSBSTR
  13549   "RTN","PSG OER",167,0 )
  13550    Q $S(CUTO FF<NOW:1,1 :0)
  13551   "RTN","PSG OER",168,0 )
  13552    ;
  13553   "RTN","PSG OER",169,0 )
  13554   NXTDOW(DOW DFN,DOWSD, DOWFD,DOWS CH,DOWAT)  ;
  13555   "RTN","PSG OER",170,0 )
  13556    N NXTADM, DOWSTR S D OWSTR=$$FM ADD^XLFDT( DOWFD,,,,1 )_"^"_$$FM ADD^XLFDT( DOWFD,7)_" ^"_DOWSCH_ "^D^^"_DOW AT S NXTAD M=$$ENQ^PS JORP2(DOWD FN,DOWSTR)
  13557   "RTN","PSG OER",171,0 )
  13558    Q $S(NXTA DM:NXTADM, 1:DOWSD)
  13559   "RTN","PSG OER",172,0 )
  13560    ;
  13561   "RTN","PSG OER",173,0 )
  13562   PRNFREQ(SC HED) ;
  13563   "RTN","PSG OER",174,0 )
  13564    N ZZND,D, DA,X,PSGAT ,PSGOES,PS GST,PSJNSS ,PSJPWD,TE ST,VALMBCK ,PSGS0XT,P SGS0Y,PSGD T
  13565   "RTN","PSG OER",175,0 )
  13566    F X=$P(SC HED,"PRN") ,$P(SCHED, "PRN",2),$ P(SCHED,"  PRN"),$P(S CHED,"PRN  ",2) Q:$P( $G(ZZND)," ^",4)  D A DMIN^PSJOR POE
  13567   "RTN","PSG OER",176,0 )
  13568    Q $S($G(P SGS0XT):PS GS0XT,1:14 40)
  13569   "RTN","PSG OER0")
  13570   0^14^B2539 8399
  13571   "RTN","PSG OER0",1,0)
  13572   PSGOER0 ;B IR/CML3 -  EDIT FIELD S FOR RENE WAL ;Jul 2 6, 2017@18 :04:02
  13573   "RTN","PSG OER0",2,0)
  13574    ;;5.0;INP ATIENT MED ICATIONS;* *11,45,47, 50,63,64,7 0,69,58,80 ,110,127,1 36,181,281 ,327**;16  DEC 97;Bui ld 64
  13575   "RTN","PSG OER0",3,0)
  13576    ;
  13577   "RTN","PSG OER0",4,0)
  13578    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191. 
  13579   "RTN","PSG OER0",5,0)
  13580    ; Referen ce to ^VA( 200 is sup ported by  DBIA 10060 .
  13581   "RTN","PSG OER0",6,0)
  13582    ; Referen ce to ^DD( 55.06 is s upported b y DBIA 225 3.
  13583   "RTN","PSG OER0",7,0)
  13584    ; Referen ce to ^%DT  is suppor ted by DBI A 10003.
  13585   "RTN","PSG OER0",8,0)
  13586    ; Referen ce to ^DIC  is suppor ted by DBI A 10006.
  13587   "RTN","PSG OER0",9,0)
  13588    ;
  13589   "RTN","PSG OER0",10,0 )
  13590   DATE(PSGP, PSGORD,PSG DT) ;
  13591   "RTN","PSG OER0",11,0 )
  13592    K PSGFOK, PSJNOO,PSG NEDFD,PSGO EPR,PSGOER 0,PSGPDRG, PSGOER2,PS GWLL,PSGOE RDP,PSGOFD ,PSGPRN,PS GPRI,PSGOS D,PSGOPR,P SGRNSD,PSG S0XT,PSGS0 Y,PSGST,PS GSCH,PSGSD N
  13593   "RTN","PSG OER0",12,0 )
  13594    S F1=55.0 6,PSGWLL=+ $G(^PS(55, PSGP,5.1)) ,PSGOER0=$ G(^PS(55,P SGP,5,+PSG ORD,0)),PS GPDRG=+$G( ^(.2)),PSG OER2=$G(^( 2))
  13595   "RTN","PSG OER0",13,0 )
  13596    NEW XX S  XX=$$ACTIV E^PSJORREN (PSGP,PSGO RD) S:+XX= 2 PSGPDRG= $P(XX,U,2)
  13597   "RTN","PSG OER0",14,0 )
  13598    I '+XX W  !,"No acti ve Orderab le Item wa s found.", ! G DONE
  13599   "RTN","PSG OER0",15,0 )
  13600    S (PSGNED FD,PSGOERD P)=$P($$GT NEDFD^PSGO E7("U",PSG PDRG),U)
  13601   "RTN","PSG OER0",16,0 )
  13602    S PSGSCH= $P(PSGOER2 ,"^"),PSGS T=$P(PSGOE R0,"^",7), PSGS0Y=$P( PSGOER2,"^ ",5),PSGS0 XT=$P(PSGO ER2,"^",6)
  13603   "RTN","PSG OER0",17,0 )
  13604    S PSGOEPR =+$P(PSGOE R0,"^",2), (PSGOPR,PS GPR)=$S($P (PSJSYSU," ;",2):DUZ, 1:+PSGOEPR )
  13605   "RTN","PSG OER0",18,0 )
  13606    I $G(PSJS PEED) S PS GPR=$S($P( ND,"^",2): $P(ND,"^", 2),1:+PSGO EPR)
  13607   "RTN","PSG OER0",19,0 )
  13608    S PSGOSD= +$P(PSGOER 2,"^",2) S  PSGOFD=+$ P(PSGOER2, "^",4),PSG PRN=$$GET1 ^DIQ(200,P SGPR,.01), PSGPRI=$S( $P(PSJSYSU ,";",2):0, 1:$P($G(^( "PS")),"^" ,4)),PSGRO =0 S:PSGPR I PSGPRI=P SGPRI'>DT  I PSGPRI S  (PSGOPR,P SGPR,PSGPR N)=""
  13609   "RTN","PSG OER0",20,0 )
  13610    S PSGRNSD =$S($G(PSG LI):PSGLI, 1:$G(PSGDT ))
  13611   "RTN","PSG OER0",21,0 )
  13612    S PSGSD=$ G(PSGOSD)
  13613   "RTN","PSG OER0",22,0 )
  13614    I PSGSD=" " S PSJREN =1,PSGSD=$ $ENSD^PSGN E3($S(PSGS T["P":"PRN ",1:$P(PSG OER2,U)),P SGS0Y,PSGD T,PSGOSD)  S:PSGOSD>P SGSD PSGSD =PSGOSD K  PSJREN
  13615   "RTN","PSG OER0",23,0 )
  13616    S PSGSDN= $$ENDD^PSG MI(PSGSD)
  13617   "RTN","PSG OER0",24,0 )
  13618   10 ;
  13619   "RTN","PSG OER0",25,0 )
  13620    ;W !,"STA RT DATE/TI ME: "_PSGS DN
  13621   "RTN","PSG OER0",26,0 )
  13622   O25 ;
  13623   "RTN","PSG OER0",27,0 )
  13624    N PSGSD,P SGNEFD S P SGSD=PSGDT
  13625   "RTN","PSG OER0",28,0 )
  13626    D ENWALL^ PSGNE3(PSG SD,0,PSGP)
  13627   "RTN","PSG OER0",29,0 )
  13628    S:'$G(PSG DT) PSGDT= $$DATE2^PS JUTL2($$NO W^XLFDT)
  13629   "RTN","PSG OER0",30,0 )
  13630    N PSGNESD  S PSGNESD =PSGDT D E NFD^PSGNE3 (PSGNESD)  I $G(PSGNE FD) S (Y,P SGFD)=PSGN EFD
  13631   "RTN","PSG OER0",31,0 )
  13632    S PSGFOK( 10)="" I P SGST="O" S  PSGFD=$$E NOSD^PSJDC U(PSJSYSW0 ,PSGRNSD,P SGP) I PSG FD]"" S Y= PSGRNSD,X= 0 G 1
  13633   "RTN","PSG OER0",32,0 )
  13634   D25 K DUR, DURMIN N P KGFLG S PK GFLG=$S(PS GORD["U":5 ,PSGORD["V ":"IV",PSG ORD["P":"P ",1:"") I  PKGFLG]""  S DUR=$$GE TDUR^PSJLI VMD(PSGP,+ $G(PSGORD) ,PKGFLG,1)  I DUR]""  D
  13635   "RTN","PSG OER0",33,0 )
  13636    .S DURMIN =($$DURMIN ^PSJLIVMD( DUR)\1) I  DURMIN>1 S  Y=$$FMADD ^XLFDT(PSG RNSD,,,DUR MIN) I Y>P SGRNSD S P SGFD=Y,X=0
  13637   "RTN","PSG OER0",34,0 )
  13638    I $P($G(P SGOER2),"^ ",4)>PSGFD  S Y=$P(PS GOER2,"^", 4)
  13639   "RTN","PSG OER0",35,0 )
  13640    I $G(DUR) ]"",($G(PS GORD)'["P" ) S DURMIN =$$DURMIN^ PSJLIVMD(D UR)\1 S Y= $$FMADD^XL FDT(PSGDT, ,,DURMIN)
  13641   "RTN","PSG OER0",36,0 )
  13642    S:X&$P(PS JSYSW0,"^" ,7) $P(Y," .",2)=$P(P SJSYSW0,"^ ",7) S PSG FD=+Y,PSGF DN=$$ENDD^ PSGMI(PSGF D)
  13643   "RTN","PSG OER0",37,0 )
  13644   25 W !,"ST OP DATE/TI ME: "_PSGF DN_"// " R  X:DTIME I  X="^"!'$T  W:'$T $C( 7) S:'$T X ="^" S PSG RO=1,COMQU IT=1 G DON E
  13645   "RTN","PSG OER0",38,0 )
  13646    I X="" W  "   "_PSGF DN G W25
  13647   "RTN","PSG OER0",39,0 )
  13648    I $E(X)=" ^" D FF G: Y>0 @Y G 2 5
  13649   "RTN","PSG OER0",40,0 )
  13650    S PSGF2=2 5 I X="@"! (X?1."?")  W:X="@" $C (7),"  (Re quired)" S :X="@" X=" ?" D ENHLP ^PSGOEM(55 .06,25)
  13651   "RTN","PSG OER0",41,0 )
  13652    I X=+X,X> 0,X'>20000 00 G 25:'$ $ENDL^PSGD L(PSGSCH,X ) K PSGDLS  S PSGDL=X ,ND2=PSGOE R2,$P(ND2, "^",2)=PSG RNSD W " . ..dose lim it..." D E NGO^PSGDL
  13653   "RTN","PSG OER0",42,0 )
  13654    K %DT S % DT="ERTX"  D ^%DT K % DT G:Y'>0  25 S PSGFD =+Y,PSGFDN =$$ENDD^PS GMI(PSGFD)
  13655   "RTN","PSG OER0",43,0 )
  13656   W25 I PSGF D<PSGDT W  $C(7),!!?1 3,"*** WAR NING! THE  STOP DATE  ENTERED IS  IN THE PA ST! ***",!
  13657   "RTN","PSG OER0",44,0 )
  13658    I PSGFD<P SGSD W $C( 7),!!?3,"* ** The STO P date mus t be AFTER  the START  date. *** " G 25
  13659   "RTN","PSG OER0",45,0 )
  13660    S PSGFOK( 25)=""
  13661   "RTN","PSG OER0",46,0 )
  13662    ;Display  Expected F irst Dose; BHW;PSJ*5* 136
  13663   "RTN","PSG OER0",47,0 )
  13664    D EFDNEW^ PSJUTL
  13665   "RTN","PSG OER0",48,0 )
  13666    I $G(PSGO NF),(+$G(P SGODDD(1)) '<+$G(PSGO NF)) S PSG FOK(1)=""  Q
  13667   "RTN","PSG OER0",49,0 )
  13668   1 ; provid er
  13669   "RTN","PSG OER0",50,0 )
  13670    G:+PSJSYS U<3&$P(PSJ SYSU,";",2 ) CHKDD S  PSGF2=1
  13671   "RTN","PSG OER0",51,0 )
  13672   A1 ;
  13673   "RTN","PSG OER0",52,0 )
  13674    S PSTMPI= PSGPR,PSTM PN=PSGPRN
  13675   "RTN","PSG OER0",53,0 )
  13676    W !,"PROV IDER: ",$S (PSGPR:PSG PRN_"// ", 1:"") R X: DTIME I X= "^"!'$T W: '$T $C(7)  S:'$T X="^ " S PSGRO= 1,COMQUIT= 1 G DONE
  13677   "RTN","PSG OER0",54,0 )
  13678    I $S(X="" :'PSGPR,1: X="@") W $ C(7),"  (R equired)"  S X="?" D  ENHLP^PSGO EM(55.06,1 ) G A1
  13679   "RTN","PSG OER0",55,0 )
  13680    I X="",PS GPR S X=PS GPRN I PSG PR'=PSGPRN ,$$GET1^DI Q(200,PSGP R,53.1,"I" ) W "    " _$$GET1^DI Q(200,PSGP R,53.2)_"     "_$$GET 1^DIQ(200, PSGPR,53.3 ) S PSGFOK (1)="" G:' $G(ANOX) O C55
  13681   "RTN","PSG OER0",56,0 )
  13682    I X?1."?"  D ENHLP^P SGOEM(55.0 6,1)
  13683   "RTN","PSG OER0",57,0 )
  13684    I $E(X)=" ^" D FF G: Y>0 @Y G A 1
  13685   "RTN","PSG OER0",58,0 )
  13686    K DIC S D IC="^VA(20 0,",DIC(0) ="EMQZ",DI C("S")="S  X(1)=$G(^( ""PS"")) I  X(1),$S(' $P((X(1)), ""^"",4):1 ,1:DT<$P(( X(1)),""^" ",4))" D ^ DIC K DIC  I Y'>0 G A 1
  13687   "RTN","PSG OER0",59,0 )
  13688    S PSGPR=+ Y,PSGPRN=$ P(Y(0,0)," ^"),PSGFOK (1)=""
  13689   "RTN","PSG OER0",60,0 )
  13690    ;; START  NCC T4 MOD S >> 327*R JS
  13691   "RTN","PSG OER0",61,0 )
  13692   A2 D CLOZP RV^PSGOE82
  13693   "RTN","PSG OER0",62,0 )
  13694    I $G(ANQX ) W ! S PS GPR=PSTMPI ,PSGPRN=PS TMPN  K PS TMPN,PSTMP I G A1
  13695   "RTN","PSG OER0",63,0 )
  13696    K ANQX
  13697   "RTN","PSG OER0",64,0 )
  13698    ;; END NC C T4 MODS  << 327*RJS
  13699   "RTN","PSG OER0",65,0 )
  13700   OC55 ;
  13701   "RTN","PSG OER0",66,0 )
  13702    ;Order ch eck for Sp eed finish  is trigge red from O C531^PSGOE SF
  13703   "RTN","PSG OER0",67,0 )
  13704    I $G(PSGO RD)]"P",$G (PSJSPEED)  Q
  13705   "RTN","PSG OER0",68,0 )
  13706    I $G(PSJO CFG)="SPEE D RENEW" G  CHKDD
  13707   "RTN","PSG OER0",69,0 )
  13708    D NEWOC55 ^PSGOER
  13709   "RTN","PSG OER0",70,0 )
  13710    I $G(PSGO RQF) S COM QUIT=1 G D ONE
  13711   "RTN","PSG OER0",71,0 )
  13712   CHKDD ;
  13713   "RTN","PSG OER0",72,0 )
  13714    G:$G(PSGR ENEW) 106
  13715   "RTN","PSG OER0",73,0 )
  13716    I PSGORD[ "P"!$$DDOK ^PSGOE2("^ PS(55,"_PS GP_",5,"_+ PSGORD_",1 ,",PSGPDRG ) G 106
  13717   "RTN","PSG OER0",74,0 )
  13718    ;I PSGORD ["P"!'$$CH KDD^PSGOE2 ("^PS(55," _PSGP_",5, "_+PSGORD_ ",") G 106
  13719   "RTN","PSG OER0",75,0 )
  13720    I $P(PSJS YSU,";")'= 3,'$P(PSJS YSP0,U,2)  W !!,"This  order's d ispense dr ug is inva lid, a pha rmacist mu st renew t his order. " Q
  13721   "RTN","PSG OER0",76,0 )
  13722    K ^PS(53. 45,PSJSYSP ,1),^(2)
  13723   "RTN","PSG OER0",77,0 )
  13724    W !!,"THE  DISPENSE  DRUG IS MI SSING FROM  THIS ORDE R."
  13725   "RTN","PSG OER0",78,0 )
  13726    D ENDRG^P SGOEF1(+$$ GET1^DIQ(5 5.06,+PSGO ED_","_PSG P,108,"I") ,0)
  13727   "RTN","PSG OER0",79,0 )
  13728    I $G(DUOU T)!'$G(DRG ) S COMQUI T=1 Q
  13729   "RTN","PSG OER0",80,0 )
  13730   106 ; natu re of orde r
  13731   "RTN","PSG OER0",81,0 )
  13732    S PSJNOO= $$ENNOO^PS JUTL5("R")  S:PSJNOO< 0 COMQUIT= 1
  13733   "RTN","PSG OER0",82,0 )
  13734    S:PSJNOO' <0 PSGFOK( 106)=""
  13735   "RTN","PSG OER0",83,0 )
  13736   DONE ;
  13737   "RTN","PSG OER0",84,0 )
  13738    K F,F0,F1 ,PSGF2,F3, ND2,PSGDL, PSGDLS,PSG OROE1,PSGR O,SDT,X,Y  Q
  13739   "RTN","PSG OER0",85,0 )
  13740   FF ; "^" t o another  field
  13741   "RTN","PSG OER0",86,0 )
  13742    K DIC S D IC="^DD(55 .06,",DIC( 0)="EQ",DI C("S")="I  $D(PSGFOK( +Y))",X=$E (X,2,255)  D ^DIC K D IC
  13743   "RTN","PSG OER0",87,0 )
  13744    S Y=+Y Q
  13745   "RTN","PSG OETO")
  13746   0^29^B4574 6599
  13747   "RTN","PSG OETO",1,0)
  13748   PSGOETO ;B IR/CML3-TR ANSCRIBE O RDERS ;Jul  26, 2017@ 18:04:02
  13749   "RTN","PSG OETO",2,0)
  13750    ;;5.0;INP ATIENT MED ICATIONS;* *3,13,25,3 1,33,50,68 ,58,85,105 ,90,117,11 0,111,112, 161,254,26 7,268,315, 327**;16 D EC 97;Buil d 64
  13751   "RTN","PSG OETO",3,0)
  13752    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  13753   "RTN","PSG OETO",4,0)
  13754    ; Referen ce to ^PS( 51.2 is su pported by  DBIA #217 8.
  13755   "RTN","PSG OETO",5,0)
  13756    ; Referen ce to ^PS( 55 is supp orted by D BIA #2191.
  13757   "RTN","PSG OETO",6,0)
  13758    ; Referen ce to ^PS( 59.7 is su pported by  DBIA #218 1.
  13759   "RTN","PSG OETO",7,0)
  13760    ; Referen ce to ^PSU HL is supp orted by D BIA 4803.
  13761   "RTN","PSG OETO",8,0)
  13762    ;
  13763   "RTN","PSG OETO",9,0)
  13764    W:'$D(PSG OEE)&'$D(P SGOES) !!, "...transc ribing thi s ",$S($D( PSGOES):"" ,'PSGOEAV: "non-verif ied ",1:"a ctive ")," order..."  S PSGOETOF =1 S:PSGSM ="" PSGSM= 0
  13765   "RTN","PSG OETO",10,0 )
  13766    I PSGPR'= PSGOEPR D: '$D(^PS(55 ,PSGP,0))  ENSET0^PSG NE3(PSGP)  S $P(^PS(5 5,PSGP,5.1 ),U,2)=PSG PR,PSGOEPR =PSGPR
  13767   "RTN","PSG OETO",11,0 )
  13768    K ND4,DA  D ENGNN:'P SGOEAV,ENG NA:PSGOEAV  S PSGDT=$ $DATE^PSJU TL2() I $S ($D(ORACTI ON):0,$G(P SGOEE)="R" :1,+$G(^PS (55,PSGP,5 .1))>PSGDT :0,1:$G(PS GOEE)'="E" ) D ENWALL ^PSGNE3(PS GNESD,PSGN EFD,PSGP)
  13769   "RTN","PSG OETO",12,0 )
  13770    I $D(^PS( 51.2,+PSGM R,0)),$P(^ (0),U,3)]" " S PSGMRN =$P(^(0),U ,3)
  13771   "RTN","PSG OETO",13,0 )
  13772    S ND=DA_U _PSGPR_U_P SGMR_"^U^" _PSGSM_U_P SGHSM_U_PS GST_"^^"_$ S(PSGOEAV: "A",1:"N") _"^^^^^"_P SGDT_U_PSG P_U_PSGDT  S:PSGNEDFD  $P(ND,U,$ P(PSGNEDFD ,U)["L"+10 )=+PSGNEDF D
  13773   "RTN","PSG OETO",14,0 )
  13774    S:$D(PSGO EE) $P(ND, U,24,25)=P SGOEE_U_PS GOORD S:'P SGOEAV $P( ND,U,18)=D A S ND2=PS GSCH_U_$S( +PSGNESD=P SGNESD:+PS GNESD,1:"" )_"^^"_+PS GNEFD_U_PS GS0Y_U_PSG S0XT_"^^^^ "_+PSJPWD
  13775   "RTN","PSG OETO",15,0 )
  13776    S:$G(PSGR F)]"" ND2P 1=$G(PSGDU R)_U_$G(PS GRMVT)_U_$ G(PSGRMV)_ U_$G(PSGRF ) ;*315 dr p
  13777   "RTN","PSG OETO",16,0 )
  13778    ; naked r eference b elow refer s to ^PS(5 5,PSGP,0)
  13779   "RTN","PSG OETO",17,0 )
  13780    I PSGOEAV  S F=^PS(5 5,PSGP,0)  I $P(F,"^" ,7)="" S $ P(F,"^",7) =$P($P(ND, "^",16),". "),$P(F,"^ ",8)="A",^ (0)=F D LO GDFN^PSUHL (PSGP)
  13781   "RTN","PSG OETO",18,0 )
  13782    S $P(ND4, U,7)=DUZ I  PSGOEAV,P SJSYSU D
  13783   "RTN","PSG OETO",19,0 )
  13784    .S $P(ND4 ,U,PSJSYSU ,PSJSYSU+1 )=DUZ_U_PS GDT,$P(ND4 ,U,+PSJSYS U=1+9)=1,$ P(ND4,U,+P SJSYSU=3+9 )=0
  13785   "RTN","PSG OETO",20,0 )
  13786    .S $P(ND4 ,U,9,10)=+ $P(ND4,U,9 )_U_+$P(ND 4,U,10)
  13787   "RTN","PSG OETO",21,0 )
  13788    .I '$P(ND 4,U,9) S ^ PS(55,"APV ",PSGP,DA) =""
  13789   "RTN","PSG OETO",22,0 )
  13790    .I '$P(ND 4,U,10) S  ^PS(55,"NP V",PSGP,DA )=""
  13791   "RTN","PSG OETO",23,0 )
  13792    .I $P(ND4 ,U,9) K ^P S(55,"APV" ,PSGP,DA)
  13793   "RTN","PSG OETO",24,0 )
  13794    .I $P(ND4 ,U,10) K ^ PS(55,"NPV ",PSGP,DA)
  13795   "RTN","PSG OETO",25,0 )
  13796    S F="^PS( "_$S(PSGOE AV:"55,"_P SGP_",5",1 :53.1)_"," _DA_",",@( F_"0)")=ND
  13797   "RTN","PSG OETO",26,0 )
  13798    ;naked re ference be low refers  to full r eference i nside indi rection @( F_".2)") f or either  file 53.1  or 55
  13799   "RTN","PSG OETO",27,0 )
  13800    S @(F_".2 )")=PSGPDR G_U_PSGDO_ U_PSJNOO S :$G(PSJDOS E("DO"))]" " $P(^(.2) ,U,5,6)=$P (PSJDOSE(" DO"),U,1,2 )
  13801   "RTN","PSG OETO",28,0 )
  13802    I '$D(PSJ DOSE("DO") ),$D(PSGOR D),PSGPDRG =$P(@("^PS ("_$S(PSGO RD["U":"55 ,"_PSGP_", 5",1:53.1) _","_+PSGO RD_",.2)") ,U) S $P(@ (F_".2)"), U,5,6)=$P( @("^PS("_$ S(PSGORD[" U":"55,"_P SGP_",5",1 :53.1)_"," _+PSGORD_" ,.2)"),U,5 ,6)
  13803   "RTN","PSG OETO",29,0 )
  13804    ;naked re ference be low refers  to full r eference i nside indi rection @( F_"2)") fo r either f ile 53.1 o r 55
  13805   "RTN","PSG OETO",30,0 )
  13806    S @(F_"2) ")=$S(PSGO EAV:ND2,1: $P(ND2,"^" ,1,6)),^(4 )=ND4 S:PS GSI]"" ^(6 )=PSGSI
  13807   "RTN","PSG OETO",31,0 )
  13808    ;*315 DRP  INSERT UP DATE FOR R EMOVAL FIE LDS HERE
  13809   "RTN","PSG OETO",32,0 )
  13810    S:$G(ND2P 1)]"" @(F_ "2.1)")=ND 2P1
  13811   "RTN","PSG OETO",33,0 )
  13812    S X=-1 S: '$D(^PS(53 .45,+$G(DU Z),5,1,0))  X=$S($G(P SGORD):$$G ETSIOPI^PS JBCMA5(DFN ,PSGORD),1 :"") I X D  FILESI^PS JBCMA5(PSG P,DA_$S(F[ "PS(55":"U ",1:"P"))
  13813   "RTN","PSG OETO",34,0 )
  13814    S (C,X)=0  F  S X=$O (^PS(53.45 ,PSJSYSP,2 ,X)) Q:'X   S D=$G(^( X,0)) I D, $S('$P(D,U ,3):1,1:$P (D,U,3)>DT ) S C=C+1, @(F_"1,"_C _",0)")=$P (D,U,1,2), @(F_"1,""B "","_+D_", "_C_")")=" "
  13815   "RTN","PSG OETO",35,0 )
  13816    S:C @(F_" 1,0)")=U_$ S(PSGOEAV: 55.07,1:53 .11)_"P^"_ C_U_C
  13817   "RTN","PSG OETO",36,0 )
  13818    S (C,Q)=0  F  S Q=$O (^PS(53.45 ,PSJSYSP,1 ,Q)) Q:'Q   S X=$G(^( Q,0)) S:X] "" C=C+1,@ (F_"3,"_C_ ",0)")=X
  13819   "RTN","PSG OETO",37,0 )
  13820    S:C @(F_" 3,0)")=U_$ S(PSGOEAV: 55.08,1:53 .12)_U_C_U _C
  13821   "RTN","PSG OETO",38,0 )
  13822    I $P(ND,U ,24)="R" S  %X="^PS(5 5,"_PSGP_" ,5,"_+PSGO RD_",12,", %Y=F_"12,"  D %XY^%RC R
  13823   "RTN","PSG OETO",39,0 )
  13824    W "." D C RN:'PSGOEA V,CRA:PSGO EAV
  13825   "RTN","PSG OETO",40,0 )
  13826    ; don't s end messag e to CPRS  if from Or der Set an d autoveri fy turned  off
  13827   "RTN","PSG OETO",41,0 )
  13828    ;; START  NCC REMEDI ATION >> 3 27*RJS
  13829   "RTN","PSG OETO",42,0 )
  13830    N ARR,FOU ND D FIND^ DIC(53.1,, .01,"Q",PS GP,,"AC",, ,"ARR")
  13831   "RTN","PSG OETO",43,0 )
  13832    F I=2:1 Q :'$D(ARR(" DILIST",2, I))  I ARR ("DILIST", 2,I)=DA S  FOUND=1
  13833   "RTN","PSG OETO",44,0 )
  13834    I $G(FOUN D)!($$GET1 ^DIQ(55.06 ,+$G(ND)_" ,"_DFN,.01 ,"I")) D
  13835   "RTN","PSG OETO",45,0 )
  13836    .I +$G(PS GCTDD) N P SGTMP S PS GTDD=PSGCT DD,PSGTMP= DA K PSGCT DD
  13837   "RTN","PSG OETO",46,0 )
  13838    .I +$G(PS GETDD) N P SGTMP S PS GTDD=PSGET DD,PSGTMP= DA K PSGET DD
  13839   "RTN","PSG OETO",47,0 )
  13840    .I +$G(PS GNTDD) N P SGTMP S PS GTDD=PSGNT DD,PSGTMP= DA K PSGNT DD
  13841   "RTN","PSG OETO",48,0 )
  13842    I +$G(ND) ["U" S PSG TMP=+$G(ND )
  13843   "RTN","PSG OETO",49,0 )
  13844    S:'+$G(PS GTMP) PSGT MP=DA
  13845   "RTN","PSG OETO",50,0 )
  13846    I $G(PSGT DD) D
  13847   "RTN","PSG OETO",51,0 )
  13848    .;/MZR ch anged the  next line
  13849   "RTN","PSG OETO",52,0 )
  13850    .I PSGOEA V,'$D(^TMP ("PSJCOM", $J,DA)) S  ^TMP("PSJC OM",$J,DA, "SAND")=PS GTDD
  13851   "RTN","PSG OETO",53,0 )
  13852    .S ^TMP($ J,"PSGCLOZ ",DFN,+$G( PSGTMP),"S AND")=PSGT DD K PSGTD D
  13853   "RTN","PSG OETO",54,0 )
  13854    ;; END NC C REMEDIAT ION >> 327 *RJS
  13855   "RTN","PSG OETO",55,0 )
  13856    S PSGORD= DA_$S(PSGO EAV:"U",1: "P")
  13857   "RTN","PSG OETO",56,0 )
  13858    I $G(PSGO ORD),$D(PS GOEE) N CL INAPPT S C LINAPPT=$S (PSGOORD[" U":$G(^PS( 55,PSGP,5, +PSGOORD,8 )),PSGOORD ["P":$G(^P S(53.1,+PS GOORD,"DSS ")),1:"")  I CLINAPPT  D
  13859   "RTN","PSG OETO",57,0 )
  13860    .N DIE,DA ,DR
  13861   "RTN","PSG OETO",58,0 )
  13862    .I PSGORD ["U" S DIE ="^PS(55," _PSGP_",5, ",DA=+PSGO RD,DA(1)=P SGP,DR="13 0////"_+CL INAPPT_";"  S:$P(CLIN APPT,"^",2 ) DR=DR_"1 31////"_$P (CLINAPPT, "^",2)_";"
  13863   "RTN","PSG OETO",59,0 )
  13864    .I PSGORD ["P" S DIE ="^PS(53.1 ,",DA=+PSG ORD,DR="11 3////"_+CL INAPPT_";"  S:$P(CLIN APPT,"^",2 ) DR=DR_"1 26////"_$P (CLINAPPT, "^",2)_";"
  13865   "RTN","PSG OETO",60,0 )
  13866    .I $G(DR)  D ^DIE
  13867   "RTN","PSG OETO",61,0 )
  13868    D:('$D(PS GOES))!(($ D(PSGOES)& (PSGOEAV)) ) ORSET^PS GOETO1
  13869   "RTN","PSG OETO",62,0 )
  13870    I $D(PSGO ES),'$D(PS GOESON) N  PSGOESON S  PSGOESON= PSGORD D D ISACTIO^PS JOE(DFN,PS GORD,0) D: PSGORD["U" &(PSGOESON =PSGORD)&( $P(@(PSGOE EWF_"0)"), "^",9)'="D ") EN^PSGP EN(PSGORD)  G OUT
  13871   "RTN","PSG OETO",63,0 )
  13872    D DONE S  PSGCANFL=" " I '$D(PS GOEE) S PS JLM=1,PSGO EEF=0 D GE TUD^PSJLMG UD(PSGP,PS GORD),ENSF E^PSGOEE0( PSGP,PSGOR D),EN^VALM ("PSJ LM A CCEPT") I  PSGCANFL=1  G OUT
  13873   "RTN","PSG OETO",64,0 )
  13874    I $D(PSJS YSO) S PSG POSA="W",P SGPOSD=PSG DT D ENPOS ^PSGVDS
  13875   "RTN","PSG OETO",65,0 )
  13876    S DA=+PSG ORD,X=$P(P SGORD,DA,2 ) I PSJSYS L,$S(PSGOE AV:1,1:PSJ SYSL<3),$S ("AOU"[X:' $D(^PS(55, PSGP,5,+PS GORD,7)),1 :'$D(^PS(5 3.1,+PSGOR D,7))) D
  13877   "RTN","PSG OETO",66,0 )
  13878    .; naked  ref below  is from li ne above,  ^PS(53.1,+ PSGORD,7)
  13879   "RTN","PSG OETO",67,0 )
  13880    .S $P(^(7 ),U,1,2)=P SGDT_"^N"_ $G(PSGOEE) ,PSGUOW=DU Z,PSGTOL=2 ,PSGTOO=$S ("AOU"[X:1 ,1:2) D EN L^PSGVDS
  13881   "RTN","PSG OETO",68,0 )
  13882    D STOREIN T^PSGSICH1
  13883   "RTN","PSG OETO",69,0 )
  13884   OUT ;
  13885   "RTN","PSG OETO",70,0 )
  13886    K PSGOETO F
  13887   "RTN","PSG OETO",71,0 )
  13888     ; ** Thi s is where  the Autom ated Dispe nsing Mach ine hook i s called.  Do NOT DEL ETE or cha nge locati on **
  13889   "RTN","PSG OETO",72,0 )
  13890    D NEWG^PS JADM
  13891   "RTN","PSG OETO",73,0 )
  13892     ; ** END  of Interf ace hook * *
  13893   "RTN","PSG OETO",74,0 )
  13894   DONE ;
  13895   "RTN","PSG OETO",75,0 )
  13896    I PSGOEAV  L -^PS(55 ,PSGP,5,+P SGORD)
  13897   "RTN","PSG OETO",76,0 )
  13898    I 'PSGOEA V L -^PS(5 3.1,+PSGOR D)
  13899   "RTN","PSG OETO",77,0 )
  13900    K C,D,ND, ND2,ND4,PS GDO,PSGDRG ,PSGDRGN,P SGFOK,PSGH SM,PSGMR,P SGMRN,PSGN EDFD,PSGNE FD,PSGNESD ,PSGPDRG,P SGPDRGN,PS GSI,PSGSTN ,PSJDOSE,N D0,ND2P1
  13901   "RTN","PSG OETO",78,0 )
  13902    K ^PS(53. 45,+$G(DUZ ),5)
  13903   "RTN","PSG OETO",79,0 )
  13904    Q
  13905   "RTN","PSG OETO",80,0 )
  13906   CRA ;
  13907   "RTN","PSG OETO",81,0 )
  13908    S:PSGPDRG  ^PS(55,PS GP,5,"C",P SGPDRG,DA) ="" S (^PS (55,"AUE", PSGP,DA),^ PS(55,PSGP ,5,"AU",PS GST,+PSGNE FD,DA),^PS (55,PSGP,5 ,"AUS",+PS GNEFD,DA)) ="",^PS(55 ,"AUD",+$P (ND2,"^",4 ),PSGP,DA) ="",^PS(55 ,"AUDS",+$ P(ND2,"^", 2),PSGP,DA )=""
  13909   "RTN","PSG OETO",82,0 )
  13910    I $$PATCH ^XPDUTL("P XRM*1.5*12 ") S X(1)= +PSGNESD,X (2)=+PSGNE FD,DA(1)=P SGP D SPSP A^PSJXRFS( .X,.DA,"UD ")
  13911   "RTN","PSG OETO",83,0 )
  13912    S DA(1)=P SGP K DIK  S DIK="^PS (55,"_DA(1 )_",5,",DI K(1)=125 D  EN1^DIK K  DIK
  13913   "RTN","PSG OETO",84,0 )
  13914    K PSGALO, PSGALR S D A(1)=PSGP, PSGAL("C") =PSJSYSU*1 0+$S('$D(P SGOEE):225 00,PSGOEE= "E":22600, 1:22700) D  ^PSGAL5 Q
  13915   "RTN","PSG OETO",85,0 )
  13916   CRN ;
  13917   "RTN","PSG OETO",86,0 )
  13918    S (^PS(53 .1,"AC",PS GP,DA),^PS (53.1,"AS" ,"N",PSGP, DA),^PS(53 .1,"B",DA, DA),^PS(53 .1,"C",PSG P,DA))=""  S:PSGPDRG  (^PS(53.1, "AOD",PSGP ,PSGPDRG,D A),^PS(53. 1,"D",PSGP DRG,DA))=" " Q
  13919   "RTN","PSG OETO",87,0 )
  13920   ENGNA ; Ve rified
  13921   "RTN","PSG OETO",88,0 )
  13922    F  L +^PS (55,PSGP,5 ,0):$S($G( DILOCKTM)> 0:DILOCKTM ,1:3) S:'$ D(^PS(55,P SGP,0)) ^( 0)=PSGP,^P S(55,"B",P SGP,PSGP)= "" S ND=$S ($D(^PS(55 ,PSGP,5,0) ):^(0),1:" ^55.06IA")  Q
  13923   "RTN","PSG OETO",89,0 )
  13924    N PSGLCK  S PSGLCK=0
  13925   "RTN","PSG OETO",90,0 )
  13926    F DA=$P(N D,U,3)+1:1  W "." I ' $D(^PS(55, PSGP,5,DA) ),'$D(^PS( 55,PSGP,5, "B",DA)) D   I PSGLCK  S ^PS(55, PSGP,5,DA, 0)=DA,^PS( 55,PSGP,5, "B",DA,DA) ="",$P(ND, U,3)=DA,$P (ND,U,4)=$ P(ND,U,4)+ 1,^PS(55,P SGP,5,0)=N D Q
  13927   "RTN","PSG OETO",91,0 )
  13928    . L +^PS( 55,PSGP,5, DA):$S($G( DILOCKTM)> 0:DILOCKTM ,1:3) I  S  PSGLCK=1
  13929   "RTN","PSG OETO",92,0 )
  13930    L -^PS(55 ,PSGP,5,0)  Q
  13931   "RTN","PSG OETO",93,0 )
  13932   ENGNN ; No t Verified
  13933   "RTN","PSG OETO",94,0 )
  13934    N ND F  L  +^PS(59.7 ,1,25):$S( $G(DILOCKT M)>0:DILOC KTM,1:3) I   S DA=+$G (^PS(59.7, 1,25)) Q
  13935   "RTN","PSG OETO",95,0 )
  13936    F DA=DA+1 :1 I '$D(^ PS(53.1,DA )),'$D(^PS (53.1,"B", DA)) L +^P S(53.1,DA) :$S($G(DIL OCKTM)>0:D ILOCKTM,1: 3) I  S ^P S(59.7,1,2 5)=DA,^PS( 53.1,DA,0) =DA,^PS(53 .1,"B",DA, DA)="" Q
  13937   "RTN","PSG OETO",96,0 )
  13938    F  L +^PS (53.1,0):$ S($G(DILOC KTM)>0:DIL OCKTM,1:3)  I  S ND=$ G(^PS(53.1 ,0)),$P(ND ,U,3)=DA,$ P(ND,U,4)= $P(ND,U,4) +1,^(0)=ND  Q
  13939   "RTN","PSG OETO",97,0 )
  13940    L -^PS(59 .7,1,25),- ^PS(53.1,0 )
  13941   "RTN","PSG OETO",98,0 )
  13942    I $G(PSIV CHG) D
  13943   "RTN","PSG OETO",99,0 )
  13944    .N PSGORD ,ON S ON=D A_"P" D SE TIVINT^PSG SICH1
  13945   "RTN","PSG OETO",100, 0)
  13946    Q
  13947   "RTN","PSG OEV")
  13948   0^9^B98579 383
  13949   "RTN","PSG OEV",1,0)
  13950   PSGOEV ;BI R/CML3 - V ERIFY (MAK E ACTIVE)  ORDERS ;Ju l 26, 2017 @18:04:02
  13951   "RTN","PSG OEV",2,0)
  13952    ;;5.0;INP ATIENT MED ICATIONS;* *5,7,15,28 ,33,50,64, 58,77,78,8 0,110,111, 133,171,20 7,241,267, 268,260,28 8,199,281, 327**;16 D EC 97;Buil d 64
  13953   "RTN","PSG OEV",3,0)
  13954    ;
  13955   "RTN","PSG OEV",4,0)
  13956    ; Referen ce to ^ORD (101 suppo rted by DB IA #872.
  13957   "RTN","PSG OEV",5,0)
  13958    ; Referen ce to ^PS( 50.7 suppo rted by DB IA #2180.
  13959   "RTN","PSG OEV",6,0)
  13960    ; Referen ce to ^PS( 55 support ed by DBIA  #2191.
  13961   "RTN","PSG OEV",7,0)
  13962    ; Referen ce to ^PSS LOCK suppo rted by DB IA #2789.
  13963   "RTN","PSG OEV",8,0)
  13964    ; Referen ce to ^PSD RUG( suppo rted by DB IA# 2192.
  13965   "RTN","PSG OEV",9,0)
  13966    ; Referen ce to MAIN ^TIUEDIT i s supporte d by DBIA  #2410.
  13967   "RTN","PSG OEV",10,0)
  13968    ; Referen ce to ^TMP ("PSODAOC" ,$J suppor ted by DBI A 6071
  13969   "RTN","PSG OEV",11,0)
  13970    ;
  13971   "RTN","PSG OEV",12,0)
  13972   EN(PSGORD)  ;
  13973   "RTN","PSG OEV",13,0)
  13974   ENSF ; Thi s entry po int is use d by Speed  finish on ly.
  13975   "RTN","PSG OEV",14,0)
  13976    ; Send SN  update to  CPRS if a uto-verify  off and f rom Order  Set entry
  13977   "RTN","PSG OEV",15,0)
  13978    S:'$D(PSG OEAV) PSGO EAV=$P($G( PSJSYSP0), "^",9)&$G( PSJSYSU)
  13979   "RTN","PSG OEV",16,0)
  13980    I $D(PSGO ES),'PSGOE AV,PSGORD[ "P",$P($G( ^PS(53.1,+ PSGORD,0)) ,"^",21)'] "" D ORSET ^PSGOETO1
  13981   "RTN","PSG OEV",17,0)
  13982    D FULL^VA LM1 I 'PSJ SYSU W $C( 7),$C(7),! !," THIS F UNCTION NO T AVAILABL E TO WARD  STAFF." Q
  13983   "RTN","PSG OEV",18,0)
  13984    S CHK=0 I  PSGORD["P " S X=$P($ G(^PS(53.1 ,+PSGORD,0 )),"^",19)  I X,$D(^P S(55,PSGP, 5,$P(^(0), "^",19)))  S CHK=+PSG ORD,PSGORD =X_"U" L - ^PS(53.1,C HK) L +^PS (55,PSGP,5 ,+PSGORD): 1 E  W !!, "Another t erminal is  editing t his order. " G DONE
  13985   "RTN","PSG OEV",19,0)
  13986    I +PSJSYS U=3 D DDCH K G:CHK DO NE
  13987   "RTN","PSG OEV",20,0)
  13988    I PSGORD[ "P" D CHK( $G(^PS(53. 1,+PSGORD, 0)),$G(^(. 2)),$G(^(2 )))
  13989   "RTN","PSG OEV",21,0)
  13990    I $G(PSGS CH)]"" D
  13991   "RTN","PSG OEV",22,0)
  13992    .N X,Y,PS GS0Y,PSGS0 XT,PSGOES  S PSGOES=1  S X=PSGSC H D ENOS^P SGS0 I $G( X)="" S CH K=4
  13993   "RTN","PSG OEV",23,0)
  13994    I $G(CHK)  Q:$D(PSJS PEED)  D E N^VALM("PS JU LM ACCE PT") G:'$G (PSJACEPT)  DONE ;G V FY
  13995   "RTN","PSG OEV",24,0)
  13996    I PSGORD[ "U" G:'$D( ^PS(55,PSG P,5,+PSGOR D,4)) VFY  I +PSJSYSU =3,$P(^(4) ,"^",3) W  $C(7),!!," THIS ORDER  HAS ALREA DY BEEN VE RIFIED BY  A PHARMACI ST." S PSG ACT=$P(PSG ACT,"V")_$ P(PSGACT," V",2) G DO NE
  13997   "RTN","PSG OEV",25,0)
  13998    I PSGORD[ "U" I +PSJ SYSU=1,+^P S(55,PSGP, 5,+PSGORD, 4) W $C(7) ,!!,"THIS  ORDER HAS  ALREADY BE EN VERIFIE D BY A NUR SE." S PSG ACT=$P(PSG ACT,"V")_$ P(PSGACT," V",2) G DO NE
  13999   "RTN","PSG OEV",26,0)
  14000    ;
  14001   "RTN","PSG OEV",27,0)
  14002   VFY ; chan ge status,  move to 5 5, and cha nge label  record **E NHANCEMENT S MADE IN  PSJ*5.0*26 0 **CCR 62 14 **CCR 6 244
  14003   "RTN","PSG OEV",28,0)
  14004    I PSGORD[ "P" S PSJC OM=+$P($G( ^PS(53.1,+ PSGORD,.2) ),"^",8) I  PSJCOM D  VFY^PSJCOM  Q
  14005   "RTN","PSG OEV",29,0)
  14006    N PSJDOSE ,PSJDSFLG, PSJDIS,PSG ORQF,PSJCN T,PSJCNT1, PSJCNT2,LI ST,PSJFLG, PSGDN SET  PSJDIS="", PSJCNT=0,P SJCNT1="", PSJCNT2="" ,LIST="PSG PRE",PSJFL G="",PSGDN =""
  14007   "RTN","PSG OEV",30,0)
  14008    D DOSECHK ^PSJDOSE
  14009   "RTN","PSG OEV",31,0)
  14010    S PSJFLG= +$G(PSGORD )
  14011   "RTN","PSG OEV",32,0)
  14012    F  S PSJC NT=$O(^PS( 53.1,PSJFL G,1,PSJCNT )) Q:'+PSJ CNT  D
  14013   "RTN","PSG OEV",33,0)
  14014    .I $D(^PS (53.1,PSJF LG,1,PSJCN T,0)) S PS GDN=$P($G( ^PS(53.1,P SJFLG,1,PS JCNT,0)),U ,1)
  14015   "RTN","PSG OEV",34,0)
  14016    .I +$G(PS GDN),($$GE T1^DIQ(50, PSGDN,3)'[ "S")&($E($ $GET1^DIQ( 50,PSGDN,2 ),1,2)'="X A")  D
  14017   "RTN","PSG OEV",35,0)
  14018    ..D PROFI LE^PSJBLDO C($G(DFN), LIST,"I;"_ $G(PSGORD) )
  14019   "RTN","PSG OEV",36,0)
  14020    ..F  S PS JCNT1=$O(^ TMP($J,LIS T,"IN","PR OFILE",PSJ CNT1)) Q:( PSJCNT1="" )!(PSJDIS' ="")  D
  14021   "RTN","PSG OEV",37,0)
  14022    ...S PSJC NT2=$P(PSJ CNT1,";",2 )
  14023   "RTN","PSG OEV",38,0)
  14024    ...I PSJC NT2=$G(PSG ORD) SET P SJDIS=$P(^ TMP($J,LIS T,"IN","PR OFILE",PSJ CNT1),U,3)
  14025   "RTN","PSG OEV",39,0)
  14026    ..;**Do o rder check s if PSJDI S (Dispens e drug IEN ) has a va lue
  14027   "RTN","PSG OEV",40,0)
  14028    ..;IF $G( PSJNEWOE)= 0,'$G(PSJL MFIN),'$G( PSJSTARI), '$G(PSGCOP Y),$G(PSJD IS),'$G(PS JSPEED)  D
  14029   "RTN","PSG OEV",41,0)
  14030    ..I '+$G( PSJNEWOE), '$G(PSJLMF IN),'$G(PS JSTARI),'$ G(PSGCOPY) ,$G(PSJDIS ),'$G(PSJS PEED)  D
  14031   "RTN","PSG OEV",42,0)
  14032    ...D ALLE RGY($G(PSJ ORD),.PSJA LLGY),ENDD C^PSGSICHK ($G(PSGP), PSJDIS) D: ('$G(PSGOR QF)&'$G(PS JDSVFY)&'$ G(PSJSTARI )) IN^PSJO CDS($G(PSG ORD),"UD", PSJDIS) IF  $G(PSGORQ F) K ^TMP( $J,LIST) D :$G(PSJORD )]"" EN^VA LM("PSJ LM  UD ACTION ") QUIT
  14033   "RTN","PSG OEV",43,0)
  14034    I $G(PSGO RQF) QUIT
  14035   "RTN","PSG OEV",44,0)
  14036    D FULL^VA LM1 ;PSJ*5 *241
  14037   "RTN","PSG OEV",45,0)
  14038    I +$G(PSJ DSFLG) D S ETVAR^PSJD OSE W !!,P SJDOSE("WA RN"),!,PSJ DOSE("WARN 1") I '$$C ONT() W !, "...order  was not ve rified..."  D PAUSE^V ALM1 D  Q: '$G(PSJACE PT)
  14039   "RTN","PSG OEV",46,0)
  14040    . S PSGOE EF(109)=1
  14041   "RTN","PSG OEV",47,0)
  14042    . S PSJAC EPT=0
  14043   "RTN","PSG OEV",48,0)
  14044    . ;D EN^V ALM("PSJU  LM ACCEPT" )
  14045   "RTN","PSG OEV",49,0)
  14046    D DDCHK G :CHK DONE
  14047   "RTN","PSG OEV",50,0)
  14048    I $G(PSGS CH)]"",((" ,P,R,")'[( ","_PSGST_ ",")) D  I  CHK G DON E
  14049   "RTN","PSG OEV",51,0)
  14050    .N SWD,SD W,XABB,X,Q X S X=$G(P SGSCH) D D W^PSGS0 Q: ($G(X)="")   I $G(PSG S0XT)="" S  PSGS0XT=" D"
  14051   "RTN","PSG OEV",52,0)
  14052    .I $G(PSG S0XT)="D", $G(PSGAT)= "" S CHK=1  W !!,"Thi s is a 'DA Y OF WEEK'  schedule  and MUST h ave admin  times.",!  D PAUSE^VA LM1
  14053   "RTN","PSG OEV",53,0)
  14054    I $G(PSGS CH)]"" D   I CHK G DO NE
  14055   "RTN","PSG OEV",54,0)
  14056    .N X,Y,PS GS0XT,PSGS 0Y,PSGOES  S PSGOES=2 ,X=PSGSCH  D ENOS^PSG S0 I $G(X) ="" S CHK= 4
  14057   "RTN","PSG OEV",55,0)
  14058    W !,"...a  few momen ts, please ..."
  14059   "RTN","PSG OEV",56,0)
  14060    I PSGORD[ "P" D
  14061   "RTN","PSG OEV",57,0)
  14062    . N PND0, PSGORDR,PS JPRIO,PSJS CHED S PND 0=^PS(53.1 ,+PSGORD,0 ) I $P(PND 0,U,24)="R " S PSGORD R=$P(PND0, U,25) D  Q
  14063   "RTN","PSG OEV",58,0)
  14064    .. N OEOR D,OOEORD,F ILE55,FILE 55N0 S FIL E55="^PS(5 5,"_DFN_$S ($P(PND0,U ,4)="U":", 5,",1:","" IV"","),FI LE55N0=FIL E55_+PSGOR DR_",0)"
  14065   "RTN","PSG OEV",59,0)
  14066    .. S OEOR D=$P(PND0, U,21) I PS GORDR S OO EORD=$P(@F ILE55N0,"^ ",21) I OE ORD'=OOEOR D D EXPOE^ PSGOER(DFN ,PSGORD,+$ $LASTREN^P SJLMPRI(DF N,PSGORD))
  14067   "RTN","PSG OEV",60,0)
  14068    .. S PSGO RDP=PSGORD ,DIE="^PS( 53.1,",DA= +PSGORD,DR ="28////A; 104////@"  W "." D ^D IE
  14069   "RTN","PSG OEV",61,0)
  14070    .. D STAR T^PSGOTR(P SGORD,+PSG ORDR) I OE ORD D
  14071   "RTN","PSG OEV",62,0)
  14072    ... K DA, DR,DIE S D A(1)=DFN,D A=+PSGORDR ,DIE=FILE5 5,DR=$S(DI E["IV":110 ,1:66)_"// //"_+OEORD  D ^DIE S  DIE=FILE55 _+PSGORDR_ ",0)",$P(@ DIE,U,21)= OEORD
  14073   "RTN","PSG OEV",63,0)
  14074    ... D EN1 ^PSJHL2(DF N,"SC",PSG ORDR),EN^P SGPEN(PSGO RDR),UNL^P SSLOCK(PSG P,PSGORDR)
  14075   "RTN","PSG OEV",64,0)
  14076    . S PSGOR DP=PSGORD  ;Used in A CTLOG to u pdate acti vity log i n 55
  14077   "RTN","PSG OEV",65,0)
  14078    . D REQDT ^PSJLIVMD( PSGORD)
  14079   "RTN","PSG OEV",66,0)
  14080    . S DIE=" ^PS(53.1," ,DA=+PSGOR D,DR="28// //A" W "."  D ^DIE,^P SGOT
  14081   "RTN","PSG OEV",67,0)
  14082    . S PSJPR IO=$S(PSGO RD["P":$P( $G(^PS(53. 1,+PSGORD, .2)),"^",4 ),PSGORD[" U":$P($G(^ PS(55,DFN, 5,+PSGORD, .2)),"^",4 ),1:$P($G( ^PS(55,PSJ HLDFN,"IV" ,+PSGORD,. 2)),"^",4) )
  14083   "RTN","PSG OEV",68,0)
  14084    . S PSJSC HED=$S(PSG ORD["P":$P ($G(^PS(53 .1,+PSGORD ,2)),"^"), PSGORD["U" :$P($G(^PS (55,DFN,5, +PSGORD,2) ),"^"),1:$ P($G(^PS(5 5,PSJHLDFN ,"IV",+PSG ORD,0)),"^ ",15))
  14085   "RTN","PSG OEV",69,0)
  14086    . I (",S, A,")[(","_ $G(PSJPRIO )_",")!($G (PSJSCHED) ="NOW")!($ G(PSJSCHED )["STAT")  D NOTIFY^P SJHL4(PSGO RD,DFN,$G( PSJPRIO),$ G(PSJSCHED ))
  14087   "RTN","PSG OEV",70,0)
  14088    . I $G(PS GRDTX)=""  S PSGRDTX= $G(^PS(53. 1,+PSGORDP ,2.5))
  14089   "RTN","PSG OEV",71,0)
  14090    S DA=+PSG ORD,DA(1)= PSGP,PSGAL ("C")=PSJS YSU*10+220 00 D ^PSGA L5 W "." S  VND4=$G(^ PS(55,PSGP ,5,DA,4))
  14091   "RTN","PSG OEV",72,0)
  14092    I $G(PSGR DTX) D NEW UDAL^PSGAL 5(PSGP,PSG ORD,6090," Requested  Start Date ",+$G(PSGR DTX))
  14093   "RTN","PSG OEV",73,0)
  14094    I $P($G(P SGRDTX),U, 3) D NEWUD AL^PSGAL5( PSGP,PSGOR D,6090,"Re quested St op Date",+ $P($G(PSGR DTX),U,3))
  14095   "RTN","PSG OEV",74,0)
  14096    N DUR,DUR ON S DURON =$S($G(PSG ORD):$G(PS GORD),1:"" ) I DURON  D
  14097   "RTN","PSG OEV",75,0)
  14098    . S DUR=$ S($P($G(PS GRDTX),U,2 )]"":$P($G (PSGRDTX), U,2),1:$$G ETDUR^PSJL IVMD(PSGP, +DURON,$S( $G(DURON)[ "P":"P",1: 5),1),1:"" )
  14099   "RTN","PSG OEV",76,0)
  14100    I $G(DUR) ]"" S $P(^ PS(55,PSGP ,5,+PSGORD ,2.5),"^", 2)=DUR
  14101   "RTN","PSG OEV",77,0)
  14102    D:$D(PSGO RDP) ACTLO G(PSGORDP, PSGP,PSGOR D)
  14103   "RTN","PSG OEV",78,0)
  14104    K PSGRSD, PSGRFD,PSG ALFN
  14105   "RTN","PSG OEV",79,0)
  14106    NEW X S X =0 I $G(PS GONF),(+$G (PSGODDD(1 ))'<+$G(PS GONF)) S X =1
  14107   "RTN","PSG OEV",80,0)
  14108    I +PSJSYS U=3,PSGORD '["O",$S(X :0,'$P(VND 4,"^",9):1 ,1:$P(VND4 ,"^",15))  D EN^PSGPE N(+PSGORD)
  14109   "RTN","PSG OEV",81,0)
  14110    S $P(VND4 ,"^",+PSJS YSU=1+9)=1  S:'$P(VND 4,U,+PSJSY SU=3+9) $P (VND4,U,+P SJSYSU=3+9 )=+$P(VND4 ,U,+PSJSYS U=3+9)
  14111   "RTN","PSG OEV",82,0)
  14112    I PSJSYSL >1 S $P(^P S(55,PSGP, 5,+PSGORD, 7),U)=PSGD T S:$P(^(7 ),U,2)=""  $P(^(7),U, 2)="N"_$S( $P(^PS(55, PSGP,5,+PS GORD,0),"^ ",24)="E": "E",1:"")  S PSGTOL=2 ,PSGUOW=DU Z,PSGTOO=1 ,DA=+PSGOR D D ENL^PS GVDS
  14113   "RTN","PSG OEV",83,0)
  14114    S:$P(VND4 ,"^",15)&' $P(VND4,"^ ",16) $P(V ND4,"^",15 )="" S:$P( VND4,"^",1 8)&'$P(VND 4,"^",19)  $P(VND4,"^ ",18)="" S :$P(VND4," ^",22)&'$P (VND4,"^", 23) $P(VND 4,"^",22)= "" S $P(VN D4,"^",PSJ SYSU,PSJSY SU+1)=DUZ_ "^"_PSGDT, ^PS(55,PSG P,5,+PSGOR D,4)=VND4
  14115   "RTN","PSG OEV",84,0)
  14116    I '$P(VND 4,U,9) S ^ PS(55,"APV ",PSGP,+PS GORD)=""
  14117   "RTN","PSG OEV",85,0)
  14118    I '$P(VND 4,U,10) S  ^PS(55,"AN V",PSGP,+P SGORD)=""
  14119   "RTN","PSG OEV",86,0)
  14120    I $P(VND4 ,U,9) K ^P S(55,"APV" ,PSGP,+PSG ORD)
  14121   "RTN","PSG OEV",87,0)
  14122    I $P(VND4 ,U,10) K ^ PS(55,"ANV ",PSGP,+PS GORD)
  14123   "RTN","PSG OEV",88,0)
  14124    W:'$D(PSJ SPEED) ! W  !,"ORDER  VERIFIED." ,!
  14125   "RTN","PSG OEV",89,0)
  14126    I '$D(PSJ SPEED) K D IR S DIR(0 )="E" D ^D IR K DIR
  14127   "RTN","PSG OEV",90,0)
  14128    S:+PSJSYS U=3 ^PS(55 ,"AUE",PSG P,+PSGORD) ="" S PSGA CT="C"_$S( '$D(^PS(55 ,PSGP,5,+P SGORD,4)): "E",$P(^(4 ),"^",16): "",1:"E")_ "RS",PSGCA NFL=2
  14129   "RTN","PSG OEV",91,0)
  14130    ;; START  NCC REMEDI ATION >> 3 27*RJS
  14131   "RTN","PSG OEV",92,0)
  14132    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, PSGP,+PSGO RD)
  14133   "RTN","PSG OEV",93,0)
  14134    I CLOZFLG ,'$$GET1^D IQ(55.06,+ PSGORD_"," _PSGP,301) ,$G(^TMP($ J,"PSGCLOZ ",PSGP,+PS JORD,"SAND ")) D
  14135   "RTN","PSG OEV",94,0)
  14136    .N DIE,DA ,DR S DIE= "^PS(55,"_ PSGP_",5," ,DA=+PSGOR D,DA(1)=PS GP
  14137   "RTN","PSG OEV",95,0)
  14138    .S DR="30 1////"_^TM P($J,"PSGC LOZ",PSGP, +PSGORD,"S AND") D ^D IE
  14139   "RTN","PSG OEV",96,0)
  14140    .K ^TMP($ J,"PSGCLOZ ",PSGP,+$G (PSJORD)," SAND")
  14141   "RTN","PSG OEV",97,0)
  14142    ;; END NC C REMEDIAT ION >> 327 *RJS
  14143   "RTN","PSG OEV",98,0)
  14144    S VALMBCK ="Q" D EN1 ^PSJHL2(PS GP,$S(+PSJ SYSU=3:"SC ",+PSJSYSU =1:"SC",1: "XX"),+PSG ORD_"U")      ; allow  status ch ange to be  sent for  pharmacist s & nurses
  14145   "RTN","PSG OEV",99,0)
  14146    S ^TMP("P SODAOC",$J ,"IP IEN") =$G(PSJORD ),^TMP("PS ODAOC",$J, "IP NEW IE N")=$G(PSG ORD)
  14147   "RTN","PSG OEV",100,0 )
  14148    ; -- RTC  198753 - c lean-up va riable - K  PSJAGYSV
  14149   "RTN","PSG OEV",101,0 )
  14150    D SETOC^P SJNEWOC(PS GORD) K PS JAGYSV
  14151   "RTN","PSG OEV",102,0 )
  14152     ; **This  is where  the Automa ted Dispen sing Machi ne hook is  called. D o NOT DELE TE or chan ge this lo cation **
  14153   "RTN","PSG OEV",103,0 )
  14154    ;; START  NCC REMEDI ATION >> 3 27*RJS - n ext line
  14155   "RTN","PSG OEV",104,0 )
  14156    D NEWJ^PS JADM I CLO ZFLG D CLO ZSND^PSJOE
  14157   "RTN","PSG OEV",105,0 )
  14158    ; **END o f Interfac e hook **
  14159   "RTN","PSG OEV",106,0 )
  14160     ; **END  of Interfa ce hook **
  14161   "RTN","PSG OEV",107,0 )
  14162    D:+PSJSYS U=1 EN1^PS JHL2(PSGP, "ZV",+PSGO RD_"U")
  14163   "RTN","PSG OEV",108,0 )
  14164   DONE ;
  14165   "RTN","PSG OEV",109,0 )
  14166    W:CHK !!, "...order  NOT verifi ed..."
  14167   "RTN","PSG OEV",110,0 )
  14168    I '$D(PSJ SPEED),'CH K,+PSJSYSU =3,$G(PSJP RI)="D" D
  14169   "RTN","PSG OEV",111,0 )
  14170    .N DIR W  ! S DIR(0) ="S^Y:Yes; N:No",DIR( "A")="Do y ou want to  enter a P rogress No te",DIR("B ")="No" D  ^DIR
  14171   "RTN","PSG OEV",112,0 )
  14172    .Q:Y="N"
  14173   "RTN","PSG OEV",113,0 )
  14174    .D MAIN^T IUEDIT(3,. TIUDA,PSGP ,"","","", "",1)
  14175   "RTN","PSG OEV",114,0 )
  14176    S VALMBCK ="Q" K CHK ,DA,DIE,F, DP,DR,ND,P SGAL,PSGOD A,PSGTOL,P SGTOO,PSGU OW,PSJDOSE ,PSJVAR,VN D4,X,ZZND  Q
  14177   "RTN","PSG OEV",115,0 )
  14178    ;
  14179   "RTN","PSG OEV",116,0 )
  14180   LBL ;
  14181   "RTN","PSG OEV",117,0 )
  14182    Q
  14183   "RTN","PSG OEV",118,0 )
  14184    ;
  14185   "RTN","PSG OEV",119,0 )
  14186   ALLERGY(PS GORD,PSJAL LGY) ;setu p PSJALLGY  when non- vf was sel ected to v erify
  14187   "RTN","PSG OEV",120,0 )
  14188    N PSGDDI, PSJDD,PSJX ,ARR
  14189   "RTN","PSG OEV",121,0 )
  14190    I '+$G(PS GORD),($G( PSGORD)'[" P") Q
  14191   "RTN","PSG OEV",122,0 )
  14192    D LIST^DI C(53.11,", "_+PSGORD_ ",",,"I",, ,,,,,"ARR" )
  14193   "RTN","PSG OEV",123,0 )
  14194    F I=1:1 Q :'$D(ARR(" DILIST",2, I))  S PSG DDI=ARR("D ILIST",2,I ) D
  14195   "RTN","PSG OEV",124,0 )
  14196    . S PSJDD =+$$GET1^D IQ(53.11,P SGDDI_","_ +PSGORD,.0 1,"I")
  14197   "RTN","PSG OEV",125,0 )
  14198    . S PSJX= $S('$L($$G ET1^DIQ(50 ,+PSJDD,.0 1)):1,$$GE T1^DIQ(50, +PSJDD,63, "I")'["U": 1,$$GET1^D IQ(50,+PSJ DD,100)="" :0,1:$$GET 1^DIQ(50,+ PSJDD,100, "I")'>$G(D T))
  14199   "RTN","PSG OEV",126,0 )
  14200    . Q:PSJX
  14201   "RTN","PSG OEV",127,0 )
  14202    . S PSJAL LGY(PSJDD) =""
  14203   "RTN","PSG OEV",128,0 )
  14204    Q
  14205   "RTN","PSG OEV",129,0 )
  14206   CHK(ND,DRG ,ND2) ; ch ecks for d ata in req uired fiel ds
  14207   "RTN","PSG OEV",130,0 )
  14208    ; Input:  ND  - ^(PS (53.1,PSGO RD,0)
  14209   "RTN","PSG OEV",131,0 )
  14210    ;         DRG - ^(.2 )
  14211   "RTN","PSG OEV",132,0 )
  14212    ;         ND2 - ^(2)
  14213   "RTN","PSG OEV",133,0 )
  14214    S Y=$G(Y)
  14215   "RTN","PSG OEV",134,0 )
  14216    S CHK=""  I DRG,$D(^ PS(50.7,+D RG,0))
  14217   "RTN","PSG OEV",135,0 )
  14218    E  S CHK= 1
  14219   "RTN","PSG OEV",136,0 )
  14220    I ND="" S  CHK=CHK_2 3
  14221   "RTN","PSG OEV",137,0 )
  14222    E  S CHK= CHK_$S($P( ND,"^",3): "",1:2)_$S ($P(ND,"^" ,7)]"":"", 1:3)
  14223   "RTN","PSG OEV",138,0 )
  14224    ;The nake d referenc e on the l ine below  refers to  the variab le ND whic h is ^PS(5 3.1,PSGORD ,0).
  14225   "RTN","PSG OEV",139,0 )
  14226    I ND2=""  S CHK=CHK_ $S('$D(^(0 )):4,$P(^( 0),"^",7)= "OC":"",1: 4)_56
  14227   "RTN","PSG OEV",140,0 )
  14228    E  S CHK= CHK_$S($P( ND2,"^")]" ":"",ND="" :4,$P(ND," ^",7)="OC" :"",1:4)_$ S($P(ND2," ^",2):"",1 :5)_$S($P( ND2,"^",4) :"",1:6)
  14229   "RTN","PSG OEV",141,0 )
  14230    I $$CHECK ^PSGOE8(PS JSYSP),$P( DRG,U,2)=" " S CHK=CH K_8
  14231   "RTN","PSG OEV",142,0 )
  14232    K PSGDFLG ,PSGPFLG S  PSGDI=0
  14233   "RTN","PSG OEV",143,0 )
  14234    S:'$$DDOK ^PSGOE2("^ PS(53.45," _PSJSYSP_" ,2,",+DRG)  CHK=CHK_7 ,(PSGDFLG, PSGDI)=1
  14235   "RTN","PSG OEV",144,0 )
  14236    S:'$$OIOK ^PSGOE2(+D RG) PSGPFL G=1
  14237   "RTN","PSG OEV",145,0 )
  14238    I 'CHK,$G (PSGSCH)]" " D
  14239   "RTN","PSG OEV",146,0 )
  14240    .N X,Y,PS GS0Y,PSGS0 XT,PSGOES  S PSGOES=2 ,X=PSGSCH  D ENOS^PSG S0 I $G(X) ="" S CHK= 4
  14241   "RTN","PSG OEV",147,0 )
  14242    Q:'CHK
  14243   "RTN","PSG OEV",148,0 )
  14244    W $C(7)
  14245   "RTN","PSG OEV",149,0 )
  14246    ;
  14247   "RTN","PSG OEV",150,0 )
  14248   CHKM ;
  14249   "RTN","PSG OEV",151,0 )
  14250    D FULL^VA LM1 K:CHK  Y
  14251   "RTN","PSG OEV",152,0 )
  14252    ; changed  to remove  ^DD ref
  14253   "RTN","PSG OEV",153,0 )
  14254    ; PSJ*5*2 67 VMP Add  the 8th c ondition
  14255   "RTN","PSG OEV",154,0 )
  14256    W !!,"THE  FOLLOWING  ",$S($L(C HK)>1:"ARE ",1:"IS"), " EITHER I NVALID OR  MISSING FR OM THIS OR DER:" F X= 1:1:8 W:CH K[X !?5,$P ("ORDERABL E ITEM^MED  ROUTE^SCH EDULE TYPE ^SCHEDULE^ START DATE /TIME^STOP  DATE/TIME ^DISPENSE  DRUG^DOSAG E ORDERED" ,"^",X)
  14257   "RTN","PSG OEV",155,0 )
  14258    I CHK=7 W  !,"Orders  with no d ispense dr ugs or mul tiple disp ense drugs ",!,"requi re dosage  ordered"
  14259   "RTN","PSG OEV",156,0 )
  14260    W:CHK]""  !!,$S($L(C HK)>1:"THE SE FIELDS  ARE",1:"TH IS FIELD I S")," NECE SSARY FOR  VERIFICATI ON."
  14261   "RTN","PSG OEV",157,0 )
  14262    N DIR,DUO UT,DTOUT S  DIR(0)="E " D ^DIR I  $D(DUOUT) !$D(DTOUT)  S CHK=1 Q
  14263   "RTN","PSG OEV",158,0 )
  14264    Q
  14265   "RTN","PSG OEV",159,0 )
  14266    ;
  14267   "RTN","PSG OEV",160,0 )
  14268   CONT() ;
  14269   "RTN","PSG OEV",161,0 )
  14270    NEW DIR,D IRUT,Y
  14271   "RTN","PSG OEV",162,0 )
  14272    W ! K DIR ,DIRUT
  14273   "RTN","PSG OEV",163,0 )
  14274    S DIR(0)= "Y",DIR("A ")="Would  you like t o continue  verifying  the order ",DIR("B") ="No"
  14275   "RTN","PSG OEV",164,0 )
  14276    D ^DIR
  14277   "RTN","PSG OEV",165,0 )
  14278    Q Y
  14279   "RTN","PSG OEV",166,0 )
  14280    ;
  14281   "RTN","PSG OEV",167,0 )
  14282   DDCHK ; di spense dru g check
  14283   "RTN","PSG OEV",168,0 )
  14284    S DRGF="^ PS("_$S(PS GORD["P":" 53.1,"_+PS GORD,1:"55 ,"_PSGP_", 5,"_+PSGOR D)_",",CHK =$S('$O(@( DRGF_"1,0) ")):7,1:0)
  14285   "RTN","PSG OEV",169,0 )
  14286    S PSGPD=$ G(@(DRGF_" .2)"))
  14287   "RTN","PSG OEV",170,0 )
  14288    S CHK=$S( '$$DDOK^PS GOE2(DRGF_ "1,",PSGPD ):7,1:0)
  14289   "RTN","PSG OEV",171,0 )
  14290    Q:CHK=0
  14291   "RTN","PSG OEV",172,0 )
  14292    W $C(7),! !,"This or der must h ave at lea st one val id, active  dispense  drug to be  verified. "
  14293   "RTN","PSG OEV",173,0 )
  14294    ;
  14295   "RTN","PSG OEV",174,0 )
  14296   DDEDIT ;
  14297   "RTN","PSG OEV",175,0 )
  14298    ;*** Remo ve all dis pense drug  for this  order
  14299   "RTN","PSG OEV",176,0 )
  14300    K @(DRGF_ "1)")
  14301   "RTN","PSG OEV",177,0 )
  14302    ; The nak ed referen ce below r efers to t he indirec t full ref erence in  DRGF_"1,"_ Q_")", whi ch is eith er ^PS(53. 1,+PSGORD, Q) or ^PS( 55,DFN,5,+ PSGORD,Q)
  14303   "RTN","PSG OEV",178,0 )
  14304    K ^PS(53. 45,PSJSYSP ,2) S (X,Q )=0 F  S Q =$O(@(DRGF _"1,"_Q_") ")) Q:'Q   S Y=$G(^(Q ,0)),X=Q S  ^PS(53.45 ,PSJSYSP,2 ,Q,0)=Y I  Y S ^PS(53 .45,PSJSYS P,2,"B",+Y ,Q)=""
  14305   "RTN","PSG OEV",179,0 )
  14306    I X S ^PS (53.45,PSJ SYSP,2,0)= "^53.4502P ^"_X_"^"_X
  14307   "RTN","PSG OEV",180,0 )
  14308    D ENDRG^P SGOEF1(PSG PD,X)
  14309   "RTN","PSG OEV",181,0 )
  14310    I 'CHK S  %X="^PS(53 .45,"_PSJS YSP_",2,", %Y=DRGF_"1 ," D %XY^% RCR S $P(@ (DRGF_"1,0 )"),"^",2) =$S(DRGF[5 3.1:"53.11 P",1:"55.0 7P")
  14311   "RTN","PSG OEV",182,0 )
  14312    K DRG,DRG F,%X,%Y,PS GPD Q
  14313   "RTN","PSG OEV",183,0 )
  14314    ;
  14315   "RTN","PSG OEV",184,0 )
  14316   AESCREEN()  ;
  14317   "RTN","PSG OEV",185,0 )
  14318    ; Output:  0 - Requi red fields  missing a nd DON'T a llow accep t
  14319   "RTN","PSG OEV",186,0 )
  14320    ;          1 - Requi red fields  found.
  14321   "RTN","PSG OEV",187,0 )
  14322    Q:'$G(CHK ) 1
  14323   "RTN","PSG OEV",188,0 )
  14324    S Y=$P($G (^ORD(101, +$G(^ORD(1 01,DA(1),1 0,DA,0)),0 )),U) I Y= "" Q 0
  14325   "RTN","PSG OEV",189,0 )
  14326    I Y="PSJU  LM ACCEPT  EDIT" Q 1
  14327   "RTN","PSG OEV",190,0 )
  14328    Q 0
  14329   "RTN","PSG OEV",191,0 )
  14330   ACTLOG(PSG ORDP,DFN,P SGORD)  ;S tore 53.1  activity l og in loca l array to  be moved  to 55
  14331   "RTN","PSG OEV",192,0 )
  14332    ;PSGORDP:  IEN from  53.1
  14333   "RTN","PSG OEV",193,0 )
  14334    ;PSGORD :  IEN from  55
  14335   "RTN","PSG OEV",194,0 )
  14336    NEW PSGX, PSGXDA,PSG AL531,Q,QQ
  14337   "RTN","PSG OEV",195,0 )
  14338    F PSGX=0: 0 S PSGX=$ O(^PS(53.1 ,+PSGORDP, "A",PSGX))  Q:'PSGX   D
  14339   "RTN","PSG OEV",196,0 )
  14340    . S PSGAL 531=$G(^PS (53.1,+PSG ORDP,"A",P SGX,0))
  14341   "RTN","PSG OEV",197,0 )
  14342    . S QQ=$G (^PS(55,DF N,5,+PSGOR D,9,0)) S: QQ="" QQ=" ^55.09D" F  Q=$P(QQ,U ,3)+1:1 I  '$D(^(Q))  S $P(QQ,U, 3,4)=Q_U_Q ,^(0)=QQ,P SGXDA=Q Q
  14343   "RTN","PSG OEV",198,0 )
  14344    . S ^PS(5 5,DFN,5,+P SGORD,9,PS GXDA,0)=PS GAL531
  14345   "RTN","PSG OEV",199,0 )
  14346    . N TXTLN  S TXTLN=" " F  S TXT LN=$O(^PS( 53.1,+PSGO RDP,"A",PS GX,1,TXTLN )) Q:TXTLN =""  D
  14347   "RTN","PSG OEV",200,0 )
  14348    .. I TXTL N=0 S ^PS( 55,DFN,5,+ PSGORD,9,P SGXDA,1,TX TLN)=^PS(5 3.1,+PSGOR DP,"A",PSG X,1,TXTLN)  Q
  14349   "RTN","PSG OEV",201,0 )
  14350    .. S ^PS( 55,DFN,5,+ PSGORD,9,P SGXDA,1,TX TLN,0)=^PS (53.1,+PSG ORDP,"A",P SGX,1,TXTL N,0)
  14351   "RTN","PSG OEV",202,0 )
  14352    Q
  14353   "RTN","PSG ON")
  14354   0^26^B3954 2310
  14355   "RTN","PSG ON",1,0)
  14356   PSGON ;BIR /CML3-SELE CT ORDERS  ;Jul 26, 2 017@18:04: 02
  14357   "RTN","PSG ON",2,0)
  14358    ;;5.0;INP ATIENT MED ICATIONS ; **2,22,54, 327**;16 D EC 97;Buil d 64
  14359   "RTN","PSG ON",3,0)
  14360   ENCHK ;
  14361   "RTN","PSG ON",4,0)
  14362    K PSGODDD  S PSGODDD =1,PSGODDD (1)="" W:X ="-" "  (A LL)" I X=" ALL"!(X="- ") S X="1- "_PSGLMT
  14363   "RTN","PSG ON",5,0)
  14364    E  S:$E(X )="-" X=1_ X S:$E(X,$ L(X))="-"  X=X_PSGLMT
  14365   "RTN","PSG ON",6,0)
  14366    F Q=1:1:$ L(X,",") S  X1=$P(X," ,",Q) D SE T Q:'$D(X)
  14367   "RTN","PSG ON",7,0)
  14368    Q
  14369   "RTN","PSG ON",8,0)
  14370    ;
  14371   "RTN","PSG ON",9,0)
  14372   SET ;
  14373   "RTN","PSG ON",10,0)
  14374    I $S(X1>P SGLMT:1,X1 <1:1,X1?.N :0,1:X1'?1 .N1"-"1.N)  K X Q
  14375   "RTN","PSG ON",11,0)
  14376    I X1'["-"  S X2=X1 G  SET1
  14377   "RTN","PSG ON",12,0)
  14378    F X2=$P(X 1,"-"):1:$ P(X1,"-",2 ) D SET1 Q :'$D(X)
  14379   "RTN","PSG ON",13,0)
  14380    Q
  14381   "RTN","PSG ON",14,0)
  14382    ;
  14383   "RTN","PSG ON",15,0)
  14384   SET1 ;
  14385   "RTN","PSG ON",16,0)
  14386    S X2=+X2  I $S(X2<1: 1,X2>PSGLM T:1,$D(PSG EFN):'$D(P SGEFN(X2)) ,1:0) K X  Q
  14387   "RTN","PSG ON",17,0)
  14388    I PSGODDD (PSGODDD)  F QQ=+$G(P SGOESF):1: PSGODDD I  ","_$G(PSG ODDD(QQ))[ (","_X2_", ") Q
  14389   "RTN","PSG ON",18,0)
  14390    I  Q
  14391   "RTN","PSG ON",19,0)
  14392    I $L(PSGO DDD(PSGODD D))+$L(X2) >244 S PSG ODDD=PSGOD DD+1,PSGOD DD(PSGODDD )=""
  14393   "RTN","PSG ON",20,0)
  14394    S PSGODDD (PSGODDD)= PSGODDD(PS GODDD)_X2_ "," ;Q
  14395   "RTN","PSG ON",21,0)
  14396    Q
  14397   "RTN","PSG ON",22,0)
  14398    ;
  14399   "RTN","PSG ON",23,0)
  14400   ENASR ; ac tion/selec t read
  14401   "RTN","PSG ON",24,0)
  14402    ;S ACTION =$S($D(PSG PRF):0,PSG ONC:1,PSGO NV:1,$G(PS GONF):1,1: PSGONR>0)
  14403   "RTN","PSG ON",25,0)
  14404    S ACTION= 0
  14405   "RTN","PSG ON",26,0)
  14406   RD1 ;W !!, $S($D(PSGP RF):"View" ,1:"Select "),$S(ACTI ON:" ACTIO N or",1:"" )," ORDER" ,$S(PSGLMT >1:"S (1-" _PSGLMT,1: " (1"),"):  " R X:DTI ME W:'$T $ C(7) S:'$T  X="^" I " ^"[X K ACT ION Q
  14407   "RTN","PSG ON",27,0)
  14408    W !!,$S($ D(PSGPRF): "View",1:" Select"),$ S(ACTION:"  ACTION or ",1:""),"  ORDER",$S( PSGLMT>1:" S (1-"_PSG LMT,1:" (1 "),"): " R  X:DTIME W :'$T $C(7)  S:'$T X=" ^" I X["^"  K ACTION  S X="^" Q
  14409   "RTN","PSG ON",28,0)
  14410    I X="" K  ACTION Q
  14411   "RTN","PSG ON",29,0)
  14412    I X="DC", ACTION,PSG ONC W "  ( DISCONTINU E)" S X="D " Q
  14413   "RTN","PSG ON",30,0)
  14414    I X="DC"  W $C(7),"   ??" G RD1
  14415   "RTN","PSG ON",31,0)
  14416    I $P("DIS CONTINUE", X)="",ACTI ON,PSGONC  W $P("DISC ONTINUE",X ,2) S X="D " Q
  14417   "RTN","PSG ON",32,0)
  14418    I $P("DIS CONTINUE", X)="" W $C (7),"  ??"  G RD1
  14419   "RTN","PSG ON",33,0)
  14420    I $P("REN EW",X)="", ACTION,PSG ONR W $P(" RENEW",X,2 ) S X="R"  Q
  14421   "RTN","PSG ON",34,0)
  14422    I $P("REN EW",X)=""  W $C(7),"   ??" G RD1
  14423   "RTN","PSG ON",35,0)
  14424    I $P("VER IFY",X)="" ,ACTION,PS GONV W $P( "VERIFY",X ,2) S X="V " Q
  14425   "RTN","PSG ON",36,0)
  14426    I $P("VER IFY",X)=""  W $C(7),"   ??" G RD 1
  14427   "RTN","PSG ON",37,0)
  14428    I $P("FIN ISH",X)="" ,ACTION,$G (PSGONF) W  $P("FINIS H",X,2) S  X="F" Q
  14429   "RTN","PSG ON",38,0)
  14430    I $P("FIN ISH",X)=""  W $C(7),"  ??" G RD1
  14431   "RTN","PSG ON",39,0)
  14432    I $S(X="A LL":1,X["- ":1,1:X) D  ENCHK Q:$ D(X)  W $C (7),"  ??"  G RD1
  14433   "RTN","PSG ON",40,0)
  14434    I X?1."?"  D H1 G RD 1
  14435   "RTN","PSG ON",41,0)
  14436    W $C(7),"   ??" G RD 1
  14437   "RTN","PSG ON",42,0)
  14438    ;
  14439   "RTN","PSG ON",43,0)
  14440   H1 ;
  14441   "RTN","PSG ON",44,0)
  14442    D FULL^VA LM1 W !!?2  I ACTION   D
  14443   "RTN","PSG ON",45,0)
  14444    .W "Selec t ACTION t o take on  order",$E( "s",PSGONR >1!(PSGONC >1)!(PSGON V>1)!($G(P SGONF)>1)) ,!,". Sele ct -",! W: PSGONC ?9, "D for DIS CONTINUE", ! W:PSGONR  ?9,"R for  RENEW",!  W:PSGONV ? 9,"V for V ERIFY",! W :$G(PSGONF ) ?9,"F fo r FINISH", !
  14445   "RTN","PSG ON",46,0)
  14446    W !,"Sele ct ORDER", $S(PSGLMT> 1:"S (1-"_ PSGLMT,1:"  (1"),") t o view",$S ('$D(PSGPR F):" and/o r on which  to take a ction",1:" "),"." D:X ?2."?" H2
  14447   "RTN","PSG ON",47,0)
  14448    N DIR S D IR(0)="E"  D ^DIR I $ D(VALM("LI NES")) D R E^VALM4
  14449   "RTN","PSG ON",48,0)
  14450    Q
  14451   "RTN","PSG ON",49,0)
  14452    ;
  14453   "RTN","PSG ON",50,0)
  14454   ENWO ; whi ch orders
  14455   "RTN","PSG ON",51,0)
  14456    S PSGLMT= $S(PSGONW= "R":PSGONR ,PSGONW="V ":PSGONV,1 :PSGONC)
  14457   "RTN","PSG ON",52,0)
  14458   RDW ;
  14459   "RTN","PSG ON",53,0)
  14460    W !!,$S(P SGONW="V": "VERIFY wh ich orders ",PSGONW=" R":$S($P(P SJSYSP0,"^ ",3):"RENE W which or ders",1:"M ARK which  orders for  RENEWAL") ,1:$S($P(P SJSYSP0,"^ ",5):"DISC ONTINUE wh ich orders ",1:"MARK  which orde rs for DIS CONTINUATI ON"))," (1 -",PSGLMT, "): "
  14461   "RTN","PSG ON",54,0)
  14462    R X:DTIME  W:'$T $C( 7) S:'$T X ="^" I "^" [X Q
  14463   "RTN","PSG ON",55,0)
  14464    I X?1."?"  W !!?2,"S elect orde r",$E("s", PSGLMT>1), " to ",$S( PSGONW="V" :"verify", PSGONW="R" :$S($P(PSJ SYSP0,"^", 3):"renew. ",1:"mark  for renewa l."),1:$S( $P(PSJSYSP 0,"^",5):" discontinu e.",1:"mar k for disc ontinuatio n.")) D:X? 2."?" H2 G  RDW
  14465   "RTN","PSG ON",56,0)
  14466    D ENCHK I  '$D(X) W  $C(7),"  ? ?" G RDW
  14467   "RTN","PSG ON",57,0)
  14468    Q
  14469   "RTN","PSG ON",58,0)
  14470    ;
  14471   "RTN","PSG ON",59,0)
  14472   H2 ;
  14473   "RTN","PSG ON",60,0)
  14474    N X S X=$ S($D(PSGEF N):"field" ,1:"order" ) W !!?2," Select ",X ,"s either  singularl y separate d by comma s (1,2,3),  by a rang e of",!,X, "s separat ed by a da sh (1-3),  or a combi nation (1, 2,4-6).  T o select a ll"
  14475   "RTN","PSG ON",61,0)
  14476    W !,X,"s,  enter 'AL L' or a da sh ('-').   You can a lso enter  '-n' to se lect the"
  14477   "RTN","PSG ON",62,0)
  14478    W !,"firs t ",X," th rough the  'nth' ",X, " or enter  'n-' to s elect the  'nth' ",X, !,"through  the last  ",X,".  If  an ",X,"  is selecte d more tha n once, on ly the fir st",!,"sel ection is  used (Ente ring '1,2, 1' would r eturn '1,2 '.)."
  14479   "RTN","PSG ON",63,0)
  14480    W:$D(PSGE FN) !!,?2, "Fields nu mbers are  as follows :"
  14481   "RTN","PSG ON",64,0)
  14482    I '$D(P(" PON")) D
  14483   "RTN","PSG ON",65,0)
  14484    .Q:'$D(PS GEFN)
  14485   "RTN","PSG ON",66,0)
  14486    .N PS S P S=$S($G(PS JORD)["P": 1,$G(PSJOR D)["U":2,1 :2)
  14487   "RTN","PSG ON",67,0)
  14488    .W !?3,"* (1) Ordera ble Item", !,?3,$S(PS =1:" ",PS= 2:"*"),"(2 ) Dosage O rdered"
  14489   "RTN","PSG ON",68,0)
  14490    .W !?3,$S (PS=1:" ", PS=2:"*"), "(3) Start ",!?3,"*(4 ) Med Rout e",!?3,$S( PS=1:" ",P S=2:"*")," (5) Stop"
  14491   "RTN","PSG ON",69,0)
  14492    .W !?3,"  (6) Schedu le Type",! ?3," (7) S elf Med",! ?3,"*(8) S chedule"
  14493   "RTN","PSG ON",70,0)
  14494    .W !?3,"  (9) Admin  Times",!?3 ,"*(10) Pr ovider",!? 3," (11) S pecial "
  14495   "RTN","PSG ON",71,0)
  14496    .W "Instr uctions",! ?3," (12)  Dispense D rug"
  14497   "RTN","PSG ON",72,0)
  14498    E  D
  14499   "RTN","PSG ON",73,0)
  14500    .Q:'$D(PS GEFN)
  14501   "RTN","PSG ON",74,0)
  14502    .N PS S P S=$S($G(PS JORD)["P": 1,$G(PSJOR D)["V":2,1 :2)
  14503   "RTN","PSG ON",75,0)
  14504    .W !?3,$S ($G(P("OT" ))="F":"*" ,PS=1:" ", PS=2:"*"), "(1) Addit ives",!?3, $S($G(P("O T"))="F":" *",P(4)="P ":" ",PS=1 :" ",PS=2: "*"),"(2)  Solutions" ,!?3,$S(P( 4)="P":" " ,PS=1:" ", PS=2:"*"), "(3) Infus ion Rate"
  14505   "RTN","PSG ON",76,0)
  14506    .W !?3,$S (PS=1:" ", PS=2:"*"), "(4) Start ",!?3,"*(5 ) Med Rout e",!?3,$S( PS=1:" ",P S=2:"*")," (6) Stop"
  14507   "RTN","PSG ON",77,0)
  14508    .W !?3,"* (7) Schedu le",!?3,"  (8) Admin  Times",!?3 ,"*(9) Pro vider"
  14509   "RTN","PSG ON",78,0)
  14510    .I $G(P(4 ))="P"!($G (P("DTYP") )=0) D
  14511   "RTN","PSG ON",79,0)
  14512    ..W !?3," *(10) Orde rable Item ",!?3," (1 1) Other P rint",!?3, " (12) Rem arks"
  14513   "RTN","PSG ON",80,0)
  14514    .E  W !?3 ," (10) Ot her Print" ,!?3," (11 ) Remarks"
  14515   "RTN","PSG ON",81,0)
  14516    W ! K DIR  S DIR(0)= "E" D ^DIR  K DIR
  14517   "RTN","PSG ON",82,0)
  14518    Q
  14519   "RTN","PSG ON",83,0)
  14520    ;
  14521   "RTN","PSG ON",84,0)
  14522   ENEFA ;
  14523   "RTN","PSG ON",85,0)
  14524    N Q,X1,X2  I '$D(PSG EFN) K Y S  Y="" Q
  14525   "RTN","PSG ON",86,0)
  14526    ;
  14527   "RTN","PSG ON",87,0)
  14528   EFA ;
  14529   "RTN","PSG ON",88,0)
  14530    K Y S Y=" " R !!,"Se lect FIELD S TO EDIT:  ",X:DTIME  E  W $C(7 ) S X="^"  Q
  14531   "RTN","PSG ON",89,0)
  14532    I "^"[X Q
  14533   "RTN","PSG ON",90,0)
  14534    ;I X?1."? " D:$D(P(" PON")) H2, @("DISPLAY ^PSJLIFN")  D:'$D(P(" PON")) FUL L^VALM1,EF H G EFA
  14535   "RTN","PSG ON",91,0)
  14536    I X="??"& ('$D(P("PO N"))) D FU LL^VALM1,H 2 G EFA
  14537   "RTN","PSG ON",92,0)
  14538    I X?1."?"  D FULL^VA LM1 D:'$D( P("PON"))  EFH D:$D(P ("PON")) H 2,@("DISPL AY^PSJLIFN ") G EFA
  14539   "RTN","PSG ON",93,0)
  14540    ;* I X?1. "?" D EFH  D:X?2."?"  H2,READ^PS JUTL,@($S( '$D(PSJDTY P):"ENW^PS GOEEW",PSJ DTYP="OU": "ENW^PSJOE EW",PSJDTY P="O":"^PS IVORV1",1: "EN^PSIVOR V2")) G EF A
  14541   "RTN","PSG ON",94,0)
  14542    I X="-"!( $P("ALL",X )="") W $S (X="-":"   (ALL)",1:$ P("ALL",X, 2)) F Q=0: 0 S Q=$O(P SGEFN(Q))  Q:'Q  S Y= Y_Q_","
  14543   "RTN","PSG ON",95,0)
  14544    I  G FDON E
  14545   "RTN","PSG ON",96,0)
  14546    S:$E(X)=" -" X=+PSGE FN_X S:$E( $L(X))="-"  X=X_$P(PS GEFN,":",2 )
  14547   "RTN","PSG ON",97,0)
  14548    F Q=1:1:$ L(X,",") S  X1=$P(X," ,",Q) D FS  Q:'$D(X)
  14549   "RTN","PSG ON",98,0)
  14550    I '$D(X)  W $C(7),"   ??" G EFA
  14551   "RTN","PSG ON",99,0)
  14552    ;
  14553   "RTN","PSG ON",100,0)
  14554   FDONE ;
  14555   "RTN","PSG ON",101,0)
  14556    I '$D(Y)  W $C(7),"  ??" G EFA
  14557   "RTN","PSG ON",102,0)
  14558    S:Y Y=$E( Y,1,$L(Y)- 1) Q
  14559   "RTN","PSG ON",103,0)
  14560    ;
  14561   "RTN","PSG ON",104,0)
  14562   FS ;
  14563   "RTN","PSG ON",105,0)
  14564    I $S(X1?1 .N1"-"1.N: 0,X1'?1.N: 1,'$D(PSGE FN(X1)):1, 1:","_Y[X1 ) K X Q
  14565   "RTN","PSG ON",106,0)
  14566    I X1'["-"  S Y=Y_X1_ "," Q
  14567   "RTN","PSG ON",107,0)
  14568    S X2=+X1, Y=Y_X2_","  F  S X2=$ O(PSGEFN(X 2)) K:$S(X ="":1,","_ Y[X2:1,1:X 2>$P(X1,"- ",2)) Y Q: '$D(Y)  S  Y=Y_X2_","  Q:X2=$P(X 1,"-",2)
  14569   "RTN","PSG ON",108,0)
  14570    Q
  14571   "RTN","PSG ON",109,0)
  14572   ENEFA2 ;
  14573   "RTN","PSG ON",110,0)
  14574    I '$D(PSG EFN) K Y S  Y="" Q
  14575   "RTN","PSG ON",111,0)
  14576    S Y=$P(XQ ORNOD(0)," =",2)
  14577   "RTN","PSG ON",112,0)
  14578    ; wasn't  handling " 0#" correc tly, will  strip off  a leading  zero on 1- 9
  14579   "RTN","PSG ON",113,0)
  14580    N Q,X1 F  Q=1:1:$L(Y ,",") S X1 =$P(Y,",", Q) D
  14581   "RTN","PSG ON",114,0)
  14582    .I X1?1"0 "1.2N S $P (Y,",",Q)= +X1
  14583   "RTN","PSG ON",115,0)
  14584    Q
  14585   "RTN","PSG ON",116,0)
  14586    ;
  14587   "RTN","PSG ON",117,0)
  14588   EFH ;
  14589   "RTN","PSG ON",118,0)
  14590    W !!?2,"S elect the  fields you  wish to e dit, by nu mber.  Onl y those fi elds with  a",!,"numb er to the  left of th e field na me are edi table."
  14591   "RTN","PSG ON",119,0)
  14592    Q
  14593   "RTN","PSG OT")
  14594   0^19^B2669 6723
  14595   "RTN","PSG OT",1,0)
  14596   PSGOT ;BIR /CML3-TRAN SFERS DATA  FROM 53.1  TO 55 ;Ju l 26, 2017 @18:04:02
  14597   "RTN","PSG OT",2,0)
  14598    ;;5.0;INP ATIENT MED ICATIONS;* *13,68,90, 110,173,13 4,161,254, 267,257,31 5,327**;16  DEC 97;Bu ild 64
  14599   "RTN","PSG OT",3,0)
  14600    ;
  14601   "RTN","PSG OT",4,0)
  14602    ; Referen ce to ^PS( 55 support ed by DBIA  2191.
  14603   "RTN","PSG OT",5,0)
  14604    ; Referen ce to ^PSU HL support ed by DBIA  4803.
  14605   "RTN","PSG OT",6,0)
  14606    ;
  14607   "RTN","PSG OT",7,0)
  14608   START ; ge t internal  record nu mber, lock  record, a nd write
  14609   "RTN","PSG OT",8,0)
  14610    S ODA=+PS GORD S:$D( ^PS(55,PSG P,0))[0 ^( 0)=PSGP,^P S(55,"B",P SGP,PSGP)= "",$P(^PS( 55,0),U,3, 4)=PSGP_U_ ($P($G(^PS (55,0)),U, 4)+1) F  L  +^PS(55,P SGP,5,0):$ S($G(DILOC KTM)>0:DIL OCKTM,1:3)  I  Q
  14611   "RTN","PSG OT",9,0)
  14612    S ZND=$G( ^PS(55,PSG P,5,0)) S: ZND="" ZND ="^55.06IA " F DA=$P( ZND,"^",3) +1:1 I '$D (^PS(55,PS GP,5,DA)), '$D(^("B", DA)) L +^P S(55,PSGP, 5,DA):$S($ G(DILOCKTM )>0:DILOCK TM,1:3) I   S $P(ZND, "^",3)=DA, $P(ZND,"^" ,4)=$P(ZND ,"^",4)+1, ^PS(55,PSG P,5,0)=ZND  Q
  14613   "RTN","PSG OT",10,0)
  14614    L -^PS(55 ,PSGP,5,0)  S ND0=^PS (53.1,ODA, 0),$P(ND0, "^",23)=PS JPWD,^PS(5 5,PSGP,5,D A,0)=ND0
  14615   "RTN","PSG OT",11,0)
  14616    S (ND1,^P S(55,PSGP, 5,DA,.2))= $G(^PS(53. 1,ODA,.2)) ,^PS(55,PS GP,5,DA,.3 )=$G(^PS(5 3.1,ODA,.3 )),(ND2,^P S(55,PSGP, 5,DA,2))=^ PS(53.1,OD A,2)
  14617   "RTN","PSG OT",12,0)
  14618    S (ND2P1, ^PS(55,PSG P,5,DA,2.1 ))=$G(^PS( 53.1,ODA,2 .1)),^PS(5 5,PSGP,5,D A,4)=$G(^P S(53.1,ODA ,4)),^PS(5 5,"AUD",+$ P(ND2,"^", 4),PSGP,DA )=""
  14619   "RTN","PSG OT",13,0)
  14620    ;S (ND1,^ PS(55,PSGP ,5,DA,.2)) =$G(^PS(53 .1,ODA,.2) ),^PS(55,P SGP,5,DA,. 3)=$G(^PS( 53.1,ODA,. 3)),(ND2,^ PS(55,PSGP ,5,DA,2))= ^PS(53.1,O DA,2),(ND2 P1,^PS(55, PSGP,5,DA, 2.1))=$G(^ PS(53.1,OD A,2.1)) ;* 315 DRP
  14621   "RTN","PSG OT",14,0)
  14622    S ^PS(55, PSGP,5,DA, 4)=$G(^PS( 53.1,ODA,4 )),^PS(55, "AUD",+$P( ND2,"^",4) ,PSGP,DA)= ""
  14623   "RTN","PSG OT",15,0)
  14624    S X=^PS(5 5,PSGP,0)  I $P(X,"^" ,7)="" S $ P(X,"^",7) =$P($P(ND0 ,"^",16)," ."),$P(X," ^",8)="A", ^(0)=X D L OGDFN^PSUH L(PSGP)
  14625   "RTN","PSG OT",16,0)
  14626    I $P($G(^ PS(55,PSGP ,5,DA,2)), "^",6)=""  S $P(^PS(5 5,PSGP,5,D A,2),"^",6 )=$S($G(PS GS0XT)'="" :PSGS0XT,$ P($G(ZZND) ,"^",3)'=" ":$P(ZZND, "^",3),1:" "),$P(^PS( 53.1,ODA,2 ),"^",6)=$ P(^PS(55,P SGP,5,DA,2 ),"^",6)
  14627   "RTN","PSG OT",17,0)
  14628    F X=6,7,1 3 I $D(^PS (53.1,ODA, X)) S ^PS( 55,PSGP,5, DA,X)=^(X)
  14629   "RTN","PSG OT",18,0)
  14630    I $D(^PS( 53.1,ODA," DSS")) S ^ PS(55,PSGP ,5,DA,8)=^ ("DSS") D  CIMOU^PSJI MO1(PSGP,D A,"",ODA)
  14631   "RTN","PSG OT",19,0)
  14632    I $O(^PS( 53.1,ODA,1 ,0)) S (C, X)=0 F  S  X=$O(^PS(5 3.1,ODA,1, X)) Q:'X   S:$D(^(X,0 )) C=C+1,^ PS(55,PSGP ,5,DA,1,C, 0)=^(0),^P S(55,PSGP, 5,DA,1,"B" ,+$P($G(^( 0)),U),C)= ""
  14633   "RTN","PSG OT",20,0)
  14634    I $O(^PS( 53.1,ODA,1 ,0)) S ^PS (55,PSGP,5 ,DA,1,0)=" ^55.07P^"_ C_"^"_C
  14635   "RTN","PSG OT",21,0)
  14636    F X=3,12  D  S ^PS(5 5,PSGP,5,D A,X,0)="^5 5.0"_$S(X= 3:8,1:612) _U_CNT_U_C NT
  14637   "RTN","PSG OT",22,0)
  14638    .S CNT=0  F C=0:0 S  C=$O(^PS(5 3.1,ODA,X, C)) Q:'C   I $D(^(C,0 )) S ^PS(5 5,PSGP,5,D A,X,C,0)=^ (0),CNT=CN T+1
  14639   "RTN","PSG OT",23,0)
  14640    S $P(^PS( 53.1,ODA,0 ),"^",19)= DA
  14641   "RTN","PSG OT",24,0)
  14642    ;; START  NCC REMEDI ATION >> 3 27*RJS
  14643   "RTN","PSG OT",25,0)
  14644    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,, PSGP,DA) I  $G(CLOZFL G) D
  14645   "RTN","PSG OT",26,0)
  14646    .N DIE,DR  S DIE="^P S(55,"_PSG P_",5,",DA (1)=PSGP,D R="301//// "
  14647   "RTN","PSG OT",27,0)
  14648    .I $D(^TM P("PSJCOM" ,$J,ODA,"S AND")) D   K ^TMP("PS JCOM",$J,O DA,"SAND")  I 1
  14649   "RTN","PSG OT",28,0)
  14650    ..S DR=DR _$G(^TMP(" PSJCOM",$J ,ODA,"SAND "))
  14651   "RTN","PSG OT",29,0)
  14652    .E  I $G( ^TMP($J,"P SGCLOZ",PS GP,ODA,"SA ND")) D  K  ^TMP($J," PSGCLOZ",P SGP,ODA,"S AND")
  14653   "RTN","PSG OT",30,0)
  14654    ..S DR=DR _$G(^TMP($ J,"PSGCLOZ ",PSGP,ODA ,"SAND"))
  14655   "RTN","PSG OT",31,0)
  14656    .D ^DIE
  14657   "RTN","PSG OT",32,0)
  14658    ;; END NC C REMEDIAT ION >> 327 *RJS
  14659   "RTN","PSG OT",33,0)
  14660    D SETUDIN T^PSGSICH1 (ODA_"P",D A_"U")
  14661   "RTN","PSG OT",34,0)
  14662   CR ; set x -refs
  14663   "RTN","PSG OT",35,0)
  14664    N A
  14665   "RTN","PSG OT",36,0)
  14666    I $D(^PS( 55,PSGP,5. 1)),$P(^(5 .1),"^",6)  S X=$P(^( 5.1),"^",6 ) I $P(ND2 ,"^",3),$P (ND2,"^",6 )'>X S $P( ^(5.1),"^" ,6)=$P(ND2 ,"^",3)
  14667   "RTN","PSG OT",37,0)
  14668    S ^PS(55, PSGP,5,"B" ,+ODA,DA)= "",^PS(55, PSGP,5,"AU ",$P(ND0," ^",7),+$P( ND2,"^",4) ,DA)=""
  14669   "RTN","PSG OT",38,0)
  14670    S ^PS(55, PSGP,5,"AU S",+$P(ND2 ,"^",4),DA )=""
  14671   "RTN","PSG OT",39,0)
  14672    S ^PS(55, PSGP,5,"C" ,+ND1,DA)= "",^PS(55, "AUE",PSGP ,DA)=""
  14673   "RTN","PSG OT",40,0)
  14674    S ^PS(55, "AUDS",+$P (ND2,"^",2 ),PSGP,DA) =""
  14675   "RTN","PSG OT",41,0)
  14676    I $D(^PS( 55,PSGP,5, DA,8)) S A =^(8),^PS( 55,"AUDC", +$P(ND2,"^ ",4),+A,PS GP,DA)=""
  14677   "RTN","PSG OT",42,0)
  14678    I $$PATCH ^XPDUTL("P XRM*1.5*12 ") S X(1)= +$P(ND2,"^ ",2),X(2)= +$P(ND2,"^ ",4),DA(1) =PSGP D SP SPA^PSJXRF S(.X,.DA," UD")
  14679   "RTN","PSG OT",43,0)
  14680    K DIK S D A(1)=PSGP  S DIK="^PS (55,"_DA(1 )_",5,",DI K(1)=125 D  EN1^DIK K  DIK
  14681   "RTN","PSG OT",44,0)
  14682    S PSGTOL= 2,PSGTOO=1  F PSGUOW= 0:0 S PSGU OW=$O(^PS( 53.41,2,1, PSGUOW)) Q :'PSGUOW   I $D(^(PSG UOW,1,PSGP ,1,2,1,+OD A)) K ^(+O DA) D ENL^ PSGVDS
  14683   "RTN","PSG OT",45,0)
  14684   DONE I $D( PSGOE2),PS GOE2]"",$D (^TMP("PSJ ON",$J,PSG OE2)) S ^( PSGOE2)=DA _"U"
  14685   "RTN","PSG OT",46,0)
  14686    N PSJTMPT X,PSJOVRMX ,PSJTMPLIN
  14687   "RTN","PSG OT",47,0)
  14688    S PSGODA= ODA,PSGORD =DA_"U"
  14689   "RTN","PSG OT",48,0)
  14690    S PSGNODE =$G(^PS(55 ,PSGP,5,DA ,0)),PSG25 =$P(PSGNOD E,"^",25), PSG26=$P(P SGNODE,"^" ,26)
  14691   "RTN","PSG OT",49,0)
  14692    I PSG25 S  X=$S(PSG2 5["V":"^PS (55,"_PSGP _",""IV"", ",PSG25["U "!(PSG25[" A"):"^PS(5 5,"_PSGP_" ,5,",1:"^P S(53.1,")_ +PSG25_"," _$E("02",P SG25["V"+1 )_")" I $D (@X) S $P( @X,"^",$S( PSG25["V": 6,1:26))=D A_"U"
  14693   "RTN","PSG OT",50,0)
  14694    I $P(PSGN ODE,"^",26 ),$P(PSGNO DE,"^",26) '["V",$D(^ PS(55,PSGP ,5,+$P(PSG NODE,"^",2 6),0)) S $ P(^(0),"^" ,25)=DA_"U "
  14695   "RTN","PSG OT",51,0)
  14696    F Q=0:0 S  Q=$O(^PS( 53.44,Q))  Q:'Q  I $D (^(Q,1,PSG P,+ODA,0))  S $P(^(0) ,"^",2)=DA
  14697   "RTN","PSG OT",52,0)
  14698    I $D(^PS( 53.1,+ODA, 15,0)) S ^ PS(55,PSGP ,5,DA,15,0 )="^55.613 5^"_$P($G( ^PS(53.1,+ ODA,15,0)) ,"^",3)_"^ "_$P($G(^P S(53.1,+OD A,15,0))," ^",4) D
  14699   "RTN","PSG OT",53,0)
  14700    .N LN,LNC NT,SIMSG S  SIMSG="In structions  too long.  See Order  View or B CMA for fu ll text."
  14701   "RTN","PSG OT",54,0)
  14702    .S LNCNT= 0,LN=9999  F  S LN=$O (^PS(53.1, +ODA,15,LN ),-1) Q:'L N  D
  14703   "RTN","PSG OT",55,0)
  14704    ..I 'LNCN T,($G(^PS( 53.1,+ODA, 15,LN,0))= "") Q
  14705   "RTN","PSG OT",56,0)
  14706    ..S ^PS(5 5,PSGP,5,D A,15,LN,0) =^PS(53.1, +ODA,15,LN ,0) S LNCN T=LNCNT+1
  14707   "RTN","PSG OT",57,0)
  14708    .I LNCNT  S $P(^PS(5 5,PSGP,5,D A,15,0),"^ ",3,4)=LNC NT_"^"_LNC NT
  14709   "RTN","PSG OT",58,0)
  14710    .S PSJTMP TX="",PSJO VRMX=0 S T MPLIN=0 F   S TMPLIN= $O(^PS(55, +DFN,5,DA, 15,TMPLIN) ) Q:'TMPLI N!(PSJOVRM X)  D
  14711   "RTN","PSG OT",59,0)
  14712    ..S:($L(P SJTMPTX)+$ L($G(^PS(5 5,+DFN,5,D A,15,TMPLI N,0))))>18 0 PSJOVRMX =1 Q:$G(PS JOVRMX)  S  PSJTMPTX= $G(PSJTMPT X)_$S($G(P SJTMPTX)]" ":" ",1:"" )_$G(^PS(5 5,+DFN,5,D A,15,TMPLI N,0))
  14713   "RTN","PSG OT",60,0)
  14714    .S TXT=$S (PSJOVRMX: SIMSG,1:PS JTMPTX)
  14715   "RTN","PSG OT",61,0)
  14716    .S:($TR(T XT,"^ ")=" ")!'($D(^P S(55,PSGP, 5,DA,15,1) )) TXT=""  S ^PS(55,P SGP,5,DA,6 )=TXT S $P (^PS(55,PS GP,5,DA,6) ,"^",2)=$P (^PS(53.1, +ODA,6),"^ ",2)
  14717   "RTN","PSG OT",62,0)
  14718    .N LSTLNU M,LSTLNTXT  S LSTLNUM =$O(^PS(55 ,+PSGP,5,+ DA,15,""), -1) I LSTL NUM>1 S LS TLNTXT=$G( ^PS(55,+PS GP,5,+DA,1 5,LSTLNUM, 0)) I $TR( LSTLNTXT,"  ")="" D
  14719   "RTN","PSG OT",63,0)
  14720    ..K ^PS(5 5,+PSGP,5, +DA,15,LST LNUM,0)
  14721   "RTN","PSG OT",64,0)
  14722    L -^PS(53 .1,+ODA) L  -^PS(55,P SGP,5,+DA)  K CNT,ND, ODA,XX,ZND
  14723   "RTN","PSG OT",65,0)
  14724    Q
  14725   "RTN","PSG OT",66,0)
  14726    ;
  14727   "RTN","PSG PEN")
  14728   0^23^B5897 3143
  14729   "RTN","PSG PEN",1,0)
  14730   PSGPEN ;BI R/CML3 - F IND DEFAUL T FOR PRE- EXCHANGE N EEDS ;Jul  26, 2017@1 8:04:02
  14731   "RTN","PSG PEN",2,0)
  14732    ;;5.0;INP ATIENT MED ICATIONS ; **30,37,50 ,58,115,11 0,127,129, 323,317,32 7**;16 DEC  97;Build  64
  14733   "RTN","PSG PEN",3,0)
  14734    ;
  14735   "RTN","PSG PEN",4,0)
  14736    ; Referen ces to ^PS D(58.8 sup ported by  DBIA #2283 .
  14737   "RTN","PSG PEN",5,0)
  14738    ; Referen ces to ^PS I(58.1 sup ported by  DBIA #2284 .
  14739   "RTN","PSG PEN",6,0)
  14740    ; Referen ce to ^PS( 55 is supp orted by D BIA #2191.
  14741   "RTN","PSG PEN",7,0)
  14742    ; Referen ce to ^PSD RUG is sup ported by  DBIA #2192 .
  14743   "RTN","PSG PEN",8,0)
  14744    ; Referen ce to ^PS( 59.7 is su pported by  DBIA #218 1.
  14745   "RTN","PSG PEN",9,0)
  14746    ;
  14747   "RTN","PSG PEN",10,0)
  14748   EN(PSGPENO ) ;
  14749   "RTN","PSG PEN",11,0)
  14750    S PSGPENO =+PSGPENO
  14751   "RTN","PSG PEN",12,0)
  14752    N PSJPADE
  14753   "RTN","PSG PEN",13,0)
  14754    S PSJPADE =$$PADE($G (PSJPWD),P SGP,PSGPEN O_"U")  ;  PADE check  - PSJ*5*3 17
  14755   "RTN","PSG PEN",14,0)
  14756    N PSJSITE ,PSJPRN,PS JCLO,ND8 S  PSJCLO=0, ND8=0 S PS JSITE=0,PS JSITE=$O(^ PS(59.7,PS JSITE)) I  $P($G(^(PS JSITE,26)) ,U,5)=1 S  PSJPRN=1
  14757   "RTN","PSG PEN",15,0)
  14758    D NOW^%DT C S PSGDT= %,DT=$$DT^ XLFDT,PSGP EN="" S ND =$G(^PS(55 ,PSGP,5,PS GPENO,0)), ND8=$G(^PS (55,PSGP,5 ,PSGPENO,8 ))
  14759   "RTN","PSG PEN",16,0)
  14760    S:$P(ND8, "^",2) PSJ CLO=1
  14761   "RTN","PSG PEN",17,0)
  14762    S PSGPENW S=0 I PSJP WD,'PSJCLO  F Q=0:0 S  Q=$O(^PS( 55,PSGP,5, PSGPENO,1, Q)) Q:'Q   S ND=$G(^( Q,0)) I ND ,'$P(ND,"^ ",3),($D(^ PSI(58.1," D",+ND,PSJ PWD))!$D(^ PSD(58.8," D",+ND,PSJ PWD))) S P SGPENWS=1  Q
  14763   "RTN","PSG PEN",18,0)
  14764    I PSGPENW S F  S Q=$ O(^PS(55,P SGP,5,PSGP ENO,1,Q))  Q:'Q  S ND =$G(^(Q,0) ) I ND,'$P (ND,"^",3)  S:'$D(^PS I(58.1,"D" ,+ND,PSJPW D))&'$D(^P SD(58.8,"D ",+ND,PSJP WD)) PSGPE NWS=0 Q:'P SGPENWS  S  $P(PSGPEN WS,"^",2)= 1
  14765   "RTN","PSG PEN",19,0)
  14766    I PSJPADE &'PSGPENWS  W !!,"The  dispense  drug",$S(P SJPADE>1:" s",1:""),"  for this  order ",$S (PSJPADE>1 :"are",1:" is a")," P ADE item", $S(PSJPADE >1:"s",1:" "),"." S P SGPEN=0
  14767   "RTN","PSG PEN",20,0)
  14768    I PSJPADE &PSGPENWS  W !!,"The  dispense d rug",$S(PS JPADE>1:"s ",1:""),"  for this o rder ",$S( PSJPADE>1: "are",1:"i s a")," WA RD STOCK/P ADE item", $S(PSJPADE >1:"s",1:" "),"." S P SGPEN=0
  14769   "RTN","PSG PEN",21,0)
  14770    I PSGPENW S&'PSJPADE  W !!,"The  dispense  drug",$E(" s",$P(PSGP ENWS,"^",2 ))," for t his order  ",$S($P(PS GPENWS,"^" ,2):"are", 1:"is a"), " WARD STO CK item",$ E("s",$P(P SGPENWS,"^ ",2)),"."  S PSGPEN=0
  14771   "RTN","PSG PEN",22,0)
  14772    I 'PSGPEN WS,PSJPWD, 'PSJPADE S  WG=+$O(^P S(57.5,"AB ",PSJPWD,0 )),PSGPLS= $P($G(^PS( 55,PSGP,5, PSGPENO,2) ),"^",2) I  PSGPLS D
  14773   "RTN","PSG PEN",23,0)
  14774    .S PSGPLF =$O(^PS(53 .5,"AB",WG ,PSGDT))
  14775   "RTN","PSG PEN",24,0)
  14776    .N RNDT,P SJRNOS S R NDT=$$LAST REN^PSJLMP RI(PSGP,$S ($G(PSJORD )["P":PSJO RD,1:"")), PSJRNOS=$P (RNDT,"^", 4) I PSJRN OS,'$G(PSJ REN) S PSG PLS=PSJRNO S
  14777   "RTN","PSG PEN",25,0)
  14778    .I $G(PSJ REN),$G(PS JORD)["U"  S PSJRNOS= $P(^PS(55, PSGP,5,+PS JORD,2),"^ ",4) S PSG PLS=$S(PSJ RNOS>PSGDT :PSJRNOS,1 :$$DATE2^P SJUTL2(PSG DT))
  14779   "RTN","PSG PEN",26,0)
  14780    .D:'PSGPL F GF I PSG PLF S PSGP LO=PSGPENO  D NCE,^PS GPL0 S:PSG PLC'<0 PSG PEN=PSGPLC
  14781   "RTN","PSG PEN",27,0)
  14782    I $G(PSGP RIO)="DONE " S PSGPEN =0
  14783   "RTN","PSG PEN",28,0)
  14784    ;
  14785   "RTN","PSG PEN",29,0)
  14786   UPDD ;
  14787   "RTN","PSG PEN",30,0)
  14788    N DIR S D IR(0)="NOA ^0:9999:0" ,DIR("A")= "Pre-Excha nge DOSES:  ",DIR("?" )="^D DH^P SGPEN" S:P SGPEN]"" D IR("B")=PS GPEN W ! D  ^DIR G:'Y  DONE S PS GY=+Y W !! ,"...updat ing dispen se drug(s) ..."
  14789   "RTN","PSG PEN",31,0)
  14790    F FQ=0:0  S FQ=$O(^P S(55,PSGP, 5,PSGPENO, 1,FQ)) Q:' FQ  S ND=$ G(^(FQ,0)) ,$P(^(0)," ^",9)="" I  ND,'$P(ND ,"^",3) D  DD
  14791   "RTN","PSG PEN",32,0)
  14792    ;
  14793   "RTN","PSG PEN",33,0)
  14794   DONE ;
  14795   "RTN","PSG PEN",34,0)
  14796    ;; START  NCC REMEDI ATION >> 3 27*RJS
  14797   "RTN","PSG PEN",35,0)
  14798    N PSGDN S  PSGDN=$O( PSJXDOX("D D",""))
  14799   "RTN","PSG PEN",36,0)
  14800    ;; END NC C REMEDIAT ION >> 327 *RJS
  14801   "RTN","PSG PEN",37,0)
  14802    ;; END NC C REMEDIAT ION >> 327 *RJS
  14803   "RTN","PSG PEN",38,0)
  14804    K PSGID,P SGMAR,PSGO D,PSGPLC,P SGPLF,PSGP LO,PSGPLS, PSGPLUD,WG  S:$G(PSJR EN) DUOUT= 0 Q
  14805   "RTN","PSG PEN",39,0)
  14806    ;
  14807   "RTN","PSG PEN",40,0)
  14808   NCE ;
  14809   "RTN","PSG PEN",41,0)
  14810    W !!,"The  next cart  exchange  is ",$$END TC^PSGMI(P SGPLF),! Q
  14811   "RTN","PSG PEN",42,0)
  14812    ;
  14813   "RTN","PSG PEN",43,0)
  14814   GF ;
  14815   "RTN","PSG PEN",44,0)
  14816    S QQ=0 F  Q=0:0 S Q= $O(^PS(53. 5,"AB",WG, Q)) Q:'Q   S QQ=Q
  14817   "RTN","PSG PEN",45,0)
  14818    I QQ S QQ =$O(^PS(53 .5,"AB",WG ,QQ,0)) I  QQ,$D(^PS( 53.5,QQ,0) ) S QQ=$P( ^(0),"^",4 ) I QQ>PSG DT S PSGPL F=QQ
  14819   "RTN","PSG PEN",46,0)
  14820    Q
  14821   "RTN","PSG PEN",47,0)
  14822    ;
  14823   "RTN","PSG PEN",48,0)
  14824   DD ;
  14825   "RTN","PSG PEN",49,0)
  14826    N DA S DR G=$S($P(ND ,"^")="":" NOT FOUND" ,'$D(^PSDR UG(+ND,0)) :"NOT FOUN D ("_$P(ND ,"^")_")", $P(^(0),"^ ")]"":$P(^ (0),"^"),1 :$P(ND,"^" )_";PSDRUG ("),UD=$S( '$P(ND,"^" ,2):1,1:$P (ND,"^",2) )
  14827   "RTN","PSG PEN",50,0)
  14828    W !,"..." ,DRG,?45," U/D: ",UD, "..."
  14829   "RTN","PSG PEN",51,0)
  14830    S PSGDA=P SGY I 'PSG PENWS,'PSJ CLO,ND,PSJ PWD,($D(^P SI(58.1,"D ",+ND,PSJP WD))!$D(^P SD(58.8,"D ",+ND,PSJP WD))) D PS GPENWS Q:' PSGDA
  14831   "RTN","PSG PEN",52,0)
  14832    K DA,DR S  PSGDA=$S( UD#1:(PSGD A*((UD\1)+ 1)),1:PSGD A*UD)
  14833   "RTN","PSG PEN",53,0)
  14834    S DIE="^P S(55,"_PSG P_",5,"_PS GPENO_",1, ",DA(2)=PS GP,DA(1)=P SGPENO,DA= FQ,DR=".09 ////"_PSGD A D ^DIE
  14835   "RTN","PSG PEN",54,0)
  14836    S PSGPXN= $G(PSGPXN)
  14837   "RTN","PSG PEN",55,0)
  14838    D:'PSGPXN
  14839   "RTN","PSG PEN",56,0)
  14840    .D NOW^%D TC L +^PS( 53.4,0):0  S ND=$G(^P S(53.4,0))  S:ND="" N D="PRE-EXC HANGE NEED S^53.4P" F  PSGPXN=$P (ND,"^",3) +1:1 I '$D (^PS(53.4, PSGPXN)) L  +^PS(53.4 ,PSGPXN):0  I  S ^PS( 53.4,0)=$P (ND,"^",1, 2)_"^"_PSG PXN_"^"_($ P(ND,"^",4 )+1) L -^P S(53.4,0)  Q
  14841   "RTN","PSG PEN",57,0)
  14842    .S ^PS(53 .4,PSGPXN, 0)=DUZ_"^" _%,^PS(53. 4,"B",DUZ, PSGPXN)="" ,^PS(53.4, "AUD",DUZ, %,PSGPXN)= "" L -^PS( 53.4,PSGPX N) Q
  14843   "RTN","PSG PEN",58,0)
  14844    I $D(^PS( 53.4,PSGPX N,1,PSGP,1 ,PSGPENO,1 ,FQ,0)) S  $P(^(0),"^ ",2)=$P(^( 0),"^",2)+ PSGDA Q
  14845   "RTN","PSG PEN",59,0)
  14846    ; naked r eference b elow refer s to line  above
  14847   "RTN","PSG PEN",60,0)
  14848    S ^(0)=FQ _"^"_PSGDA  I $D(^PS( 53.4,PSGPX N,1,PSGP,1 ,PSGPENO,1 ,0)) S $P( ^(0),"^",3 ,4)=FQ_"^" _($P(^(0), "^",4)+1)  Q
  14849   "RTN","PSG PEN",61,0)
  14850    ; naked r eference b elow refer s to line  above
  14851   "RTN","PSG PEN",62,0)
  14852    S ^(0)="^ 53.401101A ^"_FQ_"^1"  Q:$D(^PS( 53.4,PSGPX N,1,PSGP,1 ,PSGPENO,0 ))  S ^(0) =PSGPENO
  14853   "RTN","PSG PEN",63,0)
  14854    I $D(^PS( 53.4,PSGPX N,1,PSGP,1 ,0)) S $P( ^(0),"^",3 ,4)=PSGPEN O_"^"_($P( ^(0),"^",4 )+1) Q
  14855   "RTN","PSG PEN",64,0)
  14856    ; naked r eference b elow is fr om line ab ove
  14857   "RTN","PSG PEN",65,0)
  14858    S ^(0)="^ 53.4011A^" _PSGPENO_" ^1" Q:$D(^ PS(53.4,PS GPXN,1,PSG P,0))  S ^ (0)=PSGP
  14859   "RTN","PSG PEN",66,0)
  14860    I $D(^PS( 53.4,PSGPX N,1,0)) S  $P(^(0),"^ ",3,4)=PSG P_"^"_($P( ^(0),"^",4 )+1) Q
  14861   "RTN","PSG PEN",67,0)
  14862    ; naked r eference b elow is fr om line ab ove
  14863   "RTN","PSG PEN",68,0)
  14864    S ^(0)="^ 53.401PA^" _PSGP_"^1"  Q
  14865   "RTN","PSG PEN",69,0)
  14866    ;
  14867   "RTN","PSG PEN",70,0)
  14868   DH ;
  14869   "RTN","PSG PEN",71,0)
  14870    W !!?2,"E nter a num ber from 0  to 9999,  0 decimal  digits."
  14871   "RTN","PSG PEN",72,0)
  14872    W !!?2,"E nter the n umber DOSE S needed f or this or der until  the next c art exchan ge.",!,"Th is will be  the numbe r of times  the order  will be a dministere d to the p atient",!, "from the  start of t he order u ntil the n ext cart e xchange."
  14873   "RTN","PSG PEN",73,0)
  14874    W !!?2,"P LEASE NOTE  that this  is DOSES,  and NOT U NITS.  The  doses ent ered will  be",!,"con verted to  units for  each dispe nse drug o f this ord er, as eac h dispense  drug",!," may have a  different  units per  dose." Q
  14875   "RTN","PSG PEN",74,0)
  14876    ;
  14877   "RTN","PSG PEN",75,0)
  14878   PSGPENWS ;
  14879   "RTN","PSG PEN",76,0)
  14880    W !,"This  dispense  drug is a  WARD STOCK  item."
  14881   "RTN","PSG PEN",77,0)
  14882    W !,"Woul d you like  to:",!?3, "1 - Enter  0 (no) do ses needed  for this  dispense d rug.",!?3, "2 - Enter  ",PSGDA,"  doses nee ded for th is dispens e drug.",! ?3,"3 - En ter anothe r amount a s the dose s needed f or this di spense dru g."
  14883   "RTN","PSG PEN",78,0)
  14884    K DIR S D IR(0)="SA^ 1:0 (no) d oses;2:"_P SGDA_" dos es;3:anoth er amount" ,DIR("A")= "Select AC TION: ",DI R("?")="^D  WH^PSGPEN " W ! D ^D IR I Y=1!' Y S PSGDA= 0 Q
  14885   "RTN","PSG PEN",79,0)
  14886    Q:Y=2  K  DIR S DIR( 0)="NA^0:9 999:0",DIR ("A")="Pre -Exchange  DOSES for  this dispe nse drug:  ",DIR("?") ="^D WDH^P SGPEN" W !  D ^DIR S  PSGDA=+Y Q
  14887   "RTN","PSG PEN",80,0)
  14888    ;
  14889   "RTN","PSG PEN",81,0)
  14890   WH ;
  14891   "RTN","PSG PEN",82,0)
  14892    S Q="This  dispense  drug ("_DR G_") is a  ward stock  item.  Se lect:"
  14893   "RTN","PSG PEN",83,0)
  14894    W !! F Q1 =1:1:$L(Q, " ") S Q2= $P(Q," ",Q 1) W:$X+$L (Q2)>78 !  W Q2," "
  14895   "RTN","PSG PEN",84,0)
  14896    W !?3,"1  to enter 0  (no) pre- exchange d oses for t his dispen se drug.", !?3,"2 to  enter ",PS GDA," dose s for this  dispense  drug.",!?3 ,"3 to ent er another  amount fo r this dis pense drug ." Q
  14897   "RTN","PSG PEN",85,0)
  14898    ;
  14899   "RTN","PSG PEN",86,0)
  14900   WDH ;
  14901   "RTN","PSG PEN",87,0)
  14902    W !!?2,"E nter a num ber from 0  to 9999,  0 decimal  digits.  I f you ente r an '^' t o exit",!, "NO pre-ex change dos es will be  entered f or this di spense dru g." Q
  14903   "RTN","PSG PEN",88,0)
  14904    ;
  14905   "RTN","PSG PEN",89,0)
  14906   PADE(PSJPW D,PSGP,PSG ORD)  ; Ph armacy Aut omation Di spensing E quipment ( PADE) chec k - PSJ*5* 317
  14907   "RTN","PSG PEN",90,0)
  14908    ; INPUT:  PSJPWD = W ard locati on
  14909   "RTN","PSG PEN",91,0)
  14910    ;         PSGP   = P atient DFN
  14911   "RTN","PSG PEN",92,0)
  14912    ;         PSGORD = O rder numbe r
  14913   "RTN","PSG PEN",93,0)
  14914    ; OUTPUT:  PADE = Ca n this ord er be disp ensed via  PADE?
  14915   "RTN","PSG PEN",94,0)
  14916    ;
  14917   "RTN","PSG PEN",95,0)
  14918    N PADE,DF N,PSJDDND, PSJWDFLG
  14919   "RTN","PSG PEN",96,0)
  14920    I '$G(PSJ PWD)!'$G(P SGP)!'$G(P SGORD) Q " "
  14921   "RTN","PSG PEN",97,0)
  14922    S PADE="" ,DFN=$G(PS GP)
  14923   "RTN","PSG PEN",98,0)
  14924    ; Check D EFAULT 0 O N PADE PRE -EXCHANGE  parameter
  14925   "RTN","PSG PEN",99,0)
  14926    D GETS^DI Q(59.6,+$G (PSJSYSW), 8,"I","PSJ WDFLG")
  14927   "RTN","PSG PEN",100,0 )
  14928    I $G(PSJW DFLG("59.6 ",+$G(PSJS YSW)_",",8 ,"I")) D
  14929   "RTN","PSG PEN",101,0 )
  14930    .N PSJPDL OC,PSJORCL ,PSJCLNK
  14931   "RTN","PSG PEN",102,0 )
  14932    .; If cli nic order,  quit if c linic loca tion is no t linked t o PADE
  14933   "RTN","PSG PEN",103,0 )
  14934    .S PSJORC L=$S($G(PS GORD)["P": $G(^PS(53. 1,+$G(PSGO RD),"DSS") ),$G(PSGOR D)["U":$G( ^PS(55,+$G (PSGP),5,+ $G(PSGORD) ,8)),$G(PS GORD)["V": $G(^PS(55, +$G(PSGP), "IV",+$G(P SGORD),"DS S")),1:"")
  14935   "RTN","PSG PEN",104,0 )
  14936    .I PSJORC L,$P(PSJOR CL,"^",2)  S PSJCLNK= $$PADECL^P SJPAD50(+$ G(PSJORCL) ) Q:'PSJCL NK
  14937   "RTN","PSG PEN",105,0 )
  14938    .I '$G(PS JCLNK) Q:' $$PADEWD^P SJPAD50(PS JPWD)   ;  Quit if pa tient loca tion not l inked to P ADE
  14939   "RTN","PSG PEN",106,0 )
  14940    .S PSJPDL OC=$S($G(P SGORD)["P" :+$G(^PS(5 3.1,+PSGOR D,"DSS"))_ "C",$G(PSG ORD)["U":+ $G(^PS(55, +$G(DFN),5 ,+$G(PSGOR D),8))_"C" ,1:"")
  14941   "RTN","PSG PEN",107,0 )
  14942    .S:'PSJPD LOC PSJPDL OC=+$G(PSJ PWD)
  14943   "RTN","PSG PEN",108,0 )
  14944    .N PADEFL AG,DDCNT S  PADEFLAG= 1
  14945   "RTN","PSG PEN",109,0 )
  14946    .I $G(PSG ORD)["U" S  Q=0 F DDC NT=0:1 S Q =$O(^PS(55 ,+$G(PSGP) ,5,+PSGORD ,1,Q)) Q:' Q!'PADEFLA G  S PSJDD ND=$G(^(Q, 0)) D
  14947   "RTN","PSG PEN",110,0 )
  14948    ..S PADEF LAG=+$$DRG QTY^PSJPAD SI(+PSJDDN D,$S(PSJPD LOC["C":"C L",1:"WD") ,+PSJPDLOC )
  14949   "RTN","PSG PEN",111,0 )
  14950    .I $G(PSG ORD)'["U"  S Q=0 F DD CNT=0:1 S  Q=$O(^PS(5 3.45,+$G(P SJSYSP),2, Q)) Q:'Q!' PADEFLAG   S PSJDDND= $G(^(Q,0))  D
  14951   "RTN","PSG PEN",112,0 )
  14952    ..S PADEF LAG=+$$DRG QTY^PSJPAD SI(+PSJDDN D,$S(PSJPD LOC["C":"C L",1:"WD") ,+PSJPDLOC )
  14953   "RTN","PSG PEN",113,0 )
  14954    .I DDCNT, PADEFLAG S  PADE=DDCN T
  14955   "RTN","PSG PEN",114,0 )
  14956    Q PADE
  14957   "RTN","PSJ 327P")
  14958   0^38^B6886 19
  14959   "RTN","PSJ 327P",1,0)
  14960   PSJ327P ;  NCC/MIR -  NCC POST I NSTALL;Jul  26, 2017@ 18:04:02
  14961   "RTN","PSJ 327P",2,0)
  14962    ;;5.0;INP ATIENT MED ICATIONS ; **327**;01  DEC 15;Bu ild 64
  14963   "RTN","PSJ 327P",3,0)
  14964    ;
  14965   "RTN","PSJ 327P",4,0)
  14966   ADDMENUS ;  Add new m enu items  to the mai n one
  14967   "RTN","PSJ 327P",5,0)
  14968    N RES
  14969   "RTN","PSJ 327P",6,0)
  14970    S RES=$$A DD^XPDMENU ("PSJL MAN AGER","PSO L REGISTER  PATIENT", "",1)
  14971   "RTN","PSJ 327P",7,0)
  14972    S RES=$$A DD^XPDMENU ("PSJL MAN AGER","PSJ LAB LIST", "",2)
  14973   "RTN","PSJ 327P",8,0)
  14974    S RES=$$A DD^XPDMENU ("PSJL MAN AGER","PSJ LIST OVERR IDES","",3 )
  14975   "RTN","PSJ 327P",9,0)
  14976    S RES=$$A DD^XPDMENU ("PSJL MAN AGER","PSO L EDIT","" ,4)
  14977   "RTN","PSJ 327P",10,0 )
  14978    ;
  14979   "RTN","PSJ 327P",11,0 )
  14980    S RES=$$A DD^XPDMENU ("PSJU MGR ","PSJL MA NAGER","", 2.98)
  14981   "RTN","PSJ 327P",12,0 )
  14982    Q
  14983   "RTN","PSJ CLOLS")
  14984   0^8^B10140 585
  14985   "RTN","PSJ CLOLS",1,0 )
  14986   PSJCLOLS ; ALB/RTW -  LIST INPAT IENT CLOZA PINE ORDER S ENTERED  BY OVERRID E ;Jul 26,  2017@18:0 4:02
  14987   "RTN","PSJ CLOLS",2,0 )
  14988    ;;5.0;INP ATIENT PHA RMACY;**32 7**;;Build  64
  14989   "RTN","PSJ CLOLS",3,0 )
  14990    ;RTW copi ed from ro utine PSOC LOLS and m odified fo r the NCC  Clozapine  inpatient  pharmacy p roject
  14991   "RTN","PSJ CLOLS",4,0 )
  14992    W !,"Prin t list of  clozapine  orders ove rriding lo ckout",!
  14993   "RTN","PSJ CLOLS",5,0 )
  14994   DATE S %DT ="EAX",%DT ("A")="Beg inning dat e : " D ^% DT G EXIT: Y<0 S PSOB D=Y
  14995   "RTN","PSJ CLOLS",6,0 )
  14996    S %DT("A" )="Ending  date : " D  ^%DT G EX IT:Y<0 S P SOED=Y+.3  I PSOED<PS OBD W !!," Ending dat e must be  after begi nning date " G DATE
  14997   "RTN","PSJ CLOLS",7,0 )
  14998   DEV S %ZIS ("B")="",% ZIS="MQ" D  ^%ZIS G E XIT:POP ;I  $E(IOST)' ="P" W !," Select a p rinter " G  DEV
  14999   "RTN","PSJ CLOLS",8,0 )
  15000    I $D(IO(" Q")) G QUE
  15001   "RTN","PSJ CLOLS",9,0 )
  15002   DQ ;Entry  to report
  15003   "RTN","PSJ CLOLS",10, 0)
  15004    K ^TMP($J ,"PSJORDT" ) D LIST^D IC(53.8,,. 01,"I",,PS OBD,,"B",, ,"^TMP($J, ""PSJORDT" ")")
  15005   "RTN","PSJ CLOLS",11, 0)
  15006    W:$Y @IOF  D HD I '^ TMP($J,"PS JORDT","DI LIST",0) W  !,?5,"NO  ORDERS FOU ND",@IOF G  EXIT
  15007   "RTN","PSJ CLOLS",12, 0)
  15008    I ^TMP($J ,"PSJORDT" ,"DILIST", 1,1)>PSOED  W !,?5,"N O ORDERS F OUND",@IOF  G EXIT
  15009   "RTN","PSJ CLOLS",13, 0)
  15010    F I=1:1 Q :'$D(^TMP( $J,"PSJORD T","DILIST ",1,I))  S  PSJOD=^TM P($J,"PSJO RDT","DILI ST",1,I) Q :PSJOD>PSO ED  D
  15011   "RTN","PSJ CLOLS",14, 0)
  15012    .S PSOI=+ ^TMP($J,"P SJORDT","D ILIST",2,I )
  15013   "RTN","PSJ CLOLS",15, 0)
  15014    .D GETS^D IQ(53.8,PS OI,"*","I" ,"PSJDATA" ) S PSOJ=P SOI_"," D: $D(PSJDATA ) PRINT
  15015   "RTN","PSJ CLOLS",16, 0)
  15016    W @IOF
  15017   "RTN","PSJ CLOLS",17, 0)
  15018   EXIT D ^%Z ISC K %DT, PSJDRG,POP ,PSJOD,PSO I,PSOJ,PSJ DATA,PSJRX ,PSJUSR,PS JAPR,PSJRE A,PSJCOM,P SJPAT,PSOB D,PSOED,X, J,ZTDESC,Z TIO,ZTRTN, ZTSAVE,ZTS K
  15019   "RTN","PSJ CLOLS",18, 0)
  15020    K ^TMP($J ,"PSJORDT" ) Q
  15021   "RTN","PSJ CLOLS",19, 0)
  15022    ;
  15023   "RTN","PSJ CLOLS",20, 0)
  15024   PRINT I $Y +9>IOSL W  @IOF D HD
  15025   "RTN","PSJ CLOLS",21, 0)
  15026    I '$D(PSJ DATA(53.8, PSOJ,1))!' $D(PSJDATA (53.8,PSOJ ,2))!'$D(P SJDATA(53. 8,PSOJ,3)) !'$D(PSJDA TA(53.8,PS OJ,4)) Q
  15027   "RTN","PSJ CLOLS",22, 0)
  15028    S PSJORD= +PSJDATA(5 3.8,PSOJ,1 ,"I"),PSJU SR=PSJDATA (53.8,PSOJ ,2,"I")
  15029   "RTN","PSJ CLOLS",23, 0)
  15030    S PSJAPR= PSJDATA(53 .8,PSOJ,3, "I"),PSJRE A=PSJDATA( 53.8,PSOJ, 4,"I")
  15031   "RTN","PSJ CLOLS",24, 0)
  15032    S PSJUSR= $$GET1^DIQ (200,PSJUS R,.01),PSJ APR=$$GET1 ^DIQ(200,P SJAPR,.01)
  15033   "RTN","PSJ CLOLS",25, 0)
  15034    S PSJCOM= PSJDATA(53 .8,PSOJ,5, "I")
  15035   "RTN","PSJ CLOLS",26, 0)
  15036    S PSJNUM= $$FIND1^DI C(100.045, ","_PSJORD _",","X"," DRUG","ID" )
  15037   "RTN","PSJ CLOLS",27, 0)
  15038    S PSJDRG= $$GET1^DIQ (100.045,P SJNUM_","_ PSJORD,1)  Q:'$D(PSJD RG)
  15039   "RTN","PSJ CLOLS",28, 0)
  15040    S PSJPAT= +$$GET1^DI Q(100,PSJO RD,.02),PS JDRG=$$GET 1^DIQ(50,P SJDRG,.01)
  15041   "RTN","PSJ CLOLS",29, 0)
  15042    W !,?3,"D ate : ",$E (PSJOD,4,5 ),"/",$E(P SJOD,6,7), "/",$E(PSJ OD,2,3),?2 5,"ORDER #  : ",PSJOR D,?45,"Pat ient : ",P SJPAT
  15043   "RTN","PSJ CLOLS",30, 0)
  15044    W !,?3,"D RUG : ",PS JDRG
  15045   "RTN","PSJ CLOLS",31, 0)
  15046    W !,?3,"E ntered by  : ",PSJUSR ,!,?3,"App roved by :  ",PSJAPR
  15047   "RTN","PSJ CLOLS",32, 0)
  15048    W !,?3,"L ockout Rea son : ",$$ GET1^DIQ(5 2.54,PSJRE A,.01)
  15049   "RTN","PSJ CLOLS",33, 0)
  15050    W !,?3,"C omments :  " I $L(PSJ COM)<65 W  PSJCOM,!!  Q
  15051   "RTN","PSJ CLOLS",34, 0)
  15052    F J=1:1 Q :$P(PSJCOM ," ",J,999 9)=""  S X =$P(PSJCOM ," ",J) W: $L(X)+$X>7 0 !,?14 W  X," "
  15053   "RTN","PSJ CLOLS",35, 0)
  15054    W !! Q
  15055   "RTN","PSJ CLOLS",36, 0)
  15056   HD U IO W  !!,?5,"LIS T OF ORDER S WRITTEN  FOR CLOZAP INE OVERRI DING LOCKO UT",!,?10, "FOR THE D ATE RANGE  ",$E(PSOBD ,4,5),"/", $E(PSOBD,6 ,7),"/",$E (PSOBD,2,3 )," THROUG H ",$E(PSO ED,4,5),"/ ",$E(PSOED ,6,7),"/", $E(PSOED,2 ,3),! Q
  15057   "RTN","PSJ CLOLS",37, 0)
  15058    ;
  15059   "RTN","PSJ CLOLS",38, 0)
  15060   QUE ;queue  job
  15061   "RTN","PSJ CLOLS",39, 0)
  15062    S ZTRTN=" DQ^PSJCLOL S",ZTDESC= "CLOZAPINE  LIST",ZTS AVE("PSOBD ")="",ZTSA VE("PSOED" )="" D ^%Z TLOAD G EX IT
  15063   "RTN","PSJ CLOZ")
  15064   0^3^B19497 3314
  15065   "RTN","PSJ CLOZ",1,0)
  15066   PSJCLOZ ;  DAL/RJS -  INPATIENT  CLOZAPINE  ORDER CHEC K ; 1/8/16  6:50pm
  15067   "RTN","PSJ CLOZ",2,0)
  15068    ;;5.0;INP ATIENT MED ICATIONS ; **327**;01  DEC 15;Bu ild 64
  15069   "RTN","PSJ CLOZ",3,0)
  15070    ;
  15071   "RTN","PSJ CLOZ",4,0)
  15072   CLOZ(DFN,D RUG) ;
  15073   "RTN","PSJ CLOZ",5,0)
  15074    ; DFN MUS T BE SET T O PATIENT  IEN  ; DRU G MUST BE  SET TO DRU G IEN
  15075   "RTN","PSJ CLOZ",6,0)
  15076    I '$G(DFN )!('$G(DRU G)) S ANQX =0 Q
  15077   "RTN","PSJ CLOZ",7,0)
  15078    D PROVCHK ($G(PSGPR) ) Q:ANQX
  15079   "RTN","PSJ CLOZ",8,0)
  15080    N RTN
  15081   "RTN","PSJ CLOZ",9,0)
  15082    S RTN=$$G ET1^DIQ(50 ,DRUG,17.5 )
  15083   "RTN","PSJ CLOZ",10,0 )
  15084    D:$L(RTN)  ^@RTN
  15085   "RTN","PSJ CLOZ",11,0 )
  15086    Q
  15087   "RTN","PSJ CLOZ",12,0 )
  15088    ;
  15089   "RTN","PSJ CLOZ",13,0 )
  15090   PROVCHK(PR OV) ;
  15091   "RTN","PSJ CLOZ",14,0 )
  15092    N PSJQUIT
  15093   "RTN","PSJ CLOZ",15,0 )
  15094    ;
  15095   "RTN","PSJ CLOZ",16,0 )
  15096    S (ANQX,P SJQUIT)=0
  15097   "RTN","PSJ CLOZ",17,0 )
  15098    I $G(PROV ) D
  15099   "RTN","PSJ CLOZ",18,0 )
  15100    .I '$L($$ DEA^XUSER( ,PROV)) D
  15101   "RTN","PSJ CLOZ",19,0 )
  15102    ..S (ANQX ,PSJQUIT)= 1
  15103   "RTN","PSJ CLOZ",20,0 )
  15104    ..W !," " ,!,"*** Pr ovider mus t have a D EA# or VA#  to write  prescripti ons for th is drug."
  15105   "RTN","PSJ CLOZ",21,0 )
  15106    . Q:PSJQU IT
  15107   "RTN","PSJ CLOZ",22,0 )
  15108    .I '$$FIN D1^DIC(200 .051,","_P ROV_",","X ","YSCL AU THORIZED")  D
  15109   "RTN","PSJ CLOZ",23,0 )
  15110    ..S (ANQX ,PSJQUIT)= 1
  15111   "RTN","PSJ CLOZ",24,0 )
  15112    ..W !," " ,!,"*** Pr ovider mus t hold YSC L AUTHORIZ ED key to  write pres criptions  for clozap ine."
  15113   "RTN","PSJ CLOZ",25,0 )
  15114    Q
  15115   "RTN","PSJ CLOZ",26,0 )
  15116   BEFQUIT ;
  15117   "RTN","PSJ CLOZ",27,0 )
  15118    Q:'$G(QOA A)
  15119   "RTN","PSJ CLOZ",28,0 )
  15120    N QODS,QO RF,ORMAX,O RCLPAT
  15121   "RTN","PSJ CLOZ",29,0 )
  15122    S QODS=$$ FIND1^DIC( 101.41,,"X ","OR GTX  DAYS SUPPL Y","AB") Q :'QODS
  15123   "RTN","PSJ CLOZ",30,0 )
  15124    S QODS=$$ FIND1^DIC( 101.416,", "_ORX_",", "Q",QODS," D") Q:'QOD S
  15125   "RTN","PSJ CLOZ",31,0 )
  15126    S QODS=$$ GET1^DIQ(1 01.416,QOD S_","_ORX, .01)
  15127   "RTN","PSJ CLOZ",32,0 )
  15128    S QORF=$$ FIND1^DIC( 101.41,,"X ","OR GTX  REFILLS"," AB") Q:'QO RF
  15129   "RTN","PSJ CLOZ",33,0 )
  15130    S QORF=$$ FIND1^DIC( 101.416,", "_ORX_",", "Q",QORF," D") Q:'QOR F
  15131   "RTN","PSJ CLOZ",34,0 )
  15132    S QORF=$$ GET1^DIQ(1 01.416,QOR F_","_ORX, .01)
  15133   "RTN","PSJ CLOZ",35,0 )
  15134    S QORF=QO RF+1
  15135   "RTN","PSJ CLOZ",36,0 )
  15136    S ORCLPAT =$P(ORYS,U ,7)
  15137   "RTN","PSJ CLOZ",37,0 )
  15138    S ORMAX=$ S(ORCLPAT= "M":28,ORC LPAT="B":1 4,ORCLPAT= "W":7,1:90 )
  15139   "RTN","PSJ CLOZ",38,0 )
  15140    I QORF*QO DS>ORMAX D
  15141   "RTN","PSJ CLOZ",39,0 )
  15142    .K ORY
  15143   "RTN","PSJ CLOZ",40,0 )
  15144    .S ORY=1_ U_ORCLOZ
  15145   "RTN","PSJ CLOZ",41,0 )
  15146    .W !,?5," Problem Or dering Clo zapine Rel ated Medic ation"_U_O RCLOZ
  15147   "RTN","PSJ CLOZ",42,0 )
  15148    .W !,?5," *** This p atient is  only allow ed an orde r with a m aximum Day s Supply o f "_ORMAX_ "."
  15149   "RTN","PSJ CLOZ",43,0 )
  15150    .W !,?5," This inclu des the am ounts adde d by any r efills ent ered in wi th the ord er also."
  15151   "RTN","PSJ CLOZ",44,0 )
  15152    Q
  15153   "RTN","PSJ CLOZ",45,0 )
  15154   OVERRIDE ;
  15155   "RTN","PSJ CLOZ",46,0 )
  15156    I '$$FIND 1^DIC(200. 051,","_PR OV_",","X" ,"PSOLOCKC LOZ") D  Q  1
  15157   "RTN","PSJ CLOZ",47,0 )
  15158    .N Y
  15159   "RTN","PSJ CLOZ",48,0 )
  15160    .W !," ", !,?5,"***  You are no t authoriz ed to over ride Cloza pine order s.",!," "
  15161   "RTN","PSJ CLOZ",49,0 )
  15162    .K DIR S  DIR(0)="E" ,DIR("A")= "Press Ret urn to Con tinue..."  D ^DIR K D IR W @IOF
  15163   "RTN","PSJ CLOZ",50,0 )
  15164    Q
  15165   "RTN","PSJ CLOZ",51,0 )
  15166   PSJFILE(DF N) ;
  15167   "RTN","PSJ CLOZ",52,0 )
  15168    S PSJCLPA T=DFN
  15169   "RTN","PSJ CLOZ",53,0 )
  15170    N PSJORN, PSJORDER I  $G(PSJCOM ) D  Q
  15171   "RTN","PSJ CLOZ",54,0 )
  15172    .I $G(PSG ODA),$O(^T MP("PSJCOM ",$J,PSGOD A))'="" Q    ; Put in to the fil e 53.8 jus t at the e nd
  15173   "RTN","PSJ CLOZ",55,0 )
  15174    .N PSJORD 1 S PSJORD 1=""
  15175   "RTN","PSJ CLOZ",56,0 )
  15176    .F  S PSJ ORD1=$O(^T MP("PSJCOM ",$J,PSJOR D1)) Q:'PS JORD1  D
  15177   "RTN","PSJ CLOZ",57,0 )
  15178    ..S ANQDA TA=$G(^TMP ("PSJCOM", $J,PSJORD1 ,"ANQDATA" )) Q:'$L(A NQDATA)
  15179   "RTN","PSJ CLOZ",58,0 )
  15180    ..S PSJOR N=+$P(^TMP ("PSJCOM", $J,PSJORD1 ,0),"^",21 )
  15181   "RTN","PSJ CLOZ",59,0 )
  15182    ..D PSJFI LE1
  15183   "RTN","PSJ CLOZ",60,0 )
  15184   PSJFILE1 ;
  15185   "RTN","PSJ CLOZ",61,0 )
  15186    I $D(ANQD ATA) D
  15187   "RTN","PSJ CLOZ",62,0 )
  15188    .F  D NOW ^%DTC I '$ D(^PS(53.8 ,"B",%)) S  NOW=% Q
  15189   "RTN","PSJ CLOZ",63,0 )
  15190    .S PSJPRO V=$P(ANQDA TA,"^",2), PSJ1PH=$P( ANQDATA,"^ "),PSJ2PH= $P(ANQDATA ,"^",5)
  15191   "RTN","PSJ CLOZ",64,0 )
  15192    .S PSJREA SN=$P(ANQD ATA,"^",3) ,PSJREMRK= $P(ANQDATA ,"^",4)
  15193   "RTN","PSJ CLOZ",65,0 )
  15194    .I $G(ORO ) S PSJPRO V=$P(ORO," ^",4)
  15195   "RTN","PSJ CLOZ",66,0 )
  15196    .S:'$G(PS JORN)&$G(O RO) PSJORN =+ORO
  15197   "RTN","PSJ CLOZ",67,0 )
  15198    .S PSJORD ER("PSJORN ")=PSJORN
  15199   "RTN","PSJ CLOZ",68,0 )
  15200    .K DD,DO  S DIC="^PS (53.8,",DI C(0)="L",D LAYGO=53.8 ,X=NOW
  15201   "RTN","PSJ CLOZ",69,0 )
  15202    .D FILE^D ICN K DIC, DLAYGO,DD, DO,DA,DR
  15203   "RTN","PSJ CLOZ",70,0 )
  15204    .N PS538  S (PS538,D A)=+Y,DIE= "^PS(53.8, ",DR="1/// /^S X=PSJO RDER(""PSJ ORN"")"_"; 3////^S X= PSJPROV;2/ ///^S X=PS J1PH;4//// ^S X=PSJRE ASN;5////^ S X=PSJREM RK;6////^S  X=PSJ2PH"
  15205   "RTN","PSJ CLOZ",71,0 )
  15206    .D ^DIE K  DIE,DA,DR
  15207   "RTN","PSJ CLOZ",72,0 )
  15208    .S XMY(PS JPROV)="", XMY(PSJ2PH )=""
  15209   "RTN","PSJ CLOZ",73,0 )
  15210    .K ANQDAT A,X,Y,%,AN QREM
  15211   "RTN","PSJ CLOZ",74,0 )
  15212    .W !,"THE  OVERRIDDE N ORDER IS  COMPLETE" ,!
  15213   "RTN","PSJ CLOZ",75,0 )
  15214    .D ALERT
  15215   "RTN","PSJ CLOZ",76,0 )
  15216    Q
  15217   "RTN","PSJ CLOZ",77,0 )
  15218   ALERT ; se nd an aler t to the T WO approvi ng team me mbers
  15219   "RTN","PSJ CLOZ",78,0 )
  15220    S XQADATA =PSCLPAT ;
  15221   "RTN","PSJ CLOZ",79,0 )
  15222    S PSOLAST 4=$E($$GET 1^DIQ(2,PS CLPAT,.09) ,6,9)
  15223   "RTN","PSJ CLOZ",80,0 )
  15224    S XQAARCH =1
  15225   "RTN","PSJ CLOZ",81,0 )
  15226    S XQAFLG= "D"
  15227   "RTN","PSJ CLOZ",82,0 )
  15228    S XQA(PSJ 2PH)="",XQ A(PSJPROV) =""
  15229   "RTN","PSJ CLOZ",83,0 )
  15230    D NOW^%DT C S Y=% D  DD^%DT S P SCDATE=Y
  15231   "RTN","PSJ CLOZ",84,0 )
  15232    S XQAMSG= $$GET1^DIQ (2,PSCLPAT ,.01)_" (" _PSOLAST4_ ")"_": CLO ZAPINE OVE RRIDE RX P ROCESSED   :"_PSCDATE
  15233   "RTN","PSJ CLOZ",85,0 )
  15234    S XQAID=" PSI"_","_P SCLPAT
  15235   "RTN","PSJ CLOZ",86,0 )
  15236    D SETUP^X QALERT
  15237   "RTN","PSJ CLOZ",87,0 )
  15238    W !!,"OVE RRIDE ALER TS HAVE BE EN SENT TO  THE APPRO VING TEAM  MEMBERS",! !
  15239   "RTN","PSJ CLOZ",88,0 )
  15240    Q
  15241   "RTN","PSJ CLOZ",89,0 )
  15242    ;
  15243   "RTN","PSJ CLOZ",90,0 )
  15244   READ ;
  15245   "RTN","PSJ CLOZ",91,0 )
  15246    S CLOZPAT =$P($P(XQX ,"patient  ",2)," BY" ,1)
  15247   "RTN","PSJ CLOZ",92,0 )
  15248    S DIR("A" )="Do you  concurr wi th the req uested ove rride for  "_CLOZPAT, DIR(0)="Y" ,DIR("B")= "N" D ^DIR  G END:$D( DIRUT) K D IR D:'Y!($ D(DIRUT))  END
  15249   "RTN","PSJ CLOZ",93,0 )
  15250    Q
  15251   "RTN","PSJ CLOZ",94,0 )
  15252   TDD ; TOTA L DAILY DO SE INPUT > > RJS
  15253   "RTN","PSJ CLOZ",95,0 )
  15254    D
  15255   "RTN","PSJ CLOZ",96,0 )
  15256    .S DIR(0) ="N^12.5:3 000:1",DIR ("A")="CLO ZAPINE dos age (mg/da y) ? " D ^ DIR K DIR  I $D(DIRUT ) S (ANQX, PSGORQF)=1  Q
  15257   "RTN","PSJ CLOZ",97,0 )
  15258    .S:+$G(PS JEDITO) PS GETDD=X
  15259   "RTN","PSJ CLOZ",98,0 )
  15260    .S:+$G(PS GCOPY) PSG CTDD=X
  15261   "RTN","PSJ CLOZ",99,0 )
  15262    .S PSOSAN D=X
  15263   "RTN","PSJ CLOZ",100, 0)
  15264    Q
  15265   "RTN","PSJ CLOZ",101, 0)
  15266   ORD ;/RJS  Begin PSJ* 5.0*327 mo dification
  15267   "RTN","PSJ CLOZ",102, 0)
  15268    S PSGDRG= PSJDD
  15269   "RTN","PSJ CLOZ",103, 0)
  15270    I $$GET1^ DIQ(50,+$G (PSGDRG),1 7.5)="PSOC LO1" D CLO Z(PSGP,PSG DRG) I $G( ANQX) S PS GORQF=1
  15271   "RTN","PSJ CLOZ",104, 0)
  15272   END ;
  15273   "RTN","PSJ CLOZ",105, 0)
  15274    K DIRUT,D IROUT,DIR
  15275   "RTN","PSJ CLOZ",106, 0)
  15276    Q
  15277   "RTN","PSJ CLOZ",107, 0)
  15278    ;
  15279   "RTN","PSJ CLOZ",108, 0)
  15280   CMPLX ;COM PLEX THEN  ORDER LOGI C
  15281   "RTN","PSJ CLOZ",109, 0)
  15282    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15283   "RTN","PSJ CLOZ",110, 0)
  15284    Q:+$G(PSG COPY)
  15285   "RTN","PSJ CLOZ",111, 0)
  15286    D CLOZPAT ,ANDTHEN
  15287   "RTN","PSJ CLOZ",112, 0)
  15288    Q:$G(PSGT YP)="A"
  15289   "RTN","PSJ CLOZ",113, 0)
  15290    I $D(PSGT YP),'$D(^T MP("PSGCPL X",$J,DFN, +$G(PSGORD ))) S ^TMP ("PSGCPLX" ,$J,DFN,+$ G(PSGORD)) =PSGSD,PSG COMP=1
  15291   "RTN","PSJ CLOZ",114, 0)
  15292    Q
  15293   "RTN","PSJ CLOZ",115, 0)
  15294   CMPLX2 ;SE COND COMPL EX THEN OR DER LOGIC
  15295   "RTN","PSJ CLOZ",116, 0)
  15296    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15297   "RTN","PSJ CLOZ",117, 0)
  15298    Q:+$G(PSG COPY)
  15299   "RTN","PSJ CLOZ",118, 0)
  15300    D CLOZPAT ,ANDTHEN
  15301   "RTN","PSJ CLOZ",119, 0)
  15302    I $G(PSGT YP)="A"!($ G(PSGTYP)= "AT") Q
  15303   "RTN","PSJ CLOZ",120, 0)
  15304    I $D(^TMP ("PSGCPLX" ,$J,DFN))  D
  15305   "RTN","PSJ CLOZ",121, 0)
  15306    .I $O(^TM P("PSGCPLX ",$J,DFN,0 )) S PSGTM P=$O(^TMP( "PSGCPLX", $J,DFN,0))
  15307   "RTN","PSJ CLOZ",122, 0)
  15308    .I +$G(PS GTMP)'=+$G (PSGORD) D
  15309   "RTN","PSJ CLOZ",123, 0)
  15310    ..S $P(PS GRDTX,U,1) =$G(^TMP(" PSGCPLX",$ J,DFN,PSGT MP))
  15311   "RTN","PSJ CLOZ",124, 0)
  15312    ..I $G(PS GRDTX(+$G( PSJORD),"P SGSD"))=+$ G(PSGRDTX)
  15313   "RTN","PSJ CLOZ",125, 0)
  15314    ..N X,X1, X2 S X1=+$ G(PSGRDTX) ,X2=$S($G( CLOZPAT)=2 :28,$G(CLO ZPAT)=1:14 ,$G(CLOZPA T)=0:7,$G( CLOZPAT)=3 :4,1:90)
  15315   "RTN","PSJ CLOZ",126, 0)
  15316    ..D C^%DT C S PSGFD= X,PSGFDN=$ $ENDD^PSGM I(PSGFD)_" ^"_$$ENDTC ^PSGMI(PSG FD)
  15317   "RTN","PSJ CLOZ",127, 0)
  15318    Q
  15319   "RTN","PSJ CLOZ",128, 0)
  15320   CMPLX3 ;SE COND COMPL EX THEN OR DER LOGIC 
  15321   "RTN","PSJ CLOZ",129, 0)
  15322    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15323   "RTN","PSJ CLOZ",130, 0)
  15324    I PSGSTAT ="NON-VERI FIED" D DI SPCMP(PSGO RD,PSGFD)  D  Q
  15325   "RTN","PSJ CLOZ",131, 0)
  15326    .I $G(PSS D) S PSGFD =PSSD,PSGF DN=$$ENDD^ PSGMI(PSGF D)_"^"_$$E NDTC^PSGMI (PSGFD) K  PSSD
  15327   "RTN","PSJ CLOZ",132, 0)
  15328    D CLOZPAT ,ANDTHEN
  15329   "RTN","PSJ CLOZ",133, 0)
  15330    I $G(PSGT YP)="T"!($ G(PSGTYP)= "TA") Q
  15331   "RTN","PSJ CLOZ",134, 0)
  15332    N X,X1,X2  S X1=+$G( PSGRDTX),X 2=$S($G(CL OZPAT)=2:2 8,$G(CLOZP AT)=1:14,$ G(CLOZPAT) =0:7,$G(CL OZPAT)=3:4 ,1:90)
  15333   "RTN","PSJ CLOZ",135, 0)
  15334    D C^%DTC  S PSGFD=X, PSGFDN=$$E NDD^PSGMI( PSGFD)_"^" _$$ENDTC^P SGMI(PSGFD )
  15335   "RTN","PSJ CLOZ",136, 0)
  15336    Q
  15337   "RTN","PSJ CLOZ",137, 0)
  15338   CLOZPAT ;V ERIFY PATI ENT IS A C LOZAPINE P ATIENT
  15339   "RTN","PSJ CLOZ",138, 0)
  15340    K CLOZPAT
  15341   "RTN","PSJ CLOZ",139, 0)
  15342    I $L($$GE T1^DIQ(55, DFN,53)),$ $GET1^DIQ( 55,DFN,54, "I")'="D"  D
  15343   "RTN","PSJ CLOZ",140, 0)
  15344    .I $$GET1 ^DIQ(55,DF N,53)?1U6N  S CLOZPAT =3 Q
  15345   "RTN","PSJ CLOZ",141, 0)
  15346    .N CLOZNU M,CLOZUID
  15347   "RTN","PSJ CLOZ",142, 0)
  15348    .S CLOZNU M=$$GET1^D IQ(55,DFN, 53) Q:CLOZ NUM=""
  15349   "RTN","PSJ CLOZ",143, 0)
  15350    .S CLOZUI D=$$FIND1^ DIC(603.01 ,,"X",CLOZ NUM) Q:'CL OZUID
  15351   "RTN","PSJ CLOZ",144, 0)
  15352    .S CLOZPA T=$$GET1^D IQ(603.01, CLOZUID,2, "I")
  15353   "RTN","PSJ CLOZ",145, 0)
  15354    .S CLOZPA T=$S($G(CL OZPAT)="M" :2,$G(CLOZ PAT)="B":1 ,$G(CLOZPA T)="W":0,1 :90)
  15355   "RTN","PSJ CLOZ",146, 0)
  15356    Q
  15357   "RTN","PSJ CLOZ",147, 0)
  15358   ANDTHEN ;C OMPLEX AND /THEN ORDE R
  15359   "RTN","PSJ CLOZ",148, 0)
  15360    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15361   "RTN","PSJ CLOZ",149, 0)
  15362    Q:+$G(PSG COPY)
  15363   "RTN","PSJ CLOZ",150, 0)
  15364    N PSGTMP, PSGID S PS GTMP=+$$GE T1^DIQ(53. 1,+$G(PSGO RD),125,"I "),PSGTYP= ""
  15365   "RTN","PSJ CLOZ",151, 0)
  15366    S PSGID=$ $FIND1^DIC (100.045," ,"_PSGTMP_ ",","X","C ONJ","ID")  I PSGID D
  15367   "RTN","PSJ CLOZ",152, 0)
  15368    .S PSGTYP =PSGTYP_$$ GET1^DIQ(1 00.045,PSG ID_","_PSG TMP,1)
  15369   "RTN","PSJ CLOZ",153, 0)
  15370    Q
  15371   "RTN","PSJ CLOZ",154, 0)
  15372   DISPCMP(PS GORD,PSSD)  ;COMPLEX  ORDER CHEC K
  15373   "RTN","PSJ CLOZ",155, 0)
  15374    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15375   "RTN","PSJ CLOZ",156, 0)
  15376    S PSSD=+$ $GET1^DIQ( 53.1,+$G(P SGORD),117 ,"I")
  15377   "RTN","PSJ CLOZ",157, 0)
  15378    Q
  15379   "RTN","PSJ CLOZ",158, 0)
  15380   EXTDT ;VER IFY EXTERN AL DATE
  15381   "RTN","PSJ CLOZ",159, 0)
  15382    Q
  15383   "RTN","PSJ CLOZ",160, 0)
  15384    ;/RBN Beg in modific ations to  comply wit h SACC sta ndard for  routine le ngth limit s
  15385   "RTN","PSJ CLOZ",161, 0)
  15386   MSG1 ;
  15387   "RTN","PSJ CLOZ",162, 0)
  15388    W !!,"Per mission to  dispense  clozapine  has been d enied. The  results o f the late st",!
  15389   "RTN","PSJ CLOZ",163, 0)
  15390    W "Lab Te st drawn i n the past  7 days sh ow ANC res ults but N o Matching  WBC.",!
  15391   "RTN","PSJ CLOZ",164, 0)
  15392    W "If you  wish to d ispense ou tside the  FDA and VA  protocol  ANC limits ,",!
  15393   "RTN","PSJ CLOZ",165, 0)
  15394    W "docume nt your re quest to R equest for  Override  of Pharmac y Lockout  ",!
  15395   "RTN","PSJ CLOZ",166, 0)
  15396    W "(from  VHA Handbo ok 1160.02 ) Director  of the",!
  15397   "RTN","PSJ CLOZ",167, 0)
  15398    W "VA Nat ional Cloz apine Coor dinating C enter",!
  15399   "RTN","PSJ CLOZ",168, 0)
  15400    W "(Phone : 214-857- 0068 Fax:  214-857-03 39) for a  one-time o verride pe rmission." ,!
  15401   "RTN","PSJ CLOZ",169, 0)
  15402    W !,"No o rder enter ed!"
  15403   "RTN","PSJ CLOZ",170, 0)
  15404    S ANQX=1
  15405   "RTN","PSJ CLOZ",171, 0)
  15406    Q
  15407   "RTN","PSJ CLOZ",172, 0)
  15408   MSG2 ;
  15409   "RTN","PSJ CLOZ",173, 0)
  15410    W !!,"Per mission to  dispense  clozapine  has been d enied. The  results o f the late st",!
  15411   "RTN","PSJ CLOZ",174, 0)
  15412    W "Lab Te st drawn i n the past  7 days sh ow No ANC  results. I f you wish  to dispen se",!
  15413   "RTN","PSJ CLOZ",175, 0)
  15414    W "outsid e the FDA  and VA pro tocol ANC  limits, do cument you r request  to Request ",!
  15415   "RTN","PSJ CLOZ",176, 0)
  15416    W "for Ov erride of  Pharmacy L ockout (fr om VHA Han dbook 1160 .02) Direc tor of the ",!
  15417   "RTN","PSJ CLOZ",177, 0)
  15418    W "VA Nat ional Cloz apine Coor dinating C enter",!
  15419   "RTN","PSJ CLOZ",178, 0)
  15420    W "(Phone : 214-857- 0068 Fax:  214-857-03 39) for a  one-time o verride pe rmission." ,!
  15421   "RTN","PSJ CLOZ",179, 0)
  15422    W !,"No o rder enter ed!"
  15423   "RTN","PSJ CLOZ",180, 0)
  15424    S ANQX=1
  15425   "RTN","PSJ CLOZ",181, 0)
  15426    Q
  15427   "RTN","PSJ CLOZ",182, 0)
  15428   MSG3 ;
  15429   "RTN","PSJ CLOZ",183, 0)
  15430    W !,"A CB C/Differen tial inclu ding ANC M ust Be Ord ered and M onitored o n a",!
  15431   "RTN","PSJ CLOZ",184, 0)
  15432    W "Daily  basis unti l the ANC  above 1000 /mm3 with  no signs o f infectio n.",!
  15433   "RTN","PSJ CLOZ",185, 0)
  15434    W "If ANC  is betwee n 1000-149 9, therapy  can be co ntinued bu t physicia n must ord er",!
  15435   "RTN","PSJ CLOZ",186, 0)
  15436    W "lab te st three t imes weekl y."
  15437   "RTN","PSJ CLOZ",187, 0)
  15438    Q
  15439   "RTN","PSJ CLOZ",188, 0)
  15440   MSG4 ;
  15441   "RTN","PSJ CLOZ",189, 0)
  15442    W !,"Perm ission to  dispense c lozapine h as been de nied. If t he results  of the la test"
  15443   "RTN","PSJ CLOZ",190, 0)
  15444    W !,"Lab  Test drawn  in the pa st 7 days  show ANC b elow 1000/ mm3 and yo u wish to"
  15445   "RTN","PSJ CLOZ",191, 0)
  15446    W !,"disp ense outsi de the FDA  and VA pr otocol ANC  limits, d ocument yo ur request  to"
  15447   "RTN","PSJ CLOZ",192, 0)
  15448    W !,"Requ est for Ov erride of  Pharmacy L ockout (fr om VHA Han dbook 1160 .02)"
  15449   "RTN","PSJ CLOZ",193, 0)
  15450    W !,"Dire ctor of th e VA Natio nal Clozap ine Coordi nating Cen ter"
  15451   "RTN","PSJ CLOZ",194, 0)
  15452    W !,"(Pho ne: 214-85 7-0068 Fax : 214-857- 0339) for  a one-time  override  permission .",!
  15453   "RTN","PSJ CLOZ",195, 0)
  15454    S ANQX=1
  15455   "RTN","PSJ CLOZ",196, 0)
  15456    Q
  15457   "RTN","PSJ CLOZ",197, 0)
  15458   MSG5 ;
  15459   "RTN","PSJ CLOZ",198, 0)
  15460    W !!,"Per mission to  dispense  clozapine  has been d enied. Ple ase contac t the"
  15461   "RTN","PSJ CLOZ",199, 0)
  15462    W !,"Dire ctor of th e VA Natio nal Clozap ine Coordi nating Cen ter"
  15463   "RTN","PSJ CLOZ",200, 0)
  15464    W !!,"Req uest for O verride of  Pharmacy  Lockout (f rom VHA Ha ndbook 116 0.02)"
  15465   "RTN","PSJ CLOZ",201, 0)
  15466    W !,"(Pho ne: 214-85 7-0068 Fax : 214-857- 0339).",!
  15467   "RTN","PSJ CLOZ",202, 0)
  15468    Q
  15469   "RTN","PSJ CLOZ",203, 0)
  15470   MSG6 ; ; * * START NC C REMEDIAT ION ** 457  AND PSJ 3 27/RTW MSG  6 added f or new cri tically lo w ANC leve ls clozapi ne overrid e requirem ents
  15471   "RTN","PSJ CLOZ",204, 0)
  15472    W !!,"Thi s clozapin e drug may  not be di spensed to  the patie nt at this  time base d on the a vailable l ab tests r elated to  the clozap ine treatm ent progra m."
  15473   "RTN","PSJ CLOZ",205, 0)
  15474    W !!,"Ple ase contac t the NCCC  to reques t an overr ide in ord er to proc eed with d ispensing  this drug.  "
  15475   "RTN","PSJ CLOZ",206, 0)
  15476    W !!,"Req uest for O verride of  Pharmacy  Lockout (f rom VHA Ha ndbook 116 0.02)"
  15477   "RTN","PSJ CLOZ",207, 0)
  15478    W !!,"The   matching  ANC count s which ca used the l ockout are  of lab te st results  performed  on "
  15479   "RTN","PSJ CLOZ",208, 0)
  15480    S ANQX=1, Y=$P(PSOYS ,"^",6) X  ^DD("DD")  W $P(Y,"@" )
  15481   "RTN","PSJ CLOZ",209, 0)
  15482    W !!,?5," ANC: "_$P( PSOYS,"^", 4),!
  15483   "RTN","PSJ CLOZ",210, 0)
  15484    Q
  15485   "RTN","PSJ CLOZ",211, 0)
  15486   MSG9 ;
  15487   "RTN","PSJ CLOZ",212, 0)
  15488    W !,"***  Permission  to dispen se clozapi ne has bee n denied b ased on th e availabl e"
  15489   "RTN","PSJ CLOZ",213, 0)
  15490    W !,"     lab tests  related to  the cloza pine treat ment progr am. ***"
  15491   "RTN","PSJ CLOZ",214, 0)
  15492    W !!,"For  a Nationa l Override  to dispen se at the  patient's  normal fre quency,"
  15493   "RTN","PSJ CLOZ",215, 0)
  15494    W !,"plea se contact  the VA Na tional Clo zapine Coo rdinating  Center to  contact"
  15495   "RTN","PSJ CLOZ",216, 0)
  15496    W !,"the  VA Nationa l Clozapin e Coordina ting Cente r request  an Overrid e of"
  15497   "RTN","PSJ CLOZ",217, 0)
  15498    W !,"Phar macy Locko ut (from V HA Handboo k 1160.02) "
  15499   "RTN","PSJ CLOZ",218, 0)
  15500    W !,"(Pho ne: 214-85 7-0068 Fax : 214-857- 0339)."
  15501   "RTN","PSJ CLOZ",219, 0)
  15502    W !,"A Sp ecial Cond itions Loc al Overrid e can be a pproved fo r"
  15503   "RTN","PSJ CLOZ",220, 0)
  15504    W !,"(1)  weather-re lated cond itions, (2 ) mail ord er delays  of clozapi ne, or"
  15505   "RTN","PSJ CLOZ",221, 0)
  15506    W !,"(3)  inpatient  going on l eave. With  Provider' s document ation of a pproval,"
  15507   "RTN","PSJ CLOZ",222, 0)
  15508    W !,"you  may dispen se a one-t ime supply  not to ex ceed 4 day s.",!
  15509   "RTN","PSJ CLOZ",223, 0)
  15510    Q
  15511   "RTN","PSJ CLOZ",224, 0)
  15512    ;
  15513   "RTN","PSJ CLOZ",225, 0)
  15514    ;/RBN Beg in of modi fications  for new me ssage for  IP 4 day o verrride.
  15515   "RTN","PSJ CLOZ",226, 0)
  15516   MSG10 ;
  15517   "RTN","PSJ CLOZ",227, 0)
  15518    W !,"***  Permission  to dispen se clozapi ne has bee n denied b ased on th e availabl e"
  15519   "RTN","PSJ CLOZ",228, 0)
  15520    W !,"     lab tests  related to  the cloza pine treat ment progr am. ***"
  15521   "RTN","PSJ CLOZ",229, 0)
  15522    W !!,"For  a Nationa l Override  to dispen se at the  patient's  normal fre quency,"
  15523   "RTN","PSJ CLOZ",230, 0)
  15524    W !,"plea se contact  the VA Na tional Clo zapine Coo rdinating  Center to  request an "
  15525   "RTN","PSJ CLOZ",231, 0)
  15526    W !,"Over ride of Ph armacy Loc kout (from  VHA Handb ook 1160.0 2) (Phone:  214-857-0 068"
  15527   "RTN","PSJ CLOZ",232, 0)
  15528    W !,"Fax:  214-857-0 339)."
  15529   "RTN","PSJ CLOZ",233, 0)
  15530    W !,"A Sp ecial Cond itions Loc al Overrid e for Inpa tients can  be approv ed for an"
  15531   "RTN","PSJ CLOZ",234, 0)
  15532    W !,"IP O verride Or der with O utside Lab  Results.  With Provi der's docu mentation  of"
  15533   "RTN","PSJ CLOZ",235, 0)
  15534    W !,"appr oval, you  may dispen se a one-t ime IP sup ply not to  exceed 4  days."
  15535   "RTN","PSJ CLOZ",236, 0)
  15536    W !,"The  ANC from a nother fac ility must  be record ed in the  Progress n ote/commen ts"
  15537   "RTN","PSJ CLOZ",237, 0)
  15538    W !,"in p harmacy"
  15539   "RTN","PSJ CLOZ",238, 0)
  15540    Q
  15541   "RTN","PSJ CLOZ",239, 0)
  15542    ;/RBN End  of modifi cations fo r new mess age for IP  4 day ove rrride.
  15543   "RTN","PSJ CLOZ",240, 0)
  15544    ; ** END  NCC REMEDI ATION ** 4 57 AND PSJ  327/RTW
  15545   "RTN","PSJ CLOZ",241, 0)
  15546    ;
  15547   "RTN","PSJ CLOZ",242, 0)
  15548   COMPLEX ;  Display Co mplex Orde r stop dat e warning  message  < <RJS
  15549   "RTN","PSJ CLOZ",243, 0)
  15550    Q:$G(PSGF LG)
  15551   "RTN","PSJ CLOZ",244, 0)
  15552    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15553   "RTN","PSJ CLOZ",245, 0)
  15554    N PSGFDT   ;,PSGSD,P SGYS,X,X1, X2
  15555   "RTN","PSJ CLOZ",246, 0)
  15556    D CLOZPAT
  15557   "RTN","PSJ CLOZ",247, 0)
  15558    S X1=+$G( PSGSD),X2= $S($G(CLOZ PAT)=2:28, $G(CLOZPAT )=1:14,$G( CLOZPAT)=0 :7,$G(CLOZ PAT)=3:4,1 :90)
  15559   "RTN","PSJ CLOZ",248, 0)
  15560    D C^%DTC  S PSGFDT=$ E(X,4,5)_" /"_$E(X,6, 7)_"/"_$E( X,2,3)
  15561   "RTN","PSJ CLOZ",249, 0)
  15562    W !!,?25, "* WARNING  *",!!,?10 ,"This ord er contain s a reques ted durati on."
  15563   "RTN","PSJ CLOZ",250, 0)
  15564    W !,?8,"P lease revi ew the sys tem calcul ated stop  date",!,?5 ,"to confi rm that it  is within  the allow able durat ion"
  15565   "RTN","PSJ CLOZ",251, 0)
  15566    W !,?13," of the ord er based o n the pati ent's",!,? 11,"author ized cloza pine dispe nse freque ncy.",!
  15567   "RTN","PSJ CLOZ",252, 0)
  15568    W !,?10," Order stop  date shou ld not exc eed ",PSGF DT,!,!,?1, "Review th e entire p rofile to  determine  appropriat e action(s ).",!
  15569   "RTN","PSJ CLOZ",253, 0)
  15570    K PSGCOMP  D PAUSE^V ALM1 S PSG FLG=1
  15571   "RTN","PSJ CLOZ",254, 0)
  15572    Q
  15573   "RTN","PSJ CLOZ",255, 0)
  15574   COMPLEX1 ;  Display C omplex Ord er stop da te warning  message   <<RJS
  15575   "RTN","PSJ CLOZ",256, 0)
  15576    Q:$G(PSGF LG)
  15577   "RTN","PSJ CLOZ",257, 0)
  15578    Q:'$$GET1 ^DIQ(53.1, +$G(PSGORD ),125,"I")
  15579   "RTN","PSJ CLOZ",258, 0)
  15580    N PSGFDT, MSG
  15581   "RTN","PSJ CLOZ",259, 0)
  15582    D:'$D(CLO ZPAT) CLOZ PAT
  15583   "RTN","PSJ CLOZ",260, 0)
  15584    S X1=+$G( PSGSD),X2= $S($G(CLOZ PAT)=2:28, $G(CLOZPAT )=1:14,$G( CLOZPAT)=0 :7,$G(CLOZ PAT)=3:4,1 :90)
  15585   "RTN","PSJ CLOZ",261, 0)
  15586    D C^%DTC  S PSGFDT=$ E(X,4,5)_" /"_$E(X,6, 7)_"/"_$E( X,2,3)
  15587   "RTN","PSJ CLOZ",262, 0)
  15588    S MSG=$J( "",25)_"*  WARNING *"  D INSTR^V ALM1("",1, 9,80,1),IN STR^VALM1( MSG,1,10,8 0,1)
  15589   "RTN","PSJ CLOZ",263, 0)
  15590    S MSG=$J( "",10)_"Th is order c ontains a  requested  duration."  D INSTR^V ALM1(MSG,1 ,11,80,1)
  15591   "RTN","PSJ CLOZ",264, 0)
  15592    S MSG=$J( "",8)_"Ple ase review  the syste m calculat ed stop da te" D INST R^VALM1(MS G,1,12,80, 1)
  15593   "RTN","PSJ CLOZ",265, 0)
  15594    S MSG=$J( "",5)_"to  confirm th at it is w ithin the  allowable  duration"  D INSTR^VA LM1(MSG,1, 13,80,1)
  15595   "RTN","PSJ CLOZ",266, 0)
  15596    S MSG=$J( "",13)_"of  the order  based on  the patien t's" D INS TR^VALM1(M SG,1,14,80 ,1)
  15597   "RTN","PSJ CLOZ",267, 0)
  15598    S MSG=$J( "",11)_"au thorized c lozapine d ispense fr equency."  D INSTR^VA LM1(MSG,1, 15,80,1)
  15599   "RTN","PSJ CLOZ",268, 0)
  15600    S MSG=$J( "",10)_"Or der stop d ate should  not excee d "_PSGFDT  D INSTR^V ALM1(MSG,1 ,17,80,1)
  15601   "RTN","PSJ CLOZ",269, 0)
  15602    S MSG=" R eview the  entire pro file to de termine ap propriate  action(s). " D INSTR^ VALM1(MSG, 1,18,80,1)
  15603   "RTN","PSJ CLOZ",270, 0)
  15604    N LN F LN =16,19 D I NSTR^VALM1 ("",1,LN,8 0,1)
  15605   "RTN","PSJ CLOZ",271, 0)
  15606    K PSGCOMP  D PAUSE^V ALM1 S PSG FLG=1
  15607   "RTN","PSJ CLOZ",272, 0)
  15608    Q
  15609   "RTN","PSJ CLOZ",273, 0)
  15610   LASTCHLD(D FN,ON) ; L ast child  of Complex  order or  not
  15611   "RTN","PSJ CLOZ",274, 0)
  15612    N FL,PSOR DA,PSORD1  I ON'["U", ON'["V" Q  1
  15613   "RTN","PSJ CLOZ",275, 0)
  15614    I ON["U"  D  Q:'PSOR DA 1  Q:'P SORD1 1  Q  0
  15615   "RTN","PSJ CLOZ",276, 0)
  15616    .S PSORDA =$$GET1^DI Q(55.06,+O N_","_DFN, 125,"I"),P SORD1=+$$G ET1^DIQ(55 .06,+ON_", "_DFN,66," I")
  15617   "RTN","PSJ CLOZ",277, 0)
  15618    .I 'PSORD A!'PSORD1  Q
  15619   "RTN","PSJ CLOZ",278, 0)
  15620    .N ORARR, MAX D LIST ^DIC(100.0 02,","_PSO RDA_",",," I",,,,,,," ORARR") S  MAX=+ORARR ("DILIST", 0)
  15621   "RTN","PSJ CLOZ",279, 0)
  15622    .F I=1:1  Q:'$D(ORAR R("DILIST" ,2,I))  I  ORARR("DIL IST",2,I)= PSORD1 Q
  15623   "RTN","PSJ CLOZ",280, 0)
  15624    .S:I=MAX  PSORD1=0 Q
  15625   "RTN","PSJ CLOZ",281, 0)
  15626    I ON["V"  D  Q:'PSOR DA 1  Q:'P SORD1 1  Q  0
  15627   "RTN","PSJ CLOZ",282, 0)
  15628    .S PSORDA =$$GET1^DI Q(55.01,+O N_","_DFN, 150,"I"),P SORD1=+$$G ET1^DIQ(55 .01,+ON_", "_DFN,110, "I")
  15629   "RTN","PSJ CLOZ",283, 0)
  15630    .I 'PSORD A!'PSORD1  Q
  15631   "RTN","PSJ CLOZ",284, 0)
  15632    .N ORARR, MAX D LIST ^DIC(100.0 02,","_PSO RDA_",",," I",,,,,,," ORARR") S  MAX=+ORARR ("DILIST", 0)
  15633   "RTN","PSJ CLOZ",285, 0)
  15634    .F I=1:1  Q:'$D(ORAR R("DILIST" ,2,I))  I  ORARR("DIL IST",2,I)= PSORD1 Q
  15635   "RTN","PSJ CLOZ",286, 0)
  15636    .S:I=MAX  PSORD1=0 Q
  15637   "RTN","PSJ CLOZ",287, 0)
  15638    Q 1
  15639   "RTN","PSJ CLOZ",288, 0)
  15640    ;
  15641   "RTN","PSJ CLOZ",289, 0)
  15642   ISCLOZ(PSG ORD,ORPSOI ,DFN,PSGOR DNM,PSGDRG ) ; Define  a clozapi ne order a nd associa ted drug
  15643   "RTN","PSJ CLOZ",290, 0)
  15644    ; PSGORD    - Pendin g Order nu mber (file  53.1)
  15645   "RTN","PSJ CLOZ",291, 0)
  15646    ; ORPSOI    - ID con taining Ph armacy Ord erable Ite m number ( file 50.7)
  15647   "RTN","PSJ CLOZ",292, 0)
  15648    ; DFN       - Patien t ID (file  2)
  15649   "RTN","PSJ CLOZ",293, 0)
  15650    ; PSGORDN M - Pharma cy order n umber (fil e 55)
  15651   "RTN","PSJ CLOZ",294, 0)
  15652    ; PSGDRG    - Drug C ode
  15653   "RTN","PSJ CLOZ",295, 0)
  15654    N ISCLOZ  S ISCLOZ=0
  15655   "RTN","PSJ CLOZ",296, 0)
  15656    I $G(PSGO RD) D  Q I SCLOZ
  15657   "RTN","PSJ CLOZ",297, 0)
  15658    .I '$$GET 1^DIQ(53.1 ,PSGORD,.0 1,"I") Q
  15659   "RTN","PSJ CLOZ",298, 0)
  15660    .N PSGDRG  S PSGDRG= $$GET1^DIQ (53.11,"1, "_+PSGORD, .01,"I") I  PSGDRG D   Q
  15661   "RTN","PSJ CLOZ",299, 0)
  15662    ..I $$GET 1^DIQ(50,P SGDRG,17.5 )="PSOCLO1 " S ISCLOZ =1_U_PSGDR G
  15663   "RTN","PSJ CLOZ",300, 0)
  15664    .N ORPSOI  S ORPSOI= $$GET1^DIQ (53.1,+PSG ORD,108,"I ") I 'ORPS OI Q
  15665   "RTN","PSJ CLOZ",301, 0)
  15666    .D CLOZPS OI(+ORPSOI )
  15667   "RTN","PSJ CLOZ",302, 0)
  15668    I $G(ORPS OI) D CLOZ PSOI(+ORPS OI) Q ISCL OZ
  15669   "RTN","PSJ CLOZ",303, 0)
  15670    I $G(DFN) ,$G(PSGORD NM) D  Q I SCLOZ
  15671   "RTN","PSJ CLOZ",304, 0)
  15672    .N PSGDRG  S PSGDRG= $$GET1^DIQ (55.07,"1, "_+PSGORDN M_","_DFN, .01,"I") I  PSGDRG D   Q
  15673   "RTN","PSJ CLOZ",305, 0)
  15674    ..I $$GET 1^DIQ(50,P SGDRG,17.5 )="PSOCLO1 " S ISCLOZ =1_U_PSGDR G
  15675   "RTN","PSJ CLOZ",306, 0)
  15676    .N ORPSOI  S ORPSOI= $$GET1^DIQ (55.06,+PS GORDNM_"," _DFN,108," I") I 'ORP SOI Q
  15677   "RTN","PSJ CLOZ",307, 0)
  15678    .D CLOZPS OI(+ORPSOI )
  15679   "RTN","PSJ CLOZ",308, 0)
  15680    I $G(PSGD RG) D  Q I SCLOZ
  15681   "RTN","PSJ CLOZ",309, 0)
  15682    .I $$GET1 ^DIQ(50,PS GDRG,17.5) ="PSOCLO1"  S ISCLOZ= 1_U_PSGDRG
  15683   "RTN","PSJ CLOZ",310, 0)
  15684    Q ISCLOZ
  15685   "RTN","PSJ CLOZ",311, 0)
  15686    ;
  15687   "RTN","PSJ CLOZ",312, 0)
  15688   CLOZPSOI(O RPSOI) ; D efine a cl ozapine or der based  on Pharmac y Orderabl e item
  15689   "RTN","PSJ CLOZ",313, 0)
  15690    N ARR,PSG DRG D FIND ^DIC(50,,. 01,"Q",ORP SOI,,"ASP" ,,,"ARR")
  15691   "RTN","PSJ CLOZ",314, 0)
  15692    N I F I=2 :1 Q:'$D(A RR("DILIST ",2,I))  S  PSGDRG=+$ G(ARR("DIL IST",2,I))  D  Q:ISCL OZ
  15693   "RTN","PSJ CLOZ",315, 0)
  15694    .I $$GET1 ^DIQ(50,PS GDRG,17.5) ="PSOCLO1"  S ISCLOZ= 1_U_PSGDRG
  15695   "RTN","PSJ CLOZ",316, 0)
  15696    Q
  15697   "RTN","PSJ COM")
  15698   0^18^B4790 1552
  15699   "RTN","PSJ COM",1,0)
  15700   PSJCOM ;BI R/CML3-FIN ISH COMPLE X UNIT DOS E ORDERS E NTERED THR OUGH OE/RR  ;Jul 26,  2017@18:04 :02
  15701   "RTN","PSJ COM",2,0)
  15702    ;;5.0;INP ATIENT MED ICATIONS;* *110,186,2 67,281,315 ,338,327** ;16 DEC 97 ;Build 64
  15703   "RTN","PSJ COM",3,0)
  15704    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  15705   "RTN","PSJ COM",4,0)
  15706    ; Referen ce to ^VAL M1 is supp orted by D BIA 10116.
  15707   "RTN","PSJ COM",5,0)
  15708    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191.
  15709   "RTN","PSJ COM",6,0)
  15710    ; Referen ce to ^%DT C is suppo rted by DB IA 10000.
  15711   "RTN","PSJ COM",7,0)
  15712    ; Referen ce to ^%RC R is suppo rted by DB IA 10022.
  15713   "RTN","PSJ COM",8,0)
  15714    ; Referen ce to ^DIR  is suppor ted by DBI A 10026.
  15715   "RTN","PSJ COM",9,0)
  15716    ; Referen ce to ^TIU EDIT is su pported by  DBIA 2410 .
  15717   "RTN","PSJ COM",10,0)
  15718    ; Referen ce to ^TMP ("PSODAOC" ,$J suppor ted by DBI A 6071.
  15719   "RTN","PSJ COM",11,0)
  15720    ;
  15721   "RTN","PSJ COM",12,0)
  15722   UPD ;
  15723   "RTN","PSJ COM",13,0)
  15724    Q:'PSJCOM
  15725   "RTN","PSJ COM",14,0)
  15726    M ^TMP("P SJCOM",$J, +PSGORD)=^ PS(53.1,+P SGORD)
  15727   "RTN","PSJ COM",15,0)
  15728    I PSGST=" ",(PSGSCH= "NOW"!(PSG SCH="ONCE" )) S PSGST ="O"
  15729   "RTN","PSJ COM",16,0)
  15730    S $P(^TMP ("PSJCOM", $J,+PSGORD ,0),"^",9) ="N",$P(^( 0),"^",4)= "U",$P(^(0 ),"^",7)=P SGST,$P(^T MP("PSJCOM ",$J,+PSGO RD,2),"^", 2)=PSGSD,$ P(^(2),"^" ,4)=PSGFD
  15731   "RTN","PSJ COM",17,0)
  15732    I $D(PSGS I),$P($G(^ PS(53.1,+P SGORD,0)), U,24)'="R"  S ^TMP("P SJCOM",$J, +PSGORD,6) =PSGSI
  15733   "RTN","PSJ COM",18,0)
  15734    I $D(PSGS I),$P($G(^ PS(53.1,+P SGORD,0)), U,24)="R"  S $P(^TMP( "PSJCOM",$ J,+PSGORD, 6),U)=$P(P SGSI,U) I  $P(PSGSI,U )="" S $P( ^TMP("PSJC OM",$J,+PS GORD,6),U, 2)=""
  15735   "RTN","PSJ COM",19,0)
  15736    S:$D(PSGS CH) $P(^TM P("PSJCOM" ,$J,+PSGOR D,2),"^")= PSGSCH
  15737   "RTN","PSJ COM",20,0)
  15738    I PSGSM,P SGOHSM'=PS GHSM S $P( ^TMP("PSJC OM",$J,+PS GORD,0),"^ ",5)=PSGSM ,$P(^TMP(" PSJCOM",$J ,+PSGORD,0 ),"^",6)=P SGHSM
  15739   "RTN","PSJ COM",21,0)
  15740    W "."
  15741   "RTN","PSJ COM",22,0)
  15742    F Q=1,3 K  @(PSGOEEW F_Q_")") S  %X="^PS(5 3.45,"_PSJ SYSP_","_$ S(Q=1:2,1: 1)_",",%Y= PSGOEEWF_Q _"," K @(P SGOEEWF_Q_ ")") D %XY ^%RCR W ". "
  15743   "RTN","PSJ COM",23,0)
  15744    ; Above c ode added  to update  file 53.1.
  15745   "RTN","PSJ COM",24,0)
  15746    S PSGOEEW F="^TMP("" PSJCOM"",$ J,+PSGORD, "
  15747   "RTN","PSJ COM",25,0)
  15748    F Q=1,3 K  @(PSGOEEW F_Q_")") S  %X="^PS(5 3.45,"_PSJ SYSP_","_$ S(Q=1:2,1: 1)_",",%Y= PSGOEEWF_Q _"," K @(P SGOEEWF_Q_ ")") D %XY ^%RCR W ". "  ;MOU-01 00-30945
  15749   "RTN","PSJ COM",26,0)
  15750    S PSGND=$ G(^TMP("PS JCOM",$J,+ PSGORD,0)) ,X=$P(PSGN D,U,24)
  15751   "RTN","PSJ COM",27,0)
  15752    S PSJOWAL L=+$G(^PS( 55,PSGP,5. 1))
  15753   "RTN","PSJ COM",28,0)
  15754    I $S(X="R ":1,+$G(^P S(55,PSGP, 5.1))>PSGD T:0,1:X'=" E") S X=$G (^TMP("PSJ COM",$J,+P SGORD,2))  D ENWALL^P SGNE3(+$P( X,U,2),+$P (X,U,4),PS GP)
  15755   "RTN","PSJ COM",29,0)
  15756    S $P(^TMP ("PSJCOM", $J,+PSGORD ,.2),U,2)= PSGDO,$P(^ TMP("PSJCO M",$J,+PSG ORD,2),U,5 )=PSGAT S: $G(PSGS0XT ) $P(^(2), U,6)=PSGS0 XT
  15757   "RTN","PSJ COM",30,0)
  15758    S:PSGRF]" " ^TMP("PS JCOM",$J,+ PSGORD,2.1 )=$G(PSGDU R)_U_$G(PS GRMVT)_U_$ G(PSGRMV)_ U_$G(PSGRF ) K PSGDUR ,PSGRMVT,P SGRMV,PSGR F ;315
  15759   "RTN","PSJ COM",31,0)
  15760    I 'PSGOEA V D NEWNVA L(PSGORD,$ S(+PSJSYSU =3:22005,1 :22000))
  15761   "RTN","PSJ COM",32,0)
  15762    I $D(^PS( 53.45,DUZ, 5,1,0)) D  FILESI^PSJ BCMA5(PSGP ,PSGORD) N  SIARRAY S  SIARRAY=" " D NEWNVA L^PSGAL5(P SGORD,6000 ,"SPECIAL  INSTRUCTIO NS",,.SIAR RAY)
  15763   "RTN","PSJ COM",33,0)
  15764    I PSGOEAV ,+PSJSYSU= 3 D VFY Q
  15765   "RTN","PSJ COM",34,0)
  15766    I PSGOEAV ,$G(PSJRNF ) D VFY
  15767   "RTN","PSJ COM",35,0)
  15768    Q
  15769   "RTN","PSJ COM",36,0)
  15770   VFY ; chan ge status,  move to 5 5, and cha nge label  record
  15771   "RTN","PSJ COM",37,0)
  15772    Q:'PSJCOM
  15773   "RTN","PSJ COM",38,0)
  15774    S ^TMP("P SODAOC",$J ,"IP IEN") =PSGORD
  15775   "RTN","PSJ COM",39,0)
  15776    D SETOC^P SJNEWOC(PS GORD)
  15777   "RTN","PSJ COM",40,0)
  15778    I '$D(^TM P("PSJCOM" ,$J,+PSGOR D)) M ^TMP ("PSJCOM", $J,+PSGORD )=^PS(53.1 ,+PSGORD)
  15779   "RTN","PSJ COM",41,0)
  15780    NEW PSJDO SE,PSJDSFL G
  15781   "RTN","PSJ COM",42,0)
  15782    D DOSECHK ^PSJDOSE
  15783   "RTN","PSJ COM",43,0)
  15784    I +$G(PSJ DSFLG) D S ETVAR^PSJD OSE W !!,P SJDOSE("WA RN"),!,PSJ DOSE("WARN 1") I '$$C ONT() W !, "...order  was not ve rified..."  D PAUSE^V ALM1 D  Q: '$G(PSJACE PT)
  15785   "RTN","PSJ COM",44,0)
  15786    . S PSGOE EF(109)=1
  15787   "RTN","PSJ COM",45,0)
  15788    . S PSJAC EPT=0
  15789   "RTN","PSJ COM",46,0)
  15790    D DDCHK G :CHK DONE
  15791   "RTN","PSJ COM",47,0)
  15792    ;; START  NCC REMEDI ATION >> 3 27*RJS
  15793   "RTN","PSJ COM",48,0)
  15794    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(+P SGORD)
  15795   "RTN","PSJ COM",49,0)
  15796    I CLOZFLG ,'$G(^TMP( "PSJCOM",$ J,+PSGORD, "SAND")) D   G:CHK DO NE
  15797   "RTN","PSJ COM",50,0)
  15798    .S DIR(0) ="N^12.5:3 000:1",DIR ("A")="CLO ZAPINE dos age (mg/da y) ? " D ^ DIR K DIR  I $D(DIRUT ) S CHK=1  Q  ;G DONE :$G(CHK)
  15799   "RTN","PSJ COM",51,0)
  15800    .S (^TMP( "PSJCOM",$ J,+PSGORD, "SAND"),PS OSAND)=X
  15801   "RTN","PSJ COM",52,0)
  15802    ;; END NC C REMEDIAT ION >> 327 *RJS
  15803   "RTN","PSJ COM",53,0)
  15804    W !,"...a  few momen ts, please ..."
  15805   "RTN","PSJ COM",54,0)
  15806    I PSGORD[ "P" D
  15807   "RTN","PSJ COM",55,0)
  15808    . S PSGOR DP=PSGORD  ;Used in A CTLOG to u pdate acti vity log i n ^TMP
  15809   "RTN","PSJ COM",56,0)
  15810    . I '$D(^ TMP("PSJCO M2",$J,+PS GORD)) D   Q
  15811   "RTN","PSJ COM",57,0)
  15812    .. NEW PS GX S PSGX= $G(^TMP("P SJCOM",$J, +PSGORD,2. 5)),PSGRSD =$P(PSGX,U ),PSGRFD=$ P(PSGX,U,3 )
  15813   "RTN","PSJ COM",58,0)
  15814    .. S $P(^ TMP("PSJCO M",$J,+PSG ORD,0),"^" ,9)="A" W  "." ;D ^PS GOT
  15815   "RTN","PSJ COM",59,0)
  15816    .  NEW PS GX S PSGX= $G(^TMP("P SJCOM2",$J ,+PSGORD,2 .5)),PSGRS D=$P(PSGX, U),PSGRFD= $P(PSGX,U, 3)
  15817   "RTN","PSJ COM",60,0)
  15818    .  S $P(^ TMP("PSJCO M2",$J,+PS GORD,0),"^ ",9)="A" W  "." ;D ^P SGOT
  15819   "RTN","PSJ COM",61,0)
  15820    D NEWNVAL (+PSGORD,( PSJSYSU*10 +22000)) W  "."
  15821   "RTN","PSJ COM",62,0)
  15822    S VND4=$S ('$D(^TMP( "PSJCOM2", $J,+PSGORD )):$G(^TMP ("PSJCOM", $J,+PSGORD ,4)),1:$G( ^TMP("PSJC OM2",$J,+P SGORD,4)))
  15823   "RTN","PSJ COM",63,0)
  15824    I $G(PSGR SD) D
  15825   "RTN","PSJ COM",64,0)
  15826    . S PSGRS D=$$ENDTC^ PSGMI(PSGR SD) D NEWN VAL(PSGORD ,6090,"Req uested Sta rt Date",P SGRSD)
  15827   "RTN","PSJ COM",65,0)
  15828    . S PSGRF D=$$ENDTC^ PSGMI(PSGR FD) D NEWN VAL(PSGORD ,6090,"Req uested Sto p Date",PS GRFD)
  15829   "RTN","PSJ COM",66,0)
  15830    N DUR,DUR ORD S DURO N=$S($G(ON )&($G(PSGO RD)["U"):O N,$G(PSGOR D):PSGORD, 1:"") Q:'D URON  D
  15831   "RTN","PSJ COM",67,0)
  15832    . S DUR=$ S($P($G(PS GRDTX),U,2 )]"":$P($G (PSGRDTX), U,2),1:$$G ETDUR^PSJL IVMD(PSGP, +DURON,$S( $G(DURON)[ "P":"P",$G (DURON)["V ":"IV",1:5 ),1),1:"")
  15833   "RTN","PSJ COM",68,0)
  15834    I DUR]""  S $P(^TMP( "PSJCOM2", $J,+PSGORD ,2.5),"^", 2)=DUR
  15835   "RTN","PSJ COM",69,0)
  15836    ;D:$D(PSG ORDP) ACTL OG(PSGORDP ,PSGP,PSGO RD)
  15837   "RTN","PSJ COM",70,0)
  15838    K PSGRSD, PSGRFD,PSG ALFN
  15839   "RTN","PSJ COM",71,0)
  15840    NEW X S X =0 I $G(PS GONF),(+$G (PSGODDD(1 ))'<+$G(PS GONF)) S X =1
  15841   "RTN","PSJ COM",72,0)
  15842    I +PSJSYS U=3,PSGORD '["O",$S(X :0,'$P(VND 4,"^",16): 1,1:$P(VND 4,"^",15))  ;D EN^PSG PEN(+PSGOR D)
  15843   "RTN","PSJ COM",73,0)
  15844    S:'$P(VND 4,U,+PSJSY SU=3+9) $P (VND4,U,+P SJSYSU=3+9 )=+$P(VND4 ,U,+PSJSYS U=3+9)
  15845   "RTN","PSJ COM",74,0)
  15846    S:$P(VND4 ,"^",15)&' $P(VND4,"^ ",16) $P(V ND4,"^",15 )="" S:$P( VND4,"^",1 8)&'$P(VND 4,"^",19)  $P(VND4,"^ ",18)="" S :$P(VND4," ^",22)&'$P (VND4,"^", 23) $P(VND 4,"^",22)= ""
  15847   "RTN","PSJ COM",75,0)
  15848    S $P(VND4 ,"^",PSJSY SU,PSJSYSU +1)=DUZ_"^ "_PSGDT
  15849   "RTN","PSJ COM",76,0)
  15850    S:'$D(^TM P("PSJCOM2 ",$J,+PSGO RD)) ^TMP( "PSJCOM",$ J,+PSGORD, 4)=VND4 S: $D(^TMP("P SJCOM2",$J ,+PSGORD))  ^TMP("PSJ COM2",$J,+ PSGORD,4)= VND4
  15851   "RTN","PSJ COM",77,0)
  15852    W:'$D(PSJ SPEED) ! W  !,"ORDER  VERIFIED." ,!
  15853   "RTN","PSJ COM",78,0)
  15854    I CLOZFLG ,$L($G(ANQ DATA)) S ^ TMP("PSJCO M",$J,+PSG ORD,"ANQDA TA")=ANQDA TA
  15855   "RTN","PSJ COM",79,0)
  15856    I '$D(PSJ SPEED) K D IR S DIR(0 )="E" D ^D IR K DIR
  15857   "RTN","PSJ COM",80,0)
  15858    S VALMBCK ="Q"
  15859   "RTN","PSJ COM",81,0)
  15860    S ^TMP("P SJCOM",$J) ="A" S:$D( ^TMP("PSJC OM2",$J,+P SGORD)) ^T MP("PSJCOM 2",$J)="A"
  15861   "RTN","PSJ COM",82,0)
  15862    ;
  15863   "RTN","PSJ COM",83,0)
  15864   DONE ;
  15865   "RTN","PSJ COM",84,0)
  15866    W:CHK !!, "...order  NOT verifi ed..."
  15867   "RTN","PSJ COM",85,0)
  15868    I '$D(PSJ SPEED),'CH K,+PSJSYSU =3,$G(PSJP RI)="D" D
  15869   "RTN","PSJ COM",86,0)
  15870    .N DIR W  ! S DIR(0) ="S^Y:Yes; N:No",DIR( "A")="Do y ou want to  enter a P rogress No te",DIR("B ")="No" D  ^DIR
  15871   "RTN","PSJ COM",87,0)
  15872    .Q:Y="N"
  15873   "RTN","PSJ COM",88,0)
  15874    .D MAIN^T IUEDIT(3,. TIUDA,PSGP ,"","","", "",1)
  15875   "RTN","PSJ COM",89,0)
  15876    S VALMBCK ="Q" K CHK ,DA,DIE,F, DP,DR,ND,P SGAL,PSGOD A,PSJDOSE, PSJVAR,VND 4,X,%X,%Y, Q,QQ Q
  15877   "RTN","PSJ COM",90,0)
  15878    ;
  15879   "RTN","PSJ COM",91,0)
  15880   DDCHK ; di spense dru g check
  15881   "RTN","PSJ COM",92,0)
  15882    S DRGF=$S ('$D(^TMP( "PSJCOM2", $J,+PSGORD )):"^TMP(" "PSJCOM"", "_$J_","_+ PSGORD_"," ,1:"^TMP(" "PSJCOM2"" ,"_$J_","_ +PSGORD_", "),CHK=$S( '$O(@(DRGF _"1,0)")): 7,1:0)
  15883   "RTN","PSJ COM",93,0)
  15884    S PSGPD=$ G(@(DRGF_" .2)"))
  15885   "RTN","PSJ COM",94,0)
  15886    S CHK=$S( '$$DDOK^PS GOE2(DRGF_ "1,",PSGPD ):7,1:0)
  15887   "RTN","PSJ COM",95,0)
  15888    Q:CHK=0
  15889   "RTN","PSJ COM",96,0)
  15890    W $C(7),! !,"This or der must h ave at lea st one val id, active  dispense  drug to be  verified. "
  15891   "RTN","PSJ COM",97,0)
  15892    ;
  15893   "RTN","PSJ COM",98,0)
  15894   CONT() ;
  15895   "RTN","PSJ COM",99,0)
  15896    NEW DIR,D IRUT,Y
  15897   "RTN","PSJ COM",100,0 )
  15898    W ! K DIR ,DIRUT
  15899   "RTN","PSJ COM",101,0 )
  15900    S DIR(0)= "Y",DIR("A ")="Would  you like t o continue  verifying  the order ",DIR("B") ="No"
  15901   "RTN","PSJ COM",102,0 )
  15902    D ^DIR
  15903   "RTN","PSJ COM",103,0 )
  15904    Q Y
  15905   "RTN","PSJ COM",104,0 )
  15906    ;
  15907   "RTN","PSJ COM",105,0 )
  15908   NEWNVAL(PS GALORD,PSG ALC,PSGFLD ,PSGOLD)   ;
  15909   "RTN","PSJ COM",106,0 )
  15910    ;
  15911   "RTN","PSJ COM",107,0 )
  15912    ;Where  P SGALORD =  PSGORD (Re quired)
  15913   "RTN","PSJ COM",108,0 )
  15914    ;       P SGALC   =  ACTIVITY C ODE FROM # 53.3 (Requ ired)
  15915   "RTN","PSJ COM",109,0 )
  15916    ;       P SGFLD   =  FIELD THAT  CHANGED ( Free text,  optional)
  15917   "RTN","PSJ COM",110,0 )
  15918    ;       P SGOLD   =  THE FIELDS  OLD DATA  VALUE (Fre e text, op tional)
  15919   "RTN","PSJ COM",111,0 )
  15920    ;
  15921   "RTN","PSJ COM",112,0 )
  15922    ;N PSGALO RD,PSGALC, PSGFLD,PSG OLD
  15923   "RTN","PSJ COM",113,0 )
  15924    ;
  15925   "RTN","PSJ COM",114,0 )
  15926    ; Create  0 node act ivity log  for order  if none ex ists, and  get next e ntry numbe r
  15927   "RTN","PSJ COM",115,0 )
  15928    I '$D(^TM P("PSJCOM2 ",$J,+PSGA LORD)) D   Q
  15929   "RTN","PSJ COM",116,0 )
  15930    . S QQ=$G (^TMP("PSJ COM",$J,+P SGALORD,"A ",0)) S:QQ ="" QQ="^5 3.1119D" F  Q=$P(QQ," ^",3)+1:1  I '$D(^(Q) ) S $P(QQ, "^",3,4)=Q _"^"_Q,^(0 )=QQ,PSGAL ("N")=Q Q
  15931   "RTN","PSJ COM",117,0 )
  15932    . ;Set up  data to b e held in  activity l og record
  15933   "RTN","PSJ COM",118,0 )
  15934    . D NOW^% DTC S PSGD T=+$E(%,1, 12)
  15935   "RTN","PSJ COM",119,0 )
  15936    . I $L($G (PSGOLD))> 170 S PSGO LD=$E(PSGO LD,1,167)_ "..." ; Us e of ... i ndicates o ld data fi eld was gr eater than  170 chara cters
  15937   "RTN","PSJ COM",120,0 )
  15938    . S Q=%_" ^"_$S(PSGA LC=6010:"A UTO CANCEL ",$D(DUZ)[ 0:"UNKNOWN ",DUZ]"":D UZ,1:"UNKN OWN")_"^"_ PSGALC_"^" _$S($D(PSG FLD):PSGFL D,1:"")_"^ "_$S($D(PS GOLD):PSGO LD,1:"")
  15939   "RTN","PSJ COM",121,0 )
  15940    . ; Creat e activity  log entry
  15941   "RTN","PSJ COM",122,0 )
  15942    . S ^TMP( "PSJCOM",$ J,+PSGALOR D,"A",PSGA L("N"),0)= Q
  15943   "RTN","PSJ COM",123,0 )
  15944    S QQ=$G(^ TMP("PSJCO M2",$J,+PS GALORD,"A" ,0)) S:QQ= "" QQ="^53 .1119D" F  Q=$P(QQ,"^ ",3)+1:1 I  '$D(^(Q))  S $P(QQ," ^",3,4)=Q_ "^"_Q,^(0) =QQ,PSGAL( "N")=Q Q
  15945   "RTN","PSJ COM",124,0 )
  15946    ;Set up d ata to be  held in ac tivity log  record
  15947   "RTN","PSJ COM",125,0 )
  15948    D NOW^%DT C S PSGDT= +$E(%,1,12 )
  15949   "RTN","PSJ COM",126,0 )
  15950    I $L($G(P SGOLD))>17 0 S PSGOLD =$E(PSGOLD ,1,167)_". .." ; Use  of ... ind icates old  data fiel d was grea ter than 1 70 charact ers
  15951   "RTN","PSJ COM",127,0 )
  15952    S Q=%_"^" _$S(PSGALC =6010:"AUT O CANCEL", $D(DUZ)[0: "UNKNOWN", DUZ]"":DUZ ,1:"UNKNOW N")_"^"_PS GALC_"^"_$ S($D(PSGFL D):PSGFLD, 1:"")_"^"_ $S($D(PSGO LD):PSGOLD ,1:"")
  15953   "RTN","PSJ COM",128,0 )
  15954    ; Create  activity l og entry
  15955   "RTN","PSJ COM",129,0 )
  15956    S ^TMP("P SJCOM2",$J ,+PSGALORD ,"A",PSGAL ("N"),0)=Q
  15957   "RTN","PSJ COM",130,0 )
  15958    Q
  15959   "RTN","PSJ COM1")
  15960   0^31^B5504 1838
  15961   "RTN","PSJ COM1",1,0)
  15962   PSJCOM1 ;B IR/CML3-DI SPLAY COMP LEX ORDERS  FOR DISCO NTINUE ;Ju l 26, 2017 @18:04:02
  15963   "RTN","PSJ COM1",2,0)
  15964    ;;5.0;INP ATIENT MED ICATIONS;* *110,127,2 81,315,327 **;16 DEC  97;Build 6 4
  15965   "RTN","PSJ COM1",3,0)
  15966    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  15967   "RTN","PSJ COM1",4,0)
  15968    ; Referen ce to ^VAL M1 is supp orted by D BIA 10116.
  15969   "RTN","PSJ COM1",5,0)
  15970    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191.
  15971   "RTN","PSJ COM1",6,0)
  15972    ; Referen ce to ^%DT C is suppo rted by DB IA 10000.
  15973   "RTN","PSJ COM1",7,0)
  15974    ; Referen ce to ^PS( 51.2 is su pported by  DBIA 2178 .
  15975   "RTN","PSJ COM1",8,0)
  15976    ; Referen ce to ^DIE  is suppor ted by DBI A 10018.
  15977   "RTN","PSJ COM1",9,0)
  15978    ; Referen ce to ^DIR  is suppor ted by DBI A 10026.
  15979   "RTN","PSJ COM1",10,0 )
  15980    ; Referen ce to ^TMP ("PSODAOC" ,$J suppor ted by DBI A 6071
  15981   "RTN","PSJ COM1",11,0 )
  15982    ;
  15983   "RTN","PSJ COM1",12,0 )
  15984   CMPLX(PSGP ,ON,PSGORD ) ;
  15985   "RTN","PSJ COM1",13,0 )
  15986    D PAUSE K  PSJCM
  15987   "RTN","PSJ COM1",14,0 )
  15988    N PSJLINE ,PSX,PSCM
  15989   "RTN","PSJ COM1",15,0 )
  15990    S PSJLINE =1
  15991   "RTN","PSJ COM1",16,0 )
  15992    I PSGORD[ "P" N PSJO  S PSJO=0  F  S PSJO= $O(^PS(53. 1,"ACX",ON ,PSJO)) Q: 'PSJO  D
  15993   "RTN","PSJ COM1",17,0 )
  15994    .Q:PSJO=+ PSGORD  S  PSJOO=PSGO RD D DSPLO RDU(PSGP,P SJO_"P") S  PSJCM(PSJ O_"P",PSJL INE)="",PS JLINE=PSJL INE+1
  15995   "RTN","PSJ COM1",18,0 )
  15996    I PSGORD' ["P" N PSJ O,PSJOO S  PSJOO="",P SJO=0 F  S  PSJO=$O(^ PS(55,"ACX ",ON,PSJO) ) Q:'PSJO   F  S PSJO O=$O(^PS(5 5,"ACX",ON ,PSJO,PSJO O)) Q:PSJO O=""  D
  15997   "RTN","PSJ COM1",19,0 )
  15998    .Q:PSJOO= PSGORD  D: PSJOO["U"  DSPLORDU(P SGP,PSJOO)  D:PSJOO[" V" DSPLORD V(PSGP,PSJ OO) S PSJC M(PSJOO,PS JLINE)="", PSJLINE=PS JLINE+1
  15999   "RTN","PSJ COM1",20,0 )
  16000    N ON S ON ="" F  S O N=$O(PSJCM (ON)) Q:ON =""  D
  16001   "RTN","PSJ COM1",21,0 )
  16002    .W ! F PS X=0:0 S PS X=$O(PSJCM (ON,PSX))  Q:'PSX  D
  16003   "RTN","PSJ COM1",22,0 )
  16004    ..W !,PSJ CM(ON,PSX)  D:'(PSX#6 ) PAUSE
  16005   "RTN","PSJ COM1",23,0 )
  16006    W !
  16007   "RTN","PSJ COM1",24,0 )
  16008    Q
  16009   "RTN","PSJ COM1",25,0 )
  16010    ;
  16011   "RTN","PSJ COM1",26,0 )
  16012   CMPLX2(PSG P,ON,PSGOR D) ;
  16013   "RTN","PSJ COM1",27,0 )
  16014    Q:$G(PSGO RD)'["U"
  16015   "RTN","PSJ COM1",28,0 )
  16016    ;; START  NCC REMEDI ATION >> 3 27*RJS
  16017   "RTN","PSJ COM1",29,0 )
  16018    N CLOZFLG  I PSGORD[ "U" S CLOZ FLG=$$ISCL OZ^PSJCLOZ (,,PSGP,+P SGORD) I 1
  16019   "RTN","PSJ COM1",30,0 )
  16020    E  S CLOZ FLG=$$ISCL OZ^PSJCLOZ (+PSGORD)
  16021   "RTN","PSJ COM1",31,0 )
  16022    I CLOZFLG  D
  16023   "RTN","PSJ COM1",32,0 )
  16024    .N PSGDN  S PSGDN=$P (CLOZFLG,U ,2)
  16025   "RTN","PSJ COM1",33,0 )
  16026    .D PSJFIL E^PSJCLOZ( PSGP),INPS ND^YSCLTST 5 K:$D(^TM P($J,"CLOZ FLG",PSGP) ) ^TMP($J, "CLOZFLG", PSGP)
  16027   "RTN","PSJ COM1",34,0 )
  16028    ;; END NC C REMEDIAT ION >> 327 *RJS
  16029   "RTN","PSJ COM1",35,0 )
  16030    N PSJLINE  S PSJLINE =0
  16031   "RTN","PSJ COM1",36,0 )
  16032    D FULL^VA LM1
  16033   "RTN","PSJ COM1",37,0 )
  16034    D DSPLORD U(PSGP,PSG ORD)
  16035   "RTN","PSJ COM1",38,0 )
  16036    W ! S PSJ LINE="" F   S PSJLINE =$O(PSJCM( PSGORD,PSJ LINE)) Q:P SJLINE=""   W !,PSJCM (PSGORD,PS JLINE) D:' ((PSJLINE+ 1)#6) PAUS E
  16037   "RTN","PSJ COM1",39,0 )
  16038    D EN^PSGP EN(PSGORD)
  16039   "RTN","PSJ COM1",40,0 )
  16040    S ^TMP("P SODAOC",$J ,"IP IEN") =PSJO_"P", ^TMP("PSOD AOC",$J,"I P NEW IEN" )=PSGORD
  16041   "RTN","PSJ COM1",41,0 )
  16042    D SETOC^P SJNEWOC(PS GORD)
  16043   "RTN","PSJ COM1",42,0 )
  16044    W !
  16045   "RTN","PSJ COM1",43,0 )
  16046    Q
  16047   "RTN","PSJ COM1",44,0 )
  16048    ;
  16049   "RTN","PSJ COM1",45,0 )
  16050   UPDATE ; R efresh arr ay, action s, & displ ay.
  16051   "RTN","PSJ COM1",46,0 )
  16052    D GETUD^P SJLMGUD(DF N,ON),INIT ^PSJLMUDE( DFN,ON) S  VALMBCK="R "
  16053   "RTN","PSJ COM1",47,0 )
  16054    Q
  16055   "RTN","PSJ COM1",48,0 )
  16056   HOLDHDR ;  Freeze hea der text w hile proce ssing orde r actions
  16057   "RTN","PSJ COM1",49,0 )
  16058    I $D(VALM ("TM")) S  IOTM=VALM( "TM"),IOBM =IOSL W IO SC W @IOST BM W IORC
  16059   "RTN","PSJ COM1",50,0 )
  16060    Q
  16061   "RTN","PSJ COM1",51,0 )
  16062    ;
  16063   "RTN","PSJ COM1",52,0 )
  16064   DSPLORDU(P SGP,ON)    ; Display  UD order f or order c heck as in  the Inpat  Profile.
  16065   "RTN","PSJ COM1",53,0 )
  16066    NEW DRUGN AME,F,NODE 0,NODE2,PS JID,PSJX,S CH,SD,STAT ,X,Y K PSJ CM
  16067   "RTN","PSJ COM1",54,0 )
  16068    S F=$S(ON ["U":"^PS( 55,PSGP,5, "_+ON_",", 1:"^PS(53. 1,"_+ON_", ")
  16069   "RTN","PSJ COM1",55,0 )
  16070    S NODE0=$ G(@(F_"0)" )),NODE2=$ G(@(F_"2)" ))
  16071   "RTN","PSJ COM1",56,0 )
  16072    D DRGDISP ^PSJLMUT1( PSGP,ON,39 ,54,.DRUGN AME,0)
  16073   "RTN","PSJ COM1",57,0 )
  16074    I ON["P", $P(NODE0,U ,4)="F" D  DSPLORDV(P SGP,ON) Q
  16075   "RTN","PSJ COM1",58,0 )
  16076    S SCH=$P( NODE0,U,7)
  16077   "RTN","PSJ COM1",59,0 )
  16078    S STAT=$P (NODE0,U,9 )
  16079   "RTN","PSJ COM1",60,0 )
  16080    D NOW^%DT C I "A"[ST AT I $P(NO DE2,U,4)<%  D EXPIRE  S STAT="E"
  16081   "RTN","PSJ COM1",61,0 )
  16082    I STAT="A ",$P(NODE0 ,U,27)="R"  S STAT="R "
  16083   "RTN","PSJ COM1",62,0 )
  16084    I STAT'=" P" S PSJID =$E($$ENDT C^PSGMI($P (NODE2,U,2 )),1,5),SD =$E($$ENDT C^PSGMI($P (NODE2,U,4 )),1,5)
  16085   "RTN","PSJ COM1",63,0 )
  16086    I STAT="P " S (PSJID ,SD)="**** *",SCH="?"
  16087   "RTN","PSJ COM1",64,0 )
  16088    I $G(PSGP DN)["CLOZ"  N PSGORD  S PSGORD=+ $G(NODE0), PSSD="" D  DISPCMP^PS JCLOZ(PSGO RD,.PSSD)  I $G(PSSD)  S SD=$E($ $ENDTC^PSG MI(PSSD),1 ,5) K PSSD
  16089   "RTN","PSJ COM1",65,0 )
  16090    F PSJX=0: 0 S PSJX=$ O(DRUGNAME (PSJX)) Q: 'PSJX  D
  16091   "RTN","PSJ COM1",66,0 )
  16092    . S:PSJX= 1 X=SCH_"   "_PSJID_"   "_SD_"   "_$E(STAT, 1)
  16093   "RTN","PSJ COM1",67,0 )
  16094    . S:PSJX= 1 DRUGNAME (1)=$$SETS TR^VALM1(X ,$E(DRUGNA ME(1),1,40 ),42,20)
  16095   "RTN","PSJ COM1",68,0 )
  16096    . S PSJCM (ON,PSJLIN E)="         "_DRUGNA ME(PSJX)
  16097   "RTN","PSJ COM1",69,0 )
  16098    . S PSJLI NE=PSJLINE +1
  16099   "RTN","PSJ COM1",70,0 )
  16100    Q
  16101   "RTN","PSJ COM1",71,0 )
  16102   DSPLORDV(D FN,ON)   ;  Display I V order fo r order ch eck as in  the Inpat  Profile.
  16103   "RTN","PSJ COM1",72,0 )
  16104    N DRG,DRG I,DRGT,DRG X,FIL,ND,O N55,P,PSJI VFLG,PSJOR IFN,TYP,X, Y
  16105   "RTN","PSJ COM1",73,0 )
  16106    S TYP="?"  I ON["V"  D
  16107   "RTN","PSJ COM1",74,0 )
  16108    .S Y=$G(^ PS(55,DFN, "IV",+ON,0 )) F X=2,3 ,4,5,8,9,1 7,23 S P(X )=$P(Y,U,X )
  16109   "RTN","PSJ COM1",75,0 )
  16110    .D NOW^%D TC I "A"[P (17) I P(3 )<% D EXPI RE S P(17) ="E"
  16111   "RTN","PSJ COM1",76,0 )
  16112    .S TYP=$$ ONE^PSJBCM A(DFN,ON,P (9),P(2),P (3)) I TYP '="O" S TY P="C"
  16113   "RTN","PSJ COM1",77,0 )
  16114    .S ON55=O N,P("OT")= $S(P(4)="A ":"F",P(4) ="H":"H",1 :"I") D GT DRG^PSIVOR FB,GTOT^PS IVUTL(P(4) )
  16115   "RTN","PSJ COM1",78,0 )
  16116    S PSJCT=0 ,PSJL=""
  16117   "RTN","PSJ COM1",79,0 )
  16118    I ON'["V"  S (P(2),P (3))="",P( 17)=$P($G( ^PS(53.1,+ ON,0)),U,9 ),Y=$G(^(8 )),P(4)=$P (Y,U),P(8) =$P(Y,U,5) ,P(9)=$P($ G(^(2)),U)  D GTDRG^P SIVORFA,GT OT^PSIVUTL (P(4))
  16119   "RTN","PSJ COM1",80,0 )
  16120    S PSJIVFL G=1 D PIVA D,SOL
  16121   "RTN","PSJ COM1",81,0 )
  16122    Q
  16123   "RTN","PSJ COM1",82,0 )
  16124   SOL ;
  16125   "RTN","PSJ COM1",83,0 )
  16126    S PSJL=$S ($G(PSJIVF LG):PSJL,1 :"")_"         in"
  16127   "RTN","PSJ COM1",84,0 )
  16128    S DRG=0 F   S DRG=+$ O(DRG("SOL ",DRG)) Q: 'DRG  D NA ME^PSIVUTL (DRG("SOL" ,DRG),39,. NAME,0) S  DRGX=0 F   S DRGX=$O( NAME(DRGX) ) Q:'DRGX   S PSJL=$$ SETSTR^VAL M1(NAME(DR GX),PSJL,1 2,60) D:$G (PSJIVFLG)  PIV1 D SE TTMP S PSJ L="      "
  16129   "RTN","PSJ COM1",85,0 )
  16130    Q
  16131   "RTN","PSJ COM1",86,0 )
  16132   PIVAD ; Pr int IV Add itives.
  16133   "RTN","PSJ COM1",87,0 )
  16134    F DRG=0:0  S DRG=$O( DRG("AD",D RG)) Q:'DR G  D NAME^ PSIVUTL(DR G("AD",DRG ),39,.NAME ,1) F DRGX =0:0 S DRG X=$O(NAME( DRGX)) Q:' DRGX  S PS JL=$$SETST R^VALM1(NA ME(DRGX),P SJL,9,60)  D:$G(PSJIV FLG) PIV1  D SETTMP
  16135   "RTN","PSJ COM1",88,0 )
  16136    Q
  16137   "RTN","PSJ COM1",89,0 )
  16138    ;
  16139   "RTN","PSJ COM1",90,0 )
  16140   PIV1 ; Pri nt Sched t ype, start /stop date s, and sta tus.
  16141   "RTN","PSJ COM1",91,0 )
  16142    K PSJIVFL G
  16143   "RTN","PSJ COM1",92,0 )
  16144    F X=2,3 S  P(X)=$E($ $ENDTC^PSG MI(P(X)),1 ,$S($D(PSJ EXTP):8,1: 5))
  16145   "RTN","PSJ COM1",93,0 )
  16146    I '$D(PSJ EXTP) S PS JL=$$SETST R^VALM1(TY P,PSJL,50, 1),PSJL=$$ SETSTR^VAL M1(P(2),PS JL,53,7),P SJL=$$SETS TR^VALM1(P (3),PSJL,6 0,7),PSJL= $$SETSTR^V ALM1(P(17) ,PSJL,67,1 )
  16147   "RTN","PSJ COM1",94,0 )
  16148    E  S PSJL =$$SETSTR^ VALM1(TYP, PSJL,50,1) ,PSJL=$$SE TSTR^VALM1 (P(2),53,7 ),PSJL=$$S ETSTR^VALM 1(P(3),PSJ L,63,7),PS JL=$$SETST R^VALM1(P( 17),PSJL,7 3,1)
  16149   "RTN","PSJ COM1",95,0 )
  16150    Q
  16151   "RTN","PSJ COM1",96,0 )
  16152   SETTMP ;
  16153   "RTN","PSJ COM1",97,0 )
  16154    S PSJCM(O N,PSJLINE) =PSJL,PSJL INE=PSJLIN E+1
  16155   "RTN","PSJ COM1",98,0 )
  16156    Q
  16157   "RTN","PSJ COM1",99,0 )
  16158   PAUSE ;
  16159   "RTN","PSJ COM1",100, 0)
  16160    K DIR W !  S DIR(0)= "EA",DIR(" A")="Press  Return to  continue. .." D ^DIR  W !
  16161   "RTN","PSJ COM1",101, 0)
  16162    Q
  16163   "RTN","PSJ COM1",102, 0)
  16164   NEW ;
  16165   "RTN","PSJ COM1",103, 0)
  16166    Q:'PSJCOM
  16167   "RTN","PSJ COM1",104, 0)
  16168    Q:PSGORD' ["P"
  16169   "RTN","PSJ COM1",105, 0)
  16170    M ^TMP("P SJCOM",$J, +PSGORD)=^ PS(53.1,+P SGORD)
  16171   "RTN","PSJ COM1",106, 0)
  16172    S PSGS0Y= PSGAT,PSGN ESD=PSGSD, PSGNEFD=PS GFD,PSGOEP R=PSGPR,PS GPDRG=PSGP D,PSGPDRGN =PSGPDN,PS GOEE="E"
  16173   "RTN","PSJ COM1",107, 0)
  16174    S $P(^TMP ("PSJCOM", $J,+PSGORD ,0),"^",27 )="E",$P(^ (0),"^",9) ="DE"
  16175   "RTN","PSJ COM1",108, 0)
  16176    W:'$D(PSG OEE)&'$D(P SGOES) !!, "...transc ribing thi s ",$S($D( PSGOES):"" ,'PSGOEAV: "non-verif ied ",1:"a ctive ")," order..."  S PSGOETOF =1 S:PSGSM ="" PSGSM= 0
  16177   "RTN","PSJ COM1",109, 0)
  16178    ;I PSGPR' =PSGOEPR D :'$D(^PS(5 5,PSGP,0))  ENSET0^PS GNE3(PSGP)  S $P(^PS( 55,PSGP,5. 1),U,2)=PS GPR,PSGOEP R=PSGPR
  16179   "RTN","PSJ COM1",110, 0)
  16180    K ND4,DA  D NOW^%DTC  S PSGDT=+ $E(%,1,12) ,DA=+PSGOR D
  16181   "RTN","PSJ COM1",111, 0)
  16182    S PSJOWAL L=+$G(^PS( 55,PSGP,5. 1))
  16183   "RTN","PSJ COM1",112, 0)
  16184    I $D(^PS( 51.2,+PSGM R,0)),$P(^ (0),U,3)]" " S PSGMRN =$P(^(0),U ,3)
  16185   "RTN","PSJ COM1",113, 0)
  16186    I PSGS0XT ="D",'PSGS 0Y S PSGS0 Y=$E(PSGNE SD_"00011" ,9,12)
  16187   "RTN","PSJ COM1",114, 0)
  16188    S ND=DA_U _PSGPR_U_P SGMR_"^U^" _PSGSM_U_P SGHSM_U_PS GST_"^^"_$ S(PSGOEAV: "A",1:"N") _"^^^^^"_P SGDT_U_PSG P_U_PSGDT  S:PSGNEDFD  $P(ND,U,$ P(PSGNEDFD ,U)["L"+10 )=+PSGNEDF D
  16189   "RTN","PSJ COM1",115, 0)
  16190    S:$D(PSGO EE) $P(ND, U,24,25)=P SGOEE_U_PS GORD S:'PS GOEAV $P(N D,U,18)=DA  S ND2=PSG SCH_U_$S(+ PSGNESD=PS GNESD:+PSG NESD,1:"") _"^^"_+PSG NEFD_U_PSG S0Y_U_PSGS 0XT_"^^^^" _+PSJPWD
  16191   "RTN","PSJ COM1",116, 0)
  16192    S:$G(PSGR F)]"" ND2P 1=$G(PSGDU R)_U_$G(PS GRMVT)_U_$ G(PSGRMV)_ U_$G(PSGRF ) ;*315
  16193   "RTN","PSJ COM1",117, 0)
  16194    S $P(ND4, U,7)=DUZ I  PSGOEAV,P SJSYSU D
  16195   "RTN","PSJ COM1",118, 0)
  16196    .S $P(ND4 ,U,PSJSYSU ,PSJSYSU+1 )=DUZ_U_PS GDT,$P(ND4 ,U,+PSJSYS U=1+9)=1,$ P(ND4,U,+P SJSYSU=3+9 )=0
  16197   "RTN","PSJ COM1",119, 0)
  16198    .S $P(ND4 ,U,9,10)=+ $P(ND4,U,9 )_U_+$P(ND 4,U,10)
  16199   "RTN","PSJ COM1",120, 0)
  16200    S F="^TMP (""PSJCOM2 "","_$J_", "_DA_",",@ (F_"0)")=N D
  16201   "RTN","PSJ COM1",121, 0)
  16202    ; Naked r eferences  below refe rs to full  reference  in F whic h is ^TMP( "PSJCOM2", $J,DA,
  16203   "RTN","PSJ COM1",122, 0)
  16204    S @(F_".2 )")=PSGPDR G_U_PSGDO_ U_PSJNOO S :$G(PSJDOS E("DO"))]" " $P(^(.2) ,U,5,6)=$P (PSJDOSE(" DO"),U,1,2 ) S:PSJCOM ]"" $P(^(. 2),"^",8)= PSJCOM
  16205   "RTN","PSJ COM1",123, 0)
  16206    I '$D(PSJ DOSE("DO") ),$D(PSGOR D) S $P(@( F_".2)"),U ,5,6)=$P(@ ("^PS("_$S (PSGORD["U ":"55,"_PS GP_",5",1: 53.1)_","_ +PSGORD_", .2)"),U,5, 6)
  16207   "RTN","PSJ COM1",124, 0)
  16208    ; Naked r eferences  below refe rs to full  reference  in F whic h is ^TMP( "PSJCOM2", $J,DA,
  16209   "RTN","PSJ COM1",125, 0)
  16210    S @(F_"2) ")=$P(ND2, "^",1,6),^ (4)=ND4 S: PSGSI]"" ^ (6)=PSGSI
  16211   "RTN","PSJ COM1",126, 0)
  16212    S @(F_"2. 1)")=ND2P1  ;*315
  16213   "RTN","PSJ COM1",127, 0)
  16214    ; Naked r eferences  below refe rs to full  reference  in F whic h is ^TMP( "PSJCOM2", $J,DA,
  16215   "RTN","PSJ COM1",128, 0)
  16216    S (C,X)=0  F  S X=$O (^PS(53.45 ,PSJSYSP,2 ,X)) Q:'X   S D=$G(^( X,0)) I D, $S('$P(D,U ,3):1,1:$P (D,U,3)>DT ) S C=C+1, @(F_"1,"_C _",0)")=$P (D,U,1,2), @(F_"1,""B "","_+D_", "_C_")")=" "
  16217   "RTN","PSJ COM1",129, 0)
  16218    S:C @(F_" 1,0)")=U_$ S(PSGOEAV: 55.07,1:53 .11)_"P^"_ C_U_C
  16219   "RTN","PSJ COM1",130, 0)
  16220    ; Naked r eferences  below refe rs to full  reference  in F whic h is ^TMP( "PSJCOM2", $J,DA,
  16221   "RTN","PSJ COM1",131, 0)
  16222    S (C,Q)=0  F  S Q=$O (^PS(53.45 ,PSJSYSP,1 ,Q)) Q:'Q   S X=$G(^( Q,0)) S:X] "" C=C+1,@ (F_"3,"_C_ ",0)")=X
  16223   "RTN","PSJ COM1",132, 0)
  16224    S:C @(F_" 3,0)")=U_$ S(PSGOEAV: 55.08,1:53 .12)_U_C_U _C
  16225   "RTN","PSJ COM1",133, 0)
  16226    S:C @(F_" 12,0)")=U_ $S(PSGOEAV :55.0612,1 :53.1012)_ U_C_U_C
  16227   "RTN","PSJ COM1",134, 0)
  16228    W "."
  16229   "RTN","PSJ COM1",135, 0)
  16230   OUT ;
  16231   "RTN","PSJ COM1",136, 0)
  16232    K PSGOETO F
  16233   "RTN","PSJ COM1",137, 0)
  16234   DONE ;
  16235   "RTN","PSJ COM1",138, 0)
  16236    K C,D,ND, ND2,ND2P1, ND4,PSGDO, PSGDRG,PSG DRGN,PSGFO K,PSGHSM,P SGMR,PSGMR N,PSGNEDFD ,PSGNEFD,P SGNESD,PSG PDRG,PSGPD RGN,PSGSI, PSGSTN,PSJ DOSE,%,Q
  16237   "RTN","PSJ COM1",139, 0)
  16238    Q
  16239   "RTN","PSJ COM1",140, 0)
  16240   EXPIRE ;Ch ange statu s of order  to expire d and send  notice to  OE/RR
  16241   "RTN","PSJ COM1",141, 0)
  16242    N DA,DIE, DR,PSGPO,P SIVACT
  16243   "RTN","PSJ COM1",142, 0)
  16244    Q:'$G(PSJ OO)!($G(PS JOO)["P")
  16245   "RTN","PSJ COM1",143, 0)
  16246    S STATUS= "E",(PSGPO ,PSIVACT)= 1,DA=+PSJO O,DA(1)=PS GP,DIE=$S( PSJOO["V": "^PS(55,"_ PSGP_",""I V"",",1:"^ PS(55,"_PS GP_",5,"), DR=$S(PSJO O["V":"100 ////E",1:" 28////E")  D ^DIE
  16247   "RTN","PSJ COM1",144, 0)
  16248    D EN1^PSJ HL2(PSGP," SC",PSJOO)
  16249   "RTN","PSJ COM1",145, 0)
  16250    Q
  16251   "RTN","PSJ LMPRU")
  16252   0^35^B2034 7822
  16253   "RTN","PSJ LMPRU",1,0 )
  16254   PSJLMPRU ; BIR/MLM -  INPATIENT  LISTMAN UD  PROFILE U TILITIES ; Jul 26, 20 17@18:04:0 2
  16255   "RTN","PSJ LMPRU",2,0 )
  16256    ;;5.0;INP ATIENT MED ICATIONS;* *16,58,85, 110,185,18 1,267,323, 317,327**; 16 DEC 97; Build 64
  16257   "RTN","PSJ LMPRU",3,0 )
  16258    ;
  16259   "RTN","PSJ LMPRU",4,0 )
  16260    ; Referen ce to ^PSD RUG is sup ported by  DBIA 2192.
  16261   "RTN","PSJ LMPRU",5,0 )
  16262    ; Referen ce to ^PS( 55 is supp orted by D BIA 2191.
  16263   "RTN","PSJ LMPRU",6,0 )
  16264    ; Referen ce to $$GE T^XPAR is  supported  by DBIA 22 63
  16265   "RTN","PSJ LMPRU",7,0 )
  16266    ;
  16267   "RTN","PSJ LMPRU",8,0 )
  16268   PUD(DFN,ON ,PSJF,DN)  ; Setup LM  profile v iew for UD
  16269   "RTN","PSJ LMPRU",9,0 )
  16270    N PSJFLAG ,PSJV,PADE
  16271   "RTN","PSJ LMPRU",10, 0)
  16272    ; Naked r eferences  on the two  lines bel ow refer t o full ref erence ^PS (55,DFN,5, +ON in PSJ F using in direction.
  16273   "RTN","PSJ LMPRU",11, 0)
  16274    S ND=$G(@ (PSJF_+ON_ ",0)")),SC H=$G(^(2)) ,ND4=$G(^( 4)),ND6=$G (^(6)),NDP 2=$G(^(.2) ),PSJFLAG= $P(NDP2,U, 7),X=$P(DN ,U,2),DO=$ S('X:"",1: $G(^(+X)))  S:X=.2 DO =$P(DO,U,2 )
  16275   "RTN","PSJ LMPRU",12, 0)
  16276    S ND14=$G (@(PSJF_+O N_",14,0)" )),RNDT=""  I $P(ND14 ,"^",3) S  ND14=$G(^( $P(ND14,"^ ",3),0)),R NDT=$P(ND1 4,"^")
  16277   "RTN","PSJ LMPRU",13, 0)
  16278    I ("AO"[P SJC)!(PSJC ="DF") D
  16279   "RTN","PSJ LMPRU",14, 0)
  16280    .S V='$P( ND4,"^",UD U),PSJL=$$ SETSTR^VAL M1($S(ND4= "":" ",$P( ND4,"^",12 ):"D",$P(N D4,"^",19) &$P(ND4,"^ ",18):"H", $P(ND4,"^" ,23)&$P(ND 4,"^",22): "H",$P(ND4 ,"^",15)&( $P(ND4,"^" ,16)!V):"R ",1:" "),P SJL,5,1)
  16281   "RTN","PSJ LMPRU",15, 0)
  16282    .S PSJV=$ S($P(NDP2, U,4)="D":" d",1:" ")_ $S(+PSJSYS U=1&V:"->" ,+PSJSYSU= 3&V:"->",1 :"   ") I  PSJFLAG D  CNTRL^VALM 10(PSJLN,1 ,4,IORVON, IORVOFF,0)
  16283   "RTN","PSJ LMPRU",16, 0)
  16284    .S PSJL=$ $SETSTR^VA LM1(PSJV,P SJL,6,3)
  16285   "RTN","PSJ LMPRU",17, 0)
  16286    S RTE=$P( ND,"^",3), SM=$S('$P( ND,"^",5): 0,$P(ND,"^ ",6):1,1:2 ),STAT=$S( $P(ND,U,28 )]"":$P(ND ,U,28),$P( ND,"^",9)] "":$P(ND," ^",9),1:"N F"),PF=$E( "*",$P(ND, "^",20)>0) ,PSGID=$P( SCH,"^",2) ,SD=$P(SCH ,"^",4),SC H=$P(SCH," ^")
  16287   "RTN","PSJ LMPRU",18, 0)
  16288    I STAT="A ",$P(ND,U, 27)="R" S  STAT="R"
  16289   "RTN","PSJ LMPRU",19, 0)
  16290    S NF="",W S=$S(PSJPW D:$$WS^PSJ O(PSJPWD,P SGP,PSJF,+ ON),1:0)
  16291   "RTN","PSJ LMPRU",20, 0)
  16292    I $D(PSJC LIN) S WS= 0  ; PSJ*5 *323
  16293   "RTN","PSJ LMPRU",21, 0)
  16294    ; PSJ*5*3 17 - If PS J PADE OE  BALANCES p arameter i s YES, PAD E balances  should di splay as i dentifier
  16295   "RTN","PSJ LMPRU",22, 0)
  16296    S PADE=0  I $$GET^XP AR("SYS"," PSJ PADE O E BALANCES ") D
  16297   "RTN","PSJ LMPRU",23, 0)
  16298    .N PSJORC L,PSJCLNK
  16299   "RTN","PSJ LMPRU",24, 0)
  16300    .; If cli nic order,  quit if c linic loca tion is no t linked t o PADE
  16301   "RTN","PSJ LMPRU",25, 0)
  16302    .S PSJORC L=$S($G(ON )["P":$G(^ PS(53.1,+$ G(ON),"DSS ")),$G(ON) ["U":$G(^P S(55,+$G(P SGP),5,+$G (ON),8)),$ G(ON)["V": $G(^PS(55, +$G(PSGP), "IV",+$G(O N),"DSS")) ,1:"")
  16303   "RTN","PSJ LMPRU",26, 0)
  16304    .I PSJORC L,$P(PSJOR CL,"^",2)  S PSJCLNK= $$PADECL^P SJPAD50(+$ G(PSJORCL) ) Q:'PSJCL NK
  16305   "RTN","PSJ LMPRU",27, 0)
  16306    .I '$G(VA IN(4)) N V AIN D INP^ VADPT
  16307   "RTN","PSJ LMPRU",28, 0)
  16308    .I '$G(PS JCLNK) Q:' $$PADEWD^P SJPAD50(+$ G(VAIN(4)) )
  16309   "RTN","PSJ LMPRU",29, 0)
  16310    .S PADE=$ $DRGFLAG^P SJPADSI(PS GP,$G(ON), ,$G(ON),$G (PSJNEWOE) ) S:PADE=0  PADE=1
  16311   "RTN","PSJ LMPRU",30, 0)
  16312    N PSJDISP  F PSJDISP =0:0 S PSJ DISP=$O(@( PSJF_+ON_" ,1,"_PSJDI SP_")")) Q :'PSJDISP   D
  16313   "RTN","PSJ LMPRU",31, 0)
  16314    .I $P($G( ^PSDRUG(+$ P($G(@(PSJ F_+ON_",1, "_PSJDISP_ ",0)")),"^ "),0)),"^" ,9)=1 S NF =1
  16315   "RTN","PSJ LMPRU",32, 0)
  16316    NEW DRUGN AME,PSGID1 ,SD1,LEN,P SGID1,SD1  S LEN=$S($ D(PSJEXPT) :8,1:5)
  16317   "RTN","PSJ LMPRU",33, 0)
  16318    ; START N CC REMEDIA TION RJS-3 27
  16319   "RTN","PSJ LMPRU",34, 0)
  16320    N CLOZFLG  I ON["U"  S CLOZFLG= $$ISCLOZ^P SJCLOZ(,,P SGP,+ON) I  1
  16321   "RTN","PSJ LMPRU",35, 0)
  16322    E  S CLOZ FLG=$$ISCL OZ^PSJCLOZ (+ON)
  16323   "RTN","PSJ LMPRU",36, 0)
  16324    I CLOZFLG  D
  16325   "RTN","PSJ LMPRU",37, 0)
  16326    .D DISPCM P^PSJCLOZ( +$G(ND),.P SSD) S:$G( PSSD) SD=P SSD K PSSD
  16327   "RTN","PSJ LMPRU",38, 0)
  16328    ; END NCC  REMEDIATI ON RJS-327
  16329   "RTN","PSJ LMPRU",39, 0)
  16330    F X="PSGI D","SD" S  @(X_1)=$S( PSJC["C":" *****",1:$ E($$ENDTC^ PSGMI(@X), 1,LEN))
  16331   "RTN","PSJ LMPRU",40, 0)
  16332    D DRGDISP ^PSJLMUT1( PSGP,ON,39 ,54,.DRUGN AME,0)
  16333   "RTN","PSJ LMPRU",41, 0)
  16334    F PSJX=0: 0 S PSJX=$ O(DRUGNAME (PSJX)) Q: 'PSJX  D
  16335   "RTN","PSJ LMPRU",42, 0)
  16336    .I PSJX=1  D
  16337   "RTN","PSJ LMPRU",43, 0)
  16338    ..I PSJFL AG D CNTRL ^VALM10(PS JLN,1,4,IO RVON,IORVO FF,0)
  16339   "RTN","PSJ LMPRU",44, 0)
  16340    ..S PSJL= $$SETSTR^V ALM1($S($E (PSJS)="*" :$P(PSJS," ^"),1:DRUG NAME(PSJX) ),PSJL,9,3 9)
  16341   "RTN","PSJ LMPRU",45, 0)
  16342    ..S PSJL= $$SETSTR^V ALM1($S(PS JC["C":"?" ,PSJSCHT'= "z":PSJSCH T,1:"?"),P SJL,50,3)
  16343   "RTN","PSJ LMPRU",46, 0)
  16344    ..S PSJL= PSJL_PSGID 1_"  "_SD1 _" "_$E(ST AT,1,2)_$S ($L(STAT)= 1:"     ", 1:"    ")_ $S($G(RNDT ):$E($$END TC^PSGMI(R NDT),1,LEN ),1:"")
  16345   "RTN","PSJ LMPRU",47, 0)
  16346    ..I NF!WS !SM!PF!$G( PADE) S PS JL=$$SETST R^VALM1($S (NF:"NF ", (WS&PADE): "WP ",(PAD E&'WS):"PD  ",WS:"WS  ",SM:$E("H SM",SM,3), 1:""),PSJL ,69,3) S:P F PSJL=$$S ETSTR^VALM 1("*",PSJL ,79,1)
  16347   "RTN","PSJ LMPRU",48, 0)
  16348    . I PSJX> 1 S PSJL=" ",PSJL=$$S ETSTR^VALM 1(DRUGNAME (PSJX),PSJ L,11,66)
  16349   "RTN","PSJ LMPRU",49, 0)
  16350    . D SETTM P("PSJPRO" ,PSJL) I ( $P(NDP2,U, 4)="S"),ST AT="P" D C NTRL^VALM1 0((PSJLN-1 ),9,9+$L(P SJL),IOINH I_IOBON,IO INORM,0)
  16351   "RTN","PSJ LMPRU",50, 0)
  16352    I ND6'=""  N X,PSJTX T3 S X=$$G ETSIOPI^PS JBCMA5(DFN ,ON) N TXT LN S TXTLN =0 F  S TX TLN=$O(^PS (53.45,DUZ ,5,TXTLN))  Q:'TXTLN! $G(PSJTXT3 )  D
  16353   "RTN","PSJ LMPRU",51, 0)
  16354    .I ($O(^P S(53.45,DU Z,5," "),- 1)>3) S PS JTXT3=1 S  PSJL="Inst ructions t oo long. S ee Order V iew for fu ll text."  D PTXT(PSJ L,"PSJPRO" ,10,66) Q
  16355   "RTN","PSJ LMPRU",52, 0)
  16356    .S PSJL=^ PS(53.45,D UZ,5,TXTLN ,0) D PTXT (PSJL,"PSJ PRO",10,66 )
  16357   "RTN","PSJ LMPRU",53, 0)
  16358    K ^PS(53. 45,DUZ,5)
  16359   "RTN","PSJ LMPRU",54, 0)
  16360    Q
  16361   "RTN","PSJ LMPRU",55, 0)
  16362    ;
  16363   "RTN","PSJ LMPRU",56, 0)
  16364   PTXT(TXT,S UB,LM,RM)  ; Display  Instructio ns/dosage  ordered.
  16365   "RTN","PSJ LMPRU",57, 0)
  16366    ;* Input:        TXT  = Text to  display.
  16367   "RTN","PSJ LMPRU",58, 0)
  16368    ;                         SUB =  First sub script for  ^TMP node , ** MUST  be PSJ nam espace **
  16369   "RTN","PSJ LMPRU",59, 0)
  16370    ;                         LM  =  Begin dis play of te xt after L M spaces.
  16371   "RTN","PSJ LMPRU",60, 0)
  16372    ;                         RM  =  Length of  display t ext.
  16373   "RTN","PSJ LMPRU",61, 0)
  16374    ;                         
  16375   "RTN","PSJ LMPRU",62, 0)
  16376    ;BHW;PSJ* 5*185;Extr a spaces c auses disp lay to "sk ip" part o f the fiel d. 
  16377   "RTN","PSJ LMPRU",63, 0)
  16378    ;S PSJL=" ",$P(PSJL, " ",LM)=""  F X=1:1 S  WRD=$P(TX T," ",X) Q :WRD=""  D
  16379   "RTN","PSJ LMPRU",64, 0)
  16380    S PSJL="" ,$P(PSJL,"  ",LM)=""
  16381   "RTN","PSJ LMPRU",65, 0)
  16382    F X=1:1:$ L(TXT," ")  S WRD=$P( TXT," ",X)  D
  16383   "RTN","PSJ LMPRU",66, 0)
  16384    .;BHW;PSJ *5*185;che ck if end  of string  or just ex tra space
  16385   "RTN","PSJ LMPRU",67, 0)
  16386    .I WRD=""  S PSJL=PS JL_" " Q 
  16387   "RTN","PSJ LMPRU",68, 0)
  16388    .I $L(PSJ L_" "_WRD) '<RM D SET TMP(SUB,PS JL) S PSJL ="",$P(PSJ L," ",10)= ""
  16389   "RTN","PSJ LMPRU",69, 0)
  16390    .I $L(PSJ L_" "_WRD) '<RM S PSJ L=PSJL_" " _$E(WRD,1, (RM-10)) D  SETTMP(SU B,PSJL) S  PSJL="",$P (PSJL," ", 10)="",WRD =$E(WRD,(R M-9),$L(WR D))
  16391   "RTN","PSJ LMPRU",70, 0)
  16392    .S PSJL=P SJL_" "_WR D
  16393   "RTN","PSJ LMPRU",71, 0)
  16394    D SETTMP( SUB,PSJL)
  16395   "RTN","PSJ LMPRU",72, 0)
  16396    Q
  16397   "RTN","PSJ LMPRU",73, 0)
  16398   SETTMP(SUB ,PSJL) ;
  16399   "RTN","PSJ LMPRU",74, 0)
  16400    S ^TMP(SU B,$J,PSJLN ,0)=PSJL,P SJLN=PSJLN +1
  16401   "RTN","PSJ LMPRU",75, 0)
  16402    Q
  16403   "RTN","PSJ LMUDE")
  16404   0^33^B8729 6083
  16405   "RTN","PSJ LMUDE",1,0 )
  16406   PSJLMUDE ; BIR/MLM-SH OW FIELDS  FOR EDIT ( LISTMAN ST YLE) ;Jul  26, 2017@1 8:04:02
  16407   "RTN","PSJ LMUDE",2,0 )
  16408    ;;5.0;INP ATIENT MED ICATIONS;* *7,47,50,6 3,64,58,80 ,116,110,1 11,164,175 ,201,181,2 54,267,228 ,315,317,3 38,327**;1 6 DEC 97;B uild 64
  16409   "RTN","PSJ LMUDE",3,0 )
  16410    ;
  16411   "RTN","PSJ LMUDE",4,0 )
  16412    ;NFI-UD F r#:2 chgs@ init+4 to  display no n-formular y (N/F)
  16413   "RTN","PSJ LMUDE",5,0 )
  16414    ;also chg s @init+23
  16415   "RTN","PSJ LMUDE",6,0 )
  16416    ;
  16417   "RTN","PSJ LMUDE",7,0 )
  16418    ; Referen ce to ^PS( 55 is supp orted by D BIA# 2191
  16419   "RTN","PSJ LMUDE",8,0 )
  16420    ; Referen ce to ^PSD RUG is sup ported by  DBIA 2192
  16421   "RTN","PSJ LMUDE",9,0 )
  16422    ; Referen ce to $$GE T^XPAR is  supported  by DBIA #2 263
  16423   "RTN","PSJ LMUDE",10, 0)
  16424    ;
  16425   "RTN","PSJ LMUDE",11, 0)
  16426   INIT(PSGP, PSGORD) ;
  16427   "RTN","PSJ LMUDE",12, 0)
  16428    N D,ND,PS JBCMA,PSJL ,PSJLM,PSJ LN,Q,QQ,PS JDUR,J K ^ TMP("PSJUD E",$J),^TM P($J,"GMRA ING")
  16429   "RTN","PSJ LMUDE",13, 0)
  16430    K:$G(PSJN ORD) PSGOE EF S PSJLN =1
  16431   "RTN","PSJ LMUDE",14, 0)
  16432    D CLEAN^V ALM10
  16433   "RTN","PSJ LMUDE",15, 0)
  16434    S PSJL=$S ($D(PSGEFN (1)):$E("  *",PSGEFN( 1)+1)_"(1) ",1:"   ") ,PSJL=$$SE TSTR^VALM1 ("Orderabl e Item: "_ PSGPDN_$$O INF^PSJDIN (PSGPD),PS JL,5,74) D   D SETTMP  D:$G(PSGO EEF(108))! ($G(PSGOEE F(101))) H ILITE(1)
  16435   "RTN","PSJ LMUDE",16, 0)
  16436    . NEW Q,P SJDDA,PSJV D F Q=0:0  S Q=$O(^PS (53.45,PSJ SYSP,2,Q))  Q:'Q  S P SJDDA(+$G( ^(Q,0)))=" "
  16437   "RTN","PSJ LMUDE",17, 0)
  16438    . S PSJVD =$$DINFLUD ^PSJDIN(PS GPD,.PSJDD A)
  16439   "RTN","PSJ LMUDE",18, 0)
  16440    . I $$OVR CHK^PSGSIC H1(PSGP,PS GORD) S PS JVD="<OCI> "_PSJVD
  16441   "RTN","PSJ LMUDE",19, 0)
  16442    . S PSJL= $$SETSTR^V ALM1(PSJVD ,PSJL,(80- $L(PSJVD)) ,80)
  16443   "RTN","PSJ LMUDE",20, 0)
  16444    . D:PSJVD ]"" CNTRL^ VALM10(1,8 0-$L(PSJVD ),$L(PSJVD ),IORVON,I ORVOFF,0)
  16445   "RTN","PSJ LMUDE",21, 0)
  16446    I $G(PSJO RD)["P" D  REQDT^PSJL IVMD(PSJOR D)
  16447   "RTN","PSJ LMUDE",22, 0)
  16448    S PSJL="I nstruction s: "_PSGOI NST D PTXT ^PSJLMPRU( PSJL,"PSJU DE",6,80)
  16449   "RTN","PSJ LMUDE",23, 0)
  16450    S PSJL=$S ($D(PSGEFN (2)):$E("  *",PSGEFN( 2)+1)_"(2) ",1:"    " ),PSJL=$$S ETSTR^VALM 1("Dosage  Ordered: " _PSGDO,PSJ L,5,76) D  SETTMP D:$ G(PSGOEEF( 109)) HILI TE(2)
  16451   "RTN","PSJ LMUDE",24, 0)
  16452    I $G(PSGR DTX) S PSJ DUR=$$FMTD UR^PSJLIVM D($P($G(PS GRDTX),U,2 ))
  16453   "RTN","PSJ LMUDE",25, 0)
  16454    I $G(PSJO RD),($G(PS JDUR)="")  S P=$S(PSJ ORD["U":5, PSJORD["V" :"IV",PSJO RD["P":"P" ,1:-1) S P SJDUR=$$GE TDUR^PSJLI VMD(PSGP,+ PSJORD,P)
  16455   "RTN","PSJ LMUDE",26, 0)
  16456    S PSJL=$$ SETSTR^VAL M1("Durati on: "_$G(P SJDUR),PSJ L,11,25)
  16457   "RTN","PSJ LMUDE",27, 0)
  16458    S PSJL=$$ SETSTR^VAL M1($S($D(P SGEFN(3)): $E(" *",PS GEFN(3)+1) _"(3)",1:"     ")_"St art: "_$P( PSGSDN,U,2 ),PSJL,54, 26) D:$G(P SGOEEF(10) ) HILITE(3 )
  16459   "RTN","PSJ LMUDE",28, 0)
  16460    I $G(PSGO RD)["P" N  ND0,OLDO S  ND0=@(PSG OEEWF_"0)" ) I $P(ND0 ,"^",24)=" R" S OLDO= $P(ND0,"^" ,25) I OLD O,(OLDO["U ") D
  16461   "RTN","PSJ LMUDE",29, 0)
  16462    . N OSTRT ,OSTRTN S  OSTRT=$G(@ ("^PS(55," _PSGP_",5, "_+OLDO_", 2)")),OSTR T=$P(OSTRT ,"^",2) Q: 'OSTRT  S  OSTRTN=$$E NDTC^PSGMI (+OSTRT)
  16463   "RTN","PSJ LMUDE",30, 0)
  16464    . S PSJL= $$SETSTR^V ALM1($S($D (PSGEFN(3) ):$E(" *", PSGEFN(3)+ 1)_"(3)",1 :"    ")_" Start: "_O STRTN,PSJL ,54,26)
  16465   "RTN","PSJ LMUDE",31, 0)
  16466    D SETTMP
  16467   "RTN","PSJ LMUDE",32, 0)
  16468    S PSJL=$S ($D(PSGEFN (4)):$E("  *",PSGEFN( 4)+1)_"(4) ",1:"    " ),PSJL=$$S ETSTR^VALM 1("Med Rou te: "_PSGM RN,PSJL,10 ,35) D:$G( PSGOEEF(3) ) HILITE(4 )
  16469   "RTN","PSJ LMUDE",33, 0)
  16470    I $G(PSJO RD)["P" N  PSGRNDT S  PSGRNDT=$$ LASTREN^PS JLMPRI(DFN ,PSGORD) S :PSGRNDT P SGRNDT=$$E NDTC^PSGMI (+PSGRNDT) ,PSJL=$$SE TSTR^VALM1 ("Renewed:  "_PSGRNDT ,PSJL,56,3 2)
  16471   "RTN","PSJ LMUDE",34, 0)
  16472    I '$G(PSG RNDT),$G(P SGRDTX) D
  16473   "RTN","PSJ LMUDE",35, 0)
  16474    . I $D(PS GRDTX)<10  S PSGRSDN= $$ENDTC^PS GMI(+PSGRD TX),PSJL=$ $SETSTR^VA LM1("REQUE STED START : "_PSGRSD N,PSJL,48, 32) Q
  16475   "RTN","PSJ LMUDE",36, 0)
  16476    . I $G(PS GRDTX(+$G( PSJORD),"P SGRSD")),$ P($G(PSGSD N),U,2) S  PSGRSDN=$$ ENDTC^PSGM I(PSGRDTX( +PSJORD,"P SGRSD")),P SJL=$$SETS TR^VALM1(" Calc Start : "_PSGRSD N,PSJL,53, 32) D
  16477   "RTN","PSJ LMUDE",37, 0)
  16478    .. I PSGS D'=PSGRDTX (+PSJORD," PSGRSD") D  CNTRL^VAL M10(5,53,8 0,IORVON,I ORVOFF)
  16479   "RTN","PSJ LMUDE",38, 0)
  16480    ; Indirec t referenc e in PSGOE EWF below  refers to  either ^PS (53.1 or ^ PS(55,DFN, 5,. Naked  reference  refers to  full indir ect refere nce
  16481   "RTN","PSJ LMUDE",39, 0)
  16482    I $G(PSJO RD)["U" N  ND14 S ND1 4=$G(@(PSG OEEWF_"14, 0)")) I ND 14]"" S ND 14=$G(^($P (ND14,"^", 3),0)),RND T=$P(ND14, "^") I RND T D
  16483   "RTN","PSJ LMUDE",40, 0)
  16484    . N PSGRN DT S PSGRN DT=$$ENDTC ^PSGMI(+RN DT),PSJL=$ $SETSTR^VA LM1("Renew ed: "_PSGR NDT,PSJL,5 6,32)
  16485   "RTN","PSJ LMUDE",41, 0)
  16486    D SETTMP
  16487   "RTN","PSJ LMUDE",42, 0)
  16488    I PSGORD] "" S PSJBC MA=$$BCMAL G^PSJUTL2( PSGP,PSGOR D)
  16489   "RTN","PSJ LMUDE",43, 0)
  16490    I $G(PSJB CMA)]"" S  PSJL=$$SET STR^VALM1( PSJBCMA,PS JL,1,52)
  16491   "RTN","PSJ LMUDE",44, 0)
  16492    S PSJL=$$ SETSTR^VAL M1($S($D(P SGEFN(5)): $E(" *",PS GEFN(5)+1) _"(5)",1:"      ")_"  Stop: "_$P (PSGFDN,U, 2),PSJL,54 ,26) D SET TMP D:$G(P SGOEEF(25) )!($G(PSGO EEF(34)))  HILITE(5)
  16493   "RTN","PSJ LMUDE",45, 0)
  16494    S PSJL=$S ($D(PSGEFN (6)):$E("  *",PSGEFN( 6)+1)_"(6) ",1:"   ") ,PSJL=$$SE TSTR^VALM1 ("Schedule  Type: "_P SGSTN,PSJL ,6,45) D:$ G(PSGOEEF( 7)) HILITE (6)
  16495   "RTN","PSJ LMUDE",46, 0)
  16496    I $G(PSJO RD)["P",$G (PSGRDTX(+ $G(PSJORD) ,"PSGRFD") ),$P($G(PS GFDN),U,2)  S PSGRFDN =$$ENDTC^P SGMI(PSGRD TX(+PSJORD ,"PSGRFD") ),PSJL=$$S ETSTR^VALM 1("Calc St op: "_PSGR FDN,PSJL,5 4,26) D
  16497   "RTN","PSJ LMUDE",47, 0)
  16498    . I PSGFD '=PSGRDTX( +PSJORD,"P SGRFD") D  CNTRL^VALM 10(7,54,80 ,IORVON,IO RVOFF)
  16499   "RTN","PSJ LMUDE",48, 0)
  16500    D SETTMP
  16501   "RTN","PSJ LMUDE",49, 0)
  16502    S PSGSMN= $P("NO^YES ",U,PSGSM+ 1)
  16503   "RTN","PSJ LMUDE",50, 0)
  16504    S PSJL=$S ($D(PSGEFN (8)):$E("  *",PSGEFN( 8)+1)_"(8) ",1:"   ") ,PSJL=$$SE TSTR^VALM1 ("Schedule : "_PSGSCH _$G(SCHMSG ),PSJL,11, 68) D SETT MP D:$G(PS GOEEF(26))  HILITE(8)
  16505   "RTN","PSJ LMUDE",51, 0)
  16506    S PSJL=$S ($D(PSGEFN (9)):$E("  *",PSGEFN( 9)+1)_"(9) ",1:"   ") ,PSJL=$$SE TSTR^VALM1 ("Admin Ti mes: "_PSG AT,PSJL,8, 71) D SETT MP D:'$G(P SGNOHI)&($ G(PSGOEEF( 39))!($G(P SGOEEF(41) ))) HILITE (9) ;*315
  16507   "RTN","PSJ LMUDE",52, 0)
  16508    I +$G(PSG RF)>1 N PS GRMVD S PS GRMVD=$S(+ $G(PSGRMVT ):PSGRMVT, 1:"") S PS JL=$$SETST R^VALM1("R emoval Tim es: "_PSGR MVD,PSJL,6 ,71) D SET TMP ;*315
  16509   "RTN","PSJ LMUDE",53, 0)
  16510    S PSJL=$S ($D(PSGEFN (10)):$E("  *",PSGEFN (10)+1)_"( 10)",1:"    "),PSJL=$ $SETSTR^VA LM1("Provi der: "_PSG PRN,PSJL,1 1,68) D:$G (PSGOEEF(1 )) HILITE( 10) D SETT MP
  16511   "RTN","PSJ LMUDE",54, 0)
  16512    S PSJL=$S ($D(PSGEFN (11)):$E("  *",PSGEFN (11))_" (1 1)",1:"    ")_" Speci al Instruc tions"_$S( $P(PSGSI," ^",2)=1:"! : ",1:": " ) D
  16513   "RTN","PSJ LMUDE",55, 0)
  16514    .I '$D(^P S(53.45,DU Z,5,1)),$G (PSGORD) D  GETSI^PSJ BCMA5(PSGP ,PSGORD)
  16515   "RTN","PSJ LMUDE",56, 0)
  16516    .I '$P($G (^PS(53.45 ,DUZ,5,0)) ,"^",3) S  PSJL=PSJL_ $P($G(PSGS I),"^") D  PTXT^PSJLM PRU(PSJL," PSJUDE",1, 80) Q
  16517   "RTN","PSJ LMUDE",57, 0)
  16518    .S PSJL=P SJL_" (see  below)" D  SETTMP N  I S I=0 F  J=1:1 S I= $O(^PS(53. 45,DUZ,5,I )) Q:'I  S  PSJL="       "_^PS(5 3.45,DUZ,5 ,I,0) D SE TTMP
  16519   "RTN","PSJ LMUDE",58, 0)
  16520    S PSJL=""  D SETTMP  D:$G(PSGOE EF(8)) HIL ITE(11)
  16521   "RTN","PSJ LMUDE",59, 0)
  16522    ; E3R 161 30
  16523   "RTN","PSJ LMUDE",60, 0)
  16524    I $O(^PS( 53.45,PSJS YSP,2,1))  F  S PSJL= "" D SETTM P Q:PSJLN> 15
  16525   "RTN","PSJ LMUDE",61, 0)
  16526    S PSJL=$S ($D(PSGEFN (12)):$E("  *",PSGEFN (12))_" (1 2)",1:"    ")_" Dispe nse Drug", PSJL=$$SET STR^VALM1( "U/D",PSJL ,52,60),PS JL=$$SETST R^VALM1("I nactive Da te",PSJL,5 9,16) D  D  SETTMP,CN TRL^VALM10 (PSJLN-1,1 ,80,IOUON, IOUOFF,0)
  16527   "RTN","PSJ LMUDE",62, 0)
  16528    .I $$GET^ XPAR("SYS" ,"PSJ PADE  OE BALANC ES") D
  16529   "RTN","PSJ LMUDE",63, 0)
  16530    ..I '$G(V AIN(4)) N  VAIN,DFN S  DFN=$G(PS GP) D INP^ VADPT
  16531   "RTN","PSJ LMUDE",64, 0)
  16532    ..N PSJOR CL,PSJCLNK
  16533   "RTN","PSJ LMUDE",65, 0)
  16534    ..; If cl inic order , quit if  clinic loc ation is n ot linked  to PADE
  16535   "RTN","PSJ LMUDE",66, 0)
  16536    ..S PSJOR CL=$S($G(P SGORD)["P" :$G(^PS(53 .1,+$G(PSG ORD),"DSS" )),$G(PSGO RD)["U":$G (^PS(55,+$ G(PSGP),5, +$G(PSGORD ),8)),$G(P SGORD)["V" :$G(^PS(55 ,+$G(PSGP) ,"IV",+$G( PSGORD),"D SS")),1:"" )
  16537   "RTN","PSJ LMUDE",67, 0)
  16538    ..I PSJOR CL,$P(PSJO RCL,"^",2)  S PSJCLNK =$$PADECL^ PSJPAD50(+ $G(PSJORCL )) Q:'PSJC LNK
  16539   "RTN","PSJ LMUDE",68, 0)
  16540    ..I '$G(P SJCLNK) Q: '$$PADEWD^ PSJPAD50(+ $G(VAIN(4) ))   ; PAD E device I nactive?
  16541   "RTN","PSJ LMUDE",69, 0)
  16542    ..S PSJL= $$SETSTR^V ALM1("PADE ",PSJL,75, 5)
  16543   "RTN","PSJ LMUDE",70, 0)
  16544    NEW PSJX, PSJDLINE
  16545   "RTN","PSJ LMUDE",71, 0)
  16546    F Q=0:0 S  Q=$O(^PS( 53.45,PSJS YSP,2,Q))  Q:'Q  S ND =$G(^(Q,0) ) D
  16547   "RTN","PSJ LMUDE",72, 0)
  16548    .S D=$P(N D,"^"),PSG ID=$P(ND," ^",3) I PS GID S PSGI D=$$ENDTC^ PSGMI(PSGI D)
  16549   "RTN","PSJ LMUDE",73, 0)
  16550    .S D=$S(D ="":"NOT F OUND",'$D( ^PSDRUG(D, 0)):D,$P(^ (0),"^")]" ":$P(^(0), "^"),1:D_" ;PSDRUG(")
  16551   "RTN","PSJ LMUDE",74, 0)
  16552    .S PSJL="       "_D_ $$DDNF^PSJ DIN(+ND),P SJL=$$SETS TR^VALM1($ S($P(ND,"^ ",2):$S($P (ND,"^",2) =.5:"1/2", $P(ND,"^", 2)=.25:"1/ 4",1:$P(ND ,"^",2)),$ P(ND,"^",2 )=0:0,1:1) ,PSJL,52,6 3) S:PSGID  PSJL=$$SE TSTR^VALM1 (PSGID,PSJ L,59,16) D   D SETTMP
  16553   "RTN","PSJ LMUDE",75, 0)
  16554    ..; PSJ*5 *317 - If  PSJ PADE O E BALANCES  parameter  is YES, P ADE balanc es should  display as  identifie r.
  16555   "RTN","PSJ LMUDE",76, 0)
  16556    ..I $$GET ^XPAR("SYS ","PSJ PAD E OE BALAN CES") D
  16557   "RTN","PSJ LMUDE",77, 0)
  16558    ...N PSJP DLOC,VAIN, PSJORCL,PS JCLNK,PSJC LND D INP^ VADPT
  16559   "RTN","PSJ LMUDE",78, 0)
  16560    ...; If c linic orde r, quit if  clinic lo cation is  not linked  to PADE
  16561   "RTN","PSJ LMUDE",79, 0)
  16562    ...S PSJC LND=$S($G( PSGORD)["P ":$G(^PS(5 3.1,+$G(PS GORD),"DSS ")),$G(PSG ORD)["U":$ G(^PS(55,+ $G(PSGP),5 ,+$G(PSGOR D),8)),$G( PSGORD)["V ":$G(^PS(5 5,+$G(PSGP ),"IV",+$G (PSGORD)," DSS")),1:" ")
  16563   "RTN","PSJ LMUDE",80, 0)
  16564    ...S PSJO RCL=$S(+PS JCLND&$P(P SJCLND,"^" ,2):+PSJCL ND,1:"")
  16565   "RTN","PSJ LMUDE",81, 0)
  16566    ...I PSJO RCL,$P(PSJ CLND,"^",2 ) S PSJCLN K=$$PADECL ^PSJPAD50( +$G(PSJORC L)) Q:'PSJ CLNK
  16567   "RTN","PSJ LMUDE",82, 0)
  16568    ...I '$G( PSJCLNK) Q :'$$PADEWD ^PSJPAD50( +$G(VAIN(4 )))   ; Qu it if pati ent locati on not lin ked to PAD E
  16569   "RTN","PSJ LMUDE",83, 0)
  16570    ...S PSJP DLOC=$S($G (PSJCLNK): PSJORCL_"C ",1:"")
  16571   "RTN","PSJ LMUDE",84, 0)
  16572    ...S:'PSJ PDLOC PSJP DLOC=+$G(V AIN(4))
  16573   "RTN","PSJ LMUDE",85, 0)
  16574    ...N PADE  S PADE=$J ($$DRGQTY^ PSJPADSI(+ ND,$S(PSJP DLOC["C":" CL",1:"WD" ),+PSJPDLO C),5)
  16575   "RTN","PSJ LMUDE",86, 0)
  16576    ...S PSJL =$$SETSTR^ VALM1(PADE ,PSJL,74,5 )
  16577   "RTN","PSJ LMUDE",87, 0)
  16578    ..S PSJX= $G(PSJX)+1
  16579   "RTN","PSJ LMUDE",88, 0)
  16580    ..S PSJDL INE=$S($P( ^PS(53.45, PSJSYSP,2, 0),U,3)>1: 16,1:13) ; *228 - Hig hlight mul tiple disp ense drugs
  16581   "RTN","PSJ LMUDE",89, 0)
  16582    ..I $G(PS GOEEF(109) ) D CNTRL^ VALM10(PSJ DLINE+PSJX ,7,73,IORV ON_IOBON,I ORVOFF_IOB OFF,0)
  16583   "RTN","PSJ LMUDE",90, 0)
  16584    I $S(PSGO RD["P":$O( ^PS(53.1,+ $G(PSGORD) ,12,0)),1: $O(^PS(55, PSGP,5,+PS GORD,12,0) )) S PSJL= "Provider  Comments:"  D SETTMP  S PSJL=""  D
  16585   "RTN","PSJ LMUDE",91, 0)
  16586    .F Q=0:0  S Q=$S(PSG ORD["P":$O (^PS(53.1, +$G(PSGORD ),12,Q)),1 :$O(^PS(55 ,PSGP,5,+P SGORD,12,Q ))) Q:'Q   S PSJL=$G( ^(Q,0)) D  SETTMP
  16587   "RTN","PSJ LMUDE",92, 0)
  16588    D SETTMP  S PSJL=$$S ETSTR^VALM 1($S($D(PS GEFN(7)):$ E(" *",PSG EFN(7)+1)_ "(7)",1:"    ")_"Self  Med: "_PS GSMN,PSJL, 1,24)
  16589   "RTN","PSJ LMUDE",93, 0)
  16590    S:PSGSM&P SGHSM PSJL =$$SETSTR^ VALM1("  ( HS)",PSJL, 16,7) D SE TTMP D:$G( PSGOEEF(5) ) HILITE(7 )
  16591   "RTN","PSJ LMUDE",94, 0)
  16592    D SETTMP  S PSJL="En try By: "_ PSGEBN,PSJ L=$$SETSTR ^VALM1("En try Date:  "_$P(PSGLI N,U,2),PSJ L,51,39) D  SETTMP
  16593   "RTN","PSJ LMUDE",95, 0)
  16594    I $G(PSGL RN) D SETT MP S PSJL= "Renewed B y: "_$$ENN PN^PSGMI($ P(PSGLRN," ^",2)) D S ETTMP
  16595   "RTN","PSJ LMUDE",96, 0)
  16596    D SETTMP  S PSJL="(1 3)"_" Comm ents:"
  16597   "RTN","PSJ LMUDE",97, 0)
  16598    D:'$O(^PS (53.45,PSJ SYSP,1,0))  SETTMP
  16599   "RTN","PSJ LMUDE",98, 0)
  16600    D SETTMP  F Q=0:0 S  Q=$O(^PS(5 3.45,PSJSY SP,1,Q)) Q :'Q  S PSJ WPL=PSJL_$ S($E(PSJL) =" ":"",1: " ")_$G(^( Q,0)),PSJL ="" D DISP LAY
  16601   "RTN","PSJ LMUDE",99, 0)
  16602    D SETTMP
  16603   "RTN","PSJ LMUDE",100 ,0)
  16604    I PSGORD[ "P",($P($G (^PS(53.1, +PSGORD,0) ),U,9)="P" ),$O(^PS(5 3.1,+PSGOR D,10,0)) D
  16605   "RTN","PSJ LMUDE",101 ,0)
  16606    .D SETTMP  S PSJL="C PRS Order  Checks:" D  SETTMP
  16607   "RTN","PSJ LMUDE",102 ,0)
  16608    .F Q=0:0  S Q=$O(^PS (53.1,+PSG ORD,10,Q))  Q:'Q  D
  16609   "RTN","PSJ LMUDE",103 ,0)
  16610    ..;S PSJL ="" D SETT MP S PSJL= $G(^PS(53. 1,+PSGORD, 10,Q,0)) D  SETTMP
  16611   "RTN","PSJ LMUDE",104 ,0)
  16612    ..S PSJL= "" D SETTM P
  16613   "RTN","PSJ LMUDE",105 ,0)
  16614    ..D FORMA TTX($G(^PS (53.1,+PSG ORD,10,Q,0 )))
  16615   "RTN","PSJ LMUDE",106 ,0)
  16616    ..S PSJL= "Overridin g Provider : "_$P($G( ^PS(53.1,+ PSGORD,10, Q,1)),U) D  SETTMP
  16617   "RTN","PSJ LMUDE",107 ,0)
  16618    ..S PSJL= "Overridin g Reason:  " F X=0:0  S X=$O(^PS (53.1,+PSG ORD,10,Q,2 ,X)) Q:'X    D
  16619   "RTN","PSJ LMUDE",108 ,0)
  16620    ...S PSJL =PSJL_$G(^ PS(53.1,+P SGORD,10,Q ,2,X,0)) D  SETTMP S  PSJL="                     "
  16621   "RTN","PSJ LMUDE",109 ,0)
  16622   ACTFLG ;
  16623   "RTN","PSJ LMUDE",110 ,0)
  16624    S ND4=$S( PSGORD["P" :$G(^PS(53 .1,+PSGORD ,4)),1:$G( ^PS(55,PSG P,5,+PSGOR D,4)))
  16625   "RTN","PSJ LMUDE",111 ,0)
  16626    S AT="",Y ="12,13,D, 18,19,H1,2 2,23,H0,15 ,16,R" F X =1:3:12 I  $P(ND4,"^" ,$P(Y,",", X)),$P(ND4 ,"^",$P(Y, ",",X+1))  S AT=$P(Y, ",",X+2) Q
  16627   "RTN","PSJ LMUDE",112 ,0)
  16628    I AT="",' $P(ND4,"^" ,$S($P(PSJ SYSU,";",3 )>1:3,1:1) ) S AT="V" _$S($P(ND4 ,"^",18):" H1",$P(ND4 ,"^",22):" H0",$P(ND4 ,"^",15):" R",1:"")
  16629   "RTN","PSJ LMUDE",113 ,0)
  16630    I AT]"" D
  16631   "RTN","PSJ LMUDE",114 ,0)
  16632    .S PSJL=" " D SETTMP
  16633   "RTN","PSJ LMUDE",115 ,0)
  16634    .S PSJL=" ORDER "_$S (AT["V":"N OT VERIFIE D"_$S($P(A T,"V",2)=" ":"",1:" ( "_$S(AT["H 1":"ON HOL D",AT["H0" :"OFF HOLD ",1:"RENEW AL")_")"), 1:"MARKED  TO BE "_$S (AT["D":"C ANCELLED", AT["H1":"P LACED ON H OLD",AT["H 0":"TAKEN  OFF OF HOL D",1:"RENE WED"))
  16635   "RTN","PSJ LMUDE",116 ,0)
  16636    I AT'["V" ,AT["H1",$ D(^PS(55,P SGP,5.1))  S AT=^(5.1 ) I $P(AT, "^",7),$P( AT,"^",10) ]"" S PSJL =PSJL_"  ( "_$P(AT,"^ ",10)_")"
  16637   "RTN","PSJ LMUDE",117 ,0)
  16638    D SETTMP
  16639   "RTN","PSJ LMUDE",118 ,0)
  16640    S VALMCNT =PSJLN-1
  16641   "RTN","PSJ LMUDE",119 ,0)
  16642    K PSGSMN, Q,Y,Y1,Y2, PSGLRN
  16643   "RTN","PSJ LMUDE",120 ,0)
  16644    S VALM("T ITLE")=PSG STAT_" UNI T DOSE "_$ S((PSGSTAT ="PENDING" )&($G(PSGP RIO)]""):" ("_PSGPRIO _")",$G(PS GPRIO)="DO NE":"("_PS GPRIO_")", 1:"") I $D (PSJLMP2)  S VALMBG=1 6 K PSJLMP 2
  16645   "RTN","PSJ LMUDE",121 ,0)
  16646   TEST ;
  16647   "RTN","PSJ LMUDE",122 ,0)
  16648    I $G(PSGP FLG) S VAL MSG="INVAL ID ORDERAB LE ITEM"
  16649   "RTN","PSJ LMUDE",123 ,0)
  16650    I $G(PSGD I) S VALMS G=$S($G(VA LMSG)="":" INVALID",1 :VALMSG_", ")_" DISPE NSE DRUG"
  16651   "RTN","PSJ LMUDE",124 ,0)
  16652    I $G(PSGP I) S VALMS G=$S($G(VA LMSG)="":" INVALID",1 :VALMSG_", ")_" PROVI DER"
  16653   "RTN","PSJ LMUDE",125 ,0)
  16654    I $G(PSGD REQ) S CHK =1,VALMSG= "DOSAGE IS  REQUIRED"  K PSGDREQ
  16655   "RTN","PSJ LMUDE",126 ,0)
  16656    Q
  16657   "RTN","PSJ LMUDE",127 ,0)
  16658   DISPLAY ;
  16659   "RTN","PSJ LMUDE",128 ,0)
  16660    S PSJL=PS JWPL D SET TMP
  16661   "RTN","PSJ LMUDE",129 ,0)
  16662    Q
  16663   "RTN","PSJ LMUDE",130 ,0)
  16664    ;
  16665   "RTN","PSJ LMUDE",131 ,0)
  16666   SETTMP ;
  16667   "RTN","PSJ LMUDE",132 ,0)
  16668    S ^TMP("P SJUDE",$J, PSJLN,0)=P SJL,PSJLN= PSJLN+1,PS JL=""
  16669   "RTN","PSJ LMUDE",133 ,0)
  16670    Q
  16671   "RTN","PSJ LMUDE",134 ,0)
  16672    ;
  16673   "RTN","PSJ LMUDE",135 ,0)
  16674   HILITE(FLD ) ; 
  16675   "RTN","PSJ LMUDE",136 ,0)
  16676    N COL,LIN ,WID,X
  16677   "RTN","PSJ LMUDE",137 ,0)
  16678    S X="$T(" _FLD_"^PSJ LMUDE)",@( "X="_X),X= $P(X,";;", 2),LIN=+X, COL=$P(X," ,",2),LAB= $P(X,",",3 ),X=$P(X," ,",4),WID= (LAB+$L(@X ))
  16679   "RTN","PSJ LMUDE",138 ,0)
  16680    I $G(PSGR F),FLD>9 S  LIN=LIN+1  ;COMPENSA TE FOR REM OVAL TIMES
  16681   "RTN","PSJ LMUDE",139 ,0)
  16682    I FLD=7 S  LIN=+$G(P SJLN)-1 Q: LIN<13
  16683   "RTN","PSJ LMUDE",140 ,0)
  16684    D CNTRL^V ALM10(LIN, COL,WID,IO RVON_IOBON ,IORVOFF_I OBOFF,0)
  16685   "RTN","PSJ LMUDE",141 ,0)
  16686    Q
  16687   "RTN","PSJ LMUDE",142 ,0)
  16688    ;
  16689   "RTN","PSJ LMUDE",143 ,0)
  16690   FORMATTX(P SJX) ;
  16691   "RTN","PSJ LMUDE",144 ,0)
  16692    NEW PSJX1 ,Y,Y1
  16693   "RTN","PSJ LMUDE",145 ,0)
  16694    S PSJX1=" "
  16695   "RTN","PSJ LMUDE",146 ,0)
  16696    F Y=1:1:$ L(PSJX," " ) S Y1=$P( PSJX," ",Y ) D
  16697   "RTN","PSJ LMUDE",147 ,0)
  16698    . I ($L(P SJX1)+$L(Y 1)+1)>79 S :$E(PSJX1, 1,1)=" " P SJX1=$E(PS JX1,2,$L(P SJX1)) S P SJL=PSJX1, PSJX1="" D  SETTMP
  16699   "RTN","PSJ LMUDE",148 ,0)
  16700    . S PSJX1 =PSJX1_Y1_ " "
  16701   "RTN","PSJ LMUDE",149 ,0)
  16702    I PSJX1]" " S PSJL=P SJX1 D SET TMP
  16703   "RTN","PSJ LMUDE",150 ,0)
  16704    K PSJX1
  16705   "RTN","PSJ LMUDE",151 ,0)
  16706    Q
  16707   "RTN","PSJ LMUDE",152 ,0)
  16708    ;
  16709   "RTN","PSJ LMUDE",153 ,0)
  16710   1 ;;1,5,16 ,PSGPDN
  16711   "RTN","PSJ LMUDE",154 ,0)
  16712   2 ;;3,5,16 ,PSGDO
  16713   "RTN","PSJ LMUDE",155 ,0)
  16714   3 ;;4,58,7 ,PSGSDN
  16715   "RTN","PSJ LMUDE",156 ,0)
  16716   4 ;;5,10,1 1,PSGMRN
  16717   "RTN","PSJ LMUDE",157 ,0)
  16718   5 ;;6,59,6 ,PSGFDN
  16719   "RTN","PSJ LMUDE",158 ,0)
  16720   6 ;;7,6,15 ,PSGSTN
  16721   "RTN","PSJ LMUDE",159 ,0)
  16722   7 ;;18,5,1 4,PSGSMN
  16723   "RTN","PSJ LMUDE",160 ,0)
  16724   8 ;;8,11,1 2,PSGSCH
  16725   "RTN","PSJ LMUDE",161 ,0)
  16726   9 ;;9,8,13 ,PSGAT
  16727   "RTN","PSJ LMUDE",162 ,0)
  16728   10 ;;10,11 ,10,PSGPRN
  16729   "RTN","PSJ LMUDE",163 ,0)
  16730   11 ;;11,7, 22,PSGSI
  16731   "RTN","PSJ LMUDE",164 ,0)
  16732   ENKILL ;
  16733   "RTN","PSJ LMUDE",165 ,0)
  16734    K PSGNOHI ,PSGAT,PSG EB,PSGEFN, PSGFD,PSGH SM,PSGNEFD ,PSGNESD,P SGOEEF,PSG OEER,PSGOF D,PSGOHSM, PSGOMR,PSG OMRN,PSGOP D,PSGOPDN, PSGOPR,PSG OSCH,PSGOS D,PSGOSM,P SGOST,PSGP D,PSGPDN,P SGPR,PSGSD ,PSGSM Q
  16735   "RTN","PSJ OE")
  16736   0^1^B11761 1925
  16737   "RTN","PSJ OE",1,0)
  16738   PSJOE ;BIR /MLM - INP ATIENT ORD ER ENTRY ; Jul 26, 20 17@18:04:0 2
  16739   "RTN","PSJ OE",2,0)
  16740    ;;5.0;INP ATIENT MED ICATIONS;* *7,26,29,3 3,42,50,56 ,72,58,85, 95,80,110, 111,133,14 0,151,149, 181,252,28 1,315,327* *;16 DEC 9 7;Build 64
  16741   "RTN","PSJ OE",3,0)
  16742    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  16743   "RTN","PSJ OE",4,0)
  16744    ; Referen ce to ^PS( 55 is supp orted by D BIA #2191.
  16745   "RTN","PSJ OE",5,0)
  16746    ; Referen ce to EN^V ALM is sup ported by  DBIA #1011 8.
  16747   "RTN","PSJ OE",6,0)
  16748    ; Referen ce to FULL ^VALM1 is  supported  by DBIA #1 0116.
  16749   "RTN","PSJ OE",7,0)
  16750    ; Referen ce to PAUS E^VALM1 is  supported  by DBIA # 10116.
  16751   "RTN","PSJ OE",8,0)
  16752    ; Referen ce to ^PSS LOCK is su pported by  DBIA #278 9
  16753   "RTN","PSJ OE",9,0)
  16754    ; Referen ce to ^DPT ( is suppo rted by DB IA #10035.
  16755   "RTN","PSJ OE",10,0)
  16756    ; Referen ce to ^ORC FLAG is su pported by  DBIA #362 0.
  16757   "RTN","PSJ OE",11,0)
  16758    ; Referen ce to ^SDA MA203 is s upported b y DBIA #41 33.
  16759   "RTN","PSJ OE",12,0)
  16760    ; Referen ce to ^TMP ("PSODAOC"  is suppor ted by DBI A #6071.
  16761   "RTN","PSJ OE",13,0)
  16762    ;
  16763   "RTN","PSJ OE",14,0)
  16764   EN ; Start  Inpatient  LM OE
  16765   "RTN","PSJ OE",15,0)
  16766    N PSJLK,P SJNEWOE,PS JLMCON,PSJ PROT,XQORS ,VALMEVL D  ENCV^PSGS ETU,^PSIVX U
  16767   "RTN","PSJ OE",16,0)
  16768    I $D(XQUI T) K XQUIT  G DONE
  16769   "RTN","PSJ OE",17,0)
  16770    K PSGVBY, PSJPR S (P SJOL,PSJAC OK,PSGOP,P SGNEF,PSGO EAV,PSGPXN )="" L +^P S(53.45,PS JSYSP):1 E   D LOCKER R^PSJOE G  DONE^PSJOE
  16771   "RTN","PSJ OE",18,0)
  16772    F  S (PSJ LMCON,PSGP TMP)=0 D ^ PSJP,HK Q: PSGP'>0  S  PSJPROT=3 ,DFN=PSGP  D ^PSJAC D   I PSJLK  D UL^PSSLO CK(PSGP)
  16773   "RTN","PSJ OE",19,0)
  16774    .K ^TMP(" PSJ",$J)
  16775   "RTN","PSJ OE",20,0)
  16776    .S PSJLK= $$L^PSSLOC K(PSGP,1)  I 'PSJLK W  !,$C(7),$ P(PSJLK,U, 2) Q
  16777   "RTN","PSJ OE",21,0)
  16778    .K PSJLMP RO D EN^VA LM("PSJ LM  BRIEF PAT IENT INFO" )
  16779   "RTN","PSJ OE",22,0)
  16780    .N NXTPT  S NXTPT=0  F  Q:$G(NX TPT)  D
  16781   "RTN","PSJ OE",23,0)
  16782    ..K PSGRD TX
  16783   "RTN","PSJ OE",24,0)
  16784    ..I $G(PS JLMCON)!$G (PSJNEWOE)  D
  16785   "RTN","PSJ OE",25,0)
  16786    ...S PSJO L=$S(",S,L ,"[(","_$G (PSJOL)_", "):PSJOL,1 :"S")
  16787   "RTN","PSJ OE",26,0)
  16788    ...S PSJL MPRO=1,PSJ LMCON=1,PS JNEWOE=0 D  EN^VALM(" PSJ LM OE" )
  16789   "RTN","PSJ OE",27,0)
  16790    ..I $G(PS JNEWOE)!($ G(VALMBCK) ="Q") S PS JNEWOE=0 Q
  16791   "RTN","PSJ OE",28,0)
  16792    ..I $G(PS JLMCON)&$G (PSJLMPRO) &'$D(^TMP( "PSJ",$J))  D  Q
  16793   "RTN","PSJ OE",29,0)
  16794    ...S PSJL MCON=0,PSJ LMPRO=0 D  EN^VALM("P SJ LM BRIE F PATIENT  INFO")
  16795   "RTN","PSJ OE",30,0)
  16796    ...I $G(P SJNEWOE) S  NXTPT=0 Q
  16797   "RTN","PSJ OE",31,0)
  16798    ...S NXTP T=1
  16799   "RTN","PSJ OE",32,0)
  16800    ..S NXTPT =1,PSJNEWO E=0
  16801   "RTN","PSJ OE",33,0)
  16802    .S PSJOL= "S"
  16803   "RTN","PSJ OE",34,0)
  16804    .I $G(PSG PXN) I $P( PSJSYSW0,U ,29)]""!($ G(PSJCOM))  S PSGPXPT =PSGP D  K  PSGPXPT S  PSGPXN=0
  16805   "RTN","PSJ OE",35,0)
  16806    ..N DFN,P SGP,PSJPXD P
  16807   "RTN","PSJ OE",36,0)
  16808    ..I $P(PS JSYSW0,U,2 9)="" S PS JPDXP=1 D
  16809   "RTN","PSJ OE",37,0)
  16810    ...;N IO, ION,IOS D  HOME^%ZIS  S $P(PSJSY SW0,U,29)= +$G(IOS)
  16811   "RTN","PSJ OE",38,0)
  16812    ...D HOME ^%ZIS S $P (PSJSYSW0, U,29)=+$G( IOS)
  16813   "RTN","PSJ OE",39,0)
  16814    ..S (PSGP ,DFN)=PSGP XPT D ^PSG PER S:$G(P SJPDXP) $P (PSJSYSW0, U,29)="" K  PSJPDXP
  16815   "RTN","PSJ OE",40,0)
  16816    .D ENCV^P SGSETU,^PS IVXU
  16817   "RTN","PSJ OE",41,0)
  16818    K PSJLMPR O,^TMP("PS JPRO",$J), ^TMP("PSJ" ,$J),^TMP( "PSJON",$J )
  16819   "RTN","PSJ OE",42,0)
  16820   DONE ;
  16821   "RTN","PSJ OE",43,0)
  16822    ; -- RTC  198753 - c orrect typ o - r PSJA LGSV w PSJ AGYSV
  16823   "RTN","PSJ OE",44,0)
  16824    K PSJAGYS V,PSJEXCPT ,PSJOCER,^ TMP($J,"PS JPRE"),^TM P("PSODAOC ",$J),^TMP ("PSJDAOC" ,$J)
  16825   "RTN","PSJ OE",45,0)
  16826    K AC,ACTI ON,D1,D2,M I,N,ON,P3, PNOW,PSIVA T,PSIVLN,P SIVSTR L - ^PS(53.45, PSJSYSP)
  16827   "RTN","PSJ OE",46,0)
  16828    K DA,DRG, NE,PSGCF,P SGCANFL,PS GNEDFD,PSG NEF,PSGNEF D,PSGNEPR, PSGNESD,PS JACOK,PSJO E,PSJOECNT ,PSJOEPF,P SJORD,PSGO EA,PSGOEAV ,PSGOL,PSG OS,PSGON,P SGOP,PSGOR D,PSGS0XT, PSGS0Y,RCT ,ST,WD,XRE F,Z,PSJIVO RF,PSJIVPC L
  16829   "RTN","PSJ OE",47,0)
  16830    K PSGOEOR F,PSIVREA, PSJOPC,PSJ ORL,PSJORP CL,PSJORTO I,RF,WSCHA DM,PSJLM,P SJCT
  16831   "RTN","PSJ OE",48,0)
  16832    K DIU,DRG I,FLAG,FQC ,ND2,PRI,P SGOE,PSGPR I,PSGSDN,P SGOEDMR,PS GOEPR,PSGP TS,PSGTOL, PSGTOO,PSG UOW,PSJIVO F,PSJOCNT, PSJON,PSJO RQF,PSJORT OU,PSJORVP
  16833   "RTN","PSJ OE",49,0)
  16834    K PSIVENO ,PSGRMV,PS GRMVT,PSGD UR,PSGRF,N D2P1 ;*315
  16835   "RTN","PSJ OE",50,0)
  16836    G:$G(PSGP XN) ^PSGPE R1 D ENIVK V^PSGSETU
  16837   "RTN","PSJ OE",51,0)
  16838    Q
  16839   "RTN","PSJ OE",52,0)
  16840   HK ; House keeping (a  nice COBO L term)
  16841   "RTN","PSJ OE",53,0)
  16842    I PSGOP,P SGOP'=PSGP  D
  16843   "RTN","PSJ OE",54,0)
  16844    .N PSJACP F,PSJACNWP ,PSJPWD,PS JSYSL,PSJS YSW,PSJSYS W0,DFN,VAI N,VAERR S  DFN=PSGOP
  16845   "RTN","PSJ OE",55,0)
  16846    .D INP^VA DPT S PSJP WD=+VAIN(4 ) I PSJPWD  S PSJACPF =10 D WP^P SJAC D:$P( PSJSYSL,"^ ",2)]"" EN QL^PSGLW
  16847   "RTN","PSJ OE",56,0)
  16848    Q:PSGP<0
  16849   "RTN","PSJ OE",57,0)
  16850    S (DFN,PS GOP)=PSGP, X=""
  16851   "RTN","PSJ OE",58,0)
  16852    Q
  16853   "RTN","PSJ OE",59,0)
  16854   SELECT ; S elect orde r from lis t
  16855   "RTN","PSJ OE",60,0)
  16856    ;Variable  PSJOCDSC  is used in  Complex o rder dosin g checks
  16857   "RTN","PSJ OE",61,0)
  16858    N PSGLMT, PSGODDD,PS JLMQT,PSJL MFIN,PSJUD PRF,PSGRDT X,PSJOCDSC ,PSJAGYSV  K ^TMP("PS JCOM",$J), ^TMP("PSJC OM2",$J),P SJSTARI,^T MP("PSODAO C",$J),^TM P("PSJDAOC ",$J)
  16859   "RTN","PSJ OE",62,0)
  16860    K PSGDUR, PSGRMVT,PS GRMV,PSGRF ,ND2P1 ;*3 15
  16861   "RTN","PSJ OE",63,0)
  16862    S PSGONC= 1,PSGLMT=^ TMP("PSJPR O",$J,0) D  ENASR^PSG ON
  16863   "RTN","PSJ OE",64,0)
  16864    I "^"[X S  VALMQUIT= 1 Q
  16865   "RTN","PSJ OE",65,0)
  16866    S PSJLM=1 ,PSJSEL=0  F  S PSJSE L=$O(PSGOD DD(PSJSEL) ) Q:'PSJSE L!($G(Y)<0 )  F PSJSE L1=1:1:$L( PSGODDD(PS JSEL),",") -1 D
  16867   "RTN","PSJ OE",66,0)
  16868    .K PSJOCD SC
  16869   "RTN","PSJ OE",67,0)
  16870    .S PSJORD =$G(^TMP(" PSJON",$J, +$P(PSGODD D(PSJSEL), ",",PSJSEL 1))) D:PSJ ORD=+PSJOR D SELECT^P SJOEA Q:PS JORD=""!($ G(Y)<0)  Q :PSJORD=+P SJORD  D
  16871   "RTN","PSJ OE",68,0)
  16872    ..Q:('$$L S^PSSLOCK( PSGP,PSJOR D))
  16873   "RTN","PSJ OE",69,0)
  16874    ..Q:PSJOR D=+PSJORD
  16875   "RTN","PSJ OE",70,0)
  16876    ..S PSGOR D=""
  16877   "RTN","PSJ OE",71,0)
  16878    ..D DISAC TIO(PSGP,P SJORD,"")  S:PSJORD[" V" PSJORD= ON
  16879   "RTN","PSJ OE",72,0)
  16880    ..D UNL^P SSLOCK(PSG P,PSJORD)  Q:$G(Y)<0
  16881   "RTN","PSJ OE",73,0)
  16882    S VALMBCK ="Q"
  16883   "RTN","PSJ OE",74,0)
  16884    K PSJLM,P SJOCDSC
  16885   "RTN","PSJ OE",75,0)
  16886    Q
  16887   "RTN","PSJ OE",76,0)
  16888   DISACTIO(D FN,PSJORD, PSJPNV)        ; Disp lay UD ord er and all ow actions .
  16889   "RTN","PSJ OE",77,0)
  16890    ; PSJORD  - Order #_ location C ode (P:53. 1,V:55.01, U:55.06)
  16891   "RTN","PSJ OE",78,0)
  16892    ; PSJPNV  - Invoked  from Pendi ng/NV opti on; (gets  different  hidden men u)
  16893   "RTN","PSJ OE",79,0)
  16894    ; PSJDSVF Y - Flag i f non-vf o rder was e dited
  16895   "RTN","PSJ OE",80,0)
  16896    ; PSJENHO C=1 if DI, DT were di splay. Thi s will be  used by do sing OC to  check if  error mess ages shoul d display  or not
  16897   "RTN","PSJ OE",81,0)
  16898    ; PSJAGYS V=1 If UD  was edited
  16899   "RTN","PSJ OE",82,0)
  16900    ;N PSGP,P SJIVFLG,PS GSDX,PSGFD X,PSJXX1,O N55,PSJDSV FY,PSJENHO C,PSJAGYSV
  16901   "RTN","PSJ OE",83,0)
  16902    N PSGP,PS JIVFLG,PSG SDX,PSGFDX ,PSJXX1,ON 55,PSJDSVF Y,PSJENHOC ,PSIVENO
  16903   "RTN","PSJ OE",84,0)
  16904    K PSGDUR, PSGRMVT,PS GRMV,PSGRF ,ND2P1 ;*3 15
  16905   "RTN","PSJ OE",85,0)
  16906    D OLDCOM^ PSJOE0(DFN ,PSJORD)
  16907   "RTN","PSJ OE",86,0)
  16908    S PSGP=DF N D ENIV^P SJAC I PSJ ORD["V" D  EN^PSJLIOR D(DFN,PSJO RD) Q
  16909   "RTN","PSJ OE",87,0)
  16910    D GETUD^P SJLMGUD(DF N,PSJORD)
  16911   "RTN","PSJ OE",88,0)
  16912    S PSGOEAV =$P(PSJSYS P0,"^",9)& PSJSYSU
  16913   "RTN","PSJ OE",89,0)
  16914    S:$G(PSJT UD) PSGPD= $G(PSJCOI) ,PSGPDN=$$ OINAME^PSJ LMUTL(+PSG PD)
  16915   "RTN","PSJ OE",90,0)
  16916    K PSGOENG  I '$D(PSG PRF) D  Q: $G(PSGOENG )
  16917   "RTN","PSJ OE",91,0)
  16918    . I PSJOR D["U" L +^ PS(55,PSGP ,5,+PSJORD ):1 E  S P SGOENG=1
  16919   "RTN","PSJ OE",92,0)
  16920    . I PSJOR D["P" L +^ PS(53.1,+P SJORD):1 E   S PSGOEN G=1
  16921   "RTN","PSJ OE",93,0)
  16922    . I $G(PS GOENG) W ! ,"This ord er is bein g edited b y another  terminal." ,! S PSGOE NG=1 K DIR  S DIR(0)= "E" D ^DIR  K DIR Q
  16923   "RTN","PSJ OE",94,0)
  16924    S PSGACT= $$ENACTION ^PSGOE1(PS GP,PSJORD)
  16925   "RTN","PSJ OE",95,0)
  16926    I PSJORD[ "P" S PSJX X1=$G(^PS( 53.1,+PSJO RD,0)) I P SGP'=$P(PS JXX1,U,15) !(DFN'=$P( PSJXX1,U,1 5)) L -^PS (53.1,+PSJ ORD) Q
  16927   "RTN","PSJ OE",96,0)
  16928    I PSJORD[ "P" D  S P SJXX1=$P($ G(^PS(53.1 ,+PSJORD,0 )),U,9) I  $S($G(PSJI VFLG):1,$G (Y)<0:1,"P ADE"[PSJXX 1:1,1:0) L  -^PS(53.1 ,+PSJORD)  Q
  16929   "RTN","PSJ OE",97,0)
  16930    .I $P(PSJ XX1,U,9)=" N",($P(PSJ XX1,U,4)'= "U") D  Q
  16931   "RTN","PSJ OE",98,0)
  16932    .. S P("P ON")=PSJOR D,PSIVFLG= 1
  16933   "RTN","PSJ OE",99,0)
  16934    .. N ON S  ON=PSJORD  D VF^PSIV ORC2
  16935   "RTN","PSJ OE",100,0)
  16936    .I $P(PSJ XX1,U,9)=" P" D  Q
  16937   "RTN","PSJ OE",101,0)
  16938    ..S:$G(PS JTUD) $P(P SJXX1,U,4) ="U"
  16939   "RTN","PSJ OE",102,0)
  16940    ..I $P(PS JXX1,U,4)= "U" D  Q:$ G(PSJIVFLG )
  16941   "RTN","PSJ OE",103,0)
  16942    ... N VAI P S CLINIC =$G(^PS(53 .1,+PSJORD ,"DSS")),A PPT=$P(CLI NIC,"^",2) ,CLINIC=$P (CLINIC,"^ ") I $$PAT CH^XPDUTL( "SD*5.3*28 5"),$$SDIM O^SDAMA203 (CLINIC,DF N)>-1 Q
  16943   "RTN","PSJ OE",104,0)
  16944    ... Q:'PS JPDD  W !! ,"Cannot p rocess an  Out-patien t Unit Dos e order fo r ",$P($G( ^DPT(+PSGP ,0)),U) D  PAUSE^VALM 1 S PSJIVF LG=1
  16945   "RTN","PSJ OE",105,0)
  16946    ..NEW PSG RSD,PSGRSD N,PSGRFD,P SGRFDN
  16947   "RTN","PSJ OE",106,0)
  16948    ..D REQDT ^PSJLIVMD( PSJORD)
  16949   "RTN","PSJ OE",107,0)
  16950    ..I $P(PS JXX1,U,4)= "U",($G(PS GSCH)="")  W !!,"Inva lid schedu le, can't  finish thi s order" D  PAUSE^VAL M1 Q
  16951   "RTN","PSJ OE",108,0)
  16952    ..I $P(PS JXX1,U,4)= "U" N PSJL M,PSJOCFG  S PSJLM=1, PSGORD=PSJ ORD,PSJOCF G="FN UD"  D START^PS GOEF,ENSFE ^PSGOEE0(P SGP,PSGORD ) S:$G(PSJ TUD) PSJOC FG="FN UD"  D @$S($G( PSJTUD):"F INISH^PSGO EF",1:"EN^ VALM(""PSJ  LM PENDIN G EDIT"")" ) K PSJOCF G Q
  16953   "RTN","PSJ OE",109,0)
  16954    ..I $P(PS JXX1,U,4)' ="U",PSGP= $P(PSJXX1, U,15),DFN= $P(PSJXX1, U,15) S PS JLYN=PSJOR D,PSJOCFG= "FN IV" D  EN^PSJLIFN  S PSJIVFL G=1 K PSJL YN,PSJMAI, PSJOCFG
  16955   "RTN","PSJ OE",110,0)
  16956    I $G(PSIV FLG) K PSI VFLG Q
  16957   "RTN","PSJ OE",111,0)
  16958    S PSGACT= $$ENACTION ^PSGOE1(PS GP,PSJORD) ,PSGOEEF=0  D GETUD^P SJLMGUD(PS GP,PSJORD) ,ENSFE^PSG OEE0(PSGP, PSJORD),EN ^VALM("PSJ  LM UD ACT ION")
  16959   "RTN","PSJ OE",112,0)
  16960    I PSJORD[ "P" L -^PS (53.1,+PSJ ORD)
  16961   "RTN","PSJ OE",113,0)
  16962    I PSJORD[ "U" L -^PS (55,PSGP,5 ,+PSJORD)
  16963   "RTN","PSJ OE",114,0)
  16964    ;Send SN  to CPRS if  auto-veri fy OFF and  Order Set  Entry and  no 21st p iece
  16965   "RTN","PSJ OE",115,0)
  16966    S PSGOEAV =$P(PSJSYS P0,"^",9)& PSJSYSU
  16967   "RTN","PSJ OE",116,0)
  16968    I $D(PSGO ES),'PSGOE AV,$D(PSGO RD),PSGORD ["P",$P($G (^PS(53.1, +PSGORD,0) ),"^",21)' ]"" D ORSE T^PSGOETO1
  16969   "RTN","PSJ OE",117,0)
  16970    I $G(PSGO EAV),($G(P SGOES)=1)  D SETOC ;S tore aller gy for ord er set /w  auto vf 
  16971   "RTN","PSJ OE",118,0)
  16972    I '$G(PSG OEAV),($G( PSJORD)["P "),$S($G(P SJAGYSV):1 ,($G(PSJOC FG)="NEW U D"):1,1:0)  D SETOC
  16973   "RTN","PSJ OE",119,0)
  16974    D UNL^PSS LOCK(PSGP, PSJORD)
  16975   "RTN","PSJ OE",120,0)
  16976    Q
  16977   "RTN","PSJ OE",121,0)
  16978   SETOC ;
  16979   "RTN","PSJ OE",122,0)
  16980    ;RTC 1787 89 
  16981   "RTN","PSJ OE",123,0)
  16982    S ^TMP("P SODAOC",$J ,"IP IEN") =PSJORD
  16983   "RTN","PSJ OE",124,0)
  16984    D SETOC^P SJNEWOC(PS JORD)
  16985   "RTN","PSJ OE",125,0)
  16986    K ^TMP("P SODAOC",$J ),^TMP("PS JDAOC",$J) ,PSJAGYSV, PSJOCFG
  16987   "RTN","PSJ OE",126,0)
  16988    Q
  16989   "RTN","PSJ OE",127,0)
  16990   EDIT(PSGP, PSGORD,PRO MPT) ;
  16991   "RTN","PSJ OE",128,0)
  16992    N PSJOP,A NQX,PSGEDT
  16993   "RTN","PSJ OE",129,0)
  16994    S (ANQX,P SJOP)=0,PS GEDT=1
  16995   "RTN","PSJ OE",130,0)
  16996    S PSJOP=+ Y(1)
  16997   "RTN","PSJ OE",131,0)
  16998    S PSJOP=$ S(PSJOP=9: 0,PSJOP=11 :0,1:1)
  16999   "RTN","PSJ OE",132,0)
  17000    ;/RBN Beg in modific ation for  NCC moved  code to AC T^PSGOEE
  17001   "RTN","PSJ OE",133,0)
  17002    I "DE"[$$ GTSTATUS(P SGP,PSGORD ) W !,"Thi s order ma y not be e dited." D  PAUSE^VALM 1 Q
  17003   "RTN","PSJ OE",134,0)
  17004    I PSGACT' ["E" W !," This order  may not b e edited."  D PAUSE^V ALM1 Q
  17005   "RTN","PSJ OE",135,0)
  17006    N PSJEDIT O S PSJEDI TO=1
  17007   "RTN","PSJ OE",136,0)
  17008    S PSJAGYS V=1 ;Flag  to store a llergy dat a in 100.0 5.
  17009   "RTN","PSJ OE",137,0)
  17010    S PSGNEDF D="" D HOL DHDR,@$S(' PROMPT:"EN EFA2^PSGON ",1:"ENEFA ^PSGON") I  'Y D ABOR T^PSGOEE Q
  17011   "RTN","PSJ OE",138,0)
  17012    I PSGORD[ "P" D ENF^ PSGOEE Q
  17013   "RTN","PSJ OE",139,0)
  17014    D ACT^PSG OEE
  17015   "RTN","PSJ OE",140,0)
  17016    Q
  17017   "RTN","PSJ OE",141,0)
  17018   RENEW(PSGP ,PSGORD) ;
  17019   "RTN","PSJ OE",142,0)
  17020    ;PSJOCFG  - If defin ed, it's f or new ord er, renew  or copy. ^ PSJOCDSD u sing this  flag to no t display  drug error .
  17021   "RTN","PSJ OE",143,0)
  17022    ;/RJS Beg in modific ations for  PSJ*5.0*3 27
  17023   "RTN","PSJ OE",144,0)
  17024    I $$ISCLO Z^PSJCLOZ( ,,PSGP,+PS GORD) D  Q
  17025   "RTN","PSJ OE",145,0)
  17026    .W !,"Clo zapine ord ers cannot  be renewe d."
  17027   "RTN","PSJ OE",146,0)
  17028    .W !,"No  order ente red!"
  17029   "RTN","PSJ OE",147,0)
  17030    .D PAUSE^ VALM1
  17031   "RTN","PSJ OE",148,0)
  17032    ;/RJS End  modificat ions for P SJ*5.0*327
  17033   "RTN","PSJ OE",149,0)
  17034    NEW PSJOC FG
  17035   "RTN","PSJ OE",150,0)
  17036    S PSJOCFG ="RENEW UD "
  17037   "RTN","PSJ OE",151,0)
  17038    D HOLDHDR
  17039   "RTN","PSJ OE",152,0)
  17040    I 'PSJSYS U,$P($G(^P S(55,PSGP, 5,+PSGORD, 4)),U,15), $P($G(^(4) ),U,16) W  !!,"This o rder is al ready mark ed for ren ewal!" D P AUSE^VALM1  S VALMBCK ="R" Q
  17041   "RTN","PSJ OE",153,0)
  17042    I 'PSGRRF  D ^PSGOER  K PSJOCFG  Q
  17043   "RTN","PSJ OE",154,0)
  17044    D ^PSGOER I
  17045   "RTN","PSJ OE",155,0)
  17046    K PSJOCFG
  17047   "RTN","PSJ OE",156,0)
  17048    Q
  17049   "RTN","PSJ OE",157,0)
  17050   GTSTATUS(D FN,ON)   ;
  17051   "RTN","PSJ OE",158,0)
  17052    I ON["P"  Q $P($G(^P S(53.1,+ON ,0)),U,9)
  17053   "RTN","PSJ OE",159,0)
  17054    I ON["U"  Q $P($G(^P S(55,DFN,5 ,+ON,0)),U ,9)
  17055   "RTN","PSJ OE",160,0)
  17056    Q $P($G(^ PS(55,DFN, "IV",+ON,0 )),U,17)
  17057   "RTN","PSJ OE",161,0)
  17058   DC(DFN,PSJ ORD) ; DC  IV, UD, or  pending o rders.
  17059   "RTN","PSJ OE",162,0)
  17060    D HOLDHDR
  17061   "RTN","PSJ OE",163,0)
  17062    S X=$$GTS TATUS(DFN, PSJORD) I  X="D"!(X=" DE")!(X="R ") W !,$S( X="R":"Thi s order ha s a pendin g renewal  and cannot  be DISCON TINUED.",1 :"This ord er has alr eady been  DISCONTINU ED.") D PA USE^VALM1  Q
  17063   "RTN","PSJ OE",164,0)
  17064    D ENO^PSG OEC(DFN,PS JORD) ;,GE TUD^PSJLMG UD(DFN,PSJ ORD),INIT^ PSJLMUDE(D FN,PSJORD)  S VALMBCK ="Q"
  17065   "RTN","PSJ OE",165,0)
  17066    S VALMBCK ="Q"
  17067   "RTN","PSJ OE",166,0)
  17068    Q
  17069   "RTN","PSJ OE",167,0)
  17070   HOLD(DFN,P SJORD) ; C hange orde r's status  from ACTI VE<->HOLD
  17071   "RTN","PSJ OE",168,0)
  17072    D HOLDHDR
  17073   "RTN","PSJ OE",169,0)
  17074    I PSJORD[ "V" D H^PS IVOPT(DFN, PSJORD,P(1 7),P(3))
  17075   "RTN","PSJ OE",170,0)
  17076    I PSJORD' ["V" D H^P SGOE1(DFN, PSJORD)
  17077   "RTN","PSJ OE",171,0)
  17078    D GETUD^P SJLMGUD(DF N,PSJORD), INIT^PSJLM UDE(DFN,PS JORD) S PS GACT=$$ENA CTION^PSGO E1(DFN,PSJ ORD),VALMB CK="R"
  17079   "RTN","PSJ OE",172,0)
  17080    Q
  17081   "RTN","PSJ OE",173,0)
  17082   COPY(PSGP, PSGORD)  ;  Copy an o rder (does  not disco ntinue ori ginal orde r)
  17083   "RTN","PSJ OE",174,0)
  17084    NEW PSJOC FG
  17085   "RTN","PSJ OE",175,0)
  17086    I $D(PSGC OPY) W !!, "You canno t copy the  order at  this time"  D PAUSE^V ALM1 Q
  17087   "RTN","PSJ OE",176,0)
  17088    I PSGORD[ "P" W !!," You cannot  copy this  "_$S($G(P SGSTAT)]"" :PSGSTAT,1 :"PENDING  IV")_" ord er." D PAU SE^VALM1 Q
  17089   "RTN","PSJ OE",177,0)
  17090    I PSGORD[ "V" D  Q
  17091   "RTN","PSJ OE",178,0)
  17092    .I $G(PSI VCOPY) W ! !,"You can not copy t he order a t this tim e" D PAUSE ^VALM1 Q
  17093   "RTN","PSJ OE",179,0)
  17094    .S PSJOCF G="COPY IV "
  17095   "RTN","PSJ OE",180,0)
  17096    .D COPY^P SIVOD(PSGP ,PSGORD) K  PSJOCFG Q
  17097   "RTN","PSJ OE",181,0)
  17098    Q:'$$HIDD EN^PSJLMUT L("COPY")
  17099   "RTN","PSJ OE",182,0)
  17100    D ^PSJHVA RS
  17101   "RTN","PSJ OE",183,0)
  17102    I $P($G(^ PS(55,PSGP ,5,+PSGORD ,.2)),U,4) ="D",'$P($ G(^(4)),"^ ",3) W !!, "Nurse ver ified orde rs with a  priority o f DONE may  not be Co pied." D P AUSE^VALM1  Q
  17103   "RTN","PSJ OE",184,0)
  17104    S PSJOCFG ="COPY UD"
  17105   "RTN","PSJ OE",185,0)
  17106    S PSGOEAV =$P(PSJSYS P0,U,9)&PS JSYSU
  17107   "RTN","PSJ OE",186,0)
  17108    S PSGCOPY =1,ANQX=0
  17109   "RTN","PSJ OE",187,0)
  17110    D FULL^VA LM1,^PSGOD
  17111   "RTN","PSJ OE",188,0)
  17112    ;/RBN Beg in modific ations PSJ *5.0*327
  17113   "RTN","PSJ OE",189,0)
  17114    I $G(ANQX ) K PSGCOP Y Q
  17115   "RTN","PSJ OE",190,0)
  17116    ;/RBN End  modificat ions PSJ*5 .0*327
  17117   "RTN","PSJ OE",191,0)
  17118    S VALMBCK ="R"
  17119   "RTN","PSJ OE",192,0)
  17120    K PSGCOPY ,PSJOCFG
  17121   "RTN","PSJ OE",193,0)
  17122    S PSGACT= $$ENACTION ^PSGOE1(PS GP,PSGORD)  ; resets  PSGACT aft er copy
  17123   "RTN","PSJ OE",194,0)
  17124    I $G(PSGP XN) N PSGT MPXN S PSG TMPXN=PSGP XN
  17125   "RTN","PSJ OE",195,0)
  17126    D RESTORE ^PSJHVARS  I $G(PSGTM PXN) S PSG PXN=PSGTMP XN
  17127   "RTN","PSJ OE",196,0)
  17128    Q
  17129   "RTN","PSJ OE",197,0)
  17130   UPDATE ; R efresh arr ay, action s, & displ ay.
  17131   "RTN","PSJ OE",198,0)
  17132    D GETUD^P SJLMGUD(DF N,ON),INIT ^PSJLMUDE( DFN,ON) S  VALMBCK="R "
  17133   "RTN","PSJ OE",199,0)
  17134    Q
  17135   "RTN","PSJ OE",200,0)
  17136   FINISH ;
  17137   "RTN","PSJ OE",201,0)
  17138    D FINISH^ PSGOEF,PAU SE^VALM1
  17139   "RTN","PSJ OE",202,0)
  17140    Q
  17141   "RTN","PSJ OE",203,0)
  17142   LOG(DFN,PS GORD)         ;
  17143   "RTN","PSJ OE",204,0)
  17144    D FULL^VA LM1,ENLM^P SGOEL(DFN, PSGORD),PA USE^VALM1  S VALMBCK= "R"
  17145   "RTN","PSJ OE",205,0)
  17146    Q
  17147   "RTN","PSJ OE",206,0)
  17148   NEWSEL ;
  17149   "RTN","PSJ OE",207,0)
  17150    N PSGLMT, PSGODDD,PS JLMQT,PSJL MFIN,PSJUD PRF,PSGRDT X,PSJOCDSC ,PSJAGYSV  K ^TMP("PS JCOM",$J), ^TMP("PSJC OM2",$J),^ TMP("PSODA OC",$J),^T MP("PSJDAO C",$J)
  17151   "RTN","PSJ OE",208,0)
  17152    K PSGRMVT ,PSGRMV,PS GDUR,PSGRF ,ND2P1 ;*3 15
  17153   "RTN","PSJ OE",209,0)
  17154    ;; START  NCC REMEDI ATION >> 3 27*RJS  ;  Freeze hea der text w hile proce ssing orde r actions
  17155   "RTN","PSJ OE",210,0)
  17156    S IOTM=VA LM("TM"),I OBM=IOSL W  IOSC W @I OSTBM W IO RC
  17157   "RTN","PSJ OE",211,0)
  17158    ;; END NC C REMEDIAT ION << 327 *RJS
  17159   "RTN","PSJ OE",212,0)
  17160    S X=$P(XQ ORNOD(0)," =",2)
  17161   "RTN","PSJ OE",213,0)
  17162    S PSGONC= 1,PSGLMT=^ TMP("PSJPR O",$J,0)
  17163   "RTN","PSJ OE",214,0)
  17164    D ENCHK^P SGON I '$O (PSGODDD(0 )) S VALMQ UIT=1 Q
  17165   "RTN","PSJ OE",215,0)
  17166    S PSJLM=1 ,PSJSEL=0  F  S PSJSE L=$O(PSGOD DD(PSJSEL) ) Q:'PSJSE L  F PSJSE L1=1:1:$L( PSGODDD(PS JSEL),",") -1 D
  17167   "RTN","PSJ OE",216,0)
  17168    .K PSJOCD SC,PSGDRG
  17169   "RTN","PSJ OE",217,0)
  17170    .S PSJORD =$G(^TMP(" PSJON",$J, +$P(PSGODD D(PSJSEL), ",",PSJSEL 1))) D:PSJ ORD=+PSJOR D SELECT^P SJOEA
  17171   "RTN","PSJ OE",218,0)
  17172    .Q:PSJORD =+PSJORD 
  17173   "RTN","PSJ OE",219,0)
  17174    .Q:PSJORD =""!($G(Y) <0)  Q:('$ $LS^PSSLOC K(PSGP,PSJ ORD))  D
  17175   "RTN","PSJ OE",220,0)
  17176    ..S PSGOR D=""
  17177   "RTN","PSJ OE",221,0)
  17178    ..S ON=PS JORD
  17179   "RTN","PSJ OE",222,0)
  17180    ..D DISAC TIO(PSGP,P SJORD,$G(P SJPNV)) S: PSJORD["V"  PSJORD=ON
  17181   "RTN","PSJ OE",223,0)
  17182    ..D UNL^P SSLOCK(PSG P,PSJORD)
  17183   "RTN","PSJ OE",224,0)
  17184    ..I $G(PS JNOL) K PS JNOL I $D( ON),ON'=PS JORD D UNL ^PSSLOCK(P SGP,ON)
  17185   "RTN","PSJ OE",225,0)
  17186    ..Q:$G(Y) <0
  17187   "RTN","PSJ OE",226,0)
  17188    I '$G(PSG OEAV),($G( PSJORD)["P "),$G(PSJA GYSV) D
  17189   "RTN","PSJ OE",227,0)
  17190    .;RTC 178 789 
  17191   "RTN","PSJ OE",228,0)
  17192    .S ^TMP(" PSODAOC",$ J,"IP IEN" )=PSJORD
  17193   "RTN","PSJ OE",229,0)
  17194    .D SETOC^ PSJNEWOC(P SJORD)
  17195   "RTN","PSJ OE",230,0)
  17196    .K ^TMP(" PSODAOC",$ J),^TMP("P SJDAOC",$J ),PSJAGYSV
  17197   "RTN","PSJ OE",231,0)
  17198    S VALMBCK ="Q"
  17199   "RTN","PSJ OE",232,0)
  17200    K PSJLM,P SJOCDSC
  17201   "RTN","PSJ OE",233,0)
  17202    Q
  17203   "RTN","PSJ OE",234,0)
  17204   HOLDHDR ;  Freeze hea der text w hile proce ssing orde r actions
  17205   "RTN","PSJ OE",235,0)
  17206    I $D(VALM ("TM")) S  IOTM=VALM( "TM"),IOBM =IOSL W IO SC W @IOST BM W IORC
  17207   "RTN","PSJ OE",236,0)
  17208    Q
  17209   "RTN","PSJ OE",237,0)
  17210   LOCKERR ;
  17211   "RTN","PSJ OE",238,0)
  17212    W !!,$C(7 ),"You are  entering  or editing  an Inpati ent Medica tion order  in anothe r session. ",!,"Only  one order  entry/edit  session i s allowed  for a user  at a time .",!! N DI R S DIR(0) ="E" D ^DI R
  17213   "RTN","PSJ OE",239,0)
  17214    Q
  17215   "RTN","PSJ OE",240,0)
  17216   FLAG(DFN,P SJORD) ;Fl ag order t hrough CPR S entry po int.
  17217   "RTN","PSJ OE",241,0)
  17218    N ORIFN,N ODE0
  17219   "RTN","PSJ OE",242,0)
  17220    S NODE0=$ S(PSJORD[" V":$G(^PS( 55,DFN,"IV ",+PSJORD, 0)),PSJORD ["U":$G(^P S(55,DFN,5 ,+PSJORD,0 )),1:^PS(5 3.1,+PSJOR D,0))
  17221   "RTN","PSJ OE",243,0)
  17222    S ORIFN=$ P(NODE0,"^ ",21)
  17223   "RTN","PSJ OE",244,0)
  17224    D EN1^ORC FLAG(ORIFN )
  17225   "RTN","PSJ OE",245,0)
  17226    D PAUSE^V ALM1
  17227   "RTN","PSJ OE",246,0)
  17228    Q
  17229   "RTN","PSJ OE",247,0)
  17230   COMPLEX(DF N,ON) ;
  17231   "RTN","PSJ OE",248,0)
  17232    N NDP2,CO M
  17233   "RTN","PSJ OE",249,0)
  17234    S NDP2=$S (ON["P":$G (^PS(53.1, +ON,.2)),O N["U":$G(^ PS(55,DFN, 5,+ON,.2)) ,ON["V":$G (^PS(55,DF N,"IV",+ON ,.2)),1:"" )
  17235   "RTN","PSJ OE",250,0)
  17236    S COM=$P( NDP2,"^",8 ) I COM Q  1
  17237   "RTN","PSJ OE",251,0)
  17238    Q 0
  17239   "RTN","PSJ OE",252,0)
  17240   CLOZSND ;  SEND CLOZA PINE OVERR IDE MESSAG E AND ORDE R TO HINES  DB
  17241   "RTN","PSJ OE",253,0)
  17242    ;; START  NCC REMEDI ATION >> 3 27*RJS
  17243   "RTN","PSJ OE",254,0)
  17244    D PSJFILE ^PSJCLOZ(D FN),INPSND ^YSCLTST5
  17245   "RTN","PSJ OE",255,0)
  17246    ;; END NC C REMEDIAT ION << 327 *RJS
  17247   "RTN","PSJ OE",256,0)
  17248    Q
  17249   "RTN","PSJ OE1")
  17250   0^20^B3867 1512
  17251   "RTN","PSJ OE1",1,0)
  17252   PSJOE1 ;BI R/CML3-UD  OE FOR COM BINED OE ; Jul 26, 20 17@18:04:0 2
  17253   "RTN","PSJ OE1",2,0)
  17254    ;;5.0;INP ATIENT MED ICATIONS;* *2,7,25,30 ,47,56,64, 179,181,25 2,281,315, 338,327**; 16 DEC 97; Build 64
  17255   "RTN","PSJ OE1",3,0)
  17256    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  17257   "RTN","PSJ OE1",4,0)
  17258    ; Referen ce to ^DIC N is suppo rted by DB IA# 10009
  17259   "RTN","PSJ OE1",5,0)
  17260    ; Referen ce to ^VAL M is suppo rted by DB IA# 10118
  17261   "RTN","PSJ OE1",6,0)
  17262    ; Referen ce to ^TMP ("PSODAOC" ,$J suppor ted by DBI A 6071
  17263   "RTN","PSJ OE1",7,0)
  17264    ;
  17265   "RTN","PSJ OE1",8,0)
  17266    S PC=0 G  AD
  17267   "RTN","PSJ OE1",9,0)
  17268    ;
  17269   "RTN","PSJ OE1",10,0)
  17270   EN ;
  17271   "RTN","PSJ OE1",11,0)
  17272    S PC=0
  17273   "RTN","PSJ OE1",12,0)
  17274    ;
  17275   "RTN","PSJ OE1",13,0)
  17276   AD ; Ask D rug
  17277   "RTN","PSJ OE1",14,0)
  17278    ;PSJOCFG  - If defin ed, it's f or new ord er, renew  or copy. ^ PSJOCDSD u sing this  flag to no t display  drug error .
  17279   "RTN","PSJ OE1",15,0)
  17280    K PSJOCFG ,PSGDUR,PS GRMVT,PSGR MV,PSGRF,N D2P1,ANQX  ;*315
  17281   "RTN","PSJ OE1",16,0)
  17282    N PSJNORD ,PSGORQF,P SGSDX,PSGF DX,PSGNEFD O,PSGEDTOI ,PSJOCFG,P SGDREQ S P SJOCFG="NE W UD" S PS JNORD=1 I  $D(VALM("T M")) S IOT M=VALM("TM "),IOBM=IO SL W IOSC, @IOSTBM,IO RC
  17283   "RTN","PSJ OE1",17,0)
  17284    K PSGORQF
  17285   "RTN","PSJ OE1",18,0)
  17286    D ^PSGOE7
  17287   "RTN","PSJ OE1",19,0)
  17288    I $G(PSGO RQF) S PSJ ORQF=1 G D ONE
  17289   "RTN","PSJ OE1",20,0)
  17290    S PC=1,PS JORQF=0 I  X?1"S."1.E  D ^PSGOES  G AD
  17291   "RTN","PSJ OE1",21,0)
  17292    D ^PSGOE4 :'$P(PSJSY SP0,"^",12 ),^PSGOE3: $P(PSJSYSP 0,"^",12)
  17293   "RTN","PSJ OE1",22,0)
  17294    G:$G(PSGO ROE1)=1 AD
  17295   "RTN","PSJ OE1",23,0)
  17296    K PSGEFN, PSGOEEF,PS GOEE,PSGOE OS S PSGEF N="1:13" F  X=1:1:13  S PSGEFN(X )=""
  17297   "RTN","PSJ OE1",24,0)
  17298    S PSGPDN= $$OINAME^P SJLMUTL(PS GPDRG),PSG PD=PSGPDRG ,PSGOINST= "",PSGSDN= $$ENDD^PSG MI(PSGNESD )_U_$$ENDT C^PSGMI(PS GNESD),PSG FDN=$$ENDD ^PSGMI(PSG NEFD)_U_$$ ENDTC^PSGM I(PSGNEFD)
  17299   "RTN","PSJ OE1",25,0)
  17300    S PSGAT=P SGS0Y,PSGL IN=$$ENDD^ PSGMI(PSGD T)_U_$$END TC^PSGMI(P SGDT),PSGL I=PSGDT,PS GEBN=$$ENN PN^PSGMI(D UZ),PSGSTA T=$S(PSGOE AV:"ACTIVE ",1:"NON-V ERIFIED")
  17301   "RTN","PSJ OE1",26,0)
  17302    D CHK^PSG OEV("^^"_P SGMR_"^^^^ "_PSGST,PS GPDRG_U_PS GDO,PSGSCH _U_PSGNESD _"^^"_PSGN EFD)
  17303   "RTN","PSJ OE1",27,0)
  17304    S PSGSD=P SGNESD,PSG FD=PSGNEFD
  17305   "RTN","PSJ OE1",28,0)
  17306    K PSJACEP T S VALMBC K="Q" D:$D (Y) EN^VAL M("PSJU LM  ACCEPT")
  17307   "RTN","PSJ OE1",29,0)
  17308    I $G(PSJA CEPT)=1 D   I $G(ANQX ) D DONE G  AD
  17309   "RTN","PSJ OE1",30,0)
  17310    . D OC
  17311   "RTN","PSJ OE1",31,0)
  17312    . ;D:'$G( PSGORQF) I N^PSJOCDS( $G(PSGORD) ,"UD",+$G( PSGDRG))
  17313   "RTN","PSJ OE1",32,0)
  17314    ;If inter vention is  not log t hen quit
  17315   "RTN","PSJ OE1",33,0)
  17316    I $G(PSGO RQF)=1 S P SJACEPT=0
  17317   "RTN","PSJ OE1",34,0)
  17318    S PSJNOO= -1 I $G(PS JACEPT)=1  S PSJNOO=$ $ENNOO^PSJ UTL5("N")
  17319   "RTN","PSJ OE1",35,0)
  17320    I $G(PSJN OO)<0 K PS JACEPT W ! ,"No order  created."  G AD
  17321   "RTN","PSJ OE1",36,0)
  17322    K PSGOEE  D ^PSGOETO  S PSJORD= PSGORD
  17323   "RTN","PSJ OE1",37,0)
  17324    S ^TMP("P SODAOC",$J ,"IP IEN") =PSGORD
  17325   "RTN","PSJ OE1",38,0)
  17326    ;RTC 1787 46 - Don't  store all ergy here.
  17327   "RTN","PSJ OE1",39,0)
  17328    ;D SETOC^ PSJNEWOC(P SGORD)
  17329   "RTN","PSJ OE1",40,0)
  17330    I PSGOEAV  D  G AD
  17331   "RTN","PSJ OE1",41,0)
  17332    .;; START  NCC REMED IATION >>  327*RJS
  17333   "RTN","PSJ OE1",42,0)
  17334    .I $$ISCL OZ^PSJCLOZ (,PSGPD) D
  17335   "RTN","PSJ OE1",43,0)
  17336    ..N DIE,D A,DR S DIE ="^PS(55," _PSGP_",5, ",DA=+$G(P SGORD),DA( 1)=PSGP,DR ="3001//// "
  17337   "RTN","PSJ OE1",44,0)
  17338    ..I $G(PS GNTDD) S D R=DR_PSGNT DD
  17339   "RTN","PSJ OE1",45,0)
  17340    ..E  I $G (PSGETDD)  S DR=DR_PS GETDD
  17341   "RTN","PSJ OE1",46,0)
  17342    ..E  I $G (PSGCTDD)  S DR=DR_PS GCTDD
  17343   "RTN","PSJ OE1",47,0)
  17344    ..E  I $D (^TMP($J," PSGCLOZ",P SGP,+$G(PS GORD),"SAN D")) S DR= DR_$G(^TMP ($J,"PSGCL OZ",PSGP,+ $G(PSGORD) ,"SAND"))  K ^TMP($J, "PSGCLOZ", PSGP,+$G(P SGORD),"SA ND")
  17345   "RTN","PSJ OE1",48,0)
  17346    ..D ^DIE
  17347   "RTN","PSJ OE1",49,0)
  17348    ..D CLOZS ND^PSJOE ;  SEND OVER RIDE MESSA GE & XTMP  TRANSACTIO N DATA
  17349   "RTN","PSJ OE1",50,0)
  17350    .;; END N CC REMEDIA TION >> 32 7*RJS
  17351   "RTN","PSJ OE1",51,0)
  17352    . D SETOC ^PSJNEWOC( PSGORD) ;R TC 17874
  17353   "RTN","PSJ OE1",52,0)
  17354    .I '$D(PS GOEE),+PSJ SYSU=3 D E N^PSGPEN(P SGORD)
  17355   "RTN","PSJ OE1",53,0)
  17356    S PSGOEEF =0 D GETUD ^PSJLMGUD( PSGP,PSGOR D),ENSFE^P SGOEE0(PSG P,PSGORD), ^PSGOE1,EN ^VALM("PSJ  LM UD ACT ION")
  17357   "RTN","PSJ OE1",54,0)
  17358    ;RTC 1787 46 - store  allergy i f not veri fy the new ly created  order.
  17359   "RTN","PSJ OE1",55,0)
  17360    I ($G(PSG ORD)["P"), ($P($G(^PS (53.1,+PSG ORD,0)),U, 9)="N"),($ G(PSJOCFG) ="NEW UD")  D SETOC^P SJNEWOC(PS GORD)
  17361   "RTN","PSJ OE1",56,0)
  17362    G AD
  17363   "RTN","PSJ OE1",57,0)
  17364    Q
  17365   "RTN","PSJ OE1",58,0)
  17366   OC ;
  17367   "RTN","PSJ OE1",59,0)
  17368    NEW PSJDD ,PSJALLGY, PSJALGY1
  17369   "RTN","PSJ OE1",60,0)
  17370    K PSGORQF
  17371   "RTN","PSJ OE1",61,0)
  17372    ;; START  NCC REMEDI ATION >> 3 27*RJS
  17373   "RTN","PSJ OE1",62,0)
  17374    N CLOZFLG  S CLOZFLG =$$ISCLOZ^ PSJCLOZ(,P SGPD) I CL OZFLG D  Q :$G(ANQX)
  17375   "RTN","PSJ OE1",63,0)
  17376    .S DIR(0) ="N^12.5:3 000:1",DIR ("A")="CLO ZAPINE dos age (mg/da y) ? " D ^ DIR K DIR  I $D(DIRUT ) S (CHK,A NQX)=1 Q
  17377   "RTN","PSJ OE1",64,0)
  17378    .S (PSGNT DD,PSODAND )=X,PSGDN= $P(CLOZFLG ,U,2)
  17379   "RTN","PSJ OE1",65,0)
  17380    ;; END NC C REMEDIAT ION >> 327 *RJS
  17381   "RTN","PSJ OE1",66,0)
  17382    D FULL^VA LM1
  17383   "RTN","PSJ OE1",67,0)
  17384    S PSJDD=+ $$DD53P45^ PSJMISC()  I 'PSJDD S  PSGORQF=1  Q
  17385   "RTN","PSJ OE1",68,0)
  17386    I +$G(PSG EDTOI) D
  17387   "RTN","PSJ OE1",69,0)
  17388    . S PSJAL GY1=1
  17389   "RTN","PSJ OE1",70,0)
  17390    . D ENDDC ^PSGSICHK( $G(PSGP),P SJDD)
  17391   "RTN","PSJ OE1",71,0)
  17392    D:'$G(PSG ORQF) IN^P SJOCDS($G( PSGORD),"U D",PSJDD)
  17393   "RTN","PSJ OE1",72,0)
  17394    Q
  17395   "RTN","PSJ OE1",73,0)
  17396   EDIT(PROMP T) ;
  17397   "RTN","PSJ OE1",74,0)
  17398    ; Edit fi elds in a  UD order.
  17399   "RTN","PSJ OE1",75,0)
  17400    ; PROMPT= 0 - Select  fields to  edit by n umber.
  17401   "RTN","PSJ OE1",76,0)
  17402    ; PROMPT= 1 - Prompt  to select  fields fo r editing.
  17403   "RTN","PSJ OE1",77,0)
  17404    ;
  17405   "RTN","PSJ OE1",78,0)
  17406    ;* D @$S( 'PROMPT:"E NEFA2^PSGO N",1:"ENEF A^PSGON")  Q:'Y  S PS GOEEG=3 D  EDIT^PSGOE E ;$S(PSGO EEWF[53.1: 3,1:5) D:Y  EDIT^PSGO EE
  17407   "RTN","PSJ OE1",79,0)
  17408    D @$S('PR OMPT:"ENEF A2^PSGON", 1:"ENEFA^P SGON") Q:' Y  S:$G(PS JNEWOE) PS GOEEWF="^P S(53.1," S  PSGOEEG=$ S('$D(PSGO EEWF):3,PS GOEEWF[53. 1:3,1:5) D  EDIT^PSGO EE
  17409   "RTN","PSJ OE1",80,0)
  17410    I $G(PSJN EWOE) S PS GOEENO=0,D R="",VALMB CK="R"
  17411   "RTN","PSJ OE1",81,0)
  17412    I '$G(PSJ NEWOE) D E NNOU^PSGOE E0 I 'PSGO EENO,DR=""  S VALMBCK ="R" Q
  17413   "RTN","PSJ OE1",82,0)
  17414    I 'PSGOEE NO,$D(PSGO ES) D ENNO U^PSGOEE0   ; only up date on or der sets
  17415   "RTN","PSJ OE1",83,0)
  17416    ;*179 No  longer cal l CKDT^PSG OEE from h ere.
  17417   "RTN","PSJ OE1",84,0)
  17418    ;I 'PSGOE ENO,$G(PSG PDNX)=1 D  CKDT^PSGOE E
  17419   "RTN","PSJ OE1",85,0)
  17420    I $G(PSGO EER)["101^ PSGOE8" S  PSGEDTOI=1
  17421   "RTN","PSJ OE1",86,0)
  17422    K VALMSG  I PSGOEENO  D
  17423   "RTN","PSJ OE1",87,0)
  17424    .S VALMSG ="This cha nge will c ause a new  order to  be created ." D GTSTA TUS^PSGOEE ,CHKDD^PSG OEE
  17425   "RTN","PSJ OE1",88,0)
  17426    .S PSGEBN =$$ENNPN^P SGMI(DUZ), PSGLIN=$$E NDD^PSGMI( PSGDT)_U_$ $ENDTC^PSG MI(PSGDT), PSGLI=PSGD T
  17427   "RTN","PSJ OE1",89,0)
  17428    D CHK^PSG OEV("^^"_P SGMR_"^^^^ "_PSGST,PS GPDRG_U_PS GDO,PSGSCH _U_PSGSD_" ^^"_PSGFD)
  17429   "RTN","PSJ OE1",90,0)
  17430    D INIT^PS JLMUDE(PSG P,$G(PSGOR D))
  17431   "RTN","PSJ OE1",91,0)
  17432    Q
  17433   "RTN","PSJ OE1",92,0)
  17434   DONE ;
  17435   "RTN","PSJ OE1",93,0)
  17436    K %,DA,DI C,DIE,DR,D RG,DRGN,DR GO,ND,OC,O RIFN,ORIT, ORPK,ORSTO P,ORSTRT,O RSTS,ORTX, PC,PSGDO,P SGMR,PSGMR N,PSGNEDFD ,PSGNEFD,P SGNESD,PSG OES,PSGORO E1,PSGORD, PSGS0XT,PS GS0Y,PSGSC H,PSGSI,PS GX,Y,Z
  17437   "RTN","PSJ OE1",94,0)
  17438    K PSGEDTO I,PSJOCFG, PSGDUR,PSG RMVT,PSGRM V,PSGRF,ND 2,ND2P1 ;* 315
  17439   "RTN","PSJ OE1",95,0)
  17440    Q
  17441   "RTN","PSJ OE1",96,0)
  17442    ;
  17443   "RTN","PSJ OE1",97,0)
  17444   GDO ;
  17445   "RTN","PSJ OE1",98,0)
  17446    W !!,"Dru g is not f ound in Fo rmulary Li st." F  S  %=1 W !,"W ould you l ike to try  to search  the list  again" D Y N^DICN Q:%   D TAM
  17447   "RTN","PSJ OE1",99,0)
  17448    Q:%<2
  17449   "RTN","PSJ OE1",100,0 )
  17450   FTD ;
  17451   "RTN","PSJ OE1",101,0 )
  17452    R !!,"Ent er FREE TE XT DRUG: " ,PSGDRGN:D TIME E  W  $C(7) S PS GDRGN="^"  Q
  17453   "RTN","PSJ OE1",102,0 )
  17454    Q:"^"[PSG DRGN  S X= $S(PSGDRGN '?.ANP:"Co ntrol char acter(s)", PSGDRGN["^ ":"Up-arro w ('^') in  text",$L( PSGDRGN)>3 9:"Respons e longer t han 39 cha racters",1 :"") I X]" " W $C(7), "  ??",!?2 ,"(",X," n ot allowed .)" G FTD
  17455   "RTN","PSJ OE1",103,0 )
  17456    Q:PSGDRGN '?1."?"
  17457   "RTN","PSJ OE1",104,0 )
  17458    W !!?2,"E NTER DRUG  ORDERED (1 -39 CHARAC TERS).",!? 2,"Since t he drug ca nnot be fo und in the  DRUG file , enter th e drug nam e here",!, "exactly a s ordered.   Press th e RETURN k ey (or ent er an '^')  to skip o ver this", !,"drug, o r to again  search th e"
  17459   "RTN","PSJ OE1",105,0 )
  17460    W " DRUG  file for t his one."  G FTD
  17461   "RTN","PSJ OE1",106,0 )
  17462    ;
  17463   "RTN","PSJ OE1",107,0 )
  17464   TAM ; Try  Again Mess age
  17465   "RTN","PSJ OE1",108,0 )
  17466    W !!,"  E nter a 'Y'  to try ag ain to fin d the drug  ordered f rom the Fo rmulary.   (The",!,"o rder canno t become a ctive unti l a Formul ary drug h as been en tered.)  E nter 'N'", !,"to ente r the drug  ordered a s free tex t for late r referenc e."
  17467   "RTN","PSJ OE1",109,0 )
  17468    W "  Ente r '^' to e xit.",! Q
  17469   "RTN","PSJ OEA")
  17470   0^36^B3215 4460
  17471   "RTN","PSJ OEA",1,0)
  17472   PSJOEA ;BI R/MLM-INPA TIENT ORDE R ENTRY ;J ul 26, 201 7@18:04:02
  17473   "RTN","PSJ OEA",2,0)
  17474    ;;5.0;INP ATIENT MED ICATIONS;* *110,127,1 33,167,171 ,254,315,3 27**;16 DE C 97;Build  64
  17475   "RTN","PSJ OEA",3,0)
  17476    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  17477   "RTN","PSJ OEA",4,0)
  17478    ; Referen ce to ^PS( 55 is supp orted by D BIA #2191.
  17479   "RTN","PSJ OEA",5,0)
  17480    ; Referen ce to EN^V ALM is sup ported by  DBIA #1011 8.
  17481   "RTN","PSJ OEA",6,0)
  17482    ; Referen ce to ^PSS LOCK is su pported by  DBIA #278 9
  17483   "RTN","PSJ OEA",7,0)
  17484    ; Referen ce to ^DPT  is suppor ted by DBI A #10035.
  17485   "RTN","PSJ OEA",8,0)
  17486    ; Referen ce to SDIM O^SDAMA203  is suppor ted by DBI A #4133.
  17487   "RTN","PSJ OEA",9,0)
  17488    ;
  17489   "RTN","PSJ OEA",10,0)
  17490   LOCK(DFN,P SJORD) ; C heck to se e if the o rder is al ready lock ed
  17491   "RTN","PSJ OEA",11,0)
  17492    N Q S Q=0
  17493   "RTN","PSJ OEA",12,0)
  17494    I PSJORD= +PSJORD N  PSJO S PSJ O=0 F  S P SJO=$O(^PS (53.1,"ACX ",PSJORD,P SJO)) Q:'P SJO  S Q=$ $LS^PSSLOC K(DFN,PSJO _"P") I 'Q  Q
  17495   "RTN","PSJ OEA",13,0)
  17496    I Q Q 1
  17497   "RTN","PSJ OEA",14,0)
  17498    Q 0
  17499   "RTN","PSJ OEA",15,0)
  17500    ;
  17501   "RTN","PSJ OEA",16,0)
  17502   SELECT ;
  17503   "RTN","PSJ OEA",17,0)
  17504    N PSJCLIN ,O
  17505   "RTN","PSJ OEA",18,0)
  17506    Q:PSJORD= ""!($G(Y)< 0)  Q:('$$ LOCK^PSJOE A(PSGP,PSJ ORD))
  17507   "RTN","PSJ OEA",19,0)
  17508    N PSJO S  PSJO=0 F   S PSJO=$O( ^PS(53.1," ACX",PSJOR D,PSJO)) Q :'PSJO  D
  17509   "RTN","PSJ OEA",20,0)
  17510    .S PSGORD ="" S ON=P SJO_"P"
  17511   "RTN","PSJ OEA",21,0)
  17512    .D DISACT IO(PSGP,PS JO_"P",$G( PSJPNV)) S :$G(PSJO)[ "V" O=ON
  17513   "RTN","PSJ OEA",22,0)
  17514    K PSGCOMP ,PSGFLG  ;  CLEAN UP  VARIABLE F OR COMPLEX  ORDER MES SAGE  RJS* 327
  17515   "RTN","PSJ OEA",23,0)
  17516    I $D(^TMP ("PSJCOM", $J)) D CHK ^PSJOEA1
  17517   "RTN","PSJ OEA",24,0)
  17518    S:'$G(PSG P) PSGP=$G (DFN)
  17519   "RTN","PSJ OEA",25,0)
  17520    N PSJO S  PSJO=0 F   S PSJO=$O( ^PS(53.1," ACX",PSJOR D,PSJO)) Q :'PSJO  D
  17521   "RTN","PSJ OEA",26,0)
  17522    .D UNL^PS SLOCK(PSGP ,PSJO_"P")  Q:$G(Y)<0
  17523   "RTN","PSJ OEA",27,0)
  17524    D DONE
  17525   "RTN","PSJ OEA",28,0)
  17526    Q
  17527   "RTN","PSJ OEA",29,0)
  17528    ;
  17529   "RTN","PSJ OEA",30,0)
  17530   DISACTIO(D FN,PSJORD, PSJPNV)        ; Disp lay UD ord er and all ow actions .
  17531   "RTN","PSJ OEA",31,0)
  17532    ; DFN     - Patient  IEN
  17533   "RTN","PSJ OEA",32,0)
  17534    ; PSJORD  - Order #_ location C ode (P:53. 1,V:55.01, U:55.06)
  17535   "RTN","PSJ OEA",33,0)
  17536    ; PSJPNV  - Invoked  from Pendi ng/NV opti on; (gets  different  hidden men u)
  17537   "RTN","PSJ OEA",34,0)
  17538    N PSGP,PS JIVFLG,PSG SDX,PSGFDX ,PSJXX1,ON 55,PSJAPPT
  17539   "RTN","PSJ OEA",35,0)
  17540    Q:PSJORD' ["P"
  17541   "RTN","PSJ OEA",36,0)
  17542    Q:$G(PSJC LIN)=-2
  17543   "RTN","PSJ OEA",37,0)
  17544    S PSGP=DF N D ENIV^P SJAC
  17545   "RTN","PSJ OEA",38,0)
  17546    D GETUD^P SJLMGUD(DF N,PSJORD)
  17547   "RTN","PSJ OEA",39,0)
  17548    S PSGOEAV =$P(PSJSYS P0,"^",9)& PSJSYSU
  17549   "RTN","PSJ OEA",40,0)
  17550    S:$G(PSJT UD) PSGPD= $G(PSJCOI) ,PSGPDN=$$ OINAME^PSJ LMUTL(+PSG PD)
  17551   "RTN","PSJ OEA",41,0)
  17552    K PSGOENG  I '$D(PSG PRF) D  Q: $G(PSGOENG )
  17553   "RTN","PSJ OEA",42,0)
  17554    . I PSJOR D["P" L +^ PS(53.1,+P SJORD):1 E   S PSGOEN G=1
  17555   "RTN","PSJ OEA",43,0)
  17556    . I $G(PS GOENG) W ! ,"This ord er is bein g edited b y another  terminal." ,! S PSGOE NG=1 K DIR  S DIR(0)= "E" D ^DIR  K DIR Q
  17557   "RTN","PSJ OEA",44,0)
  17558    S PSGACT= $$ENACTION ^PSGOE1(PS GP,PSJORD)
  17559   "RTN","PSJ OEA",45,0)
  17560    I PSJORD[ "P" S PSJX X1=$G(^PS( 53.1,+PSJO RD,0)) I P SGP'=$P(PS JXX1,U,15) !(DFN'=$P( PSJXX1,U,1 5)) Q  ;L  -^PS(53.1, +PSJORD) Q
  17561   "RTN","PSJ OEA",46,0)
  17562    I PSJORD[ "P" D  S P SJXX1=$P($ G(^PS(53.1 ,+PSJORD,0 )),U,9) I  $S($G(PSJI VFLG):1,$G (Y)<0:1,"P ADE"[PSJXX 1:1,1:0) Q   ;L -^PS( 53.1,+PSJO RD) Q
  17563   "RTN","PSJ OEA",47,0)
  17564    .I $P(PSJ XX1,U,9)=" N",($P(PSJ XX1,U,4)'= "U") D  Q
  17565   "RTN","PSJ OEA",48,0)
  17566    .. S P("P ON")=PSJOR D,PSIVFLG= 1
  17567   "RTN","PSJ OEA",49,0)
  17568    .. D GT53 1^PSIVORFA (+PSGP,PSJ ORD),VF^PS IVORC2
  17569   "RTN","PSJ OEA",50,0)
  17570    .I $P(PSJ XX1,U,9)=" P" D  Q
  17571   "RTN","PSJ OEA",51,0)
  17572    ..S:$G(PS JTUD) $P(P SJXX1,U,4) ="U"
  17573   "RTN","PSJ OEA",52,0)
  17574    ..N VAIP  S PSJCLIN= $G(^PS(53. 1,+PSJORD, "DSS")),PS JAPPT=$P(P SJCLIN,"^" ,2),PSJCLI N=$P(PSJCL IN,"^")
  17575   "RTN","PSJ OEA",53,0)
  17576    ..I $P(PS JXX1,U,4)= "U",(+PSJP DD) D  Q:( PSJCLIN=-2 )
  17577   "RTN","PSJ OEA",54,0)
  17578    ...I $$PA TCH^XPDUTL ("SD*5.3*2 85"),($$SD IMO^SDAMA2 03(PSJCLIN ,DFN)>-1)  Q
  17579   "RTN","PSJ OEA",55,0)
  17580    ...W !!," Cannot pro cess an Ou t-patient  Unit Dose  order for  ",$P($G(^D PT(+PSGP,0 )),U) D PA USE^VALM1  S PSJIVFLG =1,PSJCLIN =-2
  17581   "RTN","PSJ OEA",56,0)
  17582    ..NEW PSG RSD,PSGRSD N,PSGRFD,P SGRFDN
  17583   "RTN","PSJ OEA",57,0)
  17584    ..D REQDT ^PSJLIVMD( PSJORD)
  17585   "RTN","PSJ OEA",58,0)
  17586    ..I $P(PS JXX1,U,4)= "U",($G(PS GSCH)="")  W !!,"Inva lid schedu le, can't  finish thi s order" D  PAUSE^VAL M1 Q
  17587   "RTN","PSJ OEA",59,0)
  17588    ..I $P(PS JXX1,U,4)= "U" N PSJL M S PSJLM= 1,PSGORD=P SJORD D ST ART^PSGOEF ,ENSFE^PSG OEE0(PSGP, PSGORD),@$ S($G(PSJTU D):"FINISH ^PSGOEF",1 :"EN^VALM( ""PSJ LM P ENDING EDI T"")") D   Q
  17589   "RTN","PSJ OEA",60,0)
  17590    ...K ^TMP ("PSJINTER ",$J),PSJO VR
  17591   "RTN","PSJ OEA",61,0)
  17592    ..I $P(PS JXX1,U,4)' ="U",PSGP= $P(PSJXX1, U,15),DFN= $P(PSJXX1, U,15) S PS JLYN=PSJOR D D EN^PSJ LIFN S PSJ IVFLG=1 K  PSJLYN,PSJ MAI
  17593   "RTN","PSJ OEA",62,0)
  17594    I $G(PSIV FLG) K PSI VFLG Q
  17595   "RTN","PSJ OEA",63,0)
  17596    S PSGACT= $$ENACTION ^PSGOE1(PS GP,PSJORD) ,PSGOEEF=0  D GETUD^P SJLMGUD(PS GP,PSJORD) ,ENSFE^PSG OEE0(PSGP, PSJORD),EN ^VALM("PSJ  LM UD ACT ION")
  17597   "RTN","PSJ OEA",64,0)
  17598    ;Send SN  to CPRS if  autoverif y OFF and  Order Set  Entry and  no 21st pi ece
  17599   "RTN","PSJ OEA",65,0)
  17600    I $D(PSGO ES),'PSGOE AV,$D(PSGO RD),PSGORD ["P",$P($G (^PS(53.1, +PSGORD,0) ),"^",21)' ]"" D ORSE T^PSGOETO1
  17601   "RTN","PSJ OEA",66,0)
  17602    Q
  17603   "RTN","PSJ OEA",67,0)
  17604    ;
  17605   "RTN","PSJ OEA",68,0)
  17606   ACTLOG(PSG ORDP,DFN,P SGORD)  ;S tore 53.1  activity l og in loca l array to  be moved  to 55
  17607   "RTN","PSJ OEA",69,0)
  17608    ;PSGORDP:  IEN from  53.1
  17609   "RTN","PSJ OEA",70,0)
  17610    ;PSGORD :  IEN from  55
  17611   "RTN","PSJ OEA",71,0)
  17612    NEW PSGX, PSGXDA,PSG AL531,Q,QQ
  17613   "RTN","PSJ OEA",72,0)
  17614    F PSGX=0: 0 S PSGX=$ O(^PS(53.1 ,+PSGORDP, "A",PSGX))  Q:'PSGX   D
  17615   "RTN","PSJ OEA",73,0)
  17616    . S PSGAL 531=$G(^PS (53.1,+PSG ORDP,"A",P SGX,0))
  17617   "RTN","PSJ OEA",74,0)
  17618    . S QQ=$G (^PS(55,DF N,5,+PSGOR D,9,0)) S: QQ="" QQ=" ^55.09D" F  Q=$P(QQ,U ,3)+1:1 I  '$D(^(Q))  S $P(QQ,U, 3,4)=Q_U_Q ,^(0)=QQ,P SGXDA=Q Q
  17619   "RTN","PSJ OEA",75,0)
  17620    . S ^PS(5 5,DFN,5,+P SGORD,9,PS GXDA,0)=PS GAL531
  17621   "RTN","PSJ OEA",76,0)
  17622    Q
  17623   "RTN","PSJ OEA",77,0)
  17624    ;
  17625   "RTN","PSJ OEA",78,0)
  17626   UD ;
  17627   "RTN","PSJ OEA",79,0)
  17628    N DA,DR,D IE,PSJCMPD A D ENGNA^ PSGOETO S  $P(^TMP("P SJCOM",$J, PSJO,0),"^ ",26)=DA_" U",$P(^TMP ("PSJCOM2" ,$J,PSJO,0 ),"^")=DA, $P(^(0),"^ ",18)=DA S  PSJCMPDA= DA
  17629   "RTN","PSJ OEA",80,0)
  17630    M ^PS(55, PSGP,5,DA) =^TMP("PSJ COM2",$J,+ PSJO) M ^P S(53.1,+PS JO)=^TMP(" PSJCOM",$J ,+PSJO) D  EN1^PSJHL2 (PSGP,"OD" ,+PSJO_"P" ) S PSJNOO =$P(^TMP(" PSJCOM2",$ J,+PSJO,.2 ),U,3) D E N1^PSJHL2( PSGP,"SN", +PSJCMPDA_ "U")
  17631   "RTN","PSJ OEA",81,0)
  17632    N PSGPDRG ,PSGST,PSG NESD,PSGNE FD,ND2,ND2 P1
  17633   "RTN","PSJ OEA",82,0)
  17634    S PSGPDRG =$P($G(^PS (55,PSGP,5 ,PSJCMPDA, .2)),"^"), PSGST=$P($ G(^PS(55,P SGP,5,PSJC MPDA,0))," ^",7)
  17635   "RTN","PSJ OEA",83,0)
  17636    S ND2=$G( ^PS(55,PSG P,5,PSJCMP DA,2)),PSG NESD=$P(ND 2,"^",2),P SGNEFD=$P( ND2,"^",4)  D CRA^PSG OETO
  17637   "RTN","PSJ OEA",84,0)
  17638    S ND2P1=$ G(^PS(55,P SGP,5,PSJC MPDA,2)),P SGRMVT=$P( ND2P1,"^", 2) ;*315
  17639   "RTN","PSJ OEA",85,0)
  17640    K ^PS(53. 1,"ACX",PS JORD,PSJO)  K PSJPREX
  17641   "RTN","PSJ OEA",86,0)
  17642    I $G(PSJC MPDA) D CM PLX2^PSJCO M1(PSGP,PS JORD,+PSJC MPDA_"U")  I $G(PSGPX N) S PSJPR EX=1
  17643   "RTN","PSJ OEA",87,0)
  17644    Q
  17645   "RTN","PSJ OEA",88,0)
  17646   IV ; 
  17647   "RTN","PSJ OEA",89,0)
  17648    K ON55 I  $P($G(^PS( 53.1,+PSJO ,0)),"^",2 4)="R",$P( $G(^PS(53. 1,+PSJO,0) ),"^",25)  S ON55=$P( ^PS(53.1,+ PSJO,0),"^ ",25)
  17649   "RTN","PSJ OEA",90,0)
  17650    I '$G(ON5 5) D NEW55 ^PSIVORFB
  17651   "RTN","PSJ OEA",91,0)
  17652    S $P(^TMP ("PSJCOM", $J,PSJO,0) ,"^",26)=O N55,$P(^TM P("PSJCOM2 ",$J,PSJO, 0),"^")=+O N55
  17653   "RTN","PSJ OEA",92,0)
  17654    S $P(^TMP ("PSJCOM2" ,$J,PSJO,2 ),U,5)=PSJ O_"P",$P(^ TMP("PSJCO M",$J,PSJO ,0),U,26)= ON55
  17655   "RTN","PSJ OEA",93,0)
  17656    M ^PS(55, DFN,"IV",+ ON55)=^TMP ("PSJCOM2" ,$J,+PSJO)  M ^PS(53. 1,+PSJO)=^ TMP("PSJCO M",$J,+PSJ O) D EN1^P SJHL2(PSGP ,"OD",+PSJ O_"P") S P ("NAT")=$P (^TMP("PSJ COM2",$J,+ PSJO,.2),U ,5) D EN1^ PSJHL2(PSG P,"SN",ON5 5)
  17657   "RTN","PSJ OEA",94,0)
  17658    K DA,DIK  S DA(1)=DF N,DA=+ON55 ,DIK="^PS( 55,"_DA(1) _",""IV"", ",PSIVACT= 1 D IX^DIK  K DA,DIK
  17659   "RTN","PSJ OEA",95,0)
  17660    K ^PS(53. 1,"ACX",PS JORD,PSJO)
  17661   "RTN","PSJ OEA",96,0)
  17662    Q
  17663   "RTN","PSJ OEA",97,0)
  17664    ;
  17665   "RTN","PSJ OEA",98,0)
  17666   DONE ; Cle an up
  17667   "RTN","PSJ OEA",99,0)
  17668    K PSGPD,P SGPDN,PSGS CH,PSIVACT ,PSJNOO
  17669   "RTN","PSJ OEA",100,0 )
  17670    Q
  17671   "RTN","PSJ OEA1")
  17672   0^37^B2990 5654
  17673   "RTN","PSJ OEA1",1,0)
  17674   PSJOEA1 ;B IR/MLM-INP ATIENT ORD ER ENTRY ; Jul 26, 20 17@18:04:0 2
  17675   "RTN","PSJ OEA1",2,0)
  17676    ;;5.0;INP ATIENT MED ICATIONS;* *110,127,1 33,171,254 ,327**;16  DEC 97;Bui ld 64
  17677   "RTN","PSJ OEA1",3,0)
  17678    ;
  17679   "RTN","PSJ OEA1",4,0)
  17680    ; Referen ce to ^PS( 55 is supp orted by D BIA #2191.
  17681   "RTN","PSJ OEA1",5,0)
  17682    ; Referen ce to ^PSS LOCK is su pported by  DBIA #278 9.
  17683   "RTN","PSJ OEA1",6,0)
  17684    ;
  17685   "RTN","PSJ OEA1",7,0)
  17686   CHK ;Check  to be sur e all the  orders in  the comple x order se ries are c ompleted.
  17687   "RTN","PSJ OEA1",8,0)
  17688    N COMQUIT ,PSJCOMV,P SJOT,PSJST AT,PSJSTAT 2,PSGND2P5 ,DUR,ND14, PSJPREX S  (PSJCOMV,C OMQUIT)=0, PSJSTAT2=" " K ^TMP(" PSJINTER", $J)
  17689   "RTN","PSJ OEA1",9,0)
  17690    I '$D(^TM P("PSJCOM" ,$J)) Q
  17691   "RTN","PSJ OEA1",10,0 )
  17692    N PSJO S  PSJO=0 F   S PSJO=$O( ^PS(53.1," ACX",PSJOR D,PSJO)) Q :'PSJO  Q: COMQUIT  S  PSJOT=$P( ^PS(53.1,P SJO,0),"^" ,4) D
  17693   "RTN","PSJ OEA1",11,0 )
  17694    . I '$D(^ TMP("PSJCO M",$J,PSJO ,0)) M ^TM P("PSJCOM" ,$J,PSJO)= ^PS(53.1,P SJO) I '$D (^TMP("PSJ COM",$J,PS JO,0)) S C OMQUIT=2 Q :COMQUIT
  17695   "RTN","PSJ OEA1",12,0 )
  17696    . S PSJST AT=$P(^TMP ("PSJCOM", $J,PSJO,0) ,"^",9)
  17697   "RTN","PSJ OEA1",13,0 )
  17698    . I PSJST AT="DE" S  PSJSTAT=$P ($G(^TMP(" PSJCOM2",$ J,PSJO,0)) ,"^",9) I  PSJSTAT=""  S COMQUIT =1 Q
  17699   "RTN","PSJ OEA1",14,0 )
  17700    . S:PSJST AT2="" PSJ STAT2=PSJS TAT S:PSJS TAT'=PSJST AT2 COMQUI T=2 Q:COMQ UIT  S PSJ STAT2=PSJS TAT
  17701   "RTN","PSJ OEA1",15,0 )
  17702    I COMQUIT ,PSJOT="U" ,$G(^TMP(" PSJCOM",$J ))'="A" S: $G(PSJOWAL L)]"" $P(^ PS(55,PSGP ,5.1),U)=P SJOWALL
  17703   "RTN","PSJ OEA1",16,0 )
  17704    I (COMQUI T=2)!(COMQ UIT&($G(^T MP("PSJCOM ",$J))'="A ")) D  Q
  17705   "RTN","PSJ OEA1",17,0 )
  17706    .K ^TMP(" PSJCOM",$J ),^TMP("PS JCOM2",$J) ,PSGCMPLX, PSGTMPSD
  17707   "RTN","PSJ OEA1",18,0 )
  17708    .W !,"By  not finish ing all th e orders,  none of th e orders w ill be upd ated." D P AUSE^VALM1
  17709   "RTN","PSJ OEA1",19,0 )
  17710    I 'COMQUI T N PSJO S  PSJO=0 F   S PSJO=$O (^TMP("PSJ COM",$J,PS JO)) Q:'PS JO  D
  17711   "RTN","PSJ OEA1",20,0 )
  17712    .S PSGS0Y =$P($G(^TM P("PSJCOM" ,$J,+PSJO, 2)),"^",5) ,PSGS0XT=$ P($G(^TMP( "PSJCOM",$ J,+PSJO,2) ),"^",6)
  17713   "RTN","PSJ OEA1",21,0 )
  17714    .N EDITS0 Y,EDITS0XT  S EDITS0Y =$P($G(^TM P("PSJCOM2 ",$J,+PSJO ,2)),"^",5 ),EDITS0XT =$P($G(^TM P("PSJCOM2 ",$J,+PSJO ,2)),"^",6 ) D
  17715   "RTN","PSJ OEA1",22,0 )
  17716    ..S:EDITS 0Y PSGS0Y= EDITS0Y I  EDITS0XT!( ",O,D,"[(" ,"_EDITS0X T_",")) S  PSGS0XT=ED ITS0XT
  17717   "RTN","PSJ OEA1",23,0 )
  17718    .N DIE,DA ,DR S DR=" 28////^S X =$P(^TMP(" "PSJCOM"", $J,+PSJO,0 ),""^"",9) ",DA=+PSJO ,DIE="^PS( 53.1," D ^ DIE
  17719   "RTN","PSJ OEA1",24,0 )
  17720    .N DIK,DA  S DIK="^P S(53.1,",D A=+PSJO S: $G(DFN) DA (1)=DFN D  IX^DIK K D IK,DA
  17721   "RTN","PSJ OEA1",25,0 )
  17722    .M ^PS(53 .1,+PSJO)= ^TMP("PSJC OM",$J,+PS JO)
  17723   "RTN","PSJ OEA1",26,0 )
  17724    .S PSGND= $G(^PS(53. 1,+PSJO,0) ),PSGND2P5 =$G(^PS(53 .1,+PSJO,2 .5)),DUR=$ P(PSGND2P5 ,"^",2),ND 14=$$LASTR EN^PSJLMPR I(DFN,+PSJ O_"P")
  17725   "RTN","PSJ OEA1",27,0 )
  17726    .I $P(PSG ND,U,4)="U ",$P(PSGND ,U,24)="R"  D
  17727   "RTN","PSJ OEA1",28,0 )
  17728    ..N PND0, PSGORDR S  PND0=^PS(5 3.1,+PSJO, 0) I $P(PN D0,U,24)=" R" S PSGOR DR=$P(PND0 ,U,25) D
  17729   "RTN","PSJ OEA1",29,0 )
  17730    ...S:'$G( PSGP) PSGP =$G(DFN) Q :'$$LS^PSS LOCK(PSGP, PSGORDR)
  17731   "RTN","PSJ OEA1",30,0 )
  17732    ...N OEOR D,OOEORD,F ILE55,FILE 55N0,PNDP2  S PNDP2=^ PS(53.1,+P SJO,.2),FI LE55="^PS( 55,"_DFN_$ S($P(PND0, U,4)="U":" ,5,",1:"," "IV"","),F ILE55N0=FI LE55_+PSGO RDR_",0)"
  17733   "RTN","PSJ OEA1",31,0 )
  17734    ...S OEOR D=$P(PND0, U,21) I PS GORDR S OO EORD=$P(@F ILE55N0,"^ ",21) I OE ORD'=OOEOR D D EXPOE^ PSGOER(DFN ,+PSJO_"P" ,+$$LASTRE N^PSJLMPRI (DFN,+PSJO _"P"))
  17735   "RTN","PSJ OEA1",32,0 )
  17736    ...S PSGO RDP=PSJO,D IE="^PS(53 .1,",DA=+P SJO,DR="28 ////A;104/ ///@" W ". " D ^DIE
  17737   "RTN","PSJ OEA1",33,0 )
  17738    ...D STAR T^PSGOTR(+ PSJO_"P",+ PSGORDR) I  OEORD D
  17739   "RTN","PSJ OEA1",34,0 )
  17740    ....K DA, DR,DIE S D A(1)=DFN,D A=+PSGORDR ,DIE=FILE5 5,DR=$S(DI E["IV":110 ,1:66)_"// //"_+OEORD
  17741   "RTN","PSJ OEA1",35,0 )
  17742    ....S:$P( PNDP2,U,8)  DR=DR_";1 25////"_$P (PNDP2,U,8 ) D ^DIE S  DIE=FILE5 5_+PSGORDR _",0)",$P( @DIE,U,21) =OEORD
  17743   "RTN","PSJ OEA1",36,0 )
  17744    ....D EN1 ^PSJHL2(DF N,"SC",PSG ORDR),UNL^ PSSLOCK(DF N,PSGORDR)
  17745   "RTN","PSJ OEA1",37,0 )
  17746    ..I '$G(C OMQUIT) S  ND14=$$LAS TREN^PSJLM PRI(DFN,+P SJO_"P") I  $G(ND14)  S DA=+$P(P SGND,U,25)  I DA D
  17747   "RTN","PSJ OEA1",38,0 )
  17748    ...N PSGA T S PSGAT= $P($G(^TMP ("PSJCOM", $J,+PSJO,2 )),"^",5)
  17749   "RTN","PSJ OEA1",39,0 )
  17750    ...D UPDR EN^PSGOER( DA,$P(ND14 ,U),$P(ND1 4,U,3),$P( ND14,U,4), $P($G(^PS( 53.1,+PSJO ,.2)),U,3) ,$P(ND14,U ,2))
  17751   "RTN","PSJ OEA1",40,0 )
  17752    ...K PSJP REX I $G(P SGORDR)["U " I $G(PSJ ORD)=+$G(P SJORD) D C MPLX2^PSJC OM1(DFN,PS JORD,PSGOR DR) I $G(P SGPXN) S P SJPREX=1
  17753   "RTN","PSJ OEA1",41,0 )
  17754    .I '$G(PS GP) S:$G(D FN) PSGP=D FN
  17755   "RTN","PSJ OEA1",42,0 )
  17756    .I $P(PSG ND,U,4)'=" U",$P(PSGN D,U,24)="R ",$P(PSGND ,U,25),$P( $G(^PS(53. 1,+PSJO,2) ),U,2)<$P( $G(^PS(55, PSGP,"IV", +$P(PSGND, U,25),0)), U,3) D
  17757   "RTN","PSJ OEA1",43,0 )
  17758    ..K DA,DR  S DA(1)=P SGP,DA=+$P (PSGND,U,2 5),DIE="^P S(55,"_PSG P_",""IV"" ,",DR=".03 ////"_$P($ G(^PS(53.1 ,+PSJO,2)) ,U,2)_";11 6////"_$P( $G(^PS(55, PSGP,"IV", +$P(PSGND, U,25),0)), U,3)
  17759   "RTN","PSJ OEA1",44,0 )
  17760    ..D ^DIE, EN1^PSJHL2 (PSGP,"XX" ,$P(PSGND, U,25)) L - ^PS(53.1,+ PSJO)
  17761   "RTN","PSJ OEA1",45,0 )
  17762    .I $P(PSG ND,U,9)="D E",$D(^TMP ("PSJCOM2" ,$J,PSJO,0 )),(",N,A, "[$P(^TMP( "PSJCOM2", $J,PSJO,0) ,"^",9)) D
  17763   "RTN","PSJ OEA1",46,0 )
  17764    ..S:'$G(P SGP) PSGP= DFN S PSGS 0Y=$P($G(^ TMP("PSJCO M2",$J,+PS JO,2)),"^" ,5)
  17765   "RTN","PSJ OEA1",47,0 )
  17766    ..N DA,DR ,DIE D ENG NN^PSGOETO  S $P(^TMP ("PSJCOM", $J,PSJO,0) ,"^",26)=D A_"P",$P(^ TMP("PSJCO M2",$J,PSJ O,0),"^")= DA,$P(^(0) ,"^",18)=D A
  17767   "RTN","PSJ OEA1",48,0 )
  17768    ..S DR="2 8////^S X= $P(^TMP("" PSJCOM2"", $J,+PSJO,0 ),""^"",9) ",DIE="^PS (53.1," D  ^DIE
  17769   "RTN","PSJ OEA1",49,0 )
  17770    ..M ^PS(5 3.1,DA)=^T MP("PSJCOM 2",$J,+PSJ O) M ^TMP( "PSJCOM2", $J,DA)=^TM P("PSJCOM2 ",$J,+PSJO ) N PSJOCH IL S PSJOC HIL=$P(^PS (53.1,DA,. 2),"^",8)  I PSJOCHIL  S ^PS(53. 1,"ACX",+P SJOCHIL,DA )=""
  17771   "RTN","PSJ OEA1",50,0 )
  17772    ..I $P(^P S(53.1,+PS JO,2),"^", 5)'=$P(^TM P("PSJCOM2 ",$J,+PSJO ,2),"^",5)  S $P(^PS( 53.1,+PSJO ,2),"^",5) =$P(^TMP(" PSJCOM2",$ J,+PSJO,2) ,"^",5)
  17773   "RTN","PSJ OEA1",51,0 )
  17774    ..D EN1^P SJHL2(PSGP ,"OD",+PSJ O_"P"),EN1 ^PSJHL2(PS GP,"SN",+D A_"P")
  17775   "RTN","PSJ OEA1",52,0 )
  17776    ..K ^PS(5 3.1,"ACX", PSJORD,PSJ O) L -^PS( 53.1,+PSJO ) L -^PS(5 3.1,DA)
  17777   "RTN","PSJ OEA1",53,0 )
  17778    ..D SETUD INT^PSGSIC H1(PSJO_"P ",DA_"P")
  17779   "RTN","PSJ OEA1",54,0 )
  17780    I '$G(COM QUIT) N PS JO S PSJO= 0 F  S PSJ O=$O(^PS(5 3.1,"ACX", PSJORD,PSJ O)) Q:'PSJ O  Q:PSJCO MV  D
  17781   "RTN","PSJ OEA1",55,0 )
  17782    .I '$D(^T MP("PSJCOM ",$J,PSJO) ) D  Q:$G( PSJCOMV)
  17783   "RTN","PSJ OEA1",56,0 )
  17784    ..N EDITN D0,PREV,RE AS S EDITN D0=$G(^PS( 53.1,+PSJO ,0)) S PRE V=$P(EDITN D0,"^",25) ,REAS=$P(E DITND0,"^" ,24)
  17785   "RTN","PSJ OEA1",57,0 )
  17786    ..I PREV, REAS="E" I  $P($G(^PS (53.1,+PRE V,0)),"^", 9)="DE" M  ^TMP("PSJC OM",$J,+PS JO)=^PS(53 .1,+PSJO)  K ^TMP("PS JCOM",$J,+ PREV),^PS( 53.1,"ACX" ,+PREV) Q
  17787   "RTN","PSJ OEA1",58,0 )
  17788    ..S PSJCO MV=1
  17789   "RTN","PSJ OEA1",59,0 )
  17790    .I $P(^TM P("PSJCOM" ,$J,PSJO,0 ),"^",9)'= "A",'$D(^T MP("PSJCOM 2",$J,PSJO ,0)) S PSJ COMV=1 Q
  17791   "RTN","PSJ OEA1",60,0 )
  17792    .I $P($G( ^TMP("PSJC OM2",$J,PS JO,0)),"^" ,4)="U",$P (^TMP("PSJ COM",$J,PS JO,0),"^", 9)'="A",$P ($G(^TMP(" PSJCOM2",$ J,PSJO,0)) ,"^",9)'=" A" S PSJCO MV=1 Q
  17793   "RTN","PSJ OEA1",61,0 )
  17794    .I $P($G( ^TMP("PSJC OM2",$J,PS JO,0)),"^" ,4)'="U",$ P(^TMP("PS JCOM",$J,P SJO,0),"^" ,9)'="A",$ P($G(^TMP( "PSJCOM2", $J,PSJO,0) ),"^",17)' ="A" S PSJ COMV=1
  17795   "RTN","PSJ OEA1",62,0 )
  17796    I ($G(COM QUIT)=2)!( ($G(COMQUI T)!PSJCOMV )&$G(^TMP( "PSJCOM",$ J))="A") K  ^TMP("PSJ COM",$J),^ TMP("PSJCO M2",$J) W  !,"By not  verifying  all the or ders, none  of the or ders will  be verifie d." D PAUS E^VALM1 Q
  17797   "RTN","PSJ OEA1",63,0 )
  17798    ; 
  17799   "RTN","PSJ OEA1",64,0 )
  17800    D CHK^PSJ OEA2
  17801   "RTN","PSJ OEA1",65,0 )
  17802    Q
  17803   "RTN","PSJ RXLAB")
  17804   0^7^B37740 898
  17805   "RTN","PSJ RXLAB",1,0 )
  17806   PSJRXLAB ; ALB/RTW -   drug+lab  result pri nt ;Jul 26 , 2017@18: 04:02
  17807   "RTN","PSJ RXLAB",2,0 )
  17808    ;;5.0;INP ATIENT PHA RMACY;**32 7**;DEC 19 97;Build 6 4
  17809   "RTN","PSJ RXLAB",3,0 )
  17810    ;RTW copi ed from ro utine PSOR XLAB and m odified fo r the Inpa tient NCC  Clozapine  inpatient  pharmacy p roject
  17811   "RTN","PSJ RXLAB",4,0 )
  17812    ;FSIG and  FSIG2(for merly EN2) , are brou ght in fro m PSOUTLA  and PSOUTL A1 
  17813   "RTN","PSJ RXLAB",5,0 )
  17814    ;a routin e which lo op thru th e last fil l order of  ^PS(55 an d gets
  17815   "RTN","PSJ RXLAB",6,0 )
  17816    ;patients  with a sp ecific dru g. then ge ts the lrd fn from th
  17817   "RTN","PSJ RXLAB",7,0 )
  17818    ;patient  file and l oops thru  the patien ts lab dat a to find
  17819   "RTN","PSJ RXLAB",8,0 )
  17820    ;results  within the  date rang e you spec ify for th e lab test
  17821   "RTN","PSJ RXLAB",9,0 )
  17822    ;used to  minitor th e drug. it  then prin ts the pat ient's nam e
  17823   "RTN","PSJ RXLAB",10, 0)
  17824    ;ssn, las t fill dat e, and the  lab test  results if  any.
  17825   "RTN","PSJ RXLAB",11, 0)
  17826    ;this is  intended a s a qa min itor and s hould not  be run for
  17827   "RTN","PSJ RXLAB",12, 0)
  17828    ;more tha n a 30 day  fill date  interval,  or 1 year  lab test  interval.
  17829   "RTN","PSJ RXLAB",13, 0)
  17830    ;External  ref. to ^ LAB(60, is  supp. by  DBIA# 333
  17831   "RTN","PSJ RXLAB",14, 0)
  17832    ;External  ref. to ^ LR(LRDFN," CH", is su pp. by DBI A# 844
  17833   "RTN","PSJ RXLAB",15, 0)
  17834    ;External  ref. to ^ PSDRUG( is  supp. by  DBIA# 221
  17835   "RTN","PSJ RXLAB",16, 0)
  17836    ;External  ref. to ^ VA(200, is  supp. by  DBIA# 1006 0
  17837   "RTN","PSJ RXLAB",17, 0)
  17838   PSJSITE K  ^UTILITY(" DIQ1",$J), DIQ,^TMP($ J,"ORDERNU M") S DA=$ P($$SITE^V ASITE(),"^ ")
  17839   "RTN","PSJ RXLAB",18, 0)
  17840    N PSCNT S  PSCNT=0
  17841   "RTN","PSJ RXLAB",19, 0)
  17842    I $G(DA)  D
  17843   "RTN","PSJ RXLAB",20, 0)
  17844    .S DIC=4, DIQ(0)="I" ,DR=".01;9 9" D EN^DI Q1
  17845   "RTN","PSJ RXLAB",21, 0)
  17846    .S SITE=$ G(^UTILITY ("DIQ1",$J ,4,DA,.01, "I"))_" "_ $G(^UTILIT Y("DIQ1",$ J,4,DA,99, "I"))
  17847   "RTN","PSJ RXLAB",22, 0)
  17848    .K ^UTILI TY("DIQ1", $J),DA,DR, DIQ,DIC
  17849   "RTN","PSJ RXLAB",23, 0)
  17850    S Y=DT X  ^DD("DD")  S SITE=$G( SITE)_" "_ Y
  17851   "RTN","PSJ RXLAB",24, 0)
  17852   BDATE S %D T="EXTA",% DT("A")="B eginning f ill date:  " D ^%DT G  CLEAN:Y<0  S PSJBD=Y  X ^DD("DD ") S PSJBD R=Y
  17853   "RTN","PSJ RXLAB",25, 0)
  17854   EDATE S %D T("A")="En ding last  fill date:  " D ^%DT  G CLEAN:Y< 0 S PSJED= Y X ^DD("D D") S PSJE DR=Y
  17855   "RTN","PSJ RXLAB",26, 0)
  17856   LDATE S %D T("A")="Ea rliest dat e for lab  results: "  D ^%DT G  CLEAN:Y<0  S LDATE=Y  X ^DD("DD" ) S LDATER =Y
  17857   "RTN","PSJ RXLAB",27, 0)
  17858   DRUG R !," Enter the  key word i n the Drug  Generic n ame: ",PSJ DRUG:DTIME  G CLEAN:' $T I "^"[P SJDRUG G C LEAN
  17859   "RTN","PSJ RXLAB",28, 0)
  17860    N DRGARRA Y D LIST^D IC(50,,.01 ,"I",,,$$U P^XLFSTR(P SJDRUG),"B ",,,"DRGAR RAY")
  17861   "RTN","PSJ RXLAB",29, 0)
  17862    I 'DRGARR AY("DILIST ",0) W !," No corresp onding ent ry, try ag ain or typ e return t o exit" G  DRUG
  17863   "RTN","PSJ RXLAB",30, 0)
  17864    S PSJDRUG =$$UP^XLFS TR(PSJDRUG )
  17865   "RTN","PSJ RXLAB",31, 0)
  17866   LABT S DIC ="^LAB(60, ",DIC(0)=" QEAM" D ^D IC K DIC G :Y<0 CLEAN  S PSJLBT= $P(Y,"^"), PSJLABTN=$ P(Y,"^",2)  G:PSJLBT= "" CLEAN
  17867   "RTN","PSJ RXLAB",32, 0)
  17868    ;I '$D(^L AB(60,PSJL BT,.2)) W  !!,$C(7)," Data Name  missing !! ",! K Y,PS JLBT G LAB T
  17869   "RTN","PSJ RXLAB",33, 0)
  17870    S PSJLABT =$$GET1^DI Q(60,PSJLB T,400,"I")
  17871   "RTN","PSJ RXLAB",34, 0)
  17872    W !,"Ente r the spec imen used  in the lab  for this  test, seru m,plasma,b lood etc."
  17873   "RTN","PSJ RXLAB",35, 0)
  17874   PSJSP S DI C="^LAB(61 ,",DIC(0)= "QEAM" D ^ DIC G:Y<0  CLEAN S PS JSP=$P(Y," ^") G:PSJS P="" CLEAN  ;;I $P($G (^LAB(60,P SJLBT,1,PS JSP,0)),"^ ",7)']"" W  !!,$C(7), "Specimen  data missi ng !!",! ; K Y,PSJSP  G PSJSP
  17875   "RTN","PSJ RXLAB",36, 0)
  17876   PSJUNIT S  PSJUNIT=$S ($G(PSJSP) ]"":$$GET1 ^DIQ(60.01 ,PSJSP_"," _PSJLBT,6) ,1:"")
  17877   "RTN","PSJ RXLAB",37, 0)
  17878   PSJANS R ! ,"Do you w ant Order  info? N//  ",PSJANS:D TIME G CLE AN:'$T S:P SJANS="" P SJANS="N"  G:PSJANS=" ^" CLEAN2  I "YNyn"'[ $E(PSJANS)  W !,"ANSW ER YES OR  NO" G PSJA NS
  17879   "RTN","PSJ RXLAB",38, 0)
  17880   DEVICE K I OP S %ZIS= "MQ" D ^%Z IS G:POP C LEAN2
  17881   "RTN","PSJ RXLAB",39, 0)
  17882    I $D(IO(" Q")) K IO( "Q") S ZTS AVE("*")=" ",ZTRTN="D Q^PSJRXLAB ",ZTDESC=" LAB LIST"  D ^%ZTLOAD  K ZTSK G  CLEAN
  17883   "RTN","PSJ RXLAB",40, 0)
  17884   DQ S PSJLA BQ=0 S PSJ BD=PSJBD-1 ,PAGE=0 U  IO W @IOF  D HDR
  17885   "RTN","PSJ RXLAB",41, 0)
  17886   LOOP1 ;
  17887   "RTN","PSJ RXLAB",42, 0)
  17888    K ^TMP($J ,"PSORDT")  D LIST^DI C(100,"",. 01,"I",,PS JBD,,"AD", ,,"^TMP($J ,""PSORDT" ")")
  17889   "RTN","PSJ RXLAB",43, 0)
  17890    N PSJ F P SJ=1:1 Q:' $D(^TMP($J ,"PSORDT", "DILIST",1 ,PSJ))  S  PSJBD=^TMP ($J,"PSORD T","DILIST ",1,PSJ) Q :PSJBD>PSJ ED  S PSJO RDN=0 D LO OP2 Q:$G(P SJLABQ)
  17891   "RTN","PSJ RXLAB",44, 0)
  17892    G CLEAN
  17893   "RTN","PSJ RXLAB",45, 0)
  17894   LOOP2 S PS JORDN=^TMP ($J,"PSORD T","DILIST ",2,PSJ) D  CHECK1
  17895   "RTN","PSJ RXLAB",46, 0)
  17896    Q
  17897   "RTN","PSJ RXLAB",47, 0)
  17898   CHECK1 ;
  17899   "RTN","PSJ RXLAB",48, 0)
  17900    N PSJNUM
  17901   "RTN","PSJ RXLAB",49, 0)
  17902    S PSJNUM= $$FIND1^DI C(100.045, ","_PSJORD N_",","X", "DRUG","ID ") Q:'PSJN UM
  17903   "RTN","PSJ RXLAB",50, 0)
  17904    S PSCNT=P SCNT+1
  17905   "RTN","PSJ RXLAB",51, 0)
  17906    S ^TMP($J ,"ORDERNUM ",PSCNT)=P SJORDN
  17907   "RTN","PSJ RXLAB",52, 0)
  17908    S PSJDGN= $$GET1^DIQ (100.045,P SJNUM_","_ PSJORDN,1, "I"),PSJDR UGN=$$GET1 ^DIQ(50,PS JDGN,.01)
  17909   "RTN","PSJ RXLAB",53, 0)
  17910    Q:'$G(PSJ DGN)  I PS JDRUGN'[PS JDRUG Q
  17911   "RTN","PSJ RXLAB",54, 0)
  17912    S PSJPROV =$$GET1^DI Q(100,PSJO RDN,1,"I")  Q:'PSJPRO V
  17913   "RTN","PSJ RXLAB",55, 0)
  17914    S PSJPROV N=$$GET1^D IQ(200,PSJ PROV,.01), PSJPROT=$$ GET1^DIQ(2 00,PSJPROV ,9.21,"I")
  17915   "RTN","PSJ RXLAB",56, 0)
  17916    S PSJTYPE ="NONE" I  PSJPROT S  PSJTYPE=$P ("FULL TIM E^PART TIM E^C & A^FE E^STAFF"," ^",PSJPROT )
  17917   "RTN","PSJ RXLAB",57, 0)
  17918   CHECK2 ;
  17919   "RTN","PSJ RXLAB",58, 0)
  17920    S PSJPT=+ $$GET1^DIQ (100,PSJOR DN,.02,"I" ) Q:'PSJPT   W ! S DF N=PSJPT D  PID^VADPT, PRINT2
  17921   "RTN","PSJ RXLAB",59, 0)
  17922    S LRDFN=$ $GET1^DIQ( 2,PSJPT,63 ,"I")
  17923   "RTN","PSJ RXLAB",60, 0)
  17924    I 'LRDFN  W ?55,"No  lab data e xists",?81 ,$E(PSJPRO VN,1,20),? 106,PSJTYP E,! D:PSJA NS["Y"!(PS JANS["y")  PSJORDNI Q
  17925   "RTN","PSJ RXLAB",61, 0)
  17926    S PSJLBEN T=0,PSJIND IC=0
  17927   "RTN","PSJ RXLAB",62, 0)
  17928   LOOP3 ;
  17929   "RTN","PSJ RXLAB",63, 0)
  17930    N LRARRAY ,RESULT D  LIST^DIC(6 3.04,","_L RDFN_",",, "I",,LDATE ,,,,,"LRAR RAY")
  17931   "RTN","PSJ RXLAB",64, 0)
  17932    F J2=1:1  Q:'$D(LRAR RAY("DILIS T",1,J2))   S PSJLDAT E=LRARRAY( "DILIST",1 ,J2) Q:PSJ LDATE>PSJB D
  17933   "RTN","PSJ RXLAB",65, 0)
  17934    I J2>1 S  J2=J2-1,PS JLDATE=LRA RRAY("DILI ST",1,J2), PSJLBENT=L RARRAY("DI LIST",2,J2 ) D CHECK3  Q:$G(PSJL ABQ)
  17935   "RTN","PSJ RXLAB",66, 0)
  17936    I PSJINDI C=0 W ?55, "NO LAB DA TA IN RANG E",?81,$E( PSJPROVN,1 ,20),?106, PSJTYPE,!
  17937   "RTN","PSJ RXLAB",67, 0)
  17938    D:PSJANS[ "Y" PSJORD NI
  17939   "RTN","PSJ RXLAB",68, 0)
  17940    I $D(RESU LT(3)) F J 4=3:1 Q:'$ D(RESULT(J 4))  W ?55 ,RESULT(J4 ),! I $Y>( IOSL-6) D   Q:$G(PSJL ABQ)  W @I OF,SITE,!  D HDR2
  17941   "RTN","PSJ RXLAB",69, 0)
  17942    .I $E(IOS T)="C" K D IR S DIR(0 )="E" D ^D IR S:$D(DT OUT)!($D(D UOUT)) PSJ LABQ=1
  17943   "RTN","PSJ RXLAB",70, 0)
  17944    Q
  17945   "RTN","PSJ RXLAB",71, 0)
  17946   CHECK3 ;
  17947   "RTN","PSJ RXLAB",72, 0)
  17948    N ARR,KEY ,TERM K RE SULT S RES ULT="",KEY =PSJLBENT_ ","_LRDFN  D GETS^DIQ (63.04,KEY ,"*","I"," ARR") S KE Y=KEY_","
  17949   "RTN","PSJ RXLAB",73, 0)
  17950    ; Loading  of multip le results  commented  out MZR
  17951   "RTN","PSJ RXLAB",74, 0)
  17952    ;S J3=1 F   S J3=$O( ARR(63.04, KEY,J3)) Q :'J3  I AR R(63.04,KE Y,J3,"I")  D
  17953   "RTN","PSJ RXLAB",75, 0)
  17954    ;.I RESUL T'="" S RE SULT($I(TE RM))=$P(^D D(63.04,J3 ,0),"^")_" :"_ARR(63. 04,KEY,J3, "I") Q
  17955   "RTN","PSJ RXLAB",76, 0)
  17956    ;.S RESUL T=$P(^DD(6 3.04,J3,0) ,"^")_":"_ ARR(63.04, KEY,J3,"I" )
  17957   "RTN","PSJ RXLAB",77, 0)
  17958    I $D(ARR( 63.04,KEY, PSJLABT,"I ")) S RESU LT=$P(^DD( 63.04,PSJL ABT,0),"^" )_":"_ARR( 63.04,KEY, PSJLABT,"I ")
  17959   "RTN","PSJ RXLAB",78, 0)
  17960    I RESULT' ="" D RESU LT
  17961   "RTN","PSJ RXLAB",79, 0)
  17962    Q
  17963   "RTN","PSJ RXLAB",80, 0)
  17964   RESULT Q:A RR(63.04,K EY,.05,"I" )'=PSJSP   Q:'ARR(63. 04,KEY,.03 ,"I")
  17965   "RTN","PSJ RXLAB",81, 0)
  17966    S Y=PSJLD ATE X ^DD( "DD") W ?5 5,$E(Y,1,1 1),?68,RES ULT,! ;$P( ^LR(LRDFN, "CH",PSJLB ENT,PSJLAB T),"^")_"  "_PSJUNIT, ?81,$E(PSJ PROVN,1,20 ),?106,PSJ TYPE W !
  17967   "RTN","PSJ RXLAB",82, 0)
  17968    S PSJINDI C=1 Q
  17969   "RTN","PSJ RXLAB",83, 0)
  17970    Q
  17971   "RTN","PSJ RXLAB",84, 0)
  17972   PRINT2 I $ Y>(IOSL-6)  D  Q:$G(P SJLABQ)  W  @IOF,SITE ,! D HDR2
  17973   "RTN","PSJ RXLAB",85, 0)
  17974    .I $E(IOS T)="C" K D IR S DIR(0 )="E" D ^D IR S:$D(DT OUT)!($D(D UOUT)) PSJ LABQ=1
  17975   "RTN","PSJ RXLAB",86, 0)
  17976    W ?1,$E($ $GET1^DIQ( 2,PSJPT,.0 1),1,20),? 25,VA("PID ") S Y=PSJ BD X ^DD(" DD") W ?37 ,Y
  17977   "RTN","PSJ RXLAB",87, 0)
  17978    Q
  17979   "RTN","PSJ RXLAB",88, 0)
  17980   HDR W SITE ,!!,"Patie nts receiv ing "_PSJD RUG_" with  fills bet ween "_PSJ BDR_" and  "_PSJEDR,! ," with da te of coll ection and  results f or lab tes t "_PSJLAB TN_" after  ",LDATER, !
  17981   "RTN","PSJ RXLAB",89, 0)
  17982   HDR2 S PAG E=PAGE+1 W  !,"Name", ?25,"ID#", ?37,"Fill  Date",?55, "Lab Date" ,?68,"Resu lts",?81," Order Prov ider",?106 ,"Type",?1 16,"Page " _PAGE,!
  17983   "RTN","PSJ RXLAB",90, 0)
  17984    F J=1:1:I OM-1 W "_"
  17985   "RTN","PSJ RXLAB",91, 0)
  17986    W ! Q
  17987   "RTN","PSJ RXLAB",92, 0)
  17988   PSJORDNI N  DTOUT,DUO UT Q:$G(PS JLABQ)  W  "Order #:  "_$$GET1^D IQ(100,PSJ ORDN,.01)_ "   Drug:  "_$$GET1^D IQ(50,PSJD GN,.01)
  17989   "RTN","PSJ RXLAB",93, 0)
  17990    I $D(RESU LT)>1 W ?5 5,RESULT(1 )
  17991   "RTN","PSJ RXLAB",94, 0)
  17992    N SIGNUM  S SIGNUM=$ $FIND1^DIC (100.045," ,"_PSJORDN _",","X"," SIG","ID")
  17993   "RTN","PSJ RXLAB",95, 0)
  17994    W !?1,"Si g: ",$$GET 1^DIQ(100. 0451,"1,"_ SIGNUM_"," _PSJORDN,. 01)
  17995   "RTN","PSJ RXLAB",96, 0)
  17996    I $D(RESU LT(2)) W ? 55,RESULT( 2)
  17997   "RTN","PSJ RXLAB",97, 0)
  17998    I $Y>(IOS L-6) D  Q: $G(PSJLABQ )  W @IOF, SITE,! D H DR2
  17999   "RTN","PSJ RXLAB",98, 0)
  18000    .I $E(IOS T)="C" K D IR S DIR(0 )="E" D ^D IR S:$D(DT OUT)!($D(D UOUT)) PSJ LABQ=1
  18001   "RTN","PSJ RXLAB",99, 0)
  18002    W ! Q
  18003   "RTN","PSJ RXLAB",100 ,0)
  18004   CLEAN I $L ($G(IOF))  W @IOF
  18005   "RTN","PSJ RXLAB",101 ,0)
  18006    D ^%ZISC  S:$D(ZTQUE UED) ZTREQ ="@"
  18007   "RTN","PSJ RXLAB",102 ,0)
  18008   CLEAN2 K P SJINDIC,PS JPT,PSJLDA TE,PAGE,PS JBD,PSJBDR ,PSJLBENT, PSJLABT,PS JDGN,PSJDR UGN,PSJDRU G,J,J1,J2, PSJORDN,PS JPROV,PSJP ROVN,LDATE ,LDATER,PS JED,PSJEDR ,PSJPROT,P SJTYPE,PSJ LABTN,PSJL BT,PSJSP,P SJUNIT,PSJ ANS,DIC,LR DFN,POP,SI TE,Y,%DT,P SJLABQ
  18009   "RTN","PSJ RXLAB",103 ,0)
  18010    K ZTDESC, ZTRTN,ZTSA VE,%ZIS,^T MP($J,"ORD ERNUM"),^T MP($J,"PSO RDT") Q
  18011   "RTN","PSJ RXLAB",104 ,0)
  18012    ;
  18013   "RTN","PSJ RXLAB",105 ,0)
  18014   FQUIT Q
  18015   "SEC","^DI C",53.8,53 .8,0,"AUDI T")
  18016   @
  18017   "SEC","^DI C",53.8,53 .8,0,"DD")
  18018   @
  18019   "SEC","^DI C",53.8,53 .8,0,"DEL" )
  18020   @
  18021   "SEC","^DI C",53.8,53 .8,0,"LAYG O")
  18022   @
  18023   "SEC","^DI C",53.8,53 .8,0,"RD")
  18024   @
  18025   "SEC","^DI C",53.8,53 .8,0,"WR")
  18026   @
  18027   "UP",55,55 .06,-1)
  18028   55^5
  18029   "UP",55,55 .06,0)
  18030   55.06
  18031   "VER")
  18032   8.0^22.2
  18033   "^DD",53.8 ,53.8,0)
  18034   FIELD^^2^7
  18035   "^DD",53.8 ,53.8,0,"D T")
  18036   3160516
  18037   "^DD",53.8 ,53.8,0,"I X","A",53. 8,1)
  18038  
  18039   "^DD",53.8 ,53.8,0,"I X","B",53. 8,.01)
  18040  
  18041   "^DD",53.8 ,53.8,0,"N M","CLOZAP INE MEDICA TION OVERR IDES")
  18042  
  18043   "^DD",53.8 ,53.8,0,"V RPK")
  18044   PSJ
  18045   "^DD",53.8 ,53.8,.01, 0)
  18046   DATE TIME^ MRDI^^0;1^ S %DT="EST XR" D ^%DT  S X=Y K:X <1 X
  18047   "^DD",53.8 ,53.8,.01, 1,0)
  18048   ^.1
  18049   "^DD",53.8 ,53.8,.01, 1,1,0)
  18050   53.8^B
  18051   "^DD",53.8 ,53.8,.01, 1,1,1)
  18052   S ^PS(53.8 ,"B",$E(X, 1,30),DA)= ""
  18053   "^DD",53.8 ,53.8,.01, 1,1,2)
  18054   K ^PS(53.8 ,"B",$E(X, 1,30),DA)
  18055   "^DD",53.8 ,53.8,.01, 3)
  18056   (No range  limit on d ate)
  18057   "^DD",53.8 ,53.8,.01, 21,0)
  18058   ^^2^2^3160 310^
  18059   "^DD",53.8 ,53.8,.01, 21,1,0)
  18060   This is th e date and  time of t he decisio n to overr ide the pr ohibition  on 
  18061   "^DD",53.8 ,53.8,.01, 21,2,0)
  18062   dispensing  Clozaril.
  18063   "^DD",53.8 ,53.8,.01, "DT")
  18064   3151222
  18065   "^DD",53.8 ,53.8,1,0)
  18066   ORDER NUMB ER^RP100'I ^OR(100,^0 ;2^Q
  18067   "^DD",53.8 ,53.8,1,1, 0)
  18068   ^.1
  18069   "^DD",53.8 ,53.8,1,1, 1,0)
  18070   53.8^A
  18071   "^DD",53.8 ,53.8,1,1, 1,1)
  18072   S ^PS(53.8 ,"A",$E(X, 1,30),DA)= ""
  18073   "^DD",53.8 ,53.8,1,1, 1,2)
  18074   K ^PS(53.8 ,"A",$E(X, 1,30),DA)
  18075   "^DD",53.8 ,53.8,1,1, 1,"%D",0)
  18076   ^^1^1^3160 328^
  18077   "^DD",53.8 ,53.8,1,1, 1,"%D",1,0 )
  18078   Index on t he ORDER f ield (#1).
  18079   "^DD",53.8 ,53.8,1,1, 1,"DT")
  18080   3160328
  18081   "^DD",53.8 ,53.8,1,3)
  18082   Enter the  order numb er.
  18083   "^DD",53.8 ,53.8,1,21 ,0)
  18084   ^.001^1^1^ 3160328^^^
  18085   "^DD",53.8 ,53.8,1,21 ,1,0)
  18086   Contains t he order n umber.
  18087   "^DD",53.8 ,53.8,1,"D T")
  18088   3160328
  18089   "^DD",53.8 ,53.8,2,0)
  18090   USER ENTER ING^RP200' I^VA(200,^ 0;3^Q
  18091   "^DD",53.8 ,53.8,2,3)
  18092   Enter the  name of th e individu al enterin g this ord er.
  18093   "^DD",53.8 ,53.8,2,21 ,0)
  18094   ^^1^1^3160 309^
  18095   "^DD",53.8 ,53.8,2,21 ,1,0)
  18096   This recor ds the nam e of the i ndividual  entering t he order.
  18097   "^DD",53.8 ,53.8,2,"D T")
  18098   3160310
  18099   "^DD",53.8 ,53.8,3,0)
  18100   APPROVING  TEAM MEMBE R^RP200'I^ VA(200,^0; 4^Q
  18101   "^DD",53.8 ,53.8,3,3)
  18102   Enter the  name of th e person w ho authori zed the or der to be  filled.
  18103   "^DD",53.8 ,53.8,3,21 ,0)
  18104   ^^2^2^3160 309^
  18105   "^DD",53.8 ,53.8,3,21 ,1,0)
  18106   This is th e member o f the cloz apine trea tment team  who autho rized this  
  18107   "^DD",53.8 ,53.8,3,21 ,2,0)
  18108   order to b e filled.
  18109   "^DD",53.8 ,53.8,3,"D T")
  18110   3160310
  18111   "^DD",53.8 ,53.8,4,0)
  18112   REASON FOR  OVERRIDE^ RP52.54'I^ PS(52.54,^ 0;5^Q
  18113   "^DD",53.8 ,53.8,4,3)
  18114   Enter the  reason for  the overr ide. Input  must be b etween 5 a nd 100 cha racters in  length.
  18115   "^DD",53.8 ,53.8,4,21 ,0)
  18116   ^^2^2^3160 315^
  18117   "^DD",53.8 ,53.8,4,21 ,1,0)
  18118   This field  contains  the reason  for the C lozapine o verride as  a pointer  
  18119   "^DD",53.8 ,53.8,4,21 ,2,0)
  18120   to file 52 .54. It sh ould be be tween 5 an d 100 char acters in  length.
  18121   "^DD",53.8 ,53.8,4,"D T")
  18122   3160310
  18123   "^DD",53.8 ,53.8,5,0)
  18124   COMMENTS^R FI^^0;6^K: $L(X)>200! ($L(X)<5)  X
  18125   "^DD",53.8 ,53.8,5,3)
  18126   Enter comm ents descr ibing the  reason to  override t he lockout .  Input m ust be bet ween 5 and  200 chara cters in l ength.
  18127   "^DD",53.8 ,53.8,5,21 ,0)
  18128   ^.001^1^1^ 3160315^^^ ^
  18129   "^DD",53.8 ,53.8,5,21 ,1,0)
  18130   This is an y informat ion about  why the or der was fi lled.
  18131   "^DD",53.8 ,53.8,5,"D T")
  18132   3160310
  18133   "^DD",53.8 ,53.8,6,0)
  18134   SECOND APP ROVING TEA M MEMBER^R P200'^VA(2 00,^1;1^Q
  18135   "^DD",53.8 ,53.8,6,3)
  18136   Enter the  name of th e approvin g team mem ber.
  18137   "^DD",53.8 ,53.8,6,21 ,0)
  18138   ^^1^1^3160 516^^
  18139   "^DD",53.8 ,53.8,6,21 ,1,0)
  18140   This field  records t he name as  a pointer  to file 2 00.
  18141   "^DD",53.8 ,53.8,6,"D T")
  18142   3160516
  18143   "^DD",55,5 5.06,301,0 )
  18144   CLOZAPINE  DOSAGE (MG /DAY)^NJ4, 0^^SAND;1^ K:+X'=X!(X >3000)!(X< 0)!(X?.E1" ."1N.N) X
  18145   "^DD",55,5 5.06,301,3 )
  18146   Type a num ber betwee n 0 and 30 00, 0 deci mal digits .
  18147   "^DD",55,5 5.06,301,2 1,0)
  18148   ^^2^2^3160 606^
  18149   "^DD",55,5 5.06,301,2 1,1,0)
  18150   This is th e total da ily dosage  of clozap ine if thi s order is
  18151   "^DD",55,5 5.06,301,2 1,2,0)
  18152   for the dr ug clozapi ne.  This  is used on ly for clo zapine.
  18153   "^DD",55,5 5.06,301," DT")
  18154   3160606
  18155   "^DIC",53. 8,53.8,0)
  18156   CLOZAPINE  MEDICATION  OVERRIDES ^53.8
  18157   "^DIC",53. 8,53.8,0," GL")
  18158   ^PS(53.8,
  18159   "^DIC",53. 8,53.8,"%" ,0)
  18160   ^1.005^^0
  18161   "^DIC",53. 8,53.8,"%D ",0)
  18162   ^^12^12^31 60310^
  18163   "^DIC",53. 8,53.8,"%D ",1,0)
  18164   This file  contains i nformation  regarding  who, when  and why t he
  18165   "^DIC",53. 8,53.8,"%D ",2,0)
  18166   prohibitio n on a ord er for clo zapine was  overridde
  18167   "^DIC",53. 8,53.8,"%D ",3,0)
  18168   member of  the team.   Because o f the natu re of this  drug and  the
  18169   "^DIC",53. 8,53.8,"%D ",4,0)
  18170   restrictio ns placed  upon dispe nsing it,  all fields  in this f ile
  18171   "^DIC",53. 8,53.8,"%D ",5,0)
  18172   are not to  be edited  through t he VA File Manager, b ut are to  be set
  18173   "^DIC",53. 8,53.8,"%D ",6,0)
  18174   ONLY throu gh the ord er entry o ptions of  the inpati ent pharma cy
  18175   "^DIC",53. 8,53.8,"%D ",7,0)
  18176   package.   Reports ge nerated fr om this fi le should  be generat ed only
  18177   "^DIC",53. 8,53.8,"%D ",8,0)
  18178   from the o ption prov ided by th e package.   For thes e reasons,  READ,
  18179   "^DIC",53. 8,53.8,"%D ",9,0)
  18180   WRITE, DEL ETE and LA YGO access  to this f ile are se verely res tricted.
  18181   "^DIC",53. 8,53.8,"%D ",10,0)
  18182    
  18183   "^DIC",53. 8,53.8,"%D ",11,0)
  18184   UNDER NO C IRCUMSTANC ES SHOULD  THE DATA D ICTIONARY  FOR THIS F ILE
  18185   "^DIC",53. 8,53.8,"%D ",12,0)
  18186                              BE MO DIFIED
  18187   "^DIC",53. 8,"B","CLO ZAPINE MED ICATION OV ERRIDES",5 3.8)
  18188  
  18189   **INSTALL  NAME**
  18190   OR*3.0*427
  18191   "BLD",9847 ,0)
  18192   OR*3.0*427 ^ORDER ENT RY/RESULTS  REPORTING ^0^3171129 ^y
  18193   "BLD",9847 ,1,0)
  18194   ^^1^1^3161 213^^
  18195   "BLD",9847 ,1,1,0)
  18196   MENTAL HEA LTH NCC PR OJECT 5.01
  18197   "BLD",9847 ,4,0)
  18198   ^9.64PA^^
  18199   "BLD",9847 ,6.3)
  18200   61
  18201   "BLD",9847 ,"INID")
  18202   ^n
  18203   "BLD",9847 ,"INIT")
  18204   ORY427ES
  18205   "BLD",9847 ,"KRN",0)
  18206   ^9.67PA^77 9.2^20
  18207   "BLD",9847 ,"KRN",.4, 0)
  18208   .4
  18209   "BLD",9847 ,"KRN",.40 1,0)
  18210   .401
  18211   "BLD",9847 ,"KRN",.40 2,0)
  18212   .402
  18213   "BLD",9847 ,"KRN",.40 3,0)
  18214   .403
  18215   "BLD",9847 ,"KRN",.5, 0)
  18216   .5
  18217   "BLD",9847 ,"KRN",.84 ,0)
  18218   .84
  18219   "BLD",9847 ,"KRN",3.6 ,0)
  18220   3.6
  18221   "BLD",9847 ,"KRN",3.8 ,0)
  18222   3.8
  18223   "BLD",9847 ,"KRN",9.2 ,0)
  18224   9.2
  18225   "BLD",9847 ,"KRN",9.8 ,0)
  18226   9.8
  18227   "BLD",9847 ,"KRN",9.8 ,"NM",0)
  18228   ^9.68A^15^ 15
  18229   "BLD",9847 ,"KRN",9.8 ,"NM",1,0)
  18230   ORY4270^^0 ^B15564639
  18231   "BLD",9847 ,"KRN",9.8 ,"NM",2,0)
  18232   ORY4271^^0 ^B40435115
  18233   "BLD",9847 ,"KRN",9.8 ,"NM",3,0)
  18234   ORY4272^^0 ^B26767346
  18235   "BLD",9847 ,"KRN",9.8 ,"NM",4,0)
  18236   ORY4273^^0 ^B12998366
  18237   "BLD",9847 ,"KRN",9.8 ,"NM",5,0)
  18238   ORY4274^^0 ^B13528386
  18239   "BLD",9847 ,"KRN",9.8 ,"NM",6,0)
  18240   ORY42701^^ 0^B7074991 1
  18241   "BLD",9847 ,"KRN",9.8 ,"NM",7,0)
  18242   ORY42702^^ 0^B7801413 3
  18243   "BLD",9847 ,"KRN",9.8 ,"NM",8,0)
  18244   ORY42703^^ 0^B7832555 7
  18245   "BLD",9847 ,"KRN",9.8 ,"NM",9,0)
  18246   ORY42704^^ 0^B8364476 1
  18247   "BLD",9847 ,"KRN",9.8 ,"NM",10,0 )
  18248   ORY42705^^ 0^B6250124 2
  18249   "BLD",9847 ,"KRN",9.8 ,"NM",11,0 )
  18250   ORY42706^^ 0^B6755364 8
  18251   "BLD",9847 ,"KRN",9.8 ,"NM",12,0 )
  18252   ORY42707^^ 0^B6952583 0
  18253   "BLD",9847 ,"KRN",9.8 ,"NM",13,0 )
  18254   ORY42708^^ 0^B3461451 0
  18255   "BLD",9847 ,"KRN",9.8 ,"NM",14,0 )
  18256   ORY427ES^^ 0^B1259661 0
  18257   "BLD",9847 ,"KRN",9.8 ,"NM",15,0 )
  18258   ORALWORD^^ 0^B8496112 5
  18259   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORALWORD" ,15)
  18260  
  18261   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY4270", 1)
  18262  
  18263   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42701" ,6)
  18264  
  18265   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42702" ,7)
  18266  
  18267   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42703" ,8)
  18268  
  18269   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42704" ,9)
  18270  
  18271   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42705" ,10)
  18272  
  18273   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42706" ,11)
  18274  
  18275   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42707" ,12)
  18276  
  18277   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY42708" ,13)
  18278  
  18279   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY4271", 2)
  18280  
  18281   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY4272", 3)
  18282  
  18283   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY4273", 4)
  18284  
  18285   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY4274", 5)
  18286  
  18287   "BLD",9847 ,"KRN",9.8 ,"NM","B", "ORY427ES" ,14)
  18288  
  18289   "BLD",9847 ,"KRN",19, 0)
  18290   19
  18291   "BLD",9847 ,"KRN",19. 1,0)
  18292   19.1
  18293   "BLD",9847 ,"KRN",101 ,0)
  18294   101
  18295   "BLD",9847 ,"KRN",409 .61,0)
  18296   409.61
  18297   "BLD",9847 ,"KRN",771 ,0)
  18298   771
  18299   "BLD",9847 ,"KRN",779 .2,0)
  18300   779.2
  18301   "BLD",9847 ,"KRN",870 ,0)
  18302   870
  18303   "BLD",9847 ,"KRN",898 9.51,0)
  18304   8989.51
  18305   "BLD",9847 ,"KRN",898 9.52,0)
  18306   8989.52
  18307   "BLD",9847 ,"KRN",899 4,0)
  18308   8994
  18309   "BLD",9847 ,"KRN","B" ,.4,.4)
  18310  
  18311   "BLD",9847 ,"KRN","B" ,.401,.401 )
  18312  
  18313   "BLD",9847 ,"KRN","B" ,.402,.402 )
  18314  
  18315   "BLD",9847 ,"KRN","B" ,.403,.403 )
  18316  
  18317   "BLD",9847 ,"KRN","B" ,.5,.5)
  18318  
  18319   "BLD",9847 ,"KRN","B" ,.84,.84)
  18320  
  18321   "BLD",9847 ,"KRN","B" ,3.6,3.6)
  18322  
  18323   "BLD",9847 ,"KRN","B" ,3.8,3.8)
  18324  
  18325   "BLD",9847 ,"KRN","B" ,9.2,9.2)
  18326  
  18327   "BLD",9847 ,"KRN","B" ,9.8,9.8)
  18328  
  18329   "BLD",9847 ,"KRN","B" ,19,19)
  18330  
  18331   "BLD",9847 ,"KRN","B" ,19.1,19.1 )
  18332  
  18333   "BLD",9847 ,"KRN","B" ,101,101)
  18334  
  18335   "BLD",9847 ,"KRN","B" ,409.61,40 9.61)
  18336  
  18337   "BLD",9847 ,"KRN","B" ,771,771)
  18338  
  18339   "BLD",9847 ,"KRN","B" ,779.2,779 .2)
  18340  
  18341   "BLD",9847 ,"KRN","B" ,870,870)
  18342  
  18343   "BLD",9847 ,"KRN","B" ,8989.51,8 989.51)
  18344  
  18345   "BLD",9847 ,"KRN","B" ,8989.52,8 989.52)
  18346  
  18347   "BLD",9847 ,"KRN","B" ,8994,8994 )
  18348  
  18349   "BLD",9847 ,"QDEF")
  18350   ^^^^NO^^^^ NO^^NO
  18351   "BLD",9847 ,"QUES",0)
  18352   ^9.62^^
  18353   "BLD",9847 ,"REQB",0)
  18354   ^9.611^1^1
  18355   "BLD",9847 ,"REQB",1, 0)
  18356   OR*3.0*243 ^2
  18357   "BLD",9847 ,"REQB","B ","OR*3.0* 243",1)
  18358  
  18359   "INIT")
  18360   ORY427ES
  18361   "MBREQ")
  18362   0
  18363   "PKG",188, -1)
  18364   1^1
  18365   "PKG",188, 0)
  18366   ORDER ENTR Y/RESULTS  REPORTING^ OR^Order E ntry/Resul ts Reporti ng
  18367   "PKG",188, 22,0)
  18368   ^9.49I^1^1
  18369   "PKG",188, 22,1,0)
  18370   3.0^297121 7^2981113^ 1
  18371   "PKG",188, 22,1,"PAH" ,1,0)
  18372   427^317112 9^52073644 0
  18373   "PKG",188, 22,1,"PAH" ,1,1,0)
  18374   ^^1^1^3171 129
  18375   "PKG",188, 22,1,"PAH" ,1,1,1,0)
  18376   MENTAL HEA LTH NCC PR OJECT 5.01
  18377   "QUES","XP F1",0)
  18378   Y
  18379   "QUES","XP F1","??")
  18380   ^D REP^XPD H
  18381   "QUES","XP F1","A")
  18382   Shall I wr ite over y our |FLAG|  File
  18383   "QUES","XP F1","B")
  18384   YES
  18385   "QUES","XP F1","M")
  18386   D XPF1^XPD IQ
  18387   "QUES","XP F2",0)
  18388   Y
  18389   "QUES","XP F2","??")
  18390   ^D DTA^XPD H
  18391   "QUES","XP F2","A")
  18392   Want my da ta |FLAG|  yours
  18393   "QUES","XP F2","B")
  18394   YES
  18395   "QUES","XP F2","M")
  18396   D XPF2^XPD IQ
  18397   "QUES","XP I1",0)
  18398   YO
  18399   "QUES","XP I1","??")
  18400   ^D INHIBIT ^XPDH
  18401   "QUES","XP I1","A")
  18402   Want KIDS  to INHIBIT  LOGONs du ring the i nstall
  18403   "QUES","XP I1","B")
  18404   NO
  18405   "QUES","XP I1","M")
  18406   D XPI1^XPD IQ
  18407   "QUES","XP M1",0)
  18408   PO^VA(200, :EM
  18409   "QUES","XP M1","??")
  18410   ^D MG^XPDH
  18411   "QUES","XP M1","A")
  18412   Enter the  Coordinato r for Mail  Group '|F LAG|'
  18413   "QUES","XP M1","B")
  18414  
  18415   "QUES","XP M1","M")
  18416   D XPM1^XPD IQ
  18417   "QUES","XP O1",0)
  18418   Y
  18419   "QUES","XP O1","??")
  18420   ^D MENU^XP DH
  18421   "QUES","XP O1","A")
  18422   Want KIDS  to Rebuild  Menu Tree s Upon Com pletion of  Install
  18423   "QUES","XP O1","B")
  18424   NO
  18425   "QUES","XP O1","M")
  18426   D XPO1^XPD IQ
  18427   "QUES","XP Z1",0)
  18428   Y
  18429   "QUES","XP Z1","??")
  18430   ^D OPT^XPD H
  18431   "QUES","XP Z1","A")
  18432   Want to DI SABLE Sche duled Opti ons, Menu  Options, a nd Protoco ls
  18433   "QUES","XP Z1","B")
  18434   NO
  18435   "QUES","XP Z1","M")
  18436   D XPZ1^XPD IQ
  18437   "QUES","XP Z2",0)
  18438   Y
  18439   "QUES","XP Z2","??")
  18440   ^D RTN^XPD H
  18441   "QUES","XP Z2","A")
  18442   Want to MO VE routine s to other  CPUs
  18443   "QUES","XP Z2","B")
  18444   NO
  18445   "QUES","XP Z2","M")
  18446   D XPZ2^XPD IQ
  18447   "RTN")
  18448   15
  18449   "RTN","ORA LWORD")
  18450   0^15^B8496 1125
  18451   "RTN","ORA LWORD",1,0 )
  18452   ORALWORD ;  SLC/JMH -  Utilities  for Check ing if an  order can  be ordered  ; 5/10/17  8:55am
  18453   "RTN","ORA LWORD",2,0 )
  18454    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**2 43,427**;D ec 17, 199 7;Build 61
  18455   "RTN","ORA LWORD",3,0 )
  18456    ;
  18457   "RTN","ORA LWORD",4,0 )
  18458   ALLWORD(OR Y,DFN,ORX, ORTYPE,PRO V) ;
  18459   "RTN","ORA LWORD",5,0 )
  18460    N OROI,OR YS,QOIEN,Q PIEN,ORCLO Z,QOAA
  18461   "RTN","ORA LWORD",6,0 )
  18462    S OROI=0
  18463   "RTN","ORA LWORD",7,0 )
  18464    ;
  18465   "RTN","ORA LWORD",8,0 )
  18466    ;ORTYPE u sed to det ermine the  type of d ata coming  into the  call
  18467   "RTN","ORA LWORD",9,0 )
  18468    ;ORYTPE=" E" existin g order, O RX equal t he IEN fro m file 100  (used wit h
  18469   "RTN","ORA LWORD",10, 0)
  18470    ;copy,edi t function ality)
  18471   "RTN","ORA LWORD",11, 0)
  18472    ;ORTYPE=" Q" Quick O rder, ORX  equal the  IEN from f ile 101.43
  18473   "RTN","ORA LWORD",12, 0)
  18474    ;ORTYPE=" N" New ord er, ORX eq ual the IE N from fil e 101.41
  18475   "RTN","ORA LWORD",13, 0)
  18476    ;
  18477   "RTN","ORA LWORD",14, 0)
  18478    I ORTYPE= "E" S OROI =$G(^OR(10 0,ORX,.1,1 ,0))
  18479   "RTN","ORA LWORD",15, 0)
  18480    I ORTYPE= "Q" D
  18481   "RTN","ORA LWORD",16, 0)
  18482    .S QPIEN= $O(^ORD(10 1.41,"AB", "OR GTX OR DERABLE IT EM","")) Q :QPIEN'>0
  18483   "RTN","ORA LWORD",17, 0)
  18484    .S QOIEN= $O(^ORD(10 1.41,ORX,6 ,"D",QPIEN ,"")) Q:QO IEN'>0
  18485   "RTN","ORA LWORD",18, 0)
  18486    .S OROI=$ G(^ORD(101 .41,ORX,6, QOIEN,1))
  18487   "RTN","ORA LWORD",19, 0)
  18488    .S QOAA=$ P($G(^ORD( 101.41,ORX ,5)),U,8)
  18489   "RTN","ORA LWORD",20, 0)
  18490    I ORTYPE= "N" S OROI =ORX
  18491   "RTN","ORA LWORD",21, 0)
  18492    Q:OROI'>0
  18493   "RTN","ORA LWORD",22, 0)
  18494    S ORY=0
  18495   "RTN","ORA LWORD",23, 0)
  18496    ;checks i f the orde rable item  (OROI) is  a clozapi ne med
  18497   "RTN","ORA LWORD",24, 0)
  18498    ;  if not  returns O RY=0
  18499   "RTN","ORA LWORD",25, 0)
  18500    S ORCLOZ= $$ISCLOZ(O ROI),ORY=O RY_U_ORCLO Z,ORY(0)=U _ORCLOZ
  18501   "RTN","ORA LWORD",26, 0)
  18502    Q:'ORCLOZ
  18503   "RTN","ORA LWORD",27, 0)
  18504    N ORQUIT
  18505   "RTN","ORA LWORD",28, 0)
  18506    S ORQUIT= 0
  18507   "RTN","ORA LWORD",29, 0)
  18508    I '$G(PRO V) S PROV= DUZ
  18509   "RTN","ORA LWORD",30, 0)
  18510    I $G(PROV ) D
  18511   "RTN","ORA LWORD",31, 0)
  18512    .I '$L($$ DEA^XUSER( ,PROV)) D
  18513   "RTN","ORA LWORD",32, 0)
  18514    ..S ORQUI T=1,ORY=1
  18515   "RTN","ORA LWORD",33, 0)
  18516    ..S ORQUI T=1,ORY=1
  18517   "RTN","ORA LWORD",34, 0)
  18518    ..S ORY(1 )="*** You  are not a uthorized  to place C lozapine o rders."
  18519   "RTN","ORA LWORD",35, 0)
  18520    ..S ORY(2 )="You mus t have a D EA#.  Plea se contact  your"
  18521   "RTN","ORA LWORD",36, 0)
  18522    ..S ORY(3 )="CAC or  IRM for mo re informa tion. ***"
  18523   "RTN","ORA LWORD",37, 0)
  18524    .Q:ORQUIT
  18525   "RTN","ORA LWORD",38, 0)
  18526    .I '$D(^X USEC("YSCL  AUTHORIZE D",PROV))  D
  18527   "RTN","ORA LWORD",39, 0)
  18528    ..S ORQUI T=1,ORY=1
  18529   "RTN","ORA LWORD",40, 0)
  18530    ..S ORY(1 )="*** You  are not a uthorized  to place C lozapine o rders."
  18531   "RTN","ORA LWORD",41, 0)
  18532    ..S ORY(2 )="You mus t hold key  YSCL AUTH ORIZED.  P lease cont act your"
  18533   "RTN","ORA LWORD",42, 0)
  18534    ..S ORY(3 )="CAC or  IRM for mo re informa tion on th is key. ** *"
  18535   "RTN","ORA LWORD",43, 0)
  18536    Q:ORQUIT
  18537   "RTN","ORA LWORD",44, 0)
  18538    ;  if is  a cloz med  , check i f patient  (DFN) can  have a clo zapine med
  18539   "RTN","ORA LWORD",45, 0)
  18540    S ORYS=$$ CL^YSCLTST 2(DFN)
  18541   "RTN","ORA LWORD",46, 0)
  18542    ;    if y es returns  ORY=0
  18543   "RTN","ORA LWORD",47, 0)
  18544    I +ORYS>0  D BEFQUIT   Q
  18545   "RTN","ORA LWORD",48, 0)
  18546    ;    if n
  18547   "RTN","ORA LWORD",49, 0)
  18548    ;      re turns 
  18549   "RTN","ORA LWORD",50, 0)
  18550    ;    ORY= 1
  18551   "RTN","ORA LWORD",51, 0)
  18552    ;    ORY( 0)=CAPTION  FOR DIALO G BOX
  18553   "RTN","ORA LWORD",52, 0)
  18554    ;    ORY( 1-N)=MESSA GE TO DISP LAY
  18555   "RTN","ORA LWORD",53, 0)
  18556    S ORY=1_U _ORCLOZ,OR Y(0)="Prob lem Orderi ng Clozapi ne Related  Medicatio n"_U_ORCLO Z
  18557   "RTN","ORA LWORD",54, 0)
  18558    ;patient  not in clo zapine pat ient progr am
  18559   "RTN","ORA LWORD",55, 0)
  18560    ;; START  NCC REMEDI ATION >> 4 27*RJS
  18561   "RTN","ORA LWORD",56, 0)
  18562    I +ORYS<0  D  Q
  18563   "RTN","ORA LWORD",57, 0)
  18564    .S ORY(1) ="*** This  patient i s not regi stered in  the clozap ine treatm ent "
  18565   "RTN","ORA LWORD",58, 0)
  18566    .S ORY(2) ="program  or has bee n disconti nued from  the progra m. A new"
  18567   "RTN","ORA LWORD",59, 0)
  18568    .S ORY(3) ="registra tion numbe r must be  assigned.  If this is  not an em ergency,"
  18569   "RTN","ORA LWORD",60, 0)
  18570    .S ORY(4) ="contact  the NCCC.  For emerge ncy regist ration dur ing non-NC CC duty"
  18571   "RTN","ORA LWORD",61, 0)
  18572    .S ORY(5) ="hours, a  written o rder to th e pharmaci st can be  used to pr ocess a"
  18573   "RTN","ORA LWORD",62, 0)
  18574    .S ORY(6) ="registra tion overr ide. ***"
  18575   "RTN","ORA LWORD",63, 0)
  18576    ;problem  with lab t ests
  18577   "RTN","ORA LWORD",64, 0)
  18578    I +ORYS=0  D  Q
  18579   "RTN","ORA LWORD",65, 0)
  18580    .I $$OVER RIDE^YSCLT ST2(DFN) S  ORY=0_U_O RCLOZ,ORY( 0)=U_ORCLO Z D BEFQUI T  Q  ;ove rride allo wed
  18581   "RTN","ORA LWORD",66, 0)
  18582    .I +$P(OR YS,"^",2), $P(ORYS,"^ ",4)<1000  D
  18583   "RTN","ORA LWORD",67, 0)
  18584    ..N COUNT  S COUNT=0
  18585   "RTN","ORA LWORD",68, 0)
  18586    ..S COUNT =COUNT+1,O RY(COUNT)= "*** This  clozapine  drug may n ot be disp ensed to t he patient  at this "
  18587   "RTN","ORA LWORD",69, 0)
  18588    ..S COUNT =COUNT+1,O RY(COUNT)= "time base d on the a vailable l ab tests r elated to  the clozap ine "
  18589   "RTN","ORA LWORD",70, 0)
  18590    ..S COUNT =COUNT+1,O RY(COUNT)= "treatment  program.  Please con tact the N CCC to req uest an ov erride in"
  18591   "RTN","ORA LWORD",71, 0)
  18592    ..S COUNT =COUNT+1,O RY(COUNT)= "order to  proceed wi th dispens ing this d rug. ***"
  18593   "RTN","ORA LWORD",72, 0)
  18594    ..D DISPR SLT
  18595   "RTN","ORA LWORD",73, 0)
  18596    .I '$P(OR YS,U,2),$P (ORYS,U,4)  D
  18597   "RTN","ORA LWORD",74, 0)
  18598    ..N COUNT  S COUNT=0
  18599   "RTN","ORA LWORD",75, 0)
  18600    ..S COUNT =COUNT+1,O RY(COUNT)= "*** Permi ssion to d ispense cl ozapine ha s been den ied based  on the ava ilable"
  18601   "RTN","ORA LWORD",76, 0)
  18602    ..S COUNT =COUNT+1,O RY(COUNT)= "lab tests  related t o the cloz apine trea tment prog ram.***"
  18603   "RTN","ORA LWORD",77, 0)
  18604    ..S COUNT =COUNT+1,O RY(COUNT)= ""
  18605   "RTN","ORA LWORD",78, 0)
  18606    ..S COUNT =COUNT+1,O RY(COUNT)= "The lates t lab test  results d rawn in th e past 7 d ays have A NC results  but no"
  18607   "RTN","ORA LWORD",79, 0)
  18608    ..S COUNT =COUNT+1,O RY(COUNT)= "matching  WBC. Redo  the lab te sts or con tact the N CCC for a  National O verride"
  18609   "RTN","ORA LWORD",80, 0)
  18610    ..S COUNT =COUNT+1,O RY(COUNT)= "to dispen se clozapi ne with no  matching  WBC result s."
  18611   "RTN","ORA LWORD",81, 0)
  18612    ..D DISPR SLT
  18613   "RTN","ORA LWORD",82, 0)
  18614    .I '+$P(O RYS,"^",4)  D MSG
  18615   "RTN","ORA LWORD",83, 0)
  18616    Q
  18617   "RTN","ORA LWORD",84, 0)
  18618   MSG ;
  18619   "RTN","ORA LWORD",85, 0)
  18620    N COUNT S  COUNT=0
  18621   "RTN","ORA LWORD",86, 0)
  18622    S COUNT=C OUNT+1,ORY (COUNT)="* ** Permiss ion to dis pense cloz apine has  been denie d based on  the"
  18623   "RTN","ORA LWORD",87, 0)
  18624    S COUNT=C OUNT+1,ORY (COUNT)="a vailable l ab tests r elated to  the clozap ine treatm ent progra m. ***"
  18625   "RTN","ORA LWORD",88, 0)
  18626    S COUNT=C OUNT+1,ORY (COUNT)=""
  18627   "RTN","ORA LWORD",89, 0)
  18628    I $P($G(X 0),U)["PSJ " D DISPRS LT S COUNT =COUNT+1,O RY(COUNT)= ""
  18629   "RTN","ORA LWORD",90, 0)
  18630    S COUNT=C OUNT+1,ORY (COUNT)="F or a Natio nal Overri de to disp ense at th e patient' s normal"
  18631   "RTN","ORA LWORD",91, 0)
  18632    S COUNT=C OUNT+1,ORY (COUNT)="f requency,  contact th e NCCC."
  18633   "RTN","ORA LWORD",92, 0)
  18634    S COUNT=C OUNT+1,ORY (COUNT)=""
  18635   "RTN","ORA LWORD",93, 0)
  18636    D:$D(X0)   ;; NCC RE MEDIATION  << 427 RTW  Special C onditions  selections  for outpa tient and  inpatient  RTW
  18637   "RTN","ORA LWORD",94, 0)
  18638    .I $P(X0, U,1)["PSO"  D
  18639   "RTN","ORA LWORD",95, 0)
  18640    ..S COUNT =COUNT+1,O RY(COUNT)= "A local e mergency o verride fo r an Outpa tient can  be approve d for:"
  18641   "RTN","ORA LWORD",96, 0)
  18642    ..S COUNT =COUNT+1,O RY(COUNT)= "(1) weath er-related  condition s, (2) mai l order de lays of cl ozapine,"
  18643   "RTN","ORA LWORD",97, 0)
  18644    ..S COUNT =COUNT+1,O RY(COUNT)= "or (3) in patient go ing on lea ve."
  18645   "RTN","ORA LWORD",98, 0)
  18646    ..S COUNT =COUNT+1,O RY(COUNT)= ""
  18647   "RTN","ORA LWORD",99, 0)
  18648    ..S COUNT =COUNT+1,O RY(COUNT)= "For an Ou tpatient S pecial Con ditions Lo cal Overri de, a writ ten prescr iption fro m"
  18649   "RTN","ORA LWORD",100 ,0)
  18650    ..S COUNT =COUNT+1,O RY(COUNT)= "the provi der with d ocumentati on to the  pharmacist  is requir ed to disp ense"
  18651   "RTN","ORA LWORD",101 ,0)
  18652    ..S COUNT =COUNT+1,O RY(COUNT)= "a one-tim e emergenc y 4-day su pply."
  18653   "RTN","ORA LWORD",102 ,0)
  18654    .I $P(X0, U,1)["PSJ"  D
  18655   "RTN","ORA LWORD",103 ,0)
  18656    ..S COUNT =COUNT+1,O RY(COUNT)= "A local e mergency o verride fo r an Inpat ient can b e approved  for:"
  18657   "RTN","ORA LWORD",104 ,0)
  18658    ..S COUNT =COUNT+1,O RY(COUNT)= "IP Order  Override w ith Outsid e Lab Resu lts"
  18659   "RTN","ORA LWORD",105 ,0)
  18660    ..S COUNT =COUNT+1,O RY(COUNT)= ""
  18661   "RTN","ORA LWORD",106 ,0)
  18662    ..S COUNT =COUNT+1,O RY(COUNT)= "For a Spe cial Condi tions Loca l Override , a writte n order fr om"
  18663   "RTN","ORA LWORD",107 ,0)
  18664    ..S COUNT =COUNT+1,O RY(COUNT)= "the provi der with d ocumentati on to the  pharmacist  is requir ed to"
  18665   "RTN","ORA LWORD",108 ,0)
  18666    ..S COUNT =COUNT+1,O RY(COUNT)= "dispense  a one-time  4-day sup ply."
  18667   "RTN","ORA LWORD",109 ,0)
  18668    ..S COUNT =COUNT+1,O RY(COUNT)= ""
  18669   "RTN","ORA LWORD",110 ,0)
  18670    ..S COUNT =COUNT+1,O RY(COUNT)= "The provi der must r ecord the  ANC from a nother fac ility incl uding date /time in b oth the Pr ovider Pro gress Note  and Comme nt field i n CPRS."
  18671   "RTN","ORA LWORD",111 ,0)
  18672    Q
  18673   "RTN","ORA LWORD",112 ,0)
  18674   DISPRSLT ;  Display L ab Tests
  18675   "RTN","ORA LWORD",113 ,0)
  18676    S COUNT=C OUNT+1,ORY (COUNT)="R elated Lab  Test(s)"
  18677   "RTN","ORA LWORD",114 ,0)
  18678    S COUNT=C OUNT+1,ORY (COUNT)="= ========== ========"
  18679   "RTN","ORA LWORD",115 ,0)
  18680    I $L($P(O RYS,U,3))  S COUNT=CO UNT+1,ORY( COUNT)="WB C:  "_($P( ORYS,U,2)/ 1000)_" K/ cmm"
  18681   "RTN","ORA LWORD",116 ,0)
  18682    E  S COUN T=COUNT+1, ORY(COUNT) ="WBC:  NO  TEST RESU LTS FOUND"
  18683   "RTN","ORA LWORD",117 ,0)
  18684    I $L($P(O RYS,U,5))  S COUNT=CO UNT+1,ORY( COUNT)="AN C:  "_($P( ORYS,U,4)/ 1000)_" K/ cmm"
  18685   "RTN","ORA LWORD",118 ,0)
  18686    E  S COUN T=COUNT+1, ORY(COUNT) ="ANC:  NO  TEST RESU LTS FOUND"
  18687   "RTN","ORA LWORD",119 ,0)
  18688    S COUNT=C OUNT+1,ORY (COUNT)="D ate/Time o f last tes ts: "_$$DA TE^ORU($P( ORYS,U,6))
  18689   "RTN","ORA LWORD",120 ,0)
  18690    Q
  18691   "RTN","ORA LWORD",121 ,0)
  18692    ;; END NC C REMEDIAT ION << 427 *RTW
  18693   "RTN","ORA LWORD",122 ,0)
  18694   BEFQUIT ;
  18695   "RTN","ORA LWORD",123 ,0)
  18696    Q:'$G(QOA A)
  18697   "RTN","ORA LWORD",124 ,0)
  18698    N QODS,QO RF,ORMAX,O RCLPAT
  18699   "RTN","ORA LWORD",125 ,0)
  18700    S QODS=$O (^ORD(101. 41,"AB","O R GTX DAYS  SUPPLY"," ")) Q:QODS '>0
  18701   "RTN","ORA LWORD",126 ,0)
  18702    S QODS=$O (^ORD(101. 41,ORX,6," D",QODS,"" )) Q:QOIEN '>0
  18703   "RTN","ORA LWORD",127 ,0)
  18704    S QODS=$G (^ORD(101. 41,ORX,6,Q ODS,1))
  18705   "RTN","ORA LWORD",128 ,0)
  18706    S QORF=$O (^ORD(101. 41,"AB","O R GTX REFI LLS",""))  Q:QORF'>0
  18707   "RTN","ORA LWORD",129 ,0)
  18708    S QORF=$O (^ORD(101. 41,ORX,6," D",QORF,"" )) Q:QOIEN '>0
  18709   "RTN","ORA LWORD",130 ,0)
  18710    S QORF=$G (^ORD(101. 41,ORX,6,Q ORF,1))
  18711   "RTN","ORA LWORD",131 ,0)
  18712    S QORF=QO RF+1
  18713   "RTN","ORA LWORD",132 ,0)
  18714    S ORCLPAT =$P(ORYS,U ,7)
  18715   "RTN","ORA LWORD",133 ,0)
  18716    S ORMAX=$ S(ORYS="M" :28,ORYS=" B":14,ORYS ="W":7,1:9 0)
  18717   "RTN","ORA LWORD",134 ,0)
  18718    I QORF*QO DS>ORMAX D
  18719   "RTN","ORA LWORD",135 ,0)
  18720    .K ORY
  18721   "RTN","ORA LWORD",136 ,0)
  18722    .S ORY=1_ U_ORCLOZ,O RY(0)="Pro blem Order ing Clozap ine Relate d Medicati on"_U_ORCL OZ
  18723   "RTN","ORA LWORD",137 ,0)
  18724    .S ORY(1) ="*** This  patient i s only all owed an or der with a  maximum D ays Supply  of "_ORMA X_"."
  18725   "RTN","ORA LWORD",138 ,0)
  18726    .S ORY(2) ="This inc ludes the  amounts ad ded by any  refills e ntered in  with the o rder also. "
  18727   "RTN","ORA LWORD",139 ,0)
  18728    Q
  18729   "RTN","ORA LWORD",140 ,0)
  18730   ISCLOZ(ORO I) ;
  18731   "RTN","ORA LWORD",141 ,0)
  18732    N ORPSOI, ORPSDRUG,I SCLOZ
  18733   "RTN","ORA LWORD",142 ,0)
  18734    S ORPSOI= $$GET1^DIQ (101.43,OR OI,2)
  18735   "RTN","ORA LWORD",143 ,0)
  18736    I $P(ORPS OI,";",2)' ="99PSP" Q  0
  18737   "RTN","ORA LWORD",144 ,0)
  18738    K ^TMP($J ,"ORCLOZ")
  18739   "RTN","ORA LWORD",145 ,0)
  18740    D ASP^PSS 50(+ORPSOI ,,,"ORCLOZ ")
  18741   "RTN","ORA LWORD",146 ,0)
  18742    S (ORPSDR UG,ISCLOZ) =0
  18743   "RTN","ORA LWORD",147 ,0)
  18744    F  S ORPS DRUG=$O(^T MP($J,"ORC LOZ",ORPSD RUG)) Q:'O RPSDRUG  D   Q:ISCLOZ
  18745   "RTN","ORA LWORD",148 ,0)
  18746    .K ^TMP($ J,"ORCLOZ2 ")
  18747   "RTN","ORA LWORD",149 ,0)
  18748    .D CLOZ^P SS50(ORPSD RUG,,,,,"O RCLOZ2")
  18749   "RTN","ORA LWORD",150 ,0)
  18750    .I $G(^TM P($J,"ORCL OZ2",ORPSD RUG,"CLOZ" ,0))>0 S I SCLOZ=1
  18751   "RTN","ORA LWORD",151 ,0)
  18752    K ^TMP($J ,"ORCLOZ") ,^TMP($J," ORCLOZ2")
  18753   "RTN","ORA LWORD",152 ,0)
  18754    Q ISCLOZ
  18755   "RTN","ORA LWORD",153 ,0)
  18756   ALLWRN(ORY ,ORN,REFIL LS) ;allow  order to  be renewed
  18757   "RTN","ORA LWORD",154 ,0)
  18758    ;ORN is t he order n umber
  18759   "RTN","ORA LWORD",155 ,0)
  18760    ;REFILLS  is the num ber of ref ills to be  included  with the r enewed ord er
  18761   "RTN","ORA LWORD",156 ,0)
  18762    N ORDS,OR QT,ORUPD,O RSCH,ORDUR ,ORDFN,ORD RG,OROI,OR MAXDS,ORMA XQT,ORCLOZ ,ORREF,ORM AXREF
  18763   "RTN","ORA LWORD",157 ,0)
  18764    ;default  return 1 ( ORY=1 mean s allow re new)
  18765   "RTN","ORA LWORD",158 ,0)
  18766    S ORY=1
  18767   "RTN","ORA LWORD",159 ,0)
  18768    ;get DFN  (ORDFN)
  18769   "RTN","ORA LWORD",160 ,0)
  18770    S ORDFN=+ $P(^OR(100 ,ORN,0),U, 2)
  18771   "RTN","ORA LWORD",161 ,0)
  18772    Q:'ORDFN
  18773   "RTN","ORA LWORD",162 ,0)
  18774    ;get if o rder is a  clozapine  order (ORC LOZ)
  18775   "RTN","ORA LWORD",163 ,0)
  18776    S OROI=$G (^OR(100,O RN,.1,1,0) ) Q:'OROI
  18777   "RTN","ORA LWORD",164 ,0)
  18778    S ORCLOZ= $$ISCLOZ(O ROI)
  18779   "RTN","ORA LWORD",165 ,0)
  18780    ;quit if  order is n ot clozapi ne
  18781   "RTN","ORA LWORD",166 ,0)
  18782    I 'ORCLOZ  Q
  18783   "RTN","ORA LWORD",167 ,0)
  18784    ;get sche dule from  order (ORS CH)
  18785   "RTN","ORA LWORD",168 ,0)
  18786    S ORSCH=$ G(^OR(100, ORN,4.5,$O (^OR(100,O RN,4.5,"ID ","SCHEDUL E",0)),1))
  18787   "RTN","ORA LWORD",169 ,0)
  18788    ;get unit s per dose  from orde r (ORUPD)
  18789   "RTN","ORA LWORD",170 ,0)
  18790    S ORSCH=$ G(^OR(100, ORN,4.5,$O (^OR(100,O RN,4.5,"ID ","DOSE",0 )),1))
  18791   "RTN","ORA LWORD",171 ,0)
  18792    S ORSCH=$ P(ORSCH,"& ",3)
  18793   "RTN","ORA LWORD",172 ,0)
  18794    ;get dura tion from  order (ORD UR)
  18795   "RTN","ORA LWORD",173 ,0)
  18796    I '$O(^OR (100,ORN,4 .5,"ID","D URATION",0 )) S ORDUR ="~^"
  18797   "RTN","ORA LWORD",174 ,0)
  18798    E  S ORSC H=$G(^OR(1 00,ORN,4.5 ,$O(^OR(10 0,ORN,4.5, "ID","DURA TION",0)), 1))
  18799   "RTN","ORA LWORD",175 ,0)
  18800    ;get days  supply fr om order ( ORDS)
  18801   "RTN","ORA LWORD",176 ,0)
  18802    S ORSCH=$ G(^OR(100, ORN,4.5,$O (^OR(100,O RN,4.5,"ID ","SUPPLY" ,0)),1))
  18803   "RTN","ORA LWORD",177 ,0)
  18804    ;get drug  (ptr50) f rom order  (ORDRG)
  18805   "RTN","ORA LWORD",178 ,0)
  18806    S ORSCH=$ G(^OR(100, ORN,4.5,$O (^OR(100,O RN,4.5,"ID ","DRUG",0 )),1))
  18807   "RTN","ORA LWORD",179 ,0)
  18808    ;get refi lls from o rder (ORRE F)
  18809   "RTN","ORA LWORD",180 ,0)
  18810    S ORSCH=$ G(^OR(100, ORN,4.5,$O (^OR(100,O RN,4.5,"ID ","REFILLS ",0)),1))
  18811   "RTN","ORA LWORD",181 ,0)
  18812    ;get quan tity from  order (ORQ T)
  18813   "RTN","ORA LWORD",182 ,0)
  18814    S ORSCH=$ G(^OR(100, ORN,4.5,$O (^OR(100,O RN,4.5,"ID ","QTY",0) ),1))
  18815   "RTN","ORA LWORD",183 ,0)
  18816    ;get max  days suppl y for orde r (ORMAXDS )
  18817   "RTN","ORA LWORD",184 ,0)
  18818    S ORMAXDS =$$DEFSPLY ^ORWDPS1(O RDFN)
  18819   "RTN","ORA LWORD",185 ,0)
  18820    ;if ds fr om order i s > max ds  return 0  (ORY=0)
  18821   "RTN","ORA LWORD",186 ,0)
  18822    I ORDS>OR MAXDS D  Q
  18823   "RTN","ORA LWORD",187 ,0)
  18824    .S ORY=0
  18825   "RTN","ORA LWORD",188 ,0)
  18826    .S ORY(0) ="Problem  Renewing C lozapine R elated Med ication"_U _ORCLOZ
  18827   "RTN","ORA LWORD",189 ,0)
  18828    .S ORY(1) ="The Days  Supply se t for this  order is  greater th an the Max  Days Supp ly"
  18829   "RTN","ORA LWORD",190 ,0)
  18830    .S ORY(2) ="    allo wed for th is patient ."
  18831   "RTN","ORA LWORD",191 ,0)
  18832    ;get max  quantity f or order ( ORMAXQT)
  18833   "RTN","ORA LWORD",192 ,0)
  18834    D DAY2QTY ^ORWDPS2(. ORMAXQT,OR DS,ORUPD,O RSCH,ORDUR ,ORDFN,ORD RG)
  18835   "RTN","ORA LWORD",193 ,0)
  18836    ;if qt fr om order i s > max qt  return 0  (ORY=0)
  18837   "RTN","ORA LWORD",194 ,0)
  18838    I ORQT>OR MAXQT D  Q
  18839   "RTN","ORA LWORD",195 ,0)
  18840    .S ORY=0
  18841   "RTN","ORA LWORD",196 ,0)
  18842    .S ORY(0) ="Problem  Renewing C lozapine R elated Med ication"_U _ORCLOZ
  18843   "RTN","ORA LWORD",197 ,0)
  18844    .S ORY(1) ="The Quan tity set f or this or der is gre ater than  the Max Qu antity"
  18845   "RTN","ORA LWORD",198 ,0)
  18846    .S ORY(2) ="    allo wed for th is patient ."
  18847   "RTN","ORA LWORD",199 ,0)
  18848    ;get max  refills fo r order (O RMAXREF)
  18849   "RTN","ORA LWORD",200 ,0)
  18850    D MAXREF^ ORWDPS2(.O RMAXREF,OR DFN,ORDRG, ORDS,OROI, 1)
  18851   "RTN","ORA LWORD",201 ,0)
  18852    ;if refil l from ord er is > ma x refills  return 0 ( ORY=0)
  18853   "RTN","ORA LWORD",202 ,0)
  18854    I ORREF>O RMAXREF D   Q
  18855   "RTN","ORA LWORD",203 ,0)
  18856    .S ORY=0
  18857   "RTN","ORA LWORD",204 ,0)
  18858    .S ORY(0) ="Problem  Renewing C lozapine R elated Med ication"_U _ORCLOZ
  18859   "RTN","ORA LWORD",205 ,0)
  18860    .S ORY(1) ="The Refi lls field  set for th is order i s greater  than the R efills"
  18861   "RTN","ORA LWORD",206 ,0)
  18862    .S ORY(2) ="    allo wed for th is patient  with the  order havi ng a Days  Supply "
  18863   "RTN","ORA LWORD",207 ,0)
  18864    .S ORY(3) ="    of " _ORDS_"."
  18865   "RTN","ORA LWORD",208 ,0)
  18866    Q
  18867   "RTN","ORY 4270")
  18868   0^1^B15564 639
  18869   "RTN","ORY 4270",1,0)
  18870   ORY4270 ;S LC/RJS,CLA  - OCX PAC KAGE RULE  TRANSPORT  ROUTINE (D elete afte r Install  of OR*3*42 7) ;MAR 7, 2017 at 15 :12
  18871   "RTN","ORY 4270",2,0)
  18872    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  18873   "RTN","ORY 4270",3,0)
  18874    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  18875   "RTN","ORY 4270",4,0)
  18876    ;
  18877   "RTN","ORY 4270",5,0)
  18878   S ;
  18879   "RTN","ORY 4270",6,0)
  18880    ;
  18881   "RTN","ORY 4270",7,0)
  18882    Q
  18883   "RTN","ORY 4270",8,0)
  18884    ;
  18885   "RTN","ORY 4270",9,0)
  18886   WARN(RTN,M SG,LINES)  ;
  18887   "RTN","ORY 4270",10,0 )
  18888    ;
  18889   "RTN","ORY 4270",11,0 )
  18890    Q:$G(OCXA UTO)
  18891   "RTN","ORY 4270",12,0 )
  18892    ;
  18893   "RTN","ORY 4270",13,0 )
  18894    N DASH,LI NE,NLINE,P LINE
  18895   "RTN","ORY 4270",14,0 )
  18896    ;
  18897   "RTN","ORY 4270",15,0 )
  18898    S DASH="" ,$P(DASH," -",(55-$L( MSG)-2))=" -"
  18899   "RTN","ORY 4270",16,0 )
  18900    W !!,"--- ---------- -",MSG,DAS H
  18901   "RTN","ORY 4270",17,0 )
  18902    ;
  18903   "RTN","ORY 4270",18,0 )
  18904    W !,RTN,? 10,"[ D N S . URL ] -> [",$$ NETNAME^OC XSEND,"] L ine"
  18905   "RTN","ORY 4270",19,0 )
  18906    ;
  18907   "RTN","ORY 4270",20,0 )
  18908    I $O(LINE S($O(LINES (0)))) W " s: "
  18909   "RTN","ORY 4270",21,0 )
  18910    E  W ": "
  18911   "RTN","ORY 4270",22,0 )
  18912    ;
  18913   "RTN","ORY 4270",23,0 )
  18914    S LINE=0  F  S LINE= $O(LINES(L INE)) Q:'L INE  D
  18915   "RTN","ORY 4270",24,0 )
  18916    .W:($X>60 ) !,?40
  18917   "RTN","ORY 4270",25,0 )
  18918    .S NLINE= LINE F  S  PLINE=NLIN E,NLINE=$O (LINES(NLI NE)) Q:(NL INE-PLINE- 1)
  18919   "RTN","ORY 4270",26,0 )
  18920    .I (PLINE =LINE) W "  ",LINE
  18921   "RTN","ORY 4270",27,0 )
  18922    .E  W " " ,LINE,"-", PLINE S LI NE=PLINE
  18923   "RTN","ORY 4270",28,0 )
  18924    ;
  18925   "RTN","ORY 4270",29,0 )
  18926    W ! Q
  18927   "RTN","ORY 4270",30,0 )
  18928    ;
  18929   "RTN","ORY 4270",31,0 )
  18930   TEXT(RTN,L INE) ;
  18931   "RTN","ORY 4270",32,0 )
  18932    ;
  18933   "RTN","ORY 4270",33,0 )
  18934    N TEXT X  "S TEXT=$T (+"_(+LINE )_"^"_RTN_ ")" Q TEXT
  18935   "RTN","ORY 4270",34,0 )
  18936    ;
  18937   "RTN","ORY 4270",35,0 )
  18938   HEADER ;
  18939   "RTN","ORY 4270",36,0 )
  18940    ;
  18941   "RTN","ORY 4270",37,0 )
  18942    W !," Cre ated: MAR  7,2017 at  15:12    at    D N S . URL "
  18943   "RTN","ORY 4270",38,0 )
  18944    W !," Cur rent Date:  ",$$NOW,"   at  ",$$ NETNAME^OC XSEND,!!
  18945   "RTN","ORY 4270",39,0 )
  18946    S LASTFIL E=0 K ^TMP ("OCXRULE" ,$J)
  18947   "RTN","ORY 4270",40,0 )
  18948    S ^TMP("O CXRULE",$J )=($P($H," ,",2)+($H* 86400)+(1* 60*60))_"  <- ^TMP EN TRY EXPIRA TION DATE  FOR ^OCXOP URG"
  18949   "RTN","ORY 4270",41,0 )
  18950    Q
  18951   "RTN","ORY 4270",42,0 )
  18952    ;
  18953   "RTN","ORY 4270",43,0 )
  18954   GETFILE(FI LE,RECNAME ,ARRAY) ;
  18955   "RTN","ORY 4270",44,0 )
  18956    ;
  18957   "RTN","ORY 4270",45,0 )
  18958    N CHECK,G LNEXT,GLRE F,LINES,RE C,DD,FLD
  18959   "RTN","ORY 4270",46,0 )
  18960    S REC=$$L OOKUP(FILE ,RECNAME)
  18961   "RTN","ORY 4270",47,0 )
  18962    I 'REC W  !!,$$FILEN AME^OCXSEN DD(FILE)," : ",RECNAM E Q 0
  18963   "RTN","ORY 4270",48,0 )
  18964    I (REC=-1 ) W !!,$$F ILENAME^OC XSENDD(FIL E),": ",RE CNAME,"  d uplicate l ocal entri es.",! Q 0
  18965   "RTN","ORY 4270",49,0 )
  18966    I (REC=-2 ) W !!,$$F ILENAME^OC XSENDD(FIL E)," (",FI LE,") loca l file not  found." W  ! Q:$$PAU SE -10 Q R EC
  18967   "RTN","ORY 4270",50,0 )
  18968    I (REC<0)  W !!,$$FI LENAME^OCX SENDD(FILE ),": ",REC NAME,"  un known look up error."  W ! Q:$$P AUSE -10 Q  REC
  18969   "RTN","ORY 4270",51,0 )
  18970    I (REC>0)  D
  18971   "RTN","ORY 4270",52,0 )
  18972    .S CHECK= 0,LINES=0
  18973   "RTN","ORY 4270",53,0 )
  18974    .D GETREC ($$FILE^OC XSENDD(FIL E,"GLOBAL  NAME"),"AR RAY(",REC, .ARRAY)
  18975   "RTN","ORY 4270",54,0 )
  18976    .S GLREF= "ARRAY" F   S GLREF=$ Q(@GLREF)  Q:'$L(GLRE F)  Q:'($E (GLREF,1,6 )="ARRAY(" )  K:'$L(@ GLREF) @GL REF
  18977   "RTN","ORY 4270",55,0 )
  18978    ;
  18979   "RTN","ORY 4270",56,0 )
  18980    Q REC
  18981   "RTN","ORY 4270",57,0 )
  18982    ;
  18983   "RTN","ORY 4270",58,0 )
  18984   LKUPARRY(D D,KEY,ARRA Y) ;
  18985   "RTN","ORY 4270",59,0 )
  18986    ;
  18987   "RTN","ORY 4270",60,0 )
  18988    N D0 S D0 =0 F  S D0 =$O(ARRAY( DD,D0)) Q: 'D0  Q:($G (ARRAY(DD, D0,.01,"E" ))=KEY)
  18989   "RTN","ORY 4270",61,0 )
  18990    Q D0
  18991   "RTN","ORY 4270",62,0 )
  18992    ;
  18993   "RTN","ORY 4270",63,0 )
  18994   LOOKUP(FIL E,KEY) ;
  18995   "RTN","ORY 4270",64,0 )
  18996    I $O(^TMP ("OCXRULE" ,$J,"B",FI LE,KEY,0))  Q 0
  18997   "RTN","ORY 4270",65,0 )
  18998    N RECNAM, REC,D0,CNT ,SHORT S ( REC,CNT)=0
  18999   "RTN","ORY 4270",66,0 )
  19000    S GL=$$FI LE^OCXSEND D(FILE,"GL OBAL NAME" ) Q:'$L(GL ) -2 S GL= $E(GL,1,$L (GL)-1)_") "
  19001   "RTN","ORY 4270",67,0 )
  19002    S SHORT=$ E(KEY,1,30 ),RECNAM=S HORT D  F   S RECNAM= $O(@GL@("B ",RECNAM))  Q:'$L(REC NAM)  Q:'( $E(RECNAM, 1,$L(SHORT ))=SHORT)   D
  19003   "RTN","ORY 4270",68,0 )
  19004    .S D0=0 F   S D0=$O( @GL@("B",R ECNAM,D0))  Q:'D0  I  ($P($G(@GL @(D0,0)),U ,1)=KEY) S  CNT=CNT+1 ,REC=D0_U_ RECNAME
  19005   "RTN","ORY 4270",69,0 )
  19006    Q:(CNT>1)  -1
  19007   "RTN","ORY 4270",70,0 )
  19008    S:$L($P(R EC,U,2)) ^ TMP("OCXRU LE",$J,"A" ,FILE,$P(R EC,U,2))=" "
  19009   "RTN","ORY 4270",71,0 )
  19010    Q +REC
  19011   "RTN","ORY 4270",72,0 )
  19012    ;
  19013   "RTN","ORY 4270",73,0 )
  19014   GETREC(GL, PATH,D0,RE M) ;
  19015   "RTN","ORY 4270",74,0 )
  19016    ;
  19017   "RTN","ORY 4270",75,0 )
  19018    Q:'($P($G (@(GL_"0)" )),U,2))
  19019   "RTN","ORY 4270",76,0 )
  19020    N S1,DATA ,DD
  19021   "RTN","ORY 4270",77,0 )
  19022    S DATA=""  D DIQ(GL, D0,.DATA)
  19023   "RTN","ORY 4270",78,0 )
  19024    S DD=$O(D ATA(0)) Q: 'DD
  19025   "RTN","ORY 4270",79,0 )
  19026    ;
  19027   "RTN","ORY 4270",80,0 )
  19028    I $L($$FI LE^OCXSEND D(DD,"NAME ")) S PATH =PATH_"""" _DD_":"_D0 _""""
  19029   "RTN","ORY 4270",81,0 )
  19030    I '$L($$F ILE^OCXSEN DD(DD,"NAM E")) S PAT H=PATH_"," ""_DD_":"_ D0_""""
  19031   "RTN","ORY 4270",82,0 )
  19032    M @(PATH_ ")")=DATA( DD,D0)
  19033   "RTN","ORY 4270",83,0 )
  19034    ;
  19035   "RTN","ORY 4270",84,0 )
  19036    S S1="" F   S S1=$O( @(GL_D0_", "_$$SUB(S1 )_")")) Q: '$L(S1)  I  ($D(@(GL_ D0_","_$$S UB(S1)_")" ))>3) D
  19037   "RTN","ORY 4270",85,0 )
  19038    .N D1,GLR EF S GLREF =GL_D0_"," _$$SUB(S1) _","
  19039   "RTN","ORY 4270",86,0 )
  19040    .S D1=0 F   S D1=$O( @(GLREF_D1 _")")) Q:' D1  D GETR EC(GLREF,P ATH,D1,.RE M)
  19041   "RTN","ORY 4270",87,0 )
  19042    ;
  19043   "RTN","ORY 4270",88,0 )
  19044    Q
  19045   "RTN","ORY 4270",89,0 )
  19046    ;
  19047   "RTN","ORY 4270",90,0 )
  19048   SUB(X) Q:' (X=+X) """ "_X_"""" Q  X
  19049   "RTN","ORY 4270",91,0 )
  19050    ;
  19051   "RTN","ORY 4270",92,0 )
  19052   DIQ(DIC,DA ,OCXARY) ;
  19053   "RTN","ORY 4270",93,0 )
  19054    N DR,DIQ  S DR=".01: 99999",DIQ ="OCXARY(" ,DIQ(0)="E N" D EN^DI Q1
  19055   "RTN","ORY 4270",94,0 )
  19056    Q
  19057   "RTN","ORY 4270",95,0 )
  19058    ;
  19059   "RTN","ORY 4270",96,0 )
  19060   PAUSE() W  "  Press E nter " R X :DTIME W !  Q (X[U)
  19061   "RTN","ORY 4270",97,0 )
  19062    ;
  19063   "RTN","ORY 4270",98,0 )
  19064   NOW() N X, Y,%DT S X= "N",%DT="T " D ^%DT S  Y=$$DATE^ OCXSENDD(Y ) S:(Y["@" ) Y=$P(Y," @",1)_" at  "_$P(Y,"@ ",2) Q Y
  19065   "RTN","ORY 4270",99,0 )
  19066    ;
  19067   "RTN","ORY 42701")
  19068   0^6^B70749 911
  19069   "RTN","ORY 42701",1,0 )
  19070   ORY42701 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  19071   "RTN","ORY 42701",2,0 )
  19072    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  19073   "RTN","ORY 42701",3,0 )
  19074    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  19075   "RTN","ORY 42701",4,0 )
  19076    ;
  19077   "RTN","ORY 42701",5,0 )
  19078   S ;
  19079   "RTN","ORY 42701",6,0 )
  19080    ;
  19081   "RTN","ORY 42701",7,0 )
  19082    D DOT^ORY 427ES
  19083   "RTN","ORY 42701",8,0 )
  19084    ;
  19085   "RTN","ORY 42701",9,0 )
  19086    ;
  19087   "RTN","ORY 42701",10, 0)
  19088    K REMOTE, LOCAL,OPCO DE,REF
  19089   "RTN","ORY 42701",11, 0)
  19090    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  19091   "RTN","ORY 42701",12, 0)
  19092    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  19093   "RTN","ORY 42701",13, 0)
  19094    ;
  19095   "RTN","ORY 42701",14, 0)
  19096    G ^ORY427 02
  19097   "RTN","ORY 42701",15, 0)
  19098    ;
  19099   "RTN","ORY 42701",16, 0)
  19100    Q
  19101   "RTN","ORY 42701",17, 0)
  19102    ;
  19103   "RTN","ORY 42701",18, 0)
  19104   DATA ;
  19105   "RTN","ORY 42701",19, 0)
  19106    ;
  19107   "RTN","ORY 42701",20, 0)
  19108    ;;ROOT^OC XS(860.2,0 )^ORDER CH ECK RULE^8 60.2I
  19109   "RTN","ORY 42701",21, 0)
  19110    ;;ROOT^OC XS(860.3,0 )^ORDER CH ECK ELEMEN T^860.3
  19111   "RTN","ORY 42701",22, 0)
  19112    ;;ROOT^OC XS(860.4,0 )^ORDER CH ECK DATA F IELD^860.4 I
  19113   "RTN","ORY 42701",23, 0)
  19114    ;;ROOT^OC XS(860.5,0 )^ORDER CH ECK DATA S OURCE^860. 5
  19115   "RTN","ORY 42701",24, 0)
  19116    ;;ROOT^OC XS(860.6,0 )^ORDER CH ECK DATA C ONTEXT^860 .6
  19117   "RTN","ORY 42701",25, 0)
  19118    ;;ROOT^OC XS(860.8,0 )^ORDER CH ECK COMPIL ER FUNCTIO NS^860.8
  19119   "RTN","ORY 42701",26, 0)
  19120    ;;ROOT^OC XS(860.9,0 )^ORDER CH ECK NATION AL TERM^86 0.9
  19121   "RTN","ORY 42701",27, 0)
  19122    ;;ROOT^OC XS(863,0)^ OCX MDD CL ASS^863
  19123   "RTN","ORY 42701",28, 0)
  19124    ;;ROOT^OC XS(863.1,0 )^OCX MDD  APPLICATIO N^863.1
  19125   "RTN","ORY 42701",29, 0)
  19126    ;;ROOT^OC XS(863.2,0 )^OCX MDD  SUBJECT^86 3.2
  19127   "RTN","ORY 42701",30, 0)
  19128    ;;ROOT^OC XS(863.3,0 )^OCX MDD  LINK^863.3 I
  19129   "RTN","ORY 42701",31, 0)
  19130    ;;ROOT^OC XS(863.4,0 )^OCX MDD  ATTRIBUTE^ 863.4
  19131   "RTN","ORY 42701",32, 0)
  19132    ;;ROOT^OC XS(863.5,0 )^OCX MDD  VALUES^863 .5
  19133   "RTN","ORY 42701",33, 0)
  19134    ;;ROOT^OC XS(863.6,0 )^OCX MDD  METHOD^863 .6
  19135   "RTN","ORY 42701",34, 0)
  19136    ;;ROOT^OC XS(863.7,0 )^OCX MDD  PUBLIC FUN CTION^863. 7
  19137   "RTN","ORY 42701",35, 0)
  19138    ;;ROOT^OC XS(863.8,0 )^OCX MDD  PARAMETER^ 863.8
  19139   "RTN","ORY 42701",36, 0)
  19140    ;;ROOT^OC XS(863.9,0 )^OCX MDD  CONDITION/ FUNCTION^8 63.9I
  19141   "RTN","ORY 42701",37, 0)
  19142    ;;ROOT^OC XS(864,0)^ OCX MDD SI TE PREFERE NCES^864P
  19143   "RTN","ORY 42701",38, 0)
  19144    ;;ROOT^OC XS(864.1,0 )^OCX MDD  DATATYPE^8 64.1
  19145   "RTN","ORY 42701",39, 0)
  19146    ;;ROOT^OC XD(860.1,0 )^ORDER CH ECK PATIEN T ACTIVE D ATA^860.1P
  19147   "RTN","ORY 42701",40, 0)
  19148    ;;ROOT^OC XD(860.7,0 )^ORDER CH ECK PATIEN T RULE EVE NT^860.7P
  19149   "RTN","ORY 42701",41, 0)
  19150    ;;ROOT^OC XD(861,0)^ ORDER CHEC K RAW DATA  LOG^861
  19151   "RTN","ORY 42701",42, 0)
  19152    ;;SOF^863 .8  OCX MD D PARAMETE R
  19153   "RTN","ORY 42701",43, 0)
  19154    ;;KEY^863 .8:^COMPAR ISON VALUE
  19155   "RTN","ORY 42701",44, 0)
  19156    ;;R^"863. 8:",.01,"E "
  19157   "RTN","ORY 42701",45, 0)
  19158    ;;D^COMPA RISON VALU E
  19159   "RTN","ORY 42701",46, 0)
  19160    ;;R^"863. 8:",.02,"E "
  19161   "RTN","ORY 42701",47, 0)
  19162    ;;D^CVAL
  19163   "RTN","ORY 42701",48, 0)
  19164    ;;R^"863. 8:",1,2
  19165   "RTN","ORY 42701",49, 0)
  19166    ;;D^   Th is is a va lue to be  compared w ith PRIMAR Y DATA FIE LD
  19167   "RTN","ORY 42701",50, 0)
  19168    ;;R^"863. 8:",1,3
  19169   "RTN","ORY 42701",51, 0)
  19170    ;;D^ in a  truth con ditional.
  19171   "RTN","ORY 42701",52, 0)
  19172    ;;EOR^
  19173   "RTN","ORY 42701",53, 0)
  19174    ;;KEY^863 .8:^DATA T YPE
  19175   "RTN","ORY 42701",54, 0)
  19176    ;;R^"863. 8:",.01,"E "
  19177   "RTN","ORY 42701",55, 0)
  19178    ;;D^DATA  TYPE
  19179   "RTN","ORY 42701",56, 0)
  19180    ;;R^"863. 8:",.02,"E "
  19181   "RTN","ORY 42701",57, 0)
  19182    ;;D^DATA  TYPE
  19183   "RTN","ORY 42701",58, 0)
  19184    ;;R^"863. 8:",1,1
  19185   "RTN","ORY 42701",59, 0)
  19186    ;;D^An MD D data typ e; i.e., a n entry in  the OCX M DD DATA TY PE file.
  19187   "RTN","ORY 42701",60, 0)
  19188    ;;R^"863. 8:","863.8 4:6",.01," E"
  19189   "RTN","ORY 42701",61, 0)
  19190    ;;D^QUERY
  19191   "RTN","ORY 42701",62, 0)
  19192    ;;R^"863. 8:","863.8 4:6",1,"E"
  19193   "RTN","ORY 42701",63, 0)
  19194    ;;D^Enter  the datat ype
  19195   "RTN","ORY 42701",64, 0)
  19196    ;;R^"863. 8:","863.8 4:7",.01," E"
  19197   "RTN","ORY 42701",65, 0)
  19198    ;;D^DIC
  19199   "RTN","ORY 42701",66, 0)
  19200    ;;R^"863. 8:","863.8 4:7",1,"E"
  19201   "RTN","ORY 42701",67, 0)
  19202    ;;D^864.1
  19203   "RTN","ORY 42701",68, 0)
  19204    ;;R^"863. 8:","863.8 4:8",.01," E"
  19205   "RTN","ORY 42701",69, 0)
  19206    ;;D^DATA  TYPE
  19207   "RTN","ORY 42701",70, 0)
  19208    ;;R^"863. 8:","863.8 4:8",1,"E"
  19209   "RTN","ORY 42701",71, 0)
  19210    ;;D^POINT ER TO A FI LEMAN FILE
  19211   "RTN","ORY 42701",72, 0)
  19212    ;;R^"863. 8:","863.8 4:9",.01," E"
  19213   "RTN","ORY 42701",73, 0)
  19214    ;;D^DIC L OOKUP INDE X STRING
  19215   "RTN","ORY 42701",74, 0)
  19216    ;;R^"863. 8:","863.8 4:9",1,"E"
  19217   "RTN","ORY 42701",75, 0)
  19218    ;;D^B^C
  19219   "RTN","ORY 42701",76, 0)
  19220    ;;EOR^
  19221   "RTN","ORY 42701",77, 0)
  19222    ;;KEY^863 .8:^DIC
  19223   "RTN","ORY 42701",78, 0)
  19224    ;;R^"863. 8:",.01,"E "
  19225   "RTN","ORY 42701",79, 0)
  19226    ;;D^DIC
  19227   "RTN","ORY 42701",80, 0)
  19228    ;;R^"863. 8:",.02,"E "
  19229   "RTN","ORY 42701",81, 0)
  19230    ;;D^DIC
  19231   "RTN","ORY 42701",82, 0)
  19232    ;;R^"863. 8:",1,1
  19233   "RTN","ORY 42701",83, 0)
  19234    ;;D^An op en referen ce used to  specify t he file in  a DIC loo kup
  19235   "RTN","ORY 42701",84, 0)
  19236    ;;R^"863. 8:","863.8 4:1",.01," E"
  19237   "RTN","ORY 42701",85, 0)
  19238    ;;D^DATA  TYPE
  19239   "RTN","ORY 42701",86, 0)
  19240    ;;R^"863. 8:","863.8 4:1",1,"E"
  19241   "RTN","ORY 42701",87, 0)
  19242    ;;D^POINT ER TO A FI LEMAN FILE
  19243   "RTN","ORY 42701",88, 0)
  19244    ;;R^"863. 8:","863.8 4:2",.01," E"
  19245   "RTN","ORY 42701",89, 0)
  19246    ;;D^DIC
  19247   "RTN","ORY 42701",90, 0)
  19248    ;;R^"863. 8:","863.8 4:2",1,"E"
  19249   "RTN","ORY 42701",91, 0)
  19250    ;;D^1
  19251   "RTN","ORY 42701",92, 0)
  19252    ;;R^"863. 8:","863.8 4:3",.01," E"
  19253   "RTN","ORY 42701",93, 0)
  19254    ;;D^QUERY
  19255   "RTN","ORY 42701",94, 0)
  19256    ;;R^"863. 8:","863.8 4:3",1,"E"
  19257   "RTN","ORY 42701",95, 0)
  19258    ;;D^Enter  the name  of the fil e you are  pointing t o
  19259   "RTN","ORY 42701",96, 0)
  19260    ;;EOR^
  19261   "RTN","ORY 42701",97, 0)
  19262    ;;KEY^863 .8:^DIC LO OKUP INDEX  STRING
  19263   "RTN","ORY 42701",98, 0)
  19264    ;;R^"863. 8:",.01,"E "
  19265   "RTN","ORY 42701",99, 0)
  19266    ;;D^DIC L OOKUP INDE X STRING
  19267   "RTN","ORY 42701",100 ,0)
  19268    ;;R^"863. 8:",.02,"E "
  19269   "RTN","ORY 42701",101 ,0)
  19270    ;;D^DICIX
  19271   "RTN","ORY 42701",102 ,0)
  19272    ;;R^"863. 8:",1,1
  19273   "RTN","ORY 42701",103 ,0)
  19274    ;;D^Conta ins the na mes of ind ices to be  used in a  DIC looku p in a com ma
  19275   "RTN","ORY 42701",104 ,0)
  19276    ;;R^"863. 8:",1,2
  19277   "RTN","ORY 42701",105 ,0)
  19278    ;;D^delim ited strin g.
  19279   "RTN","ORY 42701",106 ,0)
  19280    ;;R^"863. 8:","863.8 4:1",.01," E"
  19281   "RTN","ORY 42701",107 ,0)
  19282    ;;D^DATA  TYPE
  19283   "RTN","ORY 42701",108 ,0)
  19284    ;;R^"863. 8:","863.8 4:1",1,"E"
  19285   "RTN","ORY 42701",109 ,0)
  19286    ;;D^FREE  TEXT
  19287   "RTN","ORY 42701",110 ,0)
  19288    ;;R^"863. 8:","863.8 4:2",.01," E"
  19289   "RTN","ORY 42701",111 ,0)
  19290    ;;D^QUERY
  19291   "RTN","ORY 42701",112 ,0)
  19292    ;;R^"863. 8:","863.8 4:2",1,"E"
  19293   "RTN","ORY 42701",113 ,0)
  19294    ;;D^Enter  a DIC loo kup index  string
  19295   "RTN","ORY 42701",114 ,0)
  19296    ;;R^"863. 8:","863.8 4:3",.01," E"
  19297   "RTN","ORY 42701",115 ,0)
  19298    ;;D^HELP  MESSAGE
  19299   "RTN","ORY 42701",116 ,0)
  19300    ;;R^"863. 8:","863.8 4:3",1,"E"
  19301   "RTN","ORY 42701",117 ,0)
  19302    ;;D^This  is an '^'  delimited  string whi ch contain s the name s of indic es which a re to be u sed in a D IC lookup;  e.g., B^C ^DOB.
  19303   "RTN","ORY 42701",118 ,0)
  19304    ;;EOR^
  19305   "RTN","ORY 42701",119 ,0)
  19306    ;;KEY^863 .8:^FILE
  19307   "RTN","ORY 42701",120 ,0)
  19308    ;;R^"863. 8:",.01,"E "
  19309   "RTN","ORY 42701",121 ,0)
  19310    ;;D^FILE
  19311   "RTN","ORY 42701",122 ,0)
  19312    ;;R^"863. 8:",.02,"E "
  19313   "RTN","ORY 42701",123 ,0)
  19314    ;;D^FILE
  19315   "RTN","ORY 42701",124 ,0)
  19316    ;;R^"863. 8:",1,1
  19317   "RTN","ORY 42701",125 ,0)
  19318    ;;D^The i nternal en try number  of a file .
  19319   "RTN","ORY 42701",126 ,0)
  19320    ;;R^"863. 8:","863.8 4:6",.01," E"
  19321   "RTN","ORY 42701",127 ,0)
  19322    ;;D^QUERY
  19323   "RTN","ORY 42701",128 ,0)
  19324    ;;R^"863. 8:","863.8 4:6",1,"E"
  19325   "RTN","ORY 42701",129 ,0)
  19326    ;;D^File
  19327   "RTN","ORY 42701",130 ,0)
  19328    ;;R^"863. 8:","863.8 4:7",.01," E"
  19329   "RTN","ORY 42701",131 ,0)
  19330    ;;D^DATA  TYPE
  19331   "RTN","ORY 42701",132 ,0)
  19332    ;;R^"863. 8:","863.8 4:7",1,"E"
  19333   "RTN","ORY 42701",133 ,0)
  19334    ;;D^POINT ER TO A FI LEMAN FILE
  19335   "RTN","ORY 42701",134 ,0)
  19336    ;;R^"863. 8:","863.8 4:8",.01," E"
  19337   "RTN","ORY 42701",135 ,0)
  19338    ;;D^DIC
  19339   "RTN","ORY 42701",136 ,0)
  19340    ;;R^"863. 8:","863.8 4:8",1,"E"
  19341   "RTN","ORY 42701",137 ,0)
  19342    ;;D^1
  19343   "RTN","ORY 42701",138 ,0)
  19344    ;;EOR^
  19345   "RTN","ORY 42701",139 ,0)
  19346    ;;KEY^863 .8:^FM MAS K
  19347   "RTN","ORY 42701",140 ,0)
  19348    ;;R^"863. 8:",.01,"E "
  19349   "RTN","ORY 42701",141 ,0)
  19350    ;;D^FM MA SK
  19351   "RTN","ORY 42701",142 ,0)
  19352    ;;R^"863. 8:",.02,"E "
  19353   "RTN","ORY 42701",143 ,0)
  19354    ;;D^FM MA SK
  19355   "RTN","ORY 42701",144 ,0)
  19356    ;;R^"863. 8:",1,1
  19357   "RTN","ORY 42701",145 ,0)
  19358    ;;D^Tag^r outine whe re code is  located t o parse th e FM DD an d override  the param eter value
  19359   "RTN","ORY 42701",146 ,0)
  19360    ;;R^"863. 8:","863.8 4:4",.01," E"
  19361   "RTN","ORY 42701",147 ,0)
  19362    ;;D^QUERY
  19363   "RTN","ORY 42701",148 ,0)
  19364    ;;R^"863. 8:","863.8 4:4",1,"E"
  19365   "RTN","ORY 42701",149 ,0)
  19366    ;;D^Enter  tag^routi ne where t he FM MASK  parser is  located
  19367   "RTN","ORY 42701",150 ,0)
  19368    ;;R^"863. 8:","863.8 4:5",.01," E"
  19369   "RTN","ORY 42701",151 ,0)
  19370    ;;D^DATA  TYPE
  19371   "RTN","ORY 42701",152 ,0)
  19372    ;;R^"863. 8:","863.8 4:5",1,"E"
  19373   "RTN","ORY 42701",153 ,0)
  19374    ;;D^LINE  TAG
  19375   "RTN","ORY 42701",154 ,0)
  19376    ;;EOR^
  19377   "RTN","ORY 42701",155 ,0)
  19378    ;;KEY^863 .8:^FREE T EXT MAXIMU M LENGTH
  19379   "RTN","ORY 42701",156 ,0)
  19380    ;;R^"863. 8:",.01,"E "
  19381   "RTN","ORY 42701",157 ,0)
  19382    ;;D^FREE  TEXT MAXIM UM LENGTH
  19383   "RTN","ORY 42701",158 ,0)
  19384    ;;R^"863. 8:",.02,"E "
  19385   "RTN","ORY 42701",159 ,0)
  19386    ;;D^FMAX
  19387   "RTN","ORY 42701",160 ,0)
  19388    ;;R^"863. 8:",1,1
  19389   "RTN","ORY 42701",161 ,0)
  19390    ;;D^Maxim um string  length all owed
  19391   "RTN","ORY 42701",162 ,0)
  19392    ;;R^"863. 8:",2,"E"
  19393   "RTN","ORY 42701",163 ,0)
  19394    ;;D^245
  19395   "RTN","ORY 42701",164 ,0)
  19396    ;;R^"863. 8:","863.8 4:3",.01," E"
  19397   "RTN","ORY 42701",165 ,0)
  19398    ;;D^QUERY
  19399   "RTN","ORY 42701",166 ,0)
  19400    ;;R^"863. 8:","863.8 4:3",1,"E"
  19401   "RTN","ORY 42701",167 ,0)
  19402    ;;D^Maxim um text st ring lengt h allowed
  19403   "RTN","ORY 42701",168 ,0)
  19404    ;;R^"863. 8:","863.8 4:4",.01," E"
  19405   "RTN","ORY 42701",169 ,0)
  19406    ;;D^FM MA SK
  19407   "RTN","ORY 42701",170 ,0)
  19408    ;;R^"863. 8:","863.8 4:4",1,"E"
  19409   "RTN","ORY 42701",171 ,0)
  19410    ;;D^FMAX^ OCXF6
  19411   "RTN","ORY 42701",172 ,0)
  19412    ;;R^"863. 8:","863.8 4:5",.01," E"
  19413   "RTN","ORY 42701",173 ,0)
  19414    ;;D^DATA  TYPE
  19415   "RTN","ORY 42701",174 ,0)
  19416    ;;R^"863. 8:","863.8 4:5",1,"E"
  19417   "RTN","ORY 42701",175 ,0)
  19418    ;;D^POSIT IVE INTEGE R
  19419   "RTN","ORY 42701",176 ,0)
  19420    ;;EOR^
  19421   "RTN","ORY 42701",177 ,0)
  19422    ;;KEY^863 .8:^HELP M ESSAGE
  19423   "RTN","ORY 42701",178 ,0)
  19424    ;;R^"863. 8:",.01,"E "
  19425   "RTN","ORY 42701",179 ,0)
  19426    ;;D^HELP  MESSAGE
  19427   "RTN","ORY 42701",180 ,0)
  19428    ;;R^"863. 8:",.02,"E "
  19429   "RTN","ORY 42701",181 ,0)
  19430    ;;D^HELP
  19431   "RTN","ORY 42701",182 ,0)
  19432    ;;R^"863. 8:",1,1
  19433   "RTN","ORY 42701",183 ,0)
  19434    ;;D^A tex t string 1 -250 chara cters long  which ove rrides the  Fileman h elp
  19435   "RTN","ORY 42701",184 ,0)
  19436    ;;R^"863. 8:",1,2
  19437   "RTN","ORY 42701",185 ,0)
  19438    ;;D^messa ge.
  19439   "RTN","ORY 42701",186 ,0)
  19440    ;;R^"863. 8:","863.8 4:10",.01, "E"
  19441   "RTN","ORY 42701",187 ,0)
  19442    ;;D^QUERY
  19443   "RTN","ORY 42701",188 ,0)
  19444    ;;R^"863. 8:","863.8 4:10",1,"E "
  19445   "RTN","ORY 42701",189 ,0)
  19446    ;;D^Enter  a brief h elp messag e
  19447   "RTN","ORY 42701",190 ,0)
  19448    ;;R^"863. 8:","863.8 4:8",.01," E"
  19449   "RTN","ORY 42701",191 ,0)
  19450    ;;D^DATA  TYPE
  19451   "RTN","ORY 42701",192 ,0)
  19452    ;;R^"863. 8:","863.8 4:8",1,"E"
  19453   "RTN","ORY 42701",193 ,0)
  19454    ;;D^FREE  TEXT
  19455   "RTN","ORY 42701",194 ,0)
  19456    ;;R^"863. 8:","863.8 4:9",.01," E"
  19457   "RTN","ORY 42701",195 ,0)
  19458    ;;D^FM MA SK
  19459   "RTN","ORY 42701",196 ,0)
  19460    ;;R^"863. 8:","863.8 4:9",1,"E"
  19461   "RTN","ORY 42701",197 ,0)
  19462    ;;D^HELP^ OCXF6
  19463   "RTN","ORY 42701",198 ,0)
  19464    ;;EOR^
  19465   "RTN","ORY 42701",199 ,0)
  19466    ;;KEY^863 .8:^LOOP Q UERY
  19467   "RTN","ORY 42701",200 ,0)
  19468    ;;R^"863. 8:",.01,"E "
  19469   "RTN","ORY 42701",201 ,0)
  19470    ;;D^LOOP  QUERY
  19471   "RTN","ORY 42701",202 ,0)
  19472    ;;R^"863. 8:",.02,"E "
  19473   "RTN","ORY 42701",203 ,0)
  19474    ;;D^LOOP  QUERY
  19475   "RTN","ORY 42701",204 ,0)
  19476    ;;R^"863. 8:",1,1
  19477   "RTN","ORY 42701",205 ,0)
  19478    ;;D^Alter nate query  used when  repeated  answers ar e required
  19479   "RTN","ORY 42701",206 ,0)
  19480    ;;R^"863. 8:","863.8 4:1",.01," E"
  19481   "RTN","ORY 42701",207 ,0)
  19482    ;;D^DATA  TYPE
  19483   "RTN","ORY 42701",208 ,0)
  19484    ;;R^"863. 8:","863.8 4:1",1,"E"
  19485   "RTN","ORY 42701",209 ,0)
  19486    ;;D^FREE  TEXT
  19487   "RTN","ORY 42701",210 ,0)
  19488    ;;R^"863. 8:","863.8 4:2",.01," E"
  19489   "RTN","ORY 42701",211 ,0)
  19490    ;;D^QUERY
  19491   "RTN","ORY 42701",212 ,0)
  19492    ;;R^"863. 8:","863.8 4:2",1,"E"
  19493   "RTN","ORY 42701",213 ,0)
  19494    ;;D^Enter  loop quer y text
  19495   "RTN","ORY 42701",214 ,0)
  19496    ;;R^"863. 8:","863.8 4:3",.01," E"
  19497   "RTN","ORY 42701",215 ,0)
  19498    ;;D^HELP  MESSAGE
  19499   "RTN","ORY 42701",216 ,0)
  19500    ;;R^"863. 8:","863.8 4:3",1,"E"
  19501   "RTN","ORY 42701",217 ,0)
  19502    ;;D^This  is the que ry text fo r all entr ies after  the first  one
  19503   "RTN","ORY 42701",218 ,0)
  19504    ;;EOR^
  19505   "RTN","ORY 42701",219 ,0)
  19506    ;;KEY^863 .8:^MANDAT ORY MESSAG E
  19507   "RTN","ORY 42701",220 ,0)
  19508    ;;R^"863. 8:",.01,"E "
  19509   "RTN","ORY 42701",221 ,0)
  19510    ;;D^MANDA TORY MESSA GE
  19511   "RTN","ORY 42701",222 ,0)
  19512    ;;R^"863. 8:",.02,"E "
  19513   "RTN","ORY 42701",223 ,0)
  19514    ;;D^MAND  MSG
  19515   "RTN","ORY 42701",224 ,0)
  19516    ;;R^"863. 8:",1,1
  19517   "RTN","ORY 42701",225 ,0)
  19518    ;;D^Messa ge sent to  user tell ing him th at his ent ry is mand atory
  19519   "RTN","ORY 42701",226 ,0)
  19520    ;;R^"863. 8:",2,"E"
  19521   "RTN","ORY 42701",227 ,0)
  19522    ;;D^Manda tory answe r.  You mu st enter a  value or  '^' to exi t.
  19523   "RTN","ORY 42701",228 ,0)
  19524    ;;R^"863. 8:","863.8 4:4",.01," E"
  19525   "RTN","ORY 42701",229 ,0)
  19526    ;;D^QUERY
  19527   "RTN","ORY 42701",230 ,0)
  19528    ;;R^"863. 8:","863.8 4:4",1,"E"
  19529   "RTN","ORY 42701",231 ,0)
  19530    ;;D^Enter  message
  19531   "RTN","ORY 42701",232 ,0)
  19532    ;;R^"863. 8:","863.8 4:5",.01," E"
  19533   "RTN","ORY 42701",233 ,0)
  19534    ;;D^DATA  TYPE
  19535   "RTN","ORY 42701",234 ,0)
  19536    ;;R^"863. 8:","863.8 4:5",1,"E"
  19537   "RTN","ORY 42701",235 ,0)
  19538    ;;D^FREE  TEXT
  19539   "RTN","ORY 42701",236 ,0)
  19540    ;;EOR^
  19541   "RTN","ORY 42701",237 ,0)
  19542    ;;KEY^863 .8:^OCXO D ATA DRIVE  SOURCE
  19543   "RTN","ORY 42701",238 ,0)
  19544    ;;R^"863. 8:",.01,"E "
  19545   "RTN","ORY 42701",239 ,0)
  19546    ;;D^OCXO  DATA DRIVE  SOURCE
  19547   "RTN","ORY 42701",240 ,0)
  19548    ;;EOR^
  19549   "RTN","ORY 42701",241 ,0)
  19550    ;;KEY^863 .8:^OCXO E XTERNAL FU NCTION CAL L
  19551   "RTN","ORY 42701",242 ,0)
  19552    ;;R^"863. 8:",.01,"E "
  19553   "RTN","ORY 42701",243 ,0)
  19554    ;;D^OCXO  EXTERNAL F UNCTION CA LL
  19555   "RTN","ORY 42701",244 ,0)
  19556    ;;EOR^
  19557   "RTN","ORY 42701",245 ,0)
  19558    ;;KEY^863 .8:^OCXO F ILE POINTE R
  19559   "RTN","ORY 42701",246 ,0)
  19560    ;;R^"863. 8:",.01,"E "
  19561   "RTN","ORY 42701",247 ,0)
  19562    ;;D^OCXO  FILE POINT ER
  19563   "RTN","ORY 42701",248 ,0)
  19564    ;;EOR^
  19565   "RTN","ORY 42701",249 ,0)
  19566    ;;KEY^863 .8:^OCXO G ENERATE CO DE FUNCTIO N
  19567   "RTN","ORY 42701",250 ,0)
  19568    ;;R^"863. 8:",.01,"E "
  19569   "RTN","ORY 42701",251 ,0)
  19570    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  19571   "RTN","ORY 42701",252 ,0)
  19572    ;;R^"863. 8:",.02,"E "
  19573   "RTN","ORY 42701",253 ,0)
  19574    ;;D^GEN
  19575   "RTN","ORY 42701",254 ,0)
  19576    ;;EOR^
  19577   "RTN","ORY 42701",255 ,0)
  19578    ;;KEY^863 .8:^OCXO H L7 SEGMENT  ID
  19579   "RTN","ORY 42701",256 ,0)
  19580    ;;R^"863. 8:",.01,"E "
  19581   "RTN","ORY 42701",257 ,0)
  19582    ;;D^OCXO  HL7 SEGMEN T ID
  19583   "RTN","ORY 42701",258 ,0)
  19584    ;;R^"863. 8:",.02,"E "
  19585   "RTN","ORY 42701",259 ,0)
  19586    ;;D^HL7SE GID
  19587   "RTN","ORY 42701",260 ,0)
  19588    ;;EOR^
  19589   "RTN","ORY 42701",261 ,0)
  19590    ;;KEY^863 .8:^OCXO S EMI-COLON  PIECE NUMB ER
  19591   "RTN","ORY 42701",262 ,0)
  19592    ;;R^"863. 8:",.01,"E "
  19593   "RTN","ORY 42701",263 ,0)
  19594    ;;D^OCXO  SEMI-COLON  PIECE NUM BER
  19595   "RTN","ORY 42701",264 ,0)
  19596    ;;EOR^
  19597   "RTN","ORY 42701",265 ,0)
  19598    ;;KEY^863 .8:^OCXO U P-ARROW PI ECE NUMBER
  19599   "RTN","ORY 42701",266 ,0)
  19600    ;;R^"863. 8:",.01,"E "
  19601   "RTN","ORY 42701",267 ,0)
  19602    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  19603   "RTN","ORY 42701",268 ,0)
  19604    ;;EOR^
  19605   "RTN","ORY 42701",269 ,0)
  19606    ;;KEY^863 .8:^OCXO V ARIABLE NA ME
  19607   "RTN","ORY 42701",270 ,0)
  19608    ;;R^"863. 8:",.01,"E "
  19609   "RTN","ORY 42701",271 ,0)
  19610    ;;D^OCXO  VARIABLE N AME
  19611   "RTN","ORY 42701",272 ,0)
  19612    ;;EOR^
  19613   "RTN","ORY 42701",273 ,0)
  19614    ;;KEY^863 .8:^OCXO V T-BAR PIEC E NUMBER
  19615   "RTN","ORY 42701",274 ,0)
  19616    ;;R^"863. 8:",.01,"E "
  19617   "RTN","ORY 42701",275 ,0)
  19618    ;;D^OCXO  VT-BAR PIE CE NUMBER
  19619   "RTN","ORY 42701",276 ,0)
  19620    ;;EOR^
  19621   "RTN","ORY 42701",277 ,0)
  19622    ;;KEY^863 .8:^PRIMAR Y DATA FIE LD
  19623   "RTN","ORY 42701",278 ,0)
  19624    ;;R^"863. 8:",.01,"E "
  19625   "RTN","ORY 42701",279 ,0)
  19626    ;;D^PRIMA RY DATA FI ELD
  19627   "RTN","ORY 42701",280 ,0)
  19628    ;1;
  19629   "RTN","ORY 42701",281 ,0)
  19630    ;
  19631   "RTN","ORY 42702")
  19632   0^7^B78014 133
  19633   "RTN","ORY 42702",1,0 )
  19634   ORY42702 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  19635   "RTN","ORY 42702",2,0 )
  19636    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  19637   "RTN","ORY 42702",3,0 )
  19638    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  19639   "RTN","ORY 42702",4,0 )
  19640    ;
  19641   "RTN","ORY 42702",5,0 )
  19642   S ;
  19643   "RTN","ORY 42702",6,0 )
  19644    ;
  19645   "RTN","ORY 42702",7,0 )
  19646    D DOT^ORY 427ES
  19647   "RTN","ORY 42702",8,0 )
  19648    ;
  19649   "RTN","ORY 42702",9,0 )
  19650    ;
  19651   "RTN","ORY 42702",10, 0)
  19652    K REMOTE, LOCAL,OPCO DE,REF
  19653   "RTN","ORY 42702",11, 0)
  19654    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  19655   "RTN","ORY 42702",12, 0)
  19656    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  19657   "RTN","ORY 42702",13, 0)
  19658    ;
  19659   "RTN","ORY 42702",14, 0)
  19660    G ^ORY427 03
  19661   "RTN","ORY 42702",15, 0)
  19662    ;
  19663   "RTN","ORY 42702",16, 0)
  19664    Q
  19665   "RTN","ORY 42702",17, 0)
  19666    ;
  19667   "RTN","ORY 42702",18, 0)
  19668   DATA ;
  19669   "RTN","ORY 42702",19, 0)
  19670    ;
  19671   "RTN","ORY 42702",20, 0)
  19672    ;;R^"863. 8:",.02,"E "
  19673   "RTN","ORY 42702",21, 0)
  19674    ;;D^PDFLD
  19675   "RTN","ORY 42702",22, 0)
  19676    ;;R^"863. 8:",1,2
  19677   "RTN","ORY 42702",23, 0)
  19678    ;;D^  Pri mary data  field in a  compariso n expressi on that
  19679   "RTN","ORY 42702",24, 0)
  19680    ;;R^"863. 8:",1,3
  19681   "RTN","ORY 42702",25, 0)
  19682    ;;D^ is t o be teste d.
  19683   "RTN","ORY 42702",26, 0)
  19684    ;;EOR^
  19685   "RTN","ORY 42702",27, 0)
  19686    ;;KEY^863 .8:^QUERY
  19687   "RTN","ORY 42702",28, 0)
  19688    ;;R^"863. 8:",.01,"E "
  19689   "RTN","ORY 42702",29, 0)
  19690    ;;D^QUERY
  19691   "RTN","ORY 42702",30, 0)
  19692    ;;R^"863. 8:",.02,"E "
  19693   "RTN","ORY 42702",31, 0)
  19694    ;;D^QUERY
  19695   "RTN","ORY 42702",32, 0)
  19696    ;;R^"863. 8:",1,1
  19697   "RTN","ORY 42702",33, 0)
  19698    ;;D^Used  with metho ds that ma nage inter active dia logues.  E quivalent  to DIC("A" )
  19699   "RTN","ORY 42702",34, 0)
  19700    ;;R^"863. 8:","863.8 4:1",.01," E"
  19701   "RTN","ORY 42702",35, 0)
  19702    ;;D^DATA  TYPE
  19703   "RTN","ORY 42702",36, 0)
  19704    ;;R^"863. 8:","863.8 4:1",1,"E"
  19705   "RTN","ORY 42702",37, 0)
  19706    ;;D^FREE  TEXT
  19707   "RTN","ORY 42702",38, 0)
  19708    ;;R^"863. 8:","863.8 4:2",.01," E"
  19709   "RTN","ORY 42702",39, 0)
  19710    ;;D^QUERY
  19711   "RTN","ORY 42702",40, 0)
  19712    ;;R^"863. 8:","863.8 4:2",1,"E"
  19713   "RTN","ORY 42702",41, 0)
  19714    ;;D^Enter  the query  (free tex t string)
  19715   "RTN","ORY 42702",42, 0)
  19716    ;;EOR^
  19717   "RTN","ORY 42702",43, 0)
  19718    ;;KEY^863 .8:^REPEAT  THE QUERY
  19719   "RTN","ORY 42702",44, 0)
  19720    ;;R^"863. 8:",.01,"E "
  19721   "RTN","ORY 42702",45, 0)
  19722    ;;D^REPEA T THE QUER Y
  19723   "RTN","ORY 42702",46, 0)
  19724    ;;R^"863. 8:",.02,"E "
  19725   "RTN","ORY 42702",47, 0)
  19726    ;;D^LOOP
  19727   "RTN","ORY 42702",48, 0)
  19728    ;;R^"863. 8:",1,1
  19729   "RTN","ORY 42702",49, 0)
  19730    ;;D^Set t his = 1 to  repetitiv ely ask th e user to  enter a va lue
  19731   "RTN","ORY 42702",50, 0)
  19732    ;;R^"863. 8:","863.8 4:1",.01," E"
  19733   "RTN","ORY 42702",51, 0)
  19734    ;;D^DATA  TYPE
  19735   "RTN","ORY 42702",52, 0)
  19736    ;;R^"863. 8:","863.8 4:1",1,"E"
  19737   "RTN","ORY 42702",53, 0)
  19738    ;;D^YES N O
  19739   "RTN","ORY 42702",54, 0)
  19740    ;;R^"863. 8:","863.8 4:2",.01," E"
  19741   "RTN","ORY 42702",55, 0)
  19742    ;;D^HELP  MESSAGE
  19743   "RTN","ORY 42702",56, 0)
  19744    ;;R^"863. 8:","863.8 4:2",1,"E"
  19745   "RTN","ORY 42702",57, 0)
  19746    ;;D^Answe r 'YES' if  you want  the user t o repetiti vely enter  a value.
  19747   "RTN","ORY 42702",58, 0)
  19748    ;;R^"863. 8:","863.8 4:3",.01," E"
  19749   "RTN","ORY 42702",59, 0)
  19750    ;;D^QUERY
  19751   "RTN","ORY 42702",60, 0)
  19752    ;;R^"863. 8:","863.8 4:3",1,"E"
  19753   "RTN","ORY 42702",61, 0)
  19754    ;;D^Is th e query re petitive
  19755   "RTN","ORY 42702",62, 0)
  19756    ;;EOR^
  19757   "RTN","ORY 42702",63, 0)
  19758    ;;KEY^863 .8:^TERMIN ATOR
  19759   "RTN","ORY 42702",64, 0)
  19760    ;;R^"863. 8:",.01,"E "
  19761   "RTN","ORY 42702",65, 0)
  19762    ;;D^TERMI NATOR
  19763   "RTN","ORY 42702",66, 0)
  19764    ;;R^"863. 8:",.02,"E "
  19765   "RTN","ORY 42702",67, 0)
  19766    ;;D^TERMI NATOR
  19767   "RTN","ORY 42702",68, 0)
  19768    ;;R^"863. 8:",1,1
  19769   "RTN","ORY 42702",69, 0)
  19770    ;;D^A tex t string t erminator;  e.g., '?' , ': ', '= >'
  19771   "RTN","ORY 42702",70, 0)
  19772    ;;R^"863. 8:",2,"E"
  19773   "RTN","ORY 42702",71, 0)
  19774    ;;D^:
  19775   "RTN","ORY 42702",72, 0)
  19776    ;;R^"863. 8:","863.8 4:4",.01," E"
  19777   "RTN","ORY 42702",73, 0)
  19778    ;;D^QUERY
  19779   "RTN","ORY 42702",74, 0)
  19780    ;;R^"863. 8:","863.8 4:4",1,"E"
  19781   "RTN","ORY 42702",75, 0)
  19782    ;;D^Enter  text stri ng termina tor
  19783   "RTN","ORY 42702",76, 0)
  19784    ;;R^"863. 8:","863.8 4:5",.01," E"
  19785   "RTN","ORY 42702",77, 0)
  19786    ;;D^DATA  TYPE
  19787   "RTN","ORY 42702",78, 0)
  19788    ;;R^"863. 8:","863.8 4:5",1,"E"
  19789   "RTN","ORY 42702",79, 0)
  19790    ;;D^FREE  TEXT
  19791   "RTN","ORY 42702",80, 0)
  19792    ;;R^"863. 8:","863.8 4:6",.01," E"
  19793   "RTN","ORY 42702",81, 0)
  19794    ;;D^FREE  TEXT MAXIM UM LENGTH
  19795   "RTN","ORY 42702",82, 0)
  19796    ;;R^"863. 8:","863.8 4:6",1,"E"
  19797   "RTN","ORY 42702",83, 0)
  19798    ;;D^9
  19799   "RTN","ORY 42702",84, 0)
  19800    ;;EOR^
  19801   "RTN","ORY 42702",85, 0)
  19802    ;;KEY^863 .8:^VALUE  CALL
  19803   "RTN","ORY 42702",86, 0)
  19804    ;;R^"863. 8:",.01,"E "
  19805   "RTN","ORY 42702",87, 0)
  19806    ;;D^VALUE  CALL
  19807   "RTN","ORY 42702",88, 0)
  19808    ;;R^"863. 8:",.02,"E "
  19809   "RTN","ORY 42702",89, 0)
  19810    ;;D^VAL C ALL
  19811   "RTN","ORY 42702",90, 0)
  19812    ;;R^"863. 8:",.03,"E "
  19813   "RTN","ORY 42702",91, 0)
  19814    ;;D^NO
  19815   "RTN","ORY 42702",92, 0)
  19816    ;;R^"863. 8:",1,1
  19817   "RTN","ORY 42702",93, 0)
  19818    ;;D^tag^r outine whi ch manages  the dialo gue for co llecting a nd validat ing a valu e
  19819   "RTN","ORY 42702",94, 0)
  19820    ;;R^"863. 8:","863.8 4:3",.01," E"
  19821   "RTN","ORY 42702",95, 0)
  19822    ;;D^QUERY
  19823   "RTN","ORY 42702",96, 0)
  19824    ;;R^"863. 8:","863.8 4:3",1,"E"
  19825   "RTN","ORY 42702",97, 0)
  19826    ;;D^Enter  tag^routi ne
  19827   "RTN","ORY 42702",98, 0)
  19828    ;;R^"863. 8:","863.8 4:4",.01," E"
  19829   "RTN","ORY 42702",99, 0)
  19830    ;;D^DATA  TYPE
  19831   "RTN","ORY 42702",100 ,0)
  19832    ;;R^"863. 8:","863.8 4:4",1,"E"
  19833   "RTN","ORY 42702",101 ,0)
  19834    ;;D^LINE  TAG
  19835   "RTN","ORY 42702",102 ,0)
  19836    ;;EOR^
  19837   "RTN","ORY 42702",103 ,0)
  19838    ;;EOF^OCX S(863.8)^1
  19839   "RTN","ORY 42702",104 ,0)
  19840    ;;SOF^864 .1  OCX MD D DATATYPE
  19841   "RTN","ORY 42702",105 ,0)
  19842    ;;KEY^864 .1:^BOOLEA N
  19843   "RTN","ORY 42702",106 ,0)
  19844    ;;R^"864. 1:",.01,"E "
  19845   "RTN","ORY 42702",107 ,0)
  19846    ;;D^BOOLE AN
  19847   "RTN","ORY 42702",108 ,0)
  19848    ;;R^"864. 1:",.02,"E "
  19849   "RTN","ORY 42702",109 ,0)
  19850    ;;D^BOOL
  19851   "RTN","ORY 42702",110 ,0)
  19852    ;;EOR^
  19853   "RTN","ORY 42702",111 ,0)
  19854    ;;KEY^864 .1:^FREE T EXT
  19855   "RTN","ORY 42702",112 ,0)
  19856    ;;R^"864. 1:",.01,"E "
  19857   "RTN","ORY 42702",113 ,0)
  19858    ;;D^FREE  TEXT
  19859   "RTN","ORY 42702",114 ,0)
  19860    ;;R^"864. 1:",.02,"E "
  19861   "RTN","ORY 42702",115 ,0)
  19862    ;;D^FT
  19863   "RTN","ORY 42702",116 ,0)
  19864    ;;R^"864. 1:",2,"E"
  19865   "RTN","ORY 42702",117 ,0)
  19866    ;;D^GENER IC
  19867   "RTN","ORY 42702",118 ,0)
  19868    ;;R^"864. 1:","864.1 1:1",.01," E"
  19869   "RTN","ORY 42702",119 ,0)
  19870    ;;D^VALUE  CALL
  19871   "RTN","ORY 42702",120 ,0)
  19872    ;;R^"864. 1:","864.1 1:1",1,"E"
  19873   "RTN","ORY 42702",121 ,0)
  19874    ;;D^FT^OC XFDFT
  19875   "RTN","ORY 42702",122 ,0)
  19876    ;;R^"864. 1:","864.1 1:2",.01," E"
  19877   "RTN","ORY 42702",123 ,0)
  19878    ;;D^QUERY
  19879   "RTN","ORY 42702",124 ,0)
  19880    ;;R^"864. 1:","864.1 1:2",1,"E"
  19881   "RTN","ORY 42702",125 ,0)
  19882    ;;D^Enter  a free te xt string
  19883   "RTN","ORY 42702",126 ,0)
  19884    ;;R^"864. 1:","864.1 1:3",.01," E"
  19885   "RTN","ORY 42702",127 ,0)
  19886    ;;D^FREE  TEXT MAXIM UM LENGTH
  19887   "RTN","ORY 42702",128 ,0)
  19888    ;;R^"864. 1:","864.1 1:3",1,"E"
  19889   "RTN","ORY 42702",129 ,0)
  19890    ;;D^240
  19891   "RTN","ORY 42702",130 ,0)
  19892    ;;R^"864. 1:","864.1 1:4",.01," E"
  19893   "RTN","ORY 42702",131 ,0)
  19894    ;;D^HELP  MESSAGE
  19895   "RTN","ORY 42702",132 ,0)
  19896    ;;R^"864. 1:","864.1 1:4",1,"E"
  19897   "RTN","ORY 42702",133 ,0)
  19898    ;;D^Enter  a free te xt string.   Do not u se control  character s.  |FTMM  HELP|
  19899   "RTN","ORY 42702",134 ,0)
  19900    ;;R^"864. 1:","864.1 1:5",.01," E"
  19901   "RTN","ORY 42702",135 ,0)
  19902    ;;D^LOOP  QUERY
  19903   "RTN","ORY 42702",136 ,0)
  19904    ;;R^"864. 1:","864.1 1:5",1,"E"
  19905   "RTN","ORY 42702",137 ,0)
  19906    ;;D^Enter  another f ree text s tring
  19907   "RTN","ORY 42702",138 ,0)
  19908    ;;R^"864. 1:","864.1 1:6",.01," E"
  19909   "RTN","ORY 42702",139 ,0)
  19910    ;;D^REPEA T THE QUER Y
  19911   "RTN","ORY 42702",140 ,0)
  19912    ;;R^"864. 1:","864.1 1:6",1,"E"
  19913   "RTN","ORY 42702",141 ,0)
  19914    ;;D^0
  19915   "RTN","ORY 42702",142 ,0)
  19916    ;;EOR^
  19917   "RTN","ORY 42702",143 ,0)
  19918    ;;KEY^864 .1:^GENERI C
  19919   "RTN","ORY 42702",144 ,0)
  19920    ;;R^"864. 1:",.01,"E "
  19921   "RTN","ORY 42702",145 ,0)
  19922    ;;D^GENER IC
  19923   "RTN","ORY 42702",146 ,0)
  19924    ;;R^"864. 1:",.02,"E "
  19925   "RTN","ORY 42702",147 ,0)
  19926    ;;D^GENER IC
  19927   "RTN","ORY 42702",148 ,0)
  19928    ;;R^"864. 1:","864.1 1:11",.01, "E"
  19929   "RTN","ORY 42702",149 ,0)
  19930    ;;D^MANDA TORY MESSA GE
  19931   "RTN","ORY 42702",150 ,0)
  19932    ;;R^"864. 1:","864.1 1:11",1,"E "
  19933   "RTN","ORY 42702",151 ,0)
  19934    ;;D^This  answer is  mandatory.   Enter a  response o r press '^ ' to exit.
  19935   "RTN","ORY 42702",152 ,0)
  19936    ;;R^"864. 1:","864.1 1:12",.01, "E"
  19937   "RTN","ORY 42702",153 ,0)
  19938    ;;D^TERMI NATOR
  19939   "RTN","ORY 42702",154 ,0)
  19940    ;;R^"864. 1:","864.1 1:12",1,"E "
  19941   "RTN","ORY 42702",155 ,0)
  19942    ;;D^:
  19943   "RTN","ORY 42702",156 ,0)
  19944    ;;R^"864. 1:","864.1 1:13",.01, "E"
  19945   "RTN","ORY 42702",157 ,0)
  19946    ;;D^LOOP  QUERY
  19947   "RTN","ORY 42702",158 ,0)
  19948    ;;R^"864. 1:","864.1 1:13",1,"E "
  19949   "RTN","ORY 42702",159 ,0)
  19950    ;;D^Enter  another v alue
  19951   "RTN","ORY 42702",160 ,0)
  19952    ;;R^"864. 1:","864.1 1:7",.01," E"
  19953   "RTN","ORY 42702",161 ,0)
  19954    ;;D^VALUE  CALL
  19955   "RTN","ORY 42702",162 ,0)
  19956    ;;R^"864. 1:","864.1 1:7",1,"E"
  19957   "RTN","ORY 42702",163 ,0)
  19958    ;;D^GEN^O CXFDMOM
  19959   "RTN","ORY 42702",164 ,0)
  19960    ;;R^"864. 1:","864.1 1:8",.01," E"
  19961   "RTN","ORY 42702",165 ,0)
  19962    ;;D^QUERY
  19963   "RTN","ORY 42702",166 ,0)
  19964    ;;R^"864. 1:","864.1 1:8",1,"E"
  19965   "RTN","ORY 42702",167 ,0)
  19966    ;;D^Enter  a value
  19967   "RTN","ORY 42702",168 ,0)
  19968    ;;R^"864. 1:","864.1 1:9",.01," E"
  19969   "RTN","ORY 42702",169 ,0)
  19970    ;;D^HELP  MESSAGE
  19971   "RTN","ORY 42702",170 ,0)
  19972    ;;R^"864. 1:","864.1 1:9",1,"E"
  19973   "RTN","ORY 42702",171 ,0)
  19974    ;;D^ 
  19975   "RTN","ORY 42702",172 ,0)
  19976    ;;EOR^
  19977   "RTN","ORY 42702",173 ,0)
  19978    ;;KEY^864 .1:^NUMERI C
  19979   "RTN","ORY 42702",174 ,0)
  19980    ;;R^"864. 1:",.01,"E "
  19981   "RTN","ORY 42702",175 ,0)
  19982    ;;D^NUMER IC
  19983   "RTN","ORY 42702",176 ,0)
  19984    ;;R^"864. 1:",.02,"E "
  19985   "RTN","ORY 42702",177 ,0)
  19986    ;;D^NUMER IC
  19987   "RTN","ORY 42702",178 ,0)
  19988    ;;R^"864. 1:",2,"E"
  19989   "RTN","ORY 42702",179 ,0)
  19990    ;;D^GENER IC
  19991   "RTN","ORY 42702",180 ,0)
  19992    ;;R^"864. 1:","864.1 1:1",.01," E"
  19993   "RTN","ORY 42702",181 ,0)
  19994    ;;D^VALUE  CALL
  19995   "RTN","ORY 42702",182 ,0)
  19996    ;;R^"864. 1:","864.1 1:1",1,"E"
  19997   "RTN","ORY 42702",183 ,0)
  19998    ;;D^NU^OC XFDNU
  19999   "RTN","ORY 42702",184 ,0)
  20000    ;;R^"864. 1:","864.1 1:2",.01," E"
  20001   "RTN","ORY 42702",185 ,0)
  20002    ;;D^QUERY
  20003   "RTN","ORY 42702",186 ,0)
  20004    ;;R^"864. 1:","864.1 1:2",1,"E"
  20005   "RTN","ORY 42702",187 ,0)
  20006    ;;D^Enter  a number
  20007   "RTN","ORY 42702",188 ,0)
  20008    ;;R^"864. 1:","864.1 1:3",.01," E"
  20009   "RTN","ORY 42702",189 ,0)
  20010    ;;D^LOOP  QUERY
  20011   "RTN","ORY 42702",190 ,0)
  20012    ;;R^"864. 1:","864.1 1:3",1,"E"
  20013   "RTN","ORY 42702",191 ,0)
  20014    ;;D^Enter  another n umber
  20015   "RTN","ORY 42702",192 ,0)
  20016    ;;R^"864. 1:","864.1 1:4",.01," E"
  20017   "RTN","ORY 42702",193 ,0)
  20018    ;;D^REPEA T THE QUER Y
  20019   "RTN","ORY 42702",194 ,0)
  20020    ;;R^"864. 1:","864.1 1:4",1,"E"
  20021   "RTN","ORY 42702",195 ,0)
  20022    ;;D^0
  20023   "RTN","ORY 42702",196 ,0)
  20024    ;;EOR^
  20025   "RTN","ORY 42702",197 ,0)
  20026    ;;EOF^OCX S(864.1)^1
  20027   "RTN","ORY 42702",198 ,0)
  20028    ;;SOF^863 .7  OCX MD D PUBLIC F UNCTION
  20029   "RTN","ORY 42702",199 ,0)
  20030    ;;KEY^863 .7:^GCC BO OLEAN LOGI CAL FALSE
  20031   "RTN","ORY 42702",200 ,0)
  20032    ;;R^"863. 7:",.01,"E "
  20033   "RTN","ORY 42702",201 ,0)
  20034    ;;D^GCC B OOLEAN LOG ICAL FALSE
  20035   "RTN","ORY 42702",202 ,0)
  20036    ;;R^"863. 7:",.02,"E "
  20037   "RTN","ORY 42702",203 ,0)
  20038    ;;D^EXTRI NSIC FUNCT ION
  20039   "RTN","ORY 42702",204 ,0)
  20040    ;;R^"863. 7:",3,"E"
  20041   "RTN","ORY 42702",205 ,0)
  20042    ;;D^FALSE ^OCXF23
  20043   "RTN","ORY 42702",206 ,0)
  20044    ;;R^"863. 7:","863.7 4:1",.01," E"
  20045   "RTN","ORY 42702",207 ,0)
  20046    ;;D^PRIMA RY DATA FI ELD
  20047   "RTN","ORY 42702",208 ,0)
  20048    ;;R^"863. 7:","863.7 4:1",1.1," E"
  20049   "RTN","ORY 42702",209 ,0)
  20050    ;;D^1
  20051   "RTN","ORY 42702",210 ,0)
  20052    ;;EOR^
  20053   "RTN","ORY 42702",211 ,0)
  20054    ;;KEY^863 .7:^GCC BO OLEAN LOGI CAL TRUE
  20055   "RTN","ORY 42702",212 ,0)
  20056    ;;R^"863. 7:",.01,"E "
  20057   "RTN","ORY 42702",213 ,0)
  20058    ;;D^GCC B OOLEAN LOG ICAL TRUE
  20059   "RTN","ORY 42702",214 ,0)
  20060    ;;R^"863. 7:",.02,"E "
  20061   "RTN","ORY 42702",215 ,0)
  20062    ;;D^EXTRI NSIC FUNCT ION
  20063   "RTN","ORY 42702",216 ,0)
  20064    ;;R^"863. 7:",3,"E"
  20065   "RTN","ORY 42702",217 ,0)
  20066    ;;D^TRUE^ OCXF23
  20067   "RTN","ORY 42702",218 ,0)
  20068    ;;R^"863. 7:","863.7 4:1",.01," E"
  20069   "RTN","ORY 42702",219 ,0)
  20070    ;;D^PRIMA RY DATA FI ELD
  20071   "RTN","ORY 42702",220 ,0)
  20072    ;;R^"863. 7:","863.7 4:1",1.1," E"
  20073   "RTN","ORY 42702",221 ,0)
  20074    ;;D^1
  20075   "RTN","ORY 42702",222 ,0)
  20076    ;;EOR^
  20077   "RTN","ORY 42702",223 ,0)
  20078    ;;KEY^863 .7:^GCC FR EE TEXT EQ UALS
  20079   "RTN","ORY 42702",224 ,0)
  20080    ;;R^"863. 7:",.01,"E "
  20081   "RTN","ORY 42702",225 ,0)
  20082    ;;D^GCC F REE TEXT E QUALS
  20083   "RTN","ORY 42702",226 ,0)
  20084    ;;R^"863. 7:",.02,"E "
  20085   "RTN","ORY 42702",227 ,0)
  20086    ;;D^EXTRI NSIC FUNCT ION
  20087   "RTN","ORY 42702",228 ,0)
  20088    ;;R^"863. 7:",3,"E"
  20089   "RTN","ORY 42702",229 ,0)
  20090    ;;D^AEQ^O CXF22
  20091   "RTN","ORY 42702",230 ,0)
  20092    ;;R^"863. 7:","863.7 4:1",.01," E"
  20093   "RTN","ORY 42702",231 ,0)
  20094    ;;D^PRIMA RY DATA FI ELD
  20095   "RTN","ORY 42702",232 ,0)
  20096    ;;R^"863. 7:","863.7 4:1",1.1," E"
  20097   "RTN","ORY 42702",233 ,0)
  20098    ;;D^1
  20099   "RTN","ORY 42702",234 ,0)
  20100    ;;R^"863. 7:","863.7 4:2",.01," E"
  20101   "RTN","ORY 42702",235 ,0)
  20102    ;;D^COMPA RISON VALU E
  20103   "RTN","ORY 42702",236 ,0)
  20104    ;;R^"863. 7:","863.7 4:2",1.1," E"
  20105   "RTN","ORY 42702",237 ,0)
  20106    ;;D^2
  20107   "RTN","ORY 42702",238 ,0)
  20108    ;;EOR^
  20109   "RTN","ORY 42702",239 ,0)
  20110    ;;KEY^863 .7:^GCC FR EE TEXT ST ARTS WITH
  20111   "RTN","ORY 42702",240 ,0)
  20112    ;;R^"863. 7:",.01,"E "
  20113   "RTN","ORY 42702",241 ,0)
  20114    ;;D^GCC F REE TEXT S TARTS WITH
  20115   "RTN","ORY 42702",242 ,0)
  20116    ;;R^"863. 7:",.02,"E "
  20117   "RTN","ORY 42702",243 ,0)
  20118    ;;D^EXTRI NSIC FUNCT ION
  20119   "RTN","ORY 42702",244 ,0)
  20120    ;;R^"863. 7:",3,"E"
  20121   "RTN","ORY 42702",245 ,0)
  20122    ;;D^START ^OCXF22
  20123   "RTN","ORY 42702",246 ,0)
  20124    ;;R^"863. 7:","863.7 4:1",.01," E"
  20125   "RTN","ORY 42702",247 ,0)
  20126    ;;D^PRIMA RY DATA FI ELD
  20127   "RTN","ORY 42702",248 ,0)
  20128    ;;R^"863. 7:","863.7 4:1",1.1," E"
  20129   "RTN","ORY 42702",249 ,0)
  20130    ;;D^1
  20131   "RTN","ORY 42702",250 ,0)
  20132    ;;R^"863. 7:","863.7 4:2",.01," E"
  20133   "RTN","ORY 42702",251 ,0)
  20134    ;;D^COMPA RISON VALU E
  20135   "RTN","ORY 42702",252 ,0)
  20136    ;;R^"863. 7:","863.7 4:2",1.1," E"
  20137   "RTN","ORY 42702",253 ,0)
  20138    ;;D^2
  20139   "RTN","ORY 42702",254 ,0)
  20140    ;;EOR^
  20141   "RTN","ORY 42702",255 ,0)
  20142    ;;KEY^863 .7:^GCC NU MERIC GREA TER THAN
  20143   "RTN","ORY 42702",256 ,0)
  20144    ;;R^"863. 7:",.01,"E "
  20145   "RTN","ORY 42702",257 ,0)
  20146    ;;D^GCC N UMERIC GRE ATER THAN
  20147   "RTN","ORY 42702",258 ,0)
  20148    ;;R^"863. 7:",.02,"E "
  20149   "RTN","ORY 42702",259 ,0)
  20150    ;;D^EXTRI NSIC FUNCT ION
  20151   "RTN","ORY 42702",260 ,0)
  20152    ;;R^"863. 7:",3,"E"
  20153   "RTN","ORY 42702",261 ,0)
  20154    ;;D^GRT^O CXF20
  20155   "RTN","ORY 42702",262 ,0)
  20156    ;;R^"863. 7:","863.7 4:1",.01," E"
  20157   "RTN","ORY 42702",263 ,0)
  20158    ;;D^PRIMA RY DATA FI ELD
  20159   "RTN","ORY 42702",264 ,0)
  20160    ;;R^"863. 7:","863.7 4:1",1.1," E"
  20161   "RTN","ORY 42702",265 ,0)
  20162    ;;D^1
  20163   "RTN","ORY 42702",266 ,0)
  20164    ;;R^"863. 7:","863.7 4:2",.01," E"
  20165   "RTN","ORY 42702",267 ,0)
  20166    ;;D^COMPA RISON VALU E
  20167   "RTN","ORY 42702",268 ,0)
  20168    ;;R^"863. 7:","863.7 4:2",1.1," E"
  20169   "RTN","ORY 42702",269 ,0)
  20170    ;;D^2
  20171   "RTN","ORY 42702",270 ,0)
  20172    ;;EOR^
  20173   "RTN","ORY 42702",271 ,0)
  20174    ;;KEY^863 .7:^GCC NU MERIC LESS  THAN
  20175   "RTN","ORY 42702",272 ,0)
  20176    ;;R^"863. 7:",.01,"E "
  20177   "RTN","ORY 42702",273 ,0)
  20178    ;;D^GCC N UMERIC LES S THAN
  20179   "RTN","ORY 42702",274 ,0)
  20180    ;;R^"863. 7:",.02,"E "
  20181   "RTN","ORY 42702",275 ,0)
  20182    ;;D^EXTRI NSIC FUNCT ION
  20183   "RTN","ORY 42702",276 ,0)
  20184    ;;R^"863. 7:",3,"E"
  20185   "RTN","ORY 42702",277 ,0)
  20186    ;;D^LESS^ OCXF20
  20187   "RTN","ORY 42702",278 ,0)
  20188    ;;R^"863. 7:","863.7 4:1",.01," E"
  20189   "RTN","ORY 42702",279 ,0)
  20190    ;;D^PRIMA RY DATA FI ELD
  20191   "RTN","ORY 42702",280 ,0)
  20192    ;;R^"863. 7:","863.7 4:1",1.1," E"
  20193   "RTN","ORY 42702",281 ,0)
  20194    ;;D^1
  20195   "RTN","ORY 42702",282 ,0)
  20196    ;;R^"863. 7:","863.7 4:2",.01," E"
  20197   "RTN","ORY 42702",283 ,0)
  20198    ;;D^COMPA RISON VALU E
  20199   "RTN","ORY 42702",284 ,0)
  20200    ;;R^"863. 7:","863.7 4:2",1.1," E"
  20201   "RTN","ORY 42702",285 ,0)
  20202    ;;D^2
  20203   "RTN","ORY 42702",286 ,0)
  20204    ;;EOR^
  20205   "RTN","ORY 42702",287 ,0)
  20206    ;;EOF^OCX S(863.7)^1
  20207   "RTN","ORY 42702",288 ,0)
  20208    ;;SOF^863 .9  OCX MD D CONDITIO N/FUNCTION
  20209   "RTN","ORY 42702",289 ,0)
  20210    ;;KEY^863 .9:^EQ FRE E TEXT
  20211   "RTN","ORY 42702",290 ,0)
  20212    ;;R^"863. 9:",.01,"E "
  20213   "RTN","ORY 42702",291 ,0)
  20214    ;;D^EQ FR EE TEXT
  20215   "RTN","ORY 42702",292 ,0)
  20216    ;;R^"863. 9:",.02,"E "
  20217   "RTN","ORY 42702",293 ,0)
  20218    ;;D^FREE  TEXT
  20219   "RTN","ORY 42702",294 ,0)
  20220    ;;R^"863. 9:",.04,"E "
  20221   "RTN","ORY 42702",295 ,0)
  20222    ;;D^IS EQ UAL TO
  20223   "RTN","ORY 42702",296 ,0)
  20224    ;;R^"863. 9:","863.9 1:3",.01," E"
  20225   "RTN","ORY 42702",297 ,0)
  20226    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  20227   "RTN","ORY 42702",298 ,0)
  20228    ;;R^"863. 9:","863.9 1:3",1,"E"
  20229   "RTN","ORY 42702",299 ,0)
  20230    ;;D^GCC F REE TEXT E QUALS
  20231   "RTN","ORY 42702",300 ,0)
  20232    ;;R^"863. 9:","863.9 2:1",.01," E"
  20233   "RTN","ORY 42702",301 ,0)
  20234    ;;D^EQUAL S
  20235   "RTN","ORY 42702",302 ,0)
  20236    ;;EOR^
  20237   "RTN","ORY 42702",303 ,0)
  20238    ;;KEY^863 .9:^GREATE R THAN
  20239   "RTN","ORY 42702",304 ,0)
  20240    ;;R^"863. 9:",.01,"E "
  20241   "RTN","ORY 42702",305 ,0)
  20242    ;;D^GREAT ER THAN
  20243   "RTN","ORY 42702",306 ,0)
  20244    ;;R^"863. 9:",.02,"E "
  20245   "RTN","ORY 42702",307 ,0)
  20246    ;;D^NUMER IC
  20247   "RTN","ORY 42702",308 ,0)
  20248    ;;R^"863. 9:",.04,"E "
  20249   "RTN","ORY 42702",309 ,0)
  20250    ;;D^IS GR EATER THAN
  20251   "RTN","ORY 42702",310 ,0)
  20252    ;;R^"863. 9:","863.9 1:3",.01," E"
  20253   "RTN","ORY 42702",311 ,0)
  20254    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  20255   "RTN","ORY 42702",312 ,0)
  20256    ;;R^"863. 9:","863.9 1:3",1,"E"
  20257   "RTN","ORY 42702",313 ,0)
  20258    ;;D^GCC N UMERIC GRE ATER THAN
  20259   "RTN","ORY 42702",314 ,0)
  20260    ;;EOR^
  20261   "RTN","ORY 42702",315 ,0)
  20262    ;;KEY^863 .9:^LESS T HAN
  20263   "RTN","ORY 42702",316 ,0)
  20264    ;;R^"863. 9:",.01,"E "
  20265   "RTN","ORY 42702",317 ,0)
  20266    ;;D^LESS  THAN
  20267   "RTN","ORY 42702",318 ,0)
  20268    ;;R^"863. 9:",.02,"E "
  20269   "RTN","ORY 42702",319 ,0)
  20270    ;;D^NUMER IC
  20271   "RTN","ORY 42702",320 ,0)
  20272    ;;R^"863. 9:",.04,"E "
  20273   "RTN","ORY 42702",321 ,0)
  20274    ;;D^IS LE SS THAN
  20275   "RTN","ORY 42702",322 ,0)
  20276    ;;R^"863. 9:","863.9 1:3",.01," E"
  20277   "RTN","ORY 42702",323 ,0)
  20278    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  20279   "RTN","ORY 42702",324 ,0)
  20280    ;1;
  20281   "RTN","ORY 42702",325 ,0)
  20282    ;
  20283   "RTN","ORY 42703")
  20284   0^8^B78325 557
  20285   "RTN","ORY 42703",1,0 )
  20286   ORY42703 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  20287   "RTN","ORY 42703",2,0 )
  20288    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  20289   "RTN","ORY 42703",3,0 )
  20290    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  20291   "RTN","ORY 42703",4,0 )
  20292    ;
  20293   "RTN","ORY 42703",5,0 )
  20294   S ;
  20295   "RTN","ORY 42703",6,0 )
  20296    ;
  20297   "RTN","ORY 42703",7,0 )
  20298    D DOT^ORY 427ES
  20299   "RTN","ORY 42703",8,0 )
  20300    ;
  20301   "RTN","ORY 42703",9,0 )
  20302    ;
  20303   "RTN","ORY 42703",10, 0)
  20304    K REMOTE, LOCAL,OPCO DE,REF
  20305   "RTN","ORY 42703",11, 0)
  20306    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  20307   "RTN","ORY 42703",12, 0)
  20308    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  20309   "RTN","ORY 42703",13, 0)
  20310    ;
  20311   "RTN","ORY 42703",14, 0)
  20312    G ^ORY427 04
  20313   "RTN","ORY 42703",15, 0)
  20314    ;
  20315   "RTN","ORY 42703",16, 0)
  20316    Q
  20317   "RTN","ORY 42703",17, 0)
  20318    ;
  20319   "RTN","ORY 42703",18, 0)
  20320   DATA ;
  20321   "RTN","ORY 42703",19, 0)
  20322    ;
  20323   "RTN","ORY 42703",20, 0)
  20324    ;;R^"863. 9:","863.9 1:3",1,"E"
  20325   "RTN","ORY 42703",21, 0)
  20326    ;;D^GCC N UMERIC LES S THAN
  20327   "RTN","ORY 42703",22, 0)
  20328    ;;EOR^
  20329   "RTN","ORY 42703",23, 0)
  20330    ;;KEY^863 .9:^LOGICA L FALSE
  20331   "RTN","ORY 42703",24, 0)
  20332    ;;R^"863. 9:",.01,"E "
  20333   "RTN","ORY 42703",25, 0)
  20334    ;;D^LOGIC AL FALSE
  20335   "RTN","ORY 42703",26, 0)
  20336    ;;R^"863. 9:",.02,"E "
  20337   "RTN","ORY 42703",27, 0)
  20338    ;;D^BOOLE AN
  20339   "RTN","ORY 42703",28, 0)
  20340    ;;R^"863. 9:",.03,"E "
  20341   "RTN","ORY 42703",29, 0)
  20342    ;;D^GCC B OOLEAN LOG ICAL FALSE
  20343   "RTN","ORY 42703",30, 0)
  20344    ;;R^"863. 9:",.04,"E "
  20345   "RTN","ORY 42703",31, 0)
  20346    ;;D^IS FA LSE
  20347   "RTN","ORY 42703",32, 0)
  20348    ;;R^"863. 9:","863.9 1:1",.01," E"
  20349   "RTN","ORY 42703",33, 0)
  20350    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  20351   "RTN","ORY 42703",34, 0)
  20352    ;;R^"863. 9:","863.9 1:1",1,"E"
  20353   "RTN","ORY 42703",35, 0)
  20354    ;;D^GCC B OOLEAN LOG ICAL FALSE
  20355   "RTN","ORY 42703",36, 0)
  20356    ;;R^"863. 9:","863.9 2:1",.01," E"
  20357   "RTN","ORY 42703",37, 0)
  20358    ;;D^FALSE
  20359   "RTN","ORY 42703",38, 0)
  20360    ;;EOR^
  20361   "RTN","ORY 42703",39, 0)
  20362    ;;KEY^863 .9:^LOGICA L TRUE
  20363   "RTN","ORY 42703",40, 0)
  20364    ;;R^"863. 9:",.01,"E "
  20365   "RTN","ORY 42703",41, 0)
  20366    ;;D^LOGIC AL TRUE
  20367   "RTN","ORY 42703",42, 0)
  20368    ;;R^"863. 9:",.02,"E "
  20369   "RTN","ORY 42703",43, 0)
  20370    ;;D^BOOLE AN
  20371   "RTN","ORY 42703",44, 0)
  20372    ;;R^"863. 9:",.03,"E "
  20373   "RTN","ORY 42703",45, 0)
  20374    ;;D^GCC B OOLEAN LOG ICAL TRUE
  20375   "RTN","ORY 42703",46, 0)
  20376    ;;R^"863. 9:",.04,"E "
  20377   "RTN","ORY 42703",47, 0)
  20378    ;;D^IS TR UE
  20379   "RTN","ORY 42703",48, 0)
  20380    ;;R^"863. 9:","863.9 1:1",.01," E"
  20381   "RTN","ORY 42703",49, 0)
  20382    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  20383   "RTN","ORY 42703",50, 0)
  20384    ;;R^"863. 9:","863.9 1:1",1,"E"
  20385   "RTN","ORY 42703",51, 0)
  20386    ;;D^GCC B OOLEAN LOG ICAL TRUE
  20387   "RTN","ORY 42703",52, 0)
  20388    ;;R^"863. 9:","863.9 2:1",.01," E"
  20389   "RTN","ORY 42703",53, 0)
  20390    ;;D^TRUE
  20391   "RTN","ORY 42703",54, 0)
  20392    ;;EOR^
  20393   "RTN","ORY 42703",55, 0)
  20394    ;;KEY^863 .9:^STARTS  WITH
  20395   "RTN","ORY 42703",56, 0)
  20396    ;;R^"863. 9:",.01,"E "
  20397   "RTN","ORY 42703",57, 0)
  20398    ;;D^START S WITH
  20399   "RTN","ORY 42703",58, 0)
  20400    ;;R^"863. 9:",.02,"E "
  20401   "RTN","ORY 42703",59, 0)
  20402    ;;D^FREE  TEXT
  20403   "RTN","ORY 42703",60, 0)
  20404    ;;R^"863. 9:",.04,"E "
  20405   "RTN","ORY 42703",61, 0)
  20406    ;;D^START S WITH
  20407   "RTN","ORY 42703",62, 0)
  20408    ;;R^"863. 9:","863.9 1:3",.01," E"
  20409   "RTN","ORY 42703",63, 0)
  20410    ;;D^OCXO  GENERATE C ODE FUNCTI ON
  20411   "RTN","ORY 42703",64, 0)
  20412    ;;R^"863. 9:","863.9 1:3",1,"E"
  20413   "RTN","ORY 42703",65, 0)
  20414    ;;D^GCC F REE TEXT S TARTS WITH
  20415   "RTN","ORY 42703",66, 0)
  20416    ;;R^"863. 9:","863.9 2:1",.01," E"
  20417   "RTN","ORY 42703",67, 0)
  20418    ;;D^BEGIN S WITH
  20419   "RTN","ORY 42703",68, 0)
  20420    ;;EOR^
  20421   "RTN","ORY 42703",69, 0)
  20422    ;;EOF^OCX S(863.9)^1
  20423   "RTN","ORY 42703",70, 0)
  20424    ;;SOF^863 .4  OCX MD D ATTRIBUT E
  20425   "RTN","ORY 42703",71, 0)
  20426    ;;KEY^863 .4:^CLOZAP INE ANC W/ IN 7 FLAG
  20427   "RTN","ORY 42703",72, 0)
  20428    ;;R^"863. 4:",.01,"E "
  20429   "RTN","ORY 42703",73, 0)
  20430    ;;D^CLOZA PINE ANC W /IN 7 FLAG
  20431   "RTN","ORY 42703",74, 0)
  20432    ;;R^"863. 4:","863.4 1:1",.01," E"
  20433   "RTN","ORY 42703",75, 0)
  20434    ;;D^DATA  TYPE
  20435   "RTN","ORY 42703",76, 0)
  20436    ;;R^"863. 4:","863.4 1:1",1,"E"
  20437   "RTN","ORY 42703",77, 0)
  20438    ;;D^BOOLE AN
  20439   "RTN","ORY 42703",78, 0)
  20440    ;;EOR^
  20441   "RTN","ORY 42703",79, 0)
  20442    ;;KEY^863 .4:^CLOZAP INE ANC W/ IN 7 RESUL T
  20443   "RTN","ORY 42703",80, 0)
  20444    ;;R^"863. 4:",.01,"E "
  20445   "RTN","ORY 42703",81, 0)
  20446    ;;D^CLOZA PINE ANC W /IN 7 RESU LT
  20447   "RTN","ORY 42703",82, 0)
  20448    ;;R^"863. 4:","863.4 1:1",.01," E"
  20449   "RTN","ORY 42703",83, 0)
  20450    ;;D^DATA  TYPE
  20451   "RTN","ORY 42703",84, 0)
  20452    ;;R^"863. 4:","863.4 1:1",1,"E"
  20453   "RTN","ORY 42703",85, 0)
  20454    ;;D^NUMER IC
  20455   "RTN","ORY 42703",86, 0)
  20456    ;;EOR^
  20457   "RTN","ORY 42703",87, 0)
  20458    ;;KEY^863 .4:^CLOZAP INE LAB RE SULTS
  20459   "RTN","ORY 42703",88, 0)
  20460    ;;R^"863. 4:",.01,"E "
  20461   "RTN","ORY 42703",89, 0)
  20462    ;;D^CLOZA PINE LAB R ESULTS
  20463   "RTN","ORY 42703",90, 0)
  20464    ;;R^"863. 4:","863.4 1:1",.01," E"
  20465   "RTN","ORY 42703",91, 0)
  20466    ;;D^DATA  TYPE
  20467   "RTN","ORY 42703",92, 0)
  20468    ;;R^"863. 4:","863.4 1:1",1,"E"
  20469   "RTN","ORY 42703",93, 0)
  20470    ;;D^FREE  TEXT
  20471   "RTN","ORY 42703",94, 0)
  20472    ;;EOR^
  20473   "RTN","ORY 42703",95, 0)
  20474    ;;KEY^863 .4:^CLOZAP INE MED
  20475   "RTN","ORY 42703",96, 0)
  20476    ;;R^"863. 4:",.01,"E "
  20477   "RTN","ORY 42703",97, 0)
  20478    ;;D^CLOZA PINE MED
  20479   "RTN","ORY 42703",98, 0)
  20480    ;;R^"863. 4:","863.4 1:1",.01," E"
  20481   "RTN","ORY 42703",99, 0)
  20482    ;;D^DATA  TYPE
  20483   "RTN","ORY 42703",100 ,0)
  20484    ;;R^"863. 4:","863.4 1:1",1,"E"
  20485   "RTN","ORY 42703",101 ,0)
  20486    ;;D^BOOLE AN
  20487   "RTN","ORY 42703",102 ,0)
  20488    ;;EOR^
  20489   "RTN","ORY 42703",103 ,0)
  20490    ;;KEY^863 .4:^CLOZAP INE WBC W/ IN 7 FLAG
  20491   "RTN","ORY 42703",104 ,0)
  20492    ;;R^"863. 4:",.01,"E "
  20493   "RTN","ORY 42703",105 ,0)
  20494    ;;D^CLOZA PINE WBC W /IN 7 FLAG
  20495   "RTN","ORY 42703",106 ,0)
  20496    ;;R^"863. 4:","863.4 1:1",.01," E"
  20497   "RTN","ORY 42703",107 ,0)
  20498    ;;D^DATA  TYPE
  20499   "RTN","ORY 42703",108 ,0)
  20500    ;;R^"863. 4:","863.4 1:1",1,"E"
  20501   "RTN","ORY 42703",109 ,0)
  20502    ;;D^BOOLE AN
  20503   "RTN","ORY 42703",110 ,0)
  20504    ;;EOR^
  20505   "RTN","ORY 42703",111 ,0)
  20506    ;;KEY^863 .4:^DISPEN SE DRUG
  20507   "RTN","ORY 42703",112 ,0)
  20508    ;;R^"863. 4:",.01,"E "
  20509   "RTN","ORY 42703",113 ,0)
  20510    ;;D^DISPE NSE DRUG
  20511   "RTN","ORY 42703",114 ,0)
  20512    ;;R^"863. 4:","863.4 1:1",.01," E"
  20513   "RTN","ORY 42703",115 ,0)
  20514    ;;D^DATA  TYPE
  20515   "RTN","ORY 42703",116 ,0)
  20516    ;;R^"863. 4:","863.4 1:1",1,"E"
  20517   "RTN","ORY 42703",117 ,0)
  20518    ;;D^FREE  TEXT
  20519   "RTN","ORY 42703",118 ,0)
  20520    ;;EOR^
  20521   "RTN","ORY 42703",119 ,0)
  20522    ;;KEY^863 .4:^FILLER
  20523   "RTN","ORY 42703",120 ,0)
  20524    ;;R^"863. 4:",.01,"E "
  20525   "RTN","ORY 42703",121 ,0)
  20526    ;;D^FILLE R
  20527   "RTN","ORY 42703",122 ,0)
  20528    ;;R^"863. 4:","863.4 1:1",.01," E"
  20529   "RTN","ORY 42703",123 ,0)
  20530    ;;D^DATA  TYPE
  20531   "RTN","ORY 42703",124 ,0)
  20532    ;;R^"863. 4:","863.4 1:1",1,"E"
  20533   "RTN","ORY 42703",125 ,0)
  20534    ;;D^FREE  TEXT
  20535   "RTN","ORY 42703",126 ,0)
  20536    ;;EOR^
  20537   "RTN","ORY 42703",127 ,0)
  20538    ;;KEY^863 .4:^HL7 FI LLER
  20539   "RTN","ORY 42703",128 ,0)
  20540    ;;R^"863. 4:",.01,"E "
  20541   "RTN","ORY 42703",129 ,0)
  20542    ;;D^HL7 F ILLER
  20543   "RTN","ORY 42703",130 ,0)
  20544    ;;R^"863. 4:",.02,"E "
  20545   "RTN","ORY 42703",131 ,0)
  20546    ;;D^HL7FI LLR
  20547   "RTN","ORY 42703",132 ,0)
  20548    ;;R^"863. 4:","863.4 1:1",.01," E"
  20549   "RTN","ORY 42703",133 ,0)
  20550    ;;D^DATA  TYPE
  20551   "RTN","ORY 42703",134 ,0)
  20552    ;;R^"863. 4:","863.4 1:1",1,"E"
  20553   "RTN","ORY 42703",135 ,0)
  20554    ;;D^FREE  TEXT
  20555   "RTN","ORY 42703",136 ,0)
  20556    ;;EOR^
  20557   "RTN","ORY 42703",137 ,0)
  20558    ;;KEY^863 .4:^IEN
  20559   "RTN","ORY 42703",138 ,0)
  20560    ;;R^"863. 4:",.01,"E "
  20561   "RTN","ORY 42703",139 ,0)
  20562    ;;D^IEN
  20563   "RTN","ORY 42703",140 ,0)
  20564    ;;R^"863. 4:","863.4 1:1",.01," E"
  20565   "RTN","ORY 42703",141 ,0)
  20566    ;;D^DATA  TYPE
  20567   "RTN","ORY 42703",142 ,0)
  20568    ;;R^"863. 4:","863.4 1:1",1,"E"
  20569   "RTN","ORY 42703",143 ,0)
  20570    ;;D^NUMER IC
  20571   "RTN","ORY 42703",144 ,0)
  20572    ;;EOR^
  20573   "RTN","ORY 42703",145 ,0)
  20574    ;;KEY^863 .4:^ORDER  MODE
  20575   "RTN","ORY 42703",146 ,0)
  20576    ;;R^"863. 4:",.01,"E "
  20577   "RTN","ORY 42703",147 ,0)
  20578    ;;D^ORDER  MODE
  20579   "RTN","ORY 42703",148 ,0)
  20580    ;;R^"863. 4:","863.4 1:1",.01," E"
  20581   "RTN","ORY 42703",149 ,0)
  20582    ;;D^DATA  TYPE
  20583   "RTN","ORY 42703",150 ,0)
  20584    ;;R^"863. 4:","863.4 1:1",1,"E"
  20585   "RTN","ORY 42703",151 ,0)
  20586    ;;D^FREE  TEXT
  20587   "RTN","ORY 42703",152 ,0)
  20588    ;;EOR^
  20589   "RTN","ORY 42703",153 ,0)
  20590    ;;KEY^863 .4:^ORDER  PATIENT
  20591   "RTN","ORY 42703",154 ,0)
  20592    ;;R^"863. 4:",.01,"E "
  20593   "RTN","ORY 42703",155 ,0)
  20594    ;;D^ORDER  PATIENT
  20595   "RTN","ORY 42703",156 ,0)
  20596    ;;R^"863. 4:","863.4 1:1",.01," E"
  20597   "RTN","ORY 42703",157 ,0)
  20598    ;;D^DATA  TYPE
  20599   "RTN","ORY 42703",158 ,0)
  20600    ;;R^"863. 4:","863.4 1:1",1,"E"
  20601   "RTN","ORY 42703",159 ,0)
  20602    ;;D^NUMER IC
  20603   "RTN","ORY 42703",160 ,0)
  20604    ;;EOR^
  20605   "RTN","ORY 42703",161 ,0)
  20606    ;;EOF^OCX S(863.4)^1
  20607   "RTN","ORY 42703",162 ,0)
  20608    ;;SOF^863 .2  OCX MD D SUBJECT
  20609   "RTN","ORY 42703",163 ,0)
  20610    ;;KEY^863 .2:^PATIEN T
  20611   "RTN","ORY 42703",164 ,0)
  20612    ;;R^"863. 2:",.01,"E "
  20613   "RTN","ORY 42703",165 ,0)
  20614    ;;D^PATIE NT
  20615   "RTN","ORY 42703",166 ,0)
  20616    ;;R^"863. 2:","863.2 1:1",.01," E"
  20617   "RTN","ORY 42703",167 ,0)
  20618    ;;D^FILE
  20619   "RTN","ORY 42703",168 ,0)
  20620    ;;R^"863. 2:","863.2 1:1",1,"E"
  20621   "RTN","ORY 42703",169 ,0)
  20622    ;;D^2
  20623   "RTN","ORY 42703",170 ,0)
  20624    ;;EOR^
  20625   "RTN","ORY 42703",171 ,0)
  20626    ;;EOF^OCX S(863.2)^1
  20627   "RTN","ORY 42703",172 ,0)
  20628    ;;SOF^863 .3  OCX MD D LINK
  20629   "RTN","ORY 42703",173 ,0)
  20630    ;;KEY^863 .3:^PATIEN T.CLOZAPIN E MED
  20631   "RTN","ORY 42703",174 ,0)
  20632    ;;R^"863. 3:",.01,"E "
  20633   "RTN","ORY 42703",175 ,0)
  20634    ;;D^PATIE NT.CLOZAPI NE MED
  20635   "RTN","ORY 42703",176 ,0)
  20636    ;;R^"863. 3:",.02,"E "
  20637   "RTN","ORY 42703",177 ,0)
  20638    ;;D^PATIE NT
  20639   "RTN","ORY 42703",178 ,0)
  20640    ;;R^"863. 3:",.05,"E "
  20641   "RTN","ORY 42703",179 ,0)
  20642    ;;D^CLOZA PINE MED
  20643   "RTN","ORY 42703",180 ,0)
  20644    ;;R^"863. 3:",.06,"E "
  20645   "RTN","ORY 42703",181 ,0)
  20646    ;;D^3555
  20647   "RTN","ORY 42703",182 ,0)
  20648    ;;R^"863. 3:","863.3 2:1",.01," E"
  20649   "RTN","ORY 42703",183 ,0)
  20650    ;;D^OCXO  EXTERNAL F UNCTION CA LL
  20651   "RTN","ORY 42703",184 ,0)
  20652    ;;R^"863. 3:","863.3 2:1",1,"E"
  20653   "RTN","ORY 42703",185 ,0)
  20654    ;;D^CLOZL ABS^ORKLR( |PATIENT I EN|,7,|DIS P DRUG IEN |)
  20655   "RTN","ORY 42703",186 ,0)
  20656    ;;R^"863. 3:","863.3 2:2",.01," E"
  20657   "RTN","ORY 42703",187 ,0)
  20658    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  20659   "RTN","ORY 42703",188 ,0)
  20660    ;;R^"863. 3:","863.3 2:2",1,"E"
  20661   "RTN","ORY 42703",189 ,0)
  20662    ;;D^1
  20663   "RTN","ORY 42703",190 ,0)
  20664    ;;EOR^
  20665   "RTN","ORY 42703",191 ,0)
  20666    ;;KEY^863 .3:^PATIEN T.CLOZ_ANC _W/IN_7_FL AG
  20667   "RTN","ORY 42703",192 ,0)
  20668    ;;R^"863. 3:",.01,"E "
  20669   "RTN","ORY 42703",193 ,0)
  20670    ;;D^PATIE NT.CLOZ_AN C_W/IN_7_F LAG
  20671   "RTN","ORY 42703",194 ,0)
  20672    ;;R^"863. 3:",.02,"E "
  20673   "RTN","ORY 42703",195 ,0)
  20674    ;;D^PATIE NT
  20675   "RTN","ORY 42703",196 ,0)
  20676    ;;R^"863. 3:",.05,"E "
  20677   "RTN","ORY 42703",197 ,0)
  20678    ;;D^CLOZA PINE ANC W /IN 7 FLAG
  20679   "RTN","ORY 42703",198 ,0)
  20680    ;;R^"863. 3:","863.3 2:1",.01," E"
  20681   "RTN","ORY 42703",199 ,0)
  20682    ;;D^OCXO  EXTERNAL F UNCTION CA LL
  20683   "RTN","ORY 42703",200 ,0)
  20684    ;;R^"863. 3:","863.3 2:1",1,"E"
  20685   "RTN","ORY 42703",201 ,0)
  20686    ;;D^CLOZL ABS^ORKLR( |PATIENT I EN|,7,|DIS P DRUG IEN |)
  20687   "RTN","ORY 42703",202 ,0)
  20688    ;;R^"863. 3:","863.3 2:2",.01," E"
  20689   "RTN","ORY 42703",203 ,0)
  20690    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  20691   "RTN","ORY 42703",204 ,0)
  20692    ;;R^"863. 3:","863.3 2:2",1,"E"
  20693   "RTN","ORY 42703",205 ,0)
  20694    ;;D^3
  20695   "RTN","ORY 42703",206 ,0)
  20696    ;;R^"863. 3:","863.3 2:3",.01," E"
  20697   "RTN","ORY 42703",207 ,0)
  20698    ;;D^OCXO  SEMI-COLON  PIECE NUM BER
  20699   "RTN","ORY 42703",208 ,0)
  20700    ;;R^"863. 3:","863.3 2:3",1,"E"
  20701   "RTN","ORY 42703",209 ,0)
  20702    ;;D^1
  20703   "RTN","ORY 42703",210 ,0)
  20704    ;;EOR^
  20705   "RTN","ORY 42703",211 ,0)
  20706    ;;KEY^863 .3:^PATIEN T.CLOZ_ANC _W/IN_7_RS LT
  20707   "RTN","ORY 42703",212 ,0)
  20708    ;;R^"863. 3:",.01,"E "
  20709   "RTN","ORY 42703",213 ,0)
  20710    ;;D^PATIE NT.CLOZ_AN C_W/IN_7_R SLT
  20711   "RTN","ORY 42703",214 ,0)
  20712    ;;R^"863. 3:",.02,"E "
  20713   "RTN","ORY 42703",215 ,0)
  20714    ;;D^PATIE NT
  20715   "RTN","ORY 42703",216 ,0)
  20716    ;;R^"863. 3:",.05,"E "
  20717   "RTN","ORY 42703",217 ,0)
  20718    ;;D^CLOZA PINE ANC W /IN 7 RESU LT
  20719   "RTN","ORY 42703",218 ,0)
  20720    ;;R^"863. 3:","863.3 2:1",.01," E"
  20721   "RTN","ORY 42703",219 ,0)
  20722    ;;D^OCXO  EXTERNAL F UNCTION CA LL
  20723   "RTN","ORY 42703",220 ,0)
  20724    ;;R^"863. 3:","863.3 2:1",1,"E"
  20725   "RTN","ORY 42703",221 ,0)
  20726    ;;D^CLOZL ABS^ORKLR( |PATIENT I EN|,7,|DIS P DRUG IEN |)
  20727   "RTN","ORY 42703",222 ,0)
  20728    ;;R^"863. 3:","863.3 2:2",.01," E"
  20729   "RTN","ORY 42703",223 ,0)
  20730    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  20731   "RTN","ORY 42703",224 ,0)
  20732    ;;R^"863. 3:","863.3 2:2",1,"E"
  20733   "RTN","ORY 42703",225 ,0)
  20734    ;;D^3
  20735   "RTN","ORY 42703",226 ,0)
  20736    ;;R^"863. 3:","863.3 2:3",.01," E"
  20737   "RTN","ORY 42703",227 ,0)
  20738    ;;D^OCXO  SEMI-COLON  PIECE NUM BER
  20739   "RTN","ORY 42703",228 ,0)
  20740    ;;R^"863. 3:","863.3 2:3",1,"E"
  20741   "RTN","ORY 42703",229 ,0)
  20742    ;;D^2
  20743   "RTN","ORY 42703",230 ,0)
  20744    ;;EOR^
  20745   "RTN","ORY 42703",231 ,0)
  20746    ;;KEY^863 .3:^PATIEN T.CLOZ_LAB _RESULTS
  20747   "RTN","ORY 42703",232 ,0)
  20748    ;;R^"863. 3:",.01,"E "
  20749   "RTN","ORY 42703",233 ,0)
  20750    ;;D^PATIE NT.CLOZ_LA B_RESULTS
  20751   "RTN","ORY 42703",234 ,0)
  20752    ;;R^"863. 3:",.02,"E "
  20753   "RTN","ORY 42703",235 ,0)
  20754    ;;D^PATIE NT
  20755   "RTN","ORY 42703",236 ,0)
  20756    ;;R^"863. 3:",.05,"E "
  20757   "RTN","ORY 42703",237 ,0)
  20758    ;;D^CLOZA PINE LAB R ESULTS
  20759   "RTN","ORY 42703",238 ,0)
  20760    ;;R^"863. 3:","863.3 2:1",.01," E"
  20761   "RTN","ORY 42703",239 ,0)
  20762    ;;D^OCXO  EXTERNAL F UNCTION CA LL
  20763   "RTN","ORY 42703",240 ,0)
  20764    ;;R^"863. 3:","863.3 2:1",1,"E"
  20765   "RTN","ORY 42703",241 ,0)
  20766    ;;D^CLOZL ABS^ORKLR( |PATIENT I EN|,"",|DI SP DRUG IE N|)
  20767   "RTN","ORY 42703",242 ,0)
  20768    ;;R^"863. 3:","863.3 2:2",.01," E"
  20769   "RTN","ORY 42703",243 ,0)
  20770    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  20771   "RTN","ORY 42703",244 ,0)
  20772    ;;R^"863. 3:","863.3 2:2",1,"E"
  20773   "RTN","ORY 42703",245 ,0)
  20774    ;;D^4
  20775   "RTN","ORY 42703",246 ,0)
  20776    ;;EOR^
  20777   "RTN","ORY 42703",247 ,0)
  20778    ;;KEY^863 .3:^PATIEN T.CLOZ_WBC _W/IN_7_FL AG
  20779   "RTN","ORY 42703",248 ,0)
  20780    ;;R^"863. 3:",.01,"E "
  20781   "RTN","ORY 42703",249 ,0)
  20782    ;;D^PATIE NT.CLOZ_WB C_W/IN_7_F LAG
  20783   "RTN","ORY 42703",250 ,0)
  20784    ;;R^"863. 3:",.02,"E "
  20785   "RTN","ORY 42703",251 ,0)
  20786    ;;D^PATIE NT
  20787   "RTN","ORY 42703",252 ,0)
  20788    ;;R^"863. 3:",.05,"E "
  20789   "RTN","ORY 42703",253 ,0)
  20790    ;;D^CLOZA PINE WBC W /IN 7 FLAG
  20791   "RTN","ORY 42703",254 ,0)
  20792    ;;R^"863. 3:",.06,"E "
  20793   "RTN","ORY 42703",255 ,0)
  20794    ;;D^999
  20795   "RTN","ORY 42703",256 ,0)
  20796    ;;R^"863. 3:","863.3 2:1",.01," E"
  20797   "RTN","ORY 42703",257 ,0)
  20798    ;;D^OCXO  EXTERNAL F UNCTION CA LL
  20799   "RTN","ORY 42703",258 ,0)
  20800    ;;R^"863. 3:","863.3 2:1",1,"E"
  20801   "RTN","ORY 42703",259 ,0)
  20802    ;;D^CLOZL ABS^ORKLR( |PATIENT I EN|,7,|DIS P DRUG IEN |)
  20803   "RTN","ORY 42703",260 ,0)
  20804    ;;R^"863. 3:","863.3 2:2",.01," E"
  20805   "RTN","ORY 42703",261 ,0)
  20806    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  20807   "RTN","ORY 42703",262 ,0)
  20808    ;;R^"863. 3:","863.3 2:2",1,"E"
  20809   "RTN","ORY 42703",263 ,0)
  20810    ;;D^2
  20811   "RTN","ORY 42703",264 ,0)
  20812    ;;R^"863. 3:","863.3 2:3",.01," E"
  20813   "RTN","ORY 42703",265 ,0)
  20814    ;;D^OCXO  SEMI-COLON  PIECE NUM BER
  20815   "RTN","ORY 42703",266 ,0)
  20816    ;;R^"863. 3:","863.3 2:3",1,"E"
  20817   "RTN","ORY 42703",267 ,0)
  20818    ;;D^1
  20819   "RTN","ORY 42703",268 ,0)
  20820    ;;EOR^
  20821   "RTN","ORY 42703",269 ,0)
  20822    ;;KEY^863 .3:^PATIEN T.HL7_FILL ER
  20823   "RTN","ORY 42703",270 ,0)
  20824    ;;R^"863. 3:",.01,"E "
  20825   "RTN","ORY 42703",271 ,0)
  20826    ;;D^PATIE NT.HL7_FIL LER
  20827   "RTN","ORY 42703",272 ,0)
  20828    ;;R^"863. 3:",.02,"E "
  20829   "RTN","ORY 42703",273 ,0)
  20830    ;;D^PATIE NT
  20831   "RTN","ORY 42703",274 ,0)
  20832    ;;R^"863. 3:",.04,"E "
  20833   "RTN","ORY 42703",275 ,0)
  20834    ;;D^HL7
  20835   "RTN","ORY 42703",276 ,0)
  20836    ;;R^"863. 3:",.05,"E "
  20837   "RTN","ORY 42703",277 ,0)
  20838    ;;D^HL7 F ILLER
  20839   "RTN","ORY 42703",278 ,0)
  20840    ;;R^"863. 3:","863.3 2:1",.01," E"
  20841   "RTN","ORY 42703",279 ,0)
  20842    ;;D^OCXO  VT-BAR PIE CE NUMBER
  20843   "RTN","ORY 42703",280 ,0)
  20844    ;;R^"863. 3:","863.3 2:2",.01," E"
  20845   "RTN","ORY 42703",281 ,0)
  20846    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  20847   "RTN","ORY 42703",282 ,0)
  20848    ;;R^"863. 3:","863.3 2:2",1,"E"
  20849   "RTN","ORY 42703",283 ,0)
  20850    ;;D^2
  20851   "RTN","ORY 42703",284 ,0)
  20852    ;;R^"863. 3:","863.3 2:3",.01," E"
  20853   "RTN","ORY 42703",285 ,0)
  20854    ;;D^OCXO  VARIABLE N AME
  20855   "RTN","ORY 42703",286 ,0)
  20856    ;;R^"863. 3:","863.3 2:3",1,"E"
  20857   "RTN","ORY 42703",287 ,0)
  20858    ;;D^OCXOD ATA("ORC", 3)
  20859   "RTN","ORY 42703",288 ,0)
  20860    ;;R^"863. 3:","863.3 2:4",.01," E"
  20861   "RTN","ORY 42703",289 ,0)
  20862    ;;D^OCXO  HL7 SEGMEN T ID
  20863   "RTN","ORY 42703",290 ,0)
  20864    ;;R^"863. 3:","863.3 2:5",.01," E"
  20865   "RTN","ORY 42703",291 ,0)
  20866    ;;D^OCXO  DATA DRIVE  SOURCE
  20867   "RTN","ORY 42703",292 ,0)
  20868    ;;R^"863. 3:","863.3 2:5",1,"E"
  20869   "RTN","ORY 42703",293 ,0)
  20870    ;;D^HL7
  20871   "RTN","ORY 42703",294 ,0)
  20872    ;;R^"863. 3:","863.3 2:6",.01," E"
  20873   "RTN","ORY 42703",295 ,0)
  20874    ;;D^OCXO  FILE POINT ER
  20875   "RTN","ORY 42703",296 ,0)
  20876    ;;EOR^
  20877   "RTN","ORY 42703",297 ,0)
  20878    ;;KEY^863 .3:^PATIEN T.HL7_PATI ENT_ID
  20879   "RTN","ORY 42703",298 ,0)
  20880    ;;R^"863. 3:",.01,"E "
  20881   "RTN","ORY 42703",299 ,0)
  20882    ;;D^PATIE NT.HL7_PAT IENT_ID
  20883   "RTN","ORY 42703",300 ,0)
  20884    ;;R^"863. 3:",.02,"E "
  20885   "RTN","ORY 42703",301 ,0)
  20886    ;;D^PATIE NT
  20887   "RTN","ORY 42703",302 ,0)
  20888    ;;R^"863. 3:",.04,"E "
  20889   "RTN","ORY 42703",303 ,0)
  20890    ;;D^HL7
  20891   "RTN","ORY 42703",304 ,0)
  20892    ;;R^"863. 3:",.05,"E "
  20893   "RTN","ORY 42703",305 ,0)
  20894    ;;D^IEN
  20895   "RTN","ORY 42703",306 ,0)
  20896    ;;R^"863. 3:",.06,"E "
  20897   "RTN","ORY 42703",307 ,0)
  20898    ;;D^99
  20899   "RTN","ORY 42703",308 ,0)
  20900    ;;R^"863. 3:","863.3 2:1",.01," E"
  20901   "RTN","ORY 42703",309 ,0)
  20902    ;;D^OCXO  HL7 SEGMEN T ID
  20903   "RTN","ORY 42703",310 ,0)
  20904    ;;R^"863. 3:","863.3 2:2",.01," E"
  20905   "RTN","ORY 42703",311 ,0)
  20906    ;;D^OCXO  VT-BAR PIE CE NUMBER
  20907   "RTN","ORY 42703",312 ,0)
  20908    ;;R^"863. 3:","863.3 2:3",.01," E"
  20909   "RTN","ORY 42703",313 ,0)
  20910    ;;D^OCXO  VARIABLE N AME
  20911   "RTN","ORY 42703",314 ,0)
  20912    ;;R^"863. 3:","863.3 2:3",1,"E"
  20913   "RTN","ORY 42703",315 ,0)
  20914    ;;D^OCXOD ATA("PID", 3)
  20915   "RTN","ORY 42703",316 ,0)
  20916    ;;EOR^
  20917   "RTN","ORY 42703",317 ,0)
  20918    ;;KEY^863 .3:^PATIEN T.IEN
  20919   "RTN","ORY 42703",318 ,0)
  20920    ;;R^"863. 3:",.01,"E "
  20921   "RTN","ORY 42703",319 ,0)
  20922    ;;D^PATIE NT.IEN
  20923   "RTN","ORY 42703",320 ,0)
  20924    ;;R^"863. 3:",.02,"E "
  20925   "RTN","ORY 42703",321 ,0)
  20926    ;;D^PATIE NT
  20927   "RTN","ORY 42703",322 ,0)
  20928    ;;R^"863. 3:",.05,"E "
  20929   "RTN","ORY 42703",323 ,0)
  20930    ;1;
  20931   "RTN","ORY 42703",324 ,0)
  20932    ;
  20933   "RTN","ORY 42704")
  20934   0^9^B83644 761
  20935   "RTN","ORY 42704",1,0 )
  20936   ORY42704 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  20937   "RTN","ORY 42704",2,0 )
  20938    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  20939   "RTN","ORY 42704",3,0 )
  20940    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  20941   "RTN","ORY 42704",4,0 )
  20942    ;
  20943   "RTN","ORY 42704",5,0 )
  20944   S ;
  20945   "RTN","ORY 42704",6,0 )
  20946    ;
  20947   "RTN","ORY 42704",7,0 )
  20948    D DOT^ORY 427ES
  20949   "RTN","ORY 42704",8,0 )
  20950    ;
  20951   "RTN","ORY 42704",9,0 )
  20952    ;
  20953   "RTN","ORY 42704",10, 0)
  20954    K REMOTE, LOCAL,OPCO DE,REF
  20955   "RTN","ORY 42704",11, 0)
  20956    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  20957   "RTN","ORY 42704",12, 0)
  20958    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  20959   "RTN","ORY 42704",13, 0)
  20960    ;
  20961   "RTN","ORY 42704",14, 0)
  20962    G ^ORY427 05
  20963   "RTN","ORY 42704",15, 0)
  20964    ;
  20965   "RTN","ORY 42704",16, 0)
  20966    Q
  20967   "RTN","ORY 42704",17, 0)
  20968    ;
  20969   "RTN","ORY 42704",18, 0)
  20970   DATA ;
  20971   "RTN","ORY 42704",19, 0)
  20972    ;
  20973   "RTN","ORY 42704",20, 0)
  20974    ;;D^IEN
  20975   "RTN","ORY 42704",21, 0)
  20976    ;;R^"863. 3:",.06,"E "
  20977   "RTN","ORY 42704",22, 0)
  20978    ;;D^99
  20979   "RTN","ORY 42704",23, 0)
  20980    ;;R^"863. 3:","863.3 2:1",.01," E"
  20981   "RTN","ORY 42704",24, 0)
  20982    ;;D^OCXO  VARIABLE N AME
  20983   "RTN","ORY 42704",25, 0)
  20984    ;;R^"863. 3:","863.3 2:1",1,"E"
  20985   "RTN","ORY 42704",26, 0)
  20986    ;;D^DFN
  20987   "RTN","ORY 42704",27, 0)
  20988    ;;EOR^
  20989   "RTN","ORY 42704",28, 0)
  20990    ;;KEY^863 .3:^PATIEN T.OERR_ORD ER_PATIENT
  20991   "RTN","ORY 42704",29, 0)
  20992    ;;R^"863. 3:",.01,"E "
  20993   "RTN","ORY 42704",30, 0)
  20994    ;;D^PATIE NT.OERR_OR DER_PATIEN T
  20995   "RTN","ORY 42704",31, 0)
  20996    ;;R^"863. 3:",.02,"E "
  20997   "RTN","ORY 42704",32, 0)
  20998    ;;D^PATIE NT
  20999   "RTN","ORY 42704",33, 0)
  21000    ;;R^"863. 3:",.05,"E "
  21001   "RTN","ORY 42704",34, 0)
  21002    ;;D^ORDER  PATIENT
  21003   "RTN","ORY 42704",35, 0)
  21004    ;;R^"863. 3:",.06,"E "
  21005   "RTN","ORY 42704",36, 0)
  21006    ;;D^5567
  21007   "RTN","ORY 42704",37, 0)
  21008    ;;R^"863. 3:","863.3 2:1",.01," E"
  21009   "RTN","ORY 42704",38, 0)
  21010    ;;D^OCXO  VARIABLE N AME
  21011   "RTN","ORY 42704",39, 0)
  21012    ;;R^"863. 3:","863.3 2:1",1,"E"
  21013   "RTN","ORY 42704",40, 0)
  21014    ;;D^OCXOR D
  21015   "RTN","ORY 42704",41, 0)
  21016    ;;R^"863. 3:","863.3 2:2",.01," E"
  21017   "RTN","ORY 42704",42, 0)
  21018    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  21019   "RTN","ORY 42704",43, 0)
  21020    ;;R^"863. 3:","863.3 2:2",1,"E"
  21021   "RTN","ORY 42704",44, 0)
  21022    ;;D^1
  21023   "RTN","ORY 42704",45, 0)
  21024    ;;EOR^
  21025   "RTN","ORY 42704",46, 0)
  21026    ;;KEY^863 .3:^PATIEN T.OPS_DRUG _ID
  21027   "RTN","ORY 42704",47, 0)
  21028    ;;R^"863. 3:",.01,"E "
  21029   "RTN","ORY 42704",48, 0)
  21030    ;;D^PATIE NT.OPS_DRU G_ID
  21031   "RTN","ORY 42704",49, 0)
  21032    ;;R^"863. 3:",.02,"E "
  21033   "RTN","ORY 42704",50, 0)
  21034    ;;D^PATIE NT
  21035   "RTN","ORY 42704",51, 0)
  21036    ;;R^"863. 3:",.05,"E "
  21037   "RTN","ORY 42704",52, 0)
  21038    ;;D^DISPE NSE DRUG
  21039   "RTN","ORY 42704",53, 0)
  21040    ;;R^"863. 3:",.06,"E "
  21041   "RTN","ORY 42704",54, 0)
  21042    ;;D^33
  21043   "RTN","ORY 42704",55, 0)
  21044    ;;R^"863. 3:","863.3 2:1",.01," E"
  21045   "RTN","ORY 42704",56, 0)
  21046    ;;D^OCXO  VARIABLE N AME
  21047   "RTN","ORY 42704",57, 0)
  21048    ;;R^"863. 3:","863.3 2:1",1,"E"
  21049   "RTN","ORY 42704",58, 0)
  21050    ;;D^OCXPS D
  21051   "RTN","ORY 42704",59, 0)
  21052    ;;R^"863. 3:","863.3 2:2",.01," E"
  21053   "RTN","ORY 42704",60, 0)
  21054    ;;D^OCXO  VT-BAR PIE CE NUMBER
  21055   "RTN","ORY 42704",61, 0)
  21056    ;;R^"863. 3:","863.3 2:2",1,"E"
  21057   "RTN","ORY 42704",62, 0)
  21058    ;;D^2
  21059   "RTN","ORY 42704",63, 0)
  21060    ;;R^"863. 3:","863.3 2:3",.01," E"
  21061   "RTN","ORY 42704",64, 0)
  21062    ;;D^OCXO  UP-ARROW P IECE NUMBE R
  21063   "RTN","ORY 42704",65, 0)
  21064    ;;R^"863. 3:","863.3 2:3",1,"E"
  21065   "RTN","ORY 42704",66, 0)
  21066    ;;D^4
  21067   "RTN","ORY 42704",67, 0)
  21068    ;;EOR^
  21069   "RTN","ORY 42704",68, 0)
  21070    ;;KEY^863 .3:^PATIEN T.OPS_FILL ER
  21071   "RTN","ORY 42704",69, 0)
  21072    ;;R^"863. 3:",.01,"E "
  21073   "RTN","ORY 42704",70, 0)
  21074    ;;D^PATIE NT.OPS_FIL LER
  21075   "RTN","ORY 42704",71, 0)
  21076    ;;R^"863. 3:",.02,"E "
  21077   "RTN","ORY 42704",72, 0)
  21078    ;;D^PATIE NT
  21079   "RTN","ORY 42704",73, 0)
  21080    ;;R^"863. 3:",.04,"E "
  21081   "RTN","ORY 42704",74, 0)
  21082    ;;D^OPS
  21083   "RTN","ORY 42704",75, 0)
  21084    ;;R^"863. 3:",.05,"E "
  21085   "RTN","ORY 42704",76, 0)
  21086    ;;D^FILLE R
  21087   "RTN","ORY 42704",77, 0)
  21088    ;;R^"863. 3:",.06,"E "
  21089   "RTN","ORY 42704",78, 0)
  21090    ;;D^99
  21091   "RTN","ORY 42704",79, 0)
  21092    ;;R^"863. 3:","863.3 2:1",.01," E"
  21093   "RTN","ORY 42704",80, 0)
  21094    ;;D^OCXO  VARIABLE N AME
  21095   "RTN","ORY 42704",81, 0)
  21096    ;;R^"863. 3:","863.3 2:1",1,"E"
  21097   "RTN","ORY 42704",82, 0)
  21098    ;;D^OCXPS D
  21099   "RTN","ORY 42704",83, 0)
  21100    ;;R^"863. 3:","863.3 2:2",.01," E"
  21101   "RTN","ORY 42704",84, 0)
  21102    ;;D^OCXO  VT-BAR PIE CE NUMBER
  21103   "RTN","ORY 42704",85, 0)
  21104    ;;R^"863. 3:","863.3 2:2",1,"E"
  21105   "RTN","ORY 42704",86, 0)
  21106    ;;D^1
  21107   "RTN","ORY 42704",87, 0)
  21108    ;;EOR^
  21109   "RTN","ORY 42704",88, 0)
  21110    ;;KEY^863 .3:^PATIEN T.OPS_ORD_ MODE
  21111   "RTN","ORY 42704",89, 0)
  21112    ;;R^"863. 3:",.01,"E "
  21113   "RTN","ORY 42704",90, 0)
  21114    ;;D^PATIE NT.OPS_ORD _MODE
  21115   "RTN","ORY 42704",91, 0)
  21116    ;;R^"863. 3:",.02,"E "
  21117   "RTN","ORY 42704",92, 0)
  21118    ;;D^PATIE NT
  21119   "RTN","ORY 42704",93, 0)
  21120    ;;R^"863. 3:",.04,"E "
  21121   "RTN","ORY 42704",94, 0)
  21122    ;;D^OPS
  21123   "RTN","ORY 42704",95, 0)
  21124    ;;R^"863. 3:",.05,"E "
  21125   "RTN","ORY 42704",96, 0)
  21126    ;;D^ORDER  MODE
  21127   "RTN","ORY 42704",97, 0)
  21128    ;;R^"863. 3:",.06,"E "
  21129   "RTN","ORY 42704",98, 0)
  21130    ;;D^99
  21131   "RTN","ORY 42704",99, 0)
  21132    ;;R^"863. 3:","863.3 2:1",.01," E"
  21133   "RTN","ORY 42704",100 ,0)
  21134    ;;D^OCXO  VARIABLE N AME
  21135   "RTN","ORY 42704",101 ,0)
  21136    ;;R^"863. 3:","863.3 2:1",1,"E"
  21137   "RTN","ORY 42704",102 ,0)
  21138    ;;D^OCXPS M
  21139   "RTN","ORY 42704",103 ,0)
  21140    ;;EOR^
  21141   "RTN","ORY 42704",104 ,0)
  21142    ;;EOF^OCX S(863.3)^1
  21143   "RTN","ORY 42704",105 ,0)
  21144    ;;SOF^860 .9  ORDER  CHECK NATI ONAL TERM
  21145   "RTN","ORY 42704",106 ,0)
  21146    ;;KEY^860 .9:^ANGIOG RAM (PERIP HERAL)
  21147   "RTN","ORY 42704",107 ,0)
  21148    ;;R^"860. 9:",.01,"E "
  21149   "RTN","ORY 42704",108 ,0)
  21150    ;;D^ANGIO GRAM (PERI PHERAL)
  21151   "RTN","ORY 42704",109 ,0)
  21152    ;;R^"860. 9:",.02,"E "
  21153   "RTN","ORY 42704",110 ,0)
  21154    ;;D^101.4 3
  21155   "RTN","ORY 42704",111 ,0)
  21156    ;;EOR^
  21157   "RTN","ORY 42704",112 ,0)
  21158    ;;KEY^860 .9:^BLOOD  SPECIMEN
  21159   "RTN","ORY 42704",113 ,0)
  21160    ;;R^"860. 9:",.01,"E "
  21161   "RTN","ORY 42704",114 ,0)
  21162    ;;D^BLOOD  SPECIMEN
  21163   "RTN","ORY 42704",115 ,0)
  21164    ;;R^"860. 9:",.02,"E "
  21165   "RTN","ORY 42704",116 ,0)
  21166    ;;D^61
  21167   "RTN","ORY 42704",117 ,0)
  21168    ;;EOR^
  21169   "RTN","ORY 42704",118 ,0)
  21170    ;;KEY^860 .9:^DANGER OUS MEDS F OR PTS > 6 4
  21171   "RTN","ORY 42704",119 ,0)
  21172    ;;R^"860. 9:",.01,"E "
  21173   "RTN","ORY 42704",120 ,0)
  21174    ;;D^DANGE ROUS MEDS  FOR PTS >  64
  21175   "RTN","ORY 42704",121 ,0)
  21176    ;;R^"860. 9:",.02,"E "
  21177   "RTN","ORY 42704",122 ,0)
  21178    ;;D^101.4 3
  21179   "RTN","ORY 42704",123 ,0)
  21180    ;;R^"860. 9:",2,"E"
  21181   "RTN","ORY 42704",124 ,0)
  21182    ;;D^I $P( $G(^ORD(10 0.98,$P($G (^ORD(101. 43,+Y,0)), U,5),0)),U )="PHARMAC Y"
  21183   "RTN","ORY 42704",125 ,0)
  21184    ;;EOR^
  21185   "RTN","ORY 42704",126 ,0)
  21186    ;;KEY^860 .9:^DNR
  21187   "RTN","ORY 42704",127 ,0)
  21188    ;;R^"860. 9:",.01,"E "
  21189   "RTN","ORY 42704",128 ,0)
  21190    ;;D^DNR
  21191   "RTN","ORY 42704",129 ,0)
  21192    ;;R^"860. 9:",.02,"E "
  21193   "RTN","ORY 42704",130 ,0)
  21194    ;;D^101.4 3
  21195   "RTN","ORY 42704",131 ,0)
  21196    ;;EOR^
  21197   "RTN","ORY 42704",132 ,0)
  21198    ;;KEY^860 .9:^EGFR
  21199   "RTN","ORY 42704",133 ,0)
  21200    ;;R^"860. 9:",.01,"E "
  21201   "RTN","ORY 42704",134 ,0)
  21202    ;;D^EGFR
  21203   "RTN","ORY 42704",135 ,0)
  21204    ;;R^"860. 9:",.02,"E "
  21205   "RTN","ORY 42704",136 ,0)
  21206    ;;D^60
  21207   "RTN","ORY 42704",137 ,0)
  21208    ;;EOR^
  21209   "RTN","ORY 42704",138 ,0)
  21210    ;;KEY^860 .9:^FOOD-D RUG INTERA CTION MED
  21211   "RTN","ORY 42704",139 ,0)
  21212    ;;R^"860. 9:",.01,"E "
  21213   "RTN","ORY 42704",140 ,0)
  21214    ;;D^FOOD- DRUG INTER ACTION MED
  21215   "RTN","ORY 42704",141 ,0)
  21216    ;;R^"860. 9:",.02,"E "
  21217   "RTN","ORY 42704",142 ,0)
  21218    ;;D^101.4 3
  21219   "RTN","ORY 42704",143 ,0)
  21220    ;;R^"860. 9:",2,"E"
  21221   "RTN","ORY 42704",144 ,0)
  21222    ;;D^I $P( $G(^ORD(10 0.98,$P($G (^ORD(101. 43,+Y,0)), U,5),0)),U )="PHARMAC Y"
  21223   "RTN","ORY 42704",145 ,0)
  21224    ;;EOR^
  21225   "RTN","ORY 42704",146 ,0)
  21226    ;;KEY^860 .9:^NPO
  21227   "RTN","ORY 42704",147 ,0)
  21228    ;;R^"860. 9:",.01,"E "
  21229   "RTN","ORY 42704",148 ,0)
  21230    ;;D^NPO
  21231   "RTN","ORY 42704",149 ,0)
  21232    ;;R^"860. 9:",.02,"E "
  21233   "RTN","ORY 42704",150 ,0)
  21234    ;;D^101.4 3
  21235   "RTN","ORY 42704",151 ,0)
  21236    ;;EOR^
  21237   "RTN","ORY 42704",152 ,0)
  21238    ;;KEY^860 .9:^ONE TI ME MED
  21239   "RTN","ORY 42704",153 ,0)
  21240    ;;R^"860. 9:",.01,"E "
  21241   "RTN","ORY 42704",154 ,0)
  21242    ;;D^ONE T IME MED
  21243   "RTN","ORY 42704",155 ,0)
  21244    ;;R^"860. 9:",.02,"E "
  21245   "RTN","ORY 42704",156 ,0)
  21246    ;;D^51.1
  21247   "RTN","ORY 42704",157 ,0)
  21248    ;;R^"860. 9:",2,"E"
  21249   "RTN","ORY 42704",158 ,0)
  21250    ;;D^I $E( $P(^(0),U, 4),1,2)="P S"
  21251   "RTN","ORY 42704",159 ,0)
  21252    ;;EOR^
  21253   "RTN","ORY 42704",160 ,0)
  21254    ;;KEY^860 .9:^PARTIA L THROMBOP LASTIN TIM E
  21255   "RTN","ORY 42704",161 ,0)
  21256    ;;R^"860. 9:",.01,"E "
  21257   "RTN","ORY 42704",162 ,0)
  21258    ;;D^PARTI AL THROMBO PLASTIN TI ME
  21259   "RTN","ORY 42704",163 ,0)
  21260    ;;R^"860. 9:",.02,"E "
  21261   "RTN","ORY 42704",164 ,0)
  21262    ;;D^101.4 3
  21263   "RTN","ORY 42704",165 ,0)
  21264    ;;EOR^
  21265   "RTN","ORY 42704",166 ,0)
  21266    ;;KEY^860 .9:^PROTHR OMBIN TIME
  21267   "RTN","ORY 42704",167 ,0)
  21268    ;;R^"860. 9:",.01,"E "
  21269   "RTN","ORY 42704",168 ,0)
  21270    ;;D^PROTH ROMBIN TIM E
  21271   "RTN","ORY 42704",169 ,0)
  21272    ;;R^"860. 9:",.02,"E "
  21273   "RTN","ORY 42704",170 ,0)
  21274    ;;D^101.4 3
  21275   "RTN","ORY 42704",171 ,0)
  21276    ;;EOR^
  21277   "RTN","ORY 42704",172 ,0)
  21278    ;;KEY^860 .9:^SERUM  CREATININE
  21279   "RTN","ORY 42704",173 ,0)
  21280    ;;R^"860. 9:",.01,"E "
  21281   "RTN","ORY 42704",174 ,0)
  21282    ;;D^SERUM  CREATININ E
  21283   "RTN","ORY 42704",175 ,0)
  21284    ;;R^"860. 9:",.02,"E "
  21285   "RTN","ORY 42704",176 ,0)
  21286    ;;D^60
  21287   "RTN","ORY 42704",177 ,0)
  21288    ;;EOR^
  21289   "RTN","ORY 42704",178 ,0)
  21290    ;;KEY^860 .9:^SERUM  SPECIMEN
  21291   "RTN","ORY 42704",179 ,0)
  21292    ;;R^"860. 9:",.01,"E "
  21293   "RTN","ORY 42704",180 ,0)
  21294    ;;D^SERUM  SPECIMEN
  21295   "RTN","ORY 42704",181 ,0)
  21296    ;;R^"860. 9:",.02,"E "
  21297   "RTN","ORY 42704",182 ,0)
  21298    ;;D^61
  21299   "RTN","ORY 42704",183 ,0)
  21300    ;;EOR^
  21301   "RTN","ORY 42704",184 ,0)
  21302    ;;KEY^860 .9:^SERUM  UREA NITRO GEN
  21303   "RTN","ORY 42704",185 ,0)
  21304    ;;R^"860. 9:",.01,"E "
  21305   "RTN","ORY 42704",186 ,0)
  21306    ;;D^SERUM  UREA NITR OGEN
  21307   "RTN","ORY 42704",187 ,0)
  21308    ;;R^"860. 9:",.02,"E "
  21309   "RTN","ORY 42704",188 ,0)
  21310    ;;D^60
  21311   "RTN","ORY 42704",189 ,0)
  21312    ;;EOR^
  21313   "RTN","ORY 42704",190 ,0)
  21314    ;;KEY^860 .9:^THROMB OPLASTIN T IME PARTIA L
  21315   "RTN","ORY 42704",191 ,0)
  21316    ;;R^"860. 9:",.01,"E "
  21317   "RTN","ORY 42704",192 ,0)
  21318    ;;D^THROM BOPLASTIN  TIME PARTI AL
  21319   "RTN","ORY 42704",193 ,0)
  21320    ;;R^"860. 9:",.02,"E "
  21321   "RTN","ORY 42704",194 ,0)
  21322    ;;D^60
  21323   "RTN","ORY 42704",195 ,0)
  21324    ;;EOR^
  21325   "RTN","ORY 42704",196 ,0)
  21326    ;;KEY^860 .9:^WBC
  21327   "RTN","ORY 42704",197 ,0)
  21328    ;;R^"860. 9:",.01,"E "
  21329   "RTN","ORY 42704",198 ,0)
  21330    ;;D^WBC
  21331   "RTN","ORY 42704",199 ,0)
  21332    ;;R^"860. 9:",.02,"E "
  21333   "RTN","ORY 42704",200 ,0)
  21334    ;;D^60
  21335   "RTN","ORY 42704",201 ,0)
  21336    ;;EOR^
  21337   "RTN","ORY 42704",202 ,0)
  21338    ;;EOF^OCX S(860.9)^1
  21339   "RTN","ORY 42704",203 ,0)
  21340    ;;SOF^860 .8  ORDER  CHECK COMP ILER FUNCT IONS
  21341   "RTN","ORY 42704",204 ,0)
  21342    ;;KEY^860 .8:^CONVER T DATE FRO M FILEMAN  FORMAT TO  OCX FORMAT
  21343   "RTN","ORY 42704",205 ,0)
  21344    ;;R^"860. 8:",.01,"E "
  21345   "RTN","ORY 42704",206 ,0)
  21346    ;;D^CONVE RT DATE FR OM FILEMAN  FORMAT TO  OCX FORMA T
  21347   "RTN","ORY 42704",207 ,0)
  21348    ;;R^"860. 8:",.02,"E "
  21349   "RTN","ORY 42704",208 ,0)
  21350    ;;D^DT2IN T
  21351   "RTN","ORY 42704",209 ,0)
  21352    ;;R^"860. 8:",1,1
  21353   "RTN","ORY 42704",210 ,0)
  21354    ;;D^  ;DT 2INT(OCXDT ) ;      T his Local  Extrinsic  Function c onverts a  date into  an integer
  21355   "RTN","ORY 42704",211 ,0)
  21356    ;;R^"860. 8:",1,2
  21357   "RTN","ORY 42704",212 ,0)
  21358    ;;D^  ; ;  By taking  the Years , Months,  Days, Hour s and Minu tes conver ting
  21359   "RTN","ORY 42704",213 ,0)
  21360    ;;R^"860. 8:",1,3
  21361   "RTN","ORY 42704",214 ,0)
  21362    ;;D^  ; ;  Them into  Seconds a nd then ad ding them  all togeth er into on e big inte ger
  21363   "RTN","ORY 42704",215 ,0)
  21364    ;;R^"860. 8:",100,1
  21365   "RTN","ORY 42704",216 ,0)
  21366    ;;D^  ;DT 2INT(OCXDT ) ;      T his Local  Extrinsic  Function c onverts a  date into  an integer
  21367   "RTN","ORY 42704",217 ,0)
  21368    ;;R^"860. 8:",100,2
  21369   "RTN","ORY 42704",218 ,0)
  21370    ;;D^  ; ;  By taking  the Years , Months,  Days, Hour s and Minu tes conver ting
  21371   "RTN","ORY 42704",219 ,0)
  21372    ;;R^"860. 8:",100,3
  21373   "RTN","ORY 42704",220 ,0)
  21374    ;;D^  ; ;  Them into  Seconds a nd then ad ding them  all togeth er into on e big inte ger
  21375   "RTN","ORY 42704",221 ,0)
  21376    ;;R^"860. 8:",100,4
  21377   "RTN","ORY 42704",222 ,0)
  21378    ;;D^  ; ;
  21379   "RTN","ORY 42704",223 ,0)
  21380    ;;R^"860. 8:",100,5
  21381   "RTN","ORY 42704",224 ,0)
  21382    ;;D^  ; Q :'$L($G(OC XDT)) ""
  21383   "RTN","ORY 42704",225 ,0)
  21384    ;;R^"860. 8:",100,6
  21385   "RTN","ORY 42704",226 ,0)
  21386    ;;D^  ; N  OCXDIFF,O CXVAL S (O CXDIFF,OCX VAL)=0
  21387   "RTN","ORY 42704",227 ,0)
  21388    ;;R^"860. 8:",100,7
  21389   "RTN","ORY 42704",228 ,0)
  21390    ;;D^  ; ;
  21391   "RTN","ORY 42704",229 ,0)
  21392    ;;R^"860. 8:",100,8
  21393   "RTN","ORY 42704",230 ,0)
  21394    ;;D^  ; I  $L(OCXDT) ,'OCXDT,(O CXDT[" at  ") D  ; EX TERNAL EXP ERT SYSTEM  FORMAT 1  TO EXTERNA L FORMAT
  21395   "RTN","ORY 42704",231 ,0)
  21396    ;;R^"860. 8:",100,9
  21397   "RTN","ORY 42704",232 ,0)
  21398    ;;D^  ; . N OCXHR,OC XMIN,OCXTI ME
  21399   "RTN","ORY 42704",233 ,0)
  21400    ;;R^"860. 8:",100,10
  21401   "RTN","ORY 42704",234 ,0)
  21402    ;;D^  ; . S OCXTIME= $P($P(OCXD T," at ",2 ),".",1),O CXHR=$P(OC XTIME,":", 1),OCXMIN= $P(OCXTIME ,":",2)
  21403   "RTN","ORY 42704",235 ,0)
  21404    ;;R^"860. 8:",100,11
  21405   "RTN","ORY 42704",236 ,0)
  21406    ;;D^  ; . S:(OCXDT[" Midnight")  OCXHR=00
  21407   "RTN","ORY 42704",237 ,0)
  21408    ;;R^"860. 8:",100,12
  21409   "RTN","ORY 42704",238 ,0)
  21410    ;;D^  ; . S:(OCXDT[" PM") OCXHR =OCXHR+12
  21411   "RTN","ORY 42704",239 ,0)
  21412    ;;R^"860. 8:",100,13
  21413   "RTN","ORY 42704",240 ,0)
  21414    ;;D^  ; . S OCXDT=$P (OCXDT," a t ")_"@"_$ E(OCXHR+10 0,2,3)_$E( OCXMIN+100 ,2,3)
  21415   "RTN","ORY 42704",241 ,0)
  21416    ;;R^"860. 8:",100,14
  21417   "RTN","ORY 42704",242 ,0)
  21418    ;;D^  ; ;
  21419   "RTN","ORY 42704",243 ,0)
  21420    ;;R^"860. 8:",100,15
  21421   "RTN","ORY 42704",244 ,0)
  21422    ;;D^  ; I  $L(OCXDT) ,(OCXDT?1. 2N1"/"1.2N .1" ".2N.1 ":".2N) D   ; EXTERNA L EXPERT S YSTEM FORM AT 2 TO EX TERNAL FOR MAT
  21423   "RTN","ORY 42704",245 ,0)
  21424    ;;R^"860. 8:",100,16
  21425   "RTN","ORY 42704",246 ,0)
  21426    ;;D^  ; . N OCXMON
  21427   "RTN","ORY 42704",247 ,0)
  21428    ;;R^"860. 8:",100,17
  21429   "RTN","ORY 42704",248 ,0)
  21430    ;;D^  ; . S OCXMON=$ P("January ^February^ March^Apri l^May^June ^July^Augu st^Septemb er^October ^November^ December", U,$P(OCXDT ,"/",1))
  21431   "RTN","ORY 42704",249 ,0)
  21432    ;;R^"860. 8:",100,18
  21433   "RTN","ORY 42704",250 ,0)
  21434    ;;D^  ; . I $L($P(OC XDT," ",2) ) S OCXDT= OCXMON_" " _$P($P(OCX DT," ",1), "/",2)_"@" _$TR($P(OC XDT," ",2) ,":","")
  21435   "RTN","ORY 42704",251 ,0)
  21436    ;;R^"860. 8:",100,19
  21437   "RTN","ORY 42704",252 ,0)
  21438    ;;D^  ; . E  S OCXDT =OCXMON_"  "_$P($P(OC XDT," ",1) ,"/",2)
  21439   "RTN","ORY 42704",253 ,0)
  21440    ;;R^"860. 8:",100,20
  21441   "RTN","ORY 42704",254 ,0)
  21442    ;;D^  ; ;
  21443   "RTN","ORY 42704",255 ,0)
  21444    ;;R^"860. 8:",100,21
  21445   "RTN","ORY 42704",256 ,0)
  21446    ;;D^  ; I  $L(OCXDT) ,(OCXDT?1. 2N1"/"1.2N 1"/"1.2N.1 " ".2N.1": ".2N) D  ;  EXTERNAL  EXPERT SYS TEM FORMAT  3 TO EXTE RNAL FORMA T
  21447   "RTN","ORY 42704",257 ,0)
  21448    ;;R^"860. 8:",100,22
  21449   "RTN","ORY 42704",258 ,0)
  21450    ;;D^  ; . N OCXMON
  21451   "RTN","ORY 42704",259 ,0)
  21452    ;;R^"860. 8:",100,23
  21453   "RTN","ORY 42704",260 ,0)
  21454    ;;D^  ; . S OCXMON=$ P("January ^February^ March^Apri l^May^June ^July^Augu st^Septemb er^October ^November^ December", U,$P(OCXDT ,"/",1))
  21455   "RTN","ORY 42704",261 ,0)
  21456    ;;R^"860. 8:",100,24
  21457   "RTN","ORY 42704",262 ,0)
  21458    ;;D^  ; . I $L($P(OC XDT," ",2) ) S OCXDT= OCXMON_" " _$P($P(OCX DT," ",1), "/",2)_"," _$P($P(OCX DT," ",1), "/",3)_"@" _$TR($P(OC XDT," ",2) ,":","")
  21459   "RTN","ORY 42704",263 ,0)
  21460    ;;R^"860. 8:",100,25
  21461   "RTN","ORY 42704",264 ,0)
  21462    ;;D^  ; . E  S OCXDT =OCXMON_"  "_$P($P(OC XDT," ",1) ,"/",2)_",  "_$P($P(O CXDT," ",1 ),"/",3)
  21463   "RTN","ORY 42704",265 ,0)
  21464    ;;R^"860. 8:",100,26
  21465   "RTN","ORY 42704",266 ,0)
  21466    ;;D^  ; ;
  21467   "RTN","ORY 42704",267 ,0)
  21468    ;;R^"860. 8:",100,27
  21469   "RTN","ORY 42704",268 ,0)
  21470    ;;D^  ; I  $L(OCXDT) ,'OCXDT D   ; EXTERNA L FORMAT T O INTERNAL  FILEMAN F ORMAT
  21471   "RTN","ORY 42704",269 ,0)
  21472    ;;R^"860. 8:",100,28
  21473   "RTN","ORY 42704",270 ,0)
  21474    ;;D^  ; . I (OCXDT[" @0000") S  OCXDT=$P(O CXDT,"@",1 ),OCXDIFF= 1
  21475   "RTN","ORY 42704",271 ,0)
  21476    ;;R^"860. 8:",100,29
  21477   "RTN","ORY 42704",272 ,0)
  21478    ;;D^  ; . N %DT,X,Y  S X=OCXDT, %DT="" S:( OCXDT["@") !(OCXDT="N ") %DT="T"  D ^%DT S  OCXDT=+Y
  21479   "RTN","ORY 42704",273 ,0)
  21480    ;;R^"860. 8:",100,30
  21481   "RTN","ORY 42704",274 ,0)
  21482    ;;D^  ; ;
  21483   "RTN","ORY 42704",275 ,0)
  21484    ;;R^"860. 8:",100,31
  21485   "RTN","ORY 42704",276 ,0)
  21486    ;;D^  ; I  ($L(OCXDT \1)>7) S O CXDT=$$HL7 TFM^XLFDT( OCXDT)  ;  HL7 FORMAT  TO INTERN AL FILEMAN  FORMAT
  21487   "RTN","ORY 42704",277 ,0)
  21488    ;;R^"860. 8:",100,32
  21489   "RTN","ORY 42704",278 ,0)
  21490    ;1;
  21491   "RTN","ORY 42704",279 ,0)
  21492    ;
  21493   "RTN","ORY 42705")
  21494   0^10^B6250 1242
  21495   "RTN","ORY 42705",1,0 )
  21496   ORY42705 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  21497   "RTN","ORY 42705",2,0 )
  21498    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  21499   "RTN","ORY 42705",3,0 )
  21500    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  21501   "RTN","ORY 42705",4,0 )
  21502    ;
  21503   "RTN","ORY 42705",5,0 )
  21504   S ;
  21505   "RTN","ORY 42705",6,0 )
  21506    ;
  21507   "RTN","ORY 42705",7,0 )
  21508    D DOT^ORY 427ES
  21509   "RTN","ORY 42705",8,0 )
  21510    ;
  21511   "RTN","ORY 42705",9,0 )
  21512    ;
  21513   "RTN","ORY 42705",10, 0)
  21514    K REMOTE, LOCAL,OPCO DE,REF
  21515   "RTN","ORY 42705",11, 0)
  21516    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  21517   "RTN","ORY 42705",12, 0)
  21518    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  21519   "RTN","ORY 42705",13, 0)
  21520    ;
  21521   "RTN","ORY 42705",14, 0)
  21522    G ^ORY427 06
  21523   "RTN","ORY 42705",15, 0)
  21524    ;
  21525   "RTN","ORY 42705",16, 0)
  21526    Q
  21527   "RTN","ORY 42705",17, 0)
  21528    ;
  21529   "RTN","ORY 42705",18, 0)
  21530   DATA ;
  21531   "RTN","ORY 42705",19, 0)
  21532    ;
  21533   "RTN","ORY 42705",20, 0)
  21534    ;;D^  ; ;
  21535   "RTN","ORY 42705",21, 0)
  21536    ;;R^"860. 8:",100,33
  21537   "RTN","ORY 42705",22, 0)
  21538    ;;D^  ; I  ($L(OCXDT \1)=7) S O CXDT=$$FMT H^XLFDT(+O CXDT)   ;  INTERNAL F ILEMAN FOR MAT TO $H  FORMAT
  21539   "RTN","ORY 42705",23, 0)
  21540    ;;R^"860. 8:",100,34
  21541   "RTN","ORY 42705",24, 0)
  21542    ;;D^  ; ;
  21543   "RTN","ORY 42705",25, 0)
  21544    ;;R^"860. 8:",100,35
  21545   "RTN","ORY 42705",26, 0)
  21546    ;;D^  ; I  (OCXDT?5N 1","1.5N)  S OCXVAL=( OCXDT*8640 0)+$P(OCXD T,",",2)      ;  $H F ORMAT TO E XPERT SYST EM INTERNA L FORMAT
  21547   "RTN","ORY 42705",27, 0)
  21548    ;;R^"860. 8:",100,36
  21549   "RTN","ORY 42705",28, 0)
  21550    ;;D^  ; ;
  21551   "RTN","ORY 42705",29, 0)
  21552    ;;R^"860. 8:",100,37
  21553   "RTN","ORY 42705",30, 0)
  21554    ;;D^  ; Q  OCXVAL
  21555   "RTN","ORY 42705",31, 0)
  21556    ;;R^"860. 8:",100,38
  21557   "RTN","ORY 42705",32, 0)
  21558    ;;D^  ; ;
  21559   "RTN","ORY 42705",33, 0)
  21560    ;;EOR^
  21561   "RTN","ORY 42705",34, 0)
  21562    ;;KEY^860 .8:^CONVER T DATE FRO M OCX FORM AT TO READ ABLE FORMA T
  21563   "RTN","ORY 42705",35, 0)
  21564    ;;R^"860. 8:",.01,"E "
  21565   "RTN","ORY 42705",36, 0)
  21566    ;;D^CONVE RT DATE FR OM OCX FOR MAT TO REA DABLE FORM AT
  21567   "RTN","ORY 42705",37, 0)
  21568    ;;R^"860. 8:",.02,"E "
  21569   "RTN","ORY 42705",38, 0)
  21570    ;;D^INT2D T
  21571   "RTN","ORY 42705",39, 0)
  21572    ;;R^"860. 8:",1,1
  21573   "RTN","ORY 42705",40, 0)
  21574    ;;D^  ;IN T2DT(OCXDT ,OCXF) ;       This L ocal Extri nsic Funct ion conver ts an OCX  internal f ormat
  21575   "RTN","ORY 42705",41, 0)
  21576    ;;R^"860. 8:",1,2
  21577   "RTN","ORY 42705",42, 0)
  21578    ;;D^  ; ;  date into  an Extern l Format ( Human Read able) date .   'OCXF= SHORT FORM AT OCXF=LO NG FORMAT
  21579   "RTN","ORY 42705",43, 0)
  21580    ;;R^"860. 8:",1,3
  21581   "RTN","ORY 42705",44, 0)
  21582    ;;D^  ; ;
  21583   "RTN","ORY 42705",45, 0)
  21584    ;;R^"860. 8:",100,1
  21585   "RTN","ORY 42705",46, 0)
  21586    ;;D^  ;IN T2DT(OCXDT ,OCXF) ;       This L ocal Extri nsic Funct ion conver ts an OCX  internal f ormat
  21587   "RTN","ORY 42705",47, 0)
  21588    ;;R^"860. 8:",100,2
  21589   "RTN","ORY 42705",48, 0)
  21590    ;;D^  ; ;  date into  an Extern l Format ( Human Read able) date .   'OCXF= SHORT FORM AT OCXF=LO NG FORMAT
  21591   "RTN","ORY 42705",49, 0)
  21592    ;;R^"860. 8:",100,3
  21593   "RTN","ORY 42705",50, 0)
  21594    ;;D^  ; ;
  21595   "RTN","ORY 42705",51, 0)
  21596    ;;R^"860. 8:",100,4
  21597   "RTN","ORY 42705",52, 0)
  21598    ;;D^  ; Q :'$L($G(OC XDT)) "" S  OCXF=+$G( OCXF)
  21599   "RTN","ORY 42705",53, 0)
  21600    ;;R^"860. 8:",100,5
  21601   "RTN","ORY 42705",54, 0)
  21602    ;;D^  ; N  OCXYR,OCX LPYR,OCXMO N,OCXDAY,O CXHR,OCXMI N,OCXSEC,O CXCYR
  21603   "RTN","ORY 42705",55, 0)
  21604    ;;R^"860. 8:",100,6
  21605   "RTN","ORY 42705",56, 0)
  21606    ;;D^  ; S  (OCXYR,OC XLPYR,OCXM ON,OCXDAY, OCXHR,OCXM IN,OCXSEC, OCXAP)=""
  21607   "RTN","ORY 42705",57, 0)
  21608    ;;R^"860. 8:",100,7
  21609   "RTN","ORY 42705",58, 0)
  21610    ;;D^  ; S  OCXSEC=$E (OCXDT#60+ 100,2,3),O CXDT=OCXDT \60
  21611   "RTN","ORY 42705",59, 0)
  21612    ;;R^"860. 8:",100,8
  21613   "RTN","ORY 42705",60, 0)
  21614    ;;D^  ; S  OCXMIN=$E (OCXDT#60+ 100,2,3),O CXDT=OCXDT \60
  21615   "RTN","ORY 42705",61, 0)
  21616    ;;R^"860. 8:",100,9
  21617   "RTN","ORY 42705",62, 0)
  21618    ;;D^  ; S  OCXHR=$E( OCXDT#24+1 00,2,3),OC XDT=OCXDT\ 24
  21619   "RTN","ORY 42705",63, 0)
  21620    ;;R^"860. 8:",100,10
  21621   "RTN","ORY 42705",64, 0)
  21622    ;;D^  ; S  OCXCYR=($ H\1461)*4+ 1841+(($H# 1461)\365)
  21623   "RTN","ORY 42705",65, 0)
  21624    ;;R^"860. 8:",100,11
  21625   "RTN","ORY 42705",66, 0)
  21626    ;;D^  ; S  OCXYR=(OC XDT\1461)* 4+1841,OCX DT=OCXDT#1 461
  21627   "RTN","ORY 42705",67, 0)
  21628    ;;R^"860. 8:",100,12
  21629   "RTN","ORY 42705",68, 0)
  21630    ;;D^  ; S  OCXLPYR=( OCXDT\365) ,OCXDT=OCX DT-(OCXLPY R*365),OCX YR=OCXYR+O CXLPYR
  21631   "RTN","ORY 42705",69, 0)
  21632    ;;R^"860. 8:",100,13
  21633   "RTN","ORY 42705",70, 0)
  21634    ;;D^  ; S  OCXCNT="0 31^059^090 ^120^151^1 81^212^243 ^273^304^3 34^365"
  21635   "RTN","ORY 42705",71, 0)
  21636    ;;R^"860. 8:",100,14
  21637   "RTN","ORY 42705",72, 0)
  21638    ;;D^  ; S :(OCXLPYR= 3) OCXCNT= "031^060^0 91^121^152 ^182^213^2 44^274^305 ^335^366"
  21639   "RTN","ORY 42705",73, 0)
  21640    ;;R^"860. 8:",100,15
  21641   "RTN","ORY 42705",74, 0)
  21642    ;;D^  ; F  OCXMON=1: 1:12 Q:(OC XDT<$P(OCX CNT,U,OCXM ON))
  21643   "RTN","ORY 42705",75, 0)
  21644    ;;R^"860. 8:",100,16
  21645   "RTN","ORY 42705",76, 0)
  21646    ;;D^  ; S  OCXDAY=OC XDT-$P(OCX CNT,U,OCXM ON-1)+1
  21647   "RTN","ORY 42705",77, 0)
  21648    ;;R^"860. 8:",100,17
  21649   "RTN","ORY 42705",78, 0)
  21650    ;;D^  ; I  OCXF S OC XMON=$P("J anuary^Feb ruary^Marc h^April^Ma y^June^Jul y^August^S eptember^O ctober^Nov ember^Dece mber",U,OC XMON)
  21651   "RTN","ORY 42705",79, 0)
  21652    ;;R^"860. 8:",100,18
  21653   "RTN","ORY 42705",80, 0)
  21654    ;;D^  ; E   S OCXMON =$E(OCXMON +100,2,3)
  21655   "RTN","ORY 42705",81, 0)
  21656    ;;R^"860. 8:",100,19
  21657   "RTN","ORY 42705",82, 0)
  21658    ;;D^  ; S  OCXAP=$S( 'OCXHR:"Mi dnight",(O CXHR=12):" Noon",(OCX HR<12):"AM ",1:"PM")
  21659   "RTN","ORY 42705",83, 0)
  21660    ;;R^"860. 8:",100,20
  21661   "RTN","ORY 42705",84, 0)
  21662    ;;D^  ; I  OCXF S OC XHR=OCXHR# 12 S:'OCXH R OCXHR=12
  21663   "RTN","ORY 42705",85, 0)
  21664    ;;R^"860. 8:",100,21
  21665   "RTN","ORY 42705",86, 0)
  21666    ;;D^  ; Q :'OCXF $E( OCXMON+100 ,2,3)_"/"_ $E(OCXDAY+ 100,2,3)_$ S((OCXCYR= OCXYR):" " _OCXHR_":" _OCXMIN,1: "/"_$E(OCX YR,3,4))
  21667   "RTN","ORY 42705",87, 0)
  21668    ;;R^"860. 8:",100,22
  21669   "RTN","ORY 42705",88, 0)
  21670    ;;D^  ; Q :(OCXHR+OC XMIN+OCXSE C) OCXMON_ " "_OCXDAY _","_OCXYR _" at "_OC XHR_":"_OC XMIN_"."_O CXSEC_" "_ OCXAP
  21671   "RTN","ORY 42705",89, 0)
  21672    ;;R^"860. 8:",100,23
  21673   "RTN","ORY 42705",90, 0)
  21674    ;;D^  ; Q  OCXMON_"  "_OCXDAY_" ,"_OCXYR
  21675   "RTN","ORY 42705",91, 0)
  21676    ;;R^"860. 8:",100,24
  21677   "RTN","ORY 42705",92, 0)
  21678    ;;D^  ; ;
  21679   "RTN","ORY 42705",93, 0)
  21680    ;;EOR^
  21681   "RTN","ORY 42705",94, 0)
  21682    ;;KEY^860 .8:^ELAPSE D ORDER CH ECK TIME L OGGER
  21683   "RTN","ORY 42705",95, 0)
  21684    ;;R^"860. 8:",.01,"E "
  21685   "RTN","ORY 42705",96, 0)
  21686    ;;D^ELAPS ED ORDER C HECK TIME  LOGGER
  21687   "RTN","ORY 42705",97, 0)
  21688    ;;R^"860. 8:",.02,"E "
  21689   "RTN","ORY 42705",98, 0)
  21690    ;;D^TIMEL OG
  21691   "RTN","ORY 42705",99, 0)
  21692    ;;R^"860. 8:",100,1
  21693   "RTN","ORY 42705",100 ,0)
  21694    ;;D^  ;TI MELOG(OCXM ODE,OCXCAL L) ; Log a n entry in  the Elaps ed time lo g.
  21695   "RTN","ORY 42705",101 ,0)
  21696    ;;R^"860. 8:",100,2
  21697   "RTN","ORY 42705",102 ,0)
  21698    ;;D^  ; ;
  21699   "RTN","ORY 42705",103 ,0)
  21700    ;;R^"860. 8:",100,3
  21701   "RTN","ORY 42705",104 ,0)
  21702    ;;D^  ; ;
  21703   "RTN","ORY 42705",105 ,0)
  21704    ;;R^"860. 8:",100,4
  21705   "RTN","ORY 42705",106 ,0)
  21706    ;;D^  ; Q  0
  21707   "RTN","ORY 42705",107 ,0)
  21708    ;;R^"860. 8:",100,5
  21709   "RTN","ORY 42705",108 ,0)
  21710    ;;D^  ; ;
  21711   "RTN","ORY 42705",109 ,0)
  21712    ;;EOR^
  21713   "RTN","ORY 42705",110 ,0)
  21714    ;;KEY^860 .8:^EQUALS  TERM OPER ATOR
  21715   "RTN","ORY 42705",111 ,0)
  21716    ;;R^"860. 8:",.01,"E "
  21717   "RTN","ORY 42705",112 ,0)
  21718    ;;D^EQUAL S TERM OPE RATOR
  21719   "RTN","ORY 42705",113 ,0)
  21720    ;;R^"860. 8:",.02,"E "
  21721   "RTN","ORY 42705",114 ,0)
  21722    ;;D^EQTER M
  21723   "RTN","ORY 42705",115 ,0)
  21724    ;;R^"860. 8:",100,1
  21725   "RTN","ORY 42705",116 ,0)
  21726    ;;D^  ;EQ TERM(DATA, TERM) ;
  21727   "RTN","ORY 42705",117 ,0)
  21728    ;;R^"860. 8:",100,2
  21729   "RTN","ORY 42705",118 ,0)
  21730    ;;D^  ; ;
  21731   "RTN","ORY 42705",119 ,0)
  21732    ;;R^"860. 8:",100,3
  21733   "RTN","ORY 42705",120 ,0)
  21734    ;;D^T+; I  $G(OCXTRA CE) W !,"% %%%",?20,"  Execution  trace  DA TA: ",$G(D ATA),"   T ERM: ",$G( TERM)
  21735   "RTN","ORY 42705",121 ,0)
  21736    ;;R^"860. 8:",100,4
  21737   "RTN","ORY 42705",122 ,0)
  21738    ;;D^  ; N  OCXF,OCXL
  21739   "RTN","ORY 42705",123 ,0)
  21740    ;;R^"860. 8:",100,5
  21741   "RTN","ORY 42705",124 ,0)
  21742    ;;D^  ; ;
  21743   "RTN","ORY 42705",125 ,0)
  21744    ;;R^"860. 8:",100,6
  21745   "RTN","ORY 42705",126 ,0)
  21746    ;;D^  ; S  OCXL="",O CXF=$$TERM LKUP(TERM, .OCXL)
  21747   "RTN","ORY 42705",127 ,0)
  21748    ;;R^"860. 8:",100,7
  21749   "RTN","ORY 42705",128 ,0)
  21750    ;;D^T-; Q :'OCXF 0
  21751   "RTN","ORY 42705",129 ,0)
  21752    ;;R^"860. 8:",100,8
  21753   "RTN","ORY 42705",130 ,0)
  21754    ;;D^T+; I  'OCXF W:$ G(OCXTRACE ) !,"%%%%" ,?20," Ter m '",TERM, "' not in  Order Chec k National  Term File " Q 0
  21755   "RTN","ORY 42705",131 ,0)
  21756    ;;R^"860. 8:",100,9
  21757   "RTN","ORY 42705",132 ,0)
  21758    ;;D^T+; I  '$O(OCXL( 0)) W:$G(O CXTRACE) ! ,"%%%%",?2 0," There  are no loc al terms l isted for  the Nation al Term '" ,TERM,"'."  Q 0
  21759   "RTN","ORY 42705",133 ,0)
  21760    ;;R^"860. 8:",100,10
  21761   "RTN","ORY 42705",134 ,0)
  21762    ;;D^T+; I  ($D(OCXL( DATA))!$D( OCXL("B",D ATA))) W:$ G(OCXTRACE ) !,"%%%%" ,?20," Dat a equals T erm" Q 1
  21763   "RTN","ORY 42705",135 ,0)
  21764    ;;R^"860. 8:",100,11
  21765   "RTN","ORY 42705",136 ,0)
  21766    ;;D^T-; I  ($D(OCXL( DATA))!$D( OCXL("B",D ATA))) Q 1
  21767   "RTN","ORY 42705",137 ,0)
  21768    ;;R^"860. 8:",100,12
  21769   "RTN","ORY 42705",138 ,0)
  21770    ;;D^T-; Q  0
  21771   "RTN","ORY 42705",139 ,0)
  21772    ;;R^"860. 8:",100,13
  21773   "RTN","ORY 42705",140 ,0)
  21774    ;;D^T+; W :$G(OCXTRA CE) !,"%%% %",?20," D ata does n ot equal T erm" Q 0
  21775   "RTN","ORY 42705",141 ,0)
  21776    ;;R^"860. 8:",100,14
  21777   "RTN","ORY 42705",142 ,0)
  21778    ;;D^  ; ;
  21779   "RTN","ORY 42705",143 ,0)
  21780    ;;EOR^
  21781   "RTN","ORY 42705",144 ,0)
  21782    ;;KEY^860 .8:^FILE D ATA IN PAT IENT ACTIV E DATA FIL E
  21783   "RTN","ORY 42705",145 ,0)
  21784    ;;R^"860. 8:",.01,"E "
  21785   "RTN","ORY 42705",146 ,0)
  21786    ;;D^FILE  DATA IN PA TIENT ACTI VE DATA FI LE
  21787   "RTN","ORY 42705",147 ,0)
  21788    ;;R^"860. 8:",.02,"E "
  21789   "RTN","ORY 42705",148 ,0)
  21790    ;;D^FILE
  21791   "RTN","ORY 42705",149 ,0)
  21792    ;;R^"860. 8:",1,1
  21793   "RTN","ORY 42705",150 ,0)
  21794    ;;D^  ;FI LE(DFN,OCX ELE,OCXDFL ) ;     Th is Local E xtrinsic F unction fi les data
  21795   "RTN","ORY 42705",151 ,0)
  21796    ;;R^"860. 8:",1,2
  21797   "RTN","ORY 42705",152 ,0)
  21798    ;;D^  ; ;      in th e Order Ch eck Patien t Data Fil e
  21799   "RTN","ORY 42705",153 ,0)
  21800    ;;R^"860. 8:",1,3
  21801   "RTN","ORY 42705",154 ,0)
  21802    ;;D^  ; ;
  21803   "RTN","ORY 42705",155 ,0)
  21804    ;;R^"860. 8:",100,1
  21805   "RTN","ORY 42705",156 ,0)
  21806    ;;D^  ;FI LE(DFN,OCX ELE,OCXDFL ) ;     Th is Local E xtrinsic F unction lo gs a valid ated event /element.
  21807   "RTN","ORY 42705",157 ,0)
  21808    ;;R^"860. 8:",100,2
  21809   "RTN","ORY 42705",158 ,0)
  21810    ;;D^  ; ;
  21811   "RTN","ORY 42705",159 ,0)
  21812    ;;R^"860. 8:",100,3
  21813   "RTN","ORY 42705",160 ,0)
  21814    ;;D^T+; I  $G(OCXTRA CE) W !,"% %%%",?20,"  Execution  trace  DF N: ",DFN,"    OCXELE:  ",+$G(OCX ELE),"   O CXDFL: ",$ G(OCXDFL)
  21815   "RTN","ORY 42705",161 ,0)
  21816    ;;R^"860. 8:",100,4
  21817   "RTN","ORY 42705",162 ,0)
  21818    ;;D^  ; N  OCXTIMN,O CXTIML,OCX TIMT1,OCXT IMT2,OCXDA TA,OCXPC,O CXPC,OCXVA L,OCXSUB,O CXDFI
  21819   "RTN","ORY 42705",163 ,0)
  21820    ;;R^"860. 8:",100,5
  21821   "RTN","ORY 42705",164 ,0)
  21822    ;;D^  ; S  DFN=+$G(D FN),OCXELE =+$G(OCXEL E)
  21823   "RTN","ORY 42705",165 ,0)
  21824    ;;R^"860. 8:",100,6
  21825   "RTN","ORY 42705",166 ,0)
  21826    ;;D^  ; ;
  21827   "RTN","ORY 42705",167 ,0)
  21828    ;;R^"860. 8:",100,7
  21829   "RTN","ORY 42705",168 ,0)
  21830    ;;D^  ; Q :'DFN 1 Q: 'OCXELE 1  K OCXDATA
  21831   "RTN","ORY 42705",169 ,0)
  21832    ;;R^"860. 8:",100,8
  21833   "RTN","ORY 42705",170 ,0)
  21834    ;;D^  ; ;
  21835   "RTN","ORY 42705",171 ,0)
  21836    ;;R^"860. 8:",100,9
  21837   "RTN","ORY 42705",172 ,0)
  21838    ;;D^  ; S  OCXDATA(D FN,OCXELE) =1
  21839   "RTN","ORY 42705",173 ,0)
  21840    ;;R^"860. 8:",100,10
  21841   "RTN","ORY 42705",174 ,0)
  21842    ;;D^  ; F  OCXPC=1:1 :$L(OCXDFL ,",") S OC XDFI=$P(OC XDFL,",",O CXPC) I OC XDFI D
  21843   "RTN","ORY 42705",175 ,0)
  21844    ;;R^"860. 8:",100,11
  21845   "RTN","ORY 42705",176 ,0)
  21846    ;;D^  ; . S OCXVAL=$ G(OCXDF(+O CXDFI)),OC XDATA(DFN, OCXELE,+OC XDFI)=OCXV AL
  21847   "RTN","ORY 42705",177 ,0)
  21848    ;;R^"860. 8:",100,12
  21849   "RTN","ORY 42705",178 ,0)
  21850    ;;D^T+; . I $G(OCXTR ACE) W !," %%%%",?20, "   ",$P($ G(^OCXS(86 0.4,+OCXDF I,0)),U,1) ," = """,O CXVAL,""""
  21851   "RTN","ORY 42705",179 ,0)
  21852    ;;R^"860. 8:",100,13
  21853   "RTN","ORY 42705",180 ,0)
  21854    ;;D^  ; ;
  21855   "RTN","ORY 42705",181 ,0)
  21856    ;;R^"860. 8:",100,14
  21857   "RTN","ORY 42705",182 ,0)
  21858    ;;D^  ; M  ^TMP("OCX CHK",$J,DF N)=OCXDATA (DFN)
  21859   "RTN","ORY 42705",183 ,0)
  21860    ;;R^"860. 8:",100,15
  21861   "RTN","ORY 42705",184 ,0)
  21862    ;;D^  ; ;
  21863   "RTN","ORY 42705",185 ,0)
  21864    ;;R^"860. 8:",100,16
  21865   "RTN","ORY 42705",186 ,0)
  21866    ;;D^  ; Q  0
  21867   "RTN","ORY 42705",187 ,0)
  21868    ;;R^"860. 8:",100,17
  21869   "RTN","ORY 42705",188 ,0)
  21870    ;;D^  ; ;
  21871   "RTN","ORY 42705",189 ,0)
  21872    ;;EOR^
  21873   "RTN","ORY 42705",190 ,0)
  21874    ;;KEY^860 .8:^GENERA TE STRING  CHECKSUM
  21875   "RTN","ORY 42705",191 ,0)
  21876    ;;R^"860. 8:",.01,"E "
  21877   "RTN","ORY 42705",192 ,0)
  21878    ;;D^GENER ATE STRING  CHECKSUM
  21879   "RTN","ORY 42705",193 ,0)
  21880    ;;R^"860. 8:",.02,"E "
  21881   "RTN","ORY 42705",194 ,0)
  21882    ;;D^CKSUM
  21883   "RTN","ORY 42705",195 ,0)
  21884    ;;R^"860. 8:",100,1
  21885   "RTN","ORY 42705",196 ,0)
  21886    ;;D^  ;CK SUM(STR) ;
  21887   "RTN","ORY 42705",197 ,0)
  21888    ;;R^"860. 8:",100,2
  21889   "RTN","ORY 42705",198 ,0)
  21890    ;;D^  ; ;
  21891   "RTN","ORY 42705",199 ,0)
  21892    ;;R^"860. 8:",100,3
  21893   "RTN","ORY 42705",200 ,0)
  21894    ;;D^  ; N  CKSUM,PTR ,ASC S CKS UM=0
  21895   "RTN","ORY 42705",201 ,0)
  21896    ;;R^"860. 8:",100,4
  21897   "RTN","ORY 42705",202 ,0)
  21898    ;;D^  ; S  STR=$TR(S TR,"abcdef ghijklmnop qrstuvwxyz ","ABCDEFG HIJKLMNOPQ RSTUVWXYZ" )
  21899   "RTN","ORY 42705",203 ,0)
  21900    ;;R^"860. 8:",100,5
  21901   "RTN","ORY 42705",204 ,0)
  21902    ;;D^  ; F  PTR=$L(ST R):-1:1 S  ASC=$A(STR ,PTR)-42 I  (ASC>0),( ASC<51) S  CKSUM=CKSU M*2+ASC
  21903   "RTN","ORY 42705",205 ,0)
  21904    ;;R^"860. 8:",100,6
  21905   "RTN","ORY 42705",206 ,0)
  21906    ;;D^  ; Q  +CKSUM
  21907   "RTN","ORY 42705",207 ,0)
  21908    ;;R^"860. 8:",100,7
  21909   "RTN","ORY 42705",208 ,0)
  21910    ;;D^  ; ;
  21911   "RTN","ORY 42705",209 ,0)
  21912    ;;EOR^
  21913   "RTN","ORY 42705",210 ,0)
  21914    ;;KEY^860 .8:^GET DA TA FROM TH E ACTIVE D ATA FILE
  21915   "RTN","ORY 42705",211 ,0)
  21916    ;;R^"860. 8:",.01,"E "
  21917   "RTN","ORY 42705",212 ,0)
  21918    ;;D^GET D ATA FROM T HE ACTIVE  DATA FILE
  21919   "RTN","ORY 42705",213 ,0)
  21920    ;;R^"860. 8:",.02,"E "
  21921   "RTN","ORY 42705",214 ,0)
  21922    ;;D^GETDA TA
  21923   "RTN","ORY 42705",215 ,0)
  21924    ;;R^"860. 8:",100,1
  21925   "RTN","ORY 42705",216 ,0)
  21926    ;;D^  ;GE TDATA(DFN, OCXL,OCXDF I) ;     T his Local  Extrinsic  Function r eturns run time data
  21927   "RTN","ORY 42705",217 ,0)
  21928    ;;R^"860. 8:",100,2
  21929   "RTN","ORY 42705",218 ,0)
  21930    ;;D^  ; ;
  21931   "RTN","ORY 42705",219 ,0)
  21932    ;;R^"860. 8:",100,3
  21933   "RTN","ORY 42705",220 ,0)
  21934    ;;D^  ; N  OCXE,VAL, PC S VAL=" "
  21935   "RTN","ORY 42705",221 ,0)
  21936    ;;R^"860. 8:",100,4
  21937   "RTN","ORY 42705",222 ,0)
  21938    ;;D^  ; F  PC=1:1:$L (OCXL,U) S  OCXE=$P(O CXL,U,PC)  I OCXE S V AL=$G(^TMP ("OCXCHK", $J,DFN,OCX E,OCXDFI))  Q:$L(VAL)
  21939   "RTN","ORY 42705",223 ,0)
  21940    ;1;
  21941   "RTN","ORY 42705",224 ,0)
  21942    ;
  21943   "RTN","ORY 42706")
  21944   0^11^B6755 3648
  21945   "RTN","ORY 42706",1,0 )
  21946   ORY42706 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  21947   "RTN","ORY 42706",2,0 )
  21948    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  21949   "RTN","ORY 42706",3,0 )
  21950    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  21951   "RTN","ORY 42706",4,0 )
  21952    ;
  21953   "RTN","ORY 42706",5,0 )
  21954   S ;
  21955   "RTN","ORY 42706",6,0 )
  21956    ;
  21957   "RTN","ORY 42706",7,0 )
  21958    D DOT^ORY 427ES
  21959   "RTN","ORY 42706",8,0 )
  21960    ;
  21961   "RTN","ORY 42706",9,0 )
  21962    ;
  21963   "RTN","ORY 42706",10, 0)
  21964    K REMOTE, LOCAL,OPCO DE,REF
  21965   "RTN","ORY 42706",11, 0)
  21966    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  21967   "RTN","ORY 42706",12, 0)
  21968    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  21969   "RTN","ORY 42706",13, 0)
  21970    ;
  21971   "RTN","ORY 42706",14, 0)
  21972    G ^ORY427 07
  21973   "RTN","ORY 42706",15, 0)
  21974    ;
  21975   "RTN","ORY 42706",16, 0)
  21976    Q
  21977   "RTN","ORY 42706",17, 0)
  21978    ;
  21979   "RTN","ORY 42706",18, 0)
  21980   DATA ;
  21981   "RTN","ORY 42706",19, 0)
  21982    ;
  21983   "RTN","ORY 42706",20, 0)
  21984    ;;R^"860. 8:",100,5
  21985   "RTN","ORY 42706",21, 0)
  21986    ;;D^  ; Q  VAL
  21987   "RTN","ORY 42706",22, 0)
  21988    ;;R^"860. 8:",100,6
  21989   "RTN","ORY 42706",23, 0)
  21990    ;;D^  ; ;
  21991   "RTN","ORY 42706",24, 0)
  21992    ;;EOR^
  21993   "RTN","ORY 42706",25, 0)
  21994    ;;KEY^860 .8:^IN LIS T OPERATOR
  21995   "RTN","ORY 42706",26, 0)
  21996    ;;R^"860. 8:",.01,"E "
  21997   "RTN","ORY 42706",27, 0)
  21998    ;;D^IN LI ST OPERATO R
  21999   "RTN","ORY 42706",28, 0)
  22000    ;;R^"860. 8:",.02,"E "
  22001   "RTN","ORY 42706",29, 0)
  22002    ;;D^LIST
  22003   "RTN","ORY 42706",30, 0)
  22004    ;;R^"860. 8:",100,1
  22005   "RTN","ORY 42706",31, 0)
  22006    ;;D^  ;LI ST(DATA,LI ST) ;   IS  THE DATA  FIELD IN T HE LIST
  22007   "RTN","ORY 42706",32, 0)
  22008    ;;R^"860. 8:",100,2
  22009   "RTN","ORY 42706",33, 0)
  22010    ;;D^  ; ;
  22011   "RTN","ORY 42706",34, 0)
  22012    ;;R^"860. 8:",100,3
  22013   "RTN","ORY 42706",35, 0)
  22014    ;;D^T+; W :$G(OCXTRA CE) !,"%%% %",?20,"      $$LIST( """,DATA," "",""",LIS T,""")"
  22015   "RTN","ORY 42706",36, 0)
  22016    ;;R^"860. 8:",100,4
  22017   "RTN","ORY 42706",37, 0)
  22018    ;;D^  ; S :'($E(LIST ,1)=",") L IST=","_LI ST S:'($E( LIST,$L(LI ST))=",")  LIST=LIST_ "," S DATA =","_DATA_ ","
  22019   "RTN","ORY 42706",38, 0)
  22020    ;;R^"860. 8:",100,5
  22021   "RTN","ORY 42706",39, 0)
  22022    ;;D^  ; Q  (LIST[DAT A)
  22023   "RTN","ORY 42706",40, 0)
  22024    ;;R^"860. 8:",100,6
  22025   "RTN","ORY 42706",41, 0)
  22026    ;;D^  ; ;
  22027   "RTN","ORY 42706",42, 0)
  22028    ;;EOR^
  22029   "RTN","ORY 42706",43, 0)
  22030    ;;KEY^860 .8:^LOCAL  TERM LOOKU P
  22031   "RTN","ORY 42706",44, 0)
  22032    ;;R^"860. 8:",.01,"E "
  22033   "RTN","ORY 42706",45, 0)
  22034    ;;D^LOCAL  TERM LOOK UP
  22035   "RTN","ORY 42706",46, 0)
  22036    ;;R^"860. 8:",.02,"E "
  22037   "RTN","ORY 42706",47, 0)
  22038    ;;D^TERML KUP
  22039   "RTN","ORY 42706",48, 0)
  22040    ;;R^"860. 8:",1,2
  22041   "RTN","ORY 42706",49, 0)
  22042    ;;D^  Thi s function  allows a  local site  to define  to Order  Checking
  22043   "RTN","ORY 42706",50, 0)
  22044    ;;R^"860. 8:",1,3
  22045   "RTN","ORY 42706",51, 0)
  22046    ;;D^ a te rm specifi c to that  site. (ie.  Lab Test  Name, Radi ology
  22047   "RTN","ORY 42706",52, 0)
  22048    ;;R^"860. 8:",1,4
  22049   "RTN","ORY 42706",53, 0)
  22050    ;;D^ proc edure name , etc.)
  22051   "RTN","ORY 42706",54, 0)
  22052    ;;R^"860. 8:",100,1
  22053   "RTN","ORY 42706",55, 0)
  22054    ;;D^  ;TE RMLKUP(OCX TERM,OCXFI LE) ;
  22055   "RTN","ORY 42706",56, 0)
  22056    ;;R^"860. 8:",100,2
  22057   "RTN","ORY 42706",57, 0)
  22058    ;;D^  ; ;
  22059   "RTN","ORY 42706",58, 0)
  22060    ;;R^"860. 8:",100,3
  22061   "RTN","ORY 42706",59, 0)
  22062    ;;D^  ; Q
  22063   "RTN","ORY 42706",60, 0)
  22064    ;;R^"860. 8:",100,4
  22065   "RTN","ORY 42706",61, 0)
  22066    ;;D^  ; ;
  22067   "RTN","ORY 42706",62, 0)
  22068    ;;EOR^
  22069   "RTN","ORY 42706",63, 0)
  22070    ;;KEY^860 .8:^NEW RU LE MESSAGE
  22071   "RTN","ORY 42706",64, 0)
  22072    ;;R^"860. 8:",.01,"E "
  22073   "RTN","ORY 42706",65, 0)
  22074    ;;D^NEW R ULE MESSAG E
  22075   "RTN","ORY 42706",66, 0)
  22076    ;;R^"860. 8:",.02,"E "
  22077   "RTN","ORY 42706",67, 0)
  22078    ;;D^NEWRU LE
  22079   "RTN","ORY 42706",68, 0)
  22080    ;;R^"860. 8:",100,1
  22081   "RTN","ORY 42706",69, 0)
  22082    ;;D^  ;NE WRULE(OCXD FN,OCXORD, OCXRUL,OCX REL,OCXNOT F,OCXMESS)  ; Has thi s rule alr eady been  triggered  for this o rder numbe r
  22083   "RTN","ORY 42706",70, 0)
  22084    ;;R^"860. 8:",100,2
  22085   "RTN","ORY 42706",71, 0)
  22086    ;;D^  ; ;
  22087   "RTN","ORY 42706",72, 0)
  22088    ;;R^"860. 8:",100,3
  22089   "RTN","ORY 42706",73, 0)
  22090    ;;D^L+; S  OCXERR=$$ TIMELOG("M ","NEWRULE ("_(+$G(OC XDFN))_"," _(+$G(OCXO RD))_","_( +$G(OCXRUL ))_","_(+$ G(OCXREL)) _","_(+$G( OCXNOTF))_ ","_$G(OCX MESS)_")")
  22091   "RTN","ORY 42706",74, 0)
  22092    ;;R^"860. 8:",100,4
  22093   "RTN","ORY 42706",75, 0)
  22094    ;;D^  ; ;
  22095   "RTN","ORY 42706",76, 0)
  22096    ;;R^"860. 8:",100,5
  22097   "RTN","ORY 42706",77, 0)
  22098    ;;D^  ; Q :'$G(OCXDF N) 0 Q:'$G (OCXRUL) 0
  22099   "RTN","ORY 42706",78, 0)
  22100    ;;R^"860. 8:",100,6
  22101   "RTN","ORY 42706",79, 0)
  22102    ;;D^  ; Q :'$G(OCXRE L) 0  Q:'$ G(OCXNOTF)  0  Q:'$L( $G(OCXMESS )) 0
  22103   "RTN","ORY 42706",80, 0)
  22104    ;;R^"860. 8:",100,7
  22105   "RTN","ORY 42706",81, 0)
  22106    ;;D^  ; S  OCXORD=+$ G(OCXORD), OCXDFN=+OC XDFN
  22107   "RTN","ORY 42706",82, 0)
  22108    ;;R^"860. 8:",100,8
  22109   "RTN","ORY 42706",83, 0)
  22110    ;;D^  ; ;
  22111   "RTN","ORY 42706",84, 0)
  22112    ;;R^"860. 8:",100,9
  22113   "RTN","ORY 42706",85, 0)
  22114    ;;D^  ; N  OCXNDX,OC XDATA,OCXD FI,OCXELE, OCXGR,OCXT IME,OCXCKS UM,OCXTSP, OCXTSPL
  22115   "RTN","ORY 42706",86, 0)
  22116    ;;R^"860. 8:",100,10
  22117   "RTN","ORY 42706",87, 0)
  22118    ;;D^  ; ;
  22119   "RTN","ORY 42706",88, 0)
  22120    ;;R^"860. 8:",100,11
  22121   "RTN","ORY 42706",89, 0)
  22122    ;;D^  ; S  OCXTIME=( +$H)
  22123   "RTN","ORY 42706",90, 0)
  22124    ;;R^"860. 8:",100,12
  22125   "RTN","ORY 42706",91, 0)
  22126    ;;D^  ; S  OCXCKSUM= $$CKSUM(OC XMESS)
  22127   "RTN","ORY 42706",92, 0)
  22128    ;;R^"860. 8:",100,13
  22129   "RTN","ORY 42706",93, 0)
  22130    ;;D^  ; ;
  22131   "RTN","ORY 42706",94, 0)
  22132    ;;R^"860. 8:",100,14
  22133   "RTN","ORY 42706",95, 0)
  22134    ;;D^  ; S  OCXTSP=($ H*86400)+$ P($H,",",2 )
  22135   "RTN","ORY 42706",96, 0)
  22136    ;;R^"860. 8:",100,15
  22137   "RTN","ORY 42706",97, 0)
  22138    ;;D^  ; S  OCXTSPL=( $G(^OCXD(8 60.7,"AT", OCXTIME,OC XDFN,OCXRU L,+OCXORD, OCXCKSUM)) +$G(OCXTSP I,300))
  22139   "RTN","ORY 42706",98, 0)
  22140    ;;R^"860. 8:",100,16
  22141   "RTN","ORY 42706",99, 0)
  22142    ;;D^  ; ;
  22143   "RTN","ORY 42706",100 ,0)
  22144    ;;R^"860. 8:",100,17
  22145   "RTN","ORY 42706",101 ,0)
  22146    ;;D^  ; Q :(OCXTSPL> OCXTSP) 0
  22147   "RTN","ORY 42706",102 ,0)
  22148    ;;R^"860. 8:",100,18
  22149   "RTN","ORY 42706",103 ,0)
  22150    ;;D^  ; ;
  22151   "RTN","ORY 42706",104 ,0)
  22152    ;;R^"860. 8:",100,19
  22153   "RTN","ORY 42706",105 ,0)
  22154    ;;D^  ; K  OCXDATA
  22155   "RTN","ORY 42706",106 ,0)
  22156    ;;R^"860. 8:",100,20
  22157   "RTN","ORY 42706",107 ,0)
  22158    ;;D^  ; S  OCXDATA(O CXDFN,0)=O CXDFN
  22159   "RTN","ORY 42706",108 ,0)
  22160    ;;R^"860. 8:",100,21
  22161   "RTN","ORY 42706",109 ,0)
  22162    ;;D^  ; S  OCXDATA(" B",OCXDFN, OCXDFN)=""
  22163   "RTN","ORY 42706",110 ,0)
  22164    ;;R^"860. 8:",100,22
  22165   "RTN","ORY 42706",111 ,0)
  22166    ;;D^  ; S  OCXDATA(" AT",OCXTIM E,OCXDFN,O CXRUL,+OCX ORD,OCXCKS UM)=OCXTSP
  22167   "RTN","ORY 42706",112 ,0)
  22168    ;;R^"860. 8:",100,23
  22169   "RTN","ORY 42706",113 ,0)
  22170    ;;D^  ; ;
  22171   "RTN","ORY 42706",114 ,0)
  22172    ;;R^"860. 8:",100,24
  22173   "RTN","ORY 42706",115 ,0)
  22174    ;;D^  ; S  OCXGR="^O CXD(860.7"
  22175   "RTN","ORY 42706",116 ,0)
  22176    ;;R^"860. 8:",100,25
  22177   "RTN","ORY 42706",117 ,0)
  22178    ;;D^T+; D  SETAP(OCX GR_")",0," Patient",$ P($G(^DPT( OCXDFN,0)) ,U,1),.OCX DATA,OCXDF N)
  22179   "RTN","ORY 42706",118 ,0)
  22180    ;;R^"860. 8:",100,26
  22181   "RTN","ORY 42706",119 ,0)
  22182    ;;D^T-; D  SETAP(OCX GR_")",0,. OCXDATA,OC XDFN)
  22183   "RTN","ORY 42706",120 ,0)
  22184    ;;R^"860. 8:",100,27
  22185   "RTN","ORY 42706",121 ,0)
  22186    ;;D^  ; ;
  22187   "RTN","ORY 42706",122 ,0)
  22188    ;;R^"860. 8:",100,28
  22189   "RTN","ORY 42706",123 ,0)
  22190    ;;D^  ; K  OCXDATA
  22191   "RTN","ORY 42706",124 ,0)
  22192    ;;R^"860. 8:",100,29
  22193   "RTN","ORY 42706",125 ,0)
  22194    ;;D^  ; S  OCXDATA(O CXRUL,0)=O CXRUL_U_(O CXTIME)_U_ (+OCXORD)
  22195   "RTN","ORY 42706",126 ,0)
  22196    ;;R^"860. 8:",100,30
  22197   "RTN","ORY 42706",127 ,0)
  22198    ;;D^  ; S  OCXDATA(O CXRUL,"M") =OCXMESS
  22199   "RTN","ORY 42706",128 ,0)
  22200    ;;R^"860. 8:",100,31
  22201   "RTN","ORY 42706",129 ,0)
  22202    ;;D^  ; S  OCXDATA(" B",OCXRUL, OCXRUL)=""
  22203   "RTN","ORY 42706",130 ,0)
  22204    ;;R^"860. 8:",100,32
  22205   "RTN","ORY 42706",131 ,0)
  22206    ;;D^  ; S  OCXGR=OCX GR_","_OCX DFN_",1"
  22207   "RTN","ORY 42706",132 ,0)
  22208    ;;R^"860. 8:",100,33
  22209   "RTN","ORY 42706",133 ,0)
  22210    ;;D^T+; D  SETAP(OCX GR_")","86 0.71P","Ru le",$P($G( ^OCXS(860. 2,OCXRUL,0 )),U,1),.O CXDATA,OCX RUL)
  22211   "RTN","ORY 42706",134 ,0)
  22212    ;;R^"860. 8:",100,34
  22213   "RTN","ORY 42706",135 ,0)
  22214    ;;D^T-; D  SETAP(OCX GR_")","86 0.71P",.OC XDATA,OCXR UL)
  22215   "RTN","ORY 42706",136 ,0)
  22216    ;;R^"860. 8:",100,35
  22217   "RTN","ORY 42706",137 ,0)
  22218    ;;D^  ; ;
  22219   "RTN","ORY 42706",138 ,0)
  22220    ;;R^"860. 8:",100,36
  22221   "RTN","ORY 42706",139 ,0)
  22222    ;;D^  ; K  OCXDATA
  22223   "RTN","ORY 42706",140 ,0)
  22224    ;;R^"860. 8:",100,37
  22225   "RTN","ORY 42706",141 ,0)
  22226    ;;D^  ; S  OCXDATA(O CXREL,0)=O CXREL
  22227   "RTN","ORY 42706",142 ,0)
  22228    ;;R^"860. 8:",100,38
  22229   "RTN","ORY 42706",143 ,0)
  22230    ;;D^  ; S  OCXDATA(" B",OCXREL, OCXREL)=""
  22231   "RTN","ORY 42706",144 ,0)
  22232    ;;R^"860. 8:",100,39
  22233   "RTN","ORY 42706",145 ,0)
  22234    ;;D^  ; S  OCXGR=OCX GR_","_OCX RUL_",1"
  22235   "RTN","ORY 42706",146 ,0)
  22236    ;;R^"860. 8:",100,40
  22237   "RTN","ORY 42706",147 ,0)
  22238    ;;D^T+; D  SETAP(OCX GR_")","86 0.712","Re lation",OC XREL,.OCXD ATA,OCXREL )
  22239   "RTN","ORY 42706",148 ,0)
  22240    ;;R^"860. 8:",100,41
  22241   "RTN","ORY 42706",149 ,0)
  22242    ;;D^T-; D  SETAP(OCX GR_")","86 0.712",.OC XDATA,OCXR EL)
  22243   "RTN","ORY 42706",150 ,0)
  22244    ;;R^"860. 8:",100,42
  22245   "RTN","ORY 42706",151 ,0)
  22246    ;;D^  ; ;
  22247   "RTN","ORY 42706",152 ,0)
  22248    ;;R^"860. 8:",100,43
  22249   "RTN","ORY 42706",153 ,0)
  22250    ;;D^  ; S  OCXELE=0  F  S OCXEL E=$O(^OCXS (860.2,OCX RUL,"C","C ",OCXELE))  Q:'OCXELE   D
  22251   "RTN","ORY 42706",154 ,0)
  22252    ;;R^"860. 8:",100,44
  22253   "RTN","ORY 42706",155 ,0)
  22254    ;;D^  ; . ;
  22255   "RTN","ORY 42706",156 ,0)
  22256    ;;R^"860. 8:",100,45
  22257   "RTN","ORY 42706",157 ,0)
  22258    ;;D^  ; . N OCXGR1
  22259   "RTN","ORY 42706",158 ,0)
  22260    ;;R^"860. 8:",100,46
  22261   "RTN","ORY 42706",159 ,0)
  22262    ;;D^  ; . S OCXGR1=O CXGR_","_O CXREL_",1"
  22263   "RTN","ORY 42706",160 ,0)
  22264    ;;R^"860. 8:",100,47
  22265   "RTN","ORY 42706",161 ,0)
  22266    ;;D^  ; . K OCXDATA
  22267   "RTN","ORY 42706",162 ,0)
  22268    ;;R^"860. 8:",100,48
  22269   "RTN","ORY 42706",163 ,0)
  22270    ;;D^  ; . S OCXDATA( OCXELE,0)= OCXELE
  22271   "RTN","ORY 42706",164 ,0)
  22272    ;;R^"860. 8:",100,49
  22273   "RTN","ORY 42706",165 ,0)
  22274    ;;D^  ; . S OCXDATA( OCXELE,"TI ME")=OCXTI ME
  22275   "RTN","ORY 42706",166 ,0)
  22276    ;;R^"860. 8:",100,50
  22277   "RTN","ORY 42706",167 ,0)
  22278    ;;D^  ; . S OCXDATA( OCXELE,"LO G")=$G(OCX OLOG)
  22279   "RTN","ORY 42706",168 ,0)
  22280    ;;R^"860. 8:",100,51
  22281   "RTN","ORY 42706",169 ,0)
  22282    ;;D^  ; . S OCXDATA( "B",OCXELE ,OCXELE)=" "
  22283   "RTN","ORY 42706",170 ,0)
  22284    ;;R^"860. 8:",100,52
  22285   "RTN","ORY 42706",171 ,0)
  22286    ;;D^  ; . K ^OCXD(86 0.7,OCXDFN ,1,OCXRUL, 1,OCXREL,1 ,OCXELE)
  22287   "RTN","ORY 42706",172 ,0)
  22288    ;;R^"860. 8:",100,53
  22289   "RTN","ORY 42706",173 ,0)
  22290    ;;D^T+; . D SETAP(OC XGR1_")"," 860.7122P" ,"Element" ,$P($G(^OC XS(860.3,O CXELE,0)), U,1),.OCXD ATA,OCXELE )
  22291   "RTN","ORY 42706",174 ,0)
  22292    ;;R^"860. 8:",100,54
  22293   "RTN","ORY 42706",175 ,0)
  22294    ;;D^T-; . D SETAP(OC XGR1_")"," 860.7122P" ,.OCXDATA, OCXELE)
  22295   "RTN","ORY 42706",176 ,0)
  22296    ;;R^"860. 8:",100,55
  22297   "RTN","ORY 42706",177 ,0)
  22298    ;;D^  ; . ;
  22299   "RTN","ORY 42706",178 ,0)
  22300    ;;R^"860. 8:",100,56
  22301   "RTN","ORY 42706",179 ,0)
  22302    ;;D^  ; . S OCXDFI=0  F  S OCXD FI=$O(^TMP ("OCXCHK", $J,OCXDFN, OCXELE,OCX DFI)) Q:'O CXDFI  D
  22303   "RTN","ORY 42706",180 ,0)
  22304    ;;R^"860. 8:",100,57
  22305   "RTN","ORY 42706",181 ,0)
  22306    ;;D^  ; . .N OCXGR2
  22307   "RTN","ORY 42706",182 ,0)
  22308    ;;R^"860. 8:",100,58
  22309   "RTN","ORY 42706",183 ,0)
  22310    ;;D^  ; . .S OCXGR2= OCXGR1_"," _OCXELE_", 1"
  22311   "RTN","ORY 42706",184 ,0)
  22312    ;;R^"860. 8:",100,59
  22313   "RTN","ORY 42706",185 ,0)
  22314    ;;D^  ; . .K OCXDATA
  22315   "RTN","ORY 42706",186 ,0)
  22316    ;;R^"860. 8:",100,60
  22317   "RTN","ORY 42706",187 ,0)
  22318    ;;D^  ; . .S OCXDATA (OCXDFI,0) =OCXDFI
  22319   "RTN","ORY 42706",188 ,0)
  22320    ;;R^"860. 8:",100,61
  22321   "RTN","ORY 42706",189 ,0)
  22322    ;;D^  ; . .S OCXDATA (OCXDFI,"V AL")=^TMP( "OCXCHK",$ J,OCXDFN,O CXELE,OCXD FI)
  22323   "RTN","ORY 42706",190 ,0)
  22324    ;;R^"860. 8:",100,62
  22325   "RTN","ORY 42706",191 ,0)
  22326    ;;D^  ; . .S OCXDATA ("B",OCXDF I,OCXDFI)= ""
  22327   "RTN","ORY 42706",192 ,0)
  22328    ;;R^"860. 8:",100,63
  22329   "RTN","ORY 42706",193 ,0)
  22330    ;;D^T+; . .D SETAP(O CXGR2_")", "860.71223 P","Data F ield",$P($ G(^OCXS(86 0.4,OCXDFI ,0)),U,1), .OCXDATA,O CXDFI)
  22331   "RTN","ORY 42706",194 ,0)
  22332    ;;R^"860. 8:",100,64
  22333   "RTN","ORY 42706",195 ,0)
  22334    ;;D^T-; . .D SETAP(O CXGR2_")", "860.71223 P",.OCXDAT A,OCXDFI)
  22335   "RTN","ORY 42706",196 ,0)
  22336    ;;R^"860. 8:",100,65
  22337   "RTN","ORY 42706",197 ,0)
  22338    ;;D^  ; ;
  22339   "RTN","ORY 42706",198 ,0)
  22340    ;;R^"860. 8:",100,66
  22341   "RTN","ORY 42706",199 ,0)
  22342    ;;D^  ; Q  1
  22343   "RTN","ORY 42706",200 ,0)
  22344    ;;R^"860. 8:",100,67
  22345   "RTN","ORY 42706",201 ,0)
  22346    ;;D^  ; ;
  22347   "RTN","ORY 42706",202 ,0)
  22348    ;;R^"860. 8:",100,68
  22349   "RTN","ORY 42706",203 ,0)
  22350    ;;D^T+;SE TAP(ROOT,D D,ITEM,ITE MNAME,DATA ,DA) ;  Se t Rule Eve nt data
  22351   "RTN","ORY 42706",204 ,0)
  22352    ;;R^"860. 8:",100,69
  22353   "RTN","ORY 42706",205 ,0)
  22354    ;;D^T-;SE TAP(ROOT,D D,DATA,DA)  ;  Set Ru le Event d ata
  22355   "RTN","ORY 42706",206 ,0)
  22356    ;;R^"860. 8:",100,70
  22357   "RTN","ORY 42706",207 ,0)
  22358    ;;D^  ; M  @ROOT=DAT A
  22359   "RTN","ORY 42706",208 ,0)
  22360    ;;R^"860. 8:",100,71
  22361   "RTN","ORY 42706",209 ,0)
  22362    ;;D^  ; I  +$G(DD) S  @ROOT@(0) ="^"_($G(D D))_"^"_($ P($G(@ROOT @(0)),U,3) +1)_"^"_$G (DA)
  22363   "RTN","ORY 42706",210 ,0)
  22364    ;;R^"860. 8:",100,72
  22365   "RTN","ORY 42706",211 ,0)
  22366    ;;D^  ; I  '$G(DD) S  $P(@ROOT@ (0),U,3,4) =($P($G(@R OOT@(0)),U ,3)+1)_"^" _$G(DA)
  22367   "RTN","ORY 42706",212 ,0)
  22368    ;;R^"860. 8:",100,73
  22369   "RTN","ORY 42706",213 ,0)
  22370    ;;D^T+; W :$G(OCXTRA CE) !,"Fil e Active D ata ",$G(I TEM),": ", $G(ITEMNAM E)
  22371   "RTN","ORY 42706",214 ,0)
  22372    ;;R^"860. 8:",100,74
  22373   "RTN","ORY 42706",215 ,0)
  22374    ;;D^  ; ;
  22375   "RTN","ORY 42706",216 ,0)
  22376    ;;R^"860. 8:",100,75
  22377   "RTN","ORY 42706",217 ,0)
  22378    ;;D^  ; Q
  22379   "RTN","ORY 42706",218 ,0)
  22380    ;;R^"860. 8:",100,76
  22381   "RTN","ORY 42706",219 ,0)
  22382    ;;D^  ; ;
  22383   "RTN","ORY 42706",220 ,0)
  22384    ;;R^"860. 8:",100,77
  22385   "RTN","ORY 42706",221 ,0)
  22386    ;;D^  ; ;
  22387   "RTN","ORY 42706",222 ,0)
  22388    ;;EOR^
  22389   "RTN","ORY 42706",223 ,0)
  22390    ;;KEY^860 .8:^RETURN  POINTED T O VALUE
  22391   "RTN","ORY 42706",224 ,0)
  22392    ;;R^"860. 8:",.01,"E "
  22393   "RTN","ORY 42706",225 ,0)
  22394    ;;D^RETUR N POINTED  TO VALUE
  22395   "RTN","ORY 42706",226 ,0)
  22396    ;;R^"860. 8:",.02,"E "
  22397   "RTN","ORY 42706",227 ,0)
  22398    ;;D^POINT ER
  22399   "RTN","ORY 42706",228 ,0)
  22400    ;;R^"860. 8:",1,1
  22401   "RTN","ORY 42706",229 ,0)
  22402    ;;D^  ;PO INTER(OCXF ILE,D0) ;     This Lo cal Extrin sic Functi on gets th e value of  the name  field
  22403   "RTN","ORY 42706",230 ,0)
  22404    ;;R^"860. 8:",1,2
  22405   "RTN","ORY 42706",231 ,0)
  22406    ;;D^  ; ;   of recor d D0 in fi le OCXFILE
  22407   "RTN","ORY 42706",232 ,0)
  22408    ;;R^"860. 8:",100,1
  22409   "RTN","ORY 42706",233 ,0)
  22410    ;;D^  ;PO INTER(OCXF ILE,D0) ;     This Lo cal Extrin sic Functi on gets th e value of  the name  field
  22411   "RTN","ORY 42706",234 ,0)
  22412    ;;R^"860. 8:",100,2
  22413   "RTN","ORY 42706",235 ,0)
  22414    ;;D^  ; ;   of recor d D0 in fi le OCXFILE
  22415   "RTN","ORY 42706",236 ,0)
  22416    ;;R^"860. 8:",100,3
  22417   "RTN","ORY 42706",237 ,0)
  22418    ;;D^T+; I  $G(OCXTRA CE) W !,"% %%%",?20,"    FILE: " ,$G(OCXFIL E),"  D0:  ",$G(D0)
  22419   "RTN","ORY 42706",238 ,0)
  22420    ;;R^"860. 8:",100,4
  22421   "RTN","ORY 42706",239 ,0)
  22422    ;;D^  ; Q :'$G(D0) " " Q:'$L($G (OCXFILE))  ""
  22423   "RTN","ORY 42706",240 ,0)
  22424    ;;R^"860. 8:",100,5
  22425   "RTN","ORY 42706",241 ,0)
  22426    ;;D^  ; N  GLREF
  22427   "RTN","ORY 42706",242 ,0)
  22428    ;;R^"860. 8:",100,6
  22429   "RTN","ORY 42706",243 ,0)
  22430    ;;D^  ; I  '(OCXFILE =(+OCXFILE )) S GLREF =U_OCXFILE
  22431   "RTN","ORY 42706",244 ,0)
  22432    ;;R^"860. 8:",100,7
  22433   "RTN","ORY 42706",245 ,0)
  22434    ;;D^  ; E   S GLREF= $$FILE^OCX BDTD(+OCXF ILE,"GLOBA L NAME") Q :'$L(GLREF ) ""
  22435   "RTN","ORY 42706",246 ,0)
  22436    ;1;
  22437   "RTN","ORY 42706",247 ,0)
  22438    ;
  22439   "RTN","ORY 42707")
  22440   0^12^B6952 5830
  22441   "RTN","ORY 42707",1,0 )
  22442   ORY42707 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  22443   "RTN","ORY 42707",2,0 )
  22444    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  22445   "RTN","ORY 42707",3,0 )
  22446    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  22447   "RTN","ORY 42707",4,0 )
  22448    ;
  22449   "RTN","ORY 42707",5,0 )
  22450   S ;
  22451   "RTN","ORY 42707",6,0 )
  22452    ;
  22453   "RTN","ORY 42707",7,0 )
  22454    D DOT^ORY 427ES
  22455   "RTN","ORY 42707",8,0 )
  22456    ;
  22457   "RTN","ORY 42707",9,0 )
  22458    ;
  22459   "RTN","ORY 42707",10, 0)
  22460    K REMOTE, LOCAL,OPCO DE,REF
  22461   "RTN","ORY 42707",11, 0)
  22462    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  22463   "RTN","ORY 42707",12, 0)
  22464    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  22465   "RTN","ORY 42707",13, 0)
  22466    ;
  22467   "RTN","ORY 42707",14, 0)
  22468    G ^ORY427 08
  22469   "RTN","ORY 42707",15, 0)
  22470    ;
  22471   "RTN","ORY 42707",16, 0)
  22472    Q
  22473   "RTN","ORY 42707",17, 0)
  22474    ;
  22475   "RTN","ORY 42707",18, 0)
  22476   DATA ;
  22477   "RTN","ORY 42707",19, 0)
  22478    ;
  22479   "RTN","ORY 42707",20, 0)
  22480    ;;R^"860. 8:",100,8
  22481   "RTN","ORY 42707",21, 0)
  22482    ;;D^T+; I  $G(OCXTRA CE) W !,"% %%%",?20,"  GLREF: ", GLREF,"  R ESOLVES TO : ",$P($G( @(GLREF_(+ D0)_",0)") ),U,1)
  22483   "RTN","ORY 42707",22, 0)
  22484    ;;R^"860. 8:",100,9
  22485   "RTN","ORY 42707",23, 0)
  22486    ;;D^  ; Q  $P($G(@(G LREF_(+D0) _",0)")),U ,1)
  22487   "RTN","ORY 42707",24, 0)
  22488    ;;R^"860. 8:",100,10
  22489   "RTN","ORY 42707",25, 0)
  22490    ;;D^  ; ;
  22491   "RTN","ORY 42707",26, 0)
  22492    ;;EOR^
  22493   "RTN","ORY 42707",27, 0)
  22494    ;;KEY^860 .8:^STRING  CONTAINS  ONE OF A L IST OF VAL UES
  22495   "RTN","ORY 42707",28, 0)
  22496    ;;R^"860. 8:",.01,"E "
  22497   "RTN","ORY 42707",29, 0)
  22498    ;;D^STRIN G CONTAINS  ONE OF A  LIST OF VA LUES
  22499   "RTN","ORY 42707",30, 0)
  22500    ;;R^"860. 8:",.02,"E "
  22501   "RTN","ORY 42707",31, 0)
  22502    ;;D^CLIST
  22503   "RTN","ORY 42707",32, 0)
  22504    ;;R^"860. 8:",100,1
  22505   "RTN","ORY 42707",33, 0)
  22506    ;;D^  ;CL IST(DATA,L IST) ;   D OES THE DA TA FIELD C ONTAIN AN  ELEMENT IN  THE LIST
  22507   "RTN","ORY 42707",34, 0)
  22508    ;;R^"860. 8:",100,2
  22509   "RTN","ORY 42707",35, 0)
  22510    ;;D^  ; ;
  22511   "RTN","ORY 42707",36, 0)
  22512    ;;R^"860. 8:",100,3
  22513   "RTN","ORY 42707",37, 0)
  22514    ;;D^T+; W :$G(OCXTRA CE) !!,"$$ CLIST(",DA TA,",""",L IST,""")"
  22515   "RTN","ORY 42707",38, 0)
  22516    ;;R^"860. 8:",100,4
  22517   "RTN","ORY 42707",39, 0)
  22518    ;;D^  ; N  PC F PC=1 :1:$L(LIST ,","),0 I  PC,$L($P(L IST,",",PC )),(DATA[$ P(LIST,"," ,PC)) Q
  22519   "RTN","ORY 42707",40, 0)
  22520    ;;R^"860. 8:",100,5
  22521   "RTN","ORY 42707",41, 0)
  22522    ;;D^  ; Q  ''PC
  22523   "RTN","ORY 42707",42, 0)
  22524    ;;EOR^
  22525   "RTN","ORY 42707",43, 0)
  22526    ;;EOF^OCX S(860.8)^1
  22527   "RTN","ORY 42707",44, 0)
  22528    ;;SOF^860 .6  ORDER  CHECK DATA  CONTEXT
  22529   "RTN","ORY 42707",45, 0)
  22530    ;;KEY^860 .6:^CPRS O RDER PRESC AN
  22531   "RTN","ORY 42707",46, 0)
  22532    ;;R^"860. 6:",.01,"E "
  22533   "RTN","ORY 42707",47, 0)
  22534    ;;D^CPRS  ORDER PRES CAN
  22535   "RTN","ORY 42707",48, 0)
  22536    ;;R^"860. 6:",.02,"E "
  22537   "RTN","ORY 42707",49, 0)
  22538    ;;D^OEPS
  22539   "RTN","ORY 42707",50, 0)
  22540    ;;R^"860. 6:",1,"E"
  22541   "RTN","ORY 42707",51, 0)
  22542    ;;D^DATA  DRIVEN
  22543   "RTN","ORY 42707",52, 0)
  22544    ;;EOR^
  22545   "RTN","ORY 42707",53, 0)
  22546    ;;KEY^860 .6:^CPRS O RDER PROTO COL
  22547   "RTN","ORY 42707",54, 0)
  22548    ;;R^"860. 6:",.01,"E "
  22549   "RTN","ORY 42707",55, 0)
  22550    ;;D^CPRS  ORDER PROT OCOL
  22551   "RTN","ORY 42707",56, 0)
  22552    ;;R^"860. 6:",.02,"E "
  22553   "RTN","ORY 42707",57, 0)
  22554    ;;D^OERR
  22555   "RTN","ORY 42707",58, 0)
  22556    ;;R^"860. 6:",1,"E"
  22557   "RTN","ORY 42707",59, 0)
  22558    ;;D^DATA  DRIVEN
  22559   "RTN","ORY 42707",60, 0)
  22560    ;;EOR^
  22561   "RTN","ORY 42707",61, 0)
  22562    ;;KEY^860 .6:^DATABA SE LOOKUP
  22563   "RTN","ORY 42707",62, 0)
  22564    ;;R^"860. 6:",.01,"E "
  22565   "RTN","ORY 42707",63, 0)
  22566    ;;D^DATAB ASE LOOKUP
  22567   "RTN","ORY 42707",64, 0)
  22568    ;;R^"860. 6:",.02,"E "
  22569   "RTN","ORY 42707",65, 0)
  22570    ;;D^DL
  22571   "RTN","ORY 42707",66, 0)
  22572    ;;R^"860. 6:",1,"E"
  22573   "RTN","ORY 42707",67, 0)
  22574    ;;D^PACKA GE LOOKUP
  22575   "RTN","ORY 42707",68, 0)
  22576    ;;EOR^
  22577   "RTN","ORY 42707",69, 0)
  22578    ;;KEY^860 .6:^GENERI C HL7 MESS AGE ARRAY
  22579   "RTN","ORY 42707",70, 0)
  22580    ;;R^"860. 6:",.01,"E "
  22581   "RTN","ORY 42707",71, 0)
  22582    ;;D^GENER IC HL7 MES SAGE ARRAY
  22583   "RTN","ORY 42707",72, 0)
  22584    ;;R^"860. 6:",.02,"E "
  22585   "RTN","ORY 42707",73, 0)
  22586    ;;D^HL7
  22587   "RTN","ORY 42707",74, 0)
  22588    ;;R^"860. 6:",1,"E"
  22589   "RTN","ORY 42707",75, 0)
  22590    ;;D^DATA  DRIVEN
  22591   "RTN","ORY 42707",76, 0)
  22592    ;;EOR^
  22593   "RTN","ORY 42707",77, 0)
  22594    ;;EOF^OCX S(860.6)^1
  22595   "RTN","ORY 42707",78, 0)
  22596    ;;SOF^860 .5  ORDER  CHECK DATA  SOURCE
  22597   "RTN","ORY 42707",79, 0)
  22598    ;;KEY^860 .5:^DATABA SE LOOKUP
  22599   "RTN","ORY 42707",80, 0)
  22600    ;;R^"860. 5:",.01,"E "
  22601   "RTN","ORY 42707",81, 0)
  22602    ;;D^DATAB ASE LOOKUP
  22603   "RTN","ORY 42707",82, 0)
  22604    ;;R^"860. 5:",.02,"E "
  22605   "RTN","ORY 42707",83, 0)
  22606    ;;D^DATAB ASE LOOKUP
  22607   "RTN","ORY 42707",84, 0)
  22608    ;;EOR^
  22609   "RTN","ORY 42707",85, 0)
  22610    ;;KEY^860 .5:^HL7 CO MMON ORDER  SEGMENT
  22611   "RTN","ORY 42707",86, 0)
  22612    ;;R^"860. 5:",.01,"E "
  22613   "RTN","ORY 42707",87, 0)
  22614    ;;D^HL7 C OMMON ORDE R SEGMENT
  22615   "RTN","ORY 42707",88, 0)
  22616    ;;R^"860. 5:",.02,"E "
  22617   "RTN","ORY 42707",89, 0)
  22618    ;;D^GENER IC HL7 MES SAGE ARRAY
  22619   "RTN","ORY 42707",90, 0)
  22620    ;;EOR^
  22621   "RTN","ORY 42707",91, 0)
  22622    ;;KEY^860 .5:^HL7 PA TIENT ID S EGMENT
  22623   "RTN","ORY 42707",92, 0)
  22624    ;;R^"860. 5:",.01,"E "
  22625   "RTN","ORY 42707",93, 0)
  22626    ;;D^HL7 P ATIENT ID  SEGMENT
  22627   "RTN","ORY 42707",94, 0)
  22628    ;;R^"860. 5:",.02,"E "
  22629   "RTN","ORY 42707",95, 0)
  22630    ;;D^GENER IC HL7 MES SAGE ARRAY
  22631   "RTN","ORY 42707",96, 0)
  22632    ;;EOR^
  22633   "RTN","ORY 42707",97, 0)
  22634    ;;KEY^860 .5:^OERR O RDER EVENT  FLAG PROT OCOL
  22635   "RTN","ORY 42707",98, 0)
  22636    ;;R^"860. 5:",.01,"E "
  22637   "RTN","ORY 42707",99, 0)
  22638    ;;D^OERR  ORDER EVEN T FLAG PRO TOCOL
  22639   "RTN","ORY 42707",100 ,0)
  22640    ;;R^"860. 5:",.02,"E "
  22641   "RTN","ORY 42707",101 ,0)
  22642    ;;D^CPRS  ORDER PROT OCOL
  22643   "RTN","ORY 42707",102 ,0)
  22644    ;;EOR^
  22645   "RTN","ORY 42707",103 ,0)
  22646    ;;KEY^860 .5:^ORDER  ENTRY ORDE R PRESCAN
  22647   "RTN","ORY 42707",104 ,0)
  22648    ;;R^"860. 5:",.01,"E "
  22649   "RTN","ORY 42707",105 ,0)
  22650    ;;D^ORDER  ENTRY ORD ER PRESCAN
  22651   "RTN","ORY 42707",106 ,0)
  22652    ;;R^"860. 5:",.02,"E "
  22653   "RTN","ORY 42707",107 ,0)
  22654    ;;D^CPRS  ORDER PRES CAN
  22655   "RTN","ORY 42707",108 ,0)
  22656    ;;EOR^
  22657   "RTN","ORY 42707",109 ,0)
  22658    ;;EOF^OCX S(860.5)^1
  22659   "RTN","ORY 42707",110 ,0)
  22660    ;;SOF^860 .4  ORDER  CHECK DATA  FIELD
  22661   "RTN","ORY 42707",111 ,0)
  22662    ;;KEY^860 .4:^CLOZAP INE ANC W/ IN 7 FLAG
  22663   "RTN","ORY 42707",112 ,0)
  22664    ;;R^"860. 4:",.01,"E "
  22665   "RTN","ORY 42707",113 ,0)
  22666    ;;D^CLOZA PINE ANC W /IN 7 FLAG
  22667   "RTN","ORY 42707",114 ,0)
  22668    ;;R^"860. 4:",1,"E"
  22669   "RTN","ORY 42707",115 ,0)
  22670    ;;D^CLOZ  ANC FLAG
  22671   "RTN","ORY 42707",116 ,0)
  22672    ;;R^"860. 4:",101,"E "
  22673   "RTN","ORY 42707",117 ,0)
  22674    ;;D^BOOLE AN
  22675   "RTN","ORY 42707",118 ,0)
  22676    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.01," E"
  22677   "RTN","ORY 42707",119 ,0)
  22678    ;;D^DATAB ASE LOOKUP
  22679   "RTN","ORY 42707",120 ,0)
  22680    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.02," E"
  22681   "RTN","ORY 42707",121 ,0)
  22682    ;;D^DATAB ASE LOOKUP
  22683   "RTN","ORY 42707",122 ,0)
  22684    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",1,"E"
  22685   "RTN","ORY 42707",123 ,0)
  22686    ;;D^PATIE NT.CLOZ_AN C_W/IN_7_F LAG
  22687   "RTN","ORY 42707",124 ,0)
  22688    ;;EOR^
  22689   "RTN","ORY 42707",125 ,0)
  22690    ;;KEY^860 .4:^CLOZAP INE ANC W/ IN 7 RESUL T
  22691   "RTN","ORY 42707",126 ,0)
  22692    ;;R^"860. 4:",.01,"E "
  22693   "RTN","ORY 42707",127 ,0)
  22694    ;;D^CLOZA PINE ANC W /IN 7 RESU LT
  22695   "RTN","ORY 42707",128 ,0)
  22696    ;;R^"860. 4:",1,"E"
  22697   "RTN","ORY 42707",129 ,0)
  22698    ;;D^CLOZ  ANC RSLT
  22699   "RTN","ORY 42707",130 ,0)
  22700    ;;R^"860. 4:",101,"E "
  22701   "RTN","ORY 42707",131 ,0)
  22702    ;;D^NUMER IC
  22703   "RTN","ORY 42707",132 ,0)
  22704    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.01," E"
  22705   "RTN","ORY 42707",133 ,0)
  22706    ;;D^DATAB ASE LOOKUP
  22707   "RTN","ORY 42707",134 ,0)
  22708    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.02," E"
  22709   "RTN","ORY 42707",135 ,0)
  22710    ;;D^DATAB ASE LOOKUP
  22711   "RTN","ORY 42707",136 ,0)
  22712    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",1,"E"
  22713   "RTN","ORY 42707",137 ,0)
  22714    ;;D^PATIE NT.CLOZ_AN C_W/IN_7_R SLT
  22715   "RTN","ORY 42707",138 ,0)
  22716    ;;EOR^
  22717   "RTN","ORY 42707",139 ,0)
  22718    ;;KEY^860 .4:^CLOZAP INE LAB RE SULTS
  22719   "RTN","ORY 42707",140 ,0)
  22720    ;;R^"860. 4:",.01,"E "
  22721   "RTN","ORY 42707",141 ,0)
  22722    ;;D^CLOZA PINE LAB R ESULTS
  22723   "RTN","ORY 42707",142 ,0)
  22724    ;;R^"860. 4:",1,"E"
  22725   "RTN","ORY 42707",143 ,0)
  22726    ;;D^CLOZ  LAB RSLTS
  22727   "RTN","ORY 42707",144 ,0)
  22728    ;;R^"860. 4:",101,"E "
  22729   "RTN","ORY 42707",145 ,0)
  22730    ;;D^FREE  TEXT
  22731   "RTN","ORY 42707",146 ,0)
  22732    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.01," E"
  22733   "RTN","ORY 42707",147 ,0)
  22734    ;;D^DATAB ASE LOOKUP
  22735   "RTN","ORY 42707",148 ,0)
  22736    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.02," E"
  22737   "RTN","ORY 42707",149 ,0)
  22738    ;;D^DATAB ASE LOOKUP
  22739   "RTN","ORY 42707",150 ,0)
  22740    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",1,"E"
  22741   "RTN","ORY 42707",151 ,0)
  22742    ;;D^PATIE NT.CLOZ_LA B_RESULTS
  22743   "RTN","ORY 42707",152 ,0)
  22744    ;;EOR^
  22745   "RTN","ORY 42707",153 ,0)
  22746    ;;KEY^860 .4:^CLOZAP INE MED
  22747   "RTN","ORY 42707",154 ,0)
  22748    ;;R^"860. 4:",.01,"E "
  22749   "RTN","ORY 42707",155 ,0)
  22750    ;;D^CLOZA PINE MED
  22751   "RTN","ORY 42707",156 ,0)
  22752    ;;R^"860. 4:",1,"E"
  22753   "RTN","ORY 42707",157 ,0)
  22754    ;;D^CLOZA PINE
  22755   "RTN","ORY 42707",158 ,0)
  22756    ;;R^"860. 4:",101,"E "
  22757   "RTN","ORY 42707",159 ,0)
  22758    ;;D^BOOLE AN
  22759   "RTN","ORY 42707",160 ,0)
  22760    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.01," E"
  22761   "RTN","ORY 42707",161 ,0)
  22762    ;;D^DATAB ASE LOOKUP
  22763   "RTN","ORY 42707",162 ,0)
  22764    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.02," E"
  22765   "RTN","ORY 42707",163 ,0)
  22766    ;;D^DATAB ASE LOOKUP
  22767   "RTN","ORY 42707",164 ,0)
  22768    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",1,"E"
  22769   "RTN","ORY 42707",165 ,0)
  22770    ;;D^PATIE NT.CLOZAPI NE MED
  22771   "RTN","ORY 42707",166 ,0)
  22772    ;;EOR^
  22773   "RTN","ORY 42707",167 ,0)
  22774    ;;KEY^860 .4:^CLOZAP INE WBC W/ IN 7 FLAG
  22775   "RTN","ORY 42707",168 ,0)
  22776    ;;R^"860. 4:",.01,"E "
  22777   "RTN","ORY 42707",169 ,0)
  22778    ;;D^CLOZA PINE WBC W /IN 7 FLAG
  22779   "RTN","ORY 42707",170 ,0)
  22780    ;;R^"860. 4:",1,"E"
  22781   "RTN","ORY 42707",171 ,0)
  22782    ;;D^CLOZ  WBC FLAG
  22783   "RTN","ORY 42707",172 ,0)
  22784    ;;R^"860. 4:",101,"E "
  22785   "RTN","ORY 42707",173 ,0)
  22786    ;;D^BOOLE AN
  22787   "RTN","ORY 42707",174 ,0)
  22788    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.01," E"
  22789   "RTN","ORY 42707",175 ,0)
  22790    ;;D^DATAB ASE LOOKUP
  22791   "RTN","ORY 42707",176 ,0)
  22792    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.02," E"
  22793   "RTN","ORY 42707",177 ,0)
  22794    ;;D^DATAB ASE LOOKUP
  22795   "RTN","ORY 42707",178 ,0)
  22796    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",1,"E"
  22797   "RTN","ORY 42707",179 ,0)
  22798    ;;D^PATIE NT.CLOZ_WB C_W/IN_7_F LAG
  22799   "RTN","ORY 42707",180 ,0)
  22800    ;;EOR^
  22801   "RTN","ORY 42707",181 ,0)
  22802    ;;KEY^860 .4:^FILLER
  22803   "RTN","ORY 42707",182 ,0)
  22804    ;;R^"860. 4:",.01,"E "
  22805   "RTN","ORY 42707",183 ,0)
  22806    ;;D^FILLE R
  22807   "RTN","ORY 42707",184 ,0)
  22808    ;;R^"860. 4:",1,"E"
  22809   "RTN","ORY 42707",185 ,0)
  22810    ;;D^FILL
  22811   "RTN","ORY 42707",186 ,0)
  22812    ;;R^"860. 4:",101,"E "
  22813   "RTN","ORY 42707",187 ,0)
  22814    ;;D^FREE  TEXT
  22815   "RTN","ORY 42707",188 ,0)
  22816    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",.0 1,"E"
  22817   "RTN","ORY 42707",189 ,0)
  22818    ;;D^CPRS  ORDER PRES CAN
  22819   "RTN","ORY 42707",190 ,0)
  22820    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",.0 2,"E"
  22821   "RTN","ORY 42707",191 ,0)
  22822    ;;D^ORDER  ENTRY ORD ER PRESCAN
  22823   "RTN","ORY 42707",192 ,0)
  22824    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",1, "E"
  22825   "RTN","ORY 42707",193 ,0)
  22826    ;;D^PATIE NT.OPS_FIL LER
  22827   "RTN","ORY 42707",194 ,0)
  22828    ;;R^"860. 4:","860.4 1:GENERIC  HL7 MESSAG E ARRAY^86 0.6",.01," E"
  22829   "RTN","ORY 42707",195 ,0)
  22830    ;;D^GENER IC HL7 MES SAGE ARRAY
  22831   "RTN","ORY 42707",196 ,0)
  22832    ;;R^"860. 4:","860.4 1:GENERIC  HL7 MESSAG E ARRAY^86 0.6",.02," E"
  22833   "RTN","ORY 42707",197 ,0)
  22834    ;;D^HL7 C OMMON ORDE R SEGMENT
  22835   "RTN","ORY 42707",198 ,0)
  22836    ;;R^"860. 4:","860.4 1:GENERIC  HL7 MESSAG E ARRAY^86 0.6",1,"E"
  22837   "RTN","ORY 42707",199 ,0)
  22838    ;;D^PATIE NT.HL7_FIL LER
  22839   "RTN","ORY 42707",200 ,0)
  22840    ;;EOR^
  22841   "RTN","ORY 42707",201 ,0)
  22842    ;;KEY^860 .4:^ORDER  MODE
  22843   "RTN","ORY 42707",202 ,0)
  22844    ;;R^"860. 4:",.01,"E "
  22845   "RTN","ORY 42707",203 ,0)
  22846    ;;D^ORDER  MODE
  22847   "RTN","ORY 42707",204 ,0)
  22848    ;;R^"860. 4:",101,"E "
  22849   "RTN","ORY 42707",205 ,0)
  22850    ;;D^FREE  TEXT
  22851   "RTN","ORY 42707",206 ,0)
  22852    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",.0 1,"E"
  22853   "RTN","ORY 42707",207 ,0)
  22854    ;;D^CPRS  ORDER PRES CAN
  22855   "RTN","ORY 42707",208 ,0)
  22856    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",.0 2,"E"
  22857   "RTN","ORY 42707",209 ,0)
  22858    ;;D^ORDER  ENTRY ORD ER PRESCAN
  22859   "RTN","ORY 42707",210 ,0)
  22860    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",1, "E"
  22861   "RTN","ORY 42707",211 ,0)
  22862    ;;D^PATIE NT.OPS_ORD _MODE
  22863   "RTN","ORY 42707",212 ,0)
  22864    ;;EOR^
  22865   "RTN","ORY 42707",213 ,0)
  22866    ;;KEY^860 .4:^PATIEN T IEN
  22867   "RTN","ORY 42707",214 ,0)
  22868    ;;R^"860. 4:",.01,"E "
  22869   "RTN","ORY 42707",215 ,0)
  22870    ;;D^PATIE NT IEN
  22871   "RTN","ORY 42707",216 ,0)
  22872    ;;R^"860. 4:",101,"E "
  22873   "RTN","ORY 42707",217 ,0)
  22874    ;;D^NUMER IC
  22875   "RTN","ORY 42707",218 ,0)
  22876    ;;R^"860. 4:","860.4 1:CPRS ORD ER PROTOCO L^860.6",. 01,"E"
  22877   "RTN","ORY 42707",219 ,0)
  22878    ;;D^CPRS  ORDER PROT OCOL
  22879   "RTN","ORY 42707",220 ,0)
  22880    ;;R^"860. 4:","860.4 1:CPRS ORD ER PROTOCO L^860.6",. 02,"E"
  22881   "RTN","ORY 42707",221 ,0)
  22882    ;;D^OERR  ORDER EVEN T FLAG PRO TOCOL
  22883   "RTN","ORY 42707",222 ,0)
  22884    ;;R^"860. 4:","860.4 1:CPRS ORD ER PROTOCO L^860.6",1 ,"E"
  22885   "RTN","ORY 42707",223 ,0)
  22886    ;;D^PATIE NT.OERR_OR DER_PATIEN T
  22887   "RTN","ORY 42707",224 ,0)
  22888    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.01," E"
  22889   "RTN","ORY 42707",225 ,0)
  22890    ;;D^DATAB ASE LOOKUP
  22891   "RTN","ORY 42707",226 ,0)
  22892    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",.02," E"
  22893   "RTN","ORY 42707",227 ,0)
  22894    ;;D^DATAB ASE LOOKUP
  22895   "RTN","ORY 42707",228 ,0)
  22896    ;;R^"860. 4:","860.4 1:DATABASE  LOOKUP^86 0.6",1,"E"
  22897   "RTN","ORY 42707",229 ,0)
  22898    ;;D^PATIE NT.IEN
  22899   "RTN","ORY 42707",230 ,0)
  22900    ;;R^"860. 4:","860.4 1:GENERIC  HL7 MESSAG E ARRAY^86 0.6",.01," E"
  22901   "RTN","ORY 42707",231 ,0)
  22902    ;;D^GENER IC HL7 MES SAGE ARRAY
  22903   "RTN","ORY 42707",232 ,0)
  22904    ;;R^"860. 4:","860.4 1:GENERIC  HL7 MESSAG E ARRAY^86 0.6",.02," E"
  22905   "RTN","ORY 42707",233 ,0)
  22906    ;;D^HL7 P ATIENT ID  SEGMENT
  22907   "RTN","ORY 42707",234 ,0)
  22908    ;;R^"860. 4:","860.4 1:GENERIC  HL7 MESSAG E ARRAY^86 0.6",1,"E"
  22909   "RTN","ORY 42707",235 ,0)
  22910    ;;D^PATIE NT.HL7_PAT IENT_ID
  22911   "RTN","ORY 42707",236 ,0)
  22912    ;;EOR^
  22913   "RTN","ORY 42707",237 ,0)
  22914    ;;KEY^860 .4:^PHARMA CY LOCAL I D
  22915   "RTN","ORY 42707",238 ,0)
  22916    ;;R^"860. 4:",.01,"E "
  22917   "RTN","ORY 42707",239 ,0)
  22918    ;;D^PHARM ACY LOCAL  ID
  22919   "RTN","ORY 42707",240 ,0)
  22920    ;;R^"860. 4:",1,"E"
  22921   "RTN","ORY 42707",241 ,0)
  22922    ;;D^DISP  DRUG IEN
  22923   "RTN","ORY 42707",242 ,0)
  22924    ;;R^"860. 4:",101,"E "
  22925   "RTN","ORY 42707",243 ,0)
  22926    ;;D^FREE  TEXT
  22927   "RTN","ORY 42707",244 ,0)
  22928    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",.0 1,"E"
  22929   "RTN","ORY 42707",245 ,0)
  22930    ;;D^CPRS  ORDER PRES CAN
  22931   "RTN","ORY 42707",246 ,0)
  22932    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",.0 2,"E"
  22933   "RTN","ORY 42707",247 ,0)
  22934    ;;D^ORDER  ENTRY ORD ER PRESCAN
  22935   "RTN","ORY 42707",248 ,0)
  22936    ;;R^"860. 4:","860.4 1:CPRS ORD ER PRESCAN ^860.6",1, "E"
  22937   "RTN","ORY 42707",249 ,0)
  22938    ;;D^PATIE NT.OPS_DRU G_ID
  22939   "RTN","ORY 42707",250 ,0)
  22940    ;;EOR^
  22941   "RTN","ORY 42707",251 ,0)
  22942    ;;EOF^OCX S(860.4)^1
  22943   "RTN","ORY 42707",252 ,0)
  22944    ;;SOF^860 .3  ORDER  CHECK ELEM ENT
  22945   "RTN","ORY 42707",253 ,0)
  22946    ;;KEY^860 .3:^CLOZAP INE ANC <  1.0
  22947   "RTN","ORY 42707",254 ,0)
  22948    ;;R^"860. 3:",.01,"E "
  22949   "RTN","ORY 42707",255 ,0)
  22950    ;;D^CLOZA PINE ANC <  1.0
  22951   "RTN","ORY 42707",256 ,0)
  22952    ;;R^"860. 3:",.02,"E "
  22953   "RTN","ORY 42707",257 ,0)
  22954    ;;D^CPRS  ORDER PRES CAN
  22955   "RTN","ORY 42707",258 ,0)
  22956    ;;R^"860. 3:","860.3 1:1",.01," E"
  22957   "RTN","ORY 42707",259 ,0)
  22958    ;;D^4
  22959   "RTN","ORY 42707",260 ,0)
  22960    ;;R^"860. 3:","860.3 1:1",1,"E"
  22961   "RTN","ORY 42707",261 ,0)
  22962    ;;D^CLOZA PINE ANC W /IN 7 RESU LT
  22963   "RTN","ORY 42707",262 ,0)
  22964    ;;R^"860. 3:","860.3 1:1",2,"E"
  22965   "RTN","ORY 42707",263 ,0)
  22966    ;;D^LESS  THAN
  22967   "RTN","ORY 42707",264 ,0)
  22968    ;;R^"860. 3:","860.3 1:1",3,"E"
  22969   "RTN","ORY 42707",265 ,0)
  22970    ;;D^1.0
  22971   "RTN","ORY 42707",266 ,0)
  22972    ;;R^"860. 3:","860.3 1:2",.01," E"
  22973   "RTN","ORY 42707",267 ,0)
  22974    ;;D^5
  22975   "RTN","ORY 42707",268 ,0)
  22976    ;;R^"860. 3:","860.3 1:2",1,"E"
  22977   "RTN","ORY 42707",269 ,0)
  22978    ;1;
  22979   "RTN","ORY 42707",270 ,0)
  22980    ;
  22981   "RTN","ORY 42708")
  22982   0^13^B3461 4510
  22983   "RTN","ORY 42708",1,0 )
  22984   ORY42708 ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  22985   "RTN","ORY 42708",2,0 )
  22986    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  22987   "RTN","ORY 42708",3,0 )
  22988    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  22989   "RTN","ORY 42708",4,0 )
  22990    ;
  22991   "RTN","ORY 42708",5,0 )
  22992   S ;
  22993   "RTN","ORY 42708",6,0 )
  22994    ;
  22995   "RTN","ORY 42708",7,0 )
  22996    D DOT^ORY 427ES
  22997   "RTN","ORY 42708",8,0 )
  22998    ;
  22999   "RTN","ORY 42708",9,0 )
  23000    ;
  23001   "RTN","ORY 42708",10, 0)
  23002    K REMOTE, LOCAL,OPCO DE,REF
  23003   "RTN","ORY 42708",11, 0)
  23004    F LINE=1: 1:500 S TE XT=$P($T(D ATA+LINE), ";",2,999)  Q:TEXT  I  $L(TEXT)  D  Q:QUIT
  23005   "RTN","ORY 42708",12, 0)
  23006    .S ^TMP(" OCXRULE",$ J,$O(^TMP( "OCXRULE", $J,"A"),-1 )+1)=TEXT
  23007   "RTN","ORY 42708",13, 0)
  23008    ;
  23009   "RTN","ORY 42708",14, 0)
  23010    ;
  23011   "RTN","ORY 42708",15, 0)
  23012    ;
  23013   "RTN","ORY 42708",16, 0)
  23014    Q
  23015   "RTN","ORY 42708",17, 0)
  23016    ;
  23017   "RTN","ORY 42708",18, 0)
  23018   DATA ;
  23019   "RTN","ORY 42708",19, 0)
  23020    ;
  23021   "RTN","ORY 42708",20, 0)
  23022    ;;D^CLOZA PINE ANC W /IN 7 FLAG
  23023   "RTN","ORY 42708",21, 0)
  23024    ;;R^"860. 3:","860.3 1:2",2,"E"
  23025   "RTN","ORY 42708",22, 0)
  23026    ;;D^LOGIC AL TRUE
  23027   "RTN","ORY 42708",23, 0)
  23028    ;;EOR^
  23029   "RTN","ORY 42708",24, 0)
  23030    ;;KEY^860 .3:^CLOZAP INE ANC >=  1.0 & < 1 .5
  23031   "RTN","ORY 42708",25, 0)
  23032    ;;R^"860. 3:",.01,"E "
  23033   "RTN","ORY 42708",26, 0)
  23034    ;;D^CLOZA PINE ANC > = 1.0 & <  1.5
  23035   "RTN","ORY 42708",27, 0)
  23036    ;;R^"860. 3:",.02,"E "
  23037   "RTN","ORY 42708",28, 0)
  23038    ;;D^CPRS  ORDER PRES CAN
  23039   "RTN","ORY 42708",29, 0)
  23040    ;;R^"860. 3:","860.3 1:1",.01," E"
  23041   "RTN","ORY 42708",30, 0)
  23042    ;;D^1
  23043   "RTN","ORY 42708",31, 0)
  23044    ;;R^"860. 3:","860.3 1:1",1,"E"
  23045   "RTN","ORY 42708",32, 0)
  23046    ;;D^CLOZA PINE ANC W /IN 7 RESU LT
  23047   "RTN","ORY 42708",33, 0)
  23048    ;;R^"860. 3:","860.3 1:1",2,"E"
  23049   "RTN","ORY 42708",34, 0)
  23050    ;;D^GREAT ER THAN
  23051   "RTN","ORY 42708",35, 0)
  23052    ;;R^"860. 3:","860.3 1:1",3,"E"
  23053   "RTN","ORY 42708",36, 0)
  23054    ;;D^.999
  23055   "RTN","ORY 42708",37, 0)
  23056    ;;R^"860. 3:","860.3 1:2",.01," E"
  23057   "RTN","ORY 42708",38, 0)
  23058    ;;D^2
  23059   "RTN","ORY 42708",39, 0)
  23060    ;;R^"860. 3:","860.3 1:2",1,"E"
  23061   "RTN","ORY 42708",40, 0)
  23062    ;;D^CLOZA PINE ANC W /IN 7 RESU LT
  23063   "RTN","ORY 42708",41, 0)
  23064    ;;R^"860. 3:","860.3 1:2",2,"E"
  23065   "RTN","ORY 42708",42, 0)
  23066    ;;D^LESS  THAN
  23067   "RTN","ORY 42708",43, 0)
  23068    ;;R^"860. 3:","860.3 1:2",3,"E"
  23069   "RTN","ORY 42708",44, 0)
  23070    ;;D^1.5
  23071   "RTN","ORY 42708",45, 0)
  23072    ;;R^"860. 3:","860.3 1:3",.01," E"
  23073   "RTN","ORY 42708",46, 0)
  23074    ;;D^3
  23075   "RTN","ORY 42708",47, 0)
  23076    ;;R^"860. 3:","860.3 1:3",1,"E"
  23077   "RTN","ORY 42708",48, 0)
  23078    ;;D^CLOZA PINE ANC W /IN 7 FLAG
  23079   "RTN","ORY 42708",49, 0)
  23080    ;;R^"860. 3:","860.3 1:3",2,"E"
  23081   "RTN","ORY 42708",50, 0)
  23082    ;;D^LOGIC AL TRUE
  23083   "RTN","ORY 42708",51, 0)
  23084    ;;EOR^
  23085   "RTN","ORY 42708",52, 0)
  23086    ;;KEY^860 .3:^CLOZAP INE DRUG S ELECTED
  23087   "RTN","ORY 42708",53, 0)
  23088    ;;R^"860. 3:",.01,"E "
  23089   "RTN","ORY 42708",54, 0)
  23090    ;;D^CLOZA PINE DRUG  SELECTED
  23091   "RTN","ORY 42708",55, 0)
  23092    ;;R^"860. 3:",.02,"E "
  23093   "RTN","ORY 42708",56, 0)
  23094    ;;D^CPRS  ORDER PRES CAN
  23095   "RTN","ORY 42708",57, 0)
  23096    ;;R^"860. 3:","860.3 1:1",.01," E"
  23097   "RTN","ORY 42708",58, 0)
  23098    ;;D^1
  23099   "RTN","ORY 42708",59, 0)
  23100    ;;R^"860. 3:","860.3 1:1",1,"E"
  23101   "RTN","ORY 42708",60, 0)
  23102    ;;D^ORDER  MODE
  23103   "RTN","ORY 42708",61, 0)
  23104    ;;R^"860. 3:","860.3 1:1",2,"E"
  23105   "RTN","ORY 42708",62, 0)
  23106    ;;D^EQ FR EE TEXT
  23107   "RTN","ORY 42708",63, 0)
  23108    ;;R^"860. 3:","860.3 1:1",3,"E"
  23109   "RTN","ORY 42708",64, 0)
  23110    ;;D^SELEC T
  23111   "RTN","ORY 42708",65, 0)
  23112    ;;R^"860. 3:","860.3 1:2",.01," E"
  23113   "RTN","ORY 42708",66, 0)
  23114    ;;D^2
  23115   "RTN","ORY 42708",67, 0)
  23116    ;;R^"860. 3:","860.3 1:2",1,"E"
  23117   "RTN","ORY 42708",68, 0)
  23118    ;;D^FILLE R
  23119   "RTN","ORY 42708",69, 0)
  23120    ;;R^"860. 3:","860.3 1:2",2,"E"
  23121   "RTN","ORY 42708",70, 0)
  23122    ;;D^START S WITH
  23123   "RTN","ORY 42708",71, 0)
  23124    ;;R^"860. 3:","860.3 1:2",3,"E"
  23125   "RTN","ORY 42708",72, 0)
  23126    ;;D^PS
  23127   "RTN","ORY 42708",73, 0)
  23128    ;;R^"860. 3:","860.3 1:5",.01," E"
  23129   "RTN","ORY 42708",74, 0)
  23130    ;;D^5
  23131   "RTN","ORY 42708",75, 0)
  23132    ;;R^"860. 3:","860.3 1:5",1,"E"
  23133   "RTN","ORY 42708",76, 0)
  23134    ;;D^CLOZA PINE MED
  23135   "RTN","ORY 42708",77, 0)
  23136    ;;R^"860. 3:","860.3 1:5",2,"E"
  23137   "RTN","ORY 42708",78, 0)
  23138    ;;D^LOGIC AL TRUE
  23139   "RTN","ORY 42708",79, 0)
  23140    ;;EOR^
  23141   "RTN","ORY 42708",80, 0)
  23142    ;;KEY^860 .3:^CLOZAP INE NO ANC  W/IN 7 DA YS
  23143   "RTN","ORY 42708",81, 0)
  23144    ;;R^"860. 3:",.01,"E "
  23145   "RTN","ORY 42708",82, 0)
  23146    ;;D^CLOZA PINE NO AN C W/IN 7 D AYS
  23147   "RTN","ORY 42708",83, 0)
  23148    ;;R^"860. 3:",.02,"E "
  23149   "RTN","ORY 42708",84, 0)
  23150    ;;D^CPRS  ORDER PRES CAN
  23151   "RTN","ORY 42708",85, 0)
  23152    ;;R^"860. 3:","860.3 1:6",.01," E"
  23153   "RTN","ORY 42708",86, 0)
  23154    ;;D^6
  23155   "RTN","ORY 42708",87, 0)
  23156    ;;R^"860. 3:","860.3 1:6",1,"E"
  23157   "RTN","ORY 42708",88, 0)
  23158    ;;D^CLOZA PINE ANC W /IN 7 FLAG
  23159   "RTN","ORY 42708",89, 0)
  23160    ;;R^"860. 3:","860.3 1:6",2,"E"
  23161   "RTN","ORY 42708",90, 0)
  23162    ;;D^LOGIC AL FALSE
  23163   "RTN","ORY 42708",91, 0)
  23164    ;;EOR^
  23165   "RTN","ORY 42708",92, 0)
  23166    ;;KEY^860 .3:^CLOZAP INE NO WBC  W/IN 7 DA YS
  23167   "RTN","ORY 42708",93, 0)
  23168    ;;R^"860. 3:",.01,"E "
  23169   "RTN","ORY 42708",94, 0)
  23170    ;;D^CLOZA PINE NO WB C W/IN 7 D AYS
  23171   "RTN","ORY 42708",95, 0)
  23172    ;;R^"860. 3:",.02,"E "
  23173   "RTN","ORY 42708",96, 0)
  23174    ;;D^CPRS  ORDER PRES CAN
  23175   "RTN","ORY 42708",97, 0)
  23176    ;;R^"860. 3:","860.3 1:4",.01," E"
  23177   "RTN","ORY 42708",98, 0)
  23178    ;;D^4
  23179   "RTN","ORY 42708",99, 0)
  23180    ;;R^"860. 3:","860.3 1:4",1,"E"
  23181   "RTN","ORY 42708",100 ,0)
  23182    ;;D^CLOZA PINE WBC W /IN 7 FLAG
  23183   "RTN","ORY 42708",101 ,0)
  23184    ;;R^"860. 3:","860.3 1:4",2,"E"
  23185   "RTN","ORY 42708",102 ,0)
  23186    ;;D^LOGIC AL FALSE
  23187   "RTN","ORY 42708",103 ,0)
  23188    ;;EOR^
  23189   "RTN","ORY 42708",104 ,0)
  23190    ;;EOF^OCX S(860.3)^1
  23191   "RTN","ORY 42708",105 ,0)
  23192    ;;SOF^860 .2  ORDER  CHECK RULE
  23193   "RTN","ORY 42708",106 ,0)
  23194    ;;KEY^860 .2:^CLOZAP INE
  23195   "RTN","ORY 42708",107 ,0)
  23196    ;;R^"860. 2:",.01,"E "
  23197   "RTN","ORY 42708",108 ,0)
  23198    ;;D^CLOZA PINE
  23199   "RTN","ORY 42708",109 ,0)
  23200    ;;R^"860. 2:","860.2 1:1",.01," E"
  23201   "RTN","ORY 42708",110 ,0)
  23202    ;;D^NO WB C W/IN 7 D AYS
  23203   "RTN","ORY 42708",111 ,0)
  23204    ;;R^"860. 2:","860.2 1:1",.02," E"
  23205   "RTN","ORY 42708",112 ,0)
  23206    ;;D^SIMPL E DEFINITI ON
  23207   "RTN","ORY 42708",113 ,0)
  23208    ;;R^"860. 2:","860.2 1:1",1,"E"
  23209   "RTN","ORY 42708",114 ,0)
  23210    ;;D^CLOZA PINE NO WB C W/IN 7 D AYS
  23211   "RTN","ORY 42708",115 ,0)
  23212    ;;R^"860. 2:","860.2 1:1",2,"E"
  23213   "RTN","ORY 42708",116 ,0)
  23214    ;;D^CLOZA PINE AND N O WBC W/IN  7 DAYS
  23215   "RTN","ORY 42708",117 ,0)
  23216    ;;R^"860. 2:","860.2 1:10",.01, "E"
  23217   "RTN","ORY 42708",118 ,0)
  23218    ;;D^1.0 > = ANC < 1. 5
  23219   "RTN","ORY 42708",119 ,0)
  23220    ;;R^"860. 2:","860.2 1:10",.02, "E"
  23221   "RTN","ORY 42708",120 ,0)
  23222    ;;D^SIMPL E DEFINITI ON
  23223   "RTN","ORY 42708",121 ,0)
  23224    ;;R^"860. 2:","860.2 1:10",1,"E "
  23225   "RTN","ORY 42708",122 ,0)
  23226    ;;D^CLOZA PINE ANC > = 1.0 & <  1.5
  23227   "RTN","ORY 42708",123 ,0)
  23228    ;;R^"860. 2:","860.2 1:4",.01," E"
  23229   "RTN","ORY 42708",124 ,0)
  23230    ;;D^ANC <  1.0
  23231   "RTN","ORY 42708",125 ,0)
  23232    ;;R^"860. 2:","860.2 1:4",.02," E"
  23233   "RTN","ORY 42708",126 ,0)
  23234    ;;D^SIMPL E DEFINITI ON
  23235   "RTN","ORY 42708",127 ,0)
  23236    ;;R^"860. 2:","860.2 1:4",1,"E"
  23237   "RTN","ORY 42708",128 ,0)
  23238    ;;D^CLOZA PINE ANC <  1.0
  23239   "RTN","ORY 42708",129 ,0)
  23240    ;;R^"860. 2:","860.2 1:6",.01," E"
  23241   "RTN","ORY 42708",130 ,0)
  23242    ;;D^NO AN C W/IN 7 D AYS
  23243   "RTN","ORY 42708",131 ,0)
  23244    ;;R^"860. 2:","860.2 1:6",.02," E"
  23245   "RTN","ORY 42708",132 ,0)
  23246    ;;D^SIMPL E DEFINITI ON
  23247   "RTN","ORY 42708",133 ,0)
  23248    ;;R^"860. 2:","860.2 1:6",1,"E"
  23249   "RTN","ORY 42708",134 ,0)
  23250    ;;D^CLOZA PINE NO AN C W/IN 7 D AYS
  23251   "RTN","ORY 42708",135 ,0)
  23252    ;;R^"860. 2:","860.2 1:7",.01," E"
  23253   "RTN","ORY 42708",136 ,0)
  23254    ;;D^CLOZA PINE
  23255   "RTN","ORY 42708",137 ,0)
  23256    ;;R^"860. 2:","860.2 1:7",.02," E"
  23257   "RTN","ORY 42708",138 ,0)
  23258    ;;D^SIMPL E DEFINITI ON
  23259   "RTN","ORY 42708",139 ,0)
  23260    ;;R^"860. 2:","860.2 1:7",1,"E"
  23261   "RTN","ORY 42708",140 ,0)
  23262    ;;D^CLOZA PINE DRUG  SELECTED
  23263   "RTN","ORY 42708",141 ,0)
  23264    ;;R^"860. 2:","860.2 2:1",.01," E"
  23265   "RTN","ORY 42708",142 ,0)
  23266    ;;D^1
  23267   "RTN","ORY 42708",143 ,0)
  23268    ;;R^"860. 2:","860.2 2:1",1,"E"
  23269   "RTN","ORY 42708",144 ,0)
  23270    ;;D^CLOZA PINE AND ( NO WBC W/I N 7 DAYS O R NO ANC W /IN 7 DAYS )
  23271   "RTN","ORY 42708",145 ,0)
  23272    ;;R^"860. 2:","860.2 2:1",2,"E"
  23273   "RTN","ORY 42708",146 ,0)
  23274    ;;D^CLOZA PINE APPRO PRIATENESS
  23275   "RTN","ORY 42708",147 ,0)
  23276    ;;R^"860. 2:","860.2 2:1",6,"E"
  23277   "RTN","ORY 42708",148 ,0)
  23278    ;;D^Cloza pine order s require  a CBC/Diff  within pa st 7 days.   Please o rder CBC/D iff with W BC and ANC  immediate ly.  Most  recent res ults - |CL OZ LAB RSL TS|
  23279   "RTN","ORY 42708",149 ,0)
  23280    ;;R^"860. 2:","860.2 2:2",.01," E"
  23281   "RTN","ORY 42708",150 ,0)
  23282    ;;D^2
  23283   "RTN","ORY 42708",151 ,0)
  23284    ;;R^"860. 2:","860.2 2:2",1,"E"
  23285   "RTN","ORY 42708",152 ,0)
  23286    ;;D^CLOZA PINE AND A NC < 1.0
  23287   "RTN","ORY 42708",153 ,0)
  23288    ;;R^"860. 2:","860.2 2:2",2,"E"
  23289   "RTN","ORY 42708",154 ,0)
  23290    ;;D^CLOZA PINE APPRO PRIATENESS
  23291   "RTN","ORY 42708",155 ,0)
  23292    ;;R^"860. 2:","860.2 2:2",6,"E"
  23293   "RTN","ORY 42708",156 ,0)
  23294    ;;D^Moder ate/Severe  Neutropen ia - pleas e repeat C BC/Diff in cluding WB C and ANC  tests imme diately an d Daily un til ANC st abilizes t o greater  than or eq ual to 100 0. Most re cent resul ts - |CLOZ  LAB RSLTS |
  23295   "RTN","ORY 42708",157 ,0)
  23296    ;;R^"860. 2:","860.2 2:3",.01," E"
  23297   "RTN","ORY 42708",158 ,0)
  23298    ;;D^3
  23299   "RTN","ORY 42708",159 ,0)
  23300    ;;R^"860. 2:","860.2 2:3",1,"E"
  23301   "RTN","ORY 42708",160 ,0)
  23302    ;;D^CLOZA PINE AND ( 1.0 >= ANC  < 1.5)
  23303   "RTN","ORY 42708",161 ,0)
  23304    ;;R^"860. 2:","860.2 2:3",2,"E"
  23305   "RTN","ORY 42708",162 ,0)
  23306    ;;D^CLOZA PINE APPRO PRIATENESS
  23307   "RTN","ORY 42708",163 ,0)
  23308    ;;R^"860. 2:","860.2 2:3",6,"E"
  23309   "RTN","ORY 42708",164 ,0)
  23310    ;;D^Mild  Neutropeni a - please  repeat CB C/Diff inc luding WBC  and ANC t ests immed iately and  3X weekly  until ANC  stabilize s to great er than or  equal to  1500. Most  recent re sults - |C LOZ LAB RS LTS|
  23311   "RTN","ORY 42708",165 ,0)
  23312    ;;EOR^
  23313   "RTN","ORY 42708",166 ,0)
  23314    ;;EOF^OCX S(860.2)^1
  23315   "RTN","ORY 42708",167 ,0)
  23316    ;1;
  23317   "RTN","ORY 42708",168 ,0)
  23318    ;
  23319   "RTN","ORY 4271")
  23320   0^2^B40435 115
  23321   "RTN","ORY 4271",1,0)
  23322   ORY4271 ;S LC/RJS,CLA  - OCX PAC KAGE RULE  TRANSPORT  ROUTINE (D elete afte r Install  of OR*3*42 7) ;MAR 7, 2017 at 15 :12
  23323   "RTN","ORY 4271",2,0)
  23324    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  23325   "RTN","ORY 4271",3,0)
  23326    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  23327   "RTN","ORY 4271",4,0)
  23328    ;
  23329   "RTN","ORY 4271",5,0)
  23330   S ;
  23331   "RTN","ORY 4271",6,0)
  23332    ;
  23333   "RTN","ORY 4271",7,0)
  23334    Q
  23335   "RTN","ORY 4271",8,0)
  23336    ;
  23337   "RTN","ORY 4271",9,0)
  23338    ;
  23339   "RTN","ORY 4271",10,0 )
  23340   COMPARE(L, R) ;
  23341   "RTN","ORY 4271",11,0 )
  23342    ;
  23343   "RTN","ORY 4271",12,0 )
  23344    Q:$$RES(" R") 1
  23345   "RTN","ORY 4271",13,0 )
  23346    ;
  23347   "RTN","ORY 4271",14,0 )
  23348    Q:'$L($O( L(""))) $$ ADDREC^ORY 4272("R")
  23349   "RTN","ORY 4271",15,0 )
  23350    ;
  23351   "RTN","ORY 4271",16,0 )
  23352    N C,OCXDD  M C=L,C=R  S OCXDD=$ O(C("")) Q  $$MULT("C ",OCXDD)
  23353   "RTN","ORY 4271",17,0 )
  23354    ;
  23355   "RTN","ORY 4271",18,0 )
  23356    Q 0
  23357   "RTN","ORY 4271",19,0 )
  23358    ;
  23359   "RTN","ORY 4271",20,0 )
  23360   RES(REF) ;
  23361   "RTN","ORY 4271",21,0 )
  23362    ;
  23363   "RTN","ORY 4271",22,0 )
  23364    N QUIT,SU B
  23365   "RTN","ORY 4271",23,0 )
  23366    S QUIT=0
  23367   "RTN","ORY 4271",24,0 )
  23368    S SUB=""  F  S SUB=$ O(@REF@(SU B)) Q:'$L( SUB)  I (S UB[":") D   Q:QUIT
  23369   "RTN","ORY 4271",25,0 )
  23370    .N DD,DA
  23371   "RTN","ORY 4271",26,0 )
  23372    .S DD=$P( SUB,":",1) ,DA=$P(SUB ,":",2)
  23373   "RTN","ORY 4271",27,0 )
  23374    .I $L(DA) ,'(DA=+DA)  D  Q:QUIT
  23375   "RTN","ORY 4271",28,0 )
  23376    ..N DANEW ,SUBNEW
  23377   "RTN","ORY 4271",29,0 )
  23378    ..S DANEW =$O(^OCXS( $P(DA,U,2) ,"B",$P(DA ,U,1),0))
  23379   "RTN","ORY 4271",30,0 )
  23380    ..I 'DANE W W !!,$P( $G(^OCXS(+ $P(DA,U,2) ,0)),U,1), ": ",$P(DA ,U,1),"  c ould not r esolve nam e.",!!,"     End Tran sport." S  QUIT=1 Q
  23381   "RTN","ORY 4271",31,0 )
  23382    ..S SUBNE W=DD_":"_D ANEW
  23383   "RTN","ORY 4271",32,0 )
  23384    ..I $D(@R EF@(SUBNEW )) W !!,"  multiple # ",DANEW,"  already ex isted." S  QUIT=1 Q
  23385   "RTN","ORY 4271",33,0 )
  23386    ..M @REF@ (SUBNEW)=@ REF@(SUB)
  23387   "RTN","ORY 4271",34,0 )
  23388    ..K @REF@ (SUB)
  23389   "RTN","ORY 4271",35,0 )
  23390    ..S SUB=" "
  23391   "RTN","ORY 4271",36,0 )
  23392    .I $L(SUB ),($D(@REF @(SUB))>9)  S QUIT=$$ RES($NA(@R EF@(SUB)))
  23393   "RTN","ORY 4271",37,0 )
  23394    ;
  23395   "RTN","ORY 4271",38,0 )
  23396    Q QUIT
  23397   "RTN","ORY 4271",39,0 )
  23398    ;
  23399   "RTN","ORY 4271",40,0 )
  23400   MULT(CREF, OCXDD) ;
  23401   "RTN","ORY 4271",41,0 )
  23402    ;
  23403   "RTN","ORY 4271",42,0 )
  23404    N OCXSUB, LREF,RREF, QUIT,OCXFL D
  23405   "RTN","ORY 4271",43,0 )
  23406    S LREF="L "_$E(CREF, 2,$L(CREF) ),RREF="R" _$E(CREF,2 ,$L(CREF))
  23407   "RTN","ORY 4271",44,0 )
  23408    ;
  23409   "RTN","ORY 4271",45,0 )
  23410    S QUIT=0, OCXFLD=""  F  S OCXFL D=$O(@CREF @(OCXDD,OC XFLD)) Q:' $L(OCXFLD)   D  Q:QUI T
  23411   "RTN","ORY 4271",46,0 )
  23412    .I (OCXFL D[":") D   Q:QUIT
  23413   "RTN","ORY 4271",47,0 )
  23414    ..Q:$$EXF LD(+OCXFLD ,0)
  23415   "RTN","ORY 4271",48,0 )
  23416    ..I '$D(@ LREF@(OCXD D,OCXFLD,. 01,"E")) D   M @LREF@ (OCXDD,OCX FLD)=@RREF @(OCXDD,OC XFLD)
  23417   "RTN","ORY 4271",49,0 )
  23418    ...D WARN ("Missing  multiple:" ,CREF,OCXD D,OCXFLD)
  23419   "RTN","ORY 4271",50,0 )
  23420    ...S QUIT =$$ADDMULT ^ORY4273(C REF,OCXDD, OCXFLD)
  23421   "RTN","ORY 4271",51,0 )
  23422    ..I '$D(@ RREF@(OCXD D,OCXFLD,. 01,"E")) D   M @RREF@ (OCXDD,OCX FLD)=@LREF @(OCXDD,OC XFLD)
  23423   "RTN","ORY 4271",52,0 )
  23424    ...D WARN ("Extra mu ltiple:",C REF,OCXDD, OCXFLD)
  23425   "RTN","ORY 4271",53,0 )
  23426    ...S QUIT =$$DELMULT ^ORY4273($ $APPEND(CR EF,OCXDD), OCXFLD)
  23427   "RTN","ORY 4271",54,0 )
  23428    .;
  23429   "RTN","ORY 4271",55,0 )
  23430    .I (OCXFL D=+OCXFLD) ,'$$EXFLD( +OCXDD,OCX FLD) D
  23431   "RTN","ORY 4271",56,0 )
  23432    ..I ($O(@ CREF@(OCXD D,OCXFLD," "))="E") D   Q
  23433   "RTN","ORY 4271",57,0 )
  23434    ...I $L($ G(@RREF@(O CXDD,OCXFL D,"E"))),' $L($G(@LRE F@(OCXDD,O CXFLD,"E") )) D  Q
  23435   "RTN","ORY 4271",58,0 )
  23436    ....D WAR N("Data Va lue Missin g in "_$$N ETNAME^OCX SEND,CREF, OCXDD,OCXF LD,"E")
  23437   "RTN","ORY 4271",59,0 )
  23438    ....S QUI T=$$EDITFL D^ORY4274( CREF,OCXDD ,OCXFLD,"E ")
  23439   "RTN","ORY 4271",60,0 )
  23440    ...I $L($ G(@LREF@(O CXDD,OCXFL D,"E"))),' $L($G(@RRE F@(OCXDD,O CXFLD,"E") )) D  Q
  23441   "RTN","ORY 4271",61,0 )
  23442    ....D WAR N("Extra D ata Value  in "_$$NET NAME^OCXSE ND,CREF,OC XDD,OCXFLD ,"E")
  23443   "RTN","ORY 4271",62,0 )
  23444    ....S QUI T=$$DELFLD ^ORY4274(C REF,OCXDD, OCXFLD,"E" )
  23445   "RTN","ORY 4271",63,0 )
  23446    ...I '(@L REF@(OCXDD ,OCXFLD,"E ")=@RREF@( OCXDD,OCXF LD,"E")) D
  23447   "RTN","ORY 4271",64,0 )
  23448    ....D WAR N("Inconsi stent Data ",CREF,OCX DD,OCXFLD, "E")
  23449   "RTN","ORY 4271",65,0 )
  23450    ....S QUI T=$$EDITFL D^ORY4274( CREF,OCXDD ,OCXFLD,"E ")
  23451   "RTN","ORY 4271",66,0 )
  23452    ..S OCXSU B=0 F  Q:Q UIT  S OCX SUB=$O(@CR EF@(OCXDD, OCXFLD,OCX SUB)) Q:'O CXSUB  I ' ($G(@RREF@ (OCXDD,OCX FLD,OCXSUB ))=$G(@LRE F@(OCXDD,O CXFLD,OCXS UB))) D  Q
  23453   "RTN","ORY 4271",67,0 )
  23454    ...D WARN ("Inconsis tent word  Data",CREF ,OCXDD,OCX FLD,OCXSUB )
  23455   "RTN","ORY 4271",68,0 )
  23456    ...S QUIT =$$LOADWOR D^ORY4272( RREF,OCXDD ,OCXFLD,OC XSUB)
  23457   "RTN","ORY 4271",69,0 )
  23458    .;
  23459   "RTN","ORY 4271",70,0 )
  23460    .I 'QUIT, (OCXFLD[": ") S QUIT= $$MULT($$A PPEND(CREF ,OCXDD),OC XFLD)
  23461   "RTN","ORY 4271",71,0 )
  23462    Q QUIT
  23463   "RTN","ORY 4271",72,0 )
  23464    ;
  23465   "RTN","ORY 4271",73,0 )
  23466   APPEND(ARR AY,OCXSUB)  ;
  23467   "RTN","ORY 4271",74,0 )
  23468    S:'(OCXSU B=+OCXSUB)  OCXSUB="" ""_OCXSUB_ """"
  23469   "RTN","ORY 4271",75,0 )
  23470    Q:'(ARRAY ["(") ARRA Y_"("_OCXS UB_")"
  23471   "RTN","ORY 4271",76,0 )
  23472    Q $E(ARRA Y,1,$L(ARR AY)-1)_"," _OCXSUB_") "
  23473   "RTN","ORY 4271",77,0 )
  23474    ;
  23475   "RTN","ORY 4271",78,0 )
  23476   EXFLD(FILE ,OCXFLD) ;
  23477   "RTN","ORY 4271",79,0 )
  23478    N OCXFNAM
  23479   "RTN","ORY 4271",80,0 )
  23480    S OCXFNAM =$$FIELD^O CXSENDD(FI LE,OCXFLD, "LABEL")
  23481   "RTN","ORY 4271",81,0 )
  23482    I (OCXFNA M["UNIQUE  OBJECT IDE NTIFIER")  Q 1
  23483   "RTN","ORY 4271",82,0 )
  23484    I (FILE=8 60.2),(OCX FLD=.02) Q  1
  23485   "RTN","ORY 4271",83,0 )
  23486    I (FILE=8 60.22),(OC XFLD=4) Q  1
  23487   "RTN","ORY 4271",84,0 )
  23488    I (FILE=8 60.3),(OCX FLD=3) Q 1
  23489   "RTN","ORY 4271",85,0 )
  23490    I (FILE=8 60.9),(OCX FLD=1) Q 1
  23491   "RTN","ORY 4271",86,0 )
  23492    I (FILE=8 60.91) Q 1
  23493   "RTN","ORY 4271",87,0 )
  23494    I (FILE=8 60.801) Q  1
  23495   "RTN","ORY 4271",88,0 )
  23496    I (FILE=8 60.81) Q 1
  23497   "RTN","ORY 4271",89,0 )
  23498    I (FILE=8 61.01) Q 1
  23499   "RTN","ORY 4271",90,0 )
  23500    I (FILE=8 63.02) Q 1
  23501   "RTN","ORY 4271",91,0 )
  23502    I (FILE=8 63.54) Q 1
  23503   "RTN","ORY 4271",92,0 )
  23504    I (FILE=8 63.61) Q 1
  23505   "RTN","ORY 4271",93,0 )
  23506    I (FILE=8 63.72) Q 1
  23507   "RTN","ORY 4271",94,0 )
  23508    I (FILE=8 63.81) Q 1
  23509   "RTN","ORY 4271",95,0 )
  23510    I ($E(OCX FNAM,1)="* ") Q 1
  23511   "RTN","ORY 4271",96,0 )
  23512    Q 0
  23513   "RTN","ORY 4271",97,0 )
  23514    ;
  23515   "RTN","ORY 4271",98,0 )
  23516   WARN(MSG,C REF,OCXDD, OCXFLD,OCX SUB) ;
  23517   "RTN","ORY 4271",99,0 )
  23518    ;
  23519   "RTN","ORY 4271",100, 0)
  23520    Q:$G(OCXA UTO)
  23521   "RTN","ORY 4271",101, 0)
  23522    ;
  23523   "RTN","ORY 4271",102, 0)
  23524    N D0,DASH ,OCXDDPTH, OCXDPTR,FI LE,FILEID, LREF,OCXPT R,RREF
  23525   "RTN","ORY 4271",103, 0)
  23526    ;
  23527   "RTN","ORY 4271",104, 0)
  23528    S DASH="" ,$P(DASH," -",(55-$L( MSG)))="-"
  23529   "RTN","ORY 4271",105, 0)
  23530    W !!,"--- ---------" ,MSG,DASH
  23531   "RTN","ORY 4271",106, 0)
  23532    D DSPHDR( CREF,OCXDD ,OCXFLD)
  23533   "RTN","ORY 4271",107, 0)
  23534    I $D(OCXS UB) D DSPF LD(CREF,OC XDD,OCXFLD ,OCXSUB)
  23535   "RTN","ORY 4271",108, 0)
  23536    I '$D(OCX SUB) D DSP REC(CREF,O CXDD,OCXFL D)
  23537   "RTN","ORY 4271",109, 0)
  23538    ;
  23539   "RTN","ORY 4271",110, 0)
  23540    W ! Q
  23541   "RTN","ORY 4271",111, 0)
  23542    ;
  23543   "RTN","ORY 4271",112, 0)
  23544   DSPREC(CRE F,OCXDD,OC XFLD) ;
  23545   "RTN","ORY 4271",113, 0)
  23546    ;
  23547   "RTN","ORY 4271",114, 0)
  23548    N OCXDPTR ,OCXDDPTH, LEVL,OCXCR EF,OCXSUB
  23549   "RTN","ORY 4271",115, 0)
  23550    S OCXCREF =$$APPEND( $$APPEND(C REF,OCXDD) ,OCXFLD)
  23551   "RTN","ORY 4271",116, 0)
  23552    S OCXDDPT H=$P($P(OC XCREF,"(", 2),")",1), LEVL=$L(OC XDDPTH,"," )
  23553   "RTN","ORY 4271",117, 0)
  23554    S OCXSUB= "" F  S OC XSUB=$O(@O CXCREF@(OC XSUB)) Q:' $L(OCXSUB)   D
  23555   "RTN","ORY 4271",118, 0)
  23556    .;
  23557   "RTN","ORY 4271",119, 0)
  23558    .I '(OCXS UB[":"),'( (OCXSUB=.0 1)&$O(@OCX CREF@(OCXS UB))) D
  23559   "RTN","ORY 4271",120, 0)
  23560    ..N LINE
  23561   "RTN","ORY 4271",121, 0)
  23562    ..Q:$$EXF LD(+OCXFLD ,OCXSUB)
  23563   "RTN","ORY 4271",122, 0)
  23564    ..I OCXFL D W !,?(5+ ((LEVL)*4) ),$$FIELD^ OCXSENDD(+ OCXFLD,OCX SUB,"LABEL "),": ",$G (@OCXCREF@ (OCXSUB,"E "))
  23565   "RTN","ORY 4271",123, 0)
  23566    ..S LINE= 0 F  S LIN E=$O(@OCXC REF@(OCXSU B,LINE)) Q :'LINE  D
  23567   "RTN","ORY 4271",124, 0)
  23568    ...W !,?( 5+(LEVL*4) ),$J(LINE, 3),">",@OC XCREF@(OCX SUB,LINE)
  23569   "RTN","ORY 4271",125, 0)
  23570    .;
  23571   "RTN","ORY 4271",126, 0)
  23572    .I (OCXSU B[":") D
  23573   "RTN","ORY 4271",127, 0)
  23574    ..N D0,OC XDD,FILENA ME
  23575   "RTN","ORY 4271",128, 0)
  23576    ..S D0=+$ P(OCXSUB," :",2),OCXD D=+OCXSUB
  23577   "RTN","ORY 4271",129, 0)
  23578    ..S FILEN AME=$$FILE NAME^OCXSE NDD(OCXDD)
  23579   "RTN","ORY 4271",130, 0)
  23580    ..I $L(FI LENAME) W  !,?(5+($L( LEVL)*4)), FILENAME
  23581   "RTN","ORY 4271",131, 0)
  23582    ..E  W !! ,?(5+(LEVL *4)),FILEN AME
  23583   "RTN","ORY 4271",132, 0)
  23584    ..W " ",D 0,": ",$G( @OCXCREF@( OCXSUB,.01 ,"E"))
  23585   "RTN","ORY 4271",133, 0)
  23586    ..D DSPRE C($$APPEND (CREF,OCXD D),OCXFLD, OCXSUB)
  23587   "RTN","ORY 4271",134, 0)
  23588    ;
  23589   "RTN","ORY 4271",135, 0)
  23590    Q
  23591   "RTN","ORY 4271",136, 0)
  23592    ;
  23593   "RTN","ORY 4271",137, 0)
  23594   DSPHDR(CRE F,OCXDD,OC XFLD) ;
  23595   "RTN","ORY 4271",138, 0)
  23596    ;
  23597   "RTN","ORY 4271",139, 0)
  23598    N D0,FILE ,FILEID,OC XPTR,OCXDD PTH
  23599   "RTN","ORY 4271",140, 0)
  23600    S OCXDDPT H=$P($P($$ APPEND($$A PPEND(CREF ,OCXDD),OC XFLD),"(", 2),")",1)
  23601   "RTN","ORY 4271",141, 0)
  23602    S FILE=""  F OCXPTR= 1:1:$L(OCX DDPTH,",")  D
  23603   "RTN","ORY 4271",142, 0)
  23604    .N OCXDD, D0,FILEID
  23605   "RTN","ORY 4271",143, 0)
  23606    .S FILEID =$P(OCXDDP TH,",",OCX PTR)
  23607   "RTN","ORY 4271",144, 0)
  23608    .I (FILEI D[":") D
  23609   "RTN","ORY 4271",145, 0)
  23610    ..S D0=+$ P(FILEID," :",2),OCXD D=+$E(FILE ID,2,$L(FI LEID))
  23611   "RTN","ORY 4271",146, 0)
  23612    ..W !,?(5 +(OCXPTR*4 )),$$FILEN AME^OCXSEN DD(OCXDD)
  23613   "RTN","ORY 4271",147, 0)
  23614    ..S:$L(FI LE) FILE=F ILE_"," S  FILE=FILE_ FILEID
  23615   "RTN","ORY 4271",148, 0)
  23616    ..I $D(@( "L("_FILE_ ",.01,""E" ")")) W ":  ",@("L("_ FILE_",.01 ,""E"")")  W:D0 " [", D0,"]"
  23617   "RTN","ORY 4271",149, 0)
  23618    ..E  I $D (@("R("_FI LE_",.01," "E"")")) W  ": ",@("R ("_FILE_", .01,""E"") ") W:D0 "  [",D0,"]"
  23619   "RTN","ORY 4271",150, 0)
  23620    ;
  23621   "RTN","ORY 4271",151, 0)
  23622    Q
  23623   "RTN","ORY 4271",152, 0)
  23624    ;
  23625   "RTN","ORY 4271",153, 0)
  23626   DSPFLD(CRE F,OCXDD,OC XFLD,OCXSU B) ;
  23627   "RTN","ORY 4271",154, 0)
  23628    ;
  23629   "RTN","ORY 4271",155, 0)
  23630    N OCXDPTR ,LREF,RREF ,OCXDDPTH
  23631   "RTN","ORY 4271",156, 0)
  23632    ;
  23633   "RTN","ORY 4271",157, 0)
  23634    S OCXDDPT H=$P($P($$ APPEND(CRE F,OCXDD)," (",2),")", 1)
  23635   "RTN","ORY 4271",158, 0)
  23636    S LREF="L ("_OCXDDPT H_")",RREF ="R("_OCXD DPTH_")"
  23637   "RTN","ORY 4271",159, 0)
  23638    W !,?(5+( ($L(OCXDDP TH,",")+1) *4)),$$FIE LD^OCXSEND D(OCXDD,OC XFLD,"LABE L")," fiel d [",OCXFL D,"]"
  23639   "RTN","ORY 4271",160, 0)
  23640    I OCXSUB  W " Line # ",OCXSUB
  23641   "RTN","ORY 4271",161, 0)
  23642    ;
  23643   "RTN","ORY 4271",162, 0)
  23644    W:($D(@RR EF@(OCXFLD ,OCXSUB)))  !,?(5+(($ L(OCXDDPTH ,",")+2)*4 )),"(R) D N S . URL : ",@RREF@ (OCXFLD,OC XSUB)
  23645   "RTN","ORY 4271",163, 0)
  23646    W:($D(@LR EF@(OCXFLD ,OCXSUB)))  !,?(5+(($ L(OCXDDPTH ,",")+2)*4 )),"(L) ", $$NETNAME^ OCXSEND,":  ",@LREF@( OCXFLD,OCX SUB)
  23647   "RTN","ORY 4271",164, 0)
  23648    ;
  23649   "RTN","ORY 4271",165, 0)
  23650    Q
  23651   "RTN","ORY 4271",166, 0)
  23652    ;
  23653   "RTN","ORY 4271",167, 0)
  23654    W !,?10 Q  0 Q $$PAU SE
  23655   "RTN","ORY 4271",168, 0)
  23656    ;
  23657   "RTN","ORY 4271",169, 0)
  23658   PAUSE() W  "  Press E nter " R X :DTIME W !  Q (X[U)
  23659   "RTN","ORY 4271",170, 0)
  23660    ;
  23661   "RTN","ORY 4271",171, 0)
  23662   NOW() N X, Y,%DT S X= "N",%DT="T " D ^%DT S  Y=$$DATE^ OCXSENDD(Y ) S:(Y["@" ) Y=$P(Y," @",1)_" at  "_$P(Y,"@ ",2) Q Y
  23663   "RTN","ORY 4271",172, 0)
  23664    ;
  23665   "RTN","ORY 4272")
  23666   0^3^B26767 346
  23667   "RTN","ORY 4272",1,0)
  23668   ORY4272 ;S LC/RJS,CLA  - OCX PAC KAGE RULE  TRANSPORT  ROUTINE (D elete afte r Install  of OR*3*42 7) ;MAR 7, 2017 at 15 :12
  23669   "RTN","ORY 4272",2,0)
  23670    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  23671   "RTN","ORY 4272",3,0)
  23672    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  23673   "RTN","ORY 4272",4,0)
  23674    ;
  23675   "RTN","ORY 4272",5,0)
  23676   S ;
  23677   "RTN","ORY 4272",6,0)
  23678    ;  Record  Utilities
  23679   "RTN","ORY 4272",7,0)
  23680    Q
  23681   "RTN","ORY 4272",8,0)
  23682    ;
  23683   "RTN","ORY 4272",9,0)
  23684   ADDREC(OCX CREF) ;
  23685   "RTN","ORY 4272",10,0 )
  23686    ;
  23687   "RTN","ORY 4272",11,0 )
  23688    N QUIT,OC XDD,OCXDA, OCXGREF,OC XNAME
  23689   "RTN","ORY 4272",12,0 )
  23690    S OCXDD=$ O(@OCXCREF @("")) Q:' OCXDD 0
  23691   "RTN","ORY 4272",13,0 )
  23692    S OCXNAME =$G(@OCXCR EF@(OCXDD, .01,"E"))
  23693   "RTN","ORY 4272",14,0 )
  23694    ;
  23695   "RTN","ORY 4272",15,0 )
  23696    W "   rec ord missin g..."
  23697   "RTN","ORY 4272",16,0 )
  23698    I (OCXFLA G["D") Q 0
  23699   "RTN","ORY 4272",17,0 )
  23700    ;
  23701   "RTN","ORY 4272",18,0 )
  23702    S OCXDA=0  D CREATE( OCXCREF,OC XDD,.OCXDA ,0)
  23703   "RTN","ORY 4272",19,0 )
  23704    S:$L(OCXN AME) ^TMP( "OCXRULE", $J,"A",+OC XDD,OCXNAM E)=""
  23705   "RTN","ORY 4272",20,0 )
  23706    ;
  23707   "RTN","ORY 4272",21,0 )
  23708    Q 0
  23709   "RTN","ORY 4272",22,0 )
  23710    ;
  23711   "RTN","ORY 4272",23,0 )
  23712   CREATE(OCX CREF,OCXDD ,OCXDA,OCX LVL) ;
  23713   "RTN","ORY 4272",24,0 )
  23714    ;
  23715   "RTN","ORY 4272",25,0 )
  23716    N OCXFLD, OCXGREF,OC XKEY
  23717   "RTN","ORY 4272",26,0 )
  23718    ;
  23719   "RTN","ORY 4272",27,0 )
  23720    I $L(OCXD A),'(OCXDA =+OCXDA) W  !!,"Unres olved subs cript." Q
  23721   "RTN","ORY 4272",28,0 )
  23722    ;
  23723   "RTN","ORY 4272",29,0 )
  23724    S OCXKEY= @OCXCREF@( OCXDD,.01, "E")
  23725   "RTN","ORY 4272",30,0 )
  23726    S OCXGREF =$$GETREF( +OCXDD,.OC XDA,OCXLVL ) Q:'$L(OC XGREF)
  23727   "RTN","ORY 4272",31,0 )
  23728    I 'OCXDA  D
  23729   "RTN","ORY 4272",32,0 )
  23730    .S OCXDA= $O(^TMP("O CXRULE",$J ,"B",+OCXD D,OCXKEY,0 )) Q:OCXDA
  23731   "RTN","ORY 4272",33,0 )
  23732    .S OCXDA= $O(@(OCXGR EF_""" "") "),-1)+1
  23733   "RTN","ORY 4272",34,0 )
  23734    .F OCXDA= OCXDA:1 Q: '$D(@(OCXG REF_OCXDA_ ",0)"))
  23735   "RTN","ORY 4272",35,0 )
  23736    .I $D(@(O CXGREF_OCX DA_",0)"))  S OCXDA=0
  23737   "RTN","ORY 4272",36,0 )
  23738    ;
  23739   "RTN","ORY 4272",37,0 )
  23740    I 'OCXDA  W !!,"Erro r adding r ecord..."  Q
  23741   "RTN","ORY 4272",38,0 )
  23742    ;
  23743   "RTN","ORY 4272",39,0 )
  23744    I '$D(@(O CXGREF_"0) ")) S @(OC XGREF_"0)" )=U_$$FILE HDR^OCXSEN DD(+OCXDD) _U_U
  23745   "RTN","ORY 4272",40,0 )
  23746    ;
  23747   "RTN","ORY 4272",41,0 )
  23748    S OCXFLD= 0 F  S OCX FLD=$O(@OC XCREF@(OCX DD,OCXFLD) ) Q:'OCXFL D  Q:(OCXF LD[":")  I  '$$EXFLD^ ORY4271(+O CXDD,OCXFL D) D
  23749   "RTN","ORY 4272",42,0 )
  23750    .I $L($G( @OCXCREF@( OCXDD,OCXF LD,"E")))  D DIE(OCXD D,OCXGREF, OCXFLD,@OC XCREF@(OCX DD,OCXFLD, "E"),.OCXD A,OCXLVL)
  23751   "RTN","ORY 4272",43,0 )
  23752    .I $O(@OC XCREF@(OCX DD,OCXFLD, 0)) D WORD (OCXDD,OCX GREF,OCXFL D,.OCXDA,O CXCREF)
  23753   "RTN","ORY 4272",44,0 )
  23754    ;
  23755   "RTN","ORY 4272",45,0 )
  23756    D PUSH(.O CXDA)
  23757   "RTN","ORY 4272",46,0 )
  23758    S OCXFLD= "" F  S OC XFLD=$O(@O CXCREF@(OC XDD,OCXFLD )) Q:'$L(O CXFLD)  I  (OCXFLD[": ") D
  23759   "RTN","ORY 4272",47,0 )
  23760    .S OCXDA= $P(OCXFLD, ":",2) W !  D CREATE( $$APPEND(O CXCREF,OCX DD),OCXFLD ,.OCXDA,OC XLVL+1)
  23761   "RTN","ORY 4272",48,0 )
  23762    D POP(.OC XDA)
  23763   "RTN","ORY 4272",49,0 )
  23764    Q
  23765   "RTN","ORY 4272",50,0 )
  23766    ;
  23767   "RTN","ORY 4272",51,0 )
  23768   LOADWORD(R REF,OCXDD, OCXFLD,OCX SUB) ;
  23769   "RTN","ORY 4272",52,0 )
  23770    ;
  23771   "RTN","ORY 4272",53,0 )
  23772    N QUIT,DD PATH,INDEX ,OCXDA,OCX GREF
  23773   "RTN","ORY 4272",54,0 )
  23774    S DDPATH= $P($P($$AP PEND(RREF, OCXDD),"(" ,2),")",1)
  23775   "RTN","ORY 4272",55,0 )
  23776    F INDEX=1 :1:$L(DDPA TH,",") S  OCXDA($L(D DPATH,",") -INDEX)=+$ P($P(DDPAT H,",",INDE X),":",2)
  23777   "RTN","ORY 4272",56,0 )
  23778    S OCXDA=$ G(OCXDA(0) ) K OCXDA( 0)
  23779   "RTN","ORY 4272",57,0 )
  23780    Q:(OCXFLA G["D") 0
  23781   "RTN","ORY 4272",58,0 )
  23782    I (OCXFLA G["A") S Q UIT=$$READ ("Y"," Do  you want t o reload t he local ' "_$$FIELD^ OCXSENDD(+ OCXDD,+OCX FLD,"LABEL ")_"' fiel d ?","YES" ) Q:'QUIT  (QUIT[U)
  23783   "RTN","ORY 4272",59,0 )
  23784    S OCXGREF =$$GETREF( +OCXDD,.OC XDA,$L(DDP ATH,",")-1 ) Q:'$L(OC XGREF)
  23785   "RTN","ORY 4272",60,0 )
  23786    D WORD(OC XDD,OCXGRE F,OCXFLD,. OCXDA,RREF )
  23787   "RTN","ORY 4272",61,0 )
  23788    Q 0
  23789   "RTN","ORY 4272",62,0 )
  23790    ;
  23791   "RTN","ORY 4272",63,0 )
  23792   GETREF(OCX DD,OCXDA,O CXLVL) ;
  23793   "RTN","ORY 4272",64,0 )
  23794    ;
  23795   "RTN","ORY 4272",65,0 )
  23796    Q:'OCXDD  ""
  23797   "RTN","ORY 4272",66,0 )
  23798    ;
  23799   "RTN","ORY 4272",67,0 )
  23800    N OCXIENS ,OCXERR,OC XX
  23801   "RTN","ORY 4272",68,0 )
  23802    S OCXIENS =$$IENS^DI LF(.OCXDA) ,OCXERR=""
  23803   "RTN","ORY 4272",69,0 )
  23804    S OCXX=$$ ROOT^DILFD (OCXDD,OCX IENS,0,OCX ERR)
  23805   "RTN","ORY 4272",70,0 )
  23806    Q OCXX
  23807   "RTN","ORY 4272",71,0 )
  23808    ;
  23809   "RTN","ORY 4272",72,0 )
  23810   WORD(DD,GR EF,FLD,DA, RREF) ;
  23811   "RTN","ORY 4272",73,0 )
  23812    ;
  23813   "RTN","ORY 4272",74,0 )
  23814    N SUB,GLR OOT,LINE
  23815   "RTN","ORY 4272",75,0 )
  23816    S SUB=$P( $$FIELD^OC XSENDD(+DD ,FLD,"GLOB AL SUBSCRI PT LOCATIO N"),";",1)  S:'(SUB=+ SUB) SUB=" """_SUB_"" ""
  23817   "RTN","ORY 4272",76,0 )
  23818    S GLROOT= GREF_DA_", "_SUB_")"  K @GLROOT
  23819   "RTN","ORY 4272",77,0 )
  23820    S LINE=0  F  S LINE= $O(@RREF@( DD,FLD,LIN E)) Q:'LIN E  D
  23821   "RTN","ORY 4272",78,0 )
  23822    .S @GLROO T@($O(@GLR OOT@(""),- 1)+1,0)=@R REF@(DD,FL D,LINE)
  23823   "RTN","ORY 4272",79,0 )
  23824    S LINE=$O (@GLROOT@( ""),-1),@G LROOT@(0)= U_U_LINE_U _LINE_U_$$ DATE("T")_ U
  23825   "RTN","ORY 4272",80,0 )
  23826    ;
  23827   "RTN","ORY 4272",81,0 )
  23828    Q
  23829   "RTN","ORY 4272",82,0 )
  23830    ;
  23831   "RTN","ORY 4272",83,0 )
  23832   DATE(X) N  %DT,Y S %D T="" D ^%D T Q +Y
  23833   "RTN","ORY 4272",84,0 )
  23834    ;
  23835   "RTN","ORY 4272",85,0 )
  23836   DIE(OCXDD, OCXDIC,OCX FLD,OCXVAL ,OCXDA,OCX LVL) ;
  23837   "RTN","ORY 4272",86,0 )
  23838    ;
  23839   "RTN","ORY 4272",87,0 )
  23840    N DIC,DIE ,X,Y,DR,DA ,OCXDVAL,O CXPTR,OCXG REF,D0,OCX SCR
  23841   "RTN","ORY 4272",88,0 )
  23842    S (D0,DA) =OCXDA,(DI C,DIE)=OCX DIC,DR=""
  23843   "RTN","ORY 4272",89,0 )
  23844    S:OCXLVL  D0=OCXDA(1 ),DR="S DA (1)="_(+D0 )_",D0="_( +D0)_";"
  23845   "RTN","ORY 4272",90,0 )
  23846    S:OCXVAL= "?" OCXVAL ="? " S DR =DR_OCXFLD _"///^S X= OCXVAL"
  23847   "RTN","ORY 4272",91,0 )
  23848    I '(OCXVA L="@") W ! ,?(OCXLVL* 5),$$FIELD ^OCXSENDD( +OCXDD,OCX FLD,"LABEL "),": ",OC XVAL
  23849   "RTN","ORY 4272",92,0 )
  23850    ;
  23851   "RTN","ORY 4272",93,0 )
  23852    I '(OCXVA L="@") D
  23853   "RTN","ORY 4272",94,0 )
  23854    .N OCXIEN ,SHORT
  23855   "RTN","ORY 4272",95,0 )
  23856    .S OCXPTR =+$P($$FIE LD^OCXSEND D(+OCXDD,O CXFLD,"SPE CIFIER")," P",2)
  23857   "RTN","ORY 4272",96,0 )
  23858    .Q:'OCXPT R
  23859   "RTN","ORY 4272",97,0 )
  23860    .S OCXGRE F="^"_$$FI ELD^OCXSEN DD(+OCXDD, OCXFLD,"PO INTER")
  23861   "RTN","ORY 4272",98,0 )
  23862    .I '($E(O CXGREF,1,4 )="^OCX"), '(OCXGREF= "^ORD(100. 9,"),'(OCX GREF="^ORD (100.8,")  Q
  23863   "RTN","ORY 4272",99,0 )
  23864    .Q:$$DIC( OCXGREF,OC XVAL,0)
  23865   "RTN","ORY 4272",100, 0)
  23866    .S OCXIEN =$$DIC(OCX GREF,OCXVA L,1)
  23867   "RTN","ORY 4272",101, 0)
  23868    .S ^TMP(" OCXRULE",$ J,"B",OCXP TR,OCXVAL, OCXIEN)=""
  23869   "RTN","ORY 4272",102, 0)
  23870    ;
  23871   "RTN","ORY 4272",103, 0)
  23872    S OCXSCR= 1
  23873   "RTN","ORY 4272",104, 0)
  23874    D ^DIE
  23875   "RTN","ORY 4272",105, 0)
  23876    ;
  23877   "RTN","ORY 4272",106, 0)
  23878    ; I $D(Y)  -> DIE FI LER ERROR
  23879   "RTN","ORY 4272",107, 0)
  23880    I $D(Y) W  "   ^DIE  filer data  error..."  S OCXDIER =$G(OCXDIE R)+1
  23881   "RTN","ORY 4272",108, 0)
  23882    I '$D(Y)  W "    ... Correct da ta Filed"
  23883   "RTN","ORY 4272",109, 0)
  23884    ;
  23885   "RTN","ORY 4272",110, 0)
  23886    Q
  23887   "RTN","ORY 4272",111, 0)
  23888    ;
  23889   "RTN","ORY 4272",112, 0)
  23890   DIC(DIC,X, OCXADD) N  OCXSCR S D IC(0)="",O CXSCR=1 S: OCXADD DIC (0)="L" D  ^DIC Q:(+Y >0) +Y Q 0
  23891   "RTN","ORY 4272",113, 0)
  23892    ;
  23893   "RTN","ORY 4272",114, 0)
  23894   PUSH(OCXDA ) ;
  23895   "RTN","ORY 4272",115, 0)
  23896    N OCXSUB  S OCXSUB=" " F  S OCX SUB=$O(OCX DA(OCXSUB) ,-1) Q:'OC XSUB  S OC XDA(OCXSUB +1)=OCXDA( OCXSUB)
  23897   "RTN","ORY 4272",116, 0)
  23898    S OCXDA(1 )=OCXDA,OC XDA=0
  23899   "RTN","ORY 4272",117, 0)
  23900    Q
  23901   "RTN","ORY 4272",118, 0)
  23902    ;
  23903   "RTN","ORY 4272",119, 0)
  23904   POP(OCXDA)  ;
  23905   "RTN","ORY 4272",120, 0)
  23906    N OCXSUB  S OCXSUB=" " F  S OCX SUB=$O(OCX DA(OCXSUB) ) Q:'OCXSU B  S OCXDA (OCXSUB)=$ G(OCXDA(OC XSUB+1))
  23907   "RTN","ORY 4272",121, 0)
  23908    S OCXDA=O CXDA(1) K  OCXDA($O(O CXDA(""),- 1))
  23909   "RTN","ORY 4272",122, 0)
  23910    Q
  23911   "RTN","ORY 4272",123, 0)
  23912    ;
  23913   "RTN","ORY 4272",124, 0)
  23914   APPEND(ARR AY,OCXSUB)  ;
  23915   "RTN","ORY 4272",125, 0)
  23916    S:'(OCXSU B=+OCXSUB)  OCXSUB="" ""_OCXSUB_ """"
  23917   "RTN","ORY 4272",126, 0)
  23918    Q:'(ARRAY ["(") ARRA Y_"("_OCXS UB_")"
  23919   "RTN","ORY 4272",127, 0)
  23920    Q $E(ARRA Y,1,$L(ARR AY)-1)_"," _OCXSUB_") "
  23921   "RTN","ORY 4272",128, 0)
  23922    ;
  23923   "RTN","ORY 4272",129, 0)
  23924   READ(OCXZ0 ,OCXZA,OCX ZB,OCXZL)  ;
  23925   "RTN","ORY 4272",130, 0)
  23926    N OCXLINE ,DIR,DTOUT ,DUOUT,DIR UT,DIROUT
  23927   "RTN","ORY 4272",131, 0)
  23928    Q:'$L($G( OCXZ0)) U
  23929   "RTN","ORY 4272",132, 0)
  23930    S DIR(0)= OCXZ0
  23931   "RTN","ORY 4272",133, 0)
  23932    S:$L($G(O CXZA)) DIR ("A")=OCXZ A
  23933   "RTN","ORY 4272",134, 0)
  23934    S:$L($G(O CXZB)) DIR ("B")=OCXZ B
  23935   "RTN","ORY 4272",135, 0)
  23936    F OCXLINE =1:1:($G(O CXZL)-1) W  !
  23937   "RTN","ORY 4272",136, 0)
  23938    D ^DIR
  23939   "RTN","ORY 4272",137, 0)
  23940    I $D(DTOU T)!$D(DUOU T)!$D(DIRU T)!$D(DIRO UT) Q U
  23941   "RTN","ORY 4272",138, 0)
  23942    Q Y
  23943   "RTN","ORY 4272",139, 0)
  23944    ;
  23945   "RTN","ORY 4272",140, 0)
  23946   PAUSE() W  "  Press E nter " R X :DTIME W !  Q (X[U)
  23947   "RTN","ORY 4272",141, 0)
  23948    ;
  23949   "RTN","ORY 4273")
  23950   0^4^B12998 366
  23951   "RTN","ORY 4273",1,0)
  23952   ORY4273 ;S LC/RJS,CLA  - OCX PAC KAGE RULE  TRANSPORT  ROUTINE (D elete afte r Install  of OR*3*42 7) ;MAR 7, 2017 at 15 :12
  23953   "RTN","ORY 4273",2,0)
  23954    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  23955   "RTN","ORY 4273",3,0)
  23956    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  23957   "RTN","ORY 4273",4,0)
  23958    ;
  23959   "RTN","ORY 4273",5,0)
  23960   S ;
  23961   "RTN","ORY 4273",6,0)
  23962    ;  Multip le Utiliti es
  23963   "RTN","ORY 4273",7,0)
  23964    Q
  23965   "RTN","ORY 4273",8,0)
  23966    ;
  23967   "RTN","ORY 4273",9,0)
  23968   ADDMULT(OC XCREF,OCXD D,OCXFLD)  ;
  23969   "RTN","ORY 4273",10,0 )
  23970    ;
  23971   "RTN","ORY 4273",11,0 )
  23972    ;
  23973   "RTN","ORY 4273",12,0 )
  23974    N QUIT,OC XDA,OCXGRE F,OCXNAME, DDPATH,IND EX
  23975   "RTN","ORY 4273",13,0 )
  23976    ;
  23977   "RTN","ORY 4273",14,0 )
  23978    S DDPATH= $P($P($$AP PEND($$APP END(OCXCRE F,OCXDD),O CXFLD),"(" ,2),")",1)
  23979   "RTN","ORY 4273",15,0 )
  23980    F INDEX=1 :1:$L(DDPA TH,",") S  OCXDA($L(D DPATH,",") -INDEX)=+$ P($P(DDPAT H,",",INDE X),":",2)
  23981   "RTN","ORY 4273",16,0 )
  23982    S OCXDA=$ G(OCXDA(0) ) K OCXDA( 0)
  23983   "RTN","ORY 4273",17,0 )
  23984    ;
  23985   "RTN","ORY 4273",18,0 )
  23986    Q:(OCXFLA G["D") 0
  23987   "RTN","ORY 4273",19,0 )
  23988    I (OCXFLA G["A") S Q UIT=$$READ ("Y"," Do  you want t o add a lo cal '"_$$F ILENAME^OC XSENDD(+OC XFLD)_"' m ultiple ?" ,"YES") Q: 'QUIT (QUI T[U)
  23989   "RTN","ORY 4273",20,0 )
  23990    ;
  23991   "RTN","ORY 4273",21,0 )
  23992    S OCXGREF =$$GETREF^ ORY4272(+O CXFLD,.OCX DA,1)
  23993   "RTN","ORY 4273",22,0 )
  23994    D CREATE( $$APPEND(O CXCREF,OCX DD),OCXFLD ,.OCXDA,1)
  23995   "RTN","ORY 4273",23,0 )
  23996    ;
  23997   "RTN","ORY 4273",24,0 )
  23998    Q 0
  23999   "RTN","ORY 4273",25,0 )
  24000    ;
  24001   "RTN","ORY 4273",26,0 )
  24002   DELMULT(OC XCREF,OCXD D) ;
  24003   "RTN","ORY 4273",27,0 )
  24004    ;
  24005   "RTN","ORY 4273",28,0 )
  24006    N QUIT,OC XGREF,DA,I NDEX,DDPAT H
  24007   "RTN","ORY 4273",29,0 )
  24008    ;
  24009   "RTN","ORY 4273",30,0 )
  24010    Q:(OCXFLA G["D") 0
  24011   "RTN","ORY 4273",31,0 )
  24012    I (OCXFLA G["A") S Q UIT=$$READ ("Y"," Do  you want t o delete t he local ' "_$$FILENA ME^OCXSEND D(+OCXDD)_ "' multipl e ?","YES" ) Q:'QUIT  (QUIT[U)
  24013   "RTN","ORY 4273",32,0 )
  24014    ;
  24015   "RTN","ORY 4273",33,0 )
  24016    S DDPATH= $P($P($$AP PEND(OCXCR EF,OCXDD), "(",2),")" ,1)
  24017   "RTN","ORY 4273",34,0 )
  24018    F INDEX=1 :1:$L(DDPA TH,",") S  DA($L(DDPA TH,",")-IN DEX)=+$P($ P(DDPATH," ,",INDEX), ":",2)
  24019   "RTN","ORY 4273",35,0 )
  24020    S DA=$G(D A(0)) K DA (0)
  24021   "RTN","ORY 4273",36,0 )
  24022    S OCXGREF =$$GETREF^ ORY4272(+O CXDD,.DA,1 )
  24023   "RTN","ORY 4273",37,0 )
  24024    ;
  24025   "RTN","ORY 4273",38,0 )
  24026    D DIE^ORY 4272(+OCXD D,OCXGREF, .01,"@",.D A,$L(DDPAT H,",")-1)
  24027   "RTN","ORY 4273",39,0 )
  24028    K @OCXCRE F@(OCXDD)  W !!,"  de leted..."
  24029   "RTN","ORY 4273",40,0 )
  24030    ;
  24031   "RTN","ORY 4273",41,0 )
  24032    Q 0
  24033   "RTN","ORY 4273",42,0 )
  24034    ;
  24035   "RTN","ORY 4273",43,0 )
  24036   CREATE(OCX CREF,OCXDD ,OCXDA,OCX LVL) ;
  24037   "RTN","ORY 4273",44,0 )
  24038    ;
  24039   "RTN","ORY 4273",45,0 )
  24040    N OCXFLD, OCXGREF
  24041   "RTN","ORY 4273",46,0 )
  24042    ;
  24043   "RTN","ORY 4273",47,0 )
  24044    S OCXGREF =$$GETREF^ ORY4272(+O CXDD,.OCXD A,OCXLVL)  Q:'$L(OCXG REF)  S:'O CXDA OCXDA =$O(@(OCXG REF_"""@"" )"),-1)+1
  24045   "RTN","ORY 4273",48,0 )
  24046    ;
  24047   "RTN","ORY 4273",49,0 )
  24048    I '$D(@(O CXGREF_"0) ")) S @(OC XGREF_"0)" )=U_$$FILE HDR^OCXSEN DD(+OCXDD) _U_U
  24049   "RTN","ORY 4273",50,0 )
  24050    ;
  24051   "RTN","ORY 4273",51,0 )
  24052    S OCXFLD= 0 F  S OCX FLD=$O(@OC XCREF@(OCX DD,OCXFLD) ) Q:'OCXFL D  Q:(OCXF LD[":")  I  '$$EXFLD^ ORY4271(+O CXDD,OCXFL D) D
  24053   "RTN","ORY 4273",52,0 )
  24054    .I $L($G( @OCXCREF@( OCXDD,OCXF LD,"E")))  D DIE^ORY4 272(OCXDD, OCXGREF,OC XFLD,@OCXC REF@(OCXDD ,OCXFLD,"E "),.OCXDA, OCXLVL)
  24055   "RTN","ORY 4273",53,0 )
  24056    ;
  24057   "RTN","ORY 4273",54,0 )
  24058    D PUSH(.O CXDA)
  24059   "RTN","ORY 4273",55,0 )
  24060    S OCXFLD= "" F  S OC XFLD=$O(@O CXCREF@(OC XDD,OCXFLD )) Q:'$L(O CXFLD)  I  (OCXFLD[": ") D
  24061   "RTN","ORY 4273",56,0 )
  24062    .S OCXDA= $P(OCXFLD, ":",2) W !  D CREATE( $$APPEND(O CXCREF,OCX DD),OCXFLD ,.OCXDA,OC XLVL+1)
  24063   "RTN","ORY 4273",57,0 )
  24064    D POP(.OC XDA)
  24065   "RTN","ORY 4273",58,0 )
  24066    Q
  24067   "RTN","ORY 4273",59,0 )
  24068    ;
  24069   "RTN","ORY 4273",60,0 )
  24070   PUSH(OCXDA ) ;
  24071   "RTN","ORY 4273",61,0 )
  24072    N OCXSUB  S OCXSUB=" " F  S OCX SUB=$O(OCX DA(OCXSUB) ,-1) Q:'OC XSUB  S OC XDA(OCXSUB +1)=OCXDA( OCXSUB)
  24073   "RTN","ORY 4273",62,0 )
  24074    S OCXDA(1 )=OCXDA,OC XDA=0
  24075   "RTN","ORY 4273",63,0 )
  24076    Q
  24077   "RTN","ORY 4273",64,0 )
  24078    ;
  24079   "RTN","ORY 4273",65,0 )
  24080   POP(OCXDA)  ;
  24081   "RTN","ORY 4273",66,0 )
  24082    N OCXSUB  S OCXSUB=" " F  S OCX SUB=$O(OCX DA(OCXSUB) ) Q:'OCXSU B  S OCXDA (OCXSUB)=$ G(OCXDA(OC XSUB+1))
  24083   "RTN","ORY 4273",67,0 )
  24084    S OCXDA=O CXDA(1) K  OCXDA($O(O CXDA(""),- 1))
  24085   "RTN","ORY 4273",68,0 )
  24086    Q
  24087   "RTN","ORY 4273",69,0 )
  24088    ;
  24089   "RTN","ORY 4273",70,0 )
  24090   APPEND(ARR AY,OCXSUB)  ;
  24091   "RTN","ORY 4273",71,0 )
  24092    S:'(OCXSU B=+OCXSUB)  OCXSUB="" ""_OCXSUB_ """"
  24093   "RTN","ORY 4273",72,0 )
  24094    Q:'(ARRAY ["(") ARRA Y_"("_OCXS UB_")"
  24095   "RTN","ORY 4273",73,0 )
  24096    Q $E(ARRA Y,1,$L(ARR AY)-1)_"," _OCXSUB_") "
  24097   "RTN","ORY 4273",74,0 )
  24098    ;
  24099   "RTN","ORY 4273",75,0 )
  24100   READ(OCXZ0 ,OCXZA,OCX ZB,OCXZL)  ;
  24101   "RTN","ORY 4273",76,0 )
  24102    N OCXLINE ,DIR,DTOUT ,DUOUT,DIR UT,DIROUT
  24103   "RTN","ORY 4273",77,0 )
  24104    Q:'$L($G( OCXZ0)) U
  24105   "RTN","ORY 4273",78,0 )
  24106    S DIR(0)= OCXZ0
  24107   "RTN","ORY 4273",79,0 )
  24108    S:$L($G(O CXZA)) DIR ("A")=OCXZ A
  24109   "RTN","ORY 4273",80,0 )
  24110    S:$L($G(O CXZB)) DIR ("B")=OCXZ B
  24111   "RTN","ORY 4273",81,0 )
  24112    F OCXLINE =1:1:($G(O CXZL)-1) W  !
  24113   "RTN","ORY 4273",82,0 )
  24114    D ^DIR
  24115   "RTN","ORY 4273",83,0 )
  24116    I $D(DTOU T)!$D(DUOU T)!$D(DIRU T)!$D(DIRO UT) Q U
  24117   "RTN","ORY 4273",84,0 )
  24118    Q Y
  24119   "RTN","ORY 4273",85,0 )
  24120    ;
  24121   "RTN","ORY 4273",86,0 )
  24122   PAUSE() W  "  Press E nter " R X :DTIME W !  Q (X[U)
  24123   "RTN","ORY 4273",87,0 )
  24124    ;
  24125   "RTN","ORY 4274")
  24126   0^5^B13528 386
  24127   "RTN","ORY 4274",1,0)
  24128   ORY4274 ;S LC/RJS,CLA  - OCX PAC KAGE RULE  TRANSPORT  ROUTINE (D elete afte r Install  of OR*3*42 7) ;MAR 7, 2017 at 15 :12
  24129   "RTN","ORY 4274",2,0)
  24130    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  24131   "RTN","ORY 4274",3,0)
  24132    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  24133   "RTN","ORY 4274",4,0)
  24134    ;
  24135   "RTN","ORY 4274",5,0)
  24136   S ;
  24137   "RTN","ORY 4274",6,0)
  24138    ;  Field  Utilities
  24139   "RTN","ORY 4274",7,0)
  24140    Q
  24141   "RTN","ORY 4274",8,0)
  24142    ;
  24143   "RTN","ORY 4274",9,0)
  24144   EDITFLD(OC XCREF,OCXD D,OCXFLD,O CXSUB) ;
  24145   "RTN","ORY 4274",10,0 )
  24146    ;
  24147   "RTN","ORY 4274",11,0 )
  24148    N DDPATH, OCXDA,OCXP C,OCXLVL,Q UIT
  24149   "RTN","ORY 4274",12,0 )
  24150    ;
  24151   "RTN","ORY 4274",13,0 )
  24152    S QUIT=0, DDPATH=$P( $P($$APPEN D(OCXCREF, OCXDD),"(" ,2),")",1)
  24153   "RTN","ORY 4274",14,0 )
  24154    S OCXLVL= $L(DDPATH, ",")
  24155   "RTN","ORY 4274",15,0 )
  24156    F OCXPC=1 :1:OCXLVL  S OCXDA(OC XLVL-OCXPC )=+$P($P(D DPATH,",", OCXPC),":" ,2)
  24157   "RTN","ORY 4274",16,0 )
  24158    S OCXDA=O CXDA(0) K  OCXDA(0)
  24159   "RTN","ORY 4274",17,0 )
  24160    I $L($G(@ OCXCREF@(O CXDD,OCXFL D,"E"))) D
  24161   "RTN","ORY 4274",18,0 )
  24162    .N RESP
  24163   "RTN","ORY 4274",19,0 )
  24164    .Q:(OCXFL AG["D")
  24165   "RTN","ORY 4274",20,0 )
  24166    .I (OCXFL AG["A") S  RESP=$$REA D("Y"," Do  you want  to change  the local  '"_$$FILEN AME^OCXSEN DD(+OCXDD) _"' field  ?","YES")  I 'RESP S  QUIT=(RESP [U) Q
  24167   "RTN","ORY 4274",21,0 )
  24168    .S OCXGRE F=$$GETREF ^ORY4272(+ OCXDD,.OCX DA,OCXLVL- 1) Q:'$L(O CXGREF)
  24169   "RTN","ORY 4274",22,0 )
  24170    .D DIE^OR Y4272(OCXD D,OCXGREF, OCXFLD,@OC XCREF@(OCX DD,OCXFLD, "E"),.OCXD A,OCXLVL-1 )
  24171   "RTN","ORY 4274",23,0 )
  24172    ;
  24173   "RTN","ORY 4274",24,0 )
  24174    Q QUIT
  24175   "RTN","ORY 4274",25,0 )
  24176    ;
  24177   "RTN","ORY 4274",26,0 )
  24178   DELFLD(OCX CREF,OCXDD ,OCXFLD,OC XSUB) ;
  24179   "RTN","ORY 4274",27,0 )
  24180    ;
  24181   "RTN","ORY 4274",28,0 )
  24182    N DDPATH, OCXDA,OCXP C,OCXLVL,Q UIT,RESP
  24183   "RTN","ORY 4274",29,0 )
  24184    ;
  24185   "RTN","ORY 4274",30,0 )
  24186    S QUIT=0, DDPATH=$P( $P($$APPEN D(OCXCREF, OCXDD),"(" ,2),")",1)
  24187   "RTN","ORY 4274",31,0 )
  24188    S OCXLVL= $L(DDPATH, ",")
  24189   "RTN","ORY 4274",32,0 )
  24190    F OCXPC=1 :1:OCXLVL  S OCXDA(OC XLVL-OCXPC )=+$P($P(D DPATH,",", OCXPC),":" ,2)
  24191   "RTN","ORY 4274",33,0 )
  24192    S OCXDA=O CXDA(0) K  OCXDA(0)
  24193   "RTN","ORY 4274",34,0 )
  24194    Q:(OCXFLA G["D") 0
  24195   "RTN","ORY 4274",35,0 )
  24196    I (OCXFLA G["A") S R ESP=$$READ ("Y"," Do  you want t o Delete t he local ' "_$$FILENA ME^OCXSEND D(+OCXDD)_ "' value ? ","YES") I  'RESP S Q UIT=(RESP[ U) Q QUIT
  24197   "RTN","ORY 4274",36,0 )
  24198    S OCXGREF =$$GETREF^ ORY4272(+O CXDD,.OCXD A,OCXLVL-1 ) Q:'$L(OC XGREF)
  24199   "RTN","ORY 4274",37,0 )
  24200    D DIE^ORY 4272(OCXDD ,OCXGREF,O CXFLD,"@", .OCXDA,OCX LVL-1)
  24201   "RTN","ORY 4274",38,0 )
  24202    ;
  24203   "RTN","ORY 4274",39,0 )
  24204    Q QUIT
  24205   "RTN","ORY 4274",40,0 )
  24206    ;
  24207   "RTN","ORY 4274",41,0 )
  24208   CREATE(OCX CREF,OCXDD ,OCXDA,OCX LVL) ;
  24209   "RTN","ORY 4274",42,0 )
  24210    ;
  24211   "RTN","ORY 4274",43,0 )
  24212    N OCXFLD, OCXGREF
  24213   "RTN","ORY 4274",44,0 )
  24214    ;
  24215   "RTN","ORY 4274",45,0 )
  24216    S OCXGREF =$$GETREF^ ORY4272(+O CXDD,.OCXD A,OCXLVL)  Q:'$L(OCXG REF)  S:'O CXDA OCXDA =$O(@(OCXG REF_"""@"" )"),-1)+1
  24217   "RTN","ORY 4274",46,0 )
  24218    ;
  24219   "RTN","ORY 4274",47,0 )
  24220    I '$D(@(O CXGREF_"0) ")) S @(OC XGREF_"0)" )=U_$$FILE HDR^OCXSEN DD(+OCXDD) _U_U
  24221   "RTN","ORY 4274",48,0 )
  24222    ;
  24223   "RTN","ORY 4274",49,0 )
  24224    S OCXFLD= 0 F  S OCX FLD=$O(@OC XCREF@(OCX DD,OCXFLD) ) Q:'OCXFL D  Q:(OCXF LD[":")  I  '$$EXFLD^ ORY4271(+O CXDD,OCXFL D) D
  24225   "RTN","ORY 4274",50,0 )
  24226    .I $L($G( @OCXCREF@( OCXDD,OCXF LD,"E")))  D DIE^ORY4 272(OCXDD, OCXGREF,OC XFLD,@OCXC REF@(OCXDD ,OCXFLD,"E "),.OCXDA, OCXLVL)
  24227   "RTN","ORY 4274",51,0 )
  24228    ;
  24229   "RTN","ORY 4274",52,0 )
  24230    D PUSH(.O CXDA)
  24231   "RTN","ORY 4274",53,0 )
  24232    S OCXFLD= "" F  S OC XFLD=$O(@O CXCREF@(OC XDD,OCXFLD )) Q:'$L(O CXFLD)  I  (OCXFLD[": ") D
  24233   "RTN","ORY 4274",54,0 )
  24234    .S OCXDA= $P(OCXFLD, ":",2) W !  D CREATE( $$APPEND(O CXCREF,OCX DD),OCXFLD ,.OCXDA,OC XLVL+1)
  24235   "RTN","ORY 4274",55,0 )
  24236    D POP(.OC XDA)
  24237   "RTN","ORY 4274",56,0 )
  24238    Q
  24239   "RTN","ORY 4274",57,0 )
  24240    ;
  24241   "RTN","ORY 4274",58,0 )
  24242   PUSH(OCXDA ) ;
  24243   "RTN","ORY 4274",59,0 )
  24244    N OCXSUB  S OCXSUB=" " F  S OCX SUB=$O(OCX DA(OCXSUB) ,-1) Q:'OC XSUB  S OC XDA(OCXSUB +1)=OCXDA( OCXSUB)
  24245   "RTN","ORY 4274",60,0 )
  24246    S OCXDA(1 )=OCXDA,OC XDA=0
  24247   "RTN","ORY 4274",61,0 )
  24248    Q
  24249   "RTN","ORY 4274",62,0 )
  24250    ;
  24251   "RTN","ORY 4274",63,0 )
  24252   POP(OCXDA)  ;
  24253   "RTN","ORY 4274",64,0 )
  24254    N OCXSUB  S OCXSUB=" " F  S OCX SUB=$O(OCX DA(OCXSUB) ) Q:'OCXSU B  S OCXDA (OCXSUB)=$ G(OCXDA(OC XSUB+1))
  24255   "RTN","ORY 4274",65,0 )
  24256    S OCXDA=O CXDA(1) K  OCXDA($O(O CXDA(""),- 1))
  24257   "RTN","ORY 4274",66,0 )
  24258    Q
  24259   "RTN","ORY 4274",67,0 )
  24260    ;
  24261   "RTN","ORY 4274",68,0 )
  24262   APPEND(ARR AY,OCXSUB)  ;
  24263   "RTN","ORY 4274",69,0 )
  24264    S:'(OCXSU B=+OCXSUB)  OCXSUB="" ""_OCXSUB_ """"
  24265   "RTN","ORY 4274",70,0 )
  24266    Q:'(ARRAY ["(") ARRA Y_"("_OCXS UB_")"
  24267   "RTN","ORY 4274",71,0 )
  24268    Q $E(ARRA Y,1,$L(ARR AY)-1)_"," _OCXSUB_") "
  24269   "RTN","ORY 4274",72,0 )
  24270    ;
  24271   "RTN","ORY 4274",73,0 )
  24272   READ(OCXZ0 ,OCXZA,OCX ZB,OCXZL)  ;
  24273   "RTN","ORY 4274",74,0 )
  24274    N OCXLINE ,DIR,DTOUT ,DUOUT,DIR UT,DIROUT
  24275   "RTN","ORY 4274",75,0 )
  24276    Q:'$L($G( OCXZ0)) U
  24277   "RTN","ORY 4274",76,0 )
  24278    S DIR(0)= OCXZ0
  24279   "RTN","ORY 4274",77,0 )
  24280    S:$L($G(O CXZA)) DIR ("A")=OCXZ A
  24281   "RTN","ORY 4274",78,0 )
  24282    S:$L($G(O CXZB)) DIR ("B")=OCXZ B
  24283   "RTN","ORY 4274",79,0 )
  24284    F OCXLINE =1:1:($G(O CXZL)-1) W  !
  24285   "RTN","ORY 4274",80,0 )
  24286    D ^DIR
  24287   "RTN","ORY 4274",81,0 )
  24288    I $D(DTOU T)!$D(DUOU T)!$D(DIRU T)!$D(DIRO UT) Q U
  24289   "RTN","ORY 4274",82,0 )
  24290    Q Y
  24291   "RTN","ORY 4274",83,0 )
  24292    ;
  24293   "RTN","ORY 4274",84,0 )
  24294   PAUSE() W  "  Press E nter " R X :DTIME W !  Q (X[U)
  24295   "RTN","ORY 4274",85,0 )
  24296    ;
  24297   "RTN","ORY 427ES")
  24298   0^14^B1259 6610
  24299   "RTN","ORY 427ES",1,0 )
  24300   ORY427ES ; SLC/RJS,CL A - OCX PA CKAGE RULE  TRANSPORT  ROUTINE ( Delete aft er Install  of OR*3*4 27) ;MAR 7 ,2017 at 1 5:12
  24301   "RTN","ORY 427ES",2,0 )
  24302    ;;3.0;ORD ER ENTRY/R ESULTS REP ORTING;**4 27**;Dec 1 7,1997;Bui ld 61
  24303   "RTN","ORY 427ES",3,0 )
  24304    ;;  ;;ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998
  24305   "RTN","ORY 427ES",4,0 )
  24306    ;
  24307   "RTN","ORY 427ES",5,0 )
  24308   S ;
  24309   "RTN","ORY 427ES",6,0 )
  24310    ;
  24311   "RTN","ORY 427ES",7,0 )
  24312    N OCXDIER ,QUIT,LINE ,TEXT,REMO TE,LOCAL,D 0,OPCODE,R EF,OCXFLAG  S QUIT=0
  24313   "RTN","ORY 427ES",8,0 )
  24314    N OCXAUTO ,OCZSCR
  24315   "RTN","ORY 427ES",9,0 )
  24316    ;
  24317   "RTN","ORY 427ES",10, 0)
  24318    D DOT
  24319   "RTN","ORY 427ES",11, 0)
  24320    I $L($T(V ERSION^OCX OCMP)),($$ VERSION^OC XOCMP="ORD ER CHECK E XPERT vers ion 1.01 r eleased OC T 29,1998" ),1
  24321   "RTN","ORY 427ES",12, 0)
  24322    E  D  Q
  24323   "RTN","ORY 427ES",13, 0)
  24324    .W !
  24325   "RTN","ORY 427ES",14, 0)
  24326    .W !,"Rul e Transpor t aborted,  version m ismatch."
  24327   "RTN","ORY 427ES",15, 0)
  24328    .W !,"Cur rent Local  version:  ",$$VERSIO N^OCXOCMP
  24329   "RTN","ORY 427ES",16, 0)
  24330    .W !,"    Rule Trans port Versi on: ORDER  CHECK EXPE RT version  1.01 rele ased OCT 2 9,1998"
  24331   "RTN","ORY 427ES",17, 0)
  24332    I '$D(DTI ME) W !!," DTIME not  defined !! ",!! Q
  24333   "RTN","ORY 427ES",18, 0)
  24334    W !!,"Ord er Check E xpert Syst em Rule Tr ansporter"
  24335   "RTN","ORY 427ES",19, 0)
  24336    W !," Cre ated: MAR  7,2017 at  15:12    at    D N S . URL
  24337   "RTN","ORY 427ES",20, 0)
  24338    W !," Cur rent Date:  ",$$NOW^O RY4270,"   at  ",$$NE TNAME^OCXS END,!!
  24339   "RTN","ORY 427ES",21, 0)
  24340    S LASTFIL E=0 K ^TMP ("OCXRULE" ,$J)
  24341   "RTN","ORY 427ES",22, 0)
  24342    S ^TMP("O CXRULE",$J )=($P($H," ,",2)+($H* 86400)+(1* 60*60))_"  <- ^TMP EN TRY EXPIRA TION DATE  FOR ^OCXOP URG"
  24343   "RTN","ORY 427ES",23, 0)
  24344    S OCXFLAG ="O"
  24345   "RTN","ORY 427ES",24, 0)
  24346    ;
  24347   "RTN","ORY 427ES",25, 0)
  24348   RUN ;
  24349   "RTN","ORY 427ES",26, 0)
  24350    ;
  24351   "RTN","ORY 427ES",27, 0)
  24352    W !,"Load ing Data "  D ^ORY427 01
  24353   "RTN","ORY 427ES",28, 0)
  24354    ;
  24355   "RTN","ORY 427ES",29, 0)
  24356    S LINE=0  F  S LINE= $O(^TMP("O CXRULE",$J ,LINE)) Q: 'LINE   D   Q:QUIT
  24357   "RTN","ORY 427ES",30, 0)
  24358    .D:'(LINE #50) STATU S^OCXOPOST (LINE,$O(^ TMP("OCXRU LE",$J," " ),-1))
  24359   "RTN","ORY 427ES",31, 0)
  24360    .S TEXT=$ G(^TMP("OC XRULE",$J, LINE)) I $ L(TEXT) D   Q:QUIT
  24361   "RTN","ORY 427ES",32, 0)
  24362    ..S TEXT= $P(TEXT,"; ",2,999),O PCODE=$P(T EXT,U,1),T EXT=$P(TEX T,U,2,999)
  24363   "RTN","ORY 427ES",33, 0)
  24364    ..;
  24365   "RTN","ORY 427ES",34, 0)
  24366    ..I OPCOD E="KEY" D  DOT S LOCA L="",D0=$$ GETFILE^OR Y4270(+$P( TEXT,U,1), $P(TEXT,U, 2),.LOCAL)  S QUIT=(D 0=(-10)) Q
  24367   "RTN","ORY 427ES",35, 0)
  24368    ..I OPCOD E="R" S RE F="REMOTE( "_$P(TEXT, ":",1)_":" _D0_$P(TEX T,":",2,99 )_")" Q
  24369   "RTN","ORY 427ES",36, 0)
  24370    ..I OPCOD E="D",$D(R EF) S @REF =$P(TEXT,U ,1,999) K  REF Q
  24371   "RTN","ORY 427ES",37, 0)
  24372    ..;
  24373   "RTN","ORY 427ES",38, 0)
  24374    ..I OPCOD E="EOR" S  QUIT=$$COM PARE^ORY42 71(.LOCAL, .REMOTE) K  LOCAL,REM OTE Q
  24375   "RTN","ORY 427ES",39, 0)
  24376    ..I OPCOD E="EOF" K  LOCAL,REMO TE Q
  24377   "RTN","ORY 427ES",40, 0)
  24378    ..I OPCOD E="SOF" W  !,"  Insta lling '",T EXT,"' rec ords... "  Q
  24379   "RTN","ORY 427ES",41, 0)
  24380    ..I OPCOD E="ROOT" D   Q
  24381   "RTN","ORY 427ES",42, 0)
  24382    ...N FILE ,DATA
  24383   "RTN","ORY 427ES",43, 0)
  24384    ...S FILE =U_$P(TEXT ,U,1),DATA =$P(TEXT,U ,2,3)
  24385   "RTN","ORY 427ES",44, 0)
  24386    ...I ($P( $G(@FILE), U,1,2)=DAT A) Q
  24387   "RTN","ORY 427ES",45, 0)
  24388    ...S $P(@ FILE,U,1,2 )=DATA
  24389   "RTN","ORY 427ES",46, 0)
  24390    ...W !,"   Restoring  file #",( +$P(DATA,U ,2))," zer o node"
  24391   "RTN","ORY 427ES",47, 0)
  24392    ..;
  24393   "RTN","ORY 427ES",48, 0)
  24394    ..W !,"Un known OpCo de: ",OPCO DE,"  in:  ",TEXT S Q UIT=$$PAUS E^ORY4270  W !
  24395   "RTN","ORY 427ES",49, 0)
  24396    ;
  24397   "RTN","ORY 427ES",50, 0)
  24398    K ^TMP("O CXRULE",$J )
  24399   "RTN","ORY 427ES",51, 0)
  24400    ;
  24401   "RTN","ORY 427ES",52, 0)
  24402    I $D(^OCX S) D
  24403   "RTN","ORY 427ES",53, 0)
  24404    .N FILE,D O,PD0,CNT
  24405   "RTN","ORY 427ES",54, 0)
  24406    .S FILE=0  F  S FILE =$O(^OCXS( FILE)) Q:' FILE  D
  24407   "RTN","ORY 427ES",55, 0)
  24408    ..S D0=0  F CNT=0:1  S PD0=D0,D 0=$O(^OCXS (FILE,D0))  Q:'D0
  24409   "RTN","ORY 427ES",56, 0)
  24410    ..S $P(^O CXS(FILE,0 ),U,3,4)=C NT_U_PD0
  24411   "RTN","ORY 427ES",57, 0)
  24412    ;
  24413   "RTN","ORY 427ES",58, 0)
  24414    I $G(OCXD IER) D
  24415   "RTN","ORY 427ES",59, 0)
  24416    .W !!!!!! !
  24417   "RTN","ORY 427ES",60, 0)
  24418    .W !,?5," ********** **********  Warning * ********** *********  "
  24419   "RTN","ORY 427ES",61, 0)
  24420    .W !,?7,+ $G(OCXDIER )," data f iling erro r",$S(($G( OCXDIER)=1 ):"",1:"s" ),"."
  24421   "RTN","ORY 427ES",62, 0)
  24422    .W !,?7," Some exper t system r ules may b e incomple te."
  24423   "RTN","ORY 427ES",63, 0)
  24424    .W !,?5," ********** **********  Warning * ********** *********  "
  24425   "RTN","ORY 427ES",64, 0)
  24426    I '$G(OCX DIER) W !! ,?5," No d ata filing  errors."
  24427   "RTN","ORY 427ES",65, 0)
  24428    W !!,"Tra nsport Fin ished..."
  24429   "RTN","ORY 427ES",66, 0)
  24430    ;
  24431   "RTN","ORY 427ES",67, 0)
  24432    D
  24433   "RTN","ORY 427ES",68, 0)
  24434    .N OCXOET IM
  24435   "RTN","ORY 427ES",69, 0)
  24436    .D BMES^X PDUTL("--- Creating O rder Check  Routines- ---------- ---------- ---------- ----")
  24437   "RTN","ORY 427ES",70, 0)
  24438    .D AUTO^O CXOCMP
  24439   "RTN","ORY 427ES",71, 0)
  24440    ;
  24441   "RTN","ORY 427ES",72, 0)
  24442    Q
  24443   "RTN","ORY 427ES",73, 0)
  24444    ;
  24445   "RTN","ORY 427ES",74, 0)
  24446   DOT Q:$G(O CXAUTO)  W :($X>70) !  W " ." Q
  24447   "RTN","ORY 427ES",75, 0)
  24448    ;
  24449   "RTN","ORY 427ES",76, 0)
  24450   READ(OCXZ0 ,OCXZA,OCX ZB,OCXZL)  ;
  24451   "RTN","ORY 427ES",77, 0)
  24452    N OCXLINE ,DIR,DTOUT ,DUOUT,DIR UT,DIROUT
  24453   "RTN","ORY 427ES",78, 0)
  24454    Q:'$L($G( OCXZ0)) U
  24455   "RTN","ORY 427ES",79, 0)
  24456    S DIR(0)= OCXZ0
  24457   "RTN","ORY 427ES",80, 0)
  24458    S:$L($G(O CXZA)) DIR ("A")=OCXZ A
  24459   "RTN","ORY 427ES",81, 0)
  24460    S:$L($G(O CXZB)) DIR ("B")=OCXZ B
  24461   "RTN","ORY 427ES",82, 0)
  24462    F OCXLINE =1:1:($G(O CXZL)-1) W  !
  24463   "RTN","ORY 427ES",83, 0)
  24464    D ^DIR
  24465   "RTN","ORY 427ES",84, 0)
  24466    I $D(DTOU T)!$D(DUOU T)!$D(DIRU T)!$D(DIRO UT) Q U
  24467   "RTN","ORY 427ES",85, 0)
  24468    Q Y
  24469   "RTN","ORY 427ES",86, 0)
  24470    ;
  24471   "VER")
  24472   8.0^22.2
  24473   **END**
  24474   **END**