1 | LEXPLIA ; ISL Problem List In-Active ICD Codes ; 09-23-96
|
---|
2 | ;;2.0;LEXICON UTILITY;;Sep 23, 1996
|
---|
3 | ;
|
---|
4 | ; Fixes ICD pointers in the Problem List to In-Active ICD Codes
|
---|
5 | ; or 6 Digit ICD Codes where the Lexicon pointer is greater
|
---|
6 | ; than 2 (source of pointer is the Lexicon) to a valid ICD and
|
---|
7 | ; active ICD Code.
|
---|
8 | ;
|
---|
9 | ; EN^LEXPLIA Entry point to fix in-active ICD
|
---|
10 | ;
|
---|
11 | ; EN2^LEXPLIA(X) Entry point to fix in-active ICD and
|
---|
12 | ; return the number of in-active codes fixed
|
---|
13 | ;
|
---|
14 | ; EN3^LEXPLIA Entry point to to Task EN^LEXPLIA
|
---|
15 | ;
|
---|
16 | Q
|
---|
17 | EN ; Entry to fix exact match
|
---|
18 | N LEXCNT S LEXCNT=0 D EM S:$D(ZTQUEUED) ZTREQ="@" Q
|
---|
19 | EN2(X) ; Entry to fix exact match and return # fixed
|
---|
20 | N LEXCNT S LEXCNT=0 D EM S X=LEXCNT Q X
|
---|
21 | EN3 ; Task EN^LEXPLIA
|
---|
22 | S ZTRTN="EN^LEXPLIA",ZTDESC="In-Active ICD Codes in Prob List # 9000011",ZTIO="",ZTDTH=$H D ^%ZTLOAD,HOME^%ZIS K Y,ZTSK,ZTDESC,ZTDTH,ZTIO,ZTRTN Q
|
---|
23 | EM ; Exact match
|
---|
24 | N DA,DIC,DIE,DR,DTOUT,LEXAT,LEXICD,LEXIIA,LEXISO,LEXLEX,LEXNIC,LEXNIP
|
---|
25 | S DA=0 F S DA=$O(^AUPNPROB(DA)) Q:+DA=0 D
|
---|
26 | . S LEXICD=+($P($G(^AUPNPROB(DA,0)),"^",1)) Q:LEXICD'>0 S LEXIIA=+($P($G(^ICD9(LEXICD,0)),"^",9)),LEXISO=$P($G(^ICD9(LEXICD,0)),"^",1) Q:'$L(LEXISO) S LEXLEX=+($P($G(^AUPNPROB(DA,1)),"^",1)) Q:LEXLEX'>2
|
---|
27 | . I $L($P(LEXISO,".",2))>2!(LEXIIA=1) S LEXNIC=$$ICDONE^LEXU(+LEXLEX) Q:LEXNIC="" S LEXNIP=0 S:$L(LEXNIC) LEXNIP=+($O(^ICD9("AB",(LEXNIC_" "),0))) Q:LEXNIP=0 Q:+($P($G(^ICD9(LEXNIP,0)),"^",9))=1 D EDIT
|
---|
28 | Q
|
---|
29 | EDIT ; Edit Problem
|
---|
30 | N LEXAT S LEXAT=0 S DA=+($G(DA)) Q:'$D(^AUPNPROB(DA,0)) S LEXNIP=+($G(LEXNIP)) Q:'$D(^ICD9(LEXNIP,0)) S (DIE,DIC)="^AUPNPROB(",DR=".01////^S X=LEXNIP"
|
---|
31 | ED2 ; Record is Locked
|
---|
32 | L +^AUPNPROB(DA):1 I '$T,LEXAT'>5 S LEXAT=LEXAT+1 H 2 G ED2
|
---|
33 | G:LEXAT>5 EDQ D ^DIE L -^AUPNPROB(DA)
|
---|
34 | EDQ ; Edit Quit
|
---|
35 | I $P($G(^AUPNPROB(DA,0)),"^",1)=LEXNIP S LEXCNT=+($G(LEXCNT))+1
|
---|
36 | Q
|
---|