Caros Colegas,
Existe algum set filter mais rápido no xHarbour com Minigui?
Pois estou usando o set filter normalmente e estou achando lendo, utilizo NTX.
Qual seria a melhor solução? usar CDX?
set filter
Moderador: Moderadores
-
Alessandro
- Usuário Nível 3

- Mensagens: 141
- Registrado em: 07 Jul 2004 09:39
- Localização: Santo Antonio da Platina-PR
-
Alessandro
- Usuário Nível 3

- Mensagens: 141
- Registrado em: 07 Jul 2004 09:39
- Localização: Santo Antonio da Platina-PR
Olá Francisco...
Como poderia utilizar o While For na seguinte condição;
No browse faço o filtro conforme é alterado o valor de um text-box,
Por exemplo eu filtro os produtos de um determinado fornecedor, dessa forma:
Function UpDate009()
Select Produtos
Produtos->(DbSetOrder(1))
Produtos->(dbSeek(Form_009.Txt_CodFor.Value))
set filter to Produtos->CGC_FORN == Form_009.Txt_CodFor.Value
go top
Form_009.Brow_009.Value := Recno()
return
Se puder ma ajudar, agradeço.
Como poderia utilizar o While For na seguinte condição;
No browse faço o filtro conforme é alterado o valor de um text-box,
Por exemplo eu filtro os produtos de um determinado fornecedor, dessa forma:
Function UpDate009()
Select Produtos
Produtos->(DbSetOrder(1))
Produtos->(dbSeek(Form_009.Txt_CodFor.Value))
set filter to Produtos->CGC_FORN == Form_009.Txt_CodFor.Value
go top
Form_009.Brow_009.Value := Recno()
return
Se puder ma ajudar, agradeço.
-
Alessandro
- Usuário Nível 3

- Mensagens: 141
- Registrado em: 07 Jul 2004 09:39
- Localização: Santo Antonio da Platina-PR
- Antonio
- Usuário Nível 3

- Mensagens: 347
- Registrado em: 14 Ago 2003 17:33
- Localização: Sao Paulo - SP
- Contato:
Ola Alessandro,
Queira me desculpar...
Na realidade a sugestão é que voce construa um indice temporario, somente com o filtro desejado, entende?
If file("indice.cdx")
Erase Indice.cdx
INDEX ON Produtos->CGC_FORN TAG 1 WHILE Produtos->CGC_FORN == Form_009.Txt_CodFor.Value .and. !eof() TO "Indice.CDX"
go top
Form_009.Brow_009.Value := Recno()
Observe que utilizo o RDDCDX
Assim voce cria um indice somente com o conteudo filtrado.
Quanto ao autoexec.nt, baixei o MIcrosoft AntiSpyWare, rodei e foram detectadas 69 praguinhas....
Parece estar tudo bem agora.
Obrigado.
Queira me desculpar...
Na realidade a sugestão é que voce construa um indice temporario, somente com o filtro desejado, entende?
If file("indice.cdx")
Erase Indice.cdx
INDEX ON Produtos->CGC_FORN TAG 1 WHILE Produtos->CGC_FORN == Form_009.Txt_CodFor.Value .and. !eof() TO "Indice.CDX"
go top
Form_009.Brow_009.Value := Recno()
Observe que utilizo o RDDCDX
Assim voce cria um indice somente com o conteudo filtrado.
Quanto ao autoexec.nt, baixei o MIcrosoft AntiSpyWare, rodei e foram detectadas 69 praguinhas....
Parece estar tudo bem agora.
Obrigado.
Antonio Carlos
Harbour 3.2 (20180213)
Hwgui 2.20 3b | PostGresql 9.5 | ADO/ODBC
Harbour 3.2 (20180213)
Hwgui 2.20 3b | PostGresql 9.5 | ADO/ODBC
- vagucs
- Membro Master

- Mensagens: 1480
- Registrado em: 10 Jul 2004 10:45
- Localização: Ipanema - MG
- Contato:
Use esta opção do antonio para jogar as informações para um listbox ou mesmo um data grid ou banco de dados temporario e depois atualize no servidor os dados.Antonio escreveu:É Antonio Alessandro!
Bom dia!
Select Produtos
Produtos->(dbSeek(Form_009.Txt_CodFor.Value))
While for Produtos->CGC_FORN == Form_009.Txt_CodFor.Value .and. !eof()
end
go top
Form_009.Brow_009.Value := Recno()
return