GMTSOBH ; SLC/KER - HS Object - Help                 ; 05/22/2008
 ;;2.7;Health Summary;**58,89**;Oct 20, 1995;Build 61
 ;
 ; External References
 ;   DBIA  10103  $$FMTE^XLFDT
 ;   DBIA  10103  $$NOW^XLFDT
 ;   DBIA  10088  ENDR^%ZISS
 ;                       
 Q
PLB ; Print Object Label
 D ATTR
 W !,"     Do you want to print a label before printing a Health Summary Object?"
 W !,"     Both the label and object will be embedded in another document.",!
 W !,"            <document text>",$G(BOLD)
 W !,"              <object label>",$G(NORM)
 W !,"                <Health Summary object>"
 W !,"            <document text continued>"
 D KATTR
 Q
LBH ; Object Label
 D ATTR
 W !,"     Enter a label for this object, 3 to 60 characters in length (optional)."
 W !,"     This label will be embedded in another document along with the Health"
 W !,"     Summary Type and will be printed as the first line of the object, before"
 W !,"     the Health Summary Prints.",!
 W !,"       <document>",$G(BOLD)
 W !,"         <object label>",$G(NORM)
 W !,"           <Health Summary object>"
 W !,"       <document>",!
 D KATTR
 Q
LBLH ; Label Blank Line
 D ATTR
 W !,"     If there is a Label for the object and the Label is to be printed,"
 W !,"     then a blank line may be printed after the object label.",!
 W !,"            <document text>"
 W !,"              <object label>",$G(BOLD)
 W !,"              <blank line>  ",$G(NORM)
 W !,"                <Health Summary object>"
 W !,"            <document text continued>"
 D KATTR
 Q
HSTH ; Health Summary Type
 W !,"     Enter the name of an existing Health Summary Type (file 142)"
 W !,"     that you wish to embedded in another document as an object.",!
 Q
ALL ; Suppress all of hte Health Summary Header
 N GMTSDLD S GMTSDLD=$$EDT^GMTSU($$NOW^XLFDT)
 W !,"     Print the following lines from the standard Health Summary"
 W !,"     Header with the Object?"
 W !,"     "
 W !,"     1                                                  "_GMTSDLD
 W !,"     2 *****************  CONFIDENTIAL HEALTH SUMMARY ******************"
 W !,"     3 PATIENT NAME    SSN-SSN-SSAN     WARD/LOCATTION     DATE OF BIRTH"
 W !,"     4 <blank>"
 W !,"     5 PN - Progress Notes (max 10 occurrences or 1 year)"
 W !,"     6 <blank>"
 W !,"     "
 Q
RD ; Report Date and Time
 N GMTSDLD S GMTSDLD=$TR($$FMTE^XLFDT($$NOW^XLFDT,"5ZM"),"@"," ") D ATTR
 W !,"     Print the report date/time with Health Summary Objects?"
 W !,"     "
 W !,"     "_$G(BOLD)_">>>>>  1                                             DATE/TIME  <<<<<"_$G(NORM)
 W !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 W !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 W !,"            4 <blank>"
 W !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 W !,"            6 <blank>"
 W !,"     "
 D KATTR
 Q
RH ; Report Header
 D ATTR
 W !,"     Print the report header with Health Summary Objects?"
 W !,"     "
 W !,"            1                                             DATE/TIME"
 W !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 W !,$G(BOLD)_"     >>>>>  3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB  <<<<<"_$G(NORM)
 W !,$G(BOLD)_"     >>>>>  4 <blank>                                                <<<<<"_$G(NORM)
 W !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 W !,"            6 <blank>"
 W !,"     "
 D KATTR
 Q
RC ; Confidentiality Banner
 D ATTR
 W !,"     Print the confidentiality banner with Health Summary Objects?"
 W !,"     "
 W !,"            1                                             DATE/TIME"
 W !,$G(BOLD)_"     >>>>>  2 ***********  CONFIDENTIAL HEALTH SUMMARY ************  <<<<<"_$G(NORM)
 W !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 W !,"            4 <blank>"
 W !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 W !,"            6 <blank>"
 W !,"     "
 D KATTR
 Q
CHU ; Component Header Underlined
 N GMTSCHU S GMTSCHU=""
