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

ABMDEFIP.m

Go to the documentation of this file.
  1. ABMDEFIP ; IHS/ASDST/DMJ - FIX INSURER POINTERS ;
  1. ;;2.6;IHS 3P BILLING SYSTEM;;NOV 12, 2009
  1. ;
  1. ; IHS/SD/SDR - v2.5 p10 - IM20247
  1. ; Fix for TransWorld error <UNDEF>DBFX+4^ABMDEFIP
  1. ;
  1. DBFX(X,Y) ;EP FIX BILL INSURANCE MULTIPLE IF BROKEN POINTER MEDICAID
  1. ;X=IEN (CLAIM OR BILL), Y=INSURER IEN UNDER FIELD #13 (INS MULTIPLE)
  1. S:'$G(ABMDUZ2) ABMDUZ2=DUZ(2)
  1. N ABMP
  1. S ABMP("D0")=X,ABMP("D1")=Y
  1. S ABMP("ZERO")=$G(^ABMDBILL(ABMDUZ2,ABMP("D0"),13,ABMP("D1"),0))
  1. S ABMP("PDFN")=$P(^ABMDBILL(ABMDUZ2,ABMP("D0"),0),U,5)
  1. S ABMP("VDT")=$P(^ABMDBILL(ABMDUZ2,ABMP("D0"),7),U)
  1. D MGET
  1. I $G(ABMP(1)) S $P(^ABMDBILL(ABMDUZ2,ABMP("D0"),13,ABMP("D1"),0),U,6)=ABMP(1),$P(^(0),U,7)=ABMP(2)
  1. Q
  1. DCFX(X,Y) ;EP FIX CLAIM INSURANCE MULTIPLE IF BROKEN POINTER, MEDICAID
  1. N ABMP
  1. S ABMP("D0")=X,ABMP("D1")=Y
  1. S ABMP("ZERO")=^ABMDCLM(DUZ(2),ABMP("D0"),13,ABMP("D1"),0)
  1. S ABMP("PDFN")=$P(^ABMDCLM(DUZ(2),ABMP("D0"),0),U)
  1. S ABMP("VDT")=$P(^ABMDCLM(DUZ(2),ABMP("D0"),0),"^",2)
  1. D MGET
  1. I $G(ABMP(1)) S $P(^ABMDCLM(DUZ(2),ABMP("D0"),13,ABMP("D1"),0),"^",6)=ABMP(1),$P(^(0),"^",7)=ABMP(2)
  1. K ABMPINS,ABMPRI,ABMPVDT,DFN
  1. Q
  1. MGET ;GET NEW POINTER
  1. S ABMP("INSCO")=$P(ABMP("ZERO"),U)
  1. Q:$P($G(^AUTNINS(ABMP("INSCO"),2)),U)'="D"
  1. S ABMP("PTR")=$P(ABMP("ZERO"),"^",6)
  1. S DFN=ABMP("PDFN")
  1. Q:$P($G(^AUPNMCD(+ABMP("PTR"),0)),U)=DFN
  1. S ABMPVDT=ABMP("VDT")
  1. D ELG^ABMDLCK("",.ABML,DFN,ABMPVDT)
  1. S ABMPRI=0 F S ABMPRI=$O(ABML(ABMPRI)) Q:'ABMPRI D
  1. .S ABMPINS=0 F S ABMPINS=$O(ABML(ABMPRI,ABMPINS)) Q:'ABMPINS D
  1. ..Q:ABMPINS'=ABMP("INSCO")
  1. ..N I F I=1,2 S ABMP(I)=$P(ABML(ABMPRI,ABMPINS),"^",I)
  1. Q