| 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
 | 
|---|