CH ; Component Header
 D ATTR
 W:'$D(GMTSCHU) !,"     Print the standard component header with Health Summary Objects?"
 W:$D(GMTSCHU) !,"     Underline the standard component header with a single line of dashes?"
 W !,"     "
 W !,"            1                                             DATE/TIME"
 W !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 W !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 W !,"            4 <blank>"
 W:'$D(GMTSCHU) !,$G(BOLD)_"     >>>>> "_$G(NORM)_" 5 "_$G(BOLD)_"PN - Progress Notes "_$G(NORM)_"(max 10 occ or 1 yr)               "_$G(BOLD)_"<<<<<"_$G(NORM)
 W:'$D(GMTSCHU) !,$G(BOLD)_"           "_$G(NORM)_"  "_$G(BOLD)_"|-------------------| "_$G(NORM)
 W:$D(GMTSCHU) !,"            5 PN - Progress Notes"
 W:$D(GMTSCHU) !,$G(BOLD),"     >>>>>    -------------------                                    <<<<<"_$G(NORM)
 W !,"     "
 D KATTR
 Q
LM ; Time and Occurence Limits
 D ATTR
 W !,"     Print report time and occurence limits with the component header?"
 W !,"     "
 W !,"            1                                             DATE/TIME"
 W !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 W !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 W !,"            4 <blank>"
 W !,"  "_$G(BOLD)_"   >>>>> "_$G(NORM)_" 5 PN - Progress Notes "_$G(BOLD)_"(max 10 occ or 1 yr) "_$G(NORM)_"              "_$G(BOLD)_"<<<<<"_$G(NORM)
 W !,"                                 "_$G(BOLD)_"|--------------------| "_$G(NORM)
 W !,"     "
 D KATTR
 Q
BL ; Blank Line
 D ATTR
 W !,"     Print a Blank Line after the Component Header?"
 W !,"     "
 W !,"            1                                             DATE/TIME"
 W !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 W !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 W !,"            4 <blank>"
 W:$D(GMTSOBJ("LIMITS")) !,"            5 PN - Progress Notes (max 10 occurrences or 1 year)"
 W:'$D(GMTSOBJ("LIMITS")) !,"            5 PN - Progress Notes"
 W !,"  "_$G(BOLD)_"   >>>>>  6 <blank>                                                <<<<<"_$G(NORM)
 W !,"     "
 D KATTR
 Q
DE ; Deceased
 D ATTR
 W !,"     Print the date deceased with Health Summary Objects?"
 W !,"     "
 W !,"            1                                             DATE/TIME"
 W !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 W !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 W !,"            4 <blank>"
 W !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 W !,"            6 <blank>"
 W !,$G(BOLD)_" *   >>>>>  7              **  DECEASED  DATE/TIME  **               <<<<<"_$G(NORM)
 W !,"     "
 W !,"          "_$G(BOLD)_"*"_$G(NORM)_" This is a conditional line of the Health Summary report "
 W !,"            header which is only printed for deceased patients"
 W !,"     "
 D KATTR
 Q
SC ; Suppress Components Without Data
 D ATTR
 W !,"     If this field is set to 1 (YES) and a Health Summary component does "
 W !,"     not have any data, the component will be suppressed.",!
 W !,"     If this field is NOT set to 1 (Null or 0 = NO) and the component does"
 W !,"     not have any data, then the component will print with the statement"
 W !,"     ""No data available""",!
 W !,"          Example:",!
 W !,$G(BOLD),"               PN - Progress Notes",$G(NORM)
 W !,$G(BOLD),"               No data available",$G(NORM)
 D KATTR
 Q
NODATA ; Overwrite No data available message
 D ATTR
 W !,"     If text is define in this field and the Suppress Components "
 W !,"     Without Data is set to Yes, If the Health Summary Report "
 W !,"     does not find data for the patient then the text define in"
 W !,"     this field will display in CPRS instead of the standard"
 W !,"     ""No data available"" message.",!
 ;W !,"          Example:",!
 ;W !,$G(BOLD),"               PN - Progress Notes",$G(NORM)
 ;W !,$G(BOLD),"               No data available",$G(NORM)
 D KATTR
 Q
 ;
