Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ABMDE9X

ABMDE9X.m

Go to the documentation of this file.
  1. ABMDE9X ; IHS/ASDST/DMJ - Page 9 - ERROR CHECKS ;
  1. ;;2.6;IHS Third Party Billing;**1,6**;NOV 12, 2009
  1. ;
  1. ; 12/19/03 V2.5 Patch 5 - 837 modifications
  1. ; Add 192 error code for imprecise accident dates
  1. ; IHS/SD/SDR - abm*2.6*1 - HEAT6439 - Added page 9G
  1. ; IHS/SD/SDR - abm*2.6*6 - 5010 - added error 237
  1. ;
  1. A ;EP - for 9A error checks
  1. S:$P($G(^ABMDCLM(DUZ(2),ABMP("CDFN"),8)),U,4) ABMX("ACCHR")=0 S ABMX=0 F S ABMX=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),51,ABMX)) Q:'ABMX D A1
  1. S ABME("TITL")="PAGE 9A - OCCURRENCE CODES"
  1. I $D(ABMX("ACCHR")),ABMX("ACCHR")=0 S ABME(155)=""
  1. ; Having a date of accident and accident type determine Accident Related
  1. I $P($G(^ABMDCLM(DUZ(2),ABMP("CDFN"),8)),U,3)="Y" D
  1. .I +$P($G(^ABMDCLM(DUZ(2),ABMP("CDFN"),8)),U,2),$E($P(^(8),U,2),6,7)="00" S ABME(192)=""
  1. K ABMX("ACCHR")
  1. G XIT
  1. A1 S ABMX("X0")=^ABMDCLM(DUZ(2),ABMP("CDFN"),51,ABMX,0)
  1. I $D(ABMX("ACCHR")),(+ABMX("X0")>0&(+ABMX("X0")<7)) S ABMX("ACCHR")=1
  1. I $P(ABMX("X0"),U,2)="" S ABME(138)=""
  1. I $D(ABMP("DDT")),$P(ABMX("X0"),U,2)]"",($P(ABMX("X0"),U,2)\1)>ABMP("DDT") S ABME(130)=""
  1. BTYP ;BILL TYPE CONSISTENCY CHECK
  1. S ABMX("CODE")=$P(^ABMDCODE(+ABMX("X0"),0),U) D
  1. .Q:"20,21,22,26,27,28,34,42"'[ABMX("CODE")
  1. .I ABMX("CODE")=20,"11,41"[$E(ABMP("BTYP"),1,2) Q
  1. .I ABMX("CODE")=21,"18,21"[$E(ABMP("BTYP"),1,2) Q
  1. .I ABMX("CODE")=22,"18,21"[$E(ABMP("BTYP"),1,2) Q
  1. .I ABMX("CODE")=26,"18,21"[$E(ABMP("BTYP"),1,2) Q
  1. .I ABMX("CODE")=27,"32,33"[$E(ABMP("BTYP"),1,2) Q
  1. .I ABMX("CODE")=28,"74,75"[$E(ABMP("BTYP"),1,2) Q
  1. .I ABMX("CODE")=34,$E(ABMP("BTYP"),1,2)=51 Q
  1. .I ABMX("CODE")=42,"811,814,821,824"[ABMP("BTYP") Q
  1. .S ABME(177)=""
  1. Q
  1. ;
  1. B ;EP - for 9B error checks
  1. S ABMX=0 F S ABMX=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),57,ABMX)) Q:'ABMX D B1
  1. S ABME("TITL")="PAGE 9B - OCCURRENCE SPAN CODES"
  1. G XIT
  1. B1 S ABMX("X0")=^ABMDCLM(DUZ(2),ABMP("CDFN"),57,ABMX,0)
  1. I $P(ABMX("X0"),U,2)="" S ABME(139)=""
  1. I $P(ABMX("X0"),U,3)="" S ABME(139)=""
  1. I $D(ABMP("DDT")),$P(ABMX("X0"),U,2)]"",($P(ABMX("X0"),U,2)\1)>ABMP("DDT") S ABME(130)=""
  1. I $D(ABMP("DDT")),$P(ABMX("X0"),U,3)]"",($P(ABMX("X0"),U,3)\1)>ABMP("DDT") S ABME(130)=""
  1. I $P(ABMX("X0"),U,2)>$P(ABMX("X0"),U,3) S ABME(140)=""
  1. Q
  1. ;
  1. C ;EP - for 9C error checks
  1. I ABMP("BTYP")=111,$P($G(^AUTNINS(+ABMP("INS"),2)),U)="R" D
  1. .K ABMX("OK")
  1. .S ABMX=0 F S ABMX=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),53,ABMX)) Q:'ABMX D
  1. ..Q:$G(ABMX("OK"))
  1. ..S ABMX("CODE")=$P($G(^ABMDCODE(+ABMX,0)),U)
  1. ..Q:$E(ABMX("CODE"),1)'="C"
  1. ..S ABMX("OK")=1
  1. .I '$G(ABMX("OK")) S ABME(178)=""
  1. S ABME("TITL")="PAGE 9C - CONDITION CODES"
  1. G XIT
  1. ;
  1. D ;EP - for 9D error checks
  1. S ABMX=0 F S ABMX=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),55,ABMX)) Q:'ABMX D D1
  1. S ABME("TITL")="PAGE 9D - VALUE CODES"
  1. G XIT
  1. D1 S ABMX("X0")=^ABMDCLM(DUZ(2),ABMP("CDFN"),55,ABMX,0)
  1. I $P(ABMX("X0"),U,2)="" S ABME(141)=""
  1. Q
  1. ;
  1. E ;EP - for 9E error checks
  1. ;start new code abm*2.6*6 5010
  1. I $G(ABMP("EXP"))=32 D
  1. .S ABMX=0
  1. .F S ABMX=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),59,ABMX)) Q:'ABMX D
  1. ..S ABMCODE=$P($G(^ABMDCODE(ABMX,0)),U)
  1. ..I "^02^03^05^09^"'[("^"_ABMCODE_"^") S ABME(237)=""
  1. ;end new code 5010
  1. Q
  1. ;
  1. F ;EP - for 9F error checks
  1. Q
  1. ;start new code abm*2.6*1 HEAT6439
  1. G ;EP - for 9G error checks
  1. Q
  1. ;end new code HEAT6439
  1. ;
  1. XIT K ABMX
  1. Q