1 | TIU199 ;BP/JML - TIU Alert Fix Tool ; 7/6/05 4:06pm
|
---|
2 | ;;1.0;TEXT INTEGRATION UTILITIES;**199**;Jun 20, 1997
|
---|
3 | ;
|
---|
4 | Q
|
---|
5 | TRIGGER ; trigger code for the .05 field of file 8925.7
|
---|
6 | ; note - do not "NEW" DA or X as these are passed in from FileMan
|
---|
7 | N TIU0,TIUSET,TIUDOC,TIUEXP,FDA
|
---|
8 | S TIUEXP=$P($G(^TIU(8925.7,DA,0)),"^",3),TIUSET=0
|
---|
9 | I $$ISSURFOR^TIUADSIG(X,TIUEXP) S TIUSET=1
|
---|
10 | S FDA(8925.7,DA_",",.09)=TIUSET
|
---|
11 | D FILE^DIE("","FDA","TIUERR")
|
---|
12 | Q
|
---|
13 | ;
|
---|
14 | EN ; MAIN DRIVER
|
---|
15 | N DIC,TIUPERS,TIUDTS,TIUCSTAT,TIUQ,DTOUT,DUOUT,Y,TIUNAME
|
---|
16 | D CLEAR^VALM1
|
---|
17 | S DIC="^VA(200,",DIC(0)="AEMQ"
|
---|
18 | S DIC("A")="Select ADDITIONAL SIGNER: "
|
---|
19 | D ^DIC S TIUPERS=+Y,TIUNAME=$P(Y,"^",2)
|
---|
20 | Q:$G(DTOUT)!($G(DUOUT))!(Y=-1)
|
---|
21 | D DTRANGE^TIUADCL(.TIUDTS)
|
---|
22 | Q:'$G(TIUDTS("BEGDT"))!('$G(TIUDTS("ENDDT")))
|
---|
23 | S TIUCSTAT=$O(^TIU(8925.6,"B","COMPLETED",""))
|
---|
24 | D GATHER
|
---|
25 | S TIUQ=0
|
---|
26 | LOOP ;
|
---|
27 | I '$D(^TMP($J)) S TIUQ=$$NODATA()
|
---|
28 | I $D(^TMP($J)) D
|
---|
29 | .D PRINT
|
---|
30 | .S TIUQ=$$PROMPT()
|
---|
31 | ; TIUQ: 0=LOOP ON EXISTING BUILD, 2=CREATE NEW SEARCH/BUILD, 1=QUIT ENTIRELY
|
---|
32 | I TIUQ=0 G LOOP
|
---|
33 | I TIUQ=2 G EN
|
---|
34 | K ^TMP($J)
|
---|
35 | Q
|
---|
36 | ;
|
---|
37 | GATHER ; COLLECT DATA BASED ON SEARCH CRITERIA
|
---|
38 | N TIUNOTE,TIUCNT,TIUADD,TIUAIEN,TIUA0,TIU0,TIUSTAT,TIU13,TIURFDT,TIUDTYP,TIUDFN,TIUPAT
|
---|
39 | K ^TMP($J)
|
---|
40 | S TIUNOTE="",TIUCNT=1
|
---|
41 | F S TIUNOTE=$O(^TIU(8925.7,"AE",TIUNOTE)) Q:TIUNOTE="" D
|
---|
42 | .S TIUADD=""
|
---|
43 | .F S TIUADD=$O(^TIU(8925.7,"AE",TIUNOTE,TIUADD)) Q:TIUADD="" D
|
---|
44 | ..Q:TIUPERS'=TIUADD
|
---|
45 | ..S TIUAIEN=""
|
---|
46 | ..F S TIUAIEN=$O(^TIU(8925.7,"AE",TIUNOTE,TIUADD,TIUAIEN)) Q:TIUAIEN="" D
|
---|
47 | ...S TIUA0=$G(^TIU(8925.7,TIUAIEN,0))
|
---|
48 | ...Q:$P(TIUA0,"^",5)="" ; QUIT IF NOT SIGNED AT ALL
|
---|
49 | ...Q:$P(TIUA0,"^",3)=$P(TIUA0,"^",5) ; QUIT IF EXPECTED AND ACTUAL ARE SAME
|
---|
50 | ...Q:+$P(TIUA0,"^",9)=1 ; QUIT IF ALRADY MARKED AS 'SIGNED BY SURROGATE'
|
---|
51 | ...S TIU0=$G(^TIU(8925,TIUNOTE,0))
|
---|
52 | ...S TIUSTAT=$P(TIU0,"^",5)
|
---|
53 | ...Q:TIUSTAT'=TIUCSTAT ; QUIT IF NOT IN COMPLETED STATUS
|
---|
54 | ...S TIU13=$G(^TIU(8925,TIUNOTE,13))
|
---|
55 | ...S TIURFDT=$P($P(TIU13,"^"),".")
|
---|
56 | ...Q:TIURFDT<TIUDTS("BEGDT")!(TIURFDT>TIUDTS("ENDDT")) ; QUIT IF NOT IN DT RANGE
|
---|
57 | ...S TIUDTYP=$P(TIU0,"^"),TIUDFN=$P(TIU0,"^",2)
|
---|
58 | ...S TIUPAT=$$GETPAT(TIUDFN)
|
---|
59 | ...S ^TMP($J,TIUCNT)=TIUAIEN_"^"_TIUPAT_"^"_TIUDTYP_"^"_TIURFDT
|
---|
60 | ...S TIUCNT=TIUCNT+1
|
---|
61 | Q
|
---|
62 | ;
|
---|
63 | PRINT ;
|
---|
64 | N TIUCNT,TIUDATA,TIUTYP,TIURFDT
|
---|
65 | D HEAD
|
---|
66 | S TIUCNT=""
|
---|
67 | F S TIUCNT=$O(^TMP($J,TIUCNT)) Q:TIUCNT="" D
|
---|
68 | .S TIUDATA=^TMP($J,TIUCNT)
|
---|
69 | .S TIUTYP=$P($G(^TIU(8925.1,$P(TIUDATA,"^",4),0)),"^")
|
---|
70 | .S Y=$P(TIUDATA,"^",5) D DD^%DT S TIURFDT=Y
|
---|
71 | .W !,TIUCNT,?5,$E($P(TIUDATA,"^",2),1,15),?22,"("_$P(TIUDATA,"^",3)_")",?31,$E(TIUTYP,1,25),?58,TIURFDT
|
---|
72 | Q
|
---|
73 | ;
|
---|
74 | PROMPT() ; PROMPT BASED ON DATA IN ^TMP($J) - QUIT VALUE DETERMINES FLOW IN LOOP/EN LINE TAGS
|
---|
75 | N X,TIUAIEN,DIR,DIRUT,FDA
|
---|
76 | W !
|
---|
77 | S DIR("A")="'NEW' FOR A NEW SEARCH OR '^' TO QUIT"
|
---|
78 | S DIR("A",1)="ENTER SEQUENCE # TO MARK AS 'SIGNED BY SURROGATE',"
|
---|
79 | S DIR(0)="F"
|
---|
80 | D ^DIR
|
---|
81 | ; QUIT CONDITIONS
|
---|
82 | I $G(DIRUT) Q 1
|
---|
83 | I X="NEW" Q 2
|
---|
84 | I '$D(^TMP($J,X)) D Q 0
|
---|
85 | .W !!,"INVALID CHOICE" D CLEAR^VALM1
|
---|
86 | ; CHANGE VALUES AND KILL TMP
|
---|
87 | S TIUAIEN=+^TMP($J,X)
|
---|
88 | S FDA(8925.7,TIUAIEN_",",.09)=1
|
---|
89 | D FILE^DIE("","FDA","TIUERR")
|
---|
90 | K ^TMP($J,X)
|
---|
91 | I '$D(^TMP($J)) Q 2
|
---|
92 | Q 0
|
---|
93 | ;
|
---|
94 | HEAD ;
|
---|
95 | D CLEAR^VALM1
|
---|
96 | W "ADDITIONAL SIGNER: ",TIUNAME,!!
|
---|
97 | W !,"SEQ",?5,"PATIENT",?31,"DOCUMENT TYPE",?58,"REFERENCE DATE"
|
---|
98 | W !,"---",?5,"-------",?31,"-------------",?58,"--------------"
|
---|
99 | Q
|
---|
100 | ;
|
---|
101 | NODATA() ;
|
---|
102 | D CLEAR^VALM1
|
---|
103 | W !!,?15,"NO DATA TO REPORT FOR THIS SEARCH"
|
---|
104 | N DIRUT,TIUND S TIUND=2
|
---|
105 | D PAUSE^VALM1
|
---|
106 | I $G(DIRUT) S TIUND=1
|
---|
107 | Q TIUND
|
---|
108 | ;
|
---|
109 | GETPAT(TIUDFN) ;
|
---|
110 | N DFN,TIUSSN,TIUPN,VADM
|
---|
111 | S DFN=TIUDFN
|
---|
112 | D DEM^VADPT
|
---|
113 | S TIUSSN=$P(VADM(2),"^")
|
---|
114 | S TIUPN=VADM(1)_"^"_$E(VADM(1))_$E(TIUSSN,6,$L(TIUSSN))
|
---|
115 | Q TIUPN
|
---|
116 | ;
|
---|
117 | POST199 ; REINDEX THE ABBREVIATION FIELD OF FILE 8925.1
|
---|
118 | N DIK
|
---|
119 | S DIK="^TIU(8925.1,",DIK(1)=".02"
|
---|
120 | D ENALL^DIK
|
---|
121 | Q
|
---|