TRIM(X) ; Trim Spaces
 S X=$G(X) F  Q:$E(X,1)'=" "  S X=$E(X,2,$L(X))
 F  Q:$E(X,$L(X))'=" "  S X=$E(X,1,($L(X)-1))
 Q X
ATTR ; Set Screen Attributes
 N X,IOINHI,IOINORM S X="IOINHI;IOINORM" D ENDR^%ZISS S BOLD=$G(IOINHI),NORM=$G(IOINORM) D ENDR^%ZISS
 Q
KATTR ; Kill Screen Attributes
 K NORM,BOLD
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HGMTSOBH   8564     printed  Sep 23, 2025@19:34:24                                                                                                                                                                                                     Page 2
GMTSOBH   ; SLC/KER - HS Object - Help                 ; 05/22/2008
 +1       ;;2.7;Health Summary;**58,89**;Oct 20, 1995;Build 61
 +2       ;
 +3       ; External References
 +4       ;   DBIA  10103  $$FMTE^XLFDT
 +5       ;   DBIA  10103  $$NOW^XLFDT
 +6       ;   DBIA  10088  ENDR^%ZISS
 +7       ;                       
 +8        QUIT 
PLB       ; Print Object Label
 +1        DO ATTR
 +2        WRITE !,"     Do you want to print a label before printing a Health Summary Object?"
 +3        WRITE !,"     Both the label and object will be embedded in another document.",!
 +4        WRITE !,"            <document text>",$GET(BOLD)
 +5        WRITE !,"              <object label>",$GET(NORM)
 +6        WRITE !,"                <Health Summary object>"
 +7        WRITE !,"            <document text continued>"
 +8        DO KATTR
 +9        QUIT 
LBH       ; Object Label
 +1        DO ATTR
 +2        WRITE !,"     Enter a label for this object, 3 to 60 characters in length (optional)."
 +3        WRITE !,"     This label will be embedded in another document along with the Health"
 +4        WRITE !,"     Summary Type and will be printed as the first line of the object, before"
 +5        WRITE !,"     the Health Summary Prints.",!
 +6        WRITE !,"       <document>",$GET(BOLD)
 +7        WRITE !,"         <object label>",$GET(NORM)
 +8        WRITE !,"           <Health Summary object>"
 +9        WRITE !,"       <document>",!
 +10       DO KATTR
 +11       QUIT 
LBLH      ; Label Blank Line
 +1        DO ATTR
 +2        WRITE !,"     If there is a Label for the object and the Label is to be printed,"
 +3        WRITE !,"     then a blank line may be printed after the object label.",!
 +4        WRITE !,"            <document text>"
 +5        WRITE !,"              <object label>",$GET(BOLD)
 +6        WRITE !,"              <blank line>  ",$GET(NORM)
 +7        WRITE !,"                <Health Summary object>"
 +8        WRITE !,"            <document text continued>"
 +9        DO KATTR
 +10       QUIT 
HSTH      ; Health Summary Type
 +1        WRITE !,"     Enter the name of an existing Health Summary Type (file 142)"
 +2        WRITE !,"     that you wish to embedded in another document as an object.",!
 +3        QUIT 
ALL       ; Suppress all of hte Health Summary Header
 +1        NEW GMTSDLD
           SET GMTSDLD=$$EDT^GMTSU($$NOW^XLFDT)
 +2        WRITE !,"     Print the following lines from the standard Health Summary"
 +3        WRITE !,"     Header with the Object?"
 +4        WRITE !,"     "
 +5        WRITE !,"     1                                                  "_GMTSDLD
 +6        WRITE !,"     2 *****************  CONFIDENTIAL HEALTH SUMMARY ******************"
 +7        WRITE !,"     3 PATIENT NAME    SSN-SSN-SSAN     WARD/LOCATTION     DATE OF BIRTH"
 +8        WRITE !,"     4 <blank>"
 +9        WRITE !,"     5 PN - Progress Notes (max 10 occurrences or 1 year)"
 +10       WRITE !,"     6 <blank>"
 +11       WRITE !,"     "
 +12       QUIT 
