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

APCHS2A.m

Go to the documentation of this file.
  1. APCHS2A ; IHS/CMI/LAB - PART 2A OF APCHS -- SUMMARY PRODUCTION COMPONENTS ;
  1. ;;2.0;IHS PCC SUITE;**4,20**;MAY 14, 2009;Build 25
  1. ;
  1. MEASP ; ******************** MEASUREMENT PANELS * 9000010.01 *******
  1. ; <SETUP>
  1. Q:'$D(^AUPNVMSR("AA",APCHSPAT))
  1. X APCHSBRK
  1. ; <BUILD> APCHSCTL-HLTH SUM TYPE
  1. F APCHSPOR=0:0 S APCHSPOR=$O(^APCHSCTL(APCHSTYP,3,APCHSPOR)) Q:'APCHSPOR S APCHSND2=APCHSNDM,APCHSDMX=0 D PBLD
  1. ;now display lab refusals
  1. S APCHST="MEASUREMENT",APCHSFN=9999999.07 D DISPREF^APCHS3C
  1. K APCHST,APCHSFN
  1. MEASPX K APCHSPOR,APCHSPDF,APCHSCOR,APCHSCT,APCHSCT2,APCHSCT3,APCHSCLN,APCHSMT,APCHSML,APCHSTSQ,APCHSTVL,APCHSVAL,APCHSIVD,APCHST,APCHSC,APCHSND2,APCHSDMX,APCHSDFN,APCHSDAT,APCHSDM2,APCHSPS1,APCHSIDT,APCHSNTS,Y,X
  1. Q
  1. PBLD S APCHSPDF=$P(^APCHSCTL(APCHSTYP,3,APCHSPOR,0),U,2)
  1. K APCHSTSQ,APCHSTVL,APCHSNTS
  1. S APCHSNTS=0
  1. F APCHSPS1=1,0 F APCHSCOR=0:0 S APCHSCOR=$O(^APCHSMPN(APCHSPDF,1,APCHSCOR)) Q:APCHSCOR="" D CBLD
  1. D POUT
  1. Q
  1. CBLD S APCHSP=^APCHSMPN(APCHSPDF,1,APCHSCOR,0) S APCHSCT3=$G(^(1))
  1. S APCHSCT=$P(APCHSP,U,2),APCHSCLN=$P(APCHSP,U,3)
  1. S X=$P(APCHSP,U,5) S:X]"" APCHSNTS(X)=""
  1. S:APCHSCT="" APCHSCT=" " S APCHSCT2=$S($D(^AUTTMSR(APCHSCT,0)):$P(^(0),U,1),1:APCHSCT)
  1. S:$P(APCHSP,U,4)]"" APCHSCT2=$P(APCHSP,U,4)
  1. S:APCHSCLN="" APCHSCLN=10
  1. S APCHSTSQ(APCHSCOR,1)=APCHSCT2,APCHSTSQ(APCHSCOR,2)=APCHSCLN,APCHSTSQ(APCHSCOR,3)=APCHSCT3
  1. I APCHSPS1 S APCHSIVD="" F APCHSQ=0:0 S APCHSIVD=$O(^AUPNVMSR("AA",APCHSPAT,APCHSCT,APCHSIVD)) Q:APCHSIVD=""!(APCHSIVD>APCHSDLM) D CBLD2
  1. I 'APCHSPS1 S APCHSIVD=$O(^AUPNVMSR("AA",APCHSPAT,APCHSCT,0)) I APCHSIVD,'$D(APCHSTVL(APCHSIVD,APCHSCOR)) D CBLD3
  1. Q
  1. CBLD2 I '$D(APCHSTVL(APCHSIVD)) S APCHSND2=APCHSND2-1 I APCHSND2=-1 S APCHSND2=0 Q:APCHSDMX&(APCHSIVD'<APCHSDMX) K APCHSTVL(APCHSDMX) F APCHSDM2=0:0 S APCHSDM2=$O(APCHSTVL(APCHSDM2)) Q:'APCHSDM2 S APCHSDMX=APCHSDM2
  1. S:APCHSIVD>APCHSDMX APCHSDMX=APCHSIVD
  1. CBLD3 S APCHSDFN=0 F S APCHSDFN=$O(^AUPNVMSR("AA",APCHSPAT,APCHSCT,APCHSIVD,APCHSDFN)) Q:APCHSDFN'=+APCHSDFN D
  1. .Q:$P($G(^AUPNVMSR(APCHSDFN,2)),U,1) ;entered in error
  1. .S V=$P(^AUPNVMSR(APCHSDFN,0),U,3) Q:"HI"[$P($G(^AUPNVSIT(V,0)),U,7) ;exclude inpatient
  1. .S APCHSVAL=$P(^AUPNVMSR(APCHSDFN,0),U,4),APCHSTVL(APCHSIVD,APCHSCOR)=APCHSVAL_"^"_$P(^AUPNVMSR(APCHSDFN,0),U,6)
  1. .;S APCHSVAL=$$VAL^XBDIQ1(9000010.01,APCHSDFN,.04),APCHSTVL(APCHSIVD,APCHSCOR)=APCHSVAL_"^"_$P(^AUPNVMSR(APCHSDFN,0),U,6)
  1. Q
  1. ; <DISPLAY>
  1. POUT X APCHSCKP Q:$D(APCHSQIT) W !
  1. X APCHSCKP Q:$D(APCHSQIT) D PHDR
  1. S APCHSIVD="" F APCHSQ=0:0 S APCHSIVD=$O(APCHSTVL(APCHSIVD)) Q:APCHSIVD="" X APCHSCKP Q:$D(APCHSQIT) D:APCHSNPG PHDR D PLINE
  1. I $O(APCHSNTS(0))]"" W ! S X="" F S X=$O(APCHSNTS(X)) Q:X="" W X,!
  1. Q
  1. PHDR S APCHST=10,APCHSC=""
  1. F APCHSQ=0:0 S APCHSC=$O(APCHSTSQ(APCHSC)) Q:APCHSC="" S APCHSMT=APCHSTSQ(APCHSC,1),APCHSML=APCHSTSQ(APCHSC,2) W ?(APCHST+1+(APCHSML-$L(APCHSMT)\2)),APCHSMT S APCHST=APCHST+APCHSML+2
  1. W !
  1. Q
  1. PLINE S APCHSIDT=APCHSIVD,Y=-APCHSIVD\1+9999999 X APCHSCVD S APCHSDAT=Y
  1. W APCHSDAT S APCHST=11
  1. S APCHSC="" F APCHSQ=0:0 S APCHSC=$O(APCHSTSQ(APCHSC)) Q:APCHSC="" D PVAL
  1. W !
  1. Q
  1. PVAL ;
  1. K APCHSVNM
  1. S APCHSML=APCHSTSQ(APCHSC,2)
  1. S (APCHSVAL,APCHSVNM)="",APCHSVAL=$P($G(APCHSTVL(APCHSIVD,APCHSC)),U) I $P($G(APCHSTVL(APCHSIVD,APCHSC)),U,2)]"" S APCHSVNM=$P($G(APCHSTVL(APCHSIVD,APCHSC)),U,2)
  1. I APCHSVAL]"" S X=APCHSVAL X APCHSTSQ(APCHSC,3) S APCHSVAL=$P(X,"^",1),X=$P(X,"^",2) S:X]"" APCHSNTS(X)=""
  1. S:APCHSVAL]"" APCHSVAL=$S($P(APCHSML,".",2)="":$J(APCHSVAL,$P(APCHSML,".",1)),1:$J(APCHSVAL,$P(APCHSML,".",1),$P(APCHSML,".",2)))
  1. W ?APCHST,APCHSVAL S APCHST=APCHST+APCHSML+2
  1. K APCHSVNM
  1. Q