- GMTSOBS2 ; SLC/KER - HS Object - Show ; 01/06/2003
- ;;2.7;Health Summary;**58**;Oct 20, 1995
- ;
- ; External References
- ; DBIA 2056 $$GET1^DIQ (file 142.5)
- ; DBIA 2052 $$GET1^DID (DD 142.5)
- ; DBIA 10103 $$NOW^XLFDT
- ; DBIA 10103 $$FMADD^XLFDT
- Q
- GET(X,GMTSARY) ; Get Fields
- ;
- ; Input X IEN of HS Object File 142.5
- ; Output GMTSARY Array of Fields and Values
- ; (passed by reference)
- K GMTSARY N GMTSN,GMTSIEN S GMTSIEN=+($G(X)),GMTSN=$G(^GMT(142.5,+GMTSIEN,0)) Q:'$L(GMTSN)
- N GMTSI,GMTSF,GMTSFLD,GMTSFLDN,GMTSFLDM,GMTSDI,GMTSDE
- F GMTSI=1:1 D Q:$L(GMTSN,"^")=GMTSI
- . S GMTSFLD=GMTSI S:GMTSFLD<10 GMTSFLD="0"_GMTSFLD S GMTSFLD=+("."_GMTSFLD)
- . S GMTSFLDN=$$GET1^DID(142.5,+GMTSFLD,"","LABEL"),GMTSFLDM=$$EN2^GMTSUMX(GMTSFLDN)
- . S GMTSDI=$$GET1^DIQ(142.5,(+GMTSIEN_","),GMTSFLD,"I"),GMTSDE=$$GET1^DIQ(142.5,(+GMTSIEN_","),GMTSFLD,"E")
- . S GMTSARY(+GMTSIEN,+GMTSFLD,"I")=GMTSDI,GMTSARY(+GMTSIEN,+GMTSFLD,"E")=GMTSDE
- . S GMTSARY(+GMTSIEN,+GMTSFLD,"NAME")=GMTSFLDN
- . S:GMTSFLDM="Health Summary type" GMTSFLDM="Health Summary Type"
- . S GMTSARY(+GMTSIEN,+GMTSFLD,"PROMPT")=GMTSFLDM
- S GMTSARY(+GMTSIEN,1,"NAME")="OBJECT DESCRIPTION"
- S GMTSARY(+GMTSIEN,1,"PROMPT")="Object Description"
- S GMTSI=0 F S GMTSI=$O(^GMT(142.5,+GMTSIEN,1,GMTSI)) Q:+GMTSI=0 D
- . S GMTSARY(+GMTSIEN,1,"I",GMTSI,0)=$G(^GMT(142.5,GMTSIEN,1,GMTSI,0))
- D DEF^GMTSOBS(+GMTSIEN,.GMTSARY)
- Q
- DIS(DFN,OBJ) ; Display Object
- Q:+($G(DFN))'>0 Q:+($G(OBJ))'>0
- K GMTSOBJ N DIE,DR,GMTSR,GMTSLBL,GMTSTYP,GMTSPER,GMTSHDR,GMTSRDT
- N GMTSCON,GMTSRHD,GMTSIOM,GMTSCHD,GMTSLIM,GMTSBLK,GMTSQ,GMTSDEC
- N GMTSDT,GMTSI,GMTSPX1,GMTSPX2,GMTSNOD,GMTSLBB,GMTSUNT,GMTSLEN
- N GMTSDIF,GMTSOBJ,GMTSOBJE,GMTSULB S GMTSOBJ=+($G(OBJ))
- S GMTSR=$G(^GMT(142.5,+GMTSOBJ,0))
- S GMTSLBL=$P(GMTSR,U,2) S:$L(GMTSLBL) GMTSOBJ("LABEL")=GMTSLBL
- S GMTSTYP=$P(GMTSR,U,3) Q:+GMTSTYP'>0 S GMTSPER=$P(GMTSR,U,4)
- S GMTSPX1="",GMTSPX2="",GMTSLEN=+GMTSPER,GMTSUNT=$E(GMTSPER,$L(GMTSPER))
- I +GMTSLEN>0,GMTSUNT?1U,"DWMY"[GMTSUNT D
- . S GMTSPX1=$$NOW^XLFDT
- . S:GMTSUNT="D" GMTSDIF=GMTSLEN S:GMTSUNT="W" GMTSDIF=GMTSLEN*7
- . S:GMTSUNT="M" GMTSDIF=GMTSLEN*30.4 S:GMTSUNT="Y" GMTSDIF=GMTSLEN*365.25
- . S GMTSDIF=$P(GMTSDIF,".",1),GMTSPX2=$$FMADD^XLFDT(GMTSPX1,-(GMTSDIF))
- S GMTSNOD=$P(GMTSR,U,5) S:+GMTSNOD>0 GMTSOBJ("SUPPRESS COMPONENTS")=""
- S GMTSHDR=$P(GMTSR,U,6) S:+GMTSHDR>0 GMTSOBJ=""
- S GMTSULB=$P(GMTSR,U,7) S:+GMTSULB>0 GMTSOBJ("USE LABEL")=""
- S GMTSLBB=$P(GMTSR,U,8) S:+GMTSLBB>0 GMTSOBJ("LABEL BLANK LINE")=""
- S GMTSRDT=$P(GMTSR,U,9) S:+GMTSRDT>0 GMTSOBJ("DATE LINE")=""
- S GMTSCON=$P(GMTSR,U,10) S:+GMTSCON>0 GMTSOBJ("CONFIDENTIAL")=""
- S GMTSRHD=$P(GMTSR,U,11) S:+GMTSRHD>0 GMTSOBJ("REPORT HEADER")=""
- S GMTSCHD=$P(GMTSR,U,12) S:+GMTSCHD>0 GMTSOBJ("COMPONENT HEADER")=""
- S GMTSUND=$P(GMTSR,U,13) S:+GMTSUND>0 GMTSOBJ("UNDERLINE")=""
- S GMTSLIM=$P(GMTSR,U,14) S:+GMTSLIM>0 GMTSOBJ("LIMITS")=""
- S GMTSBLK=$P(GMTSR,U,15) S:+GMTSBLK>0 GMTSOBJ("BLANK LINE")=""
- S GMTSDEC=$P(GMTSR,U,16) S:+GMTSDEC>0 GMTSOBJ("DECEASED")=""
- K:GMTSCHD'>0 GMTSOBJ("LIMITS"),GMTSOBJ("BLANK LINE")
- K:+($G(GMTSHDR))'>0 GMTSOBJ S GMTSIOM=$G(IOM),IOM=80,GMTSOBJE=""
- D ENX^GMTSDVR(DFN,GMTSTYP,GMTSPX2,GMTSPX1) S:+GMTSIOM>0 IOM=+GMTSIOM
- Q
- SP ; Suppress Headers
- N GMTSL,GMTST,TXT S (GMTST,GMTSL)="" S:$L($G(GMTSLBL)) GMTSL=GMTSLBL
- S:+($G(GMTSRDT))'>0 GMTSL=GMTSL_$J("",((72-$L(GMTSDTM))-$L(GMTSL)))_GMTSDTM
- I $L(GMTSL)&(+($G(GMTSPLB))>0) D E("") S TXT="",TXT=$J(" ",7)_GMTSL D E(TXT)
- I $L($G(GMTSLBL))&(+($G(GMTSPLB))>0)&(+($G(GMTSLBB))>0) D E("")
- S GMTSL="" S:+($G(GMTSRDT))>0 GMTSL=$J("",(72-$L(GMTSDTM)))_GMTSDTM
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="" S:GMTSCON>0 GMTSL="******************** CONFIDENTIAL HEALTH SUMMARY **********************"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="" S:GMTSRHD>0 GMTSL="PATIENT NAME SSN-SSN-SSAN WARD/LOCATTION DATE OF BIRTH"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="" S:GMTSRHD>0 GMTSL=" "
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S (GMTSL,GMTST)="" S:GMTSCHD'>0 GMTSL=GMTSDCN S:GMTSCHD>0 (GMTST,GMTSL)=GMTSDCH
- S:GMTSCHD>0&(GMTSLIM)>0&($L(GMTSTIM)) (GMTST,GMTSL)=GMTSDCH_" (max 10 occurrences or "_GMTSTIM_")"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="" S:+($G(GMTSUND))>0&($L(GMTST)) $P(GMTSL,"-",$L(GMTST))="-"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="" S:GMTSDEC>0 GMTSL=" ** DECEASED "_GMTSDED_" **"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="" S:GMTSBLK>0 GMTSL=" " S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="<component data>" S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- W:'$D(GMTSEXT) !
- Q
- HS ; Health Summary Headers
- N GMTSL,GMTST,TXT S GMTSL="" S:$L($G(GMTSLBL)) GMTSL=GMTSLBL
- I $L(GMTSL)&(+($G(GMTSPLB))>0) D E(" ") S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- D:$L(GMTSL)&(+($G(GMTSPLB))>0)&(+($G(GMTSLBB))>0) E(" ")
- S GMTSL=$J("",(72-$L(GMTSDTM)))_GMTSDTM
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="******************** CONFIDENTIAL HEALTH SUMMARY **********************"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="PATIENT NAME SSN-SSN-SSAN WARD/LOCATTION DATE OF BIRTH"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL=" "_GMTSDCH_" (max 10 occurrences or "_GMTSTIM_")"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL=" ** DECEASED "_GMTSDED_" **"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- S GMTSL="<component data>"
- S TXT="",TXT=TXT_$J(" ",7)_GMTSL D:$L(GMTSL) E(TXT)
- W:'$D(GMTSEXT) !
- Q
- D(X) ; Display
- I '$D(GMTSEXT) W !,$G(X) Q
- N GMTSC S GMTSC=$G(GMTSARY("D",0))+1,GMTSARY("D",+GMTSC)=$G(X),GMTSARY("D",0)=GMTSC
- Q
- E(X) ; Example
- I '$D(GMTSEXT) W !,$G(X) Q
- N GMTSC S GMTSC=$G(GMTSARY("E",0))+1,GMTSARY("E",+GMTSC)=$G(X),GMTSARY("E",0)=GMTSC
- Q
- GMTSOBS2 ; SLC/KER - HS Object - Show ; 01/06/2003
- +1 ;;2.7;Health Summary;**58**;Oct 20, 1995
- +2 ;
- +3 ; External References
- +4 ; DBIA 2056 $$GET1^DIQ (file 142.5)
- +5 ; DBIA 2052 $$GET1^DID (DD 142.5)
- +6 ; DBIA 10103 $$NOW^XLFDT
- +7 ; DBIA 10103 $$FMADD^XLFDT
- +8 QUIT
- GET(X,GMTSARY) ; Get Fields
- +1 ;
- +2 ; Input X IEN of HS Object File 142.5
- +3 ; Output GMTSARY Array of Fields and Values
- +4 ; (passed by reference)
- +5 KILL GMTSARY
- NEW GMTSN,GMTSIEN
- SET GMTSIEN=+($GET(X))
- SET GMTSN=$GET(^GMT(142.5,+GMTSIEN,0))
- IF '$LENGTH(GMTSN)
- QUIT
- +6 NEW GMTSI,GMTSF,GMTSFLD,GMTSFLDN,GMTSFLDM,GMTSDI,GMTSDE
- +7 FOR GMTSI=1:1
- Begin DoDot:1
- +8 SET GMTSFLD=GMTSI
- IF GMTSFLD<10
- SET GMTSFLD="0"_GMTSFLD
- SET GMTSFLD=+("."_GMTSFLD)
- +9 SET GMTSFLDN=$$GET1^DID(142.5,+GMTSFLD,"","LABEL")
- SET GMTSFLDM=$$EN2^GMTSUMX(GMTSFLDN)
- +10 SET GMTSDI=$$GET1^DIQ(142.5,(+GMTSIEN_","),GMTSFLD,"I")
- SET GMTSDE=$$GET1^DIQ(142.5,(+GMTSIEN_","),GMTSFLD,"E")
- +11 SET GMTSARY(+GMTSIEN,+GMTSFLD,"I")=GMTSDI
- SET GMTSARY(+GMTSIEN,+GMTSFLD,"E")=GMTSDE
- +12 SET GMTSARY(+GMTSIEN,+GMTSFLD,"NAME")=GMTSFLDN
- +13 IF GMTSFLDM="Health Summary type"
- SET GMTSFLDM="Health Summary Type"
- +14 SET GMTSARY(+GMTSIEN,+GMTSFLD,"PROMPT")=GMTSFLDM
- End DoDot:1
- IF $LENGTH(GMTSN,"^")=GMTSI
- QUIT
- +15 SET GMTSARY(+GMTSIEN,1,"NAME")="OBJECT DESCRIPTION"
- +16 SET GMTSARY(+GMTSIEN,1,"PROMPT")="Object Description"
- +17 SET GMTSI=0
- FOR
- SET GMTSI=$ORDER(^GMT(142.5,+GMTSIEN,1,GMTSI))
- IF +GMTSI=0
- QUIT
- Begin DoDot:1
- +18 SET GMTSARY(+GMTSIEN,1,"I",GMTSI,0)=$GET(^GMT(142.5,GMTSIEN,1,GMTSI,0))
- End DoDot:1
- +19 DO DEF^GMTSOBS(+GMTSIEN,.GMTSARY)
- +20 QUIT
- DIS(DFN,OBJ) ; Display Object
- +1 IF +($GET(DFN))'>0
- QUIT
- IF +($GET(OBJ))'>0
- QUIT
- +2 KILL GMTSOBJ
- NEW DIE,DR,GMTSR,GMTSLBL,GMTSTYP,GMTSPER,GMTSHDR,GMTSRDT
- +3 NEW GMTSCON,GMTSRHD,GMTSIOM,GMTSCHD,GMTSLIM,GMTSBLK,GMTSQ,GMTSDEC
- +4 NEW GMTSDT,GMTSI,GMTSPX1,GMTSPX2,GMTSNOD,GMTSLBB,GMTSUNT,GMTSLEN
- +5 NEW GMTSDIF,GMTSOBJ,GMTSOBJE,GMTSULB
- SET GMTSOBJ=+($GET(OBJ))
- +6 SET GMTSR=$GET(^GMT(142.5,+GMTSOBJ,0))
- +7 SET GMTSLBL=$PIECE(GMTSR,U,2)
- IF $LENGTH(GMTSLBL)
- SET GMTSOBJ("LABEL")=GMTSLBL
- +8 SET GMTSTYP=$PIECE(GMTSR,U,3)
- IF +GMTSTYP'>0
- QUIT
- SET GMTSPER=$PIECE(GMTSR,U,4)
- +9 SET GMTSPX1=""
- SET GMTSPX2=""
- SET GMTSLEN=+GMTSPER
- SET GMTSUNT=$EXTRACT(GMTSPER,$LENGTH(GMTSPER))
- +10 IF +GMTSLEN>0
- IF GMTSUNT?1U
- IF "DWMY"[GMTSUNT
- Begin DoDot:1
- +11 SET GMTSPX1=$$NOW^XLFDT
- +12 IF GMTSUNT="D"
- SET GMTSDIF=GMTSLEN
- IF GMTSUNT="W"
- SET GMTSDIF=GMTSLEN*7
- +13 IF GMTSUNT="M"
- SET GMTSDIF=GMTSLEN*30.4
- IF GMTSUNT="Y"
- SET GMTSDIF=GMTSLEN*365.25
- +14 SET GMTSDIF=$PIECE(GMTSDIF,".",1)
- SET GMTSPX2=$$FMADD^XLFDT(GMTSPX1,-(GMTSDIF))
- End DoDot:1
- +15 SET GMTSNOD=$PIECE(GMTSR,U,5)
- IF +GMTSNOD>0
- SET GMTSOBJ("SUPPRESS COMPONENTS")=""
- +16 SET GMTSHDR=$PIECE(GMTSR,U,6)
- IF +GMTSHDR>0
- SET GMTSOBJ=""
- +17 SET GMTSULB=$PIECE(GMTSR,U,7)
- IF +GMTSULB>0
- SET GMTSOBJ("USE LABEL")=""
- +18 SET GMTSLBB=$PIECE(GMTSR,U,8)
- IF +GMTSLBB>0
- SET GMTSOBJ("LABEL BLANK LINE")=""
- +19 SET GMTSRDT=$PIECE(GMTSR,U,9)
- IF +GMTSRDT>0
- SET GMTSOBJ("DATE LINE")=""
- +20 SET GMTSCON=$PIECE(GMTSR,U,10)
- IF +GMTSCON>0
- SET GMTSOBJ("CONFIDENTIAL")=""
- +21 SET GMTSRHD=$PIECE(GMTSR,U,11)
- IF +GMTSRHD>0
- SET GMTSOBJ("REPORT HEADER")=""
- +22 SET GMTSCHD=$PIECE(GMTSR,U,12)
- IF +GMTSCHD>0
- SET GMTSOBJ("COMPONENT HEADER")=""
- +23 SET GMTSUND=$PIECE(GMTSR,U,13)
- IF +GMTSUND>0
- SET GMTSOBJ("UNDERLINE")=""
- +24 SET GMTSLIM=$PIECE(GMTSR,U,14)
- IF +GMTSLIM>0
- SET GMTSOBJ("LIMITS")=""
- +25 SET GMTSBLK=$PIECE(GMTSR,U,15)
- IF +GMTSBLK>0
- SET GMTSOBJ("BLANK LINE")=""
- +26 SET GMTSDEC=$PIECE(GMTSR,U,16)
- IF +GMTSDEC>0
- SET GMTSOBJ("DECEASED")=""
- +27 IF GMTSCHD'>0
- KILL GMTSOBJ("LIMITS"),GMTSOBJ("BLANK LINE")
- +28 IF +($GET(GMTSHDR))'>0
- KILL GMTSOBJ
- SET GMTSIOM=$GET(IOM)
- SET IOM=80
- SET GMTSOBJE=""
- +29 DO ENX^GMTSDVR(DFN,GMTSTYP,GMTSPX2,GMTSPX1)
- IF +GMTSIOM>0
- SET IOM=+GMTSIOM
- +30 QUIT
- SP ; Suppress Headers
- +1 NEW GMTSL,GMTST,TXT
- SET (GMTST,GMTSL)=""
- IF $LENGTH($GET(GMTSLBL))
- SET GMTSL=GMTSLBL
- +2 IF +($GET(GMTSRDT))'>0
- SET GMTSL=GMTSL_$JUSTIFY("",((72-$LENGTH(GMTSDTM))-$LENGTH(GMTSL)))_GMTSDTM
- +3 IF $LENGTH(GMTSL)&(+($GET(GMTSPLB))>0)
- DO E("")
- SET TXT=""
- SET TXT=$JUSTIFY(" ",7)_GMTSL
- DO E(TXT)
- +4 IF $LENGTH($GET(GMTSLBL))&(+($GET(GMTSPLB))>0)&(+($GET(GMTSLBB))>0)
- DO E("")
- +5 SET GMTSL=""
- IF +($GET(GMTSRDT))>0
- SET GMTSL=$JUSTIFY("",(72-$LENGTH(GMTSDTM)))_GMTSDTM
- +6 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +7 SET GMTSL=""
- IF GMTSCON>0
- SET GMTSL="******************** CONFIDENTIAL HEALTH SUMMARY **********************"
- +8 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +9 SET GMTSL=""
- IF GMTSRHD>0
- SET GMTSL="PATIENT NAME SSN-SSN-SSAN WARD/LOCATTION DATE OF BIRTH"
- +10 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +11 SET GMTSL=""
- IF GMTSRHD>0
- SET GMTSL=" "
- +12 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +13 SET (GMTSL,GMTST)=""
- IF GMTSCHD'>0
- SET GMTSL=GMTSDCN
- IF GMTSCHD>0
- SET (GMTST,GMTSL)=GMTSDCH
- +14 IF GMTSCHD>0&(GMTSLIM)>0&($LENGTH(GMTSTIM))
- SET (GMTST,GMTSL)=GMTSDCH_" (max 10 occurrences or "_GMTSTIM_")"
- +15 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +16 SET GMTSL=""
- IF +($GET(GMTSUND))>0&($LENGTH(GMTST))
- SET $PIECE(GMTSL,"-",$LENGTH(GMTST))="-"
- +17 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +18 SET GMTSL=""
- IF GMTSDEC>0
- SET GMTSL=" ** DECEASED "_GMTSDED_" **"
- +19 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +20 SET GMTSL=""
- IF GMTSBLK>0
- SET GMTSL=" "
- SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +21 SET GMTSL="<component data>"
- SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +22 IF '$DATA(GMTSEXT)
- WRITE !
- +23 QUIT
- HS ; Health Summary Headers
- +1 NEW GMTSL,GMTST,TXT
- SET GMTSL=""
- IF $LENGTH($GET(GMTSLBL))
- SET GMTSL=GMTSLBL
- +2 IF $LENGTH(GMTSL)&(+($GET(GMTSPLB))>0)
- DO E(" ")
- SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +3 IF $LENGTH(GMTSL)&(+($GET(GMTSPLB))>0)&(+($GET(GMTSLBB))>0)
- DO E(" ")
- +4 SET GMTSL=$JUSTIFY("",(72-$LENGTH(GMTSDTM)))_GMTSDTM
- +5 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +6 SET GMTSL="******************** CONFIDENTIAL HEALTH SUMMARY **********************"
- +7 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +8 SET GMTSL="PATIENT NAME SSN-SSN-SSAN WARD/LOCATTION DATE OF BIRTH"
- +9 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +10 SET GMTSL=" "_GMTSDCH_" (max 10 occurrences or "_GMTSTIM_")"
- +11 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +12 SET GMTSL=" ** DECEASED "_GMTSDED_" **"
- +13 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +14 SET GMTSL="<component data>"
- +15 SET TXT=""
- SET TXT=TXT_$JUSTIFY(" ",7)_GMTSL
- IF $LENGTH(GMTSL)
- DO E(TXT)
- +16 IF '$DATA(GMTSEXT)
- WRITE !
- +17 QUIT
- D(X) ; Display
- +1 IF '$DATA(GMTSEXT)
- WRITE !,$GET(X)
- QUIT
- +2 NEW GMTSC
- SET GMTSC=$GET(GMTSARY("D",0))+1
- SET GMTSARY("D",+GMTSC)=$GET(X)
- SET GMTSARY("D",0)=GMTSC
- +3 QUIT
- E(X) ; Example
- +1 IF '$DATA(GMTSEXT)
- WRITE !,$GET(X)
- QUIT
- +2 NEW GMTSC
- SET GMTSC=$GET(GMTSARY("E",0))+1
- SET GMTSARY("E",+GMTSC)=$GET(X)
- SET GMTSARY("E",0)=GMTSC
- +3 QUIT