ABMP2614 ; IHS/SD/SDR - 3P BILLING 2.6 Patch 14 POST INIT ;
;;2.6;IHS Third Party Billing;**14**;NOV 12, 2009;Build 238
;IHS/SD/SDR - 2.6*14 - CR3165 - Changed 3P Error Codes entry 155 from error to warning
;
Q
POST ;
D ICDEFFDT ;Change ICD-10 Effective date to 10/1/2015 for all insurers
D ERRORCD ;create new claim editor error codes
D PCCST ;new 3P PCC VISIT BILLING STATUS entry
D CCREASON ;new cancelled claim reason
D FEEINDX ;re-index fee table
D ADA12Q ;add to ADA-2012 questions
;
Q
ICDEFFDT ;
D MES^XPDUTL("Auto-populating ICD-10 EFFECTIVE DATE with 10/1/2015 for all insurers...")
S ABMHOLD=DUZ(2)
S DUZ(2)=0
F S DUZ(2)=$O(^ABMNINS(DUZ(2))) Q:'DUZ(2) D
.S ABMDA=0
.F S ABMDA=$O(^ABMNINS(DUZ(2),ABMDA)) Q:'ABMDA D
..K DIC,DIE,DIR,X,Y,DA,DR
..S DIE="^ABMNINS("_DUZ(2)_","
..S DA=ABMDA
..S DR=".12////3151001"
..D ^DIE
S DUZ(2)=ABMHOLD
Q
ERRORCD ;
;ICD10 002F
;245 - Active Insurer requires ICD-9 codes, not ICD-10
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=245
S X="Active Insurer requires ICD-9 codes, not ICD-10"
S DIC("DR")=".02///Review codes on claim using View Option"
S DIC("DR")=DIC("DR")_";.03///E"
K DD,DO
D FILE^DICN
D SITE(245)
;246 - Active Insurer requires ICD-10 codes, not ICD-9
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=246
S X="Active Insurer requires ICD-10 codes, not ICD-9"
S DIC("DR")=".02///Review codes on claim using View Option"
S DIC("DR")=DIC("DR")_";.03///E"
K DD,DO
D FILE^DICN
D SITE(246)
;247 - Multiple ICD code sets used on claim
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=247
S X="Multiple ICD code sets used on claim"
S DIC("DR")=".02///Review codes on claim using View Option"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(247)
;248 - Uncoded Procedure code on the claim
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=248
S X="Uncoded Procedure code on the claim"
S DIC("DR")=".02///Review codes on claim using View Option"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(248)
;249 - Service Dates cross over ICD-10 Effective Date
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=249
S X="Service Dates cross over ICD-10 Effective Date"
S DIC("DR")=".02///Consider splitting claim, one for ICD-9 and one for ICD-10"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(249)
;250 - DOS after ICD Indicator Date
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=250
S X="DOS after ICD Indicator Date"
S DIC("DR")=".02///ICD-10 codes required for billing"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(250)
;251 - Wrong DX coding version used
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=251
S X="Wrong Diagnosis Coding Version Used"
S DIC("DR")=".02///Review code set on page 5"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(251)
;252 - Insurer file missing Entry named Veterans Medical Benefit
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=252
S X="INSURER FILE MISSING ENTRY NAMED VETERANS MEDICAL BENEFIT"
S DIC("DR")=".02///Through the Insurer Maintenance Menu Option add an Insurer named VETERANS MEDICAL BENEFIT"
S DIC("DR")=DIC("DR")_";.03///E"
K DD,DO
D FILE^DICN
D SITE(252)
;253 - This is a VA Claim with Medicare/Medicaid
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=253
S X="This is a VA Claim with Medicare/Medicaid"
S DIC("DR")=".02///This is a VA Claim with Medicare/Medicaid"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(253)
;254 - This is a VA Claim with Pharmacy charges in PCC
K DIC,X
S DIC="^ABMDERR("
S DIC(0)="LM"
S DINUM=254
S X="This is a VA Claim with Pharmacy charges in PCC"
S DIC("DR")=".02///This is a VA Claim with Pharmacy charges in PCC"
S DIC("DR")=DIC("DR")_";.03///W"
K DD,DO
D FILE^DICN
D SITE(254)
;155 - Change existing code from error to warning due to page 9A displaying more frequently
K DIC,X
S DIE="^ABMDERR("
S DA=155
S DR=".03////W"
D ^DIE
S DUZHOLD=DUZ(2)
S DUZ(2)=0
F S DUZ(2)=$O(^ABMDERR(155,31,DUZ(2))) Q:'DUZ(2) D
.S DA(1)=155
.S DA=DUZ(2)
.S DIE="^ABMDERR("_DA(1)_",31,"
.S DR=".03////W"
.D ^DIE
Q
;
SITE(ABMX) ;
S DUZHOLD=DUZ(2)
S DUZ(2)=0
F S DUZ(2)=$O(^ABMDCLM(DUZ(2))) Q:'+DUZ(2) D
.S DIC(0)="LX"
.S DA(1)=ABMX
.S DIC="^ABMDERR("_DA(1)_",31,"
.S DIC("P")=$P(^DD(9002274.04,31,0),U,2)
.S DINUM=DUZ(2)
.S X=$P($G(^DIC(4,DUZ(2),0)),U)
.S DIC("DR")=".03////"_$S("^247^248^249^250^251^253^254^"[("^"_ABMX_"^"):"W",1:"E")
.D ^DIC
.K DA,DIC,DINUM
S DUZ(2)=DUZHOLD
K DUZHOLD,DLAYGO,ABMX
Q
;
PCCST ;new 3P PCC VIST BILLING STATUS entry
K DIC,X,DINUM
S DIC="^ABMDCS("
S DINUM=63
S X="VMBP COVERAGE; VISIT OUTSIDE ELIGIBILITY DATES (NE)"
S DIC(0)="ML"
K DD,DO
D FILE^DICN
Q
CCREASON ;
K DIC,X,DINUM,DR,DLAYGO
S DIC="^ABMCCLMR("
S DIC(0)="LM"
S X="UNBILLABLE CLAIM; Patient Incarcerated"
D ^DIC
Q
FEEINDX ;EP
S DIK="^ABMDFEE("
D ENALL^DIK
Q
ADA12Q ;
S DIE="^ABMDEXP("
S DA=34
S DR=".08////1,2,3,4,16,17,18,32,33"
D ^DIE
Q
ABMP2614 ; IHS/SD/SDR - 3P BILLING 2.6 Patch 14 POST INIT ;
+1 ;;2.6;IHS Third Party Billing;**14**;NOV 12, 2009;Build 238
+2 ;IHS/SD/SDR - 2.6*14 - CR3165 - Changed 3P Error Codes entry 155 from error to warning
+3 ;
+4 QUIT
POST ;
+1 ;Change ICD-10 Effective date to 10/1/2015 for all insurers
DO ICDEFFDT
+2 ;create new claim editor error codes
DO ERRORCD
+3 ;new 3P PCC VISIT BILLING STATUS entry
DO PCCST
+4 ;new cancelled claim reason
DO CCREASON
+5 ;re-index fee table
DO FEEINDX
+6 ;add to ADA-2012 questions
DO ADA12Q
+7 ;
+8 QUIT
ICDEFFDT ;
+1 DO MES^XPDUTL("Auto-populating ICD-10 EFFECTIVE DATE with 10/1/2015 for all insurers...")
+2 SET ABMHOLD=DUZ(2)
+3 SET DUZ(2)=0
+4 FOR
SET DUZ(2)=$ORDER(^ABMNINS(DUZ(2)))
IF 'DUZ(2)
QUIT
Begin DoDot:1
+5 SET ABMDA=0
+6 FOR
SET ABMDA=$ORDER(^ABMNINS(DUZ(2),ABMDA))
IF 'ABMDA
QUIT
Begin DoDot:2
+7 KILL DIC,DIE,DIR,X,Y,DA,DR
+8 SET DIE="^ABMNINS("_DUZ(2)_","
+9 SET DA=ABMDA
+10 SET DR=".12////3151001"
+11 DO ^DIE
End DoDot:2
End DoDot:1
+12 SET DUZ(2)=ABMHOLD
+13 QUIT
ERRORCD ;
+1 ;ICD10 002F
+2 ;245 - Active Insurer requires ICD-9 codes, not ICD-10
+3 KILL DIC,X
+4 SET DIC="^ABMDERR("
+5 SET DIC(0)="LM"
+6 SET DINUM=245
+7 SET X="Active Insurer requires ICD-9 codes, not ICD-10"
+8 SET DIC("DR")=".02///Review codes on claim using View Option"
+9 SET DIC("DR")=DIC("DR")_";.03///E"
+10 KILL DD,DO
+11 DO FILE^DICN
+12 DO SITE(245)
+13 ;246 - Active Insurer requires ICD-10 codes, not ICD-9
+14 KILL DIC,X
+15 SET DIC="^ABMDERR("
+16 SET DIC(0)="LM"
+17 SET DINUM=246
+18 SET X="Active Insurer requires ICD-10 codes, not ICD-9"
+19 SET DIC("DR")=".02///Review codes on claim using View Option"
+20 SET DIC("DR")=DIC("DR")_";.03///E"
+21 KILL DD,DO
+22 DO FILE^DICN
+23 DO SITE(246)
+24 ;247 - Multiple ICD code sets used on claim
+25 KILL DIC,X
+26 SET DIC="^ABMDERR("
+27 SET DIC(0)="LM"
+28 SET DINUM=247
+29 SET X="Multiple ICD code sets used on claim"
+30 SET DIC("DR")=".02///Review codes on claim using View Option"
+31 SET DIC("DR")=DIC("DR")_";.03///W"
+32 KILL DD,DO
+33 DO FILE^DICN
+34 DO SITE(247)
+35 ;248 - Uncoded Procedure code on the claim
+36 KILL DIC,X
+37 SET DIC="^ABMDERR("
+38 SET DIC(0)="LM"
+39 SET DINUM=248
+40 SET X="Uncoded Procedure code on the claim"
+41 SET DIC("DR")=".02///Review codes on claim using View Option"
+42 SET DIC("DR")=DIC("DR")_";.03///W"
+43 KILL DD,DO
+44 DO FILE^DICN
+45 DO SITE(248)
+46 ;249 - Service Dates cross over ICD-10 Effective Date
+47 KILL DIC,X
+48 SET DIC="^ABMDERR("
+49 SET DIC(0)="LM"
+50 SET DINUM=249
+51 SET X="Service Dates cross over ICD-10 Effective Date"
+52 SET DIC("DR")=".02///Consider splitting claim, one for ICD-9 and one for ICD-10"
+53 SET DIC("DR")=DIC("DR")_";.03///W"
+54 KILL DD,DO
+55 DO FILE^DICN
+56 DO SITE(249)
+57 ;250 - DOS after ICD Indicator Date
+58 KILL DIC,X
+59 SET DIC="^ABMDERR("
+60 SET DIC(0)="LM"
+61 SET DINUM=250
+62 SET X="DOS after ICD Indicator Date"
+63 SET DIC("DR")=".02///ICD-10 codes required for billing"
+64 SET DIC("DR")=DIC("DR")_";.03///W"
+65 KILL DD,DO
+66 DO FILE^DICN
+67 DO SITE(250)
+68 ;251 - Wrong DX coding version used
+69 KILL DIC,X
+70 SET DIC="^ABMDERR("
+71 SET DIC(0)="LM"
+72 SET DINUM=251
+73 SET X="Wrong Diagnosis Coding Version Used"
+74 SET DIC("DR")=".02///Review code set on page 5"
+75 SET DIC("DR")=DIC("DR")_";.03///W"
+76 KILL DD,DO
+77 DO FILE^DICN
+78 DO SITE(251)
+79 ;252 - Insurer file missing Entry named Veterans Medical Benefit
+80 KILL DIC,X
+81 SET DIC="^ABMDERR("
+82 SET DIC(0)="LM"
+83 SET DINUM=252
+84 SET X="INSURER FILE MISSING ENTRY NAMED VETERANS MEDICAL BENEFIT"
+85 SET DIC("DR")=".02///Through the Insurer Maintenance Menu Option add an Insurer named VETERANS MEDICAL BENEFIT"
+86 SET DIC("DR")=DIC("DR")_";.03///E"
+87 KILL DD,DO
+88 DO FILE^DICN
+89 DO SITE(252)
+90 ;253 - This is a VA Claim with Medicare/Medicaid
+91 KILL DIC,X
+92 SET DIC="^ABMDERR("
+93 SET DIC(0)="LM"
+94 SET DINUM=253
+95 SET X="This is a VA Claim with Medicare/Medicaid"
+96 SET DIC("DR")=".02///This is a VA Claim with Medicare/Medicaid"
+97 SET DIC("DR")=DIC("DR")_";.03///W"
+98 KILL DD,DO
+99 DO FILE^DICN
+100 DO SITE(253)
+101 ;254 - This is a VA Claim with Pharmacy charges in PCC
+102 KILL DIC,X
+103 SET DIC="^ABMDERR("
+104 SET DIC(0)="LM"
+105 SET DINUM=254
+106 SET X="This is a VA Claim with Pharmacy charges in PCC"
+107 SET DIC("DR")=".02///This is a VA Claim with Pharmacy charges in PCC"
+108 SET DIC("DR")=DIC("DR")_";.03///W"
+109 KILL DD,DO
+110 DO FILE^DICN
+111 DO SITE(254)
+112 ;155 - Change existing code from error to warning due to page 9A displaying more frequently
+113 KILL DIC,X
+114 SET DIE="^ABMDERR("
+115 SET DA=155
+116 SET DR=".03////W"
+117 DO ^DIE
+118 SET DUZHOLD=DUZ(2)
+119 SET DUZ(2)=0
+120 FOR
SET DUZ(2)=$ORDER(^ABMDERR(155,31,DUZ(2)))
IF 'DUZ(2)
QUIT
Begin DoDot:1
+121 SET DA(1)=155
+122 SET DA=DUZ(2)
+123 SET DIE="^ABMDERR("_DA(1)_",31,"
+124 SET DR=".03////W"
+125 DO ^DIE
End DoDot:1
+126 QUIT
+127 ;
SITE(ABMX) ;
+1 SET DUZHOLD=DUZ(2)
+2 SET DUZ(2)=0
+3 FOR
SET DUZ(2)=$ORDER(^ABMDCLM(DUZ(2)))
IF '+DUZ(2)
QUIT
Begin DoDot:1
+4 SET DIC(0)="LX"
+5 SET DA(1)=ABMX
+6 SET DIC="^ABMDERR("_DA(1)_",31,"
+7 SET DIC("P")=$PIECE(^DD(9002274.04,31,0),U,2)
+8 SET DINUM=DUZ(2)
+9 SET X=$PIECE($GET(^DIC(4,DUZ(2),0)),U)
+10 SET DIC("DR")=".03////"_$SELECT("^247^248^249^250^251^253^254^"[("^"_ABMX_"^"):"W",1:"E")
+11 DO ^DIC
+12 KILL DA,DIC,DINUM
End DoDot:1
+13 SET DUZ(2)=DUZHOLD
+14 KILL DUZHOLD,DLAYGO,ABMX
+15 QUIT
+16 ;
PCCST ;new 3P PCC VIST BILLING STATUS entry
+1 KILL DIC,X,DINUM
+2 SET DIC="^ABMDCS("
+3 SET DINUM=63
+4 SET X="VMBP COVERAGE; VISIT OUTSIDE ELIGIBILITY DATES (NE)"
+5 SET DIC(0)="ML"
+6 KILL DD,DO
+7 DO FILE^DICN
+8 QUIT
CCREASON ;
+1 KILL DIC,X,DINUM,DR,DLAYGO
+2 SET DIC="^ABMCCLMR("
+3 SET DIC(0)="LM"
+4 SET X="UNBILLABLE CLAIM; Patient Incarcerated"
+5 DO ^DIC
+6 QUIT
FEEINDX ;EP
+1 SET DIK="^ABMDFEE("
+2 DO ENALL^DIK
+3 QUIT
ADA12Q ;
+1 SET DIE="^ABMDEXP("
+2 SET DA=34
+3 SET DR=".08////1,2,3,4,16,17,18,32,33"
+4 DO ^DIE
+5 QUIT