YTSPROM2 ;SLC/KCM - Score PROMIS29 v2.1 ; 10/14/18 2:02pm
Source file <YTSPROM2.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| 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  | 
|
| SCORESV | ; calculate the raw scores and map to T-Scores
 ; expects YSDATA from DLLSTR  | 
|
| MAPQSTN(YSDATA,YTRESP) | ; loop YSDATA and map questions to choice values
 | 
|
| REPORT(TXT) | ; build the scoring display for the report
 ; expects ^TMP($J,"YSCOR",...) and ^TMP($J,"YSG") from DLLSTR ; YSDATA from DLLSTR ; organize the scores into SCORES(scaleId)=raw^tscore  | 
|
| PRO29(SCORES) | ; return text for PROMIS29
 | 
|
| PROPR(SCORES) | ; return text for PROMIS29+2 (PROPr)
 | 
|
| SCORSTR(SID,SCORE) | ; return score string given scale identifier
 | 
|
| PAIN() | ; return pain intensity selection
 | 
|
| MKTLST(SCORES,TSCORES) | ; build a named list of t-scores for PROPr
 | 
|
| TBLVAL(RAW,COLUMN) | ; return table value given RAW score and COLUMN
 | 
|
| TMAP | ; Map of raw scores to t-scores
 |