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

ABME5L8.m

Go to the documentation of this file.
  1. ABME5L8 ; IHS/ASDST/DMJ - Header
  1. ;;2.6;IHS 3P BILLING SYSTEM;**6,8,9,10,11**;NOV 12, 2009;Build 133
  1. ;Header Segments
  1. START ;START HERE
  1. D PAYED^ABMUTLP
  1. N ABMI
  1. S ABMI=0
  1. F S ABMI=$O(ABMP("INS",ABMI)) Q:'ABMI D
  1. .S ABMLINE=ABMP("INS",ABMI)
  1. .;I $P(ABMLINE,U)=ABMP("INS"),$P(ABMLINE,"^",3)="I" Q ;abm*2.6*10 HEAT58915
  1. .I $S($P(ABMLINE,U,11):$P(ABMLINE,U,11),1:$P(ABMLINE,U))=ABMP("INS"),$P(ABMLINE,"^",3)="I" Q ;abm*2.6*10 HEAT58915
  1. .; Loop 2320 - Other Subscriber Information
  1. .S ABMLOOP=2320
  1. .;abm*2.6*8 start new code
  1. .I $G(ABMSBR(ABMI)) D
  1. ..S ABMSFILE=$P(ABMSBR(ABMI),"-",1)
  1. ..S ABMSIEN=$P(ABMSBR(ABMI),"-",2)
  1. .;abm*2.6*8 end new code
  1. .D EP^ABME5SBR(ABMI)
  1. .D WR^ABMUTL8("SBR")
  1. .F ABML="OA","PR" D
  1. ..Q:'$D(ABMP(+ABMLINE,ABML)) ;quit if no data for insurer in ABMP adj array
  1. ..D EP^ABME5CAS
  1. ..D WR^ABMUTL8("CAS")
  1. .;I $G(ABMP("PAYED",+ABMLINE)) D ;abm*2.6*9 tribal self-insured
  1. .I $G(ABMP("PAYED",+ABMLINE))!($P($G(^ABMNINS(ABMP("LDFN"),+ABMLINE,0)),U,11)="Y") D ;abm*2.6*9 tribal self-insured
  1. ..D EP^ABME5AMT("D")
  1. ..D WR^ABMUTL8("AMT")
  1. .;start new code abm*2.6*10 COB billing
  1. .;I ABMPSQ'=1,$$GET1^DIQ(9999999.181,$$GET1^DIQ(9999999.18,+ABMP("INS"),".211","I"),1,"I")="R" D
  1. ..S ABMAMT=0
  1. ..D EP^ABME5AMT("B6")
  1. ..D WR^ABMUTL8("AMT")
  1. ..;end new code abm*2.6*10 COB billing
  1. .D ^ABME5OI
  1. .D WR^ABMUTL8("OI")
  1. .; Loop 2330A - Other Subscriber Name
  1. .S ABMLOOP="2330A"
  1. .D EP^ABME5NM1("IL")
  1. .D WR^ABMUTL8("NM1")
  1. .D EP^ABME5N3(ABMSFILE,ABMSIEN)
  1. .D WR^ABMUTL8("N3")
  1. .D EP^ABME5N4(ABMSFILE,ABMSIEN)
  1. .D WR^ABMUTL8("N4")
  1. .; Loop 2330B - Other Payer Name
  1. .S ABMLOOP="2330B"
  1. .D EP^ABME5NM1("PR",+ABMLINE)
  1. .D WR^ABMUTL8("NM1")
  1. .;I $G(ABMP("PAYED",+ABMLINE)) D ;abm*2.6*9 tribal self-insured
  1. .I $G(ABMP("PAYED",+ABMLINE))'="" D ;abm*2.6*9 tribal self-insured
  1. ..;S ABMPDT=$G(ABMP("PDT",+ABMLINE)) ;abm*2.6*9 tribal self-insured
  1. ..;S ABMPDT=$S($P($G(ABMP("PAYED",+ABMLINE)),U,2)'="":$P(ABMP("PAYED",+ABMLINE),U,2),$G(ABMP("PDT",+ABMLINE))'="":ABMP("PDT",+ABMLINE),1:"") ;abm*2.6*9 tribal self-insured ;abm*2.6*10 COB billing
  1. ..S ABMPDT=$S($P($G(ABMP("PAYED",+ABMLINE)),U,2)'="":$P(ABMP("PAYED",+ABMLINE),U,2),$G(ABMP("PDT",+ABMLINE))'="":ABMP("PDT",+ABMLINE),1:DT) ;abm*2.6*9 tribal self-insured ;abm*2.6*10 COB billing
  1. ..D EP^ABME5DTP(573,"D8",ABMPDT)
  1. ..D WR^ABMUTL8("DTP")
  1. ..K ABMPDT
  1. .I $G(ABMP("PNUM",ABMI))'="" D
  1. ..;D EP^ABME5NM2("QC",ABMI)
  1. ..;D WR^ABMUTL8("NM1")
  1. .;D OTHR
  1. Q
  1. OTHR ;other payer info
  1. ; Loops 2330C - 2330I 0 Other Payer Info
  1. N J
  1. F J=1:1:4 D
  1. .S ABMPTYP=$E("AOTR",J)
  1. .S ABMPROV=$O(ABMP("PRV",ABMPTYP,0))
  1. .I ABMPROV D
  1. ..S ABMPNBR=$$NPI^ABMEEPRV(ABMPROV,ABMP("LDFN"),+ABMLINE)
  1. ..Q:ABMPNBR=""
  1. ..D EP^ABME5NM2($P("71^72^ZZ^DN","^",J))
  1. ..D WR^ABMUTL8("NM1")
  1. ..S ABMITYP=$P(ABMLINE,"^",2)
  1. ..S ABMITYP=$S(ABMITYP="R":"1C",ABMITYP="D":"1D",1:"G2")
  1. ..I ABMITYP="G2",$$BCBS1^ABMERUTL(+ABMLINE) S ABMITYP="1A"
  1. ..D EP^ABME5RF2(ABMITYP)
  1. ..D WR^ABMUTL8("REF")
  1. Q