YTSSODU ;BAL/KTL - Score SODU ; 10/07/23 2:02pm
Source file <YTSSODU.m>
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| 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 score
; expects YSDATA from DLLSTR |
|
| REPORT(SCORES) | ; build the scoring display for the report
; expects ^TMP($J,"YSCOR",...) and ^TMP($J,"YSG") from DLLSTR ; YSDATA from DLLSTR |
|
| VERIFY(ARGS,RESULTS) | ; Add inconsistency messages based on set of answers in ARGS
|
|
| LT(ID1,ID2) | ; returns 1 if ID1 is less than ID2
; expects ARGS from VERIFY |
|
| MSG(REL,Q1,Q2) | ; Add text of message to RESULTS
; expects MSGCNT, RESULTS from VERIFY |
| Name | Line Occurrences |
|---|---|
| $$LT | VERIFY+2 |
| MSG | VERIFY+2 |
| REPORT | DLLSTR+13 |
| SCORESV | DLLSTR+9 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| ARGS | VERIFY~ |
| ARGS( | LT+3, LT+4 |
| I | REPORT+3~, REPORT+5*, REPORT+6 |
| ID1 | LT~, LT+3 |
| ID2 | LT~, LT+4 |
| LEVEL | DLLSTR+11~ |
| MSGCNT | VERIFY+1~*, VERIFY+3, MSG+6* |
| N | DLLSTR+11~, DLLSTR+14*, DLLSTR+15 |
| Q1 | MSG~, MSG+3 |
| Q2 | MSG~, MSG+5 |
| REL | MSG~, MSG+4 |
| RESULTS | VERIFY~ |
| RESULTS("count" | VERIFY+3* |
| RESULTS("messages" | MSG+6* |
| SCORE | SCORESV+2~, SCORESV+13*, SCORESV+18 |
| SCORES | REPORT~, REPORT+4*, REPORT+7*, REPORT+8* |
| SCOREVAL | DLLSTR+11~, DLLSTR+13, DLLSTR+15 |
| U | SCORESV+5, SCORESV+6, SCORESV+18 |
| VAL1 | LT+2~, LT+3*, LT+5 |
| VAL2 | LT+2~, LT+4*, LT+5 |
| VALUE | REPORT+3~, REPORT+6*, REPORT+7 |
| X | MSG+2~, MSG+3*, MSG+4*, MSG+5*, MSG+6 |
| YS | DLLSTR~, DLLSTR+12 |
| YSDATA | DLLSTR~, DLLSTR+12 |
| YSDATA( | DLLSTR+15*, SCORESV+4, SCORESV+5, SCORESV+6 |
| YSDATA("" | DLLSTR+14 |
| YSTRNG | DLLSTR~, DLLSTR+9, DLLSTR+10 |
| YTCHC | SCORESV+2~, SCORESV+6*, SCORESV+7, SCORESV+8, SCORESV+9 |
| YTI | SCORESV+2~, SCORESV+4*, SCORESV+5, SCORESV+6 |
| YTQUES | SCORESV+2~, SCORESV+5*, SCORESV+8, SCORESV+9 |
| YTRES | SCORESV+2~, SCORESV+3*, SCORESV+8*, SCORESV+9*, SCORESV+13 |