| 1 | PXRMP10I ; SLC/PKR - PXRM*2.0*10 init routine. ;09/28/2007 | 
|---|
| 2 | ;;2.0;CLINICAL REMINDERS;**10**;Feb 04, 2005;Build 25 | 
|---|
| 3 | Q | 
|---|
| 4 | ; | 
|---|
| 5 | DELEI ;If the Exchange File entry already exists delete it. | 
|---|
| 6 | N ARRAY,IC,IND,LIST,LUVALUE,NUM | 
|---|
| 7 | D EXARRAY("L",.ARRAY) | 
|---|
| 8 | S IC=0 | 
|---|
| 9 | F  S IC=$O(ARRAY(IC)) Q:'IC  D | 
|---|
| 10 | . S LUVALUE(1)=ARRAY(IC,1) | 
|---|
| 11 | . D FIND^DIC(811.8,"","","U",.LUVALUE,"","","","","LIST") | 
|---|
| 12 | . I '$D(LIST) Q | 
|---|
| 13 | . S NUM=$P(LIST("DILIST",0),U,1) | 
|---|
| 14 | . I NUM'=0 D | 
|---|
| 15 | .. F IND=1:1:NUM D | 
|---|
| 16 | ... N DA,DIK | 
|---|
| 17 | ... S DIK="^PXD(811.8," | 
|---|
| 18 | ... S DA=LIST("DILIST",2,IND) | 
|---|
| 19 | ... D ^DIK | 
|---|
| 20 | Q | 
|---|
| 21 | ;========================================== | 
|---|
| 22 | DITEMAR(DIEN,ARRAY) ; | 
|---|
| 23 | ;DIEN is the IEN of the dialog top level | 
|---|
| 24 | ;Array contains the dialog elements and groups within the dialog. | 
|---|
| 25 | N CNT,IEN,REPIEN,TYPE | 
|---|
| 26 | S CNT=0 F  S CNT=$O(^PXRMD(801.41,DIEN,10,CNT)) Q:CNT'>0  D | 
|---|
| 27 | .S IEN=$P($G(^PXRMD(801.41,DIEN,10,CNT,0)),U,2) Q:IEN'>0 | 
|---|
| 28 | .S REPIEN=$P($G(^PXRMD(801.41,IEN,49)),U,3) | 
|---|
| 29 | .I REPIEN>0 D DITEMAR(REPIEN,.ARRAY) | 
|---|
| 30 | .S TYPE=$P($G(^PXRMD(801.41,IEN,0)),U,4) | 
|---|
| 31 | .I TYPE="G"!(TYPE="E") D DITEMAR(IEN,.ARRAY) | 
|---|
| 32 | .I '$D(ARRAY(IEN)) S ARRAY(IEN)="" | 
|---|
| 33 | I '$D(ARRAY(DIEN)) S ARRAY(DIEN)="" | 
|---|
| 34 | Q | 
|---|
| 35 | ; | 
|---|
| 36 | DMAKENAT(DA) ; | 
|---|
| 37 | N CLASS,DIE,DR,IEN,NAME,NEWNAME,PREFIX,TYPE | 
|---|
| 38 | S NAME=$P($G(^PXRMD(801.41,DA,0)),U) | 
|---|
| 39 | I $E(NAME,1,3)="VA-"!($E(NAME,1,4)="PXRM") Q | 
|---|
| 40 | S CLASS="N" | 
|---|
| 41 | S DIE="^PXRMXD(801.41," | 
|---|
| 42 | S DR="100////^S X=CLASS" | 
|---|
| 43 | D ^DIE | 
|---|
| 44 | S TYPE=$P($G(^PXRMD(801.41,DA,0)),U,4) | 
|---|
| 45 | S PREFIX=$S(TYPE="R":"VA-",TYPE="G":"VA-",TYPE="E":"VA-",1:"PXRM ") | 
|---|
| 46 | S NEWNAME=PREFIX_NAME | 
|---|
| 47 | D RENAME(801.41,NAME,NEWNAME) | 
|---|
| 48 | Q | 
|---|
| 49 | ; | 
|---|
| 50 | EXARRAY(MODE,ARRAY) ;List of exchange entries used by delete and install | 
|---|
| 51 | N CNT | 
|---|
| 52 | S CNT=0 | 
|---|
| 53 | ; | 
|---|
| 54 | S CNT=CNT+1,ARRAY(CNT,1)="VA-VANOD SKIN ASSESSMENT" | 
|---|
| 55 | I MODE["I" S ARRAY(CNT,2)="07/16/2007@14:45:37" | 
|---|
| 56 | I MODE["A" S ARRAY(CNT,3)="O" | 
|---|
| 57 | ; | 
|---|
| 58 | S CNT=CNT+1,ARRAY(CNT,1)="VA-VANOD SKIN REASSESSMENT" | 
|---|
| 59 | I MODE["I" S ARRAY(CNT,2)="07/16/2007@14:46:02" | 
|---|
| 60 | I MODE["A" S ARRAY(CNT,3)="O" | 
|---|
| 61 | ; | 
|---|
| 62 | S CNT=CNT+1,ARRAY(CNT,1)="GMTS SKIN RISK HS TYPES" | 
|---|
| 63 | I MODE["I" S ARRAY(CNT,2)="07/09/2007@13:20:09" | 
|---|
| 64 | I MODE["A" S ARRAY(CNT,3)="O" | 
|---|
| 65 | ; | 
|---|
| 66 | S CNT=CNT+1,ARRAY(CNT,1)="GMTS SKIN RISK HS OBJECTS" | 
|---|
| 67 | I MODE["I" S ARRAY(CNT,2)="07/09/2007@13:21:13" | 
|---|
| 68 | I MODE["A" S ARRAY(CNT,3)="O" | 
|---|
| 69 | Q | 
|---|
| 70 | ; | 
|---|
| 71 | ;========================================== | 
|---|
| 72 | EXFINC(Y) ;Return a 1 if the Exchange file entry is in the list to | 
|---|
| 73 | ;include in the build. This is used in the build to determine which | 
|---|
| 74 | ;entries to include. | 
|---|
| 75 | N EXARRAY,FOUND,IEN,IC,LUVALUE | 
|---|
| 76 | D EXARRAY("I",.EXARRAY) | 
|---|
| 77 | S FOUND=0 | 
|---|
| 78 | S IC=0 | 
|---|
| 79 | F  S IC=+$O(EXARRAY(IC)) Q:(IC=0)!(FOUND)  D | 
|---|
| 80 | . M LUVALUE=EXARRAY(IC) | 
|---|
| 81 | . S IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE) | 
|---|
| 82 | . I IEN=Y S FOUND=1 Q | 
|---|
| 83 | Q FOUND | 
|---|
| 84 | ; | 
|---|
| 85 | NATCONV ; | 
|---|
| 86 | N ARRAY,CLASS,CNT,DA,DIE,DIEN,DR,IEN,NAME,PXRMEXCH,PXRMINST,RIEN | 
|---|
| 87 | S PXRMEXCH=1,PXRMINST=1,CLASS="N" | 
|---|
| 88 | F NAME="VANOD SKIN ASSESSMENT","VANOD SKIN REASSESSMENT" D | 
|---|
| 89 | .S RIEN=$O(^PXD(811.9,"B",NAME,"")) Q:RIEN'>0 | 
|---|
| 90 | .S DA=RIEN,DIE="^PXD(811.9,",DR="100///^S X=CLASS" | 
|---|
| 91 | .D ^DIE | 
|---|
| 92 | .D RENAME(811.9,NAME,"VA-"_NAME) | 
|---|
| 93 | .S DIEN=$P($G(^PXD(811.9,RIEN,51)),U) Q:DIEN'>0 | 
|---|
| 94 | .D DITEMAR(DIEN,.ARRAY) | 
|---|
| 95 | .S IEN=0 F  S IEN=$O(ARRAY(IEN)) Q:IEN'>0  D | 
|---|
| 96 | ..D DMAKENAT(IEN) | 
|---|
| 97 | .D DMAKENAT(DIEN) | 
|---|
| 98 | Q | 
|---|
| 99 | ; | 
|---|
| 100 | PRE ; | 
|---|
| 101 | D DELEI | 
|---|
| 102 | D NATCONV | 
|---|
| 103 | Q | 
|---|
| 104 | ; | 
|---|
| 105 | POST ; | 
|---|
| 106 | D SMEXINS | 
|---|
| 107 | Q | 
|---|
| 108 | ; | 
|---|
| 109 | RENAME(FILENUM,OLDNAME,NEWNAME) ;Rename entry OLDNAME to NEWNAME in | 
|---|
| 110 | ;file number FILENUM. | 
|---|
| 111 | N DA,DIE,DR,NIEN | 
|---|
| 112 | S NIEN=$$FIND1^DIC(FILENUM,"","BX",NEWNAME) I NIEN>0 Q | 
|---|
| 113 | S DA=$$FIND1^DIC(FILENUM,"","BX",OLDNAME) | 
|---|
| 114 | I DA=0 Q | 
|---|
| 115 | S DIE=FILENUM | 
|---|
| 116 | S DR=".01///^S X=NEWNAME" | 
|---|
| 117 | D ^DIE | 
|---|
| 118 | Q | 
|---|
| 119 | ; | 
|---|
| 120 | SENDDLG(IEN) ; | 
|---|
| 121 | N NAME | 
|---|
| 122 | S NAME=$P($G(^PXRMD(801.41,IEN,0)),U) | 
|---|
| 123 | I NAME="PXRM BRADEN 6-8" Q 1 | 
|---|
| 124 | I NAME="PXRM BRADEN 10-12" Q 1 | 
|---|
| 125 | I NAME="PXRM BRADEN 13-14" Q 1 | 
|---|
| 126 | I NAME="PXRM BRADEN 15-18" Q 1 | 
|---|
| 127 | I NAME="PXRM BRADEN 19-23" Q 1 | 
|---|
| 128 | I NAME="PXRM VANOD PU LOCATIONS" Q 1 | 
|---|
| 129 | I NAME="PXRM VANOD SKIN COLOR" Q 1 | 
|---|
| 130 | I NAME="PXRM VANOD SKIN MOISTURE" Q 1 | 
|---|
| 131 | I NAME="PXRM VANOD SKIN TEMP" Q 1 | 
|---|
| 132 | I NAME="PXRM VANOD SKIN TURGOR" Q 1 | 
|---|
| 133 | I NAME="PXRM VANOD DATE FORCED TODAY" Q 1 | 
|---|
| 134 | Q 0 | 
|---|
| 135 | ; | 
|---|
| 136 | SMEXINS ;Silent mode install | 
|---|
| 137 | N ACTION,EXARRAY,IC,IEN,LUVALUE,PXRMINST,TEXT | 
|---|
| 138 | S PXRMINST=1 | 
|---|
| 139 | D EXARRAY("IA",.EXARRAY) | 
|---|
| 140 | S IC=0 | 
|---|
| 141 | F  S IC=$O(EXARRAY(IC)) Q:'IC  D | 
|---|
| 142 | .I EXARRAY(IC,1)["GMTS" Q | 
|---|
| 143 | .S LUVALUE(1)=EXARRAY(IC,1),LUVALUE(IC,2)=EXARRAY(IC,2) | 
|---|
| 144 | .S IEN=+$$FIND1^DIC(811.8,"","KU",.LUVALUE) | 
|---|
| 145 | .I IEN'=0 D | 
|---|
| 146 | .. N TEXT | 
|---|
| 147 | .. I LUVALUE(1)["PARAMETER" S TEXT="Installing entry "_LUVALUE(1) | 
|---|
| 148 | .. E  S TEXT="Installing reminder "_LUVALUE(1) | 
|---|
| 149 | .. D BMES^XPDUTL(TEXT) | 
|---|
| 150 | .. I $$PATCH^XPDUTL("PXRM*2.0*6") D | 
|---|
| 151 | ... S ACTION=EXARRAY(IC,3) | 
|---|
| 152 | ... D INSTALL^PXRMEXSI(IEN,ACTION,1) | 
|---|
| 153 | .. I '$$PATCH^XPDUTL("PXRM*2.0*6") D INSTALL^PXRMEXSI(IEN,1) | 
|---|
| 154 | Q | 
|---|
| 155 | ; | 
|---|