What if you have extensive applications developed
in COBOL and you need to adapt this application for the upcoming EURO-transition ?
What has to be changed in the COBOL
programs in question ?
WHERE have to be changes applied ?
Are they necessary at all?
This questions have been analyzed very carefully
here at DONAULAND, when firstly the Y2K-problems were tackled and then with the Euro-Transition.
The EURO*Transformer Toolset was created to
support us in our transition period.
The answers to above questions are (somewhat simplified)
as follows :
If the program does not contain any MONEY
field at all à
no changes are necessary
If the program does contain MONEY CONSTANTS
- for instance a fixed dispatching-fee of 15 currency units - the constant value has
to be replaced by its "new" value in the EURO currency
may occur both in the VALUE clause of any COBOL NUMERIC item, as well as a constant in
COBOL statements like COMPUTE, ADD, SUBTRACT, MULTIPLY, DIVIDE, MOVE, DISPLAY, etc, etc
MONEY constant values and MONEY variables
are NO DATA-TYPE in COBOL (in MS ACCESS, for instance, they are ...).
ANY NUMERIC field may contain a MONEY content, and therefore the proper constants used
in the same expression need to be MONEY constants as well ...
The Euro Program Analyser. EUROPA has been developed to support you in the following tasks:
detect all money value variables in your
detect all money value constants (as simple
values or as COBOL 88-conditions) in your program
replace all money value constants and 88-conditions
by proper parameters, which are initialized at program start the respective value in
the Current Currency (LOCAL or EURO currency)
optionally change the PICTURES of
INTEGER MONEY variables to include 2 decimal places
running EUROPA against your COBOL source programs provides an instant picture when and where MONEY
items in general (and MONEY
Constants in particular) are used
constants are recognized, the source code is modified
so that MONEY Parameters
are used instead.
Those Parameters are initialized at program start to the currently active Primary Currency (the Local
currency before the BIG
BANG, the Euro currency afterwards)
the external routine EUROINIV is used to obtain the primary and secondary currency, as well as the
needed to convert your local currency to/from EURO
by means of using an EXTERNAL
subroutine for the actual toggling of primary and
secondary currency, the system may be easily tested on a test machine without the need
to maintain multiple source codes
consequently, your program may run in a
DUAL mode: with the Local Currency as the primary up
to the BIG BANG,
and the Euro afterwards
The solution is intuitive and easily understood
following the currency transition the Dual Currency Feature may be
easily turned off again
IBM Platforms CMS, OS/390 as compressed/compiled
Java virtual machine (JVM) for Windows 95
Java virtual machine (JVM) for Unix/Linux