1 | PXRMCSSC ; SLC/PKR - Routines for taxonomy code set update. ;04/10/2003
|
---|
2 | ;;2.0;CLINICAL REMINDERS;;Feb 04, 2005
|
---|
3 | ;
|
---|
4 | ;============================================================
|
---|
5 | SELCODE(FILENUM,TAXIEN,LC,TAXMSG) ;Create the message for selectable
|
---|
6 | ;codes. Check for codes that are currently inactive or will be
|
---|
7 | ;inactive within the next 180 days.
|
---|
8 | N CODE,CPTCLST,CPTFLST,DT6M,ICD9CLST,ICD9FLST,IEN,ILC,MSGARR,NODE,STATUS
|
---|
9 | ;Go through the selectable codes making an ordered list.
|
---|
10 | I FILENUM'=80,FILENUM'=81 Q
|
---|
11 | S DT6M=$$DT6M^PXRMCSU(DT)
|
---|
12 | S ILC=0
|
---|
13 | I FILENUM=80 D
|
---|
14 | . S IEN=0
|
---|
15 | . F S IEN=$O(^PXD(811.2,TAXIEN,"SDX","B",IEN)) Q:IEN="" D
|
---|
16 | .. S CODE=$$CODEC^ICDCODE(IEN)
|
---|
17 | .. S STATUS=+$$STATCHK^ICDAPIU(CODE,DT)
|
---|
18 | .. I 'STATUS S ICD9CLST(CODE_" ")=CODE
|
---|
19 | .. I STATUS D
|
---|
20 | ... S STATUS=+$$STATCHK^ICDAPIU(CODE,DT6M)
|
---|
21 | ... I 'STATUS S ICD9FLST(CODE_" ")=CODE
|
---|
22 | I FILENUM=81 D
|
---|
23 | . S IEN=0
|
---|
24 | . F S IEN=$O(^PXD(811.2,TAXIEN,"SPR","B",IEN)) Q:IEN="" D
|
---|
25 | .. S CODE=$$CODEC^ICPTCOD(IEN)
|
---|
26 | .. S STATUS=+$$STATCHK^ICPTAPIU(CODE,DT)
|
---|
27 | .. I 'STATUS S CPTCLST(CODE_" ")=CODE
|
---|
28 | I $D(ICD9CLST) D
|
---|
29 | . S IEN=""
|
---|
30 | . F S IEN=$O(ICD9CLST(IEN)) Q:IEN="" D
|
---|
31 | .. S CODE=ICD9CLST(IEN),ILC=ILC+1
|
---|
32 | .. S MSGARR(ILC)="Selectable ICD9 code "_CODE_" is inactive."
|
---|
33 | I $D(ICD9FLST) D
|
---|
34 | . S IEN=""
|
---|
35 | . F S IEN=$O(ICD9FLST(IEN)) Q:IEN="" D
|
---|
36 | .. S CODE=ICD9FLST(IEN),ILC=ILC+1
|
---|
37 | .. S MSGARR(ILC)="Selectable ICD9 code "_CODE_" will be inactive within 180 days."
|
---|
38 | I $D(CPTCLST) D
|
---|
39 | . S IEN=""
|
---|
40 | . F S IEN=$O(CPTCLST(IEN)) Q:IEN="" D
|
---|
41 | .. S CODE=CPTCLST(IEN),ILC=ILC+1
|
---|
42 | .. S MSGARR(ILC)="Selectable CPT code "_CODE_" is inactive."
|
---|
43 | I $D(CPTFLST) D
|
---|
44 | . S IEN=""
|
---|
45 | . F S IEN=$O(CPTFLST(IEN)) Q:IEN="" D
|
---|
46 | .. S CODE=CPTFLST(IEN),ILC=ILC+1
|
---|
47 | .. S MSGARR(ILC)="Selectable CPT code "_CODE_" will be inactive with 180 days."
|
---|
48 | I ILC>0 D
|
---|
49 | . S ILC=ILC+1,MSGARR(ILC)=" ",TAXMSG=1
|
---|
50 | . D ADDTMSG^PXRMCSTX(.LC,.MSGARR)
|
---|
51 | Q
|
---|
52 | ;
|
---|