source: FOIAVistA/trunk/r/TEXT_INTEGRATION_UTILITIES-GMRP-TIU/GMRPNOR1.m@ 1397

Last change on this file since 1397 was 628, checked in by George Lilly, 15 years ago

initial load of FOIAVistA 6/30/08 version

File size: 4.7 KB
Line 
1GMRPNOR1 ;SLC/MKB/DJP Progress Note- OE/RR interface;; 2-14-97 ; 7-DEC-1999 12:10:24
2 ;;2.5;Progress Notes;**25,45,50**;Jan 08, 1993
3 ;
4 ; this rtn is needed by TIU to support the one letter CWAD indicators
5 ; in OE/RR 2.5 screens- subroutine CWAD
6 ; DO NOT delete this rtn when the GMRP* rtns are deleted in the
7 ; TIU clean-up
8 ;
9SELPT ;select new patient using IN^OR to update ORVP, etc. GMRP*2.5*50
10 ; IN^OR doesn't exist, code no longer used
11 ;K DIC,Y,DIROUT S GMRPOLD=$G(ORVP)
12 ;D IN^OR I $D(DIROUT) S GMRPEND=1 Q
13 ;I (ORVP=GMRPOLD) S XQORM("B")="Redisplay Screen" K GMRPOLD Q
14 ;K GMRPOLD D PAT Q:$D(GMRPQT) S:'$D(GMRPCTXT) GMRPCTXT=1
15 ;D @("BUILD"_GMRPCTXT_"^GMRPNOR"),SCREEN^GMRPNOR
16 ;Q
17PAT ;set up patient info for use - expects ORVP or DFN
18 S GMRPDFN=$S($D(ORVP):$P(ORVP,";"),$D(DFN):DFN,1:0)
19 I +GMRPDFN'>0 D Q:$D(GMRPQT)
20 .S DIC="^DPT(",DIC(0)="AEQM" D ^DIC K DIC
21 .I +Y<1 S GMRPQT=1 Q
22 .S GMRPDFN=+Y
23 N DFN S DFN=+GMRPDFN D OERR^VADPT
24 S $P(GMRPDFN,U,2)=VADM(1),GMRPSSN=VA("PID")
25 S GMRPDOB=VADM(3),GMRPAGE=VADM(4),GMRPRB=VAIN(5),GMRPLOC=$P(VAIN(4),U)
26 S GMRPLOC=$P($G(^DIC(42,+GMRPLOC,44)),U)
27 S:GMRPLOC>0 $P(GMRPLOC,U,2)=$P(^SC(+GMRPLOC,0),U)
28 K VAIN,VADM,GMRPCWAD S GMRPCWAD=$$CWAD(GMRPDFN)
29 Q
30CWAD(GMRPDFN) ;;check if any clinical warnings exist for patient
31 ;Returns GMRPCWAD="CWAD" (for ones found), or "" if none
32 ;S DFN (below) needed for hidden action CWAD^TIULX
33 ; N GMRPCWAD,GMRPCWA1,TIUST,GMRPALG,GMRPI
34 N GMRPCWA1,GMRPI
35 I '+GMRPDFN Q ""
36 S GMRPCWAD=""
37 S GMRPCWA1=""
38 F GMRPI=7,8 D
39 . I $D(^TIU(8925,"ADCPT",+GMRPDFN,30,GMRPI)) S GMRPCWA1=GMRPCWA1_"C"
40 . I $D(^TIU(8925,"ADCPT",+GMRPDFN,31,GMRPI)) S GMRPCWA1=GMRPCWA1_"W"
41 . I $D(^TIU(8925,"ADCPT",+GMRPDFN,27,GMRPI)) S GMRPCWA1=GMRPCWA1_"D"
42 . Q
43 S DFN=GMRPDFN D ALLERGY^GMRPNCW I $D(GMRPALG) S GMRPCWA1=GMRPCWA1_"A"
44 F GMRPI="C","W","D","A" D
45 . I GMRPCWA1[GMRPI S GMRPCWAD=GMRPCWAD_GMRPI
46 K CWA,TIUST,GMRPALG
47 Q GMRPCWAD
48 ;
49QUIT ;quits out of review screen
50 S GMRPEND=1
51 Q
52SEL ;selects single note from screen -- assumes GMRPN(GMRPNN) array
53 S DIR(0)="NAO^1:"_GMRPNN,DIR("A")="Select a note: "
54 S DIR("?")="Enter the display number of the note you wish to amend."
55 S DIR("??")="^D HELPASK1^GMRPND" D ^DIR K DIR
56 I $D(DTOUT)!($D(DIRUT))!($D(DIROUT)) S GMRPQT=1 Q
57 S GMRPIFN=GMRPN(+Y)
58 I $D(GMRPADDM),$P($G(^GMR(121,GMRPIFN,5)),U)=1 D Q
59 .W !!,"This note requires a cosignature before it may be amended!"
60 .W $C(7) S GMRPQT=1 K GMRPIFN
61 D DISPL^GMRPN2 K:'$D(DIROUT)&('$D(DTOUT)) GMRPQT,DUOUT
62 Q
63CURR ;Redisplay current screen -- needs GMRPPG & calls SCREEN
64 I $S('$D(GMRPPG):1,GMRPPG'>0:1,1:0) S GMRPPG=1
65 D SCREEN^GMRPNOR
66 Q
67NEXT ;Display next screen -- needs GMRPPG & calls SCREEN
68 I $S('$D(GMRPPG):1,GMRPPG'>0:1,1:0) S GMRPPG=1
69 I GMRPPG<GMRPN("PG") S GMRPPG=GMRPPG+1
70 D SCREEN^GMRPNOR
71 Q
72PREV ;Display previous screen -- needs GMRPPG & calls SCREEN
73 I $S('$D(GMRPPG):1,GMRPPG'>0:1,1:0) S GMRPPG=1
74 I GMRPPG>1 S GMRPPG=GMRPPG-1
75 D SCREEN^GMRPNOR
76 Q
77CTXT ;Select new context for viewing/acting on notes
78 ;Requires/Returns GMRPCTXT
79 S DIR(0)="SAO^1:SIGNED;2:UNSIGNED;3:UNCOSIGNED;4:AUTHOR;5:DATES"
80 S DIR("A")="Select context: ",DIR("A",1)="Valid selections are:"
81 S DIR("A",2)=" 1 - signed notes (all) 2 - unsigned notes 3 - uncosigned notes"
82 S DIR("A",3)=" 4 - signed notes/author 5 - signed notes/dates",DIR("A",4)=" "
83 S DIR("?",1)="To change which notes are displayed, select the number"
84 S DIR("?")="of the context you wish to work within.",DIR("B")="1"
85 W ! D ^DIR K DIR S:$D(DIROUT) GMRPEND=1
86 Q:$D(DUOUT)!($D(DTOUT))!($D(DIROUT))
87 S GMRPSAV=Y D AUTHOR:Y=4,DATES^GMRPNP:Y=5 Q:$D(GMRPQT)
88 S GMRPCTXT=GMRPSAV K GMRPBLD,GMRPSAV
89 Q
90AUTHOR ;selects author - Returns GMRPDUZ=#^NAME or GMRPQT
91 S DIC="^VA(200,",DIC(0)="AEQM",DIC("A")="Select AUTHOR: "
92 S DIC("B")=$P(^VA(200,DUZ,0),U) D ^DIC K DIC
93 I '$T!(+Y<1) S GMRPQT=1 S:$D(DIROUT) GMRPEND=1 Q
94 S GMRPDUZ=Y K GMRPQT
95 Q
96SETERM ;sets up GMRPTRML variable to hi-lite <CWAD> flag on review screen
97 ;node 5 = inverse display, node 7 = highlighted display
98 S GMRPTRML="" Q:'$D(IOST) Q:'$L(IOST)
99 S X=$O(^%ZIS(2,"B",IOST,0))
100 ;I X,$D(^%ZIS(2,X)) S GMRPTRML=$S($D(^(X,5)):$P(^(5),U,4,5),1:"")
101 I X,$D(^%ZIS(2,X)) S GMRPTRML=$S($D(^(X,7)):$P(^(7),U,1,3),1:"")
102 I S:'$L($P(GMRPTRML,U,3)) $P(GMRPTRML,U,3)=$P(GMRPTRML,U,2)
103 F GMRPI=1,3 I '$L($P(GMRPTRML,U,GMRPI)) S GMRPTRML="" Q
104 K GMRPI Q
105INV() I '$L(X) Q ""
106 N DX,DY S DX=$X,DY=$Y W @X X ^%ZOSF("XY")
107 Q ""
108UNSIGN ;entry point for follow-up action on unsigned pn's
109 N ORVP S XQAKILL=0
110 S GMRPCTXT=2,ORVP=$P($G(XQAID),",",2)_";DPT("
111 S X=$O(^ORD(101,"B","GMRP REVIEW SCREEN",0))_";ORD(101," D EN^XQOR ;WPB/CAM REMOVE B START OF LINE
112 Q
113COSIGN ;entry point for follow-up action on uncosigned pn's
114 N ORVP S XQAKILL=0
115 S GMRPCTXT=3,ORVP=$P($G(XQAID),",",2)_";DPT("
116 S X=$O(^ORD(101,"B","GMRP REVIEW SCREEN",0))_";ORD(101," D EN^XQOR
117 Q
Note: See TracBrowser for help on using the repository browser.