| [613] | 1 | IMRIPST1 ;HCIOFO/FT-ICR POST-INIT ROUTINE ; 11/17/97  10:08 | 
|---|
|  | 2 | ;;2.1;IMMUNOLOGY CASE REGISTRY;;Feb 09, 1998 | 
|---|
|  | 3 | DQ ; Queue pharmacy archive date search | 
|---|
|  | 4 | K ZTUCI,ZTDTH,ZTIO,ZTSAVE | 
|---|
|  | 5 | S ZTRTN="RXARC^IMRIPST1" | 
|---|
|  | 6 | S ZTDTH=$$NOW^XLFDT(),ZTIO="",ZTDESC="ICR-RX ARCHIVE DATE SEARCH" | 
|---|
|  | 7 | D ^%ZTLOAD | 
|---|
|  | 8 | K ZTUCI,ZTDTH,ZTIO,ZTSAVE | 
|---|
|  | 9 | Q | 
|---|
|  | 10 | RXARC ; Check for outpatient pharmacy archive date and store in File 158.9 | 
|---|
|  | 11 | S (IMRFN,IMRSAC)=0 | 
|---|
|  | 12 | F  S IMRFN=$O(^IMR(158,IMRFN)) Q:IMRFN'>0  D | 
|---|
|  | 13 | .S X=+^IMR(158,IMRFN,0) ;get encoded patient id | 
|---|
|  | 14 | .D XOR^IMRXOR Q:'$D(^DPT(X,0))  ;decode patient id | 
|---|
|  | 15 | .S IMRDFN=X ;use patient's dfn | 
|---|
|  | 16 | .S IMRACF=$$RXARC^IMRUTL(IMRDFN) ;check archive date for patient | 
|---|
|  | 17 | .S:IMRACF>IMRSAC IMRSAC=IMRACF ;save latest archive date | 
|---|
|  | 18 | .Q | 
|---|
|  | 19 | ;if archive date is found, then store in File 158.9 | 
|---|
|  | 20 | I IMRSAC>0 S DA=$O(^IMR(158.9,0)) I DA>0 D | 
|---|
|  | 21 | .S IMRSAC=IMRSAC\1 | 
|---|
|  | 22 | .S DIE="^IMR(158.9,",DR="99///"_IMRSAC | 
|---|
|  | 23 | .D ^DIE | 
|---|
|  | 24 | .Q | 
|---|
|  | 25 | K DA,DIE,DR,IMRDFN,IMRFN,IMRSAC | 
|---|
|  | 26 | Q | 
|---|
|  | 27 | AAAD ; Find all File 158 records where the AGE AT AIDS DIAGNOSIS (#15.8) | 
|---|
|  | 28 | ; is a negative value. Calculate the correct value or change to null. | 
|---|
|  | 29 | S IMRNODE=$G(^IMR(158,IMRX1,2)) | 
|---|
|  | 30 | Q:$P(IMRNODE,U,16)>0 | 
|---|
|  | 31 | S $P(IMRNODE,U,16)="" | 
|---|
|  | 32 | S X2=$P($G(^IMR(158,IMRX1,0)),U,35) | 
|---|
|  | 33 | I X2'>0 S X2=$P($G(^IMR(158,IMRX1,0)),U,23) | 
|---|
|  | 34 | I IMRDOB,X2 S IMRAAAD=$$AGE^IMRUTL(IMRDOB,X2) | 
|---|
|  | 35 | I $G(IMRAAAD) S $P(IMRNODE,U,16)=IMRAAAD | 
|---|
|  | 36 | S ^IMR(158,IMRX1,2)=IMRNODE | 
|---|
|  | 37 | Q | 
|---|