Como fazer um Grid começar em um determinado Registro e a Pesquisa poder alterar

Caros amigos,

Tenho um grid de uma consulta tabela de pedidos, onde mostra os registros dos pedidos efetuados. Eu desejaria que o usuário ao clicar na grid ela começasse a aparecer do dia em que ele esta para frente, é possível?
Não é para fazer parte do Select, e não podemos começar com um filtro pois ela é atualizada a cada 60 segundos.
Exemplo

Grid (Banco) Com todos os regsitros 2 paǵinas
Pedido Cliente Dat.Ped Valor
011 João 01/12 1.00,00
012 João 021/12 1.00,00
013 João 021/12 1.00,00
014 João 02/12 1.00,00
015 João 03/12 1.00,00
016 João 04/12 1.00,00
017 João 05/12 1.00,00

Objetivo: Hoje é dia 02/12
Pedido Cliente Dat.Ped Valor
012 João 02/12 1.00,00
013 João 02/12 1.00,00
014 João 02/12 1.00,00
015 João 03/12 1.00,00
016 João 04/12 1.00,00
017 João 05/12 1.00,00

Objetivo: Hoje é dia 04/12
Pedido Cliente Dat.Ped Valor
016 João 04/12 1.00,00
017 João 05/12 1.00,00

A cada dia que ele entrar ela mostraria dinamicamente pela data corrente os registros apartir desta data, se ele desejar ver todos ou outra forma de pesquisa e filtraria todo o período desejado ai o grid traria todos os registros, caso contrário ele sempre trará do dia corrente para frente.
Estava pensando em usar a macro sc_select_where(add)
É possível com o SC?
Adeilson

olha no help a macro sc_select_where(add).

Não é para fazer parte do Select… (Vc deve esta falando do Select principal né) ? Tem com a macro sc_exec_sql no evento onScriptinit.
Agora a edição eu não sei não.

Haroldo
A macro eu sei como usar o problema é no filtro ao colocar ela adiciona eu precisaria fazer o filtro sobrepor o SQL principal da Grid.

FredKeyster:
sc_exec_sql esta macro dentro do filtro substituirá a SQL principal ?

Pois eu abriria a grid com um select que seja maior que a data corrente. O usuário poderia ir no Filtro e fazer uma nova pesquisa esta teria que ter prioridade sobre o SQL principal da Grid que inicio com a condição maior que a data corrente.

At.

Adeilson

Sobrepor como? onde?
Só na parte de condições?

Haroldo,

Exemplo o select que esta no comando SQL estará filtrando a data corrente! Quando se faz a pesquisa do filtro eu precisaria fazer que a pesquisa fizesse um novo select sobrepondo o comando SQL do grid principal, se no principal esta para a data corrente e na pesquisa o usuário solicitar o mês completo o filtro passaria ser o SQL principal

At.

Adeislon

Adeilson, eu tenho um grid que faz isso, eu fiz da seguinte forma:
No comando SQL principal eu deixei sem a clausula where.

No envento onScriptInit eu coloquei:
if (empty({sc_where_atual})){
sc_select_where(add) = “where situacao <> ‘F’”;
}
Então quando abre só mostra os registro de acordo com este where

Ai se o usuário for para a pesquisa e pesquisar por outros campos o SQL respeita os campos da tela de pesquisa e ignora este do OnScriptInit, e também se na tela de pesquisa não selecionar nenhum campo o SQL volta a respeitar o que esta no OnScriptInit.

1 Curtida

Leandro Coelho,
Agradeço a dica, vou fazer o teste.

Abraços

Adeilson