Alterar query SQL num grid, qual a macro SC que se deve utilizar?

Tenho uma aplicação onde pretendo alterar a query SQL de um grid conforme o nome do grupo.
Tipicamente seria assim:
if ([grupo]==“admin”){
…executar aqui a query em que o grupo seria igual a admin
}
if ([grupo]==“director”){
…executar aqui a query em que o grupo seria igual a director
}
etc…
qual dos seguintes macros é que devo utilizar e como?
sc_exec_sql (“Comando SQL”, “Conexão”)
sc_lookup (Dataset, “Comando SQL”, “Conexão”)
sc_reset_change_connection
sc_select (dataset, “Comando SQL”, “Conexão”)

Ou existe outra solução…
Obrigada…

Diretamente na grid acho que não tem jeito de alterar a query.
O que você quer fazer?

O que pretendo é antes de abrir o grid, possa seleccionar os dados que me interessam cm base num determinado user por exemplo.
Na tabela tenho um campo grupo
No login associo o user ao grupo
quando vou abrir o grid através do menu pretendo que a query SQL só me apresente logo os dados do grupo que pertece o utilizador…

Mas pra isso não precisa alterar a query, o SC monta a grid com base na query se você alterá-la em tempo de execução não haverá nada pra apresentar.

O certo nesse caso é você no where conlocar uma condição, ex:

select * from vendas where grupo_vendas = [g_vendas]

Dessa forma o select irá trazer só as vendas do grupo que for informado na variável [g_vendas].