| 1 | EASECSCR ;ALB/LBD - LTC Co-Pay Test Screen Read Processor;10 AUG 2001 | 
|---|
| 2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;**5,40**;Mar 15, 2001 | 
|---|
| 3 | ; | 
|---|
| 4 | ;NOTE: This routine was modified from DGMTSCR for LTC Co-pay | 
|---|
| 5 | ; Input  -- DGRNG    Range of selectable items | 
|---|
| 6 | ;           DGMTACT  Means Test Action | 
|---|
| 7 | ;           DGMTSC   Screen Driver Array | 
|---|
| 8 | ;           DGMTSCI  Screen number | 
|---|
| 9 | ;           DGVINI   Veteran Individual Annual Income IEN | 
|---|
| 10 | ;           DGVIRI   Veteran Income Relation IEN | 
|---|
| 11 | ; Output -- DGDR     Template tags  (ie, 101,102,103,104) | 
|---|
| 12 | ;           DGX      User input - maybe modified (ie, 1-4) | 
|---|
| 13 | ;           DGY      Items selected in expanded form  (ie, 1,2,3,4) | 
|---|
| 14 | ;    Returned for screen 2 and 4: | 
|---|
| 15 | ;           DGSEL    Column selections available  (ie, V, S, C) | 
|---|
| 16 | ;           DGSELTY  User input - column selected  (ie, V or S or C) | 
|---|
| 17 | ; | 
|---|
| 18 | EN K DGDR,DGSEL,DGSELTY,DGX,DGY,I D FEED | 
|---|
| 19 | I $G(DGSCR1) S X="" G EN1 | 
|---|
| 20 | W !,DGVI,"<RET>",DGVO," to CONTINUE," W:DGMTACT'="VEW" " ",DGVI,DGRNG,DGVO," or ",DGVI,"'ALL' ",DGVO,"to EDIT," W DGVI," ^N",DGVO," for screen N, or ",DGVI,"'^'",DGVO," to EXIT: " R X:DTIME S:'$T X="^" | 
|---|
| 21 | EN1 K DGSCR1 S DGX=$$UPPER^DGUTL(X) | 
|---|
| 22 | I DGX="^" G Q^EASECSC | 
|---|
| 23 | I DGX?1"^".N,$D(DGMTSC(+$P(DGX,"^",2))) G @($$ROU^EASECSCU(+$P(DGX,"^",2))) | 
|---|
| 24 | ; Modified next line to allow entry of assets for spouse (only for new | 
|---|
| 25 | ; 10-10EC form).  Added for LTC Phase IV (EAS*1*40) | 
|---|
| 26 | I DGMTACT'="VEW",(DGMTSCI=5!($G(DGFORM)&(DGMTSCI=4))) D SEL I DGSEL[$E(DGX),$E(DGX,2)?1N S DGSELTY=$E(DGX),DGX=$P(DGX,DGSELTY,2) | 
|---|
| 27 | I DGMTACT'="VEW",$E(DGX)="A" S X=DGX,Z="^ALL" D IN^DGHELP S:%'=-1 DGX=DGRNG | 
|---|
| 28 | I DGX["?" D HLP G Q^EASECSC:$D(DTOUT)!($D(DUOUT)),@($$ROU^EASECSCU(DGMTSCI)) | 
|---|
| 29 | I DGX="",$O(DGMTSC(DGMTSCI)) G @($$ROU^EASECSCU($O(DGMTSC(DGMTSCI)))) | 
|---|
| 30 | I DGX="" G Q^EASECSC | 
|---|
| 31 | I DGMTACT'="VEW" D PRO I $D(DGSELTY) S DGX=DGSELTY_DGX | 
|---|
| 32 | S:DGMTACT="VEW" DGERR=1 I DGERR D HLP G @($$ROU^EASECSCU(DGMTSCI)) | 
|---|
| 33 | Q G @($$ROURET^EASECSCU(DGMTSCI)) | 
|---|
| 34 | ; | 
|---|
| 35 | FEED ;Line feed to the bottom of the screen | 
|---|
| 36 | N DGB,I | 
|---|
| 37 | S DGB=$S('IOSL:24,1:IOSL)-5 F I=$Y:1:DGB W ! | 
|---|
| 38 | Q | 
|---|
| 39 | ; | 
|---|
| 40 | SEL ;Check available column selections for Veteran, Spouse or Children | 
|---|
| 41 | N DGDC,DGNC,DGND,DGSP,DGVIR0,DGX | 
|---|
| 42 | D DEP^EASECSU3 | 
|---|
| 43 | S DGSEL="V"_$S(DGSP:"S",1:"") | 
|---|
| 44 | SELQ Q | 
|---|
| 45 | ; | 
|---|
| 46 | HLP ;Help display | 
|---|
| 47 | N DGIOM,DGLNE,DGMTSCR,DIR,I,X | 
|---|
| 48 | S DGHLPF=1 D HD^EASECSCU | 
|---|
| 49 | W !!,"Enter <RET> to continue to the next available screen." | 
|---|
| 50 | I DGMTACT'="VEW" W !,"Enter an available item number from ",DGRNG," to edit.",!,"The items should be separated by commas or a range of numbers",!,"separated by a dash, or a combination of commas and dashes." | 
|---|
| 51 | ;Modified next line to add screen 4 for LTC Phase IV (EAS*1*40) | 
|---|
| 52 | I DGMTACT'="VEW","^4^5^"[(U_DGMTSCI_U),$D(DGSEL) W !,"To edit a specific column, enter 'V'",$S(DGSEL["S":", 'S'",1:"")," in front of the selected items." | 
|---|
| 53 | I DGMTACT'="VEW" W !,"Enter 'ALL' to edit all available items on the screen." | 
|---|
| 54 | W !,"Enter '^N' to jump to a select screen.  Enter '^' to exit." | 
|---|
| 55 | W !!,"AVAILABLE SCREENS" | 
|---|
| 56 | S I=0 F  S I=$O(DGMTSC(I)) Q:'I  W !,"[",+$$SCR^EASECSCU(I),"]  ",$P($$SCR^EASECSCU(I),";",2) | 
|---|
| 57 | S DGLNE="",DGIOM=$S('IOM:80,1:IOM),$P(DGLNE,"=",(DGIOM-1))="" | 
|---|
| 58 | W !,DGLNE S DIR(0)="E" D ^DIR | 
|---|
| 59 | Q | 
|---|
| 60 | ; | 
|---|
| 61 | PRO ;Process user selection; cnt - dash - parse - selection | 
|---|
| 62 | N DGC,DGD,DGP,DGS | 
|---|
| 63 | S DGC=0,DGERR=0,DGY="",DGDR="" | 
|---|
| 64 | PARSE S DGC=DGC+1,DGP=$P(DGX,",",DGC) G PROQ:DGP="" | 
|---|
| 65 | I DGP?.N1"-".N S DGD="" F DGS=$P(DGP,"-"):1:$P(DGP,"-",2) D CHK Q:DGERR | 
|---|
| 66 | I '$D(DGD) S DGS=DGP D CHK | 
|---|
| 67 | K DGD G PROQ:DGERR,PARSE | 
|---|
| 68 | PROQ Q | 
|---|
| 69 | ; | 
|---|
| 70 | CHK I $D(DGD),+$P(DGP,"-",2)<+$P(DGP,"-",1) S DGERR=1 | 
|---|
| 71 | I 'DGERR,DGS'?.N S DGERR=1 | 
|---|
| 72 | I 'DGERR&(DGS>$P(DGRNG,"-",2)!(DGS<$P(DGRNG,"-"))) S DGERR=1 | 
|---|
| 73 | I 'DGERR S DGY=DGY_$S($L(DGY):",",1:"")_DGS,DGDR=DGDR_$S($L(DGDR):",",1:"")_(DGS+100) | 
|---|
| 74 | Q | 
|---|