>*I'm trying to create a View for a Grid in a Form, but the View must show diferent types of information depending on option's chosen by user in another page of a pageframe.
>*Depending of the option, the view show's only data between dates and or from some departments, and so on.
>*The best way I found is to use macro substitution for the where clause in SQL.
>
>*I cant make it work because it return's the following message, Alias not Found, in this case the own View or column z not found.
>
>*But if I try it in an program just like an SQL statement it works fine, but I need a view to use it in a grid, and the same grid cant have different views.
>
>*Could someone help me please.
>
>* TIA
>* p.wagner@zaz.com.br
>
>* Original View ************************************************************
>* CREATE SQL VIEW "V_DESPESAS2" ;
>* AS SELECT Despesas.data, Despesas.valor, Loteamentos.nome, ;
>* Despesas.descricao, Despesas.loteamento, Despesas.cod_banco, ;
>* Despesas.cheque_num, Despesas.codigo, Despesas.cod_custo FROM ;
>* data1!despesas RIGHT OUTER JOIN data1!loteamentos ON ;
>* Despesas.loteamento = Loteamentos.codigo ;
>* WHERE &xx.
>**********************************************************************
>
>*This part of an prg works
>
>set date to british
>SET STRICTDATE TO 0
>open database c:\aa\atuante\dados\data1.dbc && open database
>
>
>*data1 = {01/05/2000} && variable 1
>*data2 = {30/05/2000} && variable 2
>&& Only Dates
>*xx = 'Despesas.data BETWEEN data1 and data2 and DELETED() <> .T.'
>
>&& Only Department ( CODE )
>*loteamentox = "1 "
>*xx = 'Despesas.loteamento = loteamentox and DELETED() <> .T. '
>
>&& Department and Dates
>*data1 = {01/03/2000}
>*data2 = {30/05/2000}
>*loteamentox = "2 "
>*xx = 'Despesas.loteamento = loteamentox and Despesas.data BETWEEN data1 and data2 and DELETED() <> .T.'
>
>&& Department and Cost unit
>loteamentox = "2 " && variable 3
>Custox = "2" && variable 4
>xx = 'Despesas.loteamento = loteamentox and Despesas.cod_custo = Custox and DELETED() <> .T.'
>
>
>SELECT Despesas.data, Despesas.valor, Loteamentos.nome, ;
> Despesas.descricao, Despesas.loteamento, Despesas.cod_banco, ;
> Despesas.cheque_num, Despesas.codigo, Despesas.cod_custo FROM ;
> data1!despesas RIGHT OUTER JOIN data1!loteamentos ON ;
> Despesas.loteamento = Loteamentos.codigo ;
> WHERE &xx. into cursor CurDespesas
>
>
>* =REQUERY("V_DESPESAS2") && doesnt work if used with View
>
>browse
>
>WHY
Closing the view, recreating it, and reopening will probably restet most of your grid properties. You may need to reset your control source, and column control sources as well.
Thanks
Gar W. Lipow