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

BZXBPN.m

Go to the documentation of this file.
  1. BZXBPN ;IHS/PHXAO/AEF - FIND BAD PATIENT NAMES
  1. ;;1.0;ANNE'S SPECIAL ROUTINES;;JUNE 10, 2004
  1. ;
  1. ;The code in this routine was written by Jim Gray at PIMC.
  1. ;
  1. BADPTNAM ;Find bad names
  1. W !,"PATIENT NAME",?25,"MEDICAID NAME",?50,"MEDICARE NAME"
  1. S DFN=0
  1. F S DFN=$O(^DPT(DFN)) Q:'DFN D
  1. .Q:'$D(^DPT(DFN,0))
  1. .S BZXDONE=0
  1. .S VIEN=0
  1. .F S VIEN=$O(^AUPNVSIT("AC",DFN,VIEN)) Q:'VIEN D Q:BZXDONE
  1. ..Q:(+$G(^AUPNVSIT(VIEN,0)))<3020214
  1. ..S FLG=0
  1. ..K NAME,MCAIDNAM,MCARNAM
  1. ..S NAME=$P(^DPT(DFN,0),U,1)
  1. ..S BZXGOOD=$$CHKNAM(NAME)
  1. ..I BZXGOOD<1 W !,NAME S FLG=1
  1. ..S MCAIDIEN=0
  1. ..F S MCAIDIEN=$O(^AUPNMCD("B",DFN,MCAIDIEN)) Q:'MCAIDIEN D
  1. ...S MCAIDNAM=$P($G(^AUPNMCD(MCAIDIEN,21)),U,1)
  1. ...I $$CHKNAM(MCAIDNAM)<1 D
  1. ....I FLG=0 W !,NAME S FLG=1
  1. ....I (MCAIDNAM="")!(MCAIDNAM?1." ") S MCAIDNAM="BLANK"
  1. ....W ?25,MCAIDNAM
  1. ..I $D(^AUPNMCR(DFN,21)) D
  1. ...S MCARNAM=$P(^AUPNMCR(DFN,21),U,1)
  1. ...I $$CHKNAM(MCARNAM)<1 D
  1. ....I FLG=0 W !,NAME S FLG=1
  1. ....I (MCARNAM="")!(MCARNAM?1." ") S MCARNAM="BLANK"
  1. ....W ?50,MCARNAM
  1. ..S BZXDONE=1
  1. Q
  1. ;
  1. CHKNAM(NAM) ;CHECK NAME FORMAT
  1. I NAM?2.A.1(1" ",1"-").A1" "1(1"JR",1"SR",1"II",1"III",1"IV",1"V")1","2.A.1" ".A.1"." Q -1 ;BAD
  1. I NAM?2.A.1(1" ",1"-").A1","1.A.1" ".A.1".".1",".3A.1"." Q 1 ;GOOD
  1. Q 0
  1. ;
  1. BADADR ;Find bad addresses
  1. S DFN=0
  1. F S DFN=$O(^DPT(DFN)) Q:'DFN D
  1. .Q:'$D(^DPT(DFN,0))
  1. .S BZXDONE=0
  1. .S VIEN=0
  1. .F S VIEN=$O(^AUPNVSIT("AC",DFN,VIEN)) Q:'VIEN D Q:BZXDONE
  1. ..Q:(+$G(^AUPNVSIT(VIEN,0)))<3020214
  1. ..S BZXDONE=1
  1. ..S IENS=DFN_","
  1. ..S BZXGOOD=0
  1. ..S BZXADDR=$$GET1^DIQ(2,IENS,.111)
  1. ..Q:BZXADDR=""
  1. ..I BZXADDR?1.5N1" ".5AP.1" "3.NA.AP.N." " S BZXGOOD=1
  1. ..I BZXADDR?1"P".1".".1" "1"O".1".".1" ".1"BOX"1" ".1"#"1.8N S BZXGOOD=1
  1. ..Q:BZXGOOD
  1. ..S BZXPAT0=^DPT(DFN,0)
  1. ..S BZXPAT11=^DPT(DFN,.11)
  1. ..S NAME=$P(BZXPAT0,U,1)
  1. ..S SSN=$P(BZXPAT0,U,9)
  1. ..S ADDR2T3=$P(BZXPAT11,U,2,3)
  1. ..S CITY=$P(BZXPAT11,U,4)
  1. ..S STATE=$$GET1^DIQ(2,IENS,.115)
  1. ..S ZIP=$P(BZXPAT11,U,6)
  1. ..W !,NAME,?25,SSN
  1. ..W !,BZXADDR
  1. ..I $L(ADDR2T3)>1 W !,ADDR2T3
  1. ..W !,CITY_", "_STATE_" "_ZIP
  1. ..W !
  1. Q