COBOL - Coding your program - Using currency signs



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

COBOL - Codificando seu programa - Usando símbolos monetários
Enterprise COBOL for z/OS, Version 4.2

Muitos programas precisam processar informações financeiras e apresentar essas informações usando os símbolos monetários apropriados.
Com o suporte para moedas COBOL (e a página de código apropriada para sua impressora ou visor), você pode usar vários símbolos de moeda em um programa.

Você pode usar um ou mais dos seguintes sinais:

  • Símbolos como o cifrão ($)
  • Sinais de moeda com mais de um caracter (como USD ou EUR)
  • Sinal do euro, estabelecido pela Economic and Monetary Union (EMU) - (União Econômica e Monetária (UEM))

Para especificar os símbolos para exibição de informações financeiras, use a cláusula CURRENCY SIGN (no parágrafo SPECIAL-NAMES na CONFIGURATION SECTION) com os caracteres PICTURE que se relacionam a esses símbolos.
No exemplo a seguir, o caractere PICTURE $ indica que o sinal de moeda $ US deve ser usado:

           CURRENCY SIGN IS "$US" WITH PICTURE SYMBOL "$".
           . . .
       77  INVOICE-AMOUNT      PIC $$,$$9.99.
           . . .
           DISPLAY "Invoice amount is " INVOICE-AMOUNT.

Neste exemplo, se INVOICE-AMOUNT contivesse 1.500,00, a saída de exibição seria:

       INVOICE AMOUNT IS  $US1,500.00

Ao usar mais de uma cláusula CURRENCY SIGN em seu programa, você pode permitir que vários sinais de moeda sejam exibidos.

Você pode usar um literal hexadecimal para indicar o valor do sinal de moeda.
Usar um literal hexadecimal pode ser útil se o método de entrada de dados para o programa de origem não permitir a entrada dos caracteres pretendidos facilmente.
O exemplo a seguir mostra o valor hexadecimal X'9F 'usado como o símbolo da moeda:

    CURRENCY SIGN X'9F' WITH PICTURE SYMBOL 'U'.
    . . .
    01  DEPOSIT-AMOUNT       PIC UUUUU9.99.

Se não houver nenhum caractere correspondente para o símbolo do euro em seu teclado, você precisará especificá-lo como um valor hexadecimal na cláusula CURRENCY SIGN.
O valor hexadecimal para o símbolo do euro é X'9F 'ou X'5A', dependendo da página de código em uso, conforme mostrado na tabela a seguir.

Tabela 1. Valores hexadecimais do sinal do euro

Página de código CCSID Países aplicáveis Modificado de Símbolo do euro
1140 USA, Canada, Netherlands, Portugal, Australia, New Zealand 037 X'9F'
1141 Austria, Germany 273 X'9F'
1142 Denmark, Norway 277 X'5A'
1143 Finland, Sweden 278 X'5A'
1144 Italy 280 X'9F'
1145 Spain, Latin America - Spanish 284 X'9F'
1146 UK 285 X'9F'
1147 France 297 X'9F'
1148 Belgium, Canada, Switzerland 500 X'9F'
1149 Iceland 871 X'9F'

Referências Relacionadas:


© Copyright IBM Corp.