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

APCHS4A.m

Go to the documentation of this file.
  1. APCHS4A ; IHS/CMI/LAB - PART 4A OF APCHS -- SUMMARY PRODUCTION COMPONENTS ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;
  1. HFACT ; ******************** HEALTH FACTORS * 9000019 *********
  1. ; <SETUP>
  1. Q:'$D(^AUPNVHF("AC",APCHSPAT))
  1. S APCHSSNM=APCHSNDM,APCHSSDM=APCHSDLM
  1. X APCHSCKP Q:$D(APCHSQIT) X:'APCHSNPG APCHSBRK
  1. ; <DISPLAY>
  1. S APCHSHP=0
  1. I $O(^APCHSCTL(APCHSTYP,7,0)) D
  1. . S APCHSHFS="" F S APCHSHFS=$O(^APCHSCTL(APCHSTYP,7,"B",APCHSHFS)) Q:'APCHSHFS D
  1. .. S APCHSHFI="" F S APCHSHFI=$O(^APCHSCTL(APCHSTYP,7,"B",APCHSHFS,APCHSHFI)) Q:'APCHSHFI D
  1. ... S APCHSN=^APCHSCTL(APCHSTYP,7,APCHSHFI,0) S APCHSFC=$P(APCHSN,U,2),APCHSFT=$P(APCHSN,U,3),APCHSFD=$P(APCHSN,U,4) D ONECAT
  1. . Q
  1. E D
  1. . S APCHSFC="" F S APCHSFC=$O(^AUTTHF("AD","C",APCHSFC)) Q:'APCHSFC S (APCHSFT,APCHSFD)="" D ONECAT
  1. . Q
  1. ; <CLEANUP>
  1. HFACTX K APCHSCFI,APCHSDAT,APCHSDT2,APCHSFC,APCHSFD,APCHSFDP,APCHSFN,APCHSFSS,APCHSFT,APCHSFTB,APCHSHFI,APCHSHFS,APCHSHP,APCHSI,APCHSIVD,APCHSNDT,APCHSNI,APCHSPVD,APCHSSDM,APCHSSNM,APCHSTNP,Y,X
  1. Q
  1. ;
  1. ONECAT ;
  1. S:APCHSFD="" APCHSFD="Y"
  1. S:APCHSFT="" APCHSFT=$P(^AUTTHF(APCHSFC,0),U)
  1. ;W "Category=",APCHSFC," Name=",$P(^AUTTHF(APCHSFC,0),U)," Title=",APCHSFT," Display=",APCHSFD,!
  1. S APCHSTNP=1
  1. K APCHSFTB
  1. S APCHSCFI="" F S APCHSCFI=$O(^AUTTHF("AC",APCHSFC,APCHSCFI)) Q:'APCHSCFI D ONEFACT
  1. D DISPDATA
  1. Q
  1. ONEFACT ;
  1. S APCHSN=^AUTTHF(APCHSCFI,0),APCHSFN=$P(APCHSN,U)
  1. ;W ?3,APCHSN,!
  1. S APCHSNDM=APCHSSNM,APCHSDLM=APCHSSDM
  1. S APCHSPVD=0
  1. F APCHSIVD=0:0 S APCHSIVD=$O(^AUPNVHF("AA",APCHSPAT,APCHSCFI,APCHSIVD)) Q:APCHSIVD=""!(APCHSIVD>APCHSDLM) D ONEDATE Q:$D(APCHSQIT) S:(APCHSDAT'=APCHSPVD) APCHSNDM=APCHSNDM-1,APCHSPVD=APCHSDAT Q:APCHSNDM=0 Q:APCHSFD="Y"
  1. Q
  1. ;
  1. ONEDATE ;
  1. S Y=-APCHSIVD\1+9999999 X APCHSCVD S APCHSDAT=Y S APCHSNDT=(APCHSDAT'=APCHSPVD)
  1. D:APCHSTNP TPRINT
  1. S APCHSNI="" F S APCHSNI=$O(^AUPNVHF("AA",APCHSPAT,APCHSCFI,APCHSIVD,APCHSNI)) Q:'APCHSNI D SETFACT
  1. Q
  1. SETFACT S APCHSN=^AUPNVHF(APCHSNI,0)
  1. S APCHSFSS="" S X=$P(APCHSN,U,4) I X]"" S Y=$P(^DD(9000019,.04,0),U,3) F APCHSI=1:1:$L(Y,";") S APCHSFDP=$P(Y,";",APCHSI) I X=$P(APCHSFDP,":") S APCHSFSS=$P(APCHSFDP,":",2) Q
  1. S APCHSQTY=$P(APCHSN,U,6)
  1. S APCHSFTB(APCHSIVD,APCHSDAT_U_APCHSFN_U_APCHSFSS_U_APCHSQTY_U_$P(APCHSN,U))=""
  1. Q
  1. DISPDATA ; DISPLAY TABLED DATA
  1. S APCHSDT2=""
  1. S APCHSIVD=0 F S APCHSIVD=$O(APCHSFTB(APCHSIVD)) Q:'APCHSIVD S APCHSN="" F S APCHSN=$O(APCHSFTB(APCHSIVD,APCHSN)) Q:APCHSN="" D DISP2
  1. Q
  1. DISP2 ;
  1. S APCHSDAT=$P(APCHSN,U),APCHSFN=$P(APCHSN,U,2),APCHSFSS=$P(APCHSN,U,3)
  1. W:APCHSDAT'=APCHSDT2 APCHSDAT W ?10,APCHSFN W:APCHSFSS]"" " (",APCHSFSS,")" D:$P(APCHSN,U,4)]"" WQTY W !
  1. S APCHSDT2=APCHSDAT
  1. Q
  1. WQTY ;write out quantity and phrase
  1. NEW X S X=$P(APCHSN,U,5) Q:'X
  1. S X=$P(^AUTTHF(X,0),U,11)
  1. I X="" S X="QUANTITY"
  1. S X=X_": "
  1. W " ",X,$P(APCHSN,U,4)
  1. Q
  1. TPRINT ; PRINT TITLE
  1. S APCHSTNP=0
  1. W !,"~~ ",APCHSFT," ~~",! ;temporary
  1. Q
  1. EDUCASSE ;EP - called from component educational assessment
  1. X APCHSCKP Q:$D(APCHSQIT) X:'APCHSNPG APCHSBRK
  1. W !,"Most recent Health Factor recorded.",!
  1. W !," Learning Preference: ",$$LASTHF^APCHSMU(APCHSPAT,"LEARNING PREFERENCE","B"),!
  1. ;X APCHSCKP Q:$D(APCHSQIT)
  1. ;W !," Readiness to Learn: ",$$LASTHF^APCHSMU(APCHSPAT,"READINESS TO LEARN","B"),!
  1. X APCHSCKP Q:$D(APCHSQIT)
  1. W !," Barriers to Learning: "
  1. S C=$O(^AUTTHF("B","BARRIERS TO LEARNING",0)) ;ien of category passed
  1. I '$G(C) Q
  1. S H=0 K APCHO
  1. F S H=$O(^AUTTHF("AC",C,H)) Q:'+H D
  1. . Q:'$D(^AUPNVHF("AA",APCHSPAT,H))
  1. . S D=$O(^AUPNVHF("AA",APCHSPAT,H,""))
  1. . Q:'D
  1. . S APCHO(H,D)=$O(^AUPNVHF("AA",APCHSPAT,H,D,""))
  1. . Q
  1. S APCHX="" F S APCHX=$O(APCHO(APCHX)) Q:APCHX=""!($D(APCHSQIT)) D
  1. .S D=$O(APCHO(APCHX,0))
  1. .X APCHSCKP Q:$D(APCHSQIT)
  1. .W ?25,$$VAL^XBDIQ1(9000010.23,APCHO(APCHX,D),.01)_" "_$$FMTE^XLFDT((9999999-D)),!
  1. Q