galera, pesquisei no google mas nenhum funcionou.
alguém sabe ?
galera, pesquisei no google mas nenhum funcionou.
alguém sabe ?
No banco vc coloca o valor bruto, exemplo:
11912345678
Agora pra passar pra uma linguagem de programação vc formata:
(11) 91234-5678
Se quiser criar uma máscara via SQL aqui eu tenho um exemplo usando regex e tratando números com 10 e 11 dígitos.
private String sqlConsultaBase() {
sql.delete(0, sql.length());
sql.append(" SELECT CC.CODCONTATO, CC.CODPESSOA, CP.NOMPESSOA, CC.DESCONTATO, CC.NUMTELEFONE, CC.DESEMAIL, CC.INDSITUACAO, CC.INDTIPOCONTATO, ");
sql.append(" CASE CHAR_LENGTH(CC.NUMTELEFONE) WHEN 11 THEN regexp_replace(LPAD(CC.NUMTELEFONE, 11, '0'), '([0-9]{2})([0-9]{5})([0-9]{4})','(\\1) \\2-\\3') ");
sql.append(" WHEN 10 THEN regexp_replace(LPAD(CC.NUMTELEFONE, 10, '0'), '([0-9]{2})([0-9]{4})([0-9]{4})','(\\1) \\2-\\3') END AS NUMTELEFONEF, ");
sql.append(" CASE CC.INDSITUACAO WHEN 'A' THEN 'ATIVO' ELSE 'INATIVO' END AS SITUACAO, ");
sql.append(" CASE CC.INDTIPOCONTATO WHEN 'P' THEN 'PRINCIPAL' ELSE 'OUTROS' END AS TIPOCONTATO, ");
sql.append(" TO_CHAR(CC.DATCADASTRO, 'DD/MM/YYYY') AS DATA ");
sql.append(" FROM CADCONTATO CC ");
sql.append(" INNER JOIN CADPESSOA CP ON(CC.CODPESSOA = CP.CODPESSOA) ");
return sql.toString();
}
a ideia é sair formatado no jasper.
o sql acima não funcionou. está saindo errado.
também estou aceitando ideias de como formatar no jasper
A própria ferramenta já oferece recursos de formatação, basta olhar as propriedades do field desejado e adicionar um pattern ao mesmo.
Como sua pergunta se referia ao postgres imaginei que queria formatar uma saída de um SQL, se tivesse dito com mais clareza que estava tentando formatar uma data no Jasper a comunidade teria te ajudado com maior assertividade.
resolvido!
Select
sgi_instituicao.ins_int_id,
sgi_instituicao.ins_bin_logo,
'('||SUBSTRING (ins_txt_telefone, 1, 2)||')' ||SUBSTRING (ins_txt_telefone, 3, 4)||'-'||SUBSTRING (ins_txt_telefone, 7, 8) as ins_txt_telefone,
sgi_instituicao.ins_txt_email,
sgi_instituicao.ins_txt_instituicao,
sgi_instituicao.ins_txt_cnpj
From
sgi_instituicao
where sgi_instituicao.ins_int_id= 2