Dragan:
I want the form to be as brainless as possible, so I'll ask my question a little differently:
1. In the calling form there will be an object with a method called 'SetFilter' that has all the code that you described. Depending on the situation, I want to modify the code (can this be done?).
2. I then call the brainless display form:
do form with loMyObject
3. All the brainless form needs to do is say in the init:
lpararameter toObject
toObject.setfilter()
The brainless form doesn't care what is in the setfilter method; the calling form took care of that. Can this be done?
Thanks,
Yossi
>>If the user chooses only (1), print lines type '00 '
>>If the user chooses only (2), print lines type '01 '
>>If the user chooses (1) AND (2), print lines type '00 ' AND '01' AND '011'
>
>You should bind the checkboxes that your user clicks to some form properties, like .lIncludeDetails, lIncludeTotals, lIncludeSeparators... then in the code that reacts to the changes of these values,
>
>
lcList=""
>select MyGridsAlias
>if thisform.lIncludeDetails
> lclist=lclist+["00 ",]
>endif
>
>if thisform.lIncludeTotals
> lclist=lclist+["01 ",]
>endif
>
>if thisform.lIncludeSeparators
> lclist=lclist+["011",]
>endif
>lclist=trim(lcList, ",")
>if empty(lcList)
> set filter to
>else
> set filter to inlist(cFilter, &lcList)
>endif
>locate
>Then refresh the grid.