[613] | 1 | XUMF333 ;OIFO-OAK/RAM - Add HCS data types ;02/21/02
|
---|
| 2 | ;;8.0;KERNEL;**335**;Jul 10, 1995
|
---|
| 3 | ;
|
---|
| 4 | Q
|
---|
| 5 | ;
|
---|
| 6 | ;
|
---|
| 7 | POST ; -- post installation XU*8*333
|
---|
| 8 | ;
|
---|
| 9 | N XUMF,IENS,IEN,FDA,I,HCS,XXX
|
---|
| 10 | ;
|
---|
| 11 | S XUMF=1
|
---|
| 12 | ;
|
---|
| 13 | D KM,KM1,KM2,KM3,STUFF
|
---|
| 14 | ;
|
---|
| 15 | Q
|
---|
| 16 | ;
|
---|
| 17 | KM ; -- add XUMF IMF EDIT STATUS to XUKERNEL
|
---|
| 18 | ;
|
---|
| 19 | N X,Y
|
---|
| 20 | ;
|
---|
| 21 | S X=$$FIND1^DIC(19,,"B","XUKERNEL")
|
---|
| 22 | S Y="?+1,"
|
---|
| 23 | ;
|
---|
| 24 | S IENS=Y_X_","
|
---|
| 25 | S FDA(19,"?1,",.01)="XUKERNEL"
|
---|
| 26 | S FDA(19.01,"?+2,?1,",.01)="XUMF IMF EDIT STATUS"
|
---|
| 27 | D UPDATE^DIE("","FDA")
|
---|
| 28 | ;
|
---|
| 29 | Q
|
---|
| 30 | ;
|
---|
| 31 | KM1 ; -- add XUMF IMF EDIT STATUS to XUKERNEL
|
---|
| 32 | ;
|
---|
| 33 | N X,Y
|
---|
| 34 | ;
|
---|
| 35 | S X=$$FIND1^DIC(19,,"B","XUKERNEL")
|
---|
| 36 | S Y="?+1,"
|
---|
| 37 | ;
|
---|
| 38 | S IENS=Y_X_","
|
---|
| 39 | S FDA(19,"?1,",.01)="XUKERNEL"
|
---|
| 40 | S FDA(19.01,"?+3,?1,",.01)="XUMF LOAD INSTITUTION"
|
---|
| 41 | D UPDATE^DIE("","FDA")
|
---|
| 42 | ;
|
---|
| 43 | Q
|
---|
| 44 | ;
|
---|
| 45 | KM2 ; -- add XUMF IMF EDIT STATUS to XUKERNEL
|
---|
| 46 | ;
|
---|
| 47 | N X,Y
|
---|
| 48 | ;
|
---|
| 49 | S X=$$FIND1^DIC(19,,"B","XUKERNEL")
|
---|
| 50 | S Y="?+1,"
|
---|
| 51 | ;
|
---|
| 52 | S IENS=Y_X_","
|
---|
| 53 | S FDA(19,"?1,",.01)="XUKERNEL"
|
---|
| 54 | S FDA(19.01,"?+3,?1,",.01)="Patch XU*8*335 clean 4.1 and 4"
|
---|
| 55 | D UPDATE^DIE("","FDA")
|
---|
| 56 | ;
|
---|
| 57 | Q
|
---|
| 58 | ;
|
---|
| 59 | KM3 ; -- remove XUMF333 clean 4.1 and 4 if present
|
---|
| 60 | ;
|
---|
| 61 | N X,IENS,FDA
|
---|
| 62 | ;
|
---|
| 63 | S X=$$FIND1^DIC(19,,"B","XUMF333 clean 4.1 and 4")
|
---|
| 64 | ;
|
---|
| 65 | Q:'X
|
---|
| 66 | ;
|
---|
| 67 | S IENS=X_","
|
---|
| 68 | S FDA(19,IENS,.01)="@"
|
---|
| 69 | D UPDATE^DIE("","FDA")
|
---|
| 70 | ;
|
---|
| 71 | Q
|
---|
| 72 | ;
|
---|
| 73 | STUFF ;
|
---|
| 74 | ;
|
---|
| 75 | S IEN=$O(^DIC(4.1,"B","HCS",0))
|
---|
| 76 | S IENS=$S(IEN:IEN_",",1:"+1,")
|
---|
| 77 | K FDA
|
---|
| 78 | S FDA(4.1,IENS,.01)="HCS"
|
---|
| 79 | S FDA(4.1,IENS,1)="HEALTH CARE SYSTEM"
|
---|
| 80 | S FDA(4.1,IENS,3)="LOCAL"
|
---|
| 81 | D UPDATE^DIE("E","FDA")
|
---|
| 82 | ;
|
---|
| 83 | S HCS=""
|
---|
| 84 | F XXX=1:1 D Q:HCS=""
|
---|
| 85 | .S HCS=$P($T(HCS+XXX),";;",2)
|
---|
| 86 | .S IEN=$S(HCS="":0,1:$O(^DIC(4,"B",HCS,0)))
|
---|
| 87 | .S IENS=$S(IEN:IEN_",",1:"+1,")
|
---|
| 88 | .;
|
---|
| 89 | .K FDA
|
---|
| 90 | .S FDA(4,IENS,.01)=HCS
|
---|
| 91 | .S FDA(4,IENS,11)="LOCAL"
|
---|
| 92 | .S FDA(4,IENS,13)="HCS"
|
---|
| 93 | .D UPDATE^DIE("E","FDA")
|
---|
| 94 | ;
|
---|
| 95 | Q
|
---|
| 96 | ;
|
---|
| 97 | HCS ;
|
---|
| 98 | ;;VA GREATER LOS ANGELES (691)
|
---|
| 99 | ;;VA HEARTLAND-EAST VISN15 (657)
|
---|
| 100 | ;;VA HEARTLAND-WEST VISN15 (589)
|
---|
| 101 | ;;VA CHICAGO HSC (537)
|
---|
| 102 | ;;CENTRAL PLAINS NETWORK (636)
|
---|
| 103 | ;;MONTANA HCS (436)
|
---|
| 104 | ;;VA PACIFIC ISLANDS HCS (459)
|
---|
| 105 | ;;NEW MEXICO HCS (501)
|
---|
| 106 | ;;AMARILLO HCS (504)
|
---|
| 107 | ;;MARYLAND HCS (512)
|
---|
| 108 | ;;WEST TEXAS HCS (519)
|
---|
| 109 | ;;BOSTON HCS (523)
|
---|
| 110 | ;;UPSTATE NEW YORK HCS (528)
|
---|
| 111 | ;;NORTH TEXAS HCS (549)
|
---|
| 112 | ;;EASTERN COLORADO HCS (554)
|
---|
| 113 | ;;NEW JERSEY HCS (561)
|
---|
| 114 | ;;BLACK HILLS HCS (568)
|
---|
| 115 | ;;CENTRAL CALIFORNIA HCS (570)
|
---|
| 116 | ;;N FLORIDA/S GEORGIA HCS (573)
|
---|
| 117 | ;;GREATER NEBRASKA HCS (597)
|
---|
| 118 | ;;CENTRAL ARKANSAS HCS (598)
|
---|
| 119 | ;;LONG BEACH HCS (600)
|
---|
| 120 | ;;CENTRAL ALABAMA HCS (619)
|
---|
| 121 | ;;HUDSON VALLEY HCS VAMC (620)
|
---|
| 122 | ;;TENNESSEE VALLEY HCS (626)
|
---|
| 123 | ;;PALO ALTO HCS (640)
|
---|
| 124 | ;;PITTSBURGH HCS (646)
|
---|
| 125 | ;;ROSEBURG HCS (653)
|
---|
| 126 | ;;SIERRA NEVADA HCS (654)
|
---|
| 127 | ;;SALT LAKE CITY HCS (660)
|
---|
| 128 | ;;PUGET SOUND HCS (663)
|
---|
| 129 | ;;SAN DIEGO HCS (664)
|
---|
| 130 | ;;SOUTH TEXAS HCS (671)
|
---|
| 131 | ;;CENTRAL TEXAS HCS (674)
|
---|
| 132 | ;;EASTERN KANSAS HCS (677)
|
---|
| 133 | ;;SOUTHERN ARIZONA VA HCS (678)
|
---|
| 134 | ;;CONNECTICUT HCS (689)
|
---|
| 135 | ;;EL PASO VA HCS (756)
|
---|
| 136 | ;;NEW YORK HHS (630)
|
---|
| 137 | ;
|
---|
| 138 | ; do not include
|
---|
| 139 | ;;EASTERN COLORADO HCS (554A4)
|
---|
| 140 | ;;SOUTHERN COLORADO HCS
|
---|
| 141 | ;;CENTRAL IOWA HCS (555)
|
---|
| 142 | ;;ILLIANA HCS (550)
|
---|
| 143 | ;;NORTHERN CALIFORNIA HCS (612)
|
---|
| 144 | ;;SOUTHERN NEVADA HCS (593)
|
---|
| 145 | ;;NORTHERN ARIZONA HCS (649)
|
---|
| 146 | ;
|
---|
| 147 | Q
|
---|
| 148 | ;
|
---|
| 149 | CHK ; -- check site updating required
|
---|
| 150 | ;
|
---|
| 151 | N STA,IEN,FLAG,CHK
|
---|
| 152 | ;
|
---|
| 153 | S STA=$$STA^XUAF4(+$G(DUZ(2)))
|
---|
| 154 | ;
|
---|
| 155 | I STA="" W !!,"DUZ not defined. Please log on." Q
|
---|
| 156 | ;
|
---|
| 157 | W @IOF,!,STA," ",$P($$NS^XUAF4(+DUZ(2)),U)
|
---|
| 158 | ;
|
---|
| 159 | S CHK=$$INST^XUMF333(+DUZ(2),.ERR)
|
---|
| 160 | I CHK=1 D
|
---|
| 161 | .W !!?5,"MISSING DATA - please fix",!
|
---|
| 162 | .S I=0 F S I=$O(ERR("FATAL",I)) Q:'I D
|
---|
| 163 | ..W !?5,ERR("FATAL",I)
|
---|
| 164 | I CHK'=1 W " is okay"
|
---|
| 165 | ;
|
---|
| 166 | S STA=STA_"A"
|
---|
| 167 | F S STA=$O(^DIC(4,"D",STA)) Q:STA="" D Q:$G(FLAG)
|
---|
| 168 | .I $E($$STA^XUAF4(DUZ(2)),1,3)'=$E(STA,1,3) S FLAG=1 Q
|
---|
| 169 | .S IEN=$$IEN^XUAF4(STA)
|
---|
| 170 | .S CHK=$$INST^XUMF333(+IEN,.ERR)
|
---|
| 171 | .W !!,STA," ",$P($$NS^XUAF4(+IEN),U)
|
---|
| 172 | .I CHK'=1 W " is okay" Q
|
---|
| 173 | .I CHK=1 D
|
---|
| 174 | ..W " is MISSING DATA - please fix",!
|
---|
| 175 | ..S I=0 F S I=$O(ERR("FATAL",I)) Q:'I D
|
---|
| 176 | ...W !?5,ERR("FATAL",I)
|
---|
| 177 | .K ERR
|
---|
| 178 | ;
|
---|
| 179 | ;
|
---|
| 180 | Q
|
---|
| 181 | ;
|
---|
| 182 | INST(IEN,ERR) ; -- validate Institution entry FALSE=valid
|
---|
| 183 | ;
|
---|
| 184 | Q:'$G(IEN) "IEN null"
|
---|
| 185 | ;
|
---|
| 186 | S CNT=1
|
---|
| 187 | ;
|
---|
| 188 | D ZERO(IEN,.ERR,.CNT)
|
---|
| 189 | D ADD1(IEN,.ERR,.CNT)
|
---|
| 190 | D ADD2(IEN,.ERR,.CNT)
|
---|
| 191 | D FTYP(IEN,.ERR,.CNT)
|
---|
| 192 | D ND99(IEN,.ERR,.CNT)
|
---|
| 193 | ;
|
---|
| 194 | Q $S($D(ERR("FATAL")):1,$D(ERR("WARNING")):2,1:0)
|
---|
| 195 | ;
|
---|
| 196 | ZERO(IEN,ERR,CNT) ; -- zero node
|
---|
| 197 | ;
|
---|
| 198 | N X
|
---|
| 199 | ;
|
---|
| 200 | S CNT=$G(CNT) S:'CNT CNT=1
|
---|
| 201 | ;
|
---|
| 202 | S X=$G(^DIC(4,+IEN,0))
|
---|
| 203 | I $P(X,U,2)="" D
|
---|
| 204 | .S ERR("FATAL",CNT)="STATE is missing",CNT=CNT+1
|
---|
| 205 | ;
|
---|
| 206 | Q
|
---|
| 207 | ;
|
---|
| 208 | ADD1(IEN,ERR,CNT) ; -- address node
|
---|
| 209 | ;
|
---|
| 210 | N X,I
|
---|
| 211 | ;
|
---|
| 212 | S CNT=$G(CNT) S:'CNT CNT=1
|
---|
| 213 | ;
|
---|
| 214 | S X=$G(^DIC(4,+IEN,1))
|
---|
| 215 | I $P(X,U,1)="" D
|
---|
| 216 | .S ERR("FATAL",CNT)="Physical address St. line 1 missing"
|
---|
| 217 | .S CNT=CNT+1
|
---|
| 218 | I $P(X,U,3)="" D
|
---|
| 219 | .S ERR("FATAL",CNT)="Physical address City missing"
|
---|
| 220 | .S CNT=CNT+1
|
---|
| 221 | I $P(X,U,4)="" D
|
---|
| 222 | .S ERR("FATAL",CNT)="Physical address ZIP missing"
|
---|
| 223 | .S CNT=CNT+1
|
---|
| 224 | I $P(X,U,2)="" D
|
---|
| 225 | .S ERR("WARNING",CNT)="Physical address St. line 2 missing"
|
---|
| 226 | .S CNT=CNT+1
|
---|
| 227 | ;
|
---|
| 228 | Q
|
---|
| 229 | ;
|
---|
| 230 | ADD2(IEN,ERR,CNT) ; -- mailing address node
|
---|
| 231 | ;
|
---|
| 232 | N X,I
|
---|
| 233 | ;
|
---|
| 234 | S CNT=$G(CNT) S:'CNT CNT=1
|
---|
| 235 | ;
|
---|
| 236 | S X=$G(^DIC(4,+IEN,4))
|
---|
| 237 | I $P(X,U,1)="" D
|
---|
| 238 | .S ERR("FATAL",CNT)="Mailing address St. line 1 missing"
|
---|
| 239 | .S CNT=CNT+1
|
---|
| 240 | I $P(X,U,3)="" D
|
---|
| 241 | .S ERR("FATAL",CNT)="Mailing address City missing"
|
---|
| 242 | .S CNT=CNT+1
|
---|
| 243 | I $P(X,U,4)="" D
|
---|
| 244 | .S ERR("FATAL",CNT)="Mailing address State missing"
|
---|
| 245 | .S CNT=CNT+1
|
---|
| 246 | I $P(X,U,5)="" D
|
---|
| 247 | .S ERR("FATAL",CNT)="Mailing address ZIP missing"
|
---|
| 248 | .S CNT=CNT+1
|
---|
| 249 | I $P(X,U,2)="" D
|
---|
| 250 | .S ERR("WARNING",CNT)="Mailing address St. line 2 missing"
|
---|
| 251 | .S CNT=CNT+1
|
---|
| 252 | ;
|
---|
| 253 | Q
|
---|
| 254 | ;
|
---|
| 255 | FTYP(IEN,ERR,CNT) ; -- facility type node
|
---|
| 256 | ;
|
---|
| 257 | N X
|
---|
| 258 | ;
|
---|
| 259 | S CNT=$G(CNT) S:'CNT CNT=1
|
---|
| 260 | ;
|
---|
| 261 | S X=$G(^DIC(4,+IEN,3))
|
---|
| 262 | I 'X D
|
---|
| 263 | .S ERR("FATAL",CNT)="FACILITY TYPE is missing",CNT=CNT+1
|
---|
| 264 | I $P($G(^DIC(4.1,+X,0)),U,4)'="N" D
|
---|
| 265 | .S ERR("FATAL",CNT)="FACILITY TYPE is not NATIONAL",CNT=CNT+1
|
---|
| 266 | ;
|
---|
| 267 | Q
|
---|
| 268 | ;
|
---|
| 269 | ND99(IEN,ERR,CNT) ; -- 99 node
|
---|
| 270 | ;
|
---|
| 271 | N X
|
---|
| 272 | ;
|
---|
| 273 | S CNT=$G(CNT) S:'CNT CNT=1
|
---|
| 274 | ;
|
---|
| 275 | S X=$G(^DIC(4,+IEN,99))
|
---|
| 276 | I $P(X,U,3)="" D
|
---|
| 277 | .S ERR("FATAL",CNT)="OFFICIAL VA NAME is missing",CNT=CNT+1
|
---|
| 278 | I ($P(X,U,4))&($E($$NS^XUAF4(+IEN),1,2)'="ZZ") D
|
---|
| 279 | .S ERR("FATAL",CNT)="Inactive facility NAME not ZZ'd",CNT=CNT+1
|
---|
| 280 | ;
|
---|
| 281 | Q
|
---|
| 282 | ;
|
---|
| 283 | C4 ; -- clean up Institution file
|
---|
| 284 | ;
|
---|
| 285 | D RIP,CFTYP,GET
|
---|
| 286 | ;
|
---|
| 287 | Q
|
---|
| 288 | ;
|
---|
| 289 | RIP ; -- remove from all inactive and local the associations visn & parent
|
---|
| 290 | ;
|
---|
| 291 | N IEN
|
---|
| 292 | ;
|
---|
| 293 | S IEN=0
|
---|
| 294 | F S IEN=$O(^DIC(4,IEN)) Q:'IEN D
|
---|
| 295 | .I $P($G(^DIC(4,+IEN,0)),U,11)="N",'$P($G(^DIC(4,+IEN,99)),U,4) Q
|
---|
| 296 | .D IFF^XUMF333(IEN)
|
---|
| 297 | ;
|
---|
| 298 | Q
|
---|
| 299 | ;
|
---|
| 300 | IFF(IEN) ; -- inactive facility remove VISN and parent association
|
---|
| 301 | ;
|
---|
| 302 | N FDA,IENS,XUMF
|
---|
| 303 | ;
|
---|
| 304 | S XUMF=1
|
---|
| 305 | ;
|
---|
| 306 | S IENS="1,"_IEN_","
|
---|
| 307 | S FDA(4.014,IENS,.01)="@"
|
---|
| 308 | S IENS="2,"_IEN_","
|
---|
| 309 | S FDA(4.014,IENS,.01)="@"
|
---|
| 310 | D FILE^DIE("E","FDA")
|
---|
| 311 | ;
|
---|
| 312 | Q
|
---|
| 313 | ;
|
---|
| 314 | CFTYP ; - clean 4.1
|
---|
| 315 | ;
|
---|
| 316 | N FDA,IENS,XUMF,IEN
|
---|
| 317 | ;
|
---|
| 318 | M ^TMP("XUMF 4.1",$J)=^DIC(4.1)
|
---|
| 319 | ;
|
---|
| 320 | S XUMF=1
|
---|
| 321 | ;
|
---|
| 322 | S IEN=0
|
---|
| 323 | F S IEN=$O(^DIC(4.1,IEN)) Q:'IEN D
|
---|
| 324 | .S IENS=IEN_","
|
---|
| 325 | .K FDA
|
---|
| 326 | .S FDA(4.1,IENS,.01)="@"
|
---|
| 327 | .D FILE^DIE("E","FDA")
|
---|
| 328 | ;
|
---|
| 329 | S IEN=0
|
---|
| 330 | F S IEN=$O(^DIC(4,IEN)) Q:'IEN D
|
---|
| 331 | .S IENS=IEN_","
|
---|
| 332 | .K FDA
|
---|
| 333 | .S FDA(4,IENS,13)="@"
|
---|
| 334 | .D FILE^DIE("E","FDA")
|
---|
| 335 | ;
|
---|
| 336 | Q
|
---|
| 337 | ;
|
---|
| 338 | GET ; -- get Institution Master File (IMF) and Facility Types
|
---|
| 339 | ;
|
---|
| 340 | W !!,"...getting Facility Types - wait please 5 min..."
|
---|
| 341 | D LOAD^XUMF(4.1)
|
---|
| 342 | W !!,"...getting Institutions - wait please 10 min..."
|
---|
| 343 | D LOAD^XUMF(4)
|
---|
| 344 | ;
|
---|
| 345 | Q
|
---|
| 346 | ;
|
---|
| 347 | SCN(IEN,XUMF) ; screen out HCS entries
|
---|
| 348 | ;
|
---|
| 349 | ; IEN = Institution Internal Entry Number to check
|
---|
| 350 | ;
|
---|
| 351 | S XUMF=$G(XUMF) Q:XUMF 1
|
---|
| 352 | ;
|
---|
| 353 | I $O(^DIC(4.1,"B","HCS",0))=+$G(^DIC(4,+IEN,3)) Q 0
|
---|
| 354 | ;
|
---|
| 355 | Q 1
|
---|
| 356 | ;
|
---|