RD        ; Report Date and Time
 +1        NEW GMTSDLD
           SET GMTSDLD=$TRANSLATE($$FMTE^XLFDT($$NOW^XLFDT,"5ZM"),"@"," ")
           DO ATTR
 +2        WRITE !,"     Print the report date/time with Health Summary Objects?"
 +3        WRITE !,"     "
 +4        WRITE !,"     "_$GET(BOLD)_">>>>>  1                                             DATE/TIME  <<<<<"_$GET(NORM)
 +5        WRITE !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 +6        WRITE !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 +7        WRITE !,"            4 <blank>"
 +8        WRITE !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 +9        WRITE !,"            6 <blank>"
 +10       WRITE !,"     "
 +11       DO KATTR
 +12       QUIT 
RH        ; Report Header
 +1        DO ATTR
 +2        WRITE !,"     Print the report header with Health Summary Objects?"
 +3        WRITE !,"     "
 +4        WRITE !,"            1                                             DATE/TIME"
 +5        WRITE !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 +6        WRITE !,$GET(BOLD)_"     >>>>>  3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB  <<<<<"_$GET(NORM)
 +7        WRITE !,$GET(BOLD)_"     >>>>>  4 <blank>                                                <<<<<"_$GET(NORM)
 +8        WRITE !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 +9        WRITE !,"            6 <blank>"
 +10       WRITE !,"     "
 +11       DO KATTR
 +12       QUIT 
RC        ; Confidentiality Banner
 +1        DO ATTR
 +2        WRITE !,"     Print the confidentiality banner with Health Summary Objects?"
 +3        WRITE !,"     "
 +4        WRITE !,"            1                                             DATE/TIME"
 +5        WRITE !,$GET(BOLD)_"     >>>>>  2 ***********  CONFIDENTIAL HEALTH SUMMARY ************  <<<<<"_$GET(NORM)
 +6        WRITE !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 +7        WRITE !,"            4 <blank>"
 +8        WRITE !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 +9        WRITE !,"            6 <blank>"
 +10       WRITE !,"     "
 +11       DO KATTR
 +12       QUIT 
CHU       ; Component Header Underlined
 +1        NEW GMTSCHU
           SET GMTSCHU=""
CH        ; Component Header
 +1        DO ATTR
 +2        if '$DATA(GMTSCHU)
               WRITE !,"     Print the standard component header with Health Summary Objects?"
 +3        if $DATA(GMTSCHU)
               WRITE !,"     Underline the standard component header with a single line of dashes?"
 +4        WRITE !,"     "
 +5        WRITE !,"            1                                             DATE/TIME"
 +6        WRITE !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 +7        WRITE !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 +8        WRITE !,"            4 <blank>"
 +9        if '$DATA(GMTSCHU)
               WRITE !,$GET(BOLD)_"     >>>>> "_$GET(NORM)_" 5 "_$GET(BOLD)_"PN - Progress Notes "_$GET(NORM)_"(max 10 occ or 1 yr)               "_$GET(BOLD)_"<<<<<"_$GET(NORM)
 +10       if '$DATA(GMTSCHU)
               WRITE !,$GET(BOLD)_"           "_$GET(NORM)_"  "_$GET(BOLD)_"|-------------------| "_$GET(NORM)
 +11       if $DATA(GMTSCHU)
               WRITE !,"            5 PN - Progress Notes"
 +12       if $DATA(GMTSCHU)
               WRITE !,$GET(BOLD),"     >>>>>    -------------------                                    <<<<<"_$GET(NORM)
 +13       WRITE !,"     "
 +14       DO KATTR
 +15       QUIT 
LM        ; Time and Occurence Limits
 +1        DO ATTR
 +2        WRITE !,"     Print report time and occurence limits with the component header?"
 +3        WRITE !,"     "
 +4        WRITE !,"            1                                             DATE/TIME"
 +5        WRITE !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 +6        WRITE !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 +7        WRITE !,"            4 <blank>"
 +8        WRITE !,"  "_$GET(BOLD)_"   >>>>> "_$GET(NORM)_" 5 PN - Progress Notes "_$GET(BOLD)_"(max 10 occ or 1 yr) "_$GET(NORM)_"              "_$GET(BOLD)_"<<<<<"_$GET(NORM)
 +9        WRITE !,"                                 "_$GET(BOLD)_"|--------------------| "_$GET(NORM)
 +10       WRITE !,"     "
 +11       DO KATTR
 +12       QUIT 
