Páginas filhas
  • LOG0380_extenso_moeda

Retorna um valor monetário por extenso, informando o código da moeda desejada.

Sintaxe

log0380_extenso_moeda(<l_cod_moeda>, <p_val> , <l_comp_l1> , <l_comp_l2> , <l_comp_l3> , <l_comp_l4>) => CHAR, CHAR, CHAR, CHAR

Parâmetros

Nome

Tipo

Obrigatório?

Descrição

l_cod_moeda
SMALLINT

SIM

Código da moeda.

(aviso) Precisam existir informações registradas na tabela MOEDA_COMPL. Estes dados são utilizados para montar a descrição por extenso de cada moeda. As informações são cadastradas de forma silábica. Para maiores detalhes acesse documentação do programa CON10008.

p_val
DECIMAL(15,2)
SIM

Valor que deseja obter o a descrição por extenso.

l_comp_l1

SMALLINT

SIM

Tamanho de caracteres da descrição por extenso a ser retornado como primeira linha de dados.

Para mais detalhes a respeito deste parâmetro acesse o tópico Observações abaixo.

l_comp_l2
SMALLINTSIM

Tamanho de caracteres da descrição por extenso a ser retornado como segunda linha de dados.

Para mais detalhes a respeito deste parâmetro acesse o tópico Observações abaixo.

l_comp_l3
SMALLINTSIM

Tamanho de caracteres da descrição por extenso a ser retornado como terceira linha de dados.

Para mais detalhes a respeito deste parâmetro acesse o tópico Observações abaixo.

l_comp_l4
SMALLINTSIM

Tamanho de caracteres da descrição por extenso a ser retornado como quarta linha de dados.

Para mais detalhes a respeito deste parâmetro acesse o tópico Observações abaixo.


Retorno

Tipo

Descrição

CHAR

Valor monetário por extenso da primeira linha.

CHAR

Valor monetário por extenso da segunda linha.

CHAR

Valor monetário por extenso da terceira linha.

CHAR

Valor monetário por extenso da quarta linha.

Exemplo

DATABASE logix

MAIN
  DEFINE l_lin3 VARCHAR(200),
         l_lin4 VARCHAR(200),
         l_lin1 VARCHAR(200),
         l_lin2 VARCHAR(200)

  CALL log0380_extenso_moeda(1, 11183.18, 50, 70,70, 100) RETURNING l_lin1, l_lin2, l_lin3, l_lin4

  CALL conout("EXTENSO LINHA 1 = "||l_lin1)
  CALL conout("EXTENSO LINHA 2 = "||l_lin2)
  CALL conout("EXTENSO LINHA 3 = "||l_lin3)
  CALL conout("EXTENSO LINHA 4 = "||l_lin4)
END MAIN

Informações

Fontes: log0380.4gl

Observações

Os parâmetros de tamanho de linha (parâmetros l_comp_l1, l_comp_l2, l_comp_l3 e l_comp_l4) tem como objetivo permitir a divisão do valor por extenso em até 4 linhas de texto, respeitando a separação silábica. O valor por extenso, quando é impresso em um cheque, por exemplo, precisa ser impresso em mais linhas e com isso existe a necessidade de retornar o valor em até 4 linhas, podendo definir a quantidade de caracteres desse valor por extenso em cada linha, respeitando a separação silábica quando quando ocorrer a falta de espaço em uma linha para uma palavra completa.


Exemplo:

   VALOR: 12,19

   Linha 1 com 20 caracteres: "Doze reais e dezeno-"   

   Linha 2 com 30 caracteres: "ve centavos"