[613] | 1 | DGMTSCR ;ALB/RMO/CAW - Means Test Screen Read Processor;30 JAN 1992 2:00 pm [ 10/02/92 9:47 AM ]
|
---|
| 2 | ;;5.3;Registration;**45**;Aug 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | ; Input -- DGRNG Range of selectable items
|
---|
| 5 | ; DGMTACT Means Test Action
|
---|
| 6 | ; DGMTSC Screen Driver Array
|
---|
| 7 | ; DGMTSCI Screen number
|
---|
| 8 | ; DGVINI Veteran Individual Annual Income IEN
|
---|
| 9 | ; DGVPRI Veteran Income Relation IEN
|
---|
| 10 | ; Output -- DGDR Template tags (ie, 101,102,103,104)
|
---|
| 11 | ; DGX User input - maybe modified (ie, 1-4)
|
---|
| 12 | ; DGY Items selected in expanded form (ie, 1,2,3,4)
|
---|
| 13 | ; Returned for screen 2 and 4:
|
---|
| 14 | ; DGSEL Column selections available (ie, V, S, C)
|
---|
| 15 | ; DGSELTY User input - column selected (ie, V or S or C)
|
---|
| 16 | ;
|
---|
| 17 | EN K DGDR,DGSEL,DGSELTY,DGX,DGY,I D FEED
|
---|
| 18 | I $G(DGSCR1) S X="" G EN1
|
---|
| 19 | 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="^"
|
---|
| 20 | EN1 K DGSCR1 S DGX=$$UPPER^DGUTL(X)
|
---|
| 21 | I DGX="^" G Q^DGMTSC
|
---|
| 22 | I DGX?1"^".N,$D(DGMTSC(+$P(DGX,"^",2))) G @($$ROU^DGMTSCU(+$P(DGX,"^",2)))
|
---|
| 23 | I DGMTACT'="VEW","^2^4^"[("^"_DGMTSCI_"^") D SEL I DGSEL[$E(DGX),$E(DGX,2)?1N S DGSELTY=$E(DGX),DGX=$P(DGX,DGSELTY,2)
|
---|
| 24 | I DGMTACT'="VEW",$E(DGX)="A" S X=DGX,Z="^ALL" D IN^DGHELP S:%'=-1 DGX=DGRNG
|
---|
| 25 | I DGX["?" D HLP G Q^DGMTSC:$D(DTOUT)!($D(DUOUT)),@($$ROU^DGMTSCU(DGMTSCI))
|
---|
| 26 | I DGX="",$O(DGMTSC(DGMTSCI)) G @($$ROU^DGMTSCU($O(DGMTSC(DGMTSCI))))
|
---|
| 27 | I DGX="" G Q^DGMTSC
|
---|
| 28 | I DGMTACT'="VEW" D PRO I $D(DGSELTY) S DGX=DGSELTY_DGX
|
---|
| 29 | S:DGMTACT="VEW" DGERR=1 I DGERR D HLP G @($$ROU^DGMTSCU(DGMTSCI))
|
---|
| 30 | Q G @($$ROURET^DGMTSCU(DGMTSCI))
|
---|
| 31 | ;
|
---|
| 32 | FEED ;Line feed to the bottom of the screen
|
---|
| 33 | N DGB,I
|
---|
| 34 | S DGB=$S('IOSL:24,1:IOSL)-5 F I=$Y:1:DGB W !
|
---|
| 35 | Q
|
---|
| 36 | ;
|
---|
| 37 | SEL ;Check available column selections for Veteran, Spouse or Children
|
---|
| 38 | N DGDC,DGNC,DGND,DGSP,DGVIR0,DGX
|
---|
| 39 | D DEP^DGMTSCU2
|
---|
| 40 | S DGSEL="V"_$S(DGSP:"S",1:"")_$S(DGDC&(DGMTSCI'=4):"C",1:"")
|
---|
| 41 | SELQ Q
|
---|
| 42 | ;
|
---|
| 43 | HLP ;Help display
|
---|
| 44 | N DGIOM,DGLNE,DGMTSCR,DIR,I,X
|
---|
| 45 | S DGHLPF=1 D HD^DGMTSCU
|
---|
| 46 | W !!,"Enter <RET> to continue to the next available screen."
|
---|
| 47 | 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."
|
---|
| 48 | I DGMTACT'="VEW"&(DGMTSCI=2!(DGMTSCI=4))&($D(DGSEL)) W !,"To edit a specific column, enter 'V'",$S(DGSEL["S":", 'S'",1:""),$S(DGSEL["C":", 'C'",1:"")," in front of the selected items."
|
---|
| 49 | I DGMTACT'="VEW" W !,"Enter 'ALL' to edit all available items on the screen."
|
---|
| 50 | W !,"Enter '^N' to jump to a select screen. Enter '^' to exit."
|
---|
| 51 | W !!,"AVAILABLE SCREENS"
|
---|
| 52 | S I=0 F S I=$O(DGMTSC(I)) Q:'I W !,"[",+$$SCR^DGMTSCU(I),"] ",$P($$SCR^DGMTSCU(I),";",2)
|
---|
| 53 | S DGLNE="",DGIOM=$S('IOM:80,1:IOM),$P(DGLNE,"=",(DGIOM-1))=""
|
---|
| 54 | W !,DGLNE S DIR(0)="E" D ^DIR
|
---|
| 55 | Q
|
---|
| 56 | ;
|
---|
| 57 | PRO ;Process user selection; cnt - dash - parse - selection
|
---|
| 58 | N DGC,DGD,DGP,DGS
|
---|
| 59 | S DGC=0,DGERR=0,DGY="",DGDR=""
|
---|
| 60 | PARSE S DGC=DGC+1,DGP=$P(DGX,",",DGC) G PROQ:DGP=""
|
---|
| 61 | I DGP?.N1"-".N S DGD="" F DGS=$P(DGP,"-"):1:$P(DGP,"-",2) D CHK Q:DGERR
|
---|
| 62 | I '$D(DGD) S DGS=DGP D CHK
|
---|
| 63 | K DGD G PROQ:DGERR,PARSE
|
---|
| 64 | PROQ Q
|
---|
| 65 | ;
|
---|
| 66 | CHK I $D(DGD),+$P(DGP,"-",2)<+$P(DGP,"-",1) S DGERR=1
|
---|
| 67 | I 'DGERR,DGS'?.N S DGERR=1
|
---|
| 68 | I 'DGERR&(DGS>$P(DGRNG,"-",2)!(DGS<$P(DGRNG,"-"))) S DGERR=1
|
---|
| 69 | I 'DGERR S DGY=DGY_$S($L(DGY):",",1:"")_DGS,DGDR=DGDR_$S($L(DGDR):",",1:"")_(DGS+100)
|
---|
| 70 | Q
|
---|