- YTSALSQL ;ISP/LMT - Score ALSSQOL-SF ;Jul 03, 2024@16:08:53
- ;;5.01;MENTAL HEALTH;**250**;Dec 30, 1994;Build 26
- ;
- ;
- DLLSTR(YSDATA,YS,YSTRNG) ; compute scores or report text based on YSTRNG
- ; input
- ; YSDATA(2)=adminId^patientDFN^instrumentName^dateGiven^isComplete
- ; YSDATA(2+n)=questionId^sequence^choiceId
- ; YS("AD")=adminId
- ; YSTRNG=1 for score, 2 for report
- ; output if YSTRNG=1: ^TMP($J,"YSCOR",n)=scaleId=score
- ; output if YSTRNG=2: append special "answers" to YSDATA
- ;
- I YSTRNG=1 D SCORESV(.YSDATA)
- I YSTRNG=2 D
- . N YSSCORES,YSN
- . D LDSCORES^YTSCORE(.YSDATA,.YS) ; puts score into ^TMP($J,"YSCOR",2)
- . S YSSCORES=$$REPORT()
- . S YSN=$O(YSDATA(""),-1) ; get last node
- . S YSDATA(YSN+1)="7771^9999;1^"_YSSCORES
- Q
- ;
- SCORESV(YSDATA) ; calculate the score
- ; expects YSDATA from DLLSTR (YSDATA from LOADANSW^YTSCORE,SCALEG^YTQAPI3)
- ;
- N YSBULBAR,YSBULBARAVG,YSCOUNT,YSEMOTION,YSEMOTIONAVG,YSI,YSINTERACTION,YSINTERACTIONAVG,YSINTIMACY
- N YSINTIMACYAVG,YSJ,YSMAPPINGS,YSNODE,YSPHYSICAL,YSPHYSICALAVG,YSQID,YSQUESTIONS,YSRELIGION
- N YSRELIGIONAVG,YSSCALE,YSSCALECONST,YSSCLID,YSSCLNM,YSSCORES,YSSKIPPED,YSTOTAL,YSTOTALAVG,YSVAL,YSX
- ;
- F YSI=1:1 S YSX=$P($T(MAPPING+YSI),";;",2,99) Q:YSX=""!(YSX="zzz") D
- . S YSSCALECONST=$P(YSX,U,1)
- . S YSSCALE=$P(YSX,U,3)
- . S @YSSCALECONST=YSSCALE
- . S YSSCORES(YSSCALE)=""
- . S YSQUESTIONS=$P(YSX,U,4)
- . I YSQUESTIONS="" QUIT
- . F YSJ=1:1 S YSQID=$P(YSQUESTIONS,";",YSJ) Q:YSQID="" D
- . . S YSMAPPINGS(YSQID)=YSSCALE
- ;
- S YSSKIPPED=0
- S YSCOUNT=0
- S YSI=2
- F S YSI=$O(YSDATA(YSI)) Q:'YSI!(YSSKIPPED) D
- . S YSQID=$P(YSDATA(YSI),U)
- . S YSVAL=$P(YSDATA(YSI),U,3)
- . I 'YSQID QUIT
- . S YSSCALE=$G(YSMAPPINGS(YSQID))
- . I 'YSSCALE QUIT
- . I YSVAL=1155!(YSVAL=1156)!(YSVAL=1157)!(YSVAL'?1.N) S YSSKIPPED=1 QUIT
- . S YSCOUNT=YSCOUNT+1
- . S YSSCORES(YSSCALE)=YSSCORES(YSSCALE)+YSVAL
- I YSCOUNT<20 S YSSKIPPED=1
- ;
- ; Inverted scores: Subtract the score for each subsection from the total possible score
- S YSSCORES(YSEMOTION)=30-YSSCORES(YSEMOTION)
- S YSSCORES(YSPHYSICAL)=50-YSSCORES(YSPHYSICAL)
- S YSSCORES(YSBULBAR)=20-YSSCORES(YSBULBAR)
- ;
- S YSSCORES(YSTOTAL)=YSSCORES(YSEMOTION)+YSSCORES(YSPHYSICAL)+YSSCORES(YSBULBAR)+YSSCORES(YSINTERACTION)+YSSCORES(YSRELIGION)+YSSCORES(YSINTIMACY)
- ;
- S YSSCORES(YSTOTALAVG)=$J(YSSCORES(YSTOTAL)/20,0,2)
- S YSSCORES(YSEMOTIONAVG)=$J(YSSCORES(YSEMOTION)/3,0,2)
- S YSSCORES(YSPHYSICALAVG)=$J(YSSCORES(YSPHYSICAL)/5,0,2)
- S YSSCORES(YSBULBARAVG)=$J(YSSCORES(YSBULBAR)/2,0,2)
- S YSSCORES(YSINTERACTIONAVG)=$J(YSSCORES(YSINTERACTION)/4,0,2)
- S YSSCORES(YSRELIGIONAVG)=$J(YSSCORES(YSRELIGION)/2,0,2)
- S YSSCORES(YSINTIMACYAVG)=$J(YSSCORES(YSINTIMACY)/4,0,2)
- ;
- ; set scores into ^TMP($J,"YSCOR",n)=scaleName=score {rawScore^tScore}
- K ^TMP($J,"YSCOR")
- I $D(^TMP($J,"YSG",1)),^TMP($J,"YSG",1)="[ERROR]" D Q ;-->out
- . S ^TMP($J,"YSCOR",1)="[ERROR]"
- . S ^TMP($J,"YSCOR",2)="No Scale found for ADMIN"
- ;
- S ^TMP($J,"YSCOR",1)="[DATA]"
- S YSI=2
- S YSJ=1
- F S YSI=$O(^TMP($J,"YSG",YSI)) Q:'YSI D
- . S YSNODE=$G(^TMP($J,"YSG",YSI))
- . I $P(YSNODE,"=",1)["Group" QUIT
- . S YSSCLID=+$P(YSNODE,"=",2)
- . S YSSCLNM=$P(YSNODE,U,4)
- . S YSJ=YSJ+1
- . S ^TMP($J,"YSCOR",YSJ)=YSSCLNM_"="_$S('YSSKIPPED:$G(YSSCORES(YSSCLID)),1:"")
- Q
- ;
- ;
- MAPPING ;Map question IDs to scales; Constant^Scale Name^Scale ID^Questions IDs
- ;;YSTOTAL^Total Score^1598
- ;;YSEMOTION^Negative Emotion^1599^9538;9542;9543
- ;;YSPHYSICAL^Physical Functioning^1600^9529;9530;9533;9534;9535
- ;;YSBULBAR^Bulbar Function^1601^9531;9532
- ;;YSINTERACTION^Interaction with people and the Environment^1602^9536;9537;9539;9544
- ;;YSRELIGION^Religiosity^1603^9540;9541
- ;;YSINTIMACY^Intimacy^1604^9545;9546;9547;9548
- ;;YSTOTALAVG^Average Total^1591
- ;;YSEMOTIONAVG^Negative Emotion Avg^1592
- ;;YSPHYSICALAVG^Physical Functioning Avg^1593
- ;;YSBULBARAVG^Bulbar Function Avg^1594
- ;;YSINTERACTIONAVG^Interaction with people and the Environment Avg^1595
- ;;YSRELIGIONAVG^Religiosity Avg^1596
- ;;YSINTIMACYAVG^Intimacy Avg^1597
- ;;zzz
- ;
- ;
- REPORT(YSRETURN) ; build the scoring display for the report
- ; expects ^TMP($J,"YSCOR",...) and ^TMP($J,"YSG") from DLLSTR
- ; YSDATA from DLLSTR
- ;
- N YSBULBAR,YSBULBARAVG,YSEMOTION,YSEMOTIONAVG,YSI,YSINTERACTION,YSINTERACTIONAVG,YSINTIMACY,YSINTIMACYAVG
- N YSNAME,YSPHYSICAL,YSPHYSICALAVG,YSRELIGION,YSRELIGIONAVG,YSSCALE,YSSCALECONST,YSSCALEMAP,YSSCALENAME
- N YSSCORES,YSSKIPPED,YSTOTAL,YSTOTALAVG,YSVALUE,YSX
- ;
- F YSI=1:1 S YSX=$P($T(MAPPING+YSI),";;",2,99) Q:YSX=""!(YSX="zzz") D
- . S YSSCALECONST=$P(YSX,U,1)
- . S YSSCALENAME=$P(YSX,U,2)
- . S YSSCALE=$P(YSX,U,3)
- . S @YSSCALECONST=YSSCALE
- . S YSSCALEMAP(YSSCALENAME)=YSSCALE
- . S YSSCORES(YSSCALE)=""
- ;
- S YSI=0 F S YSI=$O(^TMP($J,"YSCOR",YSI)) Q:'YSI D
- . S YSNAME=$P(^TMP($J,"YSCOR",YSI),"=")
- . S YSVALUE=$P(^TMP($J,"YSCOR",YSI),"=",2)
- . I YSNAME="" QUIT
- . S YSSCALE=$G(YSSCALEMAP(YSNAME))
- . I YSSCALE="" QUIT
- . S YSSCORES(YSSCALE)=YSVALUE
- ;
- S YSSKIPPED=0
- S YSSCALE=0
- F S YSSCALE=$O(YSSCORES(YSSCALE)) Q:YSSCALE="" D
- . I $G(YSSCORES(YSSCALE))="" S YSSKIPPED=1
- ;
- I YSSKIPPED D QUIT YSRETURN
- . S YSRETURN="|No scores due to skipped items."
- ;
- S YSX=""
- S YSX=YSX_"| Negative Emotion Total: "_$J(YSSCORES(YSEMOTION),3)_" (Max=30)"
- S YSX=YSX_"| Physical Functioning Total: "_$J(YSSCORES(YSPHYSICAL),3)_" (Max=50)"
- S YSX=YSX_"| Bulbar Function Total: "_$J(YSSCORES(YSBULBAR),3)_" (Max=20)"
- S YSX=YSX_"| Interaction with people and the Environment Total: "_$J(YSSCORES(YSINTERACTION),3)_" (Max=40)"
- S YSX=YSX_"| Religiosity Total: "_$J(YSSCORES(YSRELIGION),3)_" (Max=20)"
- S YSX=YSX_"| Intimacy Total: "_$J(YSSCORES(YSINTIMACY),3)_" (Max=40)"
- S YSX=YSX_"| TOTAL SCORE: "_$J(YSSCORES(YSTOTAL),3)_" (Max=200)"
- S YSX=YSX_"|"
- S YSX=YSX_"| Negative Emotion Average: "_$J(YSSCORES(YSEMOTIONAVG),0,2)
- S YSX=YSX_"| Physical Functioning Average: "_$J(YSSCORES(YSPHYSICALAVG),0,2)
- S YSX=YSX_"| Bulbar Function Average: "_$J(YSSCORES(YSBULBARAVG),0,2)
- S YSX=YSX_"| Interaction with people and the Environment Average: "_$J(YSSCORES(YSINTERACTIONAVG),0,2)
- S YSX=YSX_"| Religiosity Average: "_$J(YSSCORES(YSRELIGIONAVG),0,2)
- S YSX=YSX_"| Intimacy Average: "_$J(YSSCORES(YSINTIMACYAVG),0,2)
- S YSX=YSX_"| AVERAGE TOTAL SCORE: "_$J(YSSCORES(YSTOTALAVG),0,2)
- S YSX=YSX_"|"
- S YSX=YSX_"|Averages are reported as a value between 0 (worse) and 10 (best)."
- S YSRETURN=YSX
- ;
- Q YSRETURN
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HYTSALSQL 6906 printed Feb 18, 2025@23:45:29 Page 2
- YTSALSQL ;ISP/LMT - Score ALSSQOL-SF ;Jul 03, 2024@16:08:53
- +1 ;;5.01;MENTAL HEALTH;**250**;Dec 30, 1994;Build 26
- +2 ;
- +3 ;
- DLLSTR(YSDATA,YS,YSTRNG) ; compute scores or report text based on YSTRNG
- +1 ; input
- +2 ; YSDATA(2)=adminId^patientDFN^instrumentName^dateGiven^isComplete
- +3 ; YSDATA(2+n)=questionId^sequence^choiceId
- +4 ; YS("AD")=adminId
- +5 ; YSTRNG=1 for score, 2 for report
- +6 ; output if YSTRNG=1: ^TMP($J,"YSCOR",n)=scaleId=score
- +7 ; output if YSTRNG=2: append special "answers" to YSDATA
- +8 ;
- +9 IF YSTRNG=1
- DO SCORESV(.YSDATA)
- +10 IF YSTRNG=2
- Begin DoDot:1
- +11 NEW YSSCORES,YSN
- +12 ; puts score into ^TMP($J,"YSCOR",2)
- DO LDSCORES^YTSCORE(.YSDATA,.YS)
- +13 SET YSSCORES=$$REPORT()
- +14 ; get last node
- SET YSN=$ORDER(YSDATA(""),-1)
- +15 SET YSDATA(YSN+1)="7771^9999;1^"_YSSCORES
- End DoDot:1
- +16 QUIT
- +17 ;
- SCORESV(YSDATA) ; calculate the score
- +1 ; expects YSDATA from DLLSTR (YSDATA from LOADANSW^YTSCORE,SCALEG^YTQAPI3)
- +2 ;
- +3 NEW YSBULBAR,YSBULBARAVG,YSCOUNT,YSEMOTION,YSEMOTIONAVG,YSI,YSINTERACTION,YSINTERACTIONAVG,YSINTIMACY
- +4 NEW YSINTIMACYAVG,YSJ,YSMAPPINGS,YSNODE,YSPHYSICAL,YSPHYSICALAVG,YSQID,YSQUESTIONS,YSRELIGION
- +5 NEW YSRELIGIONAVG,YSSCALE,YSSCALECONST,YSSCLID,YSSCLNM,YSSCORES,YSSKIPPED,YSTOTAL,YSTOTALAVG,YSVAL,YSX
- +6 ;
- +7 FOR YSI=1:1
- SET YSX=$PIECE($TEXT(MAPPING+YSI),";;",2,99)
- if YSX=""!(YSX="zzz")
- QUIT
- Begin DoDot:1
- +8 SET YSSCALECONST=$PIECE(YSX,U,1)
- +9 SET YSSCALE=$PIECE(YSX,U,3)
- +10 SET @YSSCALECONST=YSSCALE
- +11 SET YSSCORES(YSSCALE)=""
- +12 SET YSQUESTIONS=$PIECE(YSX,U,4)
- +13 IF YSQUESTIONS=""
- QUIT
- +14 FOR YSJ=1:1
- SET YSQID=$PIECE(YSQUESTIONS,";",YSJ)
- if YSQID=""
- QUIT
- Begin DoDot:2
- +15 SET YSMAPPINGS(YSQID)=YSSCALE
- End DoDot:2
- End DoDot:1
- +16 ;
- +17 SET YSSKIPPED=0
- +18 SET YSCOUNT=0
- +19 SET YSI=2
- +20 FOR
- SET YSI=$ORDER(YSDATA(YSI))
- if 'YSI!(YSSKIPPED)
- QUIT
- Begin DoDot:1
- +21 SET YSQID=$PIECE(YSDATA(YSI),U)
- +22 SET YSVAL=$PIECE(YSDATA(YSI),U,3)
- +23 IF 'YSQID
- QUIT
- +24 SET YSSCALE=$GET(YSMAPPINGS(YSQID))
- +25 IF 'YSSCALE
- QUIT
- +26 IF YSVAL=1155!(YSVAL=1156)!(YSVAL=1157)!(YSVAL'?1.N)
- SET YSSKIPPED=1
- QUIT
- +27 SET YSCOUNT=YSCOUNT+1
- +28 SET YSSCORES(YSSCALE)=YSSCORES(YSSCALE)+YSVAL
- End DoDot:1
- +29 IF YSCOUNT<20
- SET YSSKIPPED=1
- +30 ;
- +31 ; Inverted scores: Subtract the score for each subsection from the total possible score
- +32 SET YSSCORES(YSEMOTION)=30-YSSCORES(YSEMOTION)
- +33 SET YSSCORES(YSPHYSICAL)=50-YSSCORES(YSPHYSICAL)
- +34 SET YSSCORES(YSBULBAR)=20-YSSCORES(YSBULBAR)
- +35 ;
- +36 SET YSSCORES(YSTOTAL)=YSSCORES(YSEMOTION)+YSSCORES(YSPHYSICAL)+YSSCORES(YSBULBAR)+YSSCORES(YSINTERACTION)+YSSCORES(YSRELIGION)+YSSCORES(YSINTIMACY)
- +37 ;
- +38 SET YSSCORES(YSTOTALAVG)=$JUSTIFY(YSSCORES(YSTOTAL)/20,0,2)
- +39 SET YSSCORES(YSEMOTIONAVG)=$JUSTIFY(YSSCORES(YSEMOTION)/3,0,2)
- +40 SET YSSCORES(YSPHYSICALAVG)=$JUSTIFY(YSSCORES(YSPHYSICAL)/5,0,2)
- +41 SET YSSCORES(YSBULBARAVG)=$JUSTIFY(YSSCORES(YSBULBAR)/2,0,2)
- +42 SET YSSCORES(YSINTERACTIONAVG)=$JUSTIFY(YSSCORES(YSINTERACTION)/4,0,2)
- +43 SET YSSCORES(YSRELIGIONAVG)=$JUSTIFY(YSSCORES(YSRELIGION)/2,0,2)
- +44 SET YSSCORES(YSINTIMACYAVG)=$JUSTIFY(YSSCORES(YSINTIMACY)/4,0,2)
- +45 ;
- +46 ; set scores into ^TMP($J,"YSCOR",n)=scaleName=score {rawScore^tScore}
- +47 KILL ^TMP($JOB,"YSCOR")
- +48 ;-->out
- IF $DATA(^TMP($JOB,"YSG",1))
- IF ^TMP($JOB,"YSG",1)="[ERROR]"
- Begin DoDot:1
- +49 SET ^TMP($JOB,"YSCOR",1)="[ERROR]"
- +50 SET ^TMP($JOB,"YSCOR",2)="No Scale found for ADMIN"
- End DoDot:1
- QUIT
- +51 ;
- +52 SET ^TMP($JOB,"YSCOR",1)="[DATA]"
- +53 SET YSI=2
- +54 SET YSJ=1
- +55 FOR
- SET YSI=$ORDER(^TMP($JOB,"YSG",YSI))
- if 'YSI
- QUIT
- Begin DoDot:1
- +56 SET YSNODE=$GET(^TMP($JOB,"YSG",YSI))
- +57 IF $PIECE(YSNODE,"=",1)["Group"
- QUIT
- +58 SET YSSCLID=+$PIECE(YSNODE,"=",2)
- +59 SET YSSCLNM=$PIECE(YSNODE,U,4)
- +60 SET YSJ=YSJ+1
- +61 SET ^TMP($JOB,"YSCOR",YSJ)=YSSCLNM_"="_$SELECT('YSSKIPPED:$GET(YSSCORES(YSSCLID)),1:"")
- End DoDot:1
- +62 QUIT
- +63 ;
- +64 ;
- MAPPING ;Map question IDs to scales; Constant^Scale Name^Scale ID^Questions IDs
- +1 ;;YSTOTAL^Total Score^1598
- +2 ;;YSEMOTION^Negative Emotion^1599^9538;9542;9543
- +3 ;;YSPHYSICAL^Physical Functioning^1600^9529;9530;9533;9534;9535
- +4 ;;YSBULBAR^Bulbar Function^1601^9531;9532
- +5 ;;YSINTERACTION^Interaction with people and the Environment^1602^9536;9537;9539;9544
- +6 ;;YSRELIGION^Religiosity^1603^9540;9541
- +7 ;;YSINTIMACY^Intimacy^1604^9545;9546;9547;9548
- +8 ;;YSTOTALAVG^Average Total^1591
- +9 ;;YSEMOTIONAVG^Negative Emotion Avg^1592
- +10 ;;YSPHYSICALAVG^Physical Functioning Avg^1593
- +11 ;;YSBULBARAVG^Bulbar Function Avg^1594
- +12 ;;YSINTERACTIONAVG^Interaction with people and the Environment Avg^1595
- +13 ;;YSRELIGIONAVG^Religiosity Avg^1596
- +14 ;;YSINTIMACYAVG^Intimacy Avg^1597
- +15 ;;zzz
- +16 ;
- +17 ;
- REPORT(YSRETURN) ; build the scoring display for the report
- +1 ; expects ^TMP($J,"YSCOR",...) and ^TMP($J,"YSG") from DLLSTR
- +2 ; YSDATA from DLLSTR
- +3 ;
- +4 NEW YSBULBAR,YSBULBARAVG,YSEMOTION,YSEMOTIONAVG,YSI,YSINTERACTION,YSINTERACTIONAVG,YSINTIMACY,YSINTIMACYAVG
- +5 NEW YSNAME,YSPHYSICAL,YSPHYSICALAVG,YSRELIGION,YSRELIGIONAVG,YSSCALE,YSSCALECONST,YSSCALEMAP,YSSCALENAME
- +6 NEW YSSCORES,YSSKIPPED,YSTOTAL,YSTOTALAVG,YSVALUE,YSX
- +7 ;
- +8 FOR YSI=1:1
- SET YSX=$PIECE($TEXT(MAPPING+YSI),";;",2,99)
- if YSX=""!(YSX="zzz")
- QUIT
- Begin DoDot:1
- +9 SET YSSCALECONST=$PIECE(YSX,U,1)
- +10 SET YSSCALENAME=$PIECE(YSX,U,2)
- +11 SET YSSCALE=$PIECE(YSX,U,3)
- +12 SET @YSSCALECONST=YSSCALE
- +13 SET YSSCALEMAP(YSSCALENAME)=YSSCALE
- +14 SET YSSCORES(YSSCALE)=""
- End DoDot:1
- +15 ;
- +16 SET YSI=0
- FOR
- SET YSI=$ORDER(^TMP($JOB,"YSCOR",YSI))
- if 'YSI
- QUIT
- Begin DoDot:1
- +17 SET YSNAME=$PIECE(^TMP($JOB,"YSCOR",YSI),"=")
- +18 SET YSVALUE=$PIECE(^TMP($JOB,"YSCOR",YSI),"=",2)
- +19 IF YSNAME=""
- QUIT
- +20 SET YSSCALE=$GET(YSSCALEMAP(YSNAME))
- +21 IF YSSCALE=""
- QUIT
- +22 SET YSSCORES(YSSCALE)=YSVALUE
- End DoDot:1
- +23 ;
- +24 SET YSSKIPPED=0
- +25 SET YSSCALE=0
- +26 FOR
- SET YSSCALE=$ORDER(YSSCORES(YSSCALE))
- if YSSCALE=""
- QUIT
- Begin DoDot:1
- +27 IF $GET(YSSCORES(YSSCALE))=""
- SET YSSKIPPED=1
- End DoDot:1
- +28 ;
- +29 IF YSSKIPPED
- Begin DoDot:1
- +30 SET YSRETURN="|No scores due to skipped items."
- End DoDot:1
- QUIT YSRETURN
- +31 ;
- +32 SET YSX=""
- +33 SET YSX=YSX_"| Negative Emotion Total: "_$JUSTIFY(YSSCORES(YSEMOTION),3)_" (Max=30)"
- +34 SET YSX=YSX_"| Physical Functioning Total: "_$JUSTIFY(YSSCORES(YSPHYSICAL),3)_" (Max=50)"
- +35 SET YSX=YSX_"| Bulbar Function Total: "_$JUSTIFY(YSSCORES(YSBULBAR),3)_" (Max=20)"
- +36 SET YSX=YSX_"| Interaction with people and the Environment Total: "_$JUSTIFY(YSSCORES(YSINTERACTION),3)_" (Max=40)"
- +37 SET YSX=YSX_"| Religiosity Total: "_$JUSTIFY(YSSCORES(YSRELIGION),3)_" (Max=20)"
- +38 SET YSX=YSX_"| Intimacy Total: "_$JUSTIFY(YSSCORES(YSINTIMACY),3)_" (Max=40)"
- +39 SET YSX=YSX_"| TOTAL SCORE: "_$JUSTIFY(YSSCORES(YSTOTAL),3)_" (Max=200)"
- +40 SET YSX=YSX_"|"
- +41 SET YSX=YSX_"| Negative Emotion Average: "_$JUSTIFY(YSSCORES(YSEMOTIONAVG),0,2)
- +42 SET YSX=YSX_"| Physical Functioning Average: "_$JUSTIFY(YSSCORES(YSPHYSICALAVG),0,2)
- +43 SET YSX=YSX_"| Bulbar Function Average: "_$JUSTIFY(YSSCORES(YSBULBARAVG),0,2)
- +44 SET YSX=YSX_"| Interaction with people and the Environment Average: "_$JUSTIFY(YSSCORES(YSINTERACTIONAVG),0,2)
- +45 SET YSX=YSX_"| Religiosity Average: "_$JUSTIFY(YSSCORES(YSRELIGIONAVG),0,2)
- +46 SET YSX=YSX_"| Intimacy Average: "_$JUSTIFY(YSSCORES(YSINTIMACYAVG),0,2)
- +47 SET YSX=YSX_"| AVERAGE TOTAL SCORE: "_$JUSTIFY(YSSCORES(YSTOTALAVG),0,2)
- +48 SET YSX=YSX_"|"
- +49 SET YSX=YSX_"|Averages are reported as a value between 0 (worse) and 10 (best)."
- +50 SET YSRETURN=YSX
- +51 ;
- +52 QUIT YSRETURN