1 | KMPDUTL8 ;OAK/RAK - CM Tools Utility ;2/17/04 10:52
|
---|
2 | ;;2.0;CAPACITY MANAGEMENT TOOLS;**2**;Mar 22, 2002
|
---|
3 | ;
|
---|
4 | ADD(KMPDNAME,KMPDARRY,KMPDIEN) ;-- add new entry to file #8972.1
|
---|
5 | ;-----------------------------------------------------------------------
|
---|
6 | ; KMPDNAME... Field #.01 (free text).
|
---|
7 | ; KMPDARRY(). Array containing data to file in format (passed by value):
|
---|
8 | ; KMPDARRY(FieldNumber)=InternalEntryValue.
|
---|
9 | ; Example: KMPDARRY(.02)=2990719.1001
|
---|
10 | ; KMPDARRY(.03)=12345
|
---|
11 | ; KMPDARRY(.04)="1290"
|
---|
12 | ; KMPDARRY(...)="..."
|
---|
13 | ; KMPDARRY(10,1,0)="This contains word"
|
---|
14 | ; KMPDARRY(10,2,0)="processing text for the"
|
---|
15 | ; KMPDARRY(10,3,0)="COMMENTS field."
|
---|
16 | ; KMPDIEN... New ien for entry (if not successful KMPDIEN will be null).
|
---|
17 | ;-----------------------------------------------------------------------
|
---|
18 | ;
|
---|
19 | Q:$G(KMPDNAME)=""
|
---|
20 | ; convert disallowed characters.
|
---|
21 | S KMPDNAME=$$CONVERT^KMPDUTL7(KMPDNAME)
|
---|
22 | Q:KMPDNAME=""
|
---|
23 | ;
|
---|
24 | N FDA,I,MESSAGE,ZIEN
|
---|
25 | ; name.
|
---|
26 | S FDA($J,8972.1,"+1,",.01)=KMPDNAME
|
---|
27 | ; additional fields.
|
---|
28 | F I=.02:.01:.09 I $G(@KMPDARRY@(I))'="" D
|
---|
29 | .S FDA($J,8972.1,"+1,",I)=@KMPDARRY@(I)
|
---|
30 | ; 'comments' word-processing field.
|
---|
31 | S:$O(@KMPDARRY@(10,0)) FDA($J,8972.1,"+1,",10)=KMPDARRY_"(10)"
|
---|
32 | ;
|
---|
33 | ; update file 8971.1.
|
---|
34 | D UPDATE^DIE("","FDA($J)","ZIEN","MESSAGE")
|
---|
35 | S KMPDIEN=$G(ZIEN(1)) Q:'KMPDIEN
|
---|
36 | ; if error message.
|
---|
37 | I $D(MESSAGE) D MSG^DIALOG("W","",60,10,"MESSAGE")
|
---|
38 | ;
|
---|
39 | Q
|
---|
40 | ;
|
---|
41 | EDIT(KMPDIEN,KMPDARRY) ;-- edit entry in file #8972.1
|
---|
42 | ;-----------------------------------------------------------------------
|
---|
43 | ; KMPDIEN... Ien for file #8972.1 (CM CODE EVALUATOR)
|
---|
44 | ; KMPDARRY(). Array containing data to file in format (passed by value):
|
---|
45 | ; KMPDARRY(FieldNumber)=InternalEntryValue.
|
---|
46 | ; Example: KMPDARRY(.02)=2990719.1001
|
---|
47 | ; KMPDARRY(.03)=12345
|
---|
48 | ; KMPDARRY(.04)="1290"
|
---|
49 | ; KMPDARRY(...)="..."
|
---|
50 | ; KMPDARRY(10,1,0)="This contains word"
|
---|
51 | ; KMPDARRY(10,2,0)="processing text for the"
|
---|
52 | ; KMPDARRY(10,3,0)="COMMENTS field."
|
---|
53 | ;-----------------------------------------------------------------------
|
---|
54 | ;
|
---|
55 | Q:'$G(KMPDIEN)
|
---|
56 | Q:'$D(^KMPD(8972.1,+KMPDIEN,0))#5
|
---|
57 | Q:$G(KMPDARRY)=""
|
---|
58 | ;
|
---|
59 | N DATA,FDA,I,MESSAGE,ZIEN
|
---|
60 | ;
|
---|
61 | ; data already stored for this entry
|
---|
62 | S DATA(0)=$G(^KMPD(8972.1,+KMPDIEN,0))
|
---|
63 | ;
|
---|
64 | ; date/time last edited
|
---|
65 | S FDA($J,8972.1,KMPDIEN_",",2.01)=$$NOW^XLFDT
|
---|
66 | ;
|
---|
67 | ; last edited by
|
---|
68 | S:$G(DUZ) FDA($J,8972.1,KMPDIEN_",",2.02)=DUZ
|
---|
69 | ;
|
---|
70 | ; add data elements to current data
|
---|
71 | F I=.04:.01:.09 D
|
---|
72 | .S FDA($J,8972.1,KMPDIEN_",",I)=@KMPDARRY@(I)+$P(DATA(0),U,(I*100))
|
---|
73 | .; make sure not negative number
|
---|
74 | .S FDA($J,8972.1,KMPDIEN_",",I)=$$NUMBER^KMPDUTL7(FDA($J,8972.1,KMPDIEN_",",I))
|
---|
75 | .; if number has grown to 15 characters or more then make this code
|
---|
76 | .; evaluator inactive
|
---|
77 | .S:$L(FDA($J,8972.1,KMPDIEN_",",I))>14 FDA($J,8971.1,KMPDIEN_",",.11)=0
|
---|
78 | ;
|
---|
79 | ; increment count
|
---|
80 | S FDA($J,8972.1,KMPDIEN_",",.1)=$P(DATA(0),U,10)+1
|
---|
81 | ;
|
---|
82 | ; 'comments' word-processing field.
|
---|
83 | S:$O(@KMPDARRY@(10,0)) FDA($J,8972.1,KMPDIEN_",",10)=KMPDARRY_"(10)"
|
---|
84 | ;
|
---|
85 | ; update file 8971.1.
|
---|
86 | D UPDATE^DIE("","FDA($J)","ZIEN","MESSAGE")
|
---|
87 | ;
|
---|
88 | S KMPDIEN=$G(ZIEN(1)) Q:'KMPDIEN
|
---|
89 | ;
|
---|
90 | ; if error message.
|
---|
91 | I $D(MESSAGE) D MSG^DIALOG("W","",60,10,"MESSAGE")
|
---|
92 | ;
|
---|
93 | Q
|
---|
94 | ;
|
---|
95 | ID(KMPDIEN) ;-- display fields during lookup
|
---|
96 | ;-----------------------------------------------------------------------
|
---|
97 | ; KMPDIEN.... Ien for file #8972.1.
|
---|
98 | ;-----------------------------------------------------------------------
|
---|
99 | ;
|
---|
100 | Q:'$D(^KMPD(8972.1,+$G(KMPDIEN),0))
|
---|
101 | ;
|
---|
102 | N DATA,TXT
|
---|
103 | S DATA=$G(^KMPD(8972.1,+KMPDIEN,0))
|
---|
104 | S TXT(1)=$$FMTE^DILIBF($P(DATA,U,2),6)
|
---|
105 | S TXT(1)=TXT(1)_" "_$$GET1^DIQ(8972.1,KMPDIEN,.03)
|
---|
106 | S TXT(1,"F")="?35"
|
---|
107 | S TXT(2)="cpu tm="_$P(DATA,U,4)_" dio ref="_$P(DATA,U,5)_" "
|
---|
108 | S TXT(2)=TXT(2)_"bio ref="_$P(DATA,U,6)_" page flts="_$P(DATA,U,7)_" "
|
---|
109 | S TXT(2)=TXT(2)_"m com="_$P(DATA,U,8)_" global ref="_$P(DATA,U,9)
|
---|
110 | S TXT(2,"F")="!?5",TXT(3)="",TXT(3,"F")="!"
|
---|
111 | D EN^DDIOL(.TXT)
|
---|
112 | ;
|
---|
113 | Q
|
---|
114 | ;
|
---|
115 | ELEDATA(KMPDIEN) ;-- extrinsic function - if element data
|
---|
116 | ;-----------------------------------------------------------------------
|
---|
117 | ; KMPDIEN... Ien for file #8972.1 (CM CODE EVALUATOR)
|
---|
118 | ;
|
---|
119 | ; Return: 0 - element data is NOT present
|
---|
120 | ; 1 - element data is present
|
---|
121 | ;-----------------------------------------------------------------------
|
---|
122 | ;
|
---|
123 | Q:'$G(KMPDIEN) 0
|
---|
124 | Q:'$D(^KMPD(8972.1,+KMPDIEN,0))#5 0
|
---|
125 | ;
|
---|
126 | N DATA,I,RETURN
|
---|
127 | S DATA(0)=$G(^KMPD(8972.1,+KMPDIEN,0))
|
---|
128 | S RETURN=1
|
---|
129 | F I=4,5,6,8,9 I $P(DATA(0),U,I)']"" S RETURN=0 Q
|
---|
130 | Q RETURN
|
---|