SP de StrZero, tem como?

Firebird

24/04/2005

Olá, tem como eu fazer uma SP, que faça um StrZero num numero que eu forneça? pois UDF é dificil usar, pois nao sei como fazer pra linux :D

Como ficaria esta SP?


desde ja agradeco


Titanius

Titanius

Curtidas 0

Respostas

Titanius

Titanius

24/04/2005

só acrescentando, deveria ficar assim

SPStrZero(Numero, QntZeros)

e me retornaria o numero com os zeros a esquerda



[]s


GOSTEI 0
Digitom

Digitom

24/04/2005

Vê aí se te serve: Voce passa o numero desejado, e a quantidade de caracteres que vai ter o numero.

[b:ad51290075]
CREATE PROCEDURE ACRESZERO (
NUMERO VARCHAR(15),
TAMANHO INTEGER)
RETURNS (
RETORNO VARCHAR(15))
AS
DECLARE VARIABLE AUXILIO VARCHAR(15);
DECLARE VARIABLE CONTADOR INTEGER;
begin
/* Procedure Text */
auxilio = ´´;
if (cast(:numero as integer) < 10000) then
tamanho = 1;
if (cast(:numero as integer) < 1000) then
tamanho = 2;
if (cast(:numero as integer) < 100) then
tamanho = 3;
if (cast(:numero as integer) < 10) then
tamanho = 4;
contador = 0;
while (:contador < tamanho ) do
begin
auxilio = auxilio || ´0´;
contador = contador + 1;
end
retorno = cast(:auxilio || :numero as char(5));
suspend;
end
[/b:ad51290075]



Brigadu.

Morais


GOSTEI 0
Gandalf.nho

Gandalf.nho

24/04/2005

Se não me engano a biblioteca rFunc tem uma função que permite fazer isso, não só com zeros mas cm qualquer caracter que vc quiser, e a mesma tem uma versão para Linux. [url]http://rfunc.sourceforge.net/[/url]


GOSTEI 0
POSTAR