[613] | 1 | DDGF0 ;SFISC/MKO-SETUP, CLEANUP ;09:58 AM 9 Sep 1994
|
---|
| 2 | ;;22.0;VA FileMan;;Mar 30, 1999
|
---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;
|
---|
| 5 | D INIT^DDGLIB0() Q:$G(DIERR)
|
---|
| 6 | D SET,GETKEY
|
---|
| 7 | Q
|
---|
| 8 | ;
|
---|
| 9 | SET ;Setup variables
|
---|
| 10 | D:$D(DT)[0 DT^DICRW
|
---|
| 11 | S (DIOVRD,DDGFR)=1,DDGFREF="^TMP(""DDGF"",$J)",DDGFCHG=0
|
---|
| 12 | K @DDGFREF,DDGFFM
|
---|
| 13 | Q
|
---|
| 14 | ;
|
---|
| 15 | END ;Clear screen, clean up variables
|
---|
| 16 | I $D(DDGFFM)#2 D RECOMP
|
---|
| 17 | KILL ;
|
---|
| 18 | D:$G(DIERR) MSG^DIALOG("BW")
|
---|
| 19 | X:$D(DDGLZOSF) DDGLZOSF("EON"),DDGLZOSF("TRMOFF")
|
---|
| 20 | D KILL^DDGLIB0()
|
---|
| 21 | K:$D(DDGFREF) @DDGFREF,DDGFREF
|
---|
| 22 | K ^TMP("DDGFH",$J)
|
---|
| 23 | K DDGF,DDGFBV,DDGFCHG,DDGFE,DDGFFILE,DDGFFM,DDGFLIM,DDGFMSG
|
---|
| 24 | K DDGFPG,DDGFR,DDGFWID,DDGFWIDB
|
---|
| 25 | K DDH
|
---|
| 26 | Q
|
---|
| 27 | ;
|
---|
| 28 | RECOMP ;Recompile form
|
---|
| 29 | N DDGFLIST
|
---|
| 30 | S DDGFLIST=$NA(^TMP("DDGFOF",$J))
|
---|
| 31 | D MSG^DDGF("Recompiling ...")
|
---|
| 32 | ;
|
---|
| 33 | D GETBLKS(+DDGFFM,DDGFLIST)
|
---|
| 34 | S DDSQUIET=1 D EN^DDSZ(DDGFFM) K DDSQUIET
|
---|
| 35 | I $D(@DDGFLIST) D
|
---|
| 36 | . N DDGFI
|
---|
| 37 | . S DDGFI=""
|
---|
| 38 | . F S DDGFI=$O(@DDGFLIST@(DDGFI)) Q:'DDGFI D EN^DDSZ(DDGFI)
|
---|
| 39 | . K @DDGFLIST
|
---|
| 40 | ;
|
---|
| 41 | D MSG^DDGF("")
|
---|
| 42 | S DX=0,DY=IOSL-1 X IOXY
|
---|
| 43 | Q
|
---|
| 44 | ;
|
---|
| 45 | GETBLKS(F,L) ;
|
---|
| 46 | ;Determine if any of the blocks loaded are
|
---|
| 47 | ;used on other forms.
|
---|
| 48 | ; L(Form#)="" Other forms that need recompiling
|
---|
| 49 | ;
|
---|
| 50 | N P,B
|
---|
| 51 | S P=0 F S P=$O(@DDGFREF@("F",P)) Q:'P D
|
---|
| 52 | . S B=0
|
---|
| 53 | . F S B=$O(@DDGFREF@("F",P,B)) Q:'B D:'$D(@L@("B",B))
|
---|
| 54 | .. S @L@("B",B)=""
|
---|
| 55 | .. D OTHER(B,F,L)
|
---|
| 56 | K @L@("B")
|
---|
| 57 | Q
|
---|
| 58 | ;
|
---|
| 59 | OTHER(B,F,L) ;
|
---|
| 60 | ;Return list L of forms other than F that use block B
|
---|
| 61 | ; L(Form#)=""
|
---|
| 62 | N F1
|
---|
| 63 | S F1=""
|
---|
| 64 | F S F1=$O(^DIST(.403,"AB",B,F1)) Q:F1="" I F1'=F S @L@(F1)=""
|
---|
| 65 | S F1="" F S F1=$O(^DIST(.403,"AC",B,F1)) Q:F1="" I F1'=F S @L@(F1)=""
|
---|
| 66 | Q
|
---|
| 67 | ;
|
---|
| 68 | GETKEY ;Get key sequences and defaults
|
---|
| 69 | N AU,AD,AR,AL,F1,F2,F3,F4,I,K,N,T
|
---|
| 70 | S AU=$P(DDGLKEY,U,2)
|
---|
| 71 | S AD=$P(DDGLKEY,U,3)
|
---|
| 72 | S AR=$P(DDGLKEY,U,4)
|
---|
| 73 | S AL=$P(DDGLKEY,U,5)
|
---|
| 74 | S F1=$P(DDGLKEY,U,6)
|
---|
| 75 | S F2=$P(DDGLKEY,U,7)
|
---|
| 76 | S F3=$P(DDGLKEY,U,8)
|
---|
| 77 | S F4=$P(DDGLKEY,U,9)
|
---|
| 78 | ;
|
---|
| 79 | F N="","S","D" D
|
---|
| 80 | . S DDGF(N_"IN")="",DDGF(N_"OUT")=""
|
---|
| 81 | . F I=1:1 S T=$P($T(@(N_"MAP")+I),";;",2,999) Q:T="" D
|
---|
| 82 | .. S @("K="_$P(T,";",2))
|
---|
| 83 | .. I DDGF(N_"IN")'[(U_K) D
|
---|
| 84 | ... S DDGF(N_"IN")=DDGF(N_"IN")_U_K
|
---|
| 85 | ... S DDGF(N_"OUT")=DDGF(N_"OUT")_$P(T,";")_U
|
---|
| 86 | . S DDGF(N_"IN")=DDGF(N_"IN")_U
|
---|
| 87 | . S DDGF(N_"OUT")=$E(DDGF(N_"OUT"),1,$L(DDGF(N_"OUT"))-1)
|
---|
| 88 | Q
|
---|
| 89 | ;
|
---|
| 90 | MAP ;Keys for main screen
|
---|
| 91 | ;;LNU;AU; line up
|
---|
| 92 | ;;LND;AD; line down
|
---|
| 93 | ;;CHR;AR; char right
|
---|
| 94 | ;;CHL;AL; char left
|
---|
| 95 | ;;ELR;$C(9); element right
|
---|
| 96 | ;;ELL;"Q"; element left
|
---|
| 97 | ;;TBR;"S"; tab right
|
---|
| 98 | ;;TBL;"A"; tab left
|
---|
| 99 | ;;EXIT;F1_"E"; exit
|
---|
| 100 | ;;QUIT;F1_"Q"; quit
|
---|
| 101 | ;;ROWCOL;"R"; row/col indicator toggle
|
---|
| 102 | ;;SCT;F1_AU; top of screen
|
---|
| 103 | ;;SCB;F1_AD; bottom of screen
|
---|
| 104 | ;;SCR;F1_AR; right edge of screen
|
---|
| 105 | ;;SCL;F1_AL; left edge of screen
|
---|
| 106 | ;;SAVE;F1_"S"; save changes
|
---|
| 107 | ;;SELECT;" "; select an element
|
---|
| 108 | ;;SELECT;$C(13); select an element
|
---|
| 109 | ;;SELFILE;F1_1; select file
|
---|
| 110 | ;;VIEW;F1_"V"; view toggle
|
---|
| 111 | ;;EDIT;F3; edit caption or data length
|
---|
| 112 | ;;FLDADD;F2_"F"; add a new field
|
---|
| 113 | ;;BKADD;F2_"B"; add a new block
|
---|
| 114 | ;;NXTPG;F1_F1_AD; go to next page
|
---|
| 115 | ;;PRVPG;F1_F1_AU; go to previous page
|
---|
| 116 | ;;CLSPG;F1_"C"; close popup page
|
---|
| 117 | ;;PGSEL;F1_"P"; select another page
|
---|
| 118 | ;;PGADD;F2_"P"; add a new page
|
---|
| 119 | ;;PGEDIT;F4_"P"; edit page attributes
|
---|
| 120 | ;;FMSEL;F1_"M"; select another form
|
---|
| 121 | ;;FMADD;F2_"M"; add a new form
|
---|
| 122 | ;;FMEDIT;F4_"M"; edit form attributes
|
---|
| 123 | ;;HELP;F1_"H"
|
---|
| 124 | ;;
|
---|
| 125 | SMAP ;Keys for moving selected gadgets
|
---|
| 126 | ;;LNU;AU; line up
|
---|
| 127 | ;;LND;AD; line down
|
---|
| 128 | ;;CHR;AR; char right
|
---|
| 129 | ;;CHL;AL; char left
|
---|
| 130 | ;;TBR;$C(9); tab right
|
---|
| 131 | ;;TBR;"S"; " "
|
---|
| 132 | ;;TBL;"Q"; tab left
|
---|
| 133 | ;;TBL;"A"; " "
|
---|
| 134 | ;;ROWCOL;"R"; row/col indicator toggle
|
---|
| 135 | ;;SCT;F1_AU; top of screen
|
---|
| 136 | ;;SCB;F1_AD; bottom of screen
|
---|
| 137 | ;;SCR;F1_AR; right edge of screen
|
---|
| 138 | ;;SCL;F1_AL; left edge of screen
|
---|
| 139 | ;;SUBPG;F1_"D"; go into a multiples pop-up page
|
---|
| 140 | ;;DESELECT;" "; deselect an element
|
---|
| 141 | ;;DESELECT;$C(13); deselect an element
|
---|
| 142 | ;;EDIT;F4; edit properties
|
---|
| 143 | ;;REORDER;F1_"O" ; reorder fields in block
|
---|
| 144 | ;;
|
---|
| 145 | DMAP ;Keys for changing data length
|
---|
| 146 | ;;CHR;AR; char right
|
---|
| 147 | ;;CHL;AL; char left
|
---|
| 148 | ;;DONE;$C(13); done
|
---|
| 149 | ;;DONE;" "; done
|
---|
| 150 | ;;DONE;F3; done
|
---|
| 151 | ;;
|
---|