|
|
 | | From: | Herberto Silva | | Subject: | zeros a esquerda | | Date: | Tue, 04 Jan 2005 10:18:28 +0000 |
|
|
 | Qual a função a utiliar para colocar zeros a esquerda num campo char que utilize numeros?
|
|
 | | From: | Wagner J.Rocha | | Subject: | Re: zeros a esquerda | | Date: | Tue, 4 Jan 2005 08:26:00 -0200 |
|
|
 | Eu utilizo esta função.
*========================================================= function pad() *========================================================= /* Objetivo: Retorna o texto com o tamanho determinado e preenchido com o caracter determinado a direita,esuqerda ou centralizado.
Parametros: texto = String a ser analisada tamanho = tamanho do retorno, caso o texto informado for maior que o tamanho este será truncado. caracter = caracter que será utilizado para pre encher o que falta (DEFAULT " ") referncia = determina a regra para o preenchimento do texto. E ou L preeenche a esquerda C centraliza o texto D ou R preenche a direita
RETORNO: retorna o texto formatado
*/ Parameters Xtexto,tamanho,caracter,referencia LOCAL texto
if type("xTexto" ) = "C" Texto = rtrim(ltrim(xTexto)) elseif type ("xTexto" ) = "N" Texto = rtrim(ltrim( str(xTexto) ) ) else Texto = "" endif
if type("tamanho") <> "N" tamanho = 10 endif if type( "caracter" ) <> "C" caracter = space(1) endif caracter = substr( caracter,1,1 )
if type( "referencia" ) <> "C" referencia = "D" endif
texto = rtrim(ltrim( Texto )) caracter = substr( caracter,1,1 ) referencia = lower( referencia )
// verifica se o texto de entrada é maior que o tamanho // desejado, se for trunca. if len(texto) > tamanho texto = substr( texto,1,tamanho ) else if referencia $ "el" texto = replicate( caracter ,tamanho-len(texto) ) +; texto elseif referencia = "c" texto = replicate( caracter ,(tamanho-len(texto))/2)+; texto texto = texto + ; replicate( caracter ,tamanho-len(texto) ) else texto = texto + ; replicate( caracter ,tamanho-len(texto) ) endif endif
return texto
|
|
|