1 | RMPREO ;HINES/HNC SUSPENSE PROCESSING ; 25-JAN-2000
|
---|
2 | ;;3.0;PROSTHETICS;**45,55**;Feb 09, 1996
|
---|
3 | EN ; -- main entry point for RMPREO
|
---|
4 | D ^%ZISC
|
---|
5 | N STRING,CLREND,COLUMN,LINE,ON,OFF
|
---|
6 | ;get patient to test with
|
---|
7 | K ^TMP($J,"RMPREO")
|
---|
8 | K ^TMP($J,"RMPREOEE")
|
---|
9 | ;ask station
|
---|
10 | I '$D(RMPR) D DIV4^RMPRSIT Q:$D(X)
|
---|
11 | I '$D(RMPRDFN) D GETPAT^RMPRUTIL Q:'$D(RMPRDFN)
|
---|
12 | D EN^VALM("RMPREO")
|
---|
13 | Q
|
---|
14 | ;
|
---|
15 | HDR ; -- header code
|
---|
16 | N VA,VADM
|
---|
17 | S DFN=RMPRDFN
|
---|
18 | D DEM^VADPT
|
---|
19 | ;S VALMHDR(1)="Suspense Processing"
|
---|
20 | S VALMHDR(1)="Open/Pending/Closed Suspense for "_$$LOWER^VALM1(VADM(1))_" ("_$P(VADM(2),U,2)_")"
|
---|
21 | D KVAR^VADPT
|
---|
22 | Q
|
---|
23 | ;
|
---|
24 | INIT ; -- init variables and list array
|
---|
25 | K ^TMP($J,"RMPREO"),^TMP($J,"RMPREOEE")
|
---|
26 | D HDR
|
---|
27 | N RMPRA,CDATE,LINE,X
|
---|
28 | ;start loop
|
---|
29 | ;
|
---|
30 | K ADATE,PDAY
|
---|
31 | S RMPRA="",VALMCNT=0,RRX=""
|
---|
32 | ;reverse order display
|
---|
33 | F S RMPRA=$O(^RMPR(668,"C",RMPRDFN,RMPRA),-1) Q:RMPRA="" D
|
---|
34 | .I $P(^RMPR(668,RMPRA,0),U,10)="X" Q
|
---|
35 | .S VALMCNT=VALMCNT+1,LINE=VALMCNT
|
---|
36 | .S RRX=$$SETFLD^VALM1(LINE,RRX,"LINE")
|
---|
37 | .S CDATE=$P(^RMPR(668,RMPRA,0),U,1),CDATE=$$DAT1^RMPRUTL1(CDATE)
|
---|
38 | .S RRX=$$SETFLD^VALM1(CDATE,RRX,"DATE")
|
---|
39 | .S WHO1=""
|
---|
40 | .I $P(^RMPR(668,RMPRA,0),U,11)'="" S WHO1=$$WHO^RMPREOU($P(^RMPR(668,RMPRA,0),U,11),12)
|
---|
41 | .;I WHO1'="" S RRX=$$SETFLD^VALM1(WHO1,RRX,"WHO")
|
---|
42 | .S RRX=$$SETFLD^VALM1(WHO1,RRX,"WHO")
|
---|
43 | .K WHO,WHO1
|
---|
44 | .;type
|
---|
45 | .S TYPE=$$TYPE^RMPREOU(RMPRA,8)
|
---|
46 | .S RRX=$$SETFLD^VALM1(TYPE,RRX,"TYPE")
|
---|
47 | .;display description if manual
|
---|
48 | .;
|
---|
49 | .S RRX=$$SETFLD^VALM1($$DES^RMPREOU(RMPRA,22),RRX,"DES")
|
---|
50 | .;init activation date
|
---|
51 | .S ADATE="",PDAY="",WRKDAY=""
|
---|
52 | .S ADATE=$P(^RMPR(668,RMPRA,0),U,9)
|
---|
53 | .I ADATE'="" S (PDAY,WRKDAY)=$$WRKDAY^RMPREOU(RMPRA)
|
---|
54 | .I ADATE="" S (PDAY,WRKDAY)=$$CWRKDAY^RMPREOU(RMPRA)
|
---|
55 | .S RRX=$$SETFLD^VALM1($$DAT1^RMPRUTL1(ADATE),RRX,"INITIAL ACTION DATE")
|
---|
56 | .I ADATE'="" S CDAY=$$PDAY^RMPREOU(RMPRA) I CDAY>7 S PDAY="*"_WRKDAY
|
---|
57 | .I ADATE=""&(WRKDAY>5) S PDAY="@"_WRKDAY
|
---|
58 | .S RRX=$$SETFLD^VALM1(PDAY,RRX,"PDAY")
|
---|
59 | .K ADATE,PDAY,WRKDAY,CDAY
|
---|
60 | .;S R660=""
|
---|
61 | .;F S R660=$O(^RMPR(668,RMPRA,6,"B",R660)) Q:R660'>0 D
|
---|
62 | .; .S RRX=$$SETFLD^VALM1($$ITEM^RMPREOU(R660,17),RRX,"ITEM")
|
---|
63 | .S RRX=$$SETFLD^VALM1($$STATUS^RMPREOU(RMPRA,7),RRX,"STATUS")
|
---|
64 | .S ^TMP($J,"RMPREO",LINE,0)=RRX
|
---|
65 | .S ^TMP($J,"RMPREOEE",LINE,0)=RMPRA
|
---|
66 | Q
|
---|
67 | ;
|
---|
68 | ;
|
---|
69 | SET(STRING,LINE,COLUMN,CLREND,ON,OFF) ;set array
|
---|
70 | I '$D(@VALMAR@(LINE,0)) D SET^VALM10(LINE,$J("",80))
|
---|
71 | D SET^VALM10(LINE,$$SETSTR^VALM1(STRING,@VALMAR@(LINE,0),COLUMN,CLREND))
|
---|
72 | I $G(ON)]""!($G(OFF)]"") D CNTRL^VALM10(LINE,COLUMN,$L(STRING),ON,OFF)
|
---|
73 | Q
|
---|
74 | ;
|
---|
75 | ;
|
---|
76 | HELP ; -- help code
|
---|
77 | S X="?" D DISP^XQORM1 W !!
|
---|
78 | Q
|
---|
79 | ;
|
---|
80 | EXIT ; -- exit code
|
---|
81 | ;NOT XUSCLEAN
|
---|
82 | K ^TMP($J,"RMPREO")
|
---|
83 | K RMPRDFN
|
---|
84 | Q
|
---|
85 | ;
|
---|
86 | EXPND ; -- expand code
|
---|
87 | Q
|
---|
88 | ;
|
---|