YTSNPIQ ;SLC/KCM - Reporting logic for NPI-Q ; 3/25/22 2:02pm
Source file <YTSNPIQ.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 |
|
| REPORT(SUMMARY,SCORES) | ; build .SCORE string
; expects YSDATA for answers |
|
| MKLN(SYM,PRES,SEV,DIS) | ; return a summary line
|
|
| BLDQSTN(QSTN) | ; build list of questions and response values in .QSTN
; expects YSDATA,YSTRNG from DLLSTR |
|
| BLDSCR(SCORES) | ; build array of .SCORES
; expects ^TMP($J,"YSCOR") from DLLSTR |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^TMP($J | BLDSCR+6, BLDSCR+7, BLDSCR+8 |
| Name | Line Occurrences |
|---|---|
| $$MKLN | REPORT+5, REPORT+6, REPORT+8, REPORT+9, REPORT+10, REPORT+11, REPORT+12, REPORT+13, REPORT+14, REPORT+15 , REPORT+16, REPORT+17, REPORT+18, REPORT+19, REPORT+21 |
| BLDQSTN | REPORT+3 |
| BLDSCR | DLLSTR+13 |
| REPORT | DLLSTR+14 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| CID | BLDQSTN+2~, BLDQSTN+4*, BLDQSTN+7, BLDQSTN+8, BLDQSTN+9, BLDQSTN+12, BLDQSTN+13, BLDQSTN+14, BLDQSTN+15, BLDQSTN+16 , BLDQSTN+17, BLDQSTN+18, BLDQSTN+19, BLDQSTN+20, BLDQSTN+21 |
| DIS | MKLN~, MKLN+3*, MKLN+7 |
| I | BLDQSTN+2~, BLDQSTN+3*, BLDQSTN+4, BLDSCR+2~, BLDSCR+6*, BLDSCR+7, BLDSCR+8 |
| LN | DLLSTR+11~, DLLSTR+15*, DLLSTR+16, MKLN+1~, MKLN+2*, MKLN+4*, MKLN+5*, MKLN+6*, MKLN+7*, MKLN+8 |
| NAME | BLDSCR+2~, BLDSCR+7*, BLDSCR+9, BLDSCR+10, BLDSCR+11 |
| PRES | MKLN~, MKLN+3, MKLN+5 |
| QID | BLDQSTN+2~, BLDQSTN+4*, BLDQSTN+6, BLDQSTN+22 |
| QSTN | REPORT+2~, REPORT+3, BLDQSTN~ |
| QSTN( | BLDQSTN+22* |
| QSTN(9176 | REPORT+8 |
| QSTN(9177 | REPORT+8 |
| QSTN(9178 | REPORT+8 |
| QSTN(9179 | REPORT+9 |
| QSTN(9180 | REPORT+9 |
| QSTN(9181 | REPORT+9 |
| QSTN(9182 | REPORT+10 |
| QSTN(9183 | REPORT+10 |
| QSTN(9184 | REPORT+10 |
| QSTN(9185 | REPORT+11 |
| QSTN(9186 | REPORT+11 |
| QSTN(9187 | REPORT+11 |
| QSTN(9188 | REPORT+12 |
| QSTN(9189 | REPORT+12 |
| QSTN(9190 | REPORT+12 |
| QSTN(9191 | REPORT+13 |
| QSTN(9192 | REPORT+13 |
| QSTN(9193 | REPORT+13 |
| QSTN(9194 | REPORT+14 |
| QSTN(9195 | REPORT+14 |
| QSTN(9196 | REPORT+14 |
| QSTN(9197 | REPORT+15 |
| QSTN(9198 | REPORT+15 |
| QSTN(9199 | REPORT+15 |
| QSTN(9200 | REPORT+16 |
| QSTN(9201 | REPORT+16 |
| QSTN(9202 | REPORT+16 |
| QSTN(9203 | REPORT+17 |
| QSTN(9204 | REPORT+17 |
| QSTN(9205 | REPORT+17 |
| QSTN(9206 | REPORT+18 |
| QSTN(9207 | REPORT+18 |
| QSTN(9208 | REPORT+18 |
| QSTN(9209 | REPORT+19 |
| QSTN(9210 | REPORT+19 |
| QSTN(9211 | REPORT+19 |
| SCORES | DLLSTR+11~, DLLSTR+13, DLLSTR+14, REPORT~, BLDSCR~ |
| SCORES("Distress" | REPORT+21, BLDSCR+5*, BLDSCR+11* |
| SCORES("Severity" | REPORT+21, BLDSCR+4*, BLDSCR+10* |
| SCORES("Symptoms" | REPORT+21, BLDSCR+3*, BLDSCR+9* |
| SEV | MKLN~, MKLN+3*, MKLN+6 |
| SPACES | MKLN+1~, MKLN+2*, MKLN+4, MKLN+5, MKLN+6 |
| SUMMARY | DLLSTR+11~, DLLSTR+14, DLLSTR+16, REPORT~, REPORT+22* |
| SYM | MKLN~, MKLN+4 |
| U | BLDQSTN+4 |
| VAL | BLDQSTN+2~, BLDQSTN+4*, BLDQSTN+7*, BLDQSTN+8*, BLDQSTN+9*, BLDQSTN+12*, BLDQSTN+13*, BLDQSTN+14*, BLDQSTN+15*, BLDQSTN+16* , BLDQSTN+17*, BLDQSTN+18*, BLDQSTN+19*, BLDQSTN+20*, BLDQSTN+21*, BLDQSTN+22 |
| VALUE | BLDSCR+2~, BLDSCR+8*, BLDSCR+9, BLDSCR+10, BLDSCR+11 |
| X | REPORT+2~, REPORT+4*, REPORT+5*, REPORT+6*, REPORT+7*, REPORT+8*, REPORT+9*, REPORT+10*, REPORT+11*, REPORT+12* , REPORT+13*, REPORT+14*, REPORT+15*, REPORT+16*, REPORT+17*, REPORT+18*, REPORT+19*, REPORT+20*, REPORT+21*, REPORT+22 |
| YS | DLLSTR~, DLLSTR+12 |
| YSDATA | DLLSTR~, DLLSTR+9, DLLSTR+12 |
| YSDATA( | DLLSTR+16*, BLDQSTN+3, BLDQSTN+4 |
| YSDATA("" | DLLSTR+15 |
| YSTRNG | DLLSTR~, DLLSTR+9, DLLSTR+10 |