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

APCHS1C.m

Go to the documentation of this file.
  1. APCHS1C ; IHS/CMI/LAB - PART 1A OF APCHS -- SUMMARY PRODUCTION COMPONENTS ;
  1. ;;2.0;IHS PCC SUITE;**2,5,11**;MAY 14, 2009;Build 58
  1. ;
  1. ;
  1. BDEMOG ; ******************** BRIEF DEMOGRAPHICS - W/ADV DIRECTIVES ********************
  1. ; <SETUP>
  1. S APCHSN=^DPT(APCHSPAT,0)
  1. S APCHSNAM=$P(APCHSN,U,1)
  1. S Y=$P(APCHSN,U,3)
  1. I 'Y S APCHSDOB="<no date of birth recorded>"
  1. E X ^DD("DD") S APCHSDOB=Y
  1. S APCHSADR=""
  1. I $D(^DPT(APCHSPAT,.11)) S APCHSN=^(.11) F APCHSI=1:1:6 S APCHSP=$P(APCHSN,U,APCHSI) I APCHSP]"" S:APCHSI=5 APCHSP=$P(^DIC(5,APCHSP,0),U,2) S APCHSADR=APCHSADR_","_APCHSP
  1. I $D(^DPT(APCHSPAT,.13)) S APCHHPH=$P($G(^DPT(APCHSPAT,.13)),U),APCHWPH=$P($G(^DPT(APCHSPAT,.13)),U,2) ;IHS/CMI/GRL
  1. S APCHSADR=$E(APCHSADR,2,255)
  1. BDEMDSP ; <DISPLAY>
  1. X APCHSBRK
  1. I $$DOD^AUPNPAT(APCHSPAT)]""!($$VAL^XBDIQ1(9000001,APCHSPAT,1114)]"") D
  1. .W "*** DOD: ",$$VAL^XBDIQ1(2,APCHSPAT,.351),!
  1. .W "*** CAUSE OF DEATH: " I $$VAL^XBDIQ1(9000001,APCHSPAT,1114)]"" D I 1
  1. ..W $$VAL^XBDIQ1(9000001,APCHSPAT,1114)
  1. ..K APCHSDSC
  1. ..S APCHSDSC=$$ICDD^ICDEX($$VAL^XBDIQ1(9000001,APCHSPAT,1114),"APCHSDSC",$$DOD^AUPNPAT(APCHSPAT)) I $P(APCHSDSC,U)=-1 S APCHSDSC(1)=$P($$ICDDX^ICDEX($P(^AUPNPAT(APCHSPAT,11),U,14),$$DOD^AUPNPAT(APCHSPAT)),U,4)
  1. ..K ^UTILITY($J,"W")
  1. ..S APCHSX=0
  1. ..S DIWL=0,DIWR=45 F S APCHSX=$O(APCHSDSC(APCHSX)) Q:APCHSX'=+APCHSX!($D(APCHSQIT)) D
  1. ...S X=APCHSDSC(APCHSX)
  1. ...Q:X="CODE TEXT MAY BE INACCURATE"
  1. ...Q:X=" "
  1. ...D ^DIWP
  1. ..S APCHSZ=0 F S APCHSZ=$O(^UTILITY($J,"W",DIWL,APCHSZ)) Q:APCHSZ'=+APCHSZ D
  1. ...X APCHSCKP Q:$D(APCHSQIT)
  1. ...W ?28,^UTILITY($J,"W",DIWL,APCHSZ,0),!
  1. .E W !
  1. K ^UTILITY($J,"W"),APCHSDSC,DIWL,APCHSX,APCHSZ,DIWL,DIWR
  1. Q:$D(APCHSQIT)
  1. W !,APCHSNAM," ",$$VAL^XBDIQ1(2,APCHSPAT,.02)," DOB: ",APCHSDOB," AGE: ",$$AGE^AUPNPAT(APCHSPAT,DT)," SSN: ",$$SSN^APCHS1(APCHSPAT),!
  1. W "TRIBE: ",$$VAL^XBDIQ1(9000001,DFN,1108)," ",$$VAL^XBDIQ1(9000001,DFN,1112),!
  1. I $D(DUZ(2)),DUZ(2),$D(^AUPNPAT(APCHSPAT,41,DUZ(2))) S APCHSFP=DUZ(2),APCHSFAC=$P(^AUPNPAT(APCHSPAT,41,APCHSFP,0),U,2) W $P(^DIC(4,APCHSFP,0),U,1)," HEALTH RECORD NUMBER: ",APCHSFAC,!
  1. W:APCHSADR]"" APCHSADR,!
  1. W "Home Phone: ",$S($G(APCHHPH)]"":APCHHPH,1:"None")_" "_"Work Phone: ",$S($G(APCHWPH)]"":APCHWPH,1:"None"),! ;IHS/CMI/GRL
  1. S APCHPLNG=$$PREFLANG^APCLAPI7(APCHSPAT,DT,"E")
  1. I APCHPLNG]"" W "Preferred Language: ",APCHPLNG,!
  1. I $P($G(^AUPNPAT(APCHSPAT,40)),U,2)]"" W !,"Preferred Method of Receiving Reminders: ",$$VAL^XBDIQ1(9000001,APCHSPAT,4002),!
  1. ;ADVANCE DIRECTIVES
  1. I $D(^AUPNADVD(APCHSPAT,0)) D
  1. .X APCHSCKP Q:$D(APCHSQIT)
  1. .W "Advance Directives: "
  1. .S APCHSI=0 F S APCHSI=$O(^AUPNADVD(APCHSPAT,11,"B",APCHSI)) Q:APCHSI="" S APCHSN=0 F S APCHSN=$O(^AUPNADVD(APCHSPAT,11,"B",APCHSI,APCHSN)) Q:APCHSN="" S APCHSP=APCHSN
  1. .S APCHIEN=APCHSP_","_APCHSPAT_"," W ?20,$$GET1^DIQ(9000040.11,APCHIEN,.02)," ",$$GET1^DIQ(9000040.11,APCHIEN,.03)," Updated: ",$$GET1^DIQ(9000040.11,APCHIEN,.01),!
  1. I '$D(^AUPNADVD(APCHSPAT,0)) W "Advance Directives: No information on file.",!
  1. X APCHSCKP Q:$D(APCHSQIT)
  1. W "Last Registration Update: ",$$VAL^XBDIQ1(9000001,APCHSPAT,.03),!
  1. ; <CLEANUP>
  1. BDEMOGX K APCHSN,APCHSFP,APCHSFAC,APCHSNAM,APCHSDOB,APCHSADR,APCHSP,APCHSI,APCHIEN
  1. K APCHHPH,APCHWPH
  1. Q
  1. ;
  1. HOMELOC ; ******************** LOCATION OF HOME ********************
  1. ; <SETUP>
  1. Q:'$O(^AUPNPAT(APCHSPAT,12,0))
  1. X APCHSBRK
  1. ; <DISPLAY>
  1. F APCHSI=0:0 S APCHSI=$O(^AUPNPAT(APCHSPAT,12,APCHSI)) Q:'APCHSI X APCHSCKP Q:$D(APCHSQIT) W ^AUPNPAT(APCHSPAT,12,APCHSI,0),!
  1. ; <CLEANUP>
  1. HOMELOCX K APCHSI
  1. Q