Euro Currency Sign
A currency symbol represents a monetary value. It’s inserted into data items used as receiving items and removed from data items used as sending items for numeric or numeric-edited receivers. Currency sign values typically identify the monetary units stored in a data item, for example, ‘$’, ‘EUR’, ‘CHF’, ‘JPY’, ‘HK$’, ‘HKD’, or even hexadecimal representations like X’9F’ for the Euro Currency Sign (€) in some EBCDIC code pages.
The CURRENCY SIGN
clause in programming languages like COBOL allows developers to specify a currency sign value and its corresponding symbol used in a PICTURE
clause. This clause provides flexibility beyond default currency symbols. Multiple CURRENCY SIGN
clauses can exist within the SPECIAL-NAMES
paragraph, each defining a different currency symbol. Importantly, currency symbols are case-sensitive, meaning ‘D’ and ‘d’ would be interpreted as distinct symbols.
When the PICTURE SYMBOL
phrase is omitted, the CURRENCY SIGN
clause defines both the currency sign value and its symbol using a single-character alphanumeric literal. This literal is restricted from using digits 0-9, specific uppercase and lowercase letters (A, B, C, D, E, G, N, P, R, S, U, V, X, Z, and their lowercase counterparts), spaces, and common special characters like +, -, ‘,’, ‘.’, ‘*’, ‘/’, ‘;’, ‘(‘, ‘)’, ‘”‘, ‘=’, and ”’. However, lowercase letters like ‘f’, ‘h’, ‘i’, ‘j’, ‘k’, ‘l’, ‘m’, ‘o’, ‘q’, ‘t’, ‘w’, and ‘y’ are permitted.
Conversely, when the PICTURE SYMBOL
phrase is included, the CURRENCY SIGN
clause specifies the currency sign value while literal-7
in the PICTURE SYMBOL
phrase defines the currency symbol. In this case, the currency sign value can be one or more characters but cannot contain digits 0-9 or the special characters ‘+’, ‘-‘, ‘.’, and ‘,’. The PICTURE SYMBOL
itself must be a single-byte alphanumeric character, excluding figurative constants, digits 0-9, specific alphabetic characters (A, B, C, D, E, G, N, P, R, S, U, V, X, Z and their lowercase equivalents), the space character, and various special characters (+, -, ‘,’, ‘.’, ‘*’, ‘/’, ‘;’, ‘(‘, ‘)’, ‘”‘, ‘=’, ”’).
The CURRENCY SIGN
clause overrides compiler options like CURRENCY
and NOCURRENCY
. If the CURRENCY SIGN
clause is absent and the NOCURRENCY
option is active, the dollar sign ($) becomes the default currency sign and symbol. This mechanism ensures consistent handling of currency representations within the application.