Adiciona caracteres de preenchimento à esquerda do conteúdo de uma variável.

Sintaxe

PadL( < xExp >, < nLen >, [ cFill ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

xExp

qualquer

Indica um valor no qual serão inseridos caracteres de preenchimento.

X

 

nLen

numérico

Indica o tamanho da string que será retornada.

X

 

cFill

caractere

Indica o caractere que será inserido no parâmetro.

 

 

Retorno

Nome

Tipo

Descrição

cRet

caractere

Retorna uma string com o tamanho indicado em nLen contendo o valor indicado em xExp preenchido à esquerda com o caractere indicado em cFill.

Observações

  • PadL transforma o valor apontado por xExp em string (igual ao comportamento da função cValToChar), e adiciona o caractere definido em cFill à esquerda do valor de xExp até que o comprimento especificado em nLen seja atingido.
  • Caso o comprimento de xExp convertido para string for maior que o especificado em nLen, a função retornará o conteúdo de xExp truncado, de forma que o seu comprimento final seja igual ao definido em nLen.
  • Caso cFill não seja especificado, o padrão é o espaço em branco (" ").
  • A função utilizará apenas o primeiro caractere da string apontada por cFill.
  • Caso a nLen seja menor ou igual a 0 (zero), a função retornará uma string vazia ("").
  • As funções PadC, PadL e PadR são muito úteis para a apresentação de dados, através de uma string, dentro de uma área de determinado comprimento. Elas são normalmente utilizadas para se obter alinhamento, à esquerda ou à direita, ou para centralizar os dados que serão apresentados pelas funções do AdvPL na tela ou na impressora.
  • A função LTrim é o inverso da função PadL.

Exemplos

Exemplo 1
#define CRLF Chr(13)+Chr(10)
user function mypadl()
  Local cMsg := ""
  
  cMsg += ( 'PadL( "Light", 9 ) --- "' + PadL( "Light", 9 ) + '"' + CRLF )
  cMsg += ( 'PadL( "Light", 9, "@" ) --- "' + PadL( "Light", 9, "@" ) + '"' + CRLF )
  cMsg += ( 'PadL( "Light", 9, "@%" ) --- "' + PadL( "Light", 9, "@%" ) + '"' + CRLF )
  cMsg += ( 'PadL( "Light", 3 ) --- "' + PadL( "Light", 3 ) + '"' + CRLF )
  cMsg += ( 'PadL( .T., 9 ) --- "' + PadL( .T., 9 ) + '"' + CRLF )
  cMsg += ( 'PadL( 123, 9 ) --- "' + PadL( 123, 9 ) + '"' + CRLF )

return MsgInfo( cMsg, "PadL Example" )

Resultado do Exemplo

Abrangência

Todas as versões

Veja também

  • Sem rótulos

1 comentário

  1. A descrição e explicação das Funções PadR e PadL estão incorretas e confusas.

    Em PadR a string informada em "Expressão" (informada no 1º parâmetro) será alinhada à esquerda, e o "Caractere" (informado no 3º parâmetro) irá complementar a string à direita até o seu "Comprimento" (informado no 2º parâmetro).

    Em PadL é exatamente o contrário, ou seja, alinha a "Expressão" à direita, e acrescenta caracteres à esquerda.

    Logo:

    PadR acrescenta caracteres à direita (Right) da expressão informada; e

    PadL acrescenta caracteres à esquerda (Left) da expressão informada.

    Se "Caractere" não for informado serão acrescentados espaços em branco.

    Exemplo:

    Padr("Teste",10)
    "Teste     "

    PadL("Teste",10)
    "     Teste"