VB.NET to COBOL
The same routine, written by hand in VB.NET and in COBOL. It is here so you can see what changes and what does not before anyone quotes you anything.
What you have · VB.NET
Public Function Interest(balance As Decimal, rate As Decimal) As Decimal
Return Math.Round(balance * rate, 2)
End FunctionWhat it becomes · COBOL
IDENTIFICATION DIVISION.
PROGRAM-ID. INTEREST.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-BALANCE PIC S9(9)V99 COMP-3 VALUE 0.
01 WS-RATE PIC S9(1)V9(4) COMP-3 VALUE 0.0425.
01 WS-INTEREST PIC S9(9)V99 COMP-3.
PROCEDURE DIVISION.
COMPUTE WS-INTEREST ROUNDED = WS-BALANCE * WS-RATE
DISPLAY 'INTEREST: ' WS-INTEREST
STOP RUN.Reading two files side by side is the easy half. The hard half is the rest of the system: which files nothing calls any more, which job writes the record another one reads at 02:00, and whether the rewrite still produces the numbers your auditors saw last month. That work runs on our platform with an engineer watching it, and it starts with a look at your codebase.
When a converter stops being enough
Comparing two files is the easy half. Nothing on this page can tell you which files nothing calls any more, which batch job writes the record another one reads at 02:00, or whether the rewritten version still produces the numbers your auditors saw last month. The assessment answers that on your actual codebase.