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

GMTSPXXP.m

Go to the documentation of this file.
  1. GMTSPXXP ; SLC/SBW,KER,PKR - PCE Examination Comp ; 04/15/2022
  1. ;;2.7;Health Summary;**8,10,28,56,122,115**;Oct 20, 1995;Build 190
  1. ;
  1. ; External References
  1. ; DBIA 3063 EXAM^PXRHS05
  1. ; DBIA 10011 ^DIWP
  1. ;
  1. MRE ; Most Recent Examination
  1. K ^TMP("PXE",$J)
  1. N MAX S MAX=1
  1. ;
  1. ; This routine could be expanded to included
  1. ; occurrence limits by setting max to GMTSNDM
  1. ; and enabling occurrence limit for the
  1. ; component. Component name would have to
  1. ; change also.
  1. ;
  1. D EXAM^PXRHS05(DFN,GMTSEND,GMTSBEG,MAX) Q:'$D(^TMP("PXE",$J))
  1. N COMMENT,EXAM,GMDT,GMEXAM,GMICL,GMIFN,GMN0,GMN1,GMSITE
  1. N GMTAB,GMTSDATE,GMTSLN,RESULT,TEXT,X,WDATE
  1. D CKP^GMTSUP Q:$D(GMTSQIT) D:GMTSNPG HDR
  1. S GMDT=0
  1. F S GMDT=+$O(^TMP("PXE",$J,GMDT)) Q:GMDT=0 D Q:$D(GMTSQIT)
  1. . S GMEXAM="",WDATE=1
  1. . F S GMEXAM=$O(^TMP("PXE",$J,GMDT,GMEXAM)) Q:GMEXAM="" D Q:$D(GMTSQIT)
  1. .. S GMIFN=0
  1. .. F S GMIFN=$O(^TMP("PXE",$J,GMDT,GMEXAM,GMIFN)) Q:GMIFN'>0 D EXAMDSP(WDATE) S WDATE=0 Q:$D(GMTSQIT)
  1. K ^TMP("PXE",$J)
  1. Q
  1. ;
  1. HDR ; Header
  1. W "Event/Visit",?12,"Facility",?25,"Exam - Result"
  1. W !,?3,"Date",!!
  1. Q
  1. ;
  1. EXAMDSP(WDATE) ; Display Exam Data
  1. S GMN0=$G(^TMP("PXE",$J,GMDT,GMEXAM,GMIFN,0)) Q:GMN0']""
  1. S GMN1=$G(^TMP("PXE",$J,GMDT,GMEXAM,GMIFN,1))
  1. S GMSITE=$S($P(GMN1,U,3)]"":$E($P(GMN1,U,3),1,10),$P(GMN1,U,4)]"":$E($P(GMN1,U,4),1,10),1:"No Site")
  1. D CKP^GMTSUP Q:$D(GMTSQIT) D:GMTSNPG HDR
  1. S X=$P(GMN0,U,2) D REGDT4^GMTSU S GMTSDATE=X
  1. S EXAM=$P(GMN0,U,1),RESULT=$P(GMN0,U,4)
  1. I RESULT'="" S RESULT=" - "_RESULT
  1. S TEXT=EXAM_RESULT
  1. I (WDATE=1) W GMTSDATE
  1. W ?12,GMSITE
  1. I $L(TEXT)<56 W ?25,TEXT,!
  1. E D LONGTEXT(TEXT)
  1. I $G(^TMP("PXE",$J,GMDT,GMEXAM,GMIFN,"MEASUREMENT"))'="" D
  1. . N MAGNITUDE,MEAS,UCUMDISPLAY,UCUMFIELD,UCUMIEN,UNITS
  1. . S MEAS=^TMP("PXE",$J,GMDT,GMEXAM,GMIFN,"MEASUREMENT")
  1. . S MAGNITUDE=$P(MEAS,U,1)
  1. . I MAGNITUDE="" Q
  1. . S UCUMIEN=$P(MEAS,U,2)
  1. . I UCUMIEN'="" D
  1. .. S UCUMDISPLAY=$P(MEAS,U,3)
  1. .. I UCUMDISPLAY="N" S UNITS="" Q
  1. .. S UCUMFIELD=$S(UCUMDISPLAY="C":"UCUM CODE",1:"DESCRIPTION")
  1. .. S UNITS=$$UCUMFIELDS^GMTSUCUM(UCUMIEN,UCUMFIELD)
  1. . E S UNITS=""
  1. . I UNITS="" S TEXT=" Magnitude: "
  1. . E S TEXT=" Measurement: "
  1. . S TEXT=TEXT_MAGNITUDE
  1. . I UNITS'="" S TEXT=TEXT_" "_UNITS
  1. . I $L(TEXT)<56 W ?25,TEXT,!
  1. . E D LONGTEXT(TEXT)
  1. S COMMENT=$P($G(^TMP("PXE",$J,GMDT,GMEXAM,GMIFN,"COM")),U,1)
  1. I COMMENT]"" S GMICL=26,GMTAB=2 D FORMAT I $D(^UTILITY($J,"W")) D
  1. . F GMTSLN=1:1:^UTILITY($J,"W",DIWL) D LINE Q:$D(GMTSQIT)
  1. Q
  1. ;
  1. FORMAT ; Format Line
  1. N DIWR,DIWF,X S DIWL=3,DIWR=80-(GMICL+GMTAB) K ^UTILITY($J,"W")
  1. S X=COMMENT D ^DIWP
  1. Q
  1. ;
  1. LINE ; Write Line
  1. D CKP^GMTSUP Q:$D(GMTSQIT) W ?26,^UTILITY($J,"W",DIWL,GMTSLN,0),!
  1. Q
  1. ;
  1. LONGTEXT(TEXT) ;
  1. N BPT,IND
  1. S BPT=55
  1. F IND=55:-1 Q:(BPT<55)!(IND=1) I $E(TEXT,IND)=" " S BPT=IND
  1. W ?25,$E(TEXT,1,BPT),!
  1. W ?25,$E(TEXT,(BPT+1),$L(TEXT)),!
  1. Q
  1. ;