Produced by Araxis Merge on 12/7/2017 6:27:02 PM Eastern Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
# | Location | File | Last Modified |
---|---|---|---|
1 | OSCIF_CPEE_Sprint_1 and 2.zip\Build_4_Sprint_1\CPE005-043_code.zip | 043-CHMXPU04 -2nd dev form Developer Form.docx | Thu Oct 5 22:43:56 2017 UTC |
2 | OSCIF_CPEE_Sprint_1 and 2.zip\Build_4_Sprint_1\CPE005-043_code.zip | 043-CHMXPU04 -2nd dev form Developer Form.docx | Thu Dec 7 18:00:48 2017 UTC |
Description | Between Files 1 and 2 |
|
---|---|---|
Text Blocks | Lines | |
Unchanged | 1 | 30 |
Changed | 0 | 0 |
Inserted | 1 | 1 |
Removed | 0 | 0 |
Whitespace | |
---|---|
Character case | Differences in character case are significant |
Line endings | Differences in line endings (CR and LF characters) are ignored |
CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
1 | DNS | |||||
2 | Routine Na me: ___ _ ____ | |||||
3 | Developer Name(s): _____Hayes Murdock, Shavkat Sh amukhamedo v | |||||
4 | Associated User Stor y/Stories: ____CP E005-043__ __ | |||||
5 | Current ve rsion (Por tions that are added to, modif ied or del eted [Matc h up with New Versio n section) | |||||
6 | CHMXPU04 ; CVA/DTP;X1 2 837 READ EDIT UTIL ITY #4 (HE ALTH CARE CLAIMS);03 /10/98 1:5 0 PM ;;1.0 ;CHAMPVA S YSTEM;;JUL Y 4, 1990; Build 2 ;; CPTS #1137 4 BY DTP ( 18-DEC-96) ;;SPECIAL EDITS FOR 837 RECOR D READ AT CLAIM LEVE L ;;CALLED INDIRECTL Y BY GENRE AD^CHMXPU0 1+15 (CHED RTN IS DEF INED), CHM XPU07 ;;AJ M DEV5022 (04-JUN-08 ) ;;Method ical - Cha nged CHHCQ LF= TO CHH CQLF[ in o rder to ha ndle ICD-1 0 or ICD-9 qualifier ;;ICD-10 RCS -lg Do n't insert decimal p oint into ICD-10 Pro cedure Cod es "BR" & "BQ" HCCQ check for ICD9 codes 03/08/13 ;;ICD-10 R CS -lg add ed "BBQ":" i" to $CAS E statemen t in case BBQ not in file 03/2 5/13 ;;ICD -10 RCS -l g Bug 28 E code deci mal point placed aft er the 4th character vice afte r the 3rd character. HCCQ ABF 6/24/14 ;; 2/1/2016 DLB MERGED UPDATES T O THE FORM AT ROUTINE FRO ICD-9 DIAGNOSIS CODES. ;; CPE005-033 GEF - Ori ginal PDI is not val id (Freq c ode = 8) ; ;CPE005-03 8 GEF - Or iginal PDI is valid but not pr ocessed (F req code=8 ) ;HCCDQ ;VALIDAT ION OF HEA LTH CARE C ODE QUALIF IER D DEBU G^CHMXDR01 ("CHMXPU04 : HCCDQ CH FLD(CHFLPN )= ",CHFLD (CHFLPN)) Q:'$D(CHFL D(CHFLPN)) Q:CHFLD(C HFLPN)="" I '$D(^CHM XDIC(74120 1.1,"B",CH FLD(CHFLPN ))) D ;G HCCDQ1 . S CHHCQLF=" ",CHSUB1=4 9,CHSUB2=1 D SETDTA . D DEBUG^ CHMXDR01(" CHMXPU04: HCCDQ2 CHF LD(CHFLPN) = ",CHFLD( CHFLPN)) . S CHEDRJ= "E100"_$CA SE(CHFLD(C HFLPN),"AB K":"c","AB J":"d","AB R":"e","AB N":"f","AB F":"g","BB R":"h","BB Q":"i",:"" ) ; ICD-10 RCS -lg a dded "BBQ" :i . D RC DERR^CHMXP U01:CHEDRJ '="E100"HC CDQ1 Q ; ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;; ; TH E HEALTH C ARE CODE Q UALIFIER V ALIDATION IS USED FO R BOTH THE ICD-9 AND ICD-10 CO DES. ; THE USE OF TH E "[" (CON TAINS) VS THE "=" (E QUALS) ALL OWS THE TE STING OF T HE ; "BK, BJ,BF,etc" AND "ABK, ABJ,ABF,et c" USING T HIS SAME F UNCTION. ; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;; ;HCCDV ;VALID ATION OF H EALTH CARE CODE (FIL E LOOKUP D EPENDS UPO N HC QUALI FIER) Q:'$ D(CHFLD(CH FLPN)) ; Q :CHFLD(CHF LPN)="" D DEBUG^CHM XDR01("CHM XPU04: HCC DV ENTRY: CHFLD(CHFL PN)=",CHFL D(CHFLPN)) S CHDIF=3 ,CHEND=1 D GTHCQLF I $D(CHEDPR B) S CHPRB ="E40ZA" G HCCDV1 ;F OLLOWING W AS FE EDIT E40ZD - A JM DEV5022 Q:CHHCQLF ="" I CHF LD(CHFLPN) ="" S CHSU B1=49,CHSU B2=1,CHEDR J="NONE" D SETDTA G HCCDV1 U 0 W:$$ENVIR ^CHTFLIB'= "LIVE" !," CHMXPU04: HCCDV: GT HCQLF()=", CHHCQLF," $D(^CHMXDI C(741201.1 ,""B"",",C HHCQLF,")) = ",$D(^CH MXDIC(7412 01.1,"B",C HHCQLF)) G :'$D(^CHMX DIC(741201 .1,"B",CHH CQLF)) HCC DV1 I CHHC QLF["BJ" D G HCCDV1 .S JZ=3 D STFRMT ; SET U P THE FORM ATTING FOR THE CODES .I '$D(^C HMICDX("C" ,CHFLD(CHF LPN))) S C HSUB1=49,C HSUB2=1,CH EDRJ="E40Z B" D SETDT A .S CHSUB 1=42,CHSUB 2=1 D SETD TA Q I CHH CQLF["BK" D G HCCDV 1 .S JZ=3 D STFRMT . I '$D(^CHM ICDX("C",C HFLD(CHFLP N))) S CHS UB1=49,CHS UB2=1,CHED RJ="E401a" D SETDTA .S ZZTOS=$ P(^CHMXCLE (CHCLEI,0) ,"^",4) .I ZZTOS'="" I ($P(^CH MXCLE(CHCL EI,0),"^", 5)="A")&($ D(^CHMXDIC (741201.03 ,"D",1,ZZT OS)))&($D( CHDTA(40,1 ,0))) S CH EDRJ="E401 b",CHSUB1= 49,CHSUB2= 1 D SETDTA .S CHSUB1 =40,CHSUB2 =1 D SETDT A K ZZTOS Q I CHHCQL F["BF" D G HCCDV1 . S JZ=3 D S TFRMT .I ' $D(^CHMICD X("C",CHFL D(CHFLPN)) ) S CHSUB1 =49,CHSUB2 =1,CHEDRJ= "E40J1" D SETDTA .S CHSUB1=40, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BN" D G HCCDV1 .S JZ=3 D STF RMT .I '$D (^CHMICDX( "C",CHFLD( CHFLPN))) S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="E 40ZC" D SE TDTA .S CH SUB1=40,CH SUB2=1 D S ETDTA Q I CHHCQLF["Z Z" D G HC CDV1 .S JZ =3 D STFRM T .I '$D(^ CHMICDX("C ",CHFLD(CH FLPN))) S CHSUB1=49, CHSUB2=1,C HEDRJ="E40 J1" D SETD TA .S CHSU B1=46,CHSU B2=1 D SET DTA Q I CH HCQLF["BR" D G HCCD V1 .S JZ=2 D:CHHCQLF ="BR" STFR MT ;ICD-1 0 RCS -lg .I '$D(^CH MSERV("BE" ,CHFLD(CHF LPN)_"Z")) S CHSUB1= 49,CHSUB2= 1,CHEDRJ=" E411a" D S ETDTA .S Z ZTOS=$P(^C HMXCLE(CHC LEI,0),"^" ,4) .;FOLL OWING WAS FE EDIT E4 11b - AJM DEV5022 .I ZZTOS'="" I ($P(^CH MXCLE(CHCL EI,0),"^", 5)="A")&($ D(^CHMXDIC (741201.03 ,"D",1,ZZT OS)))&($D( CHDTA(41,1 ,0))) S CH EDRJ="NONE ",CHSUB1=4 9,CHSUB2=1 D SETDTA .S CHSUB1= 41,CHSUB2= 1 D SETDTA K ZZTOS Q I CHHCQLF ["BP" D G HCCDV1 .I ('$D(^CHM SERV("BC", CHFLD(CHFL PN))))&('$ D(^CHMSERV ("BF",CHFL D(CHFLPN)_ "Z"))) S C HSUB1=49,C HSUB2=1,CH EDRJ="E411 a" D SETDT A .S ZZTOS =$P(^CHMXC LE(CHCLEI, 0),"^",4) .;FOLLOWIN G WAS FE E DIT E411b - AJM DEV5 022 .I ZZT OS'="" I ( $P(^CHMXCL E(CHCLEI,0 ),"^",5)=" A")&($D(^C HMXDIC(741 201.03,"D" ,1,ZZTOS)) )&($D(CHDT A(41,1,0)) ) S CHEDRJ ="NONE",CH SUB1=49,CH SUB2=1 D S ETDTA .S C HSUB1=41,C HSUB2=1 D SETDTA K Z ZTOS Q I C HHCQLF["BQ " D G HCC DV1 .S JZ= 2 D:CHHCQL F="BQ" STF RMT ; ICD- 10 RCS lg .I '$D(^CH MSERV("BE" ,CHFLD(CHF LPN)_"Z")) S CHSUB1= 49,CHSUB2= 1,CHEDRJ=" E41J1" D S ETDTA .S C HSUB1=41,C HSUB2=1 D SETDTA Q I CHHCQLF[" BO" D G H CCDV1 .I ( '$D(^CHMSE RV("BC",CH FLD(CHFLPN ))))&('$D( ^CHMSERV(" BF",CHFLD( CHFLPN)_"Z "))) S CHS UB1=49,CHS UB2=1,CHED RJ="E41J1" D SETDTA .S CHSUB1= 41,CHSUB2= 1 D SETDTA Q ;Method ical-5010 Change-Beg in - Added code for PR qualifi er check - Patient R eason for Visit I CH HCQLF["PR" D G HCCD V1 .S JZ=3 D STFRMT .I '$D(^CH MICDX("C", CHFLD(CHFL PN))) S CH SUB1=49,CH SUB2=1,CHE DRJ="E46b" D SETDTA .S CHSUB1= 46,CHSUB2= 1 D SETDTA Q ;Method ical-5010 Change-End I CHHCQLF ["BE" D G HCCDV1 .I '$D(^CHMX DIC(741201 .4,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E45a" D SETDTA .S CHSUB1=45, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BG" D G HCCDV1 .I '$D(^CHMXD IC(741201. 41,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E44a" D SETDTA .S CHSUB1=44, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BH" D G HCCDV1 .I '$D(^CHMXD IC(741201. 42,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E43a" D SETDTA .S CHSUB1=43, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BI" D G HCCDV1 .I '$D(^CHMXD IC(741201. 43,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E43b" D SETDTA .S CHSUB1=43, CHSUB2=1 D SETDTA Q I CHHCQLF[ "TC" D G HCCDV1 .D STTC ; FOR MAT "TC" C ODES IF NE EDED .I '$ D(^CHMXDIC (741201.85 ,"B",CHFLD (CHFLPN))) S CHSUB1= 49,CHSUB2= 1,CHEDRJ=" E100b" D S ETDTA .;S CHSUB1=48, CHSUB2=1 D SETDTA Q ; COULD SE T INTO NOD E 48 IF DE SIRED I CH HCQLF["DR" D G HCCD V1 .Q .D S TDR ; FORM AT "DR" CO DES IF NEE DED .I '$D (^CHMDIC(7 41002.16," B",CHFLD(C HFLPN))) S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 2J1" D SET DTA ; COUL D CHECK AG AINST DRG FILE .S CH SUB1=47,CH SUB2=1 D S ETDTA Q ; COULD SET INTO NODE 47 IF DES IREDHCCDV1 K CHHCQ LF,CHDIF,C HEND Q ; H CDTV ;H EALTH CARE CODE DATE MUST BE P RESENT/VAL ID FOR ALL PX CODES ("BR" & "B Q" FOR ICD 9 CODES AN D "BP" & " BO" FOR HC PCS/CPT4 C ODES) S:CH X12VRS=1 C HDIF=13,CH END=11 S:C HX12VRS=2 CHDIF=18,C HEND=16 ;M ethodical- 5010 Chang e-Begin S: CHX12VRS=3 CHDIF=34, CHEND=32 ; Methodical -5010 Chan ge-End D G THCQLF Q:' $D(CHHCQLF ) Q:CHHCQL F="" I $D (CHEDPRB) S CHPRB="E 40ZA" G HC DTV1 G:'$D (^CHMXDIC( 741201.1," B",CHHCQLF )) HCDTV1 I (CHHCQLF ["BR")!(CH HCQLF["BP" ) D G HCD TV1 .;I CH FLD(CHFLPN )="" S CHS UB1=49,CHS UB2=1,CHED RJ="E412a" D SETDTA Q .;S CHDT FL=1 D 201 ^CHMXPU01 K CHDTFL I Y=-1 S CH SUB1=49,CH SUB2=1,CHE DRJ="E412a " D SETDTA .S CHSUB1 =41,CHSUB2 =2 D SETDT A Q I (CHH CQLF["BQ") !(CHHCQLF[ "BO") D G HCDTV1 .; FOLLOWING WAS FE EDI T E41J2a - AJM DEV50 22 .I CHFL D(CHFLPN)= "" S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="NONE" D SETDTA Q . S CHDTFL=1 D 201^CHM XPU01 K CH DTFL I Y=- 1 S CHSUB1 =49,CHSUB2 =1,CHEDRJ= "E41J2a" D SETDTA . S CHSUB1=4 1,CHSUB2=2 D SETDTA Q I (CHHCQ LF["BH")!( CHHCQLF["B I") D G H CDTV1 .;FO LLOWING WA S FE EDIT E431a - AJ M DEV5022 .I CHFLD(C HFLPN)="" S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="N ONE" D SET DTA Q .S C HDTFL=1 D 201^CHMXPU 01 K CHDTF L I Y=-1 S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 31a" D SET DTA .S CHS UB1=43,CHS UB2=2 D SE TDTA QHCDT V1 K CHH CQLF,CHDIF ,CHEND Q ; HCDTF ;HEALTH CA RE CODE DA TE MUST NO T BE FUTUR E FOR ALL PX CODES ( "BR" & "BQ " FOR ICD9 CODES, "B P" AND "BO " FOR HCPC S/CPT4 COD ES) Q:'$D( CHFLD(CHFL PN)) Q:CHF LD(CHFLPN) ="" S:CHX1 2VRS=1 CHD IF=13,CHEN D=11 S:CHX 12VRS=2 CH DIF=18,CHE ND=16 ;Met hodical-50 10 Change- Begin S:CH X12VRS=3 C HDIF=34,CH END=32 ;Me thodical-5 010 Change -End D GTH CQLF Q:'$D (CHHCQLF) Q:CHHCQLF= "" I $D(C HEDPRB) S CHPRB="E4O ZA" G HCDT F1 G:'$D(^ CHMXDIC(74 1201.1,"B" ,CHHCQLF)) HCDTF1 I (CHHCQLF[" BR")!(CHHC QLF["BP") D G HCDTF 1 .S CHDTF L=1 D 301^ CHMXPU01 K CHDTFL I Y=-1 S CHS UB1=49,CHS UB2=1,CHED RJ="E412b" D SETDTA Q I (CHHCQ LF["BQ")!( CHHCQLF["B O") D G H CDTF1 .S C HDTFL=1 D 301^CHMXPU 01 K CHDTF L I Y=-1 S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 1J2b" D SE TDTA Q .;I (CHHCQLF= "BH")!(CHH CQLF="BI") D G:CHHCQ LF="BH" HC DTF1 .;S C HDTFL=1 D 301^CHMXPU 01 K CHDTF L I Y=-1 S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 31b" D SET DTA Q I CH HCQLF["BI" D G HCDT F1 .;FOLLO WING WAS F E EDIT E43 1b - AJM D EV5022 .S CHDIF=-8,C HEND=-15 D GETHRDT Q :'$D(CHTHR DT) Q:CHTH RDT="" I $D(CHEDPRB ) S CHPRB= "NONE" G H CDTF1 .;FO LLOWING WA S FE EDIT E431b - AJ M DEV5022 .I CHTHRDT '>CHFLD(CH FLPN) S CH SUB1=49,CH SUB2=1,CHE DRJ="NONE" D SETDTA QHCDTF1 K CHHCQLF, CHDIF,CHEN D,CHTHRDT Q ; HCDTV2 ;HEALTH CARE CODE DATE2 (OC C SPAN ONL Y) MUST BE PRESENT/V ALID FOR " BI" S:CHX1 2VRS=1 CHD IF=21,CHEN D=19 S:CHX 12VRS=2 CH DIF=26,CHE ND=24 ;Met hodical-50 10 Change- End S:CHX1 2VRS=3 CHD IF=42,CHEN D=40 ;Meth odical-501 0 Change-E nd D GTHCQ LF Q:'$D(C HHCQLF) Q: CHHCQLF="" I $D(CHE DPRB) S CH PRB="E40ZA " G HCDTV2 1 G:'$D(^C HMXDIC(741 201.1,"B", CHHCQLF)) HCDTV21 I CHHCQLF["B I" D G HC DTV21 .;FO LLOWING WA S FE EDIT E432a - AJ M DEV5022 .I CHFLD(C HFLPN)="" S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="N ONE" D SET DTA Q .;FO LLOWING WA S FE EDIT E432a - AJ M DEV5022 .S CHDTFL= 1 D 201^CH MXPU01 K C HDTFL I Y= -1 S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="NONE" D SETDTA .S CHSUB1=43, CHSUB2=3 D SETDTA QH CDTV21 K CHHCQLF,CH DIF,CHEND Q ; HCDTF2 ;HEALTH CARE CODE DATE MUST NOT BE FU TURE FOR O CC SPAN TH RU DATE (" BI") Q:'$D (CHFLD(CHF LPN)) Q:CH FLD(CHFLPN )="" S:CHX 12VRS=1 CH DIF=21,CHE ND=19 S:CH X12VRS=2 C HDIF=26,CH END=24 S:C HX12VRS=3 CHDIF=42,C HEND=40 D GTHCQLF Q: '$D(CHHCQL F) Q:CHHCQ LF="" I $ D(CHEDPRB) S CHPRB=" E40ZA" G H CDTF21 G:' $D(^CHMXDI C(741201.1 ,"B",CHHCQ LF)) HCDTF 21 I CHHCQ LF["BI" D G HCDTF21 .;S CHDTF L=1 D 301^ CHMXPU01 K CHDTFL I Y=-1 S CHS UB1=49,CHS UB2=1,CHED RJ="E432b" D SETDTA Q .S CHDIF =8,CHEND=1 D GETODT Q:'$D(CHTO DT) Q:CHTO DT="" I $ D(CHEDPRB) S CHPRB=" E432b" Q . ;FOLLOWING WAS FE ED IT E432b - AJM DEV50 22 .I CHTO DT'<CHFLD( CHFLPN) S CHSUB1=49, CHSUB2=1,C HEDRJ="NON E" QHCDTF2 1 K GETOD T,CHHCQLF, CHDIF,CHEN D Q ; ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ; ; DIAGNO SIS CODE D ATE OF SER VICE VS IC D CODE ACT IVE DATES CHECK FOR INSTITUTIO NAL CLAIMS . ; INSTIT UTIONAL CL AIMS LOAD INTO THE ^ CHMXCLE() BUFFER, AN D THE DATE OF SERVIC E IS REQUI RED ; IN L OOP 2300, WHICH TRAN SLATES TO THE "E005" FLAT FILE RECORD. ; FOR ICD-1 0 THERE NE EDS TO BE A REAL TIM E CHECK FO R THE ACTI VE ICD-9/I CD-10 DIAG CODES ; AGAINST TH E DATE OF SERVICE. T HIS FUNCTI ON WILL PE RFORM THE CHECK AS P ART OF THE FRONT ; END EDITS SO THE CLA IM CAN BE REJECTED A ND REPORTE D ON THE C STAT (UNSO LICITED ST ATUS) REPO RT. ; THE REJECT LOG IC FOR THE ICD-9/ICD -10 DIAGNO STIC CODES : ; 1) IF DIAG CODE CANNOT BE CROSS-REFE RENCED (^C HMICDX("C" ,DIAG CODE ,I), CLAIM WILL BE R EJECTED ; 2) IF THE DATE OF SE RVICE (STA TEMENT "TO " DATE) IS NOT POPUL ATED (^CHM XCLE(CHCLE I,1),"^",2 )) THE ; I NSTITUTION AL CLAIM W ILL BE REJ ECTED. ; 3 ) THE DIAG NOSIS CODE WILL BE D ETERMINED AS ICD-9 O R ICD-10 B ASED ON TH E ^CHMICDX (I,0),"^", 24) FIELD ; 4) IF IC D-10 CODE TERMINATIO N DATE IS BLANK, CHE CK AGAINST ICD-10 "E FFECTIVE" DATE ONLY. IF THE DO S ; IS BEF ORE THE "E FFECTIVE" DATE, THE CLAIM WILL BE REJECT ED. ; 5) I F ICD-10 T ERMINATION DATE IS P OPULATED, THE DOS WI LL BE CHEC KED AGAINS T THE ICD- 10 "ACTIVE " DATES ; ^CHMICDX( I,0), FIEL D 22: EFFE CTIVE DATE AND ^CHMI CDX(I,0), FIELD 23: TERMINATIO N DATE) FO R THE ; D IAG CODE. IF THE DOS FALLS OUT SIDE THESE DATES, TH E CLAIM WI LL BE REJE CTED ; 6) IF ICD-9, THE DOS WI LL BE CHEC KED AGAINS T THE ICD- 9 TERMINAT ION DATE ( ^CHMICDX(I ,0), FIELD 23: TERMI NATION DAT E) ; IF T HE DOS IS AFTER THE TERMINATIO N DATE, TH E CLAIM WI LL BE REJE CTED. ; NO TE: IN ORD ER TO VALI DATE BOTH ICD-9 AND ICD-10 QUA LIFIERS IN THIS FUNC TION, ("BK " VS "ABK" , ETC.) ; THE TESTIN G LOGIC CA NNOT USE T HE "[" (CO NTAINS) OP ERAND, BEC AUSE THE F ORMATTING FOR THE ; DIAGNOSTI C CODE IS DIFFERENT BETWEEN TH E ICD-9 AN D ICD-10 C ODES. ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ; ; DXQUAL ;CHECKS FOR INSTI TUTIONAL C LAIM DX CO DES PROVID ED (PROF/D ENTAL DIAG CODES ARE IN SVC LI NES) N JZ U 0 W:$$EN VIR^CHTFLI B'="LIVE" !,"CHMXPU0 4: DXQUAL: DIAG CODE = ",CHFLD( CHFLPN) Q: '$D(CHFLD( CHFLPN)) S CHDIF=3,C HEND=1,CHS UB2=1,CHED RJ="NONE" D GTHCQLF I $D(CHEDP RB) S CHPR B="E40ZA" G XDXQUAL ; COD E QUALIFIE R D DEBUG^ CHMXDR01(" PU04:DXQU AL: QUALIF IER: "_CHH CQLF_" DIA G CODE= "_ CHFLD(CHFL PN)_" CLMT YPE=",$$CL MTYPE^CHMX P010()) Q: CHHCQLF="" ; EXIT I F NO QUALI FIER Q:(CH HCQLF'["BJ ")&(CHHCQL F'["BK")&( CHHCQLF'[" BF")&(CHHC QLF'["BN") &(CHHCQLF' ["PR")&(CH HCQLF'["ZZ ") ; VALID QUALIFIER S I CHFLD( CHFLPN)="" S CHSUB1= 49 D SETDT A G XDXQUA L S JZ=0 ; ASSUME DI AG CODE IS FORMATTED ALREADY I ($E(CHHCQ LF,1,1)="A ")!(CHHCQL F="BBQ")!( CHHCQLF="B BR") D ; ICD-10 QUALIFIER S .I CHFL D(CHFLPN)' ["." D ; I F NOT FORM ATTED, FOR MAT THE DI AG CODE .. S JZ=$S(CH HCQLF["BK" :3,CHHCQLF ["BF":3,CH HCQLF["BJ" :3,CHHCQLF ["PR":3,CH HCQLF["BN" :3,CHHCQLF ["BQ":2,CH HCQLF["BR" :2,1:0) ; DIAG CODE "." PLACEM ENT IS QUA LIFIER DEP ENDENT E D ; ICD-9 QUALIFIERS .I CHFLD( CHFLPN)'[" ." D ; IF NOT FORMAT TED, FORMA T THE DIAG CODE ..S JZ=$S(CHHC QLF="BK":3 ,CHHCQLF=" BF":3,CHHC QLF="BJ":3 ,CHHCQLF=" PR":3,CHHC QLF="BN":3 ,CHHCQLF=" BQ":2,CHHC QLF="BR":2 ,1:0) ; DI AG CODE ". " PLACEMEN T IS QUALI FIER DEPEN DENT D:JZ STFRMT ; IF ALREA DY FORMATT ED, SKIP D IAG CODE F ORMATTING U 0 W:$$EN VIR^CHTFLI B'="LIVE" !,"DXQUAL: FORMATTED DIAG CODE = ",CHFLD( CHFLPN) I '$D(^CHMIC DX("C",CHF LD(CHFLPN) )) D Q ; DIAGNO SIS CODE N OT CROSS-R EFERENCED, REJECT .D DEBUG^CHM XDR01("*** **DXQUAL^C HMXPU04: D IAG CODE " _CHFLD(CHF LPN)_", NO T CROSS-RE FERENCED." ,"") .S CH EDRJ="E401 a" D RCDER R^CHMXPU01 N DICI S DICI=0,DIC I=$O(^CHMI CDX("C",CH FLD(CHFLPN ),DICI)) ; DIAGNOSIS CODE INDE X FOR ^CHM ICDX() S D OS=$$GETDO S() ; DOS IS DETERMI NED DIFFER ENTLY FOR I/P/D CLAI M TYPES D DEBUG^CHMX DR01(" DXQ UAL^CHMXDR 01: DOS= " _DOS_" ICD 10 FLAG: " _$P(^CHMIC DX(DICI,0) ,"^",24)_" EFF DATE: "_$P(^CHMI CDX(DICI,0 ),"^",22)_ " TERM DAT E:",$P(^CH MICDX(DICI ,0),"^",23 )) I DOS'= "" D ; I F WE HAVE A VALID DO S, COMPARE AGAINST I CDX DATES .I $P(^CHM ICDX(DICI, 0),"^",24) D ; IF IC D-10 FLAG IS SET ..I $P(^CHMIC DX(DICI,0) ,"^",23)=" " D ; NO TERM INATION DA TE ...I DO S<$P(^CHMI CDX(DICI,0 ),"^",22) D ; CH ECK EFFECT IVE DATE A GAINST DOS ....D DEB UG^CHMXDR0 1(" DXQUAL ^CHMXPU04 DOS: "_DOS _" BEFORE ICD-10 EFF ECTIVE DAT E:",$P(^CH MICDX(DICI ,0),"^",22 )) ....S C HEDRJ="E41 J2a" D RCD ERR^CHMXPU 01 ; SET E ARLY REJEC T FOR ICD- 10 DIAG/NO TERM DATE , DOS BEFO RE EFFECTI VE DATE .. E I ((DOS <$P(^CHMIC DX(DICI,0) ,"^",22))! (DOS>$P(^C HMICDX(DIC I,0),"^",2 3))) D ; CHEC K DOS AGAI NST ICD-10 CODE EFFE CTIVE/TERM INATION DA TES ...D D EBUG^CHMXD R01(" DXQU AL^CHMXPU0 4 DOS: "_D OS_" OUTSI DE ICD-10 EFF/TERM D ATES:",$P( ^CHMICDX(D ICI,0),"^" ,22)_"/"_$ P(^CHMICDX (DICI,0)," ^",23)) .. .S CHEDRJ= "E41J2a" D RCDERR^CH MXPU01 ; S ET EARLY R EJECT ICD- 10 DIAG OU TSIDE EFF/ TERM DATES .E D ; CODE IS ICD-9 DIAG CODE ..I DOS>$P (^CHMICDX( DICI,0),"^ ",23) D ; CHECK SVC "TO" D ATE AGAINS T ICD-9 TE RMINATION DATE ...D DEBUG^CHMX DR01(" DXQ UAL^CHMXPU 04 DOS: "_ DOS_" AFTE R ICD-9 TE RM DATE:", $P(^CHMICD X(DICI,0), "^",23)) . ..S CHEDRJ ="E41J2a" D RCDERR^C HMXPU01 ; SET EARLY REJECT, IC D-9 DOS AF TER TERMNA TION DATE E D .I ($ $CLMTYPE^C HMXP010()= "A")&(CHXR EC["E") D ; "A"=INST ,"B"=PROF, C=DNTL ..D DEBUG^CHM XDR01(" DX QUAL^CHMXP U04 INVALI D DOS: ",D OS) ..S CH EDRJ="E401 a" D RCDER R^CHMXPU01 ; SET EAR LY REJECT, INVALID D OSXDXQUAL K CHHCQLF ,CHDIF,CHE ND Q ; ;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;; ; GE T THE DATE OF SERVIC E. IF CLAI M LEVEL RE CORDS, GET FROM ^CHM XCLE; ; O THERWISE G ET IT FROM ^CHMXCLF ; DETERMIN E IF CLAIM LEVEL OR LINE LEVEL BY CHXREC VALUE ("E XXX" VS "F XXX") ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;; ;GETD OS() N CL MTYPE,DOS, ERR,CHCLFI S DOS="", ERR=0 S CL MTYPE=$$CL MTYPE^CHMX P010() ; " A"=INST,"B "=PROF,C=D NTL U 0 W: $$ENVIR^CH TFLIB'="LI VE" !,"CLA IM TYPE= " ,CLMTYPE I CLMTYPE=" A" D .I ' $D(^CHMXCL E(CHCLEI)) D Q ; NEED TO GET THE DO S; IF NO C LAIM INDEX , REJECT . .S ERR=1 . .U 0 W:$$E NVIR^CHTFL IB'="LIVE" !,"NO ^CH MXCLE(",CH CLEI,") NO DE" .I $P( ^CHMXCLE(C HCLEI,1)," ^",2)="" D Q ..S E RR=1 ..U 0 W:$$ENVIR ^CHTFLIB'= "LIVE" !," NO STATEME NT ""TO"" DATE ENTRY @^CHMXCLE (",CHCLEI, ",1),""^"" ,2)" .S:'E RR DOS=$P( ^CHMXCLE(C HCLEI,1)," ^",2) ; ST ATEMENT DA TE FOR INS TITUTIONAL CLAIM .S DOS=$$YR8F MYR^CHTFLI B(DOS) ; ^ CHMXCLE() STORES DOS AS YYYYMM DD, ^CHMIC DX() STORE S AS FM DA TE E D .U 0 W:$$ENV IR^CHTFLIB '="LIVE" ! ,"CHMXPU04 : GETDOS: CHCLEI= ", CHCLEI," $ D(^CHMXCLF (""B"",",C HCLEI,")= ",$D(^CHMX CLF("B",CH CLEI)) .I CHXREC["E" D Q ..U 0 W:$$ENV IR^CHTFLIB '="LIVE" ! ,"CHMXPU04 : GETDOS: OUTPATIENT CLAIM REC ORD ""EXXX "" DIAG CO DES: NO CL AIM LEVEL DOS." .E I CHXREC[" F" D ..I '$D(^CHMXC LF("B",CHC LEI)) D Q ; VERIFY ^CH MXCLF CROS S-REFERENC E ...S ERR =1 ...U 0 W:$$ENVIR^ CHTFLIB'=" LIVE" !,"N O ^CHMXCLF (""B"",",C HCLEI,"(^C HMXCLE()IN DEX)) XREF " ..S CHCL FI=0,CHCLF I=$O(^CHMX CLF("B",CH CLEI,CHCLF I)) ; GET THE ^CHMXC LF INDEX . .I '$D(^CH MXCLF(CHCL FI,1)) D Q ...S ERR =1 ...U 0 W:$$ENVIR^ CHTFLIB'=" LIVE" !,"N O ^CHMXCLF (",CHCLFI, ",1) NODE" ; CHECK THE DOS NO DE ..I ($P (^CHMXCLF( CHCLFI,1), "^",12)="" )&($P(^CHM XCLF(CHCLF I,1),"^",1 1)="") D . ..S ERR=1 ...U 0 W:$ $ENVIR^CHT FLIB'="LIV E" !,"NO S TATEMENT " "FROM/TO"" DATES @^C HMXCLF(",C HCLFI,",1) ,""^"",11/ 12)" ..I 'ERR D .. .S DOS=$P( ^CHMXCLF(C HCLFI,1)," ^",12) ; S ERVICE LIN E STATEMEN T "TO" DAT E ...S:DOS ="" DOS=$P (^CHMXCLF( CHCLFI,1), "^",11) ; SERVICE LI NE STATEME NT "FROM" DATE ...S DOS=$$YR8F MYR^CHTFLI B(DOS) ; S VC LINE ST ORES DOS A S YYYYMMDD , ^CHMICDX () STORES AS FM DATE Q DOS ; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;; ; THE FOLLOW ING CODE W AS DISABLE D FOR 5010 IMPLEMENT ATION ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;; ;PDXCD ;THIS CODE INSER TS THE PRI MARY DIAG CODE INTO ^CHMXCLE(I ,42)---DON 'T DO THAT IN 5010 Q ;INFERS ADM DX FR OM PRINCIP AL DX IF N O ADM DX C ODE D DEBU G^CHMXDR01 ("CHMXPU04 : PDXCD CH FLD(CHFLPN )= ",CHFLD (CHFLPN)) Q:'$D(^CHM XCLE(CHCLE I,0)) Q:$P (^CHMXCLE( CHCLEI,0), "^",4)="" Q:$P(^CHM XCLE(CHCLE I,0),"^",5 )="" S ZZ TOS=$P(^CH MXCLE(CHCL EI,0),"^", 4) I ZZTOS '="" I ($P (^CHMXCLE( CHCLEI,0), "^",5)="A" )&($D(^CHM XDIC(74120 1.03,"D",1 ,ZZTOS))) D G PDXCD 1 .I '$D(^ CHMXCLE(CH CLEI,40)) S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="E 401a",CHHC QLF="",CHF LPN=0,CHFL D(CHFLPN)= "" D SETDT A Q .I '$D (^CHMXCLE( CHCLEI,40, 1,0)) S CH SUB1=49,CH SUB2=1,CHE DRJ="E401a ",CHHCQLF= "",CHFLPN= 0,CHFLD(CH FLPN)="" D SETDTA Q .I $P(^CHM XCLE(CHCLE I,40,1,0), "^",1)="" S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="E 401a",CHHC QLF="",CHF LPN=0,CHFL D(CHFLPN)= "" D SETDT A Q .I '$D (^CHMXCLE( CHCLEI,42) ) D ..S:'$ D(^CHMXCLE (CHCLEI,42 ,0)) ^CHMX CLE(CHCLEI ,42,0)="^7 41210.1242 ^0^0" ..S $P(^CHMXCL E(CHCLEI,4 2,0),"^",3 )=$P(^CHMX CLE(CHCLEI ,42,0),"^" ,3)+1,EI=$ P(^CHMXCLE (CHCLEI,42 ,0),"^",3) ,$P(^CHMXC LE(CHCLEI, 42,0),"^", 4)=$P(^CHM XCLE(CHCLE I,42,0),"^ ",4)+1 ..D DEBUG^CHM XMDRV("CHM XPU04: PDX CD 'J' = " ,EI) ..S $ P(^CHMXCLE (CHCLEI,42 ,EI,0),"^" )=$P(^CHMX CLE(CHCLEI ,40,1,0)," ^",1) ..S ^CHMXCLE(C HCLEI,42," B",$P(^CHM XCLE(CHCLE I,40,1,0), "^"),EI)=" "PDXCD1 K CHCODE,Z ZTOS Q ; G THCQLF I '$D(RCD) S CHEDPRB=" " G GTHCQL F1 S Y=$E( RCD,CHFLST -CHDIF,CHF LST-CHEND) ,CHHCQLF=$ $TRIM^CHMX PU01(Y) U 0 W:$$ENVI R^CHTFLIB' ="LIVE" !, "CHMXPU04: GTHCQLF() : CHHCQLF= ",CHHCQLF ;I CHHCQL F="" S CHE DPRB="" QG THCQLF1 K Y Q ; ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;; ; FOR MAT THE DI AGNOSTIC C ODES FOR I CD-9 AND I CD-10 ; AT ENTRY, CH FLD(CHFLPN ) CONTAINS THE DIAGN OSTIC CODE TO BE FOR MATTED, AN D "JZ" ; C ONTAINS TH E LOCATION (FROM THE LEFT) AT WHICH TO I NSERT THE "." FOR TH E CODE ; N OTE: WHEN THE DIAG C ODES ARRIV E IN CHMXP U04, THERE IS A LEAD ING "E" IN ; CHFLD( CHFLPN). T HE "E" COD E IS A SPE CIAL CASE FROM OSHA( ?) THAT IS DIFFERENT ; FROM AL L OTHER DI AGNOSIS CO DES, THIS CAUSES THE $E(CHFLD( CHFLPN)) T O LOCATE T HE ; "." IN A DIFFE RENT LOCAT ION FOR TH ESE DIAG C ODES. FOR THIS REASO N, THERE I S AN ; AD DER TO THE "JZ" VALU E TO CORRE CTLY LOCAT E THE DESI RED "." IN THE FORMA T. DLB 9/2 5/2015 ; D EBUG FOR D EF019158; MODIFIED T HE LOGIC T O ENSURE T HE CORRECT FORMATTIN G DLB 10/2 3/2015 ; 2 /1/2016 FI X THE FORM ATTING ISS UE FOR "BK " 311 ICD- 9 DIAGNOSI S CODES ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;; ; STFRMT ;SETS FORM AT FOR DX/ PX CODES D DEBUG^CHM XDR01(" CH MXPU04: ST FRMT(): CH FLD(CHFLPN )="""_CHFL D(CHFLPN)_ """ $L(CHF LD(CHFLPN) ="_$L(CHFL D(CHFLPN)) _" JZ="_JZ _" $E(CHFL D(CHFLPN), 1,JZ)=",$E (CHFLD(CHF LPN),1,JZ) ) I $L(CHH CQLF)=2 D ; ICD-9 COD E QUALIFIE RS ARE 2 D IGITS .I $ E(CHFLD(CH FLPN),1,1) ="E" D ; IF THERE I S A LEADIN G "E" FOR DIAG CODE ..S:$L(CH FLD(CHFLPN ))>JZ+1 CH FLD(CHFLPN )=$E(CHFLD (CHFLPN),1 ,JZ+1)_"." _$E(CHFLD( CHFLPN),JZ +2,99) .E S:$L(CHFL D(CHFLPN)) >JZ CHFLD( CHFLPN)=$E (CHFLD(CHF LPN),1,JZ) _"."_$E(CH FLD(CHFLPN ),JZ+1,99) ; ICD-9; NORMAL FOR MATTING .I (CHFLD(CH FLPN))["." D; ENSURE THERE IS A "." IN TH E CODE BEF ORE GOING FORWARD .. I $P(CHFLD (CHFLPN)," .",2)="" D ; IF NO VALUES AF TER THE ". ", NO "." REQUIRED . ..S CHFLPN LG=$L(CHFL D(CHFLPN)) ,CHFLD(CHF LPN)=$E(CH FLD(CHFLPN ),1,CHFLPN LG-1) ...K CHFLPNLG E S:$L(CH FLD(CHFLPN ))>JZ CHFL D(CHFLPN)= $E(CHFLD(C HFLPN),1,J Z)_"."_$E( CHFLD(CHFL PN),JZ+1,9 9) ; ICD-1 0 QUALIFIE RS ARE 3 D IGITS D DE BUG^CHMXDR 01(" CHMXP U04: EXIT STFRMT(): CHFLD(CHFL PN)= ",CHF LD(CHFLPN) )STFRMT1 K JZ Q ; S TTC ;S ETS FORMAT FOR TC CO DES Q ; ST DR ;SE TS FORMAT FOR DR COD ES Q ; SET DTA ;SET S APPROPRI ATE HC COD E DATA UP IN CHDTA A RRAYS D DE BUG^CHMXDR 01(" CHMXP U04: SETDT A CHFLD(CH FLPN)= """ ,CHFLD(CHF LPN)_"""^" _CHSUB1_"^ "_CHSUB2) Q:CHSUB1=" NONE" I '$ D(CHDTA(CH SUB1,CHSUB 2)) S CHVA R=0 S:CHSU B1'=49 CHD TA(CHSUB1, CHSUB2,CHV AR)="" D Q:((CHHCQL F["BK")!(C HHCQLF["BR ")!(CHHCQL F["BP"))&( CHSUB1'=49 ) .I (CHHC QLF["BK")! (CHHCQLF[" BR")!(CHHC QLF["BP")! (CHHCQLF[" BJ"),CHSUB 1'=49 S CH DTA(CHSUB1 ,CHSUB2,CH VAR)=CHFLD (CHFLPN) Q S CHVAR=9 999,CHVAR= $O(CHDTA(C HSUB1,CHSU B2,CHVAR), -1)+1 I CH SUB1=49 D G SETDTA1 .;S CHDTA (CHSUB1,CH SUB2,CHVAR )=CHEDRJ_" *"_CHFLD(C HFLPN) .I $D(CHXSTYP ) Q:CHXSTY P=1 ; QUIT IF OCR -- NO REJECT S RECORDED .Q:$G(CHE DRJ)="NONE " ; QUIT NO E RRORS ARE TO BE RECO RDED .S C HRCERR(CHX REC,CHEDRJ )="",CHLVL RJ("E")="" S CHDTA( CHSUB1,CHS UB2,CHVAR) =CHFLD(CHF LPN)SETDTA 1 K CHSUB 1,CHSUB2,C HVAR Q ; B TQICT ;M ATCH BILL TYPE QUALI FIER TO IC TYPE Q:$D (CHRCERR(C HXREC,"E05 a")) Q:'$D (^CHMXCLA( CHCLAI,0)) S CHICTYP =$E($P(^CH MXCLA(CHCL AI,0),"^", 14),7,99) Q:CHICTYP= "" I (CHFL D(CHFLPN)= "A")&(CHIC TYP'="HOSP ") D RCDER R^CHMXPU01 G BTQICT1 I (CHFLD( CHFLPN)="B ")&(CHICTY P'="PHYS") D RCDERR^ CHMXPU01 G BTQICT1BT QICT1 K C HICTYP Q ; GETODT ;PULLS THE TO DATE F OR OCC/OCC SPAN CODE S TO COMPA RE TO THRU DATE I '$ D(RCD) S C HEDPRB="" G GETODT1 S Y=$E(RCD ,CHFLST-CH DIF,CHFLST -CHEND),CH TODT=$$TRI M^CHMXPU01 (Y)GETODT1 Q ; GETH RDT ;PULL S THE THRO UGH DATE F OR OCC/OCC SPAN CODE S TO COMPA RE TO TO D ATE I '$D( RCD) S CHE DPRB="" G GETHRDT1 S Y=$E(RCD, CHFLST-CHD IF,CHFLST- CHEND),CHT HRDT=$$TRI M^CHMXPU01 (Y)GETHRDT 1 Q ; ICND CNMS ;MISS ING ICN/DC N # WHEN C LAIM FREQU ENCY = 5,7 OR 8 Q:$D (CHRCERR(C HXREC,"E33 a")) Q:'$D (^CHMXCLE( CHCLEI,0)) S CHFREQ= $P(^CHMXCL E(CHCLEI,0 ),"^",6) Q :'CHFREQ I (((CHFREQ =7)!(CHFRE Q=8))&(CHF LD(CHFLPN) ="")) D RC DERR^CHMXP U01 G ICND CN1 I CHFR EQ=8 D G ICNDCN1 .Q :'$D(^CHMP AY("B",CHF LD(CHFLPN) )) .S CHMX CLMI=0,CHM XCLMI=$O(^ CHMPAY("B" ,CHFLD(CHF LPN),CHMXC LMI)) .Q:C HMXCLMI="" .S CHMXCL M=CHFLD(CH FLPN) .D ^ CHMXMM06 Q ICNDCN1 K CHFREQ,CH MXCLMI,CHM XCLM Q ; ;Methodica l-5010 Cha nge-BeginI CNBLANK ;B LANK OR NO MATCHING ICN/DCN # WHEN CLAIM FREQUENCY = 7 OR 8 N CHFREQ Q :'$D(^CHMX CLE(CHCLEI ,0)) S CHF REQ=$P(^CH MXCLE(CHCL EI,0),"^", 6) Q:'CHFR EQ Q:CHFRE Q'=7&(CHFR EQ'=8) I C HFLD(CHFLP N)="" D RC DERR^CHMXP U01 Q Q:$D (^CHMPAY(" B",CHFLD(C HFLPN)))!( $D(^CHMIMA GE(CHFLD(C HFLPN)))) D RCDERR^C HMXPU01 Q GENROPDI ; Generate a Re-open PDI Number with a 97 Program I ndicator f or CHAMPVA claim ; o r 90 for a Spina Bif ida claim N CHFREQ,C HJUL,CHMFO PDI,DN,DT, J,PI,SN,VA L,X S CHFR EQ=$P(^CHM XCLE(CHCLE I,0),"^",6 ) Q:(CHFRE Q'=5)&(CHF REQ'=6)&(C HFREQ'=7)& (CHFREQ'=8 ) ;Not a R eopen S CH MFOPDI=CHF LD(CHFLPN) I CHMFOPD I="" Q ;M ove on to reject cod e validati ons D NOW^ %DTC S DT= X S X=$E(D T,1,3)_"00 00" D H^%D TC S CHJUL =($P($H,", ",1)-%H)+1 F J=1:1:( 3-$L(CHJUL )) S CHJUL ="0"_CHJUL S VAL=$$V ALPDI(CHMF OPDI,CHJUL ) I 'VAL Q S PI=$E(C HMFOPDI,8, 9) I PI'=9 1,PI'=92 Q ;Need Pr ogram Indi cators of 91 for CHA MPVA and 9 2 for Spin a Bifida I $E($G(CHC LCNB),8,9) ="00" D .S CHMFPDI=C HCLCNB .I PI=91 S $E (CHMFPDI,8 ,9)=97 .I PI=92 S $E (CHMFPDI,8 ,9)=90 E D .L ^CHMD IC(741002. 38,DT) I ' $D(^CHMDIC (741002.38 ,DT)) S $P (^CHMDIC(7 41002.38,0 ),"^",3)=D T D ..S $P (^CHMDIC(7 41002.38,0 ),"^",4)=$ P(^(0),"^" ,4)+1 ..S ^CHMDIC(74 1002.38,DT ,0)=DT_"^0 ^0^0^0" Q .S $P(^CHM DIC(741002 .38,DT,0), "^",2)=$P( ^CHMDIC(74 1002.38,DT ,0),"^",2) +1,DN=$P(^ CHMDIC(741 002.38,DT, 0),"^",2) L .F J=1:1 :(6-$L(DN) ) S DN="0" _DN .S SN= $S(PI=91:9 7,PI=92:90 ,1:00) ;CH AMPVA and Spina Bifi da reopen program in dicators. .S CHMFPDI =$$FMYR^CH TFLIB(DT)_ CHJUL_SN_D N S $P(^CH MXCLE(CHCL EI,100),"^ ",2)=CHMFP DI S ^CHMX CLE("PDI", CHMFPDI,CH MXCCNB,CHM XCLI,CHCLA I_"*"_CHCL BI_"*"_CHC LCI_"*"_CH CLEI)="" K ^CHMXCLE( "PDI",CHCL CNB,CHMXCC NB,CHMXCLI ,CHCLAI_"* "_CHCLBI_" *"_CHCLCI_ "*"_CHCLEI ) I ($D(^C HMIMG(CHMF PDI)))!($D (^CHMIMAGE (CHMFPDI)) ) D EMAIL^ CHMXMPDI Q ; RFE 12/ 27/16 DEF0 27118 Safe guard to p revent two claims on the same PDI S $P(^ CHMIMG(CHM FPDI,0),"^ ")=CHMFPDI ,$P(^(0)," ^",2)=1,$P (^(0),"^", 6)=1,$P(^( 0),"^",18) =CHMXCLI,^ CHMIMG("F" ,CHMXCLI,C HMFPDI)="" ,^CHMIMG(" B",CHMFPDI ,CHMFPDI)= "" D NOW^% DTC S:'$D( %) %=DT S CHMDT=% S $P(^CHMIMG (CHMFPDI,0 ),"^",3)=C HMFDUZ,$P( ^(0),"^",4 )=%,$P(^(0 ),"^",17)= 4 S $P(^CH MDIC(74100 2.38,PD,0) ,"^",3)=$P (^(0),"^", 3)+1 S ^CH MIMAGE(CHM FPDI,0)=CH MFPDI_"^"_ 1_"^"_CHMF DUZ_"^"_CH MDT_"^^^^" _4 S (CHMF PGNM,CHMFI MAG)=1 S ^ CHMIMAGE(C HMFPDI,1,C HMFPGNM,0) =CHMFPGNM S ^CHMIMAG E(CHMFPDI, 1,CHMFPGNM ,2,CHMFIMA G,0)=CHMFI MAG_"^^^"_ 1_"^"_3 S ^CHMIMAGE( "B",CHMFPD I,CHMFPDI) ="",^CHMIM AGE(CHMFPD I,1,"B",CH MFPGNM,CHM FPGNM)="" S CHMFPP=" SIP" D ^CH MFWK01 Q ;ICNVOID ; If frequ ency code equals 8 - check for valid Ori ginal PID and set cl aims statu s ; ajf; c pe005-033 invalid PD I, if PDI does not e xist in im age file, reject wit h E33a, ;N CHFREQ S CHFREQ=$P( ^CHMXCLE(C HCLEI,0)," ^",6) Q:CH FREQ'=8 S CHMFOPDI=C HFLD(3) ;Q uit if ori ginal is f ound in ^C HMIMAGE Q :$D(^CHMIM AGE(CHMFOP DI)) S CHR CERR(CHXRE C,"E33a")= "",CHLVLRJ ("E")="" D CSTAT^CHM XPUTL(CHMF OPDI,"F2:4 64:736") ; I CHFREQ=8 ,$$REMV^CH MXPUTL(CHF LD(CHFLPN) ) D RCDERR ^CHMXPU01 Q ;S CHMXC LM=CHFLD(C HFLPN) D ^ CHMXMM06 ; Message to group mai l Q ;VALPD I(CHMFOPDI ,CHJUL) ;V alidate Or iginal PDI Number ; N CURDT,JD AY,OPDIYR S CHMFOPDI =$G(CHMFOP DI),CHJUL= $G(CHJUL) I CHMFOPDI '?15N Q 0 I $E(CHMFO PDI,1,4)<2 000 Q 0 S OPDIYR=$E( CHMFOPDI,1 ,4) S CURD T=$$HTE^XL FDT($H,7), CURYR=$E(C URDT,1,4) I OPDIYR>C URYR Q 0 S JDAY=$E(C HMFOPDI,5, 7) I JDAY< "001"!(JDA Y>"366") Q 0 I '$D(^ CHMIMG(CHM FOPDI)) Q 0 ;This is not a Re- open claim . I $P($G( ^CHMIMG(CH MFOPDI,"E- REOPEN")), "^",3)=1 Q 0 Q 1 ;M ethodical- 5010 Chang e-End | |||||
7 | ||||||
8 | New versio n (New or changed po rtions; Hi ghlight al l of the f ollowing: New - Bol d, Deleted - Striket hru, Chang ed - Itali cs) | |||||
9 | CHMXPU04 ; CVA/DTP;X1 2 837 READ EDIT UTIL ITY #4 (HE ALTH CARE CLAIMS);03 /10/98 1:5 0 PM ;;1.0 ;CHAMPVA S YSTEM;;JUL Y 4, 1990; Build 2 ;; CPTS #1137 4 BY DTP ( 18-DEC-96) ;;SPECIAL EDITS FOR 837 RECOR D READ AT CLAIM LEVE L ;;CALLED INDIRECTL Y BY GENRE AD^CHMXPU0 1+15 (CHED RTN IS DEF INED), CHM XPU07 ;;AJ M DEV5022 (04-JUN-08 ) ;;Method ical - Cha nged CHHCQ LF= TO CHH CQLF[ in o rder to ha ndle ICD-1 0 or ICD-9 qualifier ;;ICD-10 RCS -lg Do n't insert decimal p oint into ICD-10 Pro cedure Cod es "BR" & "BQ" HCCQ check for ICD9 codes 03/08/13 ;;ICD-10 R CS -lg add ed "BBQ":" i" to $CAS E statemen t in case BBQ not in file 03/2 5/13 ;;ICD -10 RCS -l g Bug 28 E code deci mal point placed aft er the 4th character vice afte r the 3rd character. HCCQ ABF 6/24/14 ;; 2/1/2016 DLB MERGED UPDATES T O THE FORM AT ROUTINE FRO ICD-9 DIAGNOSIS CODES. ;; CPE005-033 GEF - Ori ginal PDI is not val id (Freq c ode = 8) ; ;CPE005-03 8 GEF - Or iginal PDI is valid but not pr ocessed (F req code=8 ) ;HCCDQ ;VALIDAT ION OF HEA LTH CARE C ODE QUALIF IER D DEBU G^CHMXDR01 ("CHMXPU04 : HCCDQ CH FLD(CHFLPN )= ",CHFLD (CHFLPN)) Q:'$D(CHFL D(CHFLPN)) Q:CHFLD(C HFLPN)="" I '$D(^CHM XDIC(74120 1.1,"B",CH FLD(CHFLPN ))) D ;G HCCDQ1 . S CHHCQLF=" ",CHSUB1=4 9,CHSUB2=1 D SETDTA . D DEBUG^ CHMXDR01(" CHMXPU04: HCCDQ2 CHF LD(CHFLPN) = ",CHFLD( CHFLPN)) . S CHEDRJ= "E100"_$CA SE(CHFLD(C HFLPN),"AB K":"c","AB J":"d","AB R":"e","AB N":"f","AB F":"g","BB R":"h","BB Q":"i",:"" ) ; ICD-10 RCS -lg a dded "BBQ" :i . D RC DERR^CHMXP U01:CHEDRJ '="E100"HC CDQ1 Q ; ;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;; ; TH E HEALTH C ARE CODE Q UALIFIER V ALIDATION IS USED FO R BOTH THE ICD-9 AND ICD-10 CO DES. ; THE USE OF TH E "[" (CON TAINS) VS THE "=" (E QUALS) ALL OWS THE TE STING OF T HE ; "BK, BJ,BF,etc" AND "ABK, ABJ,ABF,et c" USING T HIS SAME F UNCTION. ; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;; ;HCCDV ;VALID ATION OF H EALTH CARE CODE (FIL E LOOKUP D EPENDS UPO N HC QUALI FIER) Q:'$ D(CHFLD(CH FLPN)) ; Q :CHFLD(CHF LPN)="" D DEBUG^CHM XDR01("CHM XPU04: HCC DV ENTRY: CHFLD(CHFL PN)=",CHFL D(CHFLPN)) S CHDIF=3 ,CHEND=1 D GTHCQLF I $D(CHEDPR B) S CHPRB ="E40ZA" G HCCDV1 ;F OLLOWING W AS FE EDIT E40ZD - A JM DEV5022 Q:CHHCQLF ="" I CHF LD(CHFLPN) ="" S CHSU B1=49,CHSU B2=1,CHEDR J="NONE" D SETDTA G HCCDV1 U 0 W:$$ENVIR ^CHTFLIB'= "LIVE" !," CHMXPU04: HCCDV: GT HCQLF()=", CHHCQLF," $D(^CHMXDI C(741201.1 ,""B"",",C HHCQLF,")) = ",$D(^CH MXDIC(7412 01.1,"B",C HHCQLF)) G :'$D(^CHMX DIC(741201 .1,"B",CHH CQLF)) HCC DV1 I CHHC QLF["BJ" D G HCCDV1 .S JZ=3 D STFRMT ; SET U P THE FORM ATTING FOR THE CODES .I '$D(^C HMICDX("C" ,CHFLD(CHF LPN))) S C HSUB1=49,C HSUB2=1,CH EDRJ="E40Z B" D SETDT A .S CHSUB 1=42,CHSUB 2=1 D SETD TA Q I CHH CQLF["BK" D G HCCDV 1 .S JZ=3 D STFRMT . I '$D(^CHM ICDX("C",C HFLD(CHFLP N))) S CHS UB1=49,CHS UB2=1,CHED RJ="E401a" D SETDTA .S ZZTOS=$ P(^CHMXCLE (CHCLEI,0) ,"^",4) .I ZZTOS'="" I ($P(^CH MXCLE(CHCL EI,0),"^", 5)="A")&($ D(^CHMXDIC (741201.03 ,"D",1,ZZT OS)))&($D( CHDTA(40,1 ,0))) S CH EDRJ="E401 b",CHSUB1= 49,CHSUB2= 1 D SETDTA .S CHSUB1 =40,CHSUB2 =1 D SETDT A K ZZTOS Q I CHHCQL F["BF" D G HCCDV1 . S JZ=3 D S TFRMT .I ' $D(^CHMICD X("C",CHFL D(CHFLPN)) ) S CHSUB1 =49,CHSUB2 =1,CHEDRJ= "E40J1" D SETDTA .S CHSUB1=40, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BN" D G HCCDV1 .S JZ=3 D STF RMT .I '$D (^CHMICDX( "C",CHFLD( CHFLPN))) S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="E 40ZC" D SE TDTA .S CH SUB1=40,CH SUB2=1 D S ETDTA Q I CHHCQLF["Z Z" D G HC CDV1 .S JZ =3 D STFRM T .I '$D(^ CHMICDX("C ",CHFLD(CH FLPN))) S CHSUB1=49, CHSUB2=1,C HEDRJ="E40 J1" D SETD TA .S CHSU B1=46,CHSU B2=1 D SET DTA Q I CH HCQLF["BR" D G HCCD V1 .S JZ=2 D:CHHCQLF ="BR" STFR MT ;ICD-1 0 RCS -lg .I '$D(^CH MSERV("BE" ,CHFLD(CHF LPN)_"Z")) S CHSUB1= 49,CHSUB2= 1,CHEDRJ=" E411a" D S ETDTA .S Z ZTOS=$P(^C HMXCLE(CHC LEI,0),"^" ,4) .;FOLL OWING WAS FE EDIT E4 11b - AJM DEV5022 .I ZZTOS'="" I ($P(^CH MXCLE(CHCL EI,0),"^", 5)="A")&($ D(^CHMXDIC (741201.03 ,"D",1,ZZT OS)))&($D( CHDTA(41,1 ,0))) S CH EDRJ="NONE ",CHSUB1=4 9,CHSUB2=1 D SETDTA .S CHSUB1= 41,CHSUB2= 1 D SETDTA K ZZTOS Q I CHHCQLF ["BP" D G HCCDV1 .I ('$D(^CHM SERV("BC", CHFLD(CHFL PN))))&('$ D(^CHMSERV ("BF",CHFL D(CHFLPN)_ "Z"))) S C HSUB1=49,C HSUB2=1,CH EDRJ="E411 a" D SETDT A .S ZZTOS =$P(^CHMXC LE(CHCLEI, 0),"^",4) .;FOLLOWIN G WAS FE E DIT E411b - AJM DEV5 022 .I ZZT OS'="" I ( $P(^CHMXCL E(CHCLEI,0 ),"^",5)=" A")&($D(^C HMXDIC(741 201.03,"D" ,1,ZZTOS)) )&($D(CHDT A(41,1,0)) ) S CHEDRJ ="NONE",CH SUB1=49,CH SUB2=1 D S ETDTA .S C HSUB1=41,C HSUB2=1 D SETDTA K Z ZTOS Q I C HHCQLF["BQ " D G HCC DV1 .S JZ= 2 D:CHHCQL F="BQ" STF RMT ; ICD- 10 RCS lg .I '$D(^CH MSERV("BE" ,CHFLD(CHF LPN)_"Z")) S CHSUB1= 49,CHSUB2= 1,CHEDRJ=" E41J1" D S ETDTA .S C HSUB1=41,C HSUB2=1 D SETDTA Q I CHHCQLF[" BO" D G H CCDV1 .I ( '$D(^CHMSE RV("BC",CH FLD(CHFLPN ))))&('$D( ^CHMSERV(" BF",CHFLD( CHFLPN)_"Z "))) S CHS UB1=49,CHS UB2=1,CHED RJ="E41J1" D SETDTA .S CHSUB1= 41,CHSUB2= 1 D SETDTA Q ;Method ical-5010 Change-Beg in - Added code for PR qualifi er check - Patient R eason for Visit I CH HCQLF["PR" D G HCCD V1 .S JZ=3 D STFRMT .I '$D(^CH MICDX("C", CHFLD(CHFL PN))) S CH SUB1=49,CH SUB2=1,CHE DRJ="E46b" D SETDTA .S CHSUB1= 46,CHSUB2= 1 D SETDTA Q ;Method ical-5010 Change-End I CHHCQLF ["BE" D G HCCDV1 .I '$D(^CHMX DIC(741201 .4,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E45a" D SETDTA .S CHSUB1=45, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BG" D G HCCDV1 .I '$D(^CHMXD IC(741201. 41,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E44a" D SETDTA .S CHSUB1=44, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BH" D G HCCDV1 .I '$D(^CHMXD IC(741201. 42,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E43a" D SETDTA .S CHSUB1=43, CHSUB2=1 D SETDTA Q I CHHCQLF[ "BI" D G HCCDV1 .I '$D(^CHMXD IC(741201. 43,"B",CHF LD(CHFLPN) )) S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="E43b" D SETDTA .S CHSUB1=43, CHSUB2=1 D SETDTA Q I CHHCQLF[ "TC" D G HCCDV1 .D STTC ; FOR MAT "TC" C ODES IF NE EDED .I '$ D(^CHMXDIC (741201.85 ,"B",CHFLD (CHFLPN))) S CHSUB1= 49,CHSUB2= 1,CHEDRJ=" E100b" D S ETDTA .;S CHSUB1=48, CHSUB2=1 D SETDTA Q ; COULD SE T INTO NOD E 48 IF DE SIRED I CH HCQLF["DR" D G HCCD V1 .Q .D S TDR ; FORM AT "DR" CO DES IF NEE DED .I '$D (^CHMDIC(7 41002.16," B",CHFLD(C HFLPN))) S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 2J1" D SET DTA ; COUL D CHECK AG AINST DRG FILE .S CH SUB1=47,CH SUB2=1 D S ETDTA Q ; COULD SET INTO NODE 47 IF DES IREDHCCDV1 K CHHCQ LF,CHDIF,C HEND Q ; H CDTV ;H EALTH CARE CODE DATE MUST BE P RESENT/VAL ID FOR ALL PX CODES ("BR" & "B Q" FOR ICD 9 CODES AN D "BP" & " BO" FOR HC PCS/CPT4 C ODES) S:CH X12VRS=1 C HDIF=13,CH END=11 S:C HX12VRS=2 CHDIF=18,C HEND=16 ;M ethodical- 5010 Chang e-Begin S: CHX12VRS=3 CHDIF=34, CHEND=32 ; Methodical -5010 Chan ge-End D G THCQLF Q:' $D(CHHCQLF ) Q:CHHCQL F="" I $D (CHEDPRB) S CHPRB="E 40ZA" G HC DTV1 G:'$D (^CHMXDIC( 741201.1," B",CHHCQLF )) HCDTV1 I (CHHCQLF ["BR")!(CH HCQLF["BP" ) D G HCD TV1 .;I CH FLD(CHFLPN )="" S CHS UB1=49,CHS UB2=1,CHED RJ="E412a" D SETDTA Q .;S CHDT FL=1 D 201 ^CHMXPU01 K CHDTFL I Y=-1 S CH SUB1=49,CH SUB2=1,CHE DRJ="E412a " D SETDTA .S CHSUB1 =41,CHSUB2 =2 D SETDT A Q I (CHH CQLF["BQ") !(CHHCQLF[ "BO") D G HCDTV1 .; FOLLOWING WAS FE EDI T E41J2a - AJM DEV50 22 .I CHFL D(CHFLPN)= "" S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="NONE" D SETDTA Q . S CHDTFL=1 D 201^CHM XPU01 K CH DTFL I Y=- 1 S CHSUB1 =49,CHSUB2 =1,CHEDRJ= "E41J2a" D SETDTA . S CHSUB1=4 1,CHSUB2=2 D SETDTA Q I (CHHCQ LF["BH")!( CHHCQLF["B I") D G H CDTV1 .;FO LLOWING WA S FE EDIT E431a - AJ M DEV5022 .I CHFLD(C HFLPN)="" S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="N ONE" D SET DTA Q .S C HDTFL=1 D 201^CHMXPU 01 K CHDTF L I Y=-1 S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 31a" D SET DTA .S CHS UB1=43,CHS UB2=2 D SE TDTA QHCDT V1 K CHH CQLF,CHDIF ,CHEND Q ; HCDTF ;HEALTH CA RE CODE DA TE MUST NO T BE FUTUR E FOR ALL PX CODES ( "BR" & "BQ " FOR ICD9 CODES, "B P" AND "BO " FOR HCPC S/CPT4 COD ES) Q:'$D( CHFLD(CHFL PN)) Q:CHF LD(CHFLPN) ="" S:CHX1 2VRS=1 CHD IF=13,CHEN D=11 S:CHX 12VRS=2 CH DIF=18,CHE ND=16 ;Met hodical-50 10 Change- Begin S:CH X12VRS=3 C HDIF=34,CH END=32 ;Me thodical-5 010 Change -End D GTH CQLF Q:'$D (CHHCQLF) Q:CHHCQLF= "" I $D(C HEDPRB) S CHPRB="E4O ZA" G HCDT F1 G:'$D(^ CHMXDIC(74 1201.1,"B" ,CHHCQLF)) HCDTF1 I (CHHCQLF[" BR")!(CHHC QLF["BP") D G HCDTF 1 .S CHDTF L=1 D 301^ CHMXPU01 K CHDTFL I Y=-1 S CHS UB1=49,CHS UB2=1,CHED RJ="E412b" D SETDTA Q I (CHHCQ LF["BQ")!( CHHCQLF["B O") D G H CDTF1 .S C HDTFL=1 D 301^CHMXPU 01 K CHDTF L I Y=-1 S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 1J2b" D SE TDTA Q .;I (CHHCQLF= "BH")!(CHH CQLF="BI") D G:CHHCQ LF="BH" HC DTF1 .;S C HDTFL=1 D 301^CHMXPU 01 K CHDTF L I Y=-1 S CHSUB1=49 ,CHSUB2=1, CHEDRJ="E4 31b" D SET DTA Q I CH HCQLF["BI" D G HCDT F1 .;FOLLO WING WAS F E EDIT E43 1b - AJM D EV5022 .S CHDIF=-8,C HEND=-15 D GETHRDT Q :'$D(CHTHR DT) Q:CHTH RDT="" I $D(CHEDPRB ) S CHPRB= "NONE" G H CDTF1 .;FO LLOWING WA S FE EDIT E431b - AJ M DEV5022 .I CHTHRDT '>CHFLD(CH FLPN) S CH SUB1=49,CH SUB2=1,CHE DRJ="NONE" D SETDTA QHCDTF1 K CHHCQLF, CHDIF,CHEN D,CHTHRDT Q ; HCDTV2 ;HEALTH CARE CODE DATE2 (OC C SPAN ONL Y) MUST BE PRESENT/V ALID FOR " BI" S:CHX1 2VRS=1 CHD IF=21,CHEN D=19 S:CHX 12VRS=2 CH DIF=26,CHE ND=24 ;Met hodical-50 10 Change- End S:CHX1 2VRS=3 CHD IF=42,CHEN D=40 ;Meth odical-501 0 Change-E nd D GTHCQ LF Q:'$D(C HHCQLF) Q: CHHCQLF="" I $D(CHE DPRB) S CH PRB="E40ZA " G HCDTV2 1 G:'$D(^C HMXDIC(741 201.1,"B", CHHCQLF)) HCDTV21 I CHHCQLF["B I" D G HC DTV21 .;FO LLOWING WA S FE EDIT E432a - AJ M DEV5022 .I CHFLD(C HFLPN)="" S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="N ONE" D SET DTA Q .;FO LLOWING WA S FE EDIT E432a - AJ M DEV5022 .S CHDTFL= 1 D 201^CH MXPU01 K C HDTFL I Y= -1 S CHSUB 1=49,CHSUB 2=1,CHEDRJ ="NONE" D SETDTA .S CHSUB1=43, CHSUB2=3 D SETDTA QH CDTV21 K CHHCQLF,CH DIF,CHEND Q ; HCDTF2 ;HEALTH CARE CODE DATE MUST NOT BE FU TURE FOR O CC SPAN TH RU DATE (" BI") Q:'$D (CHFLD(CHF LPN)) Q:CH FLD(CHFLPN )="" S:CHX 12VRS=1 CH DIF=21,CHE ND=19 S:CH X12VRS=2 C HDIF=26,CH END=24 S:C HX12VRS=3 CHDIF=42,C HEND=40 D GTHCQLF Q: '$D(CHHCQL F) Q:CHHCQ LF="" I $ D(CHEDPRB) S CHPRB=" E40ZA" G H CDTF21 G:' $D(^CHMXDI C(741201.1 ,"B",CHHCQ LF)) HCDTF 21 I CHHCQ LF["BI" D G HCDTF21 .;S CHDTF L=1 D 301^ CHMXPU01 K CHDTFL I Y=-1 S CHS UB1=49,CHS UB2=1,CHED RJ="E432b" D SETDTA Q .S CHDIF =8,CHEND=1 D GETODT Q:'$D(CHTO DT) Q:CHTO DT="" I $ D(CHEDPRB) S CHPRB=" E432b" Q . ;FOLLOWING WAS FE ED IT E432b - AJM DEV50 22 .I CHTO DT'<CHFLD( CHFLPN) S CHSUB1=49, CHSUB2=1,C HEDRJ="NON E" QHCDTF2 1 K GETOD T,CHHCQLF, CHDIF,CHEN D Q ; ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ; ; DIAGNO SIS CODE D ATE OF SER VICE VS IC D CODE ACT IVE DATES CHECK FOR INSTITUTIO NAL CLAIMS . ; INSTIT UTIONAL CL AIMS LOAD INTO THE ^ CHMXCLE() BUFFER, AN D THE DATE OF SERVIC E IS REQUI RED ; IN L OOP 2300, WHICH TRAN SLATES TO THE "E005" FLAT FILE RECORD. ; FOR ICD-1 0 THERE NE EDS TO BE A REAL TIM E CHECK FO R THE ACTI VE ICD-9/I CD-10 DIAG CODES ; AGAINST TH E DATE OF SERVICE. T HIS FUNCTI ON WILL PE RFORM THE CHECK AS P ART OF THE FRONT ; END EDITS SO THE CLA IM CAN BE REJECTED A ND REPORTE D ON THE C STAT (UNSO LICITED ST ATUS) REPO RT. ; THE REJECT LOG IC FOR THE ICD-9/ICD -10 DIAGNO STIC CODES : ; 1) IF DIAG CODE CANNOT BE CROSS-REFE RENCED (^C HMICDX("C" ,DIAG CODE ,I), CLAIM WILL BE R EJECTED ; 2) IF THE DATE OF SE RVICE (STA TEMENT "TO " DATE) IS NOT POPUL ATED (^CHM XCLE(CHCLE I,1),"^",2 )) THE ; I NSTITUTION AL CLAIM W ILL BE REJ ECTED. ; 3 ) THE DIAG NOSIS CODE WILL BE D ETERMINED AS ICD-9 O R ICD-10 B ASED ON TH E ^CHMICDX (I,0),"^", 24) FIELD ; 4) IF IC D-10 CODE TERMINATIO N DATE IS BLANK, CHE CK AGAINST ICD-10 "E FFECTIVE" DATE ONLY. IF THE DO S ; IS BEF ORE THE "E FFECTIVE" DATE, THE CLAIM WILL BE REJECT ED. ; 5) I F ICD-10 T ERMINATION DATE IS P OPULATED, THE DOS WI LL BE CHEC KED AGAINS T THE ICD- 10 "ACTIVE " DATES ; ^CHMICDX( I,0), FIEL D 22: EFFE CTIVE DATE AND ^CHMI CDX(I,0), FIELD 23: TERMINATIO N DATE) FO R THE ; D IAG CODE. IF THE DOS FALLS OUT SIDE THESE DATES, TH E CLAIM WI LL BE REJE CTED ; 6) IF ICD-9, THE DOS WI LL BE CHEC KED AGAINS T THE ICD- 9 TERMINAT ION DATE ( ^CHMICDX(I ,0), FIELD 23: TERMI NATION DAT E) ; IF T HE DOS IS AFTER THE TERMINATIO N DATE, TH E CLAIM WI LL BE REJE CTED. ; NO TE: IN ORD ER TO VALI DATE BOTH ICD-9 AND ICD-10 QUA LIFIERS IN THIS FUNC TION, ("BK " VS "ABK" , ETC.) ; THE TESTIN G LOGIC CA NNOT USE T HE "[" (CO NTAINS) OP ERAND, BEC AUSE THE F ORMATTING FOR THE ; DIAGNOSTI C CODE IS DIFFERENT BETWEEN TH E ICD-9 AN D ICD-10 C ODES. ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ; ; DXQUAL ;CHECKS FOR INSTI TUTIONAL C LAIM DX CO DES PROVID ED (PROF/D ENTAL DIAG CODES ARE IN SVC LI NES) N JZ U 0 W:$$EN VIR^CHTFLI B'="LIVE" !,"CHMXPU0 4: DXQUAL: DIAG CODE = ",CHFLD( CHFLPN) Q: '$D(CHFLD( CHFLPN)) S CHDIF=3,C HEND=1,CHS UB2=1,CHED RJ="NONE" D GTHCQLF I $D(CHEDP RB) S CHPR B="E40ZA" G XDXQUAL ; COD E QUALIFIE R D DEBUG^ CHMXDR01(" PU04:DXQU AL: QUALIF IER: "_CHH CQLF_" DIA G CODE= "_ CHFLD(CHFL PN)_" CLMT YPE=",$$CL MTYPE^CHMX P010()) Q: CHHCQLF="" ; EXIT I F NO QUALI FIER Q:(CH HCQLF'["BJ ")&(CHHCQL F'["BK")&( CHHCQLF'[" BF")&(CHHC QLF'["BN") &(CHHCQLF' ["PR")&(CH HCQLF'["ZZ ") ; VALID QUALIFIER S I CHFLD( CHFLPN)="" S CHSUB1= 49 D SETDT A G XDXQUA L S JZ=0 ; ASSUME DI AG CODE IS FORMATTED ALREADY I ($E(CHHCQ LF,1,1)="A ")!(CHHCQL F="BBQ")!( CHHCQLF="B BR") D ; ICD-10 QUALIFIER S .I CHFL D(CHFLPN)' ["." D ; I F NOT FORM ATTED, FOR MAT THE DI AG CODE .. S JZ=$S(CH HCQLF["BK" :3,CHHCQLF ["BF":3,CH HCQLF["BJ" :3,CHHCQLF ["PR":3,CH HCQLF["BN" :3,CHHCQLF ["BQ":2,CH HCQLF["BR" :2,1:0) ; DIAG CODE "." PLACEM ENT IS QUA LIFIER DEP ENDENT E D ; ICD-9 QUALIFIERS .I CHFLD( CHFLPN)'[" ." D ; IF NOT FORMAT TED, FORMA T THE DIAG CODE ..S JZ=$S(CHHC QLF="BK":3 ,CHHCQLF=" BF":3,CHHC QLF="BJ":3 ,CHHCQLF=" PR":3,CHHC QLF="BN":3 ,CHHCQLF=" BQ":2,CHHC QLF="BR":2 ,1:0) ; DI AG CODE ". " PLACEMEN T IS QUALI FIER DEPEN DENT D:JZ STFRMT ; IF ALREA DY FORMATT ED, SKIP D IAG CODE F ORMATTING U 0 W:$$EN VIR^CHTFLI B'="LIVE" !,"DXQUAL: FORMATTED DIAG CODE = ",CHFLD( CHFLPN) I '$D(^CHMIC DX("C",CHF LD(CHFLPN) )) D Q ; DIAGNO SIS CODE N OT CROSS-R EFERENCED, REJECT .D DEBUG^CHM XDR01("*** **DXQUAL^C HMXPU04: D IAG CODE " _CHFLD(CHF LPN)_", NO T CROSS-RE FERENCED." ,"") .S CH EDRJ="E401 a" D RCDER R^CHMXPU01 N DICI S DICI=0,DIC I=$O(^CHMI CDX("C",CH FLD(CHFLPN ),DICI)) ; DIAGNOSIS CODE INDE X FOR ^CHM ICDX() S D OS=$$GETDO S() ; DOS IS DETERMI NED DIFFER ENTLY FOR I/P/D CLAI M TYPES D DEBUG^CHMX DR01(" DXQ UAL^CHMXDR 01: DOS= " _DOS_" ICD 10 FLAG: " _$P(^CHMIC DX(DICI,0) ,"^",24)_" EFF DATE: "_$P(^CHMI CDX(DICI,0 ),"^",22)_ " TERM DAT E:",$P(^CH MICDX(DICI ,0),"^",23 )) I DOS'= "" D ; I F WE HAVE A VALID DO S, COMPARE AGAINST I CDX DATES .I $P(^CHM ICDX(DICI, 0),"^",24) D ; IF IC D-10 FLAG IS SET ..I $P(^CHMIC DX(DICI,0) ,"^",23)=" " D ; NO TERM INATION DA TE ...I DO S<$P(^CHMI CDX(DICI,0 ),"^",22) D ; CH ECK EFFECT IVE DATE A GAINST DOS ....D DEB UG^CHMXDR0 1(" DXQUAL ^CHMXPU04 DOS: "_DOS _" BEFORE ICD-10 EFF ECTIVE DAT E:",$P(^CH MICDX(DICI ,0),"^",22 )) ....S C HEDRJ="E41 J2a" D RCD ERR^CHMXPU 01 ; SET E ARLY REJEC T FOR ICD- 10 DIAG/NO TERM DATE , DOS BEFO RE EFFECTI VE DATE .. E I ((DOS <$P(^CHMIC DX(DICI,0) ,"^",22))! (DOS>$P(^C HMICDX(DIC I,0),"^",2 3))) D ; CHEC K DOS AGAI NST ICD-10 CODE EFFE CTIVE/TERM INATION DA TES ...D D EBUG^CHMXD R01(" DXQU AL^CHMXPU0 4 DOS: "_D OS_" OUTSI DE ICD-10 EFF/TERM D ATES:",$P( ^CHMICDX(D ICI,0),"^" ,22)_"/"_$ P(^CHMICDX (DICI,0)," ^",23)) .. .S CHEDRJ= "E41J2a" D RCDERR^CH MXPU01 ; S ET EARLY R EJECT ICD- 10 DIAG OU TSIDE EFF/ TERM DATES .E D ; CODE IS ICD-9 DIAG CODE ..I DOS>$P (^CHMICDX( DICI,0),"^ ",23) D ; CHECK SVC "TO" D ATE AGAINS T ICD-9 TE RMINATION DATE ...D DEBUG^CHMX DR01(" DXQ UAL^CHMXPU 04 DOS: "_ DOS_" AFTE R ICD-9 TE RM DATE:", $P(^CHMICD X(DICI,0), "^",23)) . ..S CHEDRJ ="E41J2a" D RCDERR^C HMXPU01 ; SET EARLY REJECT, IC D-9 DOS AF TER TERMNA TION DATE E D .I ($ $CLMTYPE^C HMXP010()= "A")&(CHXR EC["E") D ; "A"=INST ,"B"=PROF, C=DNTL ..D DEBUG^CHM XDR01(" DX QUAL^CHMXP U04 INVALI D DOS: ",D OS) ..S CH EDRJ="E401 a" D RCDER R^CHMXPU01 ; SET EAR LY REJECT, INVALID D OSXDXQUAL K CHHCQLF ,CHDIF,CHE ND Q ; ;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;; ; GE T THE DATE OF SERVIC E. IF CLAI M LEVEL RE CORDS, GET FROM ^CHM XCLE; ; O THERWISE G ET IT FROM ^CHMXCLF ; DETERMIN E IF CLAIM LEVEL OR LINE LEVEL BY CHXREC VALUE ("E XXX" VS "F XXX") ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;; ;GETD OS() N CL MTYPE,DOS, ERR,CHCLFI S DOS="", ERR=0 S CL MTYPE=$$CL MTYPE^CHMX P010() ; " A"=INST,"B "=PROF,C=D NTL U 0 W: $$ENVIR^CH TFLIB'="LI VE" !,"CLA IM TYPE= " ,CLMTYPE I CLMTYPE=" A" D .I ' $D(^CHMXCL E(CHCLEI)) D Q ; NEED TO GET THE DO S; IF NO C LAIM INDEX , REJECT . .S ERR=1 . .U 0 W:$$E NVIR^CHTFL IB'="LIVE" !,"NO ^CH MXCLE(",CH CLEI,") NO DE" .I $P( ^CHMXCLE(C HCLEI,1)," ^",2)="" D Q ..S E RR=1 ..U 0 W:$$ENVIR ^CHTFLIB'= "LIVE" !," NO STATEME NT ""TO"" DATE ENTRY @^CHMXCLE (",CHCLEI, ",1),""^"" ,2)" .S:'E RR DOS=$P( ^CHMXCLE(C HCLEI,1)," ^",2) ; ST ATEMENT DA TE FOR INS TITUTIONAL CLAIM .S DOS=$$YR8F MYR^CHTFLI B(DOS) ; ^ CHMXCLE() STORES DOS AS YYYYMM DD, ^CHMIC DX() STORE S AS FM DA TE E D .U 0 W:$$ENV IR^CHTFLIB '="LIVE" ! ,"CHMXPU04 : GETDOS: CHCLEI= ", CHCLEI," $ D(^CHMXCLF (""B"",",C HCLEI,")= ",$D(^CHMX CLF("B",CH CLEI)) .I CHXREC["E" D Q ..U 0 W:$$ENV IR^CHTFLIB '="LIVE" ! ,"CHMXPU04 : GETDOS: OUTPATIENT CLAIM REC ORD ""EXXX "" DIAG CO DES: NO CL AIM LEVEL DOS." .E I CHXREC[" F" D ..I '$D(^CHMXC LF("B",CHC LEI)) D Q ; VERIFY ^CH MXCLF CROS S-REFERENC E ...S ERR =1 ...U 0 W:$$ENVIR^ CHTFLIB'=" LIVE" !,"N O ^CHMXCLF (""B"",",C HCLEI,"(^C HMXCLE()IN DEX)) XREF " ..S CHCL FI=0,CHCLF I=$O(^CHMX CLF("B",CH CLEI,CHCLF I)) ; GET THE ^CHMXC LF INDEX . .I '$D(^CH MXCLF(CHCL FI,1)) D Q ...S ERR =1 ...U 0 W:$$ENVIR^ CHTFLIB'=" LIVE" !,"N O ^CHMXCLF (",CHCLFI, ",1) NODE" ; CHECK THE DOS NO DE ..I ($P (^CHMXCLF( CHCLFI,1), "^",12)="" )&($P(^CHM XCLF(CHCLF I,1),"^",1 1)="") D . ..S ERR=1 ...U 0 W:$ $ENVIR^CHT FLIB'="LIV E" !,"NO S TATEMENT " "FROM/TO"" DATES @^C HMXCLF(",C HCLFI,",1) ,""^"",11/ 12)" ..I 'ERR D .. .S DOS=$P( ^CHMXCLF(C HCLFI,1)," ^",12) ; S ERVICE LIN E STATEMEN T "TO" DAT E ...S:DOS ="" DOS=$P (^CHMXCLF( CHCLFI,1), "^",11) ; SERVICE LI NE STATEME NT "FROM" DATE ...S DOS=$$YR8F MYR^CHTFLI B(DOS) ; S VC LINE ST ORES DOS A S YYYYMMDD , ^CHMICDX () STORES AS FM DATE Q DOS ; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;; ; THE FOLLOW ING CODE W AS DISABLE D FOR 5010 IMPLEMENT ATION ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;; ;PDXCD ;THIS CODE INSER TS THE PRI MARY DIAG CODE INTO ^CHMXCLE(I ,42)---DON 'T DO THAT IN 5010 Q ;INFERS ADM DX FR OM PRINCIP AL DX IF N O ADM DX C ODE D DEBU G^CHMXDR01 ("CHMXPU04 : PDXCD CH FLD(CHFLPN )= ",CHFLD (CHFLPN)) Q:'$D(^CHM XCLE(CHCLE I,0)) Q:$P (^CHMXCLE( CHCLEI,0), "^",4)="" Q:$P(^CHM XCLE(CHCLE I,0),"^",5 )="" S ZZ TOS=$P(^CH MXCLE(CHCL EI,0),"^", 4) I ZZTOS '="" I ($P (^CHMXCLE( CHCLEI,0), "^",5)="A" )&($D(^CHM XDIC(74120 1.03,"D",1 ,ZZTOS))) D G PDXCD 1 .I '$D(^ CHMXCLE(CH CLEI,40)) S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="E 401a",CHHC QLF="",CHF LPN=0,CHFL D(CHFLPN)= "" D SETDT A Q .I '$D (^CHMXCLE( CHCLEI,40, 1,0)) S CH SUB1=49,CH SUB2=1,CHE DRJ="E401a ",CHHCQLF= "",CHFLPN= 0,CHFLD(CH FLPN)="" D SETDTA Q .I $P(^CHM XCLE(CHCLE I,40,1,0), "^",1)="" S CHSUB1=4 9,CHSUB2=1 ,CHEDRJ="E 401a",CHHC QLF="",CHF LPN=0,CHFL D(CHFLPN)= "" D SETDT A Q .I '$D (^CHMXCLE( CHCLEI,42) ) D ..S:'$ D(^CHMXCLE (CHCLEI,42 ,0)) ^CHMX CLE(CHCLEI ,42,0)="^7 41210.1242 ^0^0" ..S $P(^CHMXCL E(CHCLEI,4 2,0),"^",3 )=$P(^CHMX CLE(CHCLEI ,42,0),"^" ,3)+1,EI=$ P(^CHMXCLE (CHCLEI,42 ,0),"^",3) ,$P(^CHMXC LE(CHCLEI, 42,0),"^", 4)=$P(^CHM XCLE(CHCLE I,42,0),"^ ",4)+1 ..D DEBUG^CHM XMDRV("CHM XPU04: PDX CD 'J' = " ,EI) ..S $ P(^CHMXCLE (CHCLEI,42 ,EI,0),"^" )=$P(^CHMX CLE(CHCLEI ,40,1,0)," ^",1) ..S ^CHMXCLE(C HCLEI,42," B",$P(^CHM XCLE(CHCLE I,40,1,0), "^"),EI)=" "PDXCD1 K CHCODE,Z ZTOS Q ; G THCQLF I '$D(RCD) S CHEDPRB=" " G GTHCQL F1 S Y=$E( RCD,CHFLST -CHDIF,CHF LST-CHEND) ,CHHCQLF=$ $TRIM^CHMX PU01(Y) U 0 W:$$ENVI R^CHTFLIB' ="LIVE" !, "CHMXPU04: GTHCQLF() : CHHCQLF= ",CHHCQLF ;I CHHCQL F="" S CHE DPRB="" QG THCQLF1 K Y Q ; ;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;; ; FOR MAT THE DI AGNOSTIC C ODES FOR I CD-9 AND I CD-10 ; AT ENTRY, CH FLD(CHFLPN ) CONTAINS THE DIAGN OSTIC CODE TO BE FOR MATTED, AN D "JZ" ; C ONTAINS TH E LOCATION (FROM THE LEFT) AT WHICH TO I NSERT THE "." FOR TH E CODE ; N OTE: WHEN THE DIAG C ODES ARRIV E IN CHMXP U04, THERE IS A LEAD ING "E" IN ; CHFLD( CHFLPN). T HE "E" COD E IS A SPE CIAL CASE FROM OSHA( ?) THAT IS DIFFERENT ; FROM AL L OTHER DI AGNOSIS CO DES, THIS CAUSES THE $E(CHFLD( CHFLPN)) T O LOCATE T HE ; "." IN A DIFFE RENT LOCAT ION FOR TH ESE DIAG C ODES. FOR THIS REASO N, THERE I S AN ; AD DER TO THE "JZ" VALU E TO CORRE CTLY LOCAT E THE DESI RED "." IN THE FORMA T. DLB 9/2 5/2015 ; D EBUG FOR D EF019158; MODIFIED T HE LOGIC T O ENSURE T HE CORRECT FORMATTIN G DLB 10/2 3/2015 ; 2 /1/2016 FI X THE FORM ATTING ISS UE FOR "BK " 311 ICD- 9 DIAGNOSI S CODES ;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;;;; ;;;;;;;; ; STFRMT ;SETS FORM AT FOR DX/ PX CODES D DEBUG^CHM XDR01(" CH MXPU04: ST FRMT(): CH FLD(CHFLPN )="""_CHFL D(CHFLPN)_ """ $L(CHF LD(CHFLPN) ="_$L(CHFL D(CHFLPN)) _" JZ="_JZ _" $E(CHFL D(CHFLPN), 1,JZ)=",$E (CHFLD(CHF LPN),1,JZ) ) I $L(CHH CQLF)=2 D ; ICD-9 COD E QUALIFIE RS ARE 2 D IGITS .I $ E(CHFLD(CH FLPN),1,1) ="E" D ; IF THERE I S A LEADIN G "E" FOR DIAG CODE ..S:$L(CH FLD(CHFLPN ))>JZ+1 CH FLD(CHFLPN )=$E(CHFLD (CHFLPN),1 ,JZ+1)_"." _$E(CHFLD( CHFLPN),JZ +2,99) .E S:$L(CHFL D(CHFLPN)) >JZ CHFLD( CHFLPN)=$E (CHFLD(CHF LPN),1,JZ) _"."_$E(CH FLD(CHFLPN ),JZ+1,99) ; ICD-9; NORMAL FOR MATTING .I (CHFLD(CH FLPN))["." D; ENSURE THERE IS A "." IN TH E CODE BEF ORE GOING FORWARD .. I $P(CHFLD (CHFLPN)," .",2)="" D ; IF NO VALUES AF TER THE ". ", NO "." REQUIRED . ..S CHFLPN LG=$L(CHFL D(CHFLPN)) ,CHFLD(CHF LPN)=$E(CH FLD(CHFLPN ),1,CHFLPN LG-1) ...K CHFLPNLG E S:$L(CH FLD(CHFLPN ))>JZ CHFL D(CHFLPN)= $E(CHFLD(C HFLPN),1,J Z)_"."_$E( CHFLD(CHFL PN),JZ+1,9 9) ; ICD-1 0 QUALIFIE RS ARE 3 D IGITS D DE BUG^CHMXDR 01(" CHMXP U04: EXIT STFRMT(): CHFLD(CHFL PN)= ",CHF LD(CHFLPN) )STFRMT1 K JZ Q ; S TTC ;S ETS FORMAT FOR TC CO DES Q ; ST DR ;SE TS FORMAT FOR DR COD ES Q ; SET DTA ;SET S APPROPRI ATE HC COD E DATA UP IN CHDTA A RRAYS D DE BUG^CHMXDR 01(" CHMXP U04: SETDT A CHFLD(CH FLPN)= """ ,CHFLD(CHF LPN)_"""^" _CHSUB1_"^ "_CHSUB2) Q:CHSUB1=" NONE" I '$ D(CHDTA(CH SUB1,CHSUB 2)) S CHVA R=0 S:CHSU B1'=49 CHD TA(CHSUB1, CHSUB2,CHV AR)="" D Q:((CHHCQL F["BK")!(C HHCQLF["BR ")!(CHHCQL F["BP"))&( CHSUB1'=49 ) .I (CHHC QLF["BK")! (CHHCQLF[" BR")!(CHHC QLF["BP")! (CHHCQLF[" BJ"),CHSUB 1'=49 S CH DTA(CHSUB1 ,CHSUB2,CH VAR)=CHFLD (CHFLPN) Q S CHVAR=9 999,CHVAR= $O(CHDTA(C HSUB1,CHSU B2,CHVAR), -1)+1 I CH SUB1=49 D G SETDTA1 .;S CHDTA (CHSUB1,CH SUB2,CHVAR )=CHEDRJ_" *"_CHFLD(C HFLPN) .I $D(CHXSTYP ) Q:CHXSTY P=1 ; QUIT IF OCR -- NO REJECT S RECORDED .Q:$G(CHE DRJ)="NONE " ; QUIT NO E RRORS ARE TO BE RECO RDED .S C HRCERR(CHX REC,CHEDRJ )="",CHLVL RJ("E")="" S CHDTA( CHSUB1,CHS UB2,CHVAR) =CHFLD(CHF LPN)SETDTA 1 K CHSUB 1,CHSUB2,C HVAR Q ; B TQICT ;M ATCH BILL TYPE QUALI FIER TO IC TYPE Q:$D (CHRCERR(C HXREC,"E05 a")) Q:'$D (^CHMXCLA( CHCLAI,0)) S CHICTYP =$E($P(^CH MXCLA(CHCL AI,0),"^", 14),7,99) Q:CHICTYP= "" I (CHFL D(CHFLPN)= "A")&(CHIC TYP'="HOSP ") D RCDER R^CHMXPU01 G BTQICT1 I (CHFLD( CHFLPN)="B ")&(CHICTY P'="PHYS") D RCDERR^ CHMXPU01 G BTQICT1BT QICT1 K C HICTYP Q ; GETODT ;PULLS THE TO DATE F OR OCC/OCC SPAN CODE S TO COMPA RE TO THRU DATE I '$ D(RCD) S C HEDPRB="" G GETODT1 S Y=$E(RCD ,CHFLST-CH DIF,CHFLST -CHEND),CH TODT=$$TRI M^CHMXPU01 (Y)GETODT1 Q ; GETH RDT ;PULL S THE THRO UGH DATE F OR OCC/OCC SPAN CODE S TO COMPA RE TO TO D ATE I '$D( RCD) S CHE DPRB="" G GETHRDT1 S Y=$E(RCD, CHFLST-CHD IF,CHFLST- CHEND),CHT HRDT=$$TRI M^CHMXPU01 (Y)GETHRDT 1 Q ; ICND CNMS ;MISS ING ICN/DC N # WHEN C LAIM FREQU ENCY = 5,7 OR 8 Q:$D (CHRCERR(C HXREC,"E33 a")) Q:'$D (^CHMXCLE( CHCLEI,0)) S CHFREQ= $P(^CHMXCL E(CHCLEI,0 ),"^",6) Q :'CHFREQ I (((CHFREQ =7)!(CHFRE Q=8))&(CHF LD(CHFLPN) ="")) D RC DERR^CHMXP U01 G ICND CN1 I CHFR EQ=8 D G ICNDCN1 .Q :'$D(^CHMP AY("B",CHF LD(CHFLPN) )) .S CHMX CLMI=0,CHM XCLMI=$O(^ CHMPAY("B" ,CHFLD(CHF LPN),CHMXC LMI)) .Q:C HMXCLMI="" .S CHMXCL M=CHFLD(CH FLPN) .D ^ CHMXMM06 Q ICNDCN1 K CHFREQ,CH MXCLMI,CHM XCLM Q ; ;Methodica l-5010 Cha nge-BeginI CNBLANK ;B LANK OR NO MATCHING ICN/DCN # WHEN CLAIM FREQUENCY = 7 OR 8 N CHFREQ Q :'$D(^CHMX CLE(CHCLEI ,0)) S CHF REQ=$P(^CH MXCLE(CHCL EI,0),"^", 6) Q:'CHFR EQ Q:CHFRE Q'=7&(CHFR EQ'=8) I C HFLD(CHFLP N)="" D RC DERR^CHMXP U01 Q Q:$D (^CHMPAY(" B",CHFLD(C HFLPN)))!( $D(^CHMIMA GE(CHFLD(C HFLPN)))) D RCDERR^C HMXPU01 Q GENROPDI ; Generate a Re-open PDI Number with a 97 Program I ndicator f or CHAMPVA claim ; o r 90 for a Spina Bif ida claim N CHFREQ,C HJUL,CHMFO PDI,DN,DT, J,PI,SN,VA L,X S CHFR EQ=$P(^CHM XCLE(CHCLE I,0),"^",6 ) Q:(CHFRE Q'=5)&(CHF REQ'=6)&(C HFREQ'=7)& (CHFREQ'=8 ) ;Not a R eopen S CH MFOPDI=CHF LD(CHFLPN) I CHMFOPD I="" Q ;M ove on to reject cod e validati ons D NOW^ %DTC S DT= X S X=$E(D T,1,3)_"00 00" D H^%D TC S CHJUL =($P($H,", ",1)-%H)+1 F J=1:1:( 3-$L(CHJUL )) S CHJUL ="0"_CHJUL S VAL=$$V ALPDI(CHMF OPDI,CHJUL ) I 'VAL Q S PI=$E(C HMFOPDI,8, 9) I PI'=9 1,PI'=92 Q ;Need Pr ogram Indi cators of 91 for CHA MPVA and 9 2 for Spin a Bifida I $E($G(CHC LCNB),8,9) ="00" D .S CHMFPDI=C HCLCNB .I PI=91 S $E (CHMFPDI,8 ,9)=97 .I PI=92 S $E (CHMFPDI,8 ,9)=90 E D .L ^CHMD IC(741002. 38,DT) I ' $D(^CHMDIC (741002.38 ,DT)) S $P (^CHMDIC(7 41002.38,0 ),"^",3)=D T D ..S $P (^CHMDIC(7 41002.38,0 ),"^",4)=$ P(^(0),"^" ,4)+1 ..S ^CHMDIC(74 1002.38,DT ,0)=DT_"^0 ^0^0^0" Q .S $P(^CHM DIC(741002 .38,DT,0), "^",2)=$P( ^CHMDIC(74 1002.38,DT ,0),"^",2) +1,DN=$P(^ CHMDIC(741 002.38,DT, 0),"^",2) L .F J=1:1 :(6-$L(DN) ) S DN="0" _DN .S SN= $S(PI=91:9 7,PI=92:90 ,1:00) ;CH AMPVA and Spina Bifi da reopen program in dicators. .S CHMFPDI =$$FMYR^CH TFLIB(DT)_ CHJUL_SN_D N S $P(^CH MXCLE(CHCL EI,100),"^ ",2)=CHMFP DI S ^CHMX CLE("PDI", CHMFPDI,CH MXCCNB,CHM XCLI,CHCLA I_"*"_CHCL BI_"*"_CHC LCI_"*"_CH CLEI)="" K ^CHMXCLE( "PDI",CHCL CNB,CHMXCC NB,CHMXCLI ,CHCLAI_"* "_CHCLBI_" *"_CHCLCI_ "*"_CHCLEI ) I ($D(^C HMIMG(CHMF PDI)))!($D (^CHMIMAGE (CHMFPDI)) ) D EMAIL^ CHMXMPDI Q ; RFE 12/ 27/16 DEF0 27118 Safe guard to p revent two claims on the same PDI S $P(^ CHMIMG(CHM FPDI,0),"^ ")=CHMFPDI ,$P(^(0)," ^",2)=1,$P (^(0),"^", 6)=1,$P(^( 0),"^",18) =CHMXCLI,^ CHMIMG("F" ,CHMXCLI,C HMFPDI)="" ,^CHMIMG(" B",CHMFPDI ,CHMFPDI)= "" D NOW^% DTC S:'$D( %) %=DT S CHMDT=% S $P(^CHMIMG (CHMFPDI,0 ),"^",3)=C HMFDUZ,$P( ^(0),"^",4 )=%,$P(^(0 ),"^",17)= 4 S $P(^CH MDIC(74100 2.38,PD,0) ,"^",3)=$P (^(0),"^", 3)+1 S ^CH MIMAGE(CHM FPDI,0)=CH MFPDI_"^"_ 1_"^"_CHMF DUZ_"^"_CH MDT_"^^^^" _4 S (CHMF PGNM,CHMFI MAG)=1 S ^ CHMIMAGE(C HMFPDI,1,C HMFPGNM,0) =CHMFPGNM S ^CHMIMAG E(CHMFPDI, 1,CHMFPGNM ,2,CHMFIMA G,0)=CHMFI MAG_"^^^"_ 1_"^"_3 S ^CHMIMAGE( "B",CHMFPD I,CHMFPDI) ="",^CHMIM AGE(CHMFPD I,1,"B",CH MFPGNM,CHM FPGNM)="" S CHMFPP=" SIP" D ^CH MFWK01 Q ;ICNVOID ; If frequ ency code equals 8 - check for valid Ori ginal PID and set cl aims statu s ; ajf; c pe005-033 invalid PD I, if PDI does not e xist in im age file, reject wit h E33a, ;N CHFREQ S CHFREQ=$P( ^CHMXCLE(C HCLEI,0)," ^",6) Q:CH FREQ'=8 S CHMFOPDI=C HFLD(3) ;Q uit if ori ginal is f ound in ^C HMIMAGE Q :$D(^CHMIM AGE(CHMFOP DI)) S CHR CERR(CHXRE C,"E33a")= "",CHLVLRJ ("E")="" D CSTAT^CHM XPUTL(CHMF OPDI,"F2:4 64:736") ; I CHFREQ=8 ,$$REMV^CH MXPUTL(CHF LD(CHFLPN) ) D RCDERR ^CHMXPU01 Q ;S CHMXC LM=CHFLD(C HFLPN) D ^ CHMXMM06 ; Message to group mai l Q ;ICNVO ID2 ; If frequency code equal s 8 - chec k for vali d Original PID and r eject all claims tha t are in " in process " ; HM/SS; cpe005-04 3 TOB FC 8 All Claim s Lines No t Complete ;quit if the freque ncy code i s not 8 Q: $P(^CHMXCL E(CHCLEI,0 ),"^",6)'= 8 ;quit if the origi nal PDI is empty Q:+ CHFLD(3)=0 ;set vari able to th e the orig inal PDI N OPDI S OP DI=CHFLD(3 ) ;CMPLLN( OPDI) ; CO MPLETE CLA IM LINES T HAT ARE NO T COMPLETE D FOR PDI N CLMCRS,C LMSTAT,PDI FNL,CNT, D A,DR S CNT =0,CLMCRS= 0,CLMSTAT= 0 F S CLM CRS=$O(^CH MPAY("C",O PDI,CLMCRS )) Q:CLMCR S="" D .S CLMSTAT=$ P($G(^CHMP AY(CLMCRS, 0)),"^",2) .I CLMSTA T=1 D ..S DIE=741000 ,DA=CLMCRS ,DR=".02// /0" D ^DIE K DIE ..S DIE=74100 0,DA=CLMCR S,DR=".13/ //404" D ^ DIE K DIE ;Call PDIF INAL^CHSTA T to trigg er CSTAT m essages wi th F0:686 status S P DIFNL=$$PD IFINAL^CHC STAT(OPDI, "F0:686") S DIE=7410 00.2,DA=OP DI,DR=".06 ///4" D ^D IE K DIE Q ;VALPDI(C HMFOPDI,CH JUL) ;Vali date Origi nal PDI Nu mber ; N C URDT,JDAY, OPDIYR S C HMFOPDI=$G (CHMFOPDI) ,CHJUL=$G( CHJUL) I C HMFOPDI'?1 5N Q 0 I $ E(CHMFOPDI ,1,4)<2000 Q 0 S OPD IYR=$E(CHM FOPDI,1,4) S CURDT=$ $HTE^XLFDT ($H,7),CUR YR=$E(CURD T,1,4) I O PDIYR>CURY R Q 0 S JD AY=$E(CHMF OPDI,5,7) I JDAY<"00 1"!(JDAY>" 366") Q 0 I '$D(^CHM IMG(CHMFOP DI)) Q 0 ; This is no t a Re-ope n claim. I $P($G(^CH MIMG(CHMFO PDI,"E-REO PEN")),"^" ,3)=1 Q 0 Q 1 ;Meth odical-501 0 Change-E nd | |||||
10 | ||||||
11 | ||||||
12 | Difference s | |||||
13 | ||||||
14 | ICNVOID2 ; If frequ ency code equals 8 - check for valid Ori ginal PID and reject all claim s that are in "in pr ocess" ; H M/SS; cpe0 05-043 TOB FC 8 All Claims Lin es Not Com plete ;qui t if the f requency c ode is not 8 Q:$P(^C HMXCLE(CHC LEI,0),"^" ,6)'=8 ;qu it if the original P DI is empt y Q:+CHFLD (3)=0 ;set variable to the the original PDI N OPDI S OPDI=CH FLD(3) ;CM PLLN(OPDI) ; COMPLET E CLAIM LI NES THAT A RE NOT COM PLETED FOR PDI N CLM CRS,CLMSTA T,PDIFNL,C NT,DA,DR S CNT=0,CLM CRS=0,CLMS TAT=0 F S CLMCRS=$O (^CHMPAY(" C",OPDI,CL MCRS)) Q:C LMCRS="" D .S CLMST AT=$P($G(^ CHMPAY(CLM CRS,0)),"^ ",2) .I CL MSTAT=1 D ..S DIE=74 1000,DA=CL MCRS,DR=". 02///0" D ^DIE K DIE ..S DIE=7 41000,DA=C LMCRS,DR=" .13///404" D ^DIE K DIE ;Call PDIFINAL^C HSTAT to t rigger CST AT message s with F0: 686 status S PDIFNL= $$PDIFINAL ^CHCSTAT(O PDI,"F0:68 6") S DIE= 741000.2,D A=OPDI,DR= ".06///4" D ^DIE K D IE Q ; | |||||
15 | ||||||
16 | Passed XIN DEX? (Y / N): Y (f or the new code) |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.