Página 1 de 1
Filtro no ADO
Enviado: 21 Nov 2019 22:42
por JoséQuintas
Estou tentando fazer um filtro composto no ADO mas com problemas.
Error WINOLE/1006 Os argumentos são incorretos, estão fora do intervalo aceitável ou estão em conflito. (0x800A0BB9): ADODB.Recordset;(DOS Error -2147352567)
O filtro é este:
Lembro de ter visto algo, mas ainda procurando.
O site da Microsoft não ajuda:
ele cita exemplo, mas o exemplo não existe.
Alguém tem idéia?
Filtro simples ok, mas o complicado ainda não.
Filtro no ADO
Enviado: 21 Nov 2019 22:46
por JoséQuintas
Achei
http://www.macoratti.net/ado_filt.htm
O difícil agora é traduzir isso para o que eu preciso.
Filtro no ADO
Enviado: 21 Nov 2019 23:31
por JoséQuintas
Para um campo ok, já está resolvido, pesquisar campo que comece com x, ou que tenha no conteúdo y, z, k, etc
Agora quero expandir pra vários campos.
O usuário ir digitando e analisar em vários campos diferentes, não apenas em um.
Filtro no ADO
Enviado: 22 Nov 2019 08:06
por JoséQuintas
Tá complicado.
Basicamente eu precisava de ( a ou b ) and ( c ou d ) and (e ou f )
mas só pode usar ( a and b ) ou ( c and d ) ou ( e and f )
e também não pode ( a + b ) ou ( c + d ) ou e + f )
Filtro no ADO
Enviado: 24 Nov 2019 19:05
por JoséQuintas
Não consegui o que eu queria, mas acabou ficando até melhor.
Agora é fazer o pente fino pra caracteres que causam erro.
Falta agora uma coisa:
Pesquisa em campos numéricos e/ou que se tornaram número.
Por exemplo, pesquisar no número das notas fiscais.
Pra isso, ou alguma função de conversão no ADO, ou no comando SQL pra já trazer convertido.
O interessante é que poderia até usar a mesma coisa em DBF, muito mais simples do que uso hoje, mas.... sem a opção de filtragem automática, porque em DBF seria extremamente lento.
Filtro no ADO
Enviado: 24 Nov 2019 19:51
por JoséQuintas
Encontrei.
É até interessante....
No Harbour é Padl(), Padr()....
No MySQL é LPad() e RPad().
A sintaxe é a mesma.
SELECT Lpad( numero, 6, '0' ) from tabela
Detalhe: no mysql não importa se o campo é caractere ou numérico.