1
|
DEF TEMP-TABLE tt FIELD f1 AS INTEGER FORMAT "+99"
|
2
|
FIELD f2 AS integer
|
3
|
FIELD f3 AS CHARACTER
|
4
|
FIELD f4 AS CHARACTER
|
5
|
FIELD f5 AS CHARACTER
|
6
|
INDEX idx f1.
|
7
|
|
8
|
def var i as INTEGER.
|
9
|
|
10
|
CREATE tt. tt.f1 = 1. tt.f3 = "ac". tt.f4 = "that".
|
11
|
CREATE tt. tt.f1 = 2. tt.f3 = "ab". tt.f4 = "is".
|
12
|
CREATE tt. tt.f1 = 3. tt.f3 = "aa". tt.f4 = "a".
|
13
|
CREATE tt. tt.f1 = 4. tt.f3 = "ba". tt.f4 = "phrase".
|
14
|
CREATE tt. tt.f1 = 5. tt.f3 = "ba".
|
15
|
CREATE tt. tt.f1 = 6. tt.f3 = "thats".
|
16
|
CREATE tt. tt.f1 = 7. tt.f3 = "the".
|
17
|
CREATE tt. tt.f1 = 8. tt.f3 = "way".
|
18
|
CREATE tt. tt.f1 = 9. tt.f3 = "aha".
|
19
|
CREATE tt. tt.f1 = 10. tt.f3 = "aha".
|
20
|
CREATE tt. tt.f1 = 11. tt.f3 = "I".
|
21
|
CREATE tt. tt.f1 = 12. tt.f3 = "like".
|
22
|
CREATE tt. tt.f1 = 13. tt.f3 = "it".
|
23
|
CREATE tt. tt.f1 = 14. tt.f3 = ",".
|
24
|
CREATE tt. tt.f1 = 15. tt.f3 = "+seven".
|
25
|
CREATE tt. tt.f1 = 20. tt.f3 = "one".
|
26
|
CREATE tt. tt.f1 = 21. tt.f3 = "two".
|
27
|
CREATE tt. tt.f1 = 22. tt.f3 = "three".
|
28
|
|
29
|
def var ch as char.
|
30
|
|
31
|
DEFINE QUERY q FOR tt SCROLLING.
|
32
|
OPEN QUERY q FOR EACH tt.
|
33
|
|
34
|
/*tt.f1 FORMAT "->>9"*/
|
35
|
|
36
|
DEF BROWSE br QUERY q
|
37
|
DISPLAY
|
38
|
tt.f3 tt.f4
|
39
|
|
40
|
WITH 8 DOWN TITLE "Static browse".
|
41
|
|
42
|
DEF FRAME fr br
|
43
|
WITH TITLE "Frame" SIZE 70 BY 15.
|
44
|
|
45
|
ENABLE ALL WITH FRAME fr.
|
46
|
message "Column headers are clickable".
|
47
|
MESSAGE "press T to add record".
|
48
|
|
49
|
BROWSE br:ALLOW-COLUMN-SEARCHING = TRUE.
|
50
|
|
51
|
ON 't' ANYWHERE
|
52
|
DO:
|
53
|
MESSAGE "Added record 23".
|
54
|
CREATE tt. tt.f1 = 23. tt.f3 = "four".
|
55
|
END.
|
56
|
|
57
|
ON START-SEARCH OF BROWSE br
|
58
|
DO:
|
59
|
DEFINE VARIABLE hSortColumn AS WIDGET-HANDLE.
|
60
|
DEFINE VARIABLE hQ AS HANDLE.
|
61
|
DEF VAR str AS CHAR.
|
62
|
|
63
|
hSortColumn = BROWSE br:CURRENT-COLUMN.
|
64
|
hQ = query q:handle.
|
65
|
|
66
|
if hSortColumn:SORT-ASCENDING = ? then
|
67
|
hSortColumn:SORT-ASCENDING = true.
|
68
|
else
|
69
|
hSortColumn:SORT-ASCENDING = not hSortColumn:SORT-ASCENDING.
|
70
|
|
71
|
hQ:query-close.
|
72
|
|
73
|
str = "FOR EACH tt BY tt." + hSortColumn:LABEL.
|
74
|
IF hSortColumn:SORT-ASCENDING = FALSE THEN DO:
|
75
|
str = str + " desc".
|
76
|
END.
|
77
|
hQ:QUERY-PREPARE(str).
|
78
|
hQ:query-open.
|
79
|
END.
|
80
|
|
81
|
ON START-SEARCH OF BROWSE br
|
82
|
DO:
|
83
|
message "search done".
|
84
|
end.
|
85
|
|
86
|
WAIT-FOR WINDOW-CLOSE OF DEFAULT-WINDOW.
|
87
|
|
88
|
|