[613] | 1 | QACPRE17 ;ALB/ERC - PRE-INSTALL FOR PATCH QAC*2*17 ;3/6/02
|
---|
| 2 | ;;2.0;Patient Representative:**17**;07/25/1995
|
---|
| 3 | ;
|
---|
| 4 | ;This routine will perform the de-activation of the existing Issue
|
---|
| 5 | ;Codes from file 745.2. Allowable Issue Codes will now be restricted
|
---|
| 6 | ;to those being imported with this patch. Two existing codes, ED01 and
|
---|
| 7 | ;ED02 will be retained.
|
---|
| 8 | EN ;
|
---|
| 9 | D INACT
|
---|
| 10 | D ED
|
---|
| 11 | D CSS
|
---|
| 12 | D RENAME
|
---|
| 13 | Q
|
---|
| 14 | INACT ;inactivate current codes
|
---|
| 15 | N QACQ
|
---|
| 16 | D INSTALL^QACENV17
|
---|
| 17 | Q:$G(QACQ)=1
|
---|
| 18 | N QAC,QACC,QACFDA,QACNODE
|
---|
| 19 | S QAC=0
|
---|
| 20 | F S QAC=$O(^QA(745.2,QAC)) Q:QAC'>0 D
|
---|
| 21 | . Q:'$D(^QA(745.2,QAC,0))
|
---|
| 22 | . S QACNODE=^QA(745.2,QAC,0)
|
---|
| 23 | . ;ED01 and ED02 will still be in use
|
---|
| 24 | . Q:$P(QACNODE,U)="ED01"!($P(QACNODE,U)="ED02")
|
---|
| 25 | . I $P(QACNODE,U,6)']"" D
|
---|
| 26 | . . S QACFDA(745.2,QAC_",",4)=1
|
---|
| 27 | . . S QACFDA(745.2,QAC_",",6)=DT
|
---|
| 28 | . . D FILE^DIE(,"QACFDA","QACERR")
|
---|
| 29 | Q
|
---|
| 30 | ED ;check to see if the ED01 and ED02 entries are current. These two
|
---|
| 31 | ;codes are already in existence, and are being retained
|
---|
| 32 | ;if these codes are not in the file, add them
|
---|
| 33 | N QACC,QACD,QACN,QACNM,QACNN,QACNNN
|
---|
| 34 | S QACD=0
|
---|
| 35 | F QACC="ED01","ED02" D
|
---|
| 36 | . S QACD=$O(^QA(745.2,"B",QACC,QACD)) Q:QACC']"" D
|
---|
| 37 | . . I '$D(^QA(745.2,QACD,0)) D DIC Q
|
---|
| 38 | . . S QACN=$P(^QA(745.2,QACD,0),U,3)
|
---|
| 39 | . . S QACNN=$TR(QACN," ")
|
---|
| 40 | . . S QACNNN=$E($$UP^XLFSTR(QACN),1,60)
|
---|
| 41 | . . S QACNM=$S(QACC="ED01":"DIAGNOSIS / CARE / PREVENTION",1:"PURPOSE/SIDE EFFECTS OF MEDICATION")
|
---|
| 42 | . . I $G(QACNM)'=QACN,($G(QACNM)'=QACNNN),($G(QACNM)'=(QACNNN)) D ADD
|
---|
| 43 | Q
|
---|
| 44 | RENAME ;check for duplicates. If there are any, rename them
|
---|
| 45 | N QACQ
|
---|
| 46 | D INSTALL^QACENV17
|
---|
| 47 | Q:$G(QACQ)=1
|
---|
| 48 | N QACE,QACIEN,QACODE,QACPRE,QAX
|
---|
| 49 | S QACIEN=0
|
---|
| 50 | S QAX=""
|
---|
| 51 | S QACODE="^SC^AC^OP^PR^EM^PC^CO^TR^FI^RI^LL^EV^RG^IF^CP^"
|
---|
| 52 | F S QAX=$O(^QA(745.2,"B",QAX)) Q:QAX']"" D
|
---|
| 53 | . S QACIEN=$O(^QA(745.2,"B",QAX,QACIEN)) Q:QACIEN'>0 D
|
---|
| 54 | . . S QACE="^"_$E(QAX,1,2)_"^"
|
---|
| 55 | . . I QACODE[QACE D
|
---|
| 56 | . . . S QACPRE=$E(QAX,1,2)
|
---|
| 57 | . . . D CODE(QAX,QACPRE,QACIEN)
|
---|
| 58 | Q
|
---|
| 59 | CODE(QAC,QACPRE,QACIEN) ;check for specific code, if a duplicate, call DIE
|
---|
| 60 | N QACQUIT,QACR,QACTXT,QAXX
|
---|
| 61 | Q:$G(QAC)']""
|
---|
| 62 | F QAXX=1:1 S QACTXT=$P($T(@QACPRE+QAXX),";;",2) Q:$G(QACTXT)']""!($G(QACQUIT)=1) D
|
---|
| 63 | . I $G(QAC)=$G(QACTXT) D
|
---|
| 64 | . . S QACIEN(QACIEN)=""
|
---|
| 65 | . . S QACQUIT=1
|
---|
| 66 | I $O(QACIEN(0))'>0 D ZZ
|
---|
| 67 | Q
|
---|
| 68 | ZZ ;rename duplicate code entries (add "Z" to beginning of code)
|
---|
| 69 | N DA,DIK,QACDR,QACN,QACNN
|
---|
| 70 | S QACN=0
|
---|
| 71 | S DIK="^QA(745.2,"
|
---|
| 72 | F S QACN=$O(QACIEN(QACN)) Q:QACN'>0 D
|
---|
| 73 | . S QACNN=$P(^QA(745.2,QACN,0),U)
|
---|
| 74 | . Q:$G(QACNN)']""
|
---|
| 75 | . S QACDR="Z"_QACNN
|
---|
| 76 | . S $P(^QA(745.2,QACN,0),U)=$G(QACDR)
|
---|
| 77 | . Q:$G(QACDR)']""!('$D(^QA(745.2,QACN,0)))
|
---|
| 78 | . S DA=QACN
|
---|
| 79 | . S DIK(1)=".01^B^BU"
|
---|
| 80 | . D EN^DIK
|
---|
| 81 | . K ^QA(745.2,"B",QACNN,QACN)
|
---|
| 82 | . K ^QA(745.2,"BU",QACNN,QACN)
|
---|
| 83 | Q
|
---|
| 84 | ADD ;update entries ED01 and ED02
|
---|
| 85 | N DA,DIE,DR
|
---|
| 86 | S DIE="^QA(745.2,",DA=QACD
|
---|
| 87 | S DR="2///^S X=$S(QACC=""ED01"":""Diagnosis / care / prevention"",1:""Purpose/side effects of medication"");4///^S X=""N"";6///@;7///^S X=7"
|
---|
| 88 | D ^DIE
|
---|
| 89 | Q
|
---|
| 90 | DIC ;if ED01 or ED02 not in file, add it
|
---|
| 91 | N DA,DIC,Y
|
---|
| 92 | S DIC="^QA(745.2,",DA=QACD
|
---|
| 93 | D ^DIC
|
---|
| 94 | I +Y>0 S DA=+Y
|
---|
| 95 | D ADD
|
---|
| 96 | Q
|
---|
| 97 | SC ;
|
---|
| 98 | ;;SC01
|
---|
| 99 | ;;SC02
|
---|
| 100 | Q
|
---|
| 101 | AC ;
|
---|
| 102 | ;;AC01
|
---|
| 103 | ;;AC02
|
---|
| 104 | ;;AC03
|
---|
| 105 | ;;AC04
|
---|
| 106 | ;;AC05
|
---|
| 107 | ;;AC06
|
---|
| 108 | ;;AC07
|
---|
| 109 | ;;AC08
|
---|
| 110 | ;;AC09
|
---|
| 111 | ;;AC10
|
---|
| 112 | ;;AC11
|
---|
| 113 | ;;AC12
|
---|
| 114 | Q
|
---|
| 115 | OP ;
|
---|
| 116 | ;;OP01
|
---|
| 117 | ;;OP02
|
---|
| 118 | Q
|
---|
| 119 | PR ;
|
---|
| 120 | ;;PR01
|
---|
| 121 | ;;PR02
|
---|
| 122 | ;;PR03
|
---|
| 123 | ;;PR04
|
---|
| 124 | Q
|
---|
| 125 | EM ;
|
---|
| 126 | ;;EM01
|
---|
| 127 | ;;EM02
|
---|
| 128 | ;;EM03
|
---|
| 129 | Q
|
---|
| 130 | PC ;
|
---|
| 131 | ;;PC01
|
---|
| 132 | ;;PC02
|
---|
| 133 | Q
|
---|
| 134 | CO ;
|
---|
| 135 | ;;CO01
|
---|
| 136 | ;;CO02
|
---|
| 137 | ;;CO03
|
---|
| 138 | ;;CO04
|
---|
| 139 | Q
|
---|
| 140 | TR ;
|
---|
| 141 | ;;TR01
|
---|
| 142 | Q
|
---|
| 143 | FI ;
|
---|
| 144 | ;;FI01
|
---|
| 145 | Q
|
---|
| 146 | RI ;
|
---|
| 147 | ;;RI01
|
---|
| 148 | ;;RI02
|
---|
| 149 | ;;RI03
|
---|
| 150 | ;;RI04
|
---|
| 151 | ;;RI05
|
---|
| 152 | Q
|
---|
| 153 | RE ;
|
---|
| 154 | ;;RE01
|
---|
| 155 | Q
|
---|
| 156 | LL ;
|
---|
| 157 | ;;LL01
|
---|
| 158 | ;;LL02
|
---|
| 159 | ;;LL03
|
---|
| 160 | ;;LL04
|
---|
| 161 | Q
|
---|
| 162 | EV ;
|
---|
| 163 | ;;EV01
|
---|
| 164 | ;;EV02
|
---|
| 165 | ;;EV03
|
---|
| 166 | Q
|
---|
| 167 | RG ;
|
---|
| 168 | ;;RG01
|
---|
| 169 | ;;RG02
|
---|
| 170 | ;;RG03
|
---|
| 171 | Q
|
---|
| 172 | IF ;
|
---|
| 173 | ;;IF01
|
---|
| 174 | ;;IF02
|
---|
| 175 | ;;IF04
|
---|
| 176 | ;;IF05
|
---|
| 177 | ;;IF06
|
---|
| 178 | ;;IF07
|
---|
| 179 | ;;IF08
|
---|
| 180 | ;;IF09
|
---|
| 181 | ;;IF10
|
---|
| 182 | Q
|
---|
| 183 | CP ;
|
---|
| 184 | ;;CP01
|
---|
| 185 | Q
|
---|
| 186 | CSS ;edit any Name fields that differ from the exported version, as FM will
|
---|
| 187 | ;create new entries is they are not the same
|
---|
| 188 | N DA,DIE,DR,QAC,QACNAME,QACZERO,X
|
---|
| 189 | S QACNAME="Staff Courtesy^Access/Timeliness^One Provider^Decisions/Preferences^Emotional Needs^Coordination of Care^Patient Education^Family Involvement^Physical Comfort^Transitions"
|
---|
| 190 | S QAC=0
|
---|
| 191 | F S QAC=$O(^QA(745.6,QAC)) Q:QAC'>0!(QAC>10) D
|
---|
| 192 | . S QACZERO=^QA(745.6,QAC,0)
|
---|
| 193 | . I QAC'=$P(QACZERO,U) S QAC(QAC)=""
|
---|
| 194 | . I $P(QACZERO,U,2)'=$P(QACNAME,U,QAC) S QAC(QAC)=""
|
---|
| 195 | Q:$O(QAC(0))'>0
|
---|
| 196 | S QAC=0
|
---|
| 197 | S DIE="^QA(745.6,"
|
---|
| 198 | F S QAC=$O(QAC(QAC)) Q:QAC'>0 D
|
---|
| 199 | . S DA=QAC,DR=".01///^S X=QAC;1///^S X=$P(QACNAME,U,QAC)"
|
---|
| 200 | . D ^DIE
|
---|
| 201 | Q
|
---|