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

ABMDF28V.m

Go to the documentation of this file.
  1. ABMDF28V ; IHS/SD/SDR - PRINT UB-04 ;
  1. ;;2.6;IHS Third Party Billing;**11,14,19,21**;NOV 12, 2009;Build 379
  1. ;IHS/SD/SDR - 2.6*19 - HEAT116949 - updated check for Medi-Cal to contain (not equal) 61044
  1. ;IHS/SD/SDR - 2.6*21 - HEAT97615 - Remove box 57 if billing Medicare and primary insurer was TSI.
  1. ;IHS/SD/SDR - 2.6*21 - VMBP - Updated p11 changes to include Serena ref#s
  1. ;
  1. 38 ;
  1. I ABM38FLG="P" D
  1. .I "^P^H^F^M^"[("^"_ABMP("ITYPE")_"^") D
  1. ..S ABMDE=$G(ABM(9000003.1,+$G(ABME("PH")),.09,"E"))_"^^40"
  1. ..D WRT^ABMDF28W ;FL #38
  1. .;MCR or MCD - pt addr
  1. .I "^R^MD^MH^D^K^"[("^"_ABMP("ITYPE")_"^") D
  1. ..S ABMISTR=$G(ABME("AD1"))
  1. ..S ABMDE=ABMISTR_"^^40"
  1. ..D WRT^ABMDF28W ;FL #38
  1. .I ABMP("ITYPE")="N" D Q
  1. ..S ABMISTR=$G(ABME("AD1"))
  1. ..S ABMDE=ABMISTR_"^^40"
  1. ..D WRT^ABMDF28W
  1. .;end new FIXPMS10028
  1. I ABM38FLG["I" D
  1. .;start new abm*2.6*1 HEAT7998
  1. .I ABMP("ITYPE")="N" D Q
  1. ..S ABMISTR=$G(ABME("AD1"))
  1. ..S ABMDE=ABMISTR_"^^40"
  1. ..D WRT^ABMDF28W
  1. .;end new HEAT7998
  1. .S ABMDE=ABMISTR_"^^40"
  1. .D WRT^ABMDF28W
  1. Q
  1. VALCDS1 ;
  1. I ABMR(41,160)'="" D
  1. .S ABMDE=ABMR(41,160)_"^43^2" ;Val cd 1
  1. .D WRT^ABMDF28W ;FL #39a
  1. I ($TR(ABMR(41,170)," ",""))'="" D
  1. .I ABMR(41,160)="A0"!(ABMR(41,160)=80) S ABMDE=+ABMR(41,170)_"^46^7R"
  1. .E S ABMDE=$FN(+ABMR(41,170),"",2)_"^46^9R" ;Val Amt 1
  1. .D WRT^ABMDF28W ;FL #39a
  1. I ABMR(41,180)'="" D
  1. .S ABMDE=ABMR(41,180)_"^56^2" ;Val cd 2
  1. .D WRT^ABMDF28W ;FL #40a
  1. I ($TR(ABMR(41,190)," ",""))'="" D
  1. .I ABMR(41,180)="A0"!(ABMR(41,180)=80) S ABMDE=+ABMR(41,190)_"^59^7R"
  1. .E S ABMDE=$FN(+ABMR(41,190),"",2)_"^59^9R"
  1. .D WRT^ABMDF28W ;FL #40a
  1. I ABMR(41,200)'="" D
  1. .S ABMDE=ABMR(41,200)_"^69^2" ;Val cd 3
  1. .D WRT^ABMDF28W ;FL #41a
  1. I ($TR(ABMR(41,210)," ",""))'="" D
  1. .I ABMR(41,200)="A0"!(ABMR(41,200)=80) S ABMDE=+ABMR(41,210)_"^72^7R"
  1. .E S ABMDE=+ABMR(41,210)_"^72^9R"
  1. .D WRT^ABMDF28W ;FL #41a
  1. Q
  1. 38P2 ;
  1. I ABM38FLG="P" D
  1. .I "^P^H^F^M^"[("^"_ABMP("ITYPE")_"^") D
  1. ..S ABMDE=$G(ABM(9000003.1,+$G(ABME("PH")),.11,"E"))_", "_$G(ABM(9000003.1,+$G(ABME("PH")),.12,"E"))_" "_$G(ABM(9000003.1,+$G(ABME("PH")),.13,"E"))_"^^40"
  1. ..D WRT^ABMDF28W ;FL 38
  1. .;MCR or MCD - pt addr
  1. .I "^R^MD^MH^D^K^"[("^"_ABMP("ITYPE")_"^") D
  1. ..S ABMDE=$G(ABME("AD4"))_", "_$G(ABME("AD5"))_" "_$G(ABME("AD6"))_"^^40"
  1. ..D WRT^ABMDF28W ;FL 38
  1. .I ABMP("ITYPE")="N" D Q
  1. ..S ABMDE=$G(ABME("AD4"))_", "_$G(ABME("AD5"))_" "_$G(ABME("AD6"))_"^^40"
  1. ..D WRT^ABMDF28W
  1. I ABM38FLG["I" D
  1. .I ABMP("ITYPE")="N" D Q
  1. ..S ABMDE=$G(ABME("AD4"))_", "_$G(ABME("AD5"))_" "_$G(ABME("AD6"))_"^^40"
  1. ..D WRT^ABMDF28W
  1. .S ABMDE=ABMICTY_", "_$P($G(^DIC(5,ABMIST,0)),U,2)_" "_ABMIZIP_"^^40"
  1. D WRT^ABMDF28W ;FL #38
  1. Q
  1. VALCDS2 ;
  1. I ABMR(41,220)'="" D
  1. .S ABMDE=ABMR(41,220)_"^43^2" ;Val cd 4
  1. .D WRT^ABMDF28W ;FL #39b
  1. I ABMR(41,230) D
  1. .I ABMR(41,220)="A0" S ABMDE=+ABMR(41,230)_"^46^9"
  1. .E S ABMDE=+ABMR(41,230)_"^46^9R" ;Val amt 4
  1. .D WRT^ABMDF28W ;FL #39b
  1. I ABMR(41,240)'="" D
  1. .S ABMDE=ABMR(41,240)_"^56^2" ;Val cd 5
  1. .D WRT^ABMDF28W ;FL #40b
  1. I ABMR(41,250) D
  1. .I ABMR(41,240)="A0" S ABMDE=+ABMR(41,250)_"^59^9"
  1. .E S ABMDE=+ABMR(41,250)_"^59^9R" ;Val amt 5
  1. .D WRT^ABMDF28W ;FL #40b
  1. I ABMR(41,260)'="" D
  1. .S ABMDE=ABMR(41,260)_"^69^2" ;Val cd 6
  1. .D WRT^ABMDF28W ;FL #41b
  1. I ABMR(41,270) D
  1. .I ABMR(41,260)="A0" S ABMDE=+ABMR(41,270)_"^72^9"
  1. .E S ABMDE=+ABMR(41,270)_"^72^9R" ;Val amt 6
  1. .D WRT^ABMDF28W ;FL #41b
  1. Q
  1. VALCDS3 ;
  1. I ABMR(41,280)'="" D
  1. .S ABMDE=ABMR(41,280)_"^43^2" ;Val cd 7
  1. .D WRT^ABMDF28W ;FL #39c
  1. I ABMR(41,290) D
  1. .I ABMR(41,280)="A0" S ABMDE=+ABMR(41,290)_"^46^9"
  1. .E S ABMDE=+ABMR(41,290)_"^46^9R" ;Val amt 7
  1. .D WRT^ABMDF28W ;FL #39c
  1. I ABMR(41,300)'="" D
  1. .S ABMDE=ABMR(41,300)_"^56^2" ;Val cd 8
  1. .D WRT^ABMDF28W ;FL #40c
  1. I ABMR(41,310) D
  1. .I ABMR(41,300)="A0" S ABMDE=+ABMR(41,310)_"^59^9"
  1. .E S ABMDE=+ABMR(41,310)_"^59^9R" ;Val amt 8
  1. .D WRT^ABMDF28W ;FL #40c
  1. I ABMR(41,320)'="" D
  1. .S ABMDE=ABMR(41,320)_"^69^2" ;Val cd 9
  1. .D WRT^ABMDF28W ;FL #41c
  1. I ABMR(41,330) D
  1. .I ABMR(41,320)="A0" S ABMDE=+ABMR(41,330)_"^72^9"
  1. .E S ABMDE=+ABMR(41,330)_"^72^9R" ;Val amt 9
  1. .D WRT^ABMDF28W ;FL #41c
  1. Q
  1. VALCDS4 ;
  1. I ABMR(41,340)'="" D
  1. .S ABMDE=ABMR(41,340)_"^43^2" ;Val cd 10
  1. .D WRT^ABMDF28W ;FL #39d
  1. I ABMR(41,350) D
  1. .I ABMR(41,340)="A0" S ABMDE=+ABMR(41,350)_"^46^9"
  1. .E S ABMDE=+ABMR(41,350)_"^46^9R" ;Val amt 10
  1. .D WRT^ABMDF28W ;FL #39d
  1. I ABMR(41,360)'="" D
  1. .S ABMDE=ABMR(41,360)_"^56^2" ;Val cd 11
  1. .D WRT^ABMDF28W ;FL #40d
  1. I ABMR(41,370) D
  1. .I ABMR(41,360)="A0" S ABMDE=+ABMR(41,370)_"^59^9"
  1. .E S ABMDE=+ABMR(41,370)_"^59^9R" ;Val amt 11
  1. .D WRT^ABMDF28W ;FL #40d
  1. I ABMR(41,380)'="" D
  1. .S ABMDE=ABMR(41,380)_"^69^2" ;Val cd 12
  1. .D WRT^ABMDF28W ;FL #41d
  1. I ABMR(41,390) D
  1. .I ABMR(41,380)="A0" S ABMDE=+ABMR(41,390)_"^72^9"
  1. .E S ABMDE=+ABMR(41,390)_"^72^9R" ;Val amt 12
  1. .D WRT^ABMDF28W ;FL #41d
  1. Q
  1. ;start new abm*2.6*21 IHS/SD/SDR HEAT97615
  1. PRIMECK ;
  1. ;if billing Medicare, see if primary insurer was tribal self insured; if so, remove box 57
  1. S ABMT=0,ABMTSIFG=0
  1. F S ABMT=$O(^ABMDBILL(DUZ(2),ABMP("BDFN"),13,ABMT)) Q:'ABMT D
  1. .I $P($G(^ABMDBILL(DUZ(2),ABMP("BDFN"),13,ABMT,0)),U,3)'="C" Q ;only check complete
  1. .I $P($G(^ABMNINS(ABMP("LDFN"),$P($G(^ABMDBILL(DUZ(2),ABMP("BDFN"),13,ABMT,0)),U),0)),U,11)="Y" S ABMTSIFG=1
  1. ;end new abm*2.6*21 IHS/SD/SDR HEAT97615