BL        ; Blank Line
 +1        DO ATTR
 +2        WRITE !,"     Print a Blank Line after the Component Header?"
 +3        WRITE !,"     "
 +4        WRITE !,"            1                                             DATE/TIME"
 +5        WRITE !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 +6        WRITE !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 +7        WRITE !,"            4 <blank>"
 +8        if $DATA(GMTSOBJ("LIMITS"))
               WRITE !,"            5 PN - Progress Notes (max 10 occurrences or 1 year)"
 +9        if '$DATA(GMTSOBJ("LIMITS"))
               WRITE !,"            5 PN - Progress Notes"
 +10       WRITE !,"  "_$GET(BOLD)_"   >>>>>  6 <blank>                                                <<<<<"_$GET(NORM)
 +11       WRITE !,"     "
 +12       DO KATTR
 +13       QUIT 
DE        ; Deceased
 +1        DO ATTR
 +2        WRITE !,"     Print the date deceased with Health Summary Objects?"
 +3        WRITE !,"     "
 +4        WRITE !,"            1                                             DATE/TIME"
 +5        WRITE !,"            2 ***********  CONFIDENTIAL HEALTH SUMMARY ************"
 +6        WRITE !,"            3 PATIENT NAME    SSN-SS-SSAN   WARD/LOCATION       DOB"
 +7        WRITE !,"            4 <blank>"
 +8        WRITE !,"            5 PN - Progress Notes (max 10 occ or 1 yr)"
 +9        WRITE !,"            6 <blank>"
 +10       WRITE !,$GET(BOLD)_" *   >>>>>  7              **  DECEASED  DATE/TIME  **               <<<<<"_$GET(NORM)
 +11       WRITE !,"     "
 +12       WRITE !,"          "_$GET(BOLD)_"*"_$GET(NORM)_" This is a conditional line of the Health Summary report "
 +13       WRITE !,"            header which is only printed for deceased patients"
 +14       WRITE !,"     "
 +15       DO KATTR
 +16       QUIT 
SC        ; Suppress Components Without Data
 +1        DO ATTR
 +2        WRITE !,"     If this field is set to 1 (YES) and a Health Summary component does "
 +3        WRITE !,"     not have any data, the component will be suppressed.",!
 +4        WRITE !,"     If this field is NOT set to 1 (Null or 0 = NO) and the component does"
 +5        WRITE !,"     not have any data, then the component will print with the statement"
 +6        WRITE !,"     ""No data available""",!
 +7        WRITE !,"          Example:",!
 +8        WRITE !,$GET(BOLD),"               PN - Progress Notes",$GET(NORM)
 +9        WRITE !,$GET(BOLD),"               No data available",$GET(NORM)
 +10       DO KATTR
 +11       QUIT 
NODATA    ; Overwrite No data available message
 +1        DO ATTR
 +2        WRITE !,"     If text is define in this field and the Suppress Components "
 +3        WRITE !,"     Without Data is set to Yes, If the Health Summary Report "
 +4        WRITE !,"     does not find data for the patient then the text define in"
 +5        WRITE !,"     this field will display in CPRS instead of the standard"
 +6        WRITE !,"     ""No data available"" message.",!
 +7       ;W !,"          Example:",!
 +8       ;W !,$G(BOLD),"               PN - Progress Notes",$G(NORM)
 +9       ;W !,$G(BOLD),"               No data available",$G(NORM)
 +10       DO KATTR
 +11       QUIT 
 +12      ;
TRIM(X)   ; Trim Spaces
 +1        SET X=$GET(X)
           FOR 
               if $EXTRACT(X,1)'=" "
                   QUIT 
               SET X=$EXTRACT(X,2,$LENGTH(X))
 +2        FOR 
               if $EXTRACT(X,$LENGTH(X))'=" "
                   QUIT 
               SET X=$EXTRACT(X,1,($LENGTH(X)-1))
 +3        QUIT X
ATTR      ; Set Screen Attributes
 +1        NEW X,IOINHI,IOINORM
           SET X="IOINHI;IOINORM"
           DO ENDR^%ZISS
           SET BOLD=$GET(IOINHI)
           SET NORM=$GET(IOINORM)
           DO ENDR^%ZISS
 +2        QUIT 
KATTR     ; Kill Screen Attributes
 +1        KILL NORM,BOLD
 +2        QUIT