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

ABME5DMG.m

Go to the documentation of this file.
  1. ABME5DMG ; IHS/ASDST/DMJ - 837 DMG Segment
  1. ;;2.6;IHS Third Party Billing System;**6**;NOV 12, 2009;Build 379
  1. ;Demographic Information
  1. EP(X,Y) ;EP
  1. ;x=file
  1. ;y=ien
  1. K ABMREC("DMG"),ABMR("DMG")
  1. S ABME("RTYPE")="DMG"
  1. S ABMFILE=X
  1. S ABMFIEN=Y
  1. S:X=3 ABMFILE=9000003.1
  1. D LOOP
  1. K ABME,ABM,ABMFILE
  1. Q
  1. LOOP ;LOOP HERE
  1. F I=10:10:100 D
  1. .D @I
  1. .I $D(^ABMEXLM("AA",+$G(ABMP("INS")),+$G(ABMP("EXP")),ABME("RTYPE"),I)) D @(^(I))
  1. .I $G(ABMREC("DMG"))'="" S ABMREC("DMG")=ABMREC("DMG")_"*"
  1. .S ABMREC("DMG")=$G(ABMREC("DMG"))_ABMR("DMG",I)
  1. Q
  1. 10 ;segment
  1. S ABMR("DMG",10)="DMG"
  1. Q
  1. 20 ;DMG01 - Date Time Period Format Qualifier
  1. S ABMR("DMG",20)="D8"
  1. Q
  1. 30 ;DMG02 - Date of Birth
  1. N ABMTMPT,ABMTMPI,ABMTMPHI
  1. S ABMDOB=0
  1. S ABMTMPT=$P(ABMP("INS",ABMI),U,2) ;ins type
  1. ; if Medicaid or Kidscare, get Medicaid DOB
  1. I ABMTMPT="K"!(ABMTMPT="D") D
  1. .S ABMTMPI=$P(ABMP("INS",ABMI),U,6) ;ien to MCD Elig.
  1. .Q:'+ABMTMPI
  1. .S ABMDOB=$P($G(^AUPNMCD(ABMTMPI,21)),U,2)
  1. ; else if Medicare, get Medicare DOB
  1. E I ABMTMPT="R" S ABMDOB=$P($G(^AUPNMCR(ABMP("PDFN"),21)),U,2)
  1. ; else must be private, get Policy Holder DOB
  1. E D
  1. .S ABMTMPI=$P(ABMP("INS",ABMI),U,8) ;IEN ins mult of prvt elig
  1. .Q:'+ABMTMPI
  1. .S ABMTMPHI=$P($G(^AUPNPRVT(ABMP("PDFN"),11,ABMTMPI,0)),U,8)
  1. .Q:'+ABMTMPHI
  1. .S:ABMCHILD ABMDOB=$P($G(^AUPN3PPH(ABMTMPHI,0)),U,19)
  1. ;if no DOB for subscriber, pull patient's DOB
  1. I '+ABMDOB S ABMDOB=$P($G(^DPT(ABMP("PDFN"),0)),U,3)
  1. I +ABMDOB S ABMR("DMG",30)=$$Y2KD2^ABMDUTL(ABMDOB)
  1. Q
  1. 40 ;DMG03 - Gender Code
  1. S ABMR("DMG",40)=""
  1. I ABMFILE=2 D
  1. .S ABMR("DMG",40)=$P(^DPT(ABMFIEN,0),"^",2)
  1. I ABMFILE=9000003.1 D
  1. .S ABMR("DMG",40)=$P(^AUPN3PPH(ABMFIEN,0),"^",8)
  1. S:ABMR("DMG",40)="" ABMR("DMG",40)="U"
  1. Q
  1. 50 ;DMG04 - Marital Status Code
  1. S ABMR("DMG",50)=""
  1. Q
  1. 60 ;DMG05 - Race or Ethnicity Code
  1. S ABMR("DMG",60)=""
  1. Q
  1. 70 ;DMG06 - Citizenship Status Code
  1. S ABMR("DMG",70)=""
  1. Q
  1. 80 ;DMG07 - Country Code
  1. S ABMR("DMG",80)=""
  1. Q
  1. 90 ;DMG08 - Basis of Verification Code
  1. S ABMR("DMG",90)=""
  1. Q
  1. 100 ;DMG09 - Quantity
  1. S ABMR("DMG",100)=""
  1. Q
  1. 110 ;DMG10 - Code List Qualifier Code
  1. S ABMR("DMG",110)=""
  1. Q
  1. 120 ;DMG11 - Industry Code
  1. S ABMR("DMG",120)=""
  1. Q