a. Copy the QUERY_FIND object group from the APPSTAND form as directed in the manual.
b.APPSTAND is probably located in
apps10/res/US/appstand.fmb,
depending on your class setup.
c. Delete the object group from your form.
d. Rename the appropriate objects.
e. Edit the appropriate triggers.
f. Set the navigation block property.
g. Change the window title.
h. Create necessary items in your window as shown in your
form specification. Adjust the properties as directed in the manual.
Suggestion: Get your find window working with just one or
two items at first, then add more items as time allows.
i. Adjust your window size.
j. Create your PRE-QUERY trigger in the Results
block(ORDERS) to copy values from the Query Find Window into items in the
ORDERS block before the actual query. Your trigger should account for fields
that pass character data, numeric data, date range data, and null value.
IF:
parameter. G_query_find = 'TRUE' THEN
:
Orders.order_id: =: ORDERS_QF.ORDER_ID;
App_find.query-range
(: orders_qf.date_ordered_from,
:
Orders_qf.date_ordered_to,
'ORDERS.DATE_ORDERED');
COPY
(: orders_qf.order_status,'ORDERS.ORDER_STATUS');
:
Orders.customer_id: =: ORDERS_QF.CUSTOMER_ID;
COPY
(: orders_qf.customer_name, 'ORDERS.CUSTOMER_NAME');
:
Orders.sales_rep_id: =: ORDERS_QF.SALES_REP_ID;
COPY
(: orders_qf.sales_rep_name, 'ORDERS.SALES_REP_NAME');
If: orders_qf.payment_type
is not null then
COPY
(: orders_qf.payment_type, 'ORDERS.PAYMENT_TYPE');
End
if;
:
parameter.G_query_find := 'FALSE';
End
if;
j. Create
your QUERY_FIND trigger as directed.