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

AGDATCK.m

Go to the documentation of this file.
  1. AGDATCK ; IHS/ASDS/EFG - CHECK DATA ;
  1. ;;7.1;PATIENT REGISTRATION;**11**;AUG 25,2005;Build 1
  1. ;IHS/OIT/NKD AG*7.1*11 MU2 UNKNOWN SEX
  1. ;
  1. ;****************************************************************
  1. ;Please notify the Patient Care Component (PCC) maintenance
  1. ;programmer of any changes affecting validation of data.
  1. ;
  1. ;****************************************************************
  1. ;
  1. D:'$D(AGOPT) ^AGVAR
  1. S AG("DTOT")=0
  1. K AG("ER")
  1. Q:'$D(DFN)
  1. I '$D(^DPT(DFN,0)) D
  1. . S AG("DTOT")=AG("DTOT")+3
  1. . F AGI=1,3,4 S AG("ER",AGI)=""
  1. I '$D(^AUPNPAT(DFN,11)) D
  1. . S AG("DTOT")=AG("DTOT")+4
  1. . F AGI=5,6,8,9 S AG("ER",AGI)=""
  1. I $D(^AUPNPAT(DFN,51))<10 D
  1. . S AG("DTOT")=AG("DTOT")+1
  1. . S AG("ER",7)=""
  1. I '+$O(^AUPNPAT(DFN,41,0)) D
  1. . S AG("DTOT")=AG("DTOT")+2
  1. . S AG("ER",2)=""
  1. . S AG("ER","NOHRN")=""
  1. . S AG("ER",13)=""
  1. NAME ;
  1. G CHART:$D(AG("ER",1))
  1. S X=$P(^DPT(DFN,0),U)
  1. S (DA,D0)=DFN
  1. X $P(^DD(2,.01,0),U,5,99)
  1. K DA,D0
  1. I '$D(X) D G END:AG("DTOT")=9
  1. . S AG("DTOT")=AG("DTOT")+1
  1. . S AG("ER",1)=""
  1. CHART ;
  1. G HRNPFAC ;eliminate fac:hrn check as Parent Fac:HRN is inclusive
  1. HRNPFAC ;
  1. G INACT:$D(AG("ER",13))
  1. K AGRSITE
  1. D ^AGTXRHRN
  1. I $G(AGRHRN) D G INACT
  1. . K AGRSITE,AGRHRN
  1. S AG("ER",13)=""
  1. S AG("DTOT")=AG("DTOT")+1
  1. K AGRSITE,AGRHRN
  1. INACT ;
  1. G DOB
  1. DOB ;
  1. G SEX:$D(AG("ER",3))
  1. I $P(^DPT(DFN,0),U,3)="" D
  1. . S AG("ER",3)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. SEX ;
  1. G TRIBE:$D(AG("ER",4))
  1. ;IHS/OIT/NKD AG*7.1*11 MU2 - ALLOW FOR PATIENTS WITH UNKNOWN SEX
  1. ;I $P(^DPT(DFN,0),U,2)=""!("MF"'[$P(^DPT(DFN,0),U,2)) D
  1. I $$GET1^DIQ(2,DFN,.02)="" D
  1. . S AG("ER",4)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. TRIBE ;
  1. G QUANT:$D(AG("ER",5))
  1. I $P(^AUPNPAT(DFN,11),U,8)="" D
  1. . S AG("ER",5)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. OLDTRIBE ;
  1. G QUANT:$D(AG("ER",5))
  1. I $P(^AUTTTRI($P(^AUPNPAT(DFN,11),U,8),0),U,4)="Y" D
  1. . S AG("ER",12)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. UNSTRIBE ;
  1. G QUANT:$D(AG("ER",5))
  1. I $P(^AUTTTRI($P(^AUPNPAT(DFN,11),U,8),0),U,2)=999 D
  1. . S AG("ER",5)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. QUANT ;
  1. G COMM:$D(AG("ER",6))
  1. I $P(^AUPNPAT(DFN,11),U,10)="" D
  1. . S AG("ER",6)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. COMM ;
  1. G BEN:$D(AG("ER",7))
  1. K AG("DATE")
  1. S AG("I")=0
  1. F AGI=1:1 S AG("I")=$O(^AUPNPAT(DFN,51,AG("I"))) G COMM1:AG("I")="" S AG("DATE")=AG("I")
  1. COMM1 ;
  1. G COMM2:'$D(AG("DATE"))
  1. G COMM2:$P(^AUPNPAT(DFN,51,AG("DATE"),0),U,3)=""
  1. G BEN
  1. COMM2 ;
  1. S AG("ER",7)=""
  1. S AG("DTOT")=AG("DTOT")+1
  1. BEN ;
  1. G ELIG:$D(AG("ER",8))
  1. I $P(^AUPNPAT(DFN,11),U,11)="" D G ELIG
  1. . S AG("ER",8)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. I '$D(^AUTTBEN($P(^AUPNPAT(DFN,11),U,11),0)) D
  1. . S AG("ER",8)=""
  1. . S AG("DTOT")=AG("DTOT")+1
  1. ELIG ;
  1. I AGOPT(14)'="Y" G END:$D(AG("ER",9)) D
  1. . D ^AGELCHK
  1. . S:$D(AG("ER",9)) AG("DTOT")=AG("DTOT")+1
  1. END ;
  1. K AG("I"),AGI,I,X
  1. Q