[firebase-br] Função NUMBER_ONLY

Gladiston Santana gladiston em vidy.com.br
Seg Nov 25 09:33:55 -03 2019


Especificamente para Inscrição Estadual usar a recomendação :
SELECT TRIM(REPLACE(REPLACE(ie, '.', ''),'-','')) as IE_NUMBER_ONLY
FROM CADASTRO
parece resolver seu problema, e se isso só ocorre com uma tabela então
talvez possa criar uma coluna calculada só para obter apenas os números sem
os caracteres indesejados simplificaria os WHEREs dentro dos programas.
Para uso genérico você teria de criar uma procedure simular a essa daqui:
http://www.firebirdfaq.org/faq139/
mas não seria performático, ou migrar de vez para o FB3+

ps: não é possivel com o IE, mas números padronizados como CNPJ é melhor
armazenar como números e usar talvez um check com a
cláusula SIMILAR_TO para garantir que todos os dígitos estejam em
conformidade com a máscara que determinou e só formatá-los na exibição com
ponto e traço no lado cliente.

Em sex., 22 de nov. de 2019 às 16:13, Paulo Geloramo <
assisinformatica em gmail.com> escreveu:

> Boa tarde Marcos,
>
> Agradeço a solução mas como o Cantu disse
> esta solução somente a partir do Firebird 3,
> estou usando 2.5.9
> --
> Paulo Geloramo
>
>
> Em sex., 22 de nov. de 2019 às 14:52, Marcos R. Weimer
> <marcosweimer em gmail.com> escreveu:
> >
> > Paulo, pode testar essa que passei, nos usamos aqui e tem funcionado
> > perfeitamente.
> >
> >
> > -=Ma®©oS=-
> > Marcos R. Weimer
> > Pessoas quietas têm as mentes mais barulhentas - Stephen Hawking
> > Viver significa ter algumas alegrias e muito sofrimento - Pepe Mujica
> >
> >
> >
> >
> >
> > Em sex., 22 de nov. de 2019 às 14:33, Paulo Geloramo <
> > assisinformatica em gmail.com> escreveu:
> >
> > > Boa tarde Carlos,
> > >
> > > Replace não seria uma boa solução, pois
> > > este foi apenas um exemplo, no banco e
> > > capo IE pode ter barra, espaço, tab e outros caracteres.
> > >
> > > Seria muito útil ter a função NUMBER_ONLY nativa.
> > >
> > > Veja se poderia passar esta sugestão para os desenvolvedores.
> > >
> > > Vou testar a sugestão do Marcos.
> > > --
> > > Paulo Esteves
> > >
> > > Em sex., 22 de nov. de 2019 às 11:23, Carlos H. Cantu
> > > <listas em warmboot.com.br> escreveu:
> > > >
> > > > Vc pode usar a função interna replace pra remover os . e -
> > > >
> > > > []s
> > > > Carlos H. Cantu
> > > > eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
> > > > www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
> > > >
> > > > PG> Firebird 2.5.9
> > > >
> > > > PG> Quando necessitamos fazer uma pesquisa
> > > > PG> semelhante a este exemplo:
> > > >
> > > > PG> SELECT...
> > > > PG> FROM ...
> > > > PG> WHERE NUMBER_ONLY(IE) = 123456789
> > > >
> > > >
> > > > PG> No Banco a Inscrição Estadual pode estar com ou sem máscara:
> > > > PG> 12345678-9
> > > > PG> 123.456.789
> > > >
> > > > PG> Uma solução seria usar UDF.
> > > >
> > > > PG> Sem usar UDF tem alguma outra solução?
> > > > PG> --
> > > > PG> Paulo Esteves
> > > >
> > > >
> > > > ______________________________________________
> > > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > > Para consultar mensagens antigas:
> > > http://www.firebase.com.br/pesquisa_lista.html
> > >
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas:
> > > http://www.firebase.com.br/pesquisa_lista.html
> > >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>


-- 
A Vidy possui um Sistema de Gestão da Qualidade estruturado e com
Certificação ISO 9001 há mais de 10 anos, mantendo seu foco na Qualidade e
na Melhoria Continua.

Em março de2018 migramos com sucesso para a nova versão da ISO 9001.

Somos a única Empresa Brasileira de Engenharia de Laboratórios com
certificação com o Escopo Completo; desde Projetos, Engenharia, Construção,
Fabricação e Instalação de Laboratórios.



Mais detalhes sobre a lista de discussão lista