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