source: FOIAVistA/trunk/r/VA_FILEMAN-ARJT-DI-DD-DM-DT-%DT-%RCR/DDGF0.m@ 1499

Last change on this file since 1499 was 628, checked in by George Lilly, 15 years ago

initial load of FOIAVistA 6/30/08 version

File size: 4.1 KB
Line 
1DDGF0 ;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 ;
9SET ;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 ;
15END ;Clear screen, clean up variables
16 I $D(DDGFFM)#2 D RECOMP
17KILL ;
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 ;
28RECOMP ;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 ;
45GETBLKS(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 ;
59OTHER(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 ;
68GETKEY ;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 ;
90MAP ;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 ;;
125SMAP ;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 ;;
145DMAP ;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 ;;
Note: See TracBrowser for help on using the repository browser.