Release 10.1A: OpenEdge Development:
ProDataSets

> ## Filtering the top-level query based on the user selection

> You will recall from earlier examples that the ProDataSet `BEFORE-FILL` event procedure, called `preDataSetFill`, prepares the top-level query for `Order`s to select the one `OrderNum` passed in as an input parameter. Now you want to use the where-clause stored in the variable `cSelection` instead.

> Modify `preDataSetFill` accordingly, as follows:

>      PROCEDURE preDataSetFill:
>         DEFINE INPUT PARAMETER DATASET FOR dsOrder.
>         QUERY qOrder:QUERY-PREPARE("FOR EACH Order WHERE " +
>                         cSelection +
>                         ", FIRST Customer OF Order, FIRST SalesRep OF Order").

>      END PROCEDURE. /* preDataSetFill */

> Now the fill will load not just one `Order`, but typically a whole set of `Order`s into the top-level table.

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095