1
|
DEFINE TEMP-TABLE tt1 BEFORE-TABLE tt0
|
2
|
FIELD f11 AS CHAR
|
3
|
FIELD f12 AS INT
|
4
|
FIELD f13 AS DATE
|
5
|
FIELD f14 AS DECIMAL.
|
6
|
|
7
|
DEFINE TEMP-TABLE tt2 BEFORE-TABLE tt5
|
8
|
FIELD f21 AS CHAR
|
9
|
FIELD f22 AS INT
|
10
|
FIELD f23 AS DATE
|
11
|
FIELD f24 AS DECIMAL.
|
12
|
|
13
|
DEFINE TEMP-TABLE tt1src /* the source for tt1 */
|
14
|
FIELD g11 AS CHAR
|
15
|
FIELD g12 AS INT
|
16
|
FIELD g13 AS DATE
|
17
|
FIELD g14 AS DECIMAL
|
18
|
/* INDEX gx1 g11 g12
|
19
|
INDEX gx2 g12 g13*/
|
20
|
INDEX gx3 IS UNIQUE g13 g14.
|
21
|
|
22
|
DEFINE TEMP-TABLE tt2src /* the source for tt2 */
|
23
|
FIELD e21 AS CHAR
|
24
|
FIELD e22 AS INT
|
25
|
FIELD e23 AS DATE
|
26
|
FIELD e24 AS DECIMAL.
|
27
|
|
28
|
DEFINE TEMP-TABLE tt3 FIELD f31 AS CHAR.
|
29
|
DEFINE TEMP-TABLE tt4 FIELD f41 AS CHAR.
|
30
|
|
31
|
BUFFER tt5:AVAILABLE.
|
32
|
BUFFER tt0:AVAILABLE.
|
33
|
|
34
|
DEFINE VARIABLE hDataSrc1 AS HANDLE NO-UNDO.
|
35
|
DEFINE VARIABLE hDataSrc2 AS HANDLE NO-UNDO.
|
36
|
DEFINE VARIABLE hDataSet AS HANDLE NO-UNDO.
|
37
|
DEFINE VARIABLE hDataSet2 AS HANDLE NO-UNDO.
|
38
|
DEFINE VARIABLE ch-1 AS CHARACTER INIT ?.
|
39
|
DEFINE VARIABLE int-1 AS INT INIT ?.
|
40
|
DEFINE VARIABLE hbuff AS HANDLE.
|
41
|
DEFINE VARIABLE hSrcBuff AS HANDLE.
|
42
|
DEFINE VARIABLE hUnknown AS HANDLE.
|
43
|
|
44
|
PROCEDURE fillNotification1:
|
45
|
DEFINE INPUT PARAMETER DATASET-HANDLE ds-hdl.
|
46
|
|
47
|
MESSAGE "localFILL1:" ds-hdl:NAME.
|
48
|
END PROCEDURE.
|
49
|
|
50
|
hbuff = BUFFER tt2:HANDLE.
|
51
|
hSrcBuff = BUFFER tt2src:HANDLE.
|
52
|
|
53
|
CREATE DATASET hDataSet.
|
54
|
hDataSet:NAME = "DS1".
|
55
|
hDataSet:SET-BUFFERS(BUFFER tt1:HANDLE, hbuff).
|
56
|
hDataSet:ADD-RELATION(BUFFER tt1:HANDLE, hbuff, "f11,f21").
|
57
|
/* hDataSet:ADD-RELATION(hbuff, BUFFER tt1:HANDLE, "f21,f11"). */
|
58
|
|
59
|
CREATE DATASET hDataSet2.
|
60
|
/* hDataSet2:add-BUFFER(BUFFER customer:HANDLE). */
|
61
|
hDataSet2:ADD-BUFFER(BUFFER tt3:HANDLE).
|
62
|
hDataSet2:ADD-BUFFER(BUFFER tt4:HANDLE).
|
63
|
hDataSet2:ADD-RELATION(BUFFER tt3:HANDLE, BUFFER tt4:HANDLE, "f31,f41").
|
64
|
|
65
|
hDataSet:set-callback("before-fill", "fillNotification1").
|
66
|
hDataSet2:set-callback("after-fill", "fillNotification1").
|
67
|
|
68
|
hDataSet:apply-callback("before-fill"). /* localFILL1: DS1*/
|
69
|
hDataSet2:apply-callback("after-fill"). /* localFILL1: */
|
70
|
|
71
|
MESSAGE 1
|
72
|
hbuff:DETACH-DATA-SOURCE()
|
73
|
hbuff:ATTACHED-PAIRLIST.
|
74
|
/* 1 yes ? */
|
75
|
|
76
|
CREATE DATA-SOURCE hDataSrc1.
|
77
|
CREATE DATA-SOURCE hDataSrc2.
|
78
|
|
79
|
/* ATTACH-DATA-SOURCE may not be called until source buffers have been assigned to the DATA-SOURCE. (11958) */
|
80
|
MESSAGE 2
|
81
|
hbuff:ATTACH-DATA-SOURCE(hDataSrc2)
|
82
|
hDataSrc2:SAVE-WHERE-STRING.
|
83
|
/* 2 no */
|
84
|
|
85
|
MESSAGE 3
|
86
|
hDataSrc2:ADD-SOURCE-BUFFER(hSrcBuff, "e21,e22")
|
87
|
hDataSrc2:ADD-SOURCE-BUFFER(hSrcBuff, "e21") /* returns YES but does nothing */
|
88
|
hDataSrc2:NUM-SOURCE-BUFFERS
|
89
|
hDataSrc2:KEYS
|
90
|
hDataSrc2:GET-SOURCE-BUFFER(1)
|
91
|
hDataSrc2:GET-SOURCE-BUFFER(2)
|
92
|
hDataSrc2:GET-DATASET-BUFFER.
|
93
|
/* 3 yes yes 1 e21,e23 11387 ? ? */
|
94
|
|
95
|
/* Cannot have both exclude list and include list. (12779) */
|
96
|
MESSAGE 4
|
97
|
hbuff:ATTACH-DATA-SOURCE(hDataSrc2, "f21,f23", "f21", "f22")
|
98
|
hbuff:ATTACHED-PAIRLIST
|
99
|
hDataSrc2:GET-DATASET-BUFFER.
|
100
|
/* 4 no ? ? */
|
101
|
|
102
|
/* ATTACH-DATA-SOURCE must have a valid data-source handle as the first argument. (11957) */
|
103
|
MESSAGE 5
|
104
|
hbuff:ATTACH-DATA-SOURCE(hbuff, "f21,e21,f22,e22,f32,e32,f42,e42", "f24")
|
105
|
hbuff:ATTACHED-PAIRLIST
|
106
|
hDataSrc2:GET-DATASET-BUFFER.
|
107
|
/* 5 no ? ? */
|
108
|
|
109
|
/* Pair with <member> failed to have a member in each table. (9034) f32 */
|
110
|
/* DATA-SOURCE-COMPLETE-MAP requires prior ATTACH-DATA-SOURCE method to be run. (12781) */
|
111
|
MESSAGE 6
|
112
|
hbuff:ATTACH-DATA-SOURCE(hDataSrc2, "f21,e21,f22,e22,f32,e23,f24,e24", "f24")
|
113
|
hbuff:ATTACHED-PAIRLIST
|
114
|
hDataSrc2:GET-DATASET-BUFFER
|
115
|
hbuff:DATA-SOURCE-COMPLETE-MAP.
|
116
|
/* 6 no ? ? ? */
|
117
|
|
118
|
/* ATTACH-DATA-SOURCE is only valid for buffers that are members of a dataset. (11952) */
|
119
|
/* Attempt to reference dataset buffer of a data-source before ATTACH-DATA-SOURCE for data-source buffer <buffer>. (11892) */
|
120
|
/* DATA-SOURCE-COMPLETE-MAP only legal for dataset tables. (12780) */
|
121
|
MESSAGE 7
|
122
|
hSrcBuff:ATTACH-DATA-SOURCE(hDataSrc2, "f21,e21,f22,e22,f32,e32,f42,e42", "f24")
|
123
|
hSrcBuff:ATTACHED-PAIRLIST
|
124
|
hDataSrc2:GET-DATASET-BUFFER
|
125
|
hDataSrc2:FILL-WHERE-STRING
|
126
|
hDataSrc2:SAVE-WHERE-STRING
|
127
|
hSrcBuff:DATA-SOURCE-COMPLETE-MAP.
|
128
|
/* 7 no ? ? ? ? */
|
129
|
|
130
|
/* Unable to auto-generate a FILL query predicate for tt2src if field f21 in tt2 is not mapped. (11883) */
|
131
|
/* Unable to generate a save predicate for tt2src if field e21 is not mapped in tt5. (11896) */
|
132
|
/* DATA-SOURCE-COMPLETE-MAP only legal for dataset tables. (12780) */
|
133
|
MESSAGE 8
|
134
|
hbuff:ATTACH-DATA-SOURCE(hDataSrc2, "e22,f22,e23,f23,e24,f24", "f24")
|
135
|
hbuff:ATTACHED-PAIRLIST
|
136
|
hDataSrc2:GET-DATASET-BUFFER
|
137
|
hDataSrc2:FILL-WHERE-STRING
|
138
|
hDataSrc2:SAVE-WHERE-STRING
|
139
|
hSrcBuff:DATA-SOURCE-COMPLETE-MAP.
|
140
|
/* 8 yes e22,f22,e23,f23,e24,f24 1185 ? ? ? */
|
141
|
|
142
|
/* ATTACH-DATA-SOURCE may not be called until source buffers have been assigned to the DATA-SOURCE. (11958) */
|
143
|
/* Unable to generate a save predicate for <table-name> if field <field-name> is not mapped in <temp-table-name>. (11896) */
|
144
|
MESSAGE 9
|
145
|
hbuff:ATTACH-DATA-SOURCE(hDataSrc1, "e22,f22,e23,f23", "f24")
|
146
|
hbuff:ATTACHED-PAIRLIST
|
147
|
hDataSrc2:GET-DATASET-BUFFER
|
148
|
hDataSrc2:FILL-WHERE-STRING
|
149
|
hDataSrc2:SAVE-WHERE-STRING
|
150
|
hbuff:DATA-SOURCE-COMPLETE-MAP.
|
151
|
/* 9 no e22,f22,e23,f23,e24,f24 1150 ? ?
|
152
|
tt2.f22,tt2src.e22,tt2.f23,tt2src.e23,tt2.f24,tt2src.e24 */
|
153
|
|
154
|
/* **Unable to assign UNKNOWN value to attribute <attribute> on <widget id>. (4083)*/
|
155
|
hDataSrc2:FILL-WHERE-STRING = ?.
|
156
|
hDataSrc2:FILL-WHERE-STRING = "abc".
|
157
|
/* **Unable to assign UNKNOWN value to attribute <attribute> on <widget id>. (4083)*/
|
158
|
hDataSrc2:SAVE-WHERE-STRING = ?.
|
159
|
hDataSrc2:SAVE-WHERE-STRING = "abc".
|
160
|
hDataSrc2:SAVE-WHERE-STRING("-10") = "abc".
|
161
|
|
162
|
hbuff:DETACH-DATA-SOURCE().
|
163
|
|
164
|
MESSAGE 10
|
165
|
hbuff:ATTACH-DATA-SOURCE(hDataSrc2, "f21,e21,e22,f22,e23,f23", "f24")
|
166
|
hbuff:ATTACHED-PAIRLIST
|
167
|
hDataSrc2:GET-DATASET-BUFFER
|
168
|
hDataSrc2:FILL-WHERE-STRING
|
169
|
hDataSrc2:SAVE-WHERE-STRING
|
170
|
hbuff:DATA-SOURCE-COMPLETE-MAP.
|
171
|
/* 10 yes f21,e21,e22,f22,e23,f23 1185
|
172
|
WHERE tt2src.e21=tt1.f11
|
173
|
WHERE tt2src.e21=tt5.f21 and tt2src.e22=tt5.f22
|
174
|
tt2.f21,tt2src.e21,tt2.f22,tt2src.e22,tt2.f23,tt2src.e23 */
|
175
|
|
176
|
MESSAGE 11
|
177
|
hDataSrc1:ADD-SOURCE-BUFFER(BUFFER tt1src:HANDLE, ?)
|
178
|
hDataSrc1:KEYS
|
179
|
hDataSrc1:GET-SOURCE-BUFFER()
|
180
|
hDataSrc1:GET-DATASET-BUFFER
|
181
|
hbuff:DATA-SOURCE-COMPLETE-MAP
|
182
|
/* hbuff:ATTACH-DATA-SOURCE(hDataSrc1, "") */ .
|
183
|
/* 11 yes rowid 12745 ? */
|
184
|
/* 11 yes g13,g14 12745 ? (with index gx3) */
|
185
|
/* tt2.f21,tt2src.e21,tt2.f22,tt2src.e22,tt2.f23,tt2src.e23 */
|
186
|
|
187
|
/* Unable to get SAVE-WHERE-STRING because no KEYS phrase given in DATA-SOURCE definition and no unique index found in <buffer-name>. (11895) */
|
188
|
MESSAGE 12
|
189
|
BUFFER tt1:ATTACH-DATA-SOURCE(hDataSrc1, "g13,f13,tt1.f14,g14")
|
190
|
BUFFER tt1:ATTACHED-PAIRLIST
|
191
|
hDataSrc1:GET-DATASET-BUFFER
|
192
|
hDataSrc1:FILL-WHERE-STRING
|
193
|
hDataSrc1:SAVE-WHERE-STRING
|
194
|
hbuff:DATA-SOURCE-COMPLETE-MAP.
|
195
|
/* 12 yes g13,f13,tt1.f14,g14 12736
|
196
|
?
|
197
|
WHERE tt1src.g13=tt0.f13 and tt1src.g14=tt0.f14
|
198
|
tt2.f21,tt2src.e21,tt2.f22,tt2src.e22,tt2.f23,tt2src.e23 */
|
199
|
|
200
|
/*
|
201
|
localFILL1: DS1
|
202
|
localFILL1:
|
203
|
1 yes ?
|
204
|
ATTACH-DATA-SOURCE may not be called until source buffers have been assigned to the DATA-SOURCE. (11958)
|
205
|
2 no ?
|
206
|
3 yes yes 1 e21,e22 1131 ? ?
|
207
|
Cannot have both exclude list and include list. (12779)
|
208
|
4 no ? ?
|
209
|
ATTACH-DATA-SOURCE must have a valid data-source handle as the first argument. (11957)
|
210
|
5 no ? ?
|
211
|
Pair with f32 failed to have a member in each table. (9034)
|
212
|
DATA-SOURCE-COMPLETE-MAP requires prior ATTACH-DATA-SOURCE method to be run. (12781)
|
213
|
6 no ? ? ?
|
214
|
ATTACH-DATA-SOURCE is only valid for buffers that are members of a dataset. (11952)
|
215
|
Attempt to reference dataset buffer of a data-source before ATTACH-DATA-SOURCE for data-source buffer tt2src. (11892)
|
216
|
DATA-SOURCE-COMPLETE-MAP only legal for dataset tables. (12780)
|
217
|
7 no ? ? ? ? ?
|
218
|
Unable to auto-generate a FILL query predicate for tt2src if field f21 in tt2 is not mapped. (11883)
|
219
|
Unable to generate a save predicate for tt2src if field e21 is not mapped in tt5. (11896)
|
220
|
DATA-SOURCE-COMPLETE-MAP only legal for dataset tables. (12780)
|
221
|
8 yes e22,f22,e23,f23,e24,f24 1150 ? ? ?
|
222
|
ATTACH-DATA-SOURCE may not be called until source buffers have been assigned to the DATA-SOURCE. (11958)
|
223
|
Unable to generate a save predicate for tt2src if field e21 is not mapped in tt5. (11896)
|
224
|
9 no e22,f22,e23,f23,e24,f24 1150 ? ? tt2.f22,tt2src.e22,tt2.f23,tt2src.e23,tt2.f24,tt2src.e24
|
225
|
**Unable to assign UNKNOWN value to attribute FILL-WHERE-STRING on DATA-SOURCE widget. (4083)
|
226
|
**Unable to assign UNKNOWN value to attribute SAVE-WHERE-STRING on DATA-SOURCE widget. (4083)
|
227
|
10 yes f21,e21,e22,f22,e23,f23 1150 WHERE tt2src.e21=tt1.f11 WHERE tt2src.e21=tt5.f21 and tt2src.e22=tt5.f22
|
228
|
tt2.f21,tt2src.e21,tt2.f22,tt2src.e22,tt2.f23,tt2src.e23
|
229
|
11 yes g13,g14 1162 ? tt2.f21,tt2src.e21,tt2.f22,tt2src.e22,tt2.f23,tt2src.e23
|
230
|
12 yes g13,f13,tt1.f14,g14 1153 ? WHERE tt1src.g13=tt0.f13 and tt1src.g14=tt0.f14
|
231
|
tt2.f21,tt2src.e21,tt2.f22,tt2src.e22,tt2.f23,tt2src.e23
|
232
|
*/
|