1 | PXRMRPCD ;SLC/PJH - PXRM REMINDER DIALOG ;06/08/2001
|
---|
2 | ;;2.0;CLINICAL REMINDERS;;Feb 04, 2005
|
---|
3 | ;
|
---|
4 | ; Used by CPRS - see DBIA #3295/#3296/#3332
|
---|
5 | ;
|
---|
6 | ;
|
---|
7 | CATEGORY(ORY,CIEN) ;Get category information
|
---|
8 | ;
|
---|
9 | ; Input parameter Category ien [#811.7]
|
---|
10 | ;
|
---|
11 | N DATA,IC,IEN,NAME,PNAME,RIEN,SEQ,SUB,TEMP,USAGE
|
---|
12 | S IC=0
|
---|
13 | ;Get category name
|
---|
14 | S NAME=$G(^PXRMD(811.7,CIEN,0)) I NAME="" Q
|
---|
15 | ;
|
---|
16 | ;Sort Reminders from this category into display sequence
|
---|
17 | S SUB=0 K TEMP
|
---|
18 | F S SUB=$O(^PXRMD(811.7,CIEN,2,SUB)) Q:SUB="" D
|
---|
19 | .S DATA=$G(^PXRMD(811.7,CIEN,2,SUB,0)) Q:DATA=""
|
---|
20 | .S RIEN=$P(DATA,U) Q:'RIEN
|
---|
21 | .S SEQ=$P(DATA,U,2)_0
|
---|
22 | .;Include only CPRS reminders
|
---|
23 | .S USAGE=$P($G(^PXD(811.9,RIEN,100)),U,4) I USAGE'["C",USAGE'["*" Q
|
---|
24 | .;Skip inactive reminders
|
---|
25 | .S DATA=$G(^PXD(811.9,RIEN,0)) Q:DATA="" Q:$P(DATA,U,6)
|
---|
26 | .S NAME=$P(DATA,U) I NAME="" S NAME="Unknown"
|
---|
27 | .;or printname
|
---|
28 | .S PNAME=$P(DATA,U,3)
|
---|
29 | .S TEMP(SEQ)=RIEN_U_NAME_U_PNAME
|
---|
30 | ;
|
---|
31 | ;Re-save reminders in output array for display
|
---|
32 | ;type^reminder ien^name
|
---|
33 | ;
|
---|
34 | S SEQ=""
|
---|
35 | F S SEQ=$O(TEMP(SEQ)) Q:SEQ="" D
|
---|
36 | .S IC=IC+1,ORY(IC)="R"_U_TEMP(SEQ)
|
---|
37 | ;
|
---|
38 | ;Sort Sub-Categories for this category into display order
|
---|
39 | S SUB=0 K TEMP
|
---|
40 | F S SUB=$O(^PXRMD(811.7,CIEN,10,SUB)) Q:SUB="" D
|
---|
41 | .S DATA=$G(^PXRMD(811.7,CIEN,10,SUB,0)) Q:DATA=""
|
---|
42 | .S IEN=$P(DATA,U) Q:'IEN
|
---|
43 | .S SEQ=$P(DATA,U,2),TEMP(SEQ)=IEN
|
---|
44 | ;
|
---|
45 | ;Save sub categories
|
---|
46 | S SEQ=""
|
---|
47 | F S SEQ=$O(TEMP(SEQ)) Q:SEQ="" D
|
---|
48 | .S SUB=TEMP(SEQ) Q:'SUB
|
---|
49 | .S NAME=$P($G(^PXRMD(811.7,SUB,0)),U) Q:NAME=""
|
---|
50 | .S IC=IC+1,ORY(IC)="C"_U_SUB_U_NAME
|
---|
51 | Q
|
---|
52 | ;
|
---|
53 | DIALOG(ORY,ORDLG,DFN) ;Load dialog
|
---|
54 | ;
|
---|
55 | ; Input parameter ORDLG - dialog ien [#801.41]
|
---|
56 | ;
|
---|
57 | I 'ORDLG S ORY(1)="-1^dialog ien not specified" Q
|
---|
58 | ;
|
---|
59 | ;Check if a reminder dialog and enabled
|
---|
60 | N DATA
|
---|
61 | S DATA=$G(^PXRMD(801.41,ORDLG,0))
|
---|
62 | ;
|
---|
63 | I $P(DATA,U,4)'="R" S ORY(1)="-1^reminder dialog invalid" Q
|
---|
64 | ;
|
---|
65 | I $P(DATA,U,3) S ORY(1)="-1^reminder dialog disabled" Q
|
---|
66 | ;
|
---|
67 | ;Load dialog lines into local array
|
---|
68 | D LOAD^PXRMDLL(ORDLG,$G(DFN))
|
---|
69 | Q
|
---|
70 | ;
|
---|
71 | EDITPAR(PAR) ;Edit CPRS GUI Version 15 parameters
|
---|
72 | ;
|
---|
73 | ;This is an entry action in the PXRM CPRS CONFIGURATION menu options
|
---|
74 | ;
|
---|
75 | ;Check if Patch 85 has been installed
|
---|
76 | I '$$FIND1^DIC(8989.51,"","AMX",PAR) D Q
|
---|
77 | .W !!,"This option requires CPRS GUI Version 15",*7 H 1
|
---|
78 | ;
|
---|
79 | ;Edit Parameter Definition
|
---|
80 | D EDITPAR^XPAREDIT(PAR)
|
---|
81 | Q
|
---|
82 | ;
|
---|
83 | SEL(ORY) ;Selectable reminders and categories
|
---|
84 | N CIEN,CNAM,CNT,DATA,RCLASS,RNAM,RPNAM,RIEN,TYPE,USAGE
|
---|
85 | ;
|
---|
86 | ;Reminders in print name order
|
---|
87 | S TYPE="R",RPNAM="",CNT=0
|
---|
88 | F S RPNAM=$O(^PXD(811.9,"D",RPNAM)) Q:RPNAM="" D
|
---|
89 | .S RIEN=0
|
---|
90 | .F S RIEN=$O(^PXD(811.9,"D",RPNAM,RIEN)) Q:'RIEN D
|
---|
91 | ..;Include only CPRS reminders
|
---|
92 | ..S USAGE=$P($G(^PXD(811.9,RIEN,100)),U,4) I USAGE'["C",USAGE'["*" Q
|
---|
93 | ..;Skip inactive reminders
|
---|
94 | ..S DATA=$G(^PXD(811.9,RIEN,0)) Q:DATA="" Q:$P(DATA,U,6)
|
---|
95 | ..S RNAM=$P(DATA,U),RCLASS=$P($G(^PXD(811.9,RIEN,100)),U)
|
---|
96 | ..S CNT=CNT+1,ORY(CNT)=TYPE_U_RIEN_U_RPNAM_U_RNAM_U_RCLASS
|
---|
97 | ;
|
---|
98 | ;Categories in name order
|
---|
99 | S TYPE="C",CNAM=""
|
---|
100 | F S CNAM=$O(^PXRMD(811.7,"B",CNAM)) Q:CNAM="" D
|
---|
101 | .S CIEN=$O(^PXRMD(811.7,"B",CNAM,"")) Q:'CIEN
|
---|
102 | .S CNT=CNT+1,ORY(CNT)=TYPE_U_CIEN_U_CNAM
|
---|
103 | Q
|
---|