1 | IBDF14A ;ALB/CJM - AICS LIST CLINIC SETUP ; JUL 20,1993
|
---|
2 | ;;3.0;AUTOMATED INFO COLLECTION SYS;**25**;APR 24, 1997
|
---|
3 | ;
|
---|
4 | % ; -- entry point from ibdf14
|
---|
5 | I '$D(VAUTD) G ^IBDF14
|
---|
6 | D CLINICS,PRINT
|
---|
7 | Q
|
---|
8 | ;
|
---|
9 | CLINICS ; -- get a list of clinics with setups defined
|
---|
10 | S CNT=0
|
---|
11 | S CLINIC="" F S CLINIC=$O(^SD(409.95,"B",CLINIC)) Q:'CLINIC D
|
---|
12 | .S SETUP=$O(^SD(409.95,"B",CLINIC,""))
|
---|
13 | .S NAME=$P($G(^SC(CLINIC,0)),"^")
|
---|
14 | .S DIVIS=$P($G(^SC(CLINIC,0)),"^",15)
|
---|
15 | .I DIVIS="" S DIVIS=$S(MULTI=0:$$PRIM^VASITE,MULTI=1:"Unknown",1:1)
|
---|
16 | .I 'VAUTD,'$D(VAUTD(DIVIS)) Q ;if not all divisions or select div.
|
---|
17 | .S:+DIVIS DIVIS=$P($G(^DG(40.8,+DIVIS,0)),"^")
|
---|
18 | .I DIVIS="" S DIVIS="Unknown"
|
---|
19 | .S:NAME]"" ^TMP($J,"IBCS",DIVIS,NAME)=CLINIC_"^"_SETUP,CNT(DIVIS)=$G(CNT(DIVIS))+1
|
---|
20 | Q
|
---|
21 | ;
|
---|
22 | PRINT ; -- Main print driver for output
|
---|
23 | W:$E(IOST,1,2)="C-" @IOF
|
---|
24 | S NEWDIV=0
|
---|
25 | S DIVIS="" F S DIVIS=$O(^TMP($J,"IBCS",DIVIS)) Q:DIVIS=""!IBQUIT S NEWDIV=1 D
|
---|
26 | .S NAME="" F S NAME=$O(^TMP($J,"IBCS",DIVIS,NAME)) Q:NAME=""!IBQUIT S CLINIC=+^(NAME),SETUP=$P(^(NAME),"^",2) D Q:IBQUIT
|
---|
27 | ..Q:'SETUP
|
---|
28 | ..I $G(NEWDIV) D HEADER Q:IBQUIT W !?9,"Division: ",DIVIS,! S NEWDIV=0
|
---|
29 | ..I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
30 | ..W !,"Clinic: ",NAME I '$$ACLN^IBDFCNOF(CLINIC) W " (Clinic Currently Inactive)"
|
---|
31 | ..D FORMS Q:IBQUIT
|
---|
32 | ..D REPORTS Q:IBQUIT
|
---|
33 | ..D EXCLUDE Q:IBQUIT
|
---|
34 | ..W !
|
---|
35 | .I 'VAUTD,$G(CNT(DIVIS))<1 D HEADER W !,"No clinics found for division '",DIVIS,"'",!
|
---|
36 | I $E(IOST,1,2)="C-",'IBQUIT D PAUSE
|
---|
37 | Q
|
---|
38 | ;
|
---|
39 | FORMS ; -- prints the clinic's encounter forms to the report
|
---|
40 | S NODE=$G(^SD(409.95,SETUP,0))
|
---|
41 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
42 | S FORM=$P(NODE,"^",2) I FORM W !,?5,"BASIC DEFAULT FORM: ..........................",$P($G(^IBE(357,FORM,0)),"^")
|
---|
43 | S FORM=$P(NODE,"^",5) I FORM W !,?5,"FORM WITH NO PRE-PRINTED PATIENT DATA: .......",$P($G(^IBE(357,FORM,0)),"^")
|
---|
44 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
45 | S FORM=$P(NODE,"^",3) I FORM W !,?5,"SUPPLEMENTAL FORM - PATIENT WITH PRIOR VISITS: ",$P($G(^IBE(357,FORM,0)),"^")
|
---|
46 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
47 | S FORM=$P(NODE,"^",4) I FORM W !,?5,"SUPPLEMENTAL FORM - FIRST TIME PATIENT: ......",$P($G(^IBE(357,FORM,0)),"^")
|
---|
48 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
49 | S FORM=$P(NODE,"^",6) I FORM W !,?5,"SUPPLEMENTAL FORM - ALL PATIENTS: ............",$P($G(^IBE(357,FORM,0)),"^")
|
---|
50 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
51 | S FORM=$P(NODE,"^",8) I FORM W !,?5,"SUPPLEMENTAL FORM - ALL PATIENTS: ............",$P($G(^IBE(357,FORM,0)),"^")
|
---|
52 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
53 | S FORM=$P(NODE,"^",9) I FORM W !,?5,"SUPPLEMENTAL FORM - ALL PATIENTS: ............",$P($G(^IBE(357,FORM,0)),"^")
|
---|
54 | I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
55 | S FORM=$P(NODE,"^",7) I FORM W !,?5,"RESERVED FOR FUTURE USE: .....................",$P($G(^IBE(357,FORM,0)),"^")
|
---|
56 | Q
|
---|
57 | ;
|
---|
58 | REPORTS ; -- prints the clinic's reports
|
---|
59 | Q:'$O(^SD(409.95,SETUP,1,0))
|
---|
60 | I ($Y>(IOSL-5)) D HEADER Q:IBQUIT
|
---|
61 | W !!,?5,"REPORTS",?50,"PRINT CONDITION",!,?5,"=======",?50,"==============="
|
---|
62 | S REPORT=0 F S REPORT=$O(^SD(409.95,SETUP,1,REPORT)) Q:'REPORT D Q:IBQUIT
|
---|
63 | .I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
64 | .S NODE=$G(^SD(409.95,SETUP,1,REPORT,0))
|
---|
65 | .S INTRFACE=$P(NODE,"^"),COND=$P(NODE,"^",2)
|
---|
66 | .I INTRFACE,COND S INTRFACE=$P($G(^IBE(357.6,INTRFACE,0)),"^"),COND=$P($G(^IBE(357.92,COND,0)),"^") W:INTRFACE]"" !,?5,INTRFACE,?50,COND
|
---|
67 | Q
|
---|
68 | ;
|
---|
69 | EXCLUDE ; -- prints the division reports excluded from clinic
|
---|
70 | Q:'$O(^SD(409.95,SETUP,2,0))
|
---|
71 | I ($Y>(IOSL-5)) D HEADER Q:IBQUIT
|
---|
72 | W !!,?5,"EXCLUDED REPORTS",!,?5,"================"
|
---|
73 | S REPORT=0 F S REPORT=$O(^SD(409.95,SETUP,2,REPORT)) Q:'REPORT D Q:IBQUIT
|
---|
74 | .I ($Y>(IOSL-3)) D HEADER Q:IBQUIT
|
---|
75 | .S NODE=$G(^SD(409.95,SETUP,2,REPORT,0))
|
---|
76 | .S INTRFACE=$P(NODE,"^")
|
---|
77 | .I INTRFACE S INTRFACE=$P($G(^IBE(357.6,INTRFACE,0)),"^") W:INTRFACE]"" !,?5,INTRFACE
|
---|
78 | Q
|
---|
79 | ;
|
---|
80 | HEADER ; -- writes the report header
|
---|
81 | I $E(IOST,1,2)="C-",$Y>1,PAGE>1 D PAUSE Q:IBQUIT
|
---|
82 | I PAGE>1 W @IOF
|
---|
83 | W !,"AICS Print Manager Clinic Setup Report",?IOM-32,IBHDT," PAGE ",PAGE
|
---|
84 | W !,"For Division: ",DIVIS
|
---|
85 | W !,$TR($J(" ",IOM)," ","-")
|
---|
86 | S PAGE=PAGE+1
|
---|
87 | Q
|
---|
88 | ;
|
---|
89 | PAUSE ; -- hold screen
|
---|
90 | N DIR,X,Y
|
---|
91 | F Q:$Y>(IOSL-2) W !
|
---|
92 | S DIR(0)="E" D ^DIR S IBQUIT=$S(+Y:0,1:1)
|
---|
93 | Q
|
---|