1 | PSOTPCL ;BIRM/PDW-EDIT TPC INSTITUTION LETTERS
|
---|
2 | ;;7.0;OUTPATIENT PHARMACY;**145,227**;DEC 1997
|
---|
3 | Q
|
---|
4 | EDIT ; Manual edit of institution letter information in 52.92
|
---|
5 | Q ;placed out of order by patch PSO*7*227
|
---|
6 | W @IOF
|
---|
7 | W !," Transitional Pharmacy Care"
|
---|
8 | W !," Edit Institution Letter Information"
|
---|
9 | EDIT2 W !!,"(You may add a NEW Institution at this point.)",!
|
---|
10 | D PSTINT
|
---|
11 | K DIC,DA
|
---|
12 | S DIC=52.92,DIC(0)="AEQML",DIC("W")="W ?40,$$GET1^DIQ(52.92,+Y,.02) W:$$CHKINST^PSOTPCL(+Y) ?69,"" Incomp""",DIC("A")="Select/Add TPB INSTITUTION: ",DLAYGO=52.92
|
---|
13 | D ^DIC K DLAYGO
|
---|
14 | G:Y'>0 EXIT
|
---|
15 | S DA=+Y,DR="[INSTITUTION EDIT]",DDSFILE=52.92
|
---|
16 | D ^DDS
|
---|
17 | G EDIT2
|
---|
18 | ;
|
---|
19 | EXIT K DIC,DIE,DR,DDSFILE
|
---|
20 | W @IOF
|
---|
21 | Q
|
---|
22 | PSTINT ;Take institution entries from 52.91 & stuff into 52.92
|
---|
23 | S LOCDA=0 F S LOCDA=$O(^PS(52.91,"AC",LOCDA)) Q:LOCDA'>0 D LOCDA
|
---|
24 | Q
|
---|
25 | LOCDA ;Get physical and mailing address
|
---|
26 | I $D(^PS(52.92,LOCDA,0)) Q
|
---|
27 | N FAC,FDA
|
---|
28 | ; set FAC(FLD#)=(INTvalue of FLD#); ex: FAC(.01)=500 :"Birmingham VAMC"
|
---|
29 | ;
|
---|
30 | F XX=.01,.02,1.01,1.02,1.03,1.04 S FAC(XX)=$$GET1^DIQ(4,LOCDA,XX,"I")
|
---|
31 | F XX=4.01,4.02,4.03,4.04,4.05 S FAC(XX)=$$GET1^DIQ(4,LOCDA,XX,"I")
|
---|
32 | ;
|
---|
33 | ; build/map fields from iNSTITUTION file to TPB INSTITUTION LETTER
|
---|
34 | ; file into FDA
|
---|
35 | ; "XFDL^YFLD," stuff XFLD of file 52.92 with YFLD of file 4
|
---|
36 | ;
|
---|
37 | F XX=".01^.01",".05^1.01",".06^1.02",".07^1.03",".08^1.04",".09^.02","1.01^4.01","1.02^4.02","1.03^4.03","1.04^4.04","1.05^4.05" D
|
---|
38 | . S XFLD=+XX,YFLD=$P(XX,U,2)
|
---|
39 | . S FDA(52.92,"+1,",XFLD)=FAC(YFLD)
|
---|
40 | S FDA(52.92,"+1,",.01)=LOCDA,LOCDA(1)=LOCDA
|
---|
41 | D UPDATE^DIE("","FDA","LOCDA","MSG")
|
---|
42 | Q
|
---|
43 | SEL ;Select divisions
|
---|
44 | ; returns arrays
|
---|
45 | ; for testing
|
---|
46 | W !!,"SELECTION OF INSTITUTION(S)",!
|
---|
47 | K DIVNM,DIVDA,DIVX
|
---|
48 | S DIVDA=0 F I=1:1 S DIVDA=$O(^PS(52.92,"B",DIVDA)) Q:DIVDA'>0 D
|
---|
49 | . Q:$$CHKINST(DIVDA) ; only completed institutions
|
---|
50 | . S DIV=$$GET1^DIQ(52.92,DIVDA,.01) S INST(DIVDA)=DIV
|
---|
51 | K DIR S DIR(0)="S^A:ALL INSTITUTIONS;S:SELECT INSTITUTIONS"
|
---|
52 | D ^DIR K DIR
|
---|
53 | G:Y="A" ALL
|
---|
54 | G:Y="S" SELECT
|
---|
55 | K INST
|
---|
56 | Q
|
---|
57 | SELECT ; select range of divisioins
|
---|
58 | K INST,DIC
|
---|
59 | S DIC="^PS(52.92,",DIC(0)="AEQM"
|
---|
60 | F S DIC("W")="W ?40,$E($$GET1^DIQ(52.92,+Y,.02),1,18) I $$CHKINST^PSOTPCL(+Y) W ?60,""Incomplete""" D ^DIC Q:Y'>0 D
|
---|
61 | . I $$CHKINST(+Y) W !,"Sorry, data for that institution is incomplete",! Q
|
---|
62 | . S INST(+Y)=$$GET1^DIQ(52.92,+Y,.01)
|
---|
63 | ALL K PSOSTOP
|
---|
64 | I '$D(INST) S INST="" W !,"None Selected - Quitting",! H 3 Q
|
---|
65 | W !!,"You have selected:",! S DIV=0 F II=1:1 D:'(II#18) PG Q:$G(PSOSTOP) S DIV=$O(INST(DIV)) Q:'DIV W !,?5,INST(DIV)
|
---|
66 | S DIR(0)="Y",DIR("A")="Is this correct ",DIR("B")="YES" D ^DIR
|
---|
67 | K DIR
|
---|
68 | Q:Y
|
---|
69 | G SEL
|
---|
70 | ;
|
---|
71 | PG K DIR S DIR(0)="E",DIR("A")="CR - CONTINUE ^ - Quit" D ^DIR
|
---|
72 | S:X["^" PSOSTOP=1
|
---|
73 | Q
|
---|
74 | INSTCHK() ; check required fields of INST in the array INST(INSTDA)
|
---|
75 | N FAC S FAC=0
|
---|
76 | S INSTDA=0 F S INSTDA=$O(INST(INSTDA)) Q:INSTDA'>0 S XX=$$CHKINST(INSTDA) I $L(XX) W !,"Sorry, required field(s) are missing from ",INST(INSTDA) S FAC=1
|
---|
77 | I $G(FAC) D
|
---|
78 | . W !,"= = = = ="
|
---|
79 | . W !!,"The above institution(s) will need to have their letter information edited",!,"before the letters for that facility can be printed",!
|
---|
80 | . K DIR S DIR(0)="EO" D ^DIR K DIR
|
---|
81 | . I X["^" S PSOSTOP=1
|
---|
82 | Q FAC
|
---|
83 | ;
|
---|
84 | CHKINST(INSTDA) ; check institution in 52.92 for required edited fields
|
---|
85 | N XX,FAC,PAR S FAC=""
|
---|
86 | ; see if parent, parent checks OK
|
---|
87 | S PAR=$$GET1^DIQ(52.92,INSTDA,.02,"I") I PAR S XX=$$CHKINST(PAR) Q XX
|
---|
88 | F YY=.05,.07,.08,2.01 S XX=$$GET1^DIQ(52.92,INSTDA,YY) I $L(XX)=0 S FAC=FAC_YY_","
|
---|
89 | Q FAC
|
---|
90 | PTCHK() ; Check file 52.91 for INST fields and 52.92 for INSTUTITONs present
|
---|
91 | N INST,CHK,INSTDA S INSTDA=0,CHK=0
|
---|
92 | F S INSTDA=$O(^PS(52.91,"AC",INSTDA)) Q:INSTDA'>0 D
|
---|
93 | . I $D(^PS(52.92,INSTDA)) Q
|
---|
94 | . S CHK=1
|
---|
95 | . W !!,$$GET1^DIQ(4,INSTDA,.01),!," is missing from the TRANSITIONAL RX INSTITUTION LETTERS file #52.92",!,"and is being added."
|
---|
96 | . S LOCDA=INSTDA N INST,FAC D LOCDA ; add INSTDA to # 52.92
|
---|
97 | I CHK D
|
---|
98 | . W !,"= = = = ="
|
---|
99 | . W !!,"The above institution(s) will need to have their letter information edited",!,"before the letters for that facility can be printed",!
|
---|
100 | . K DIR S DIR(0)="EO",DIR("A")="<cr> - Continue" D ^DIR K DIR
|
---|
101 | Q CHK
|
---|