Re: [firebase-br] Preenchendo com zeros à esquerda

Euler Jr. euler em siginformatica.com.br
Qua Jun 15 10:42:23 -03 2005


O FB/IB no diretorio UDF, acompanha o header das funcoes definidas em
fbudf.dll e ib_udf.dll. Registre a funcao LPAD (ib_udf.dll). Esta funcao
preeche qualquer caractere alinhado a esquerda, na quantidade informada.

O prototipo eh:
lpad(<coluna>,<quantidade>,<caractere>)

<coluna> pode ser string, float,integer,smallint

Ex.

SELECT LPAD(DEPARTAMENTO,10,'0') FROM ITENS WHERE CODIGOITEM='1';

Sera impresso:

0000000001
0000000238
0000000005

[]s
Euler Jr.

----- Original Message -----
From: "Ivan L. Seibel" <ivanseibel em gmail.com>
To: "Lista Firebase" <lista em firebase.com.br>
Sent: Wednesday, June 15, 2005 9:39 AM
Subject: [firebase-br] Preenchendo com zeros à esquerda


Bom dia,

Estou convertendo um banco de clientes FB1.5 para nosso sistema e
surgiu a necessidade de formatar valores numéricos com zeros à
esquerda.

Em vista disso, procurei por funções nativas do banco que pudessem
resolver o problema, mas não obtive sucesso.

A segunda alternativa seria trabalhar com uma UDF que seria na verdade
uma dll escrita em delphi a qual faria o processamento da string.
Trabalhando com a UDF, estou enfrentando dois problemas: o primeiro
seria qto à string d retorno q possui tamanho fixo (output parameter).
Isso realmente é inconveniente em vista de estar retornando espaços
desnecessários; o segundo seria o fato de que o parâmetro numérico que
é usado para saber qtas vezes repetir o caracter '0' está gerando um
erro de overflow na execução. Aparentemente a dll não está
reconhecendo o tipo de valor inteiro enviado.

Alguém q já tenha passado por algo semelhante poderia me dizer se há
alguma função nativa para tal tarefa e, se não houver, qual o tipo de
valor inteiro q devo esperar em minha dll para que a UDF processe sem
problemas.

Agradeço antecipadamente qq atenção e/ou ajuda,

[]'s,

Ivan L. Seibel
Analista/Desenvolvedor
Linux User nr #88493

CONECSOFT Consultoria e Informática
R. Major Gama, 967 - Centro Sul
CEP: 78020-170 Cuiabá - MT
WEB Site: www.conecsoft.com.br

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista