Overview: This article describes the Monarch Core’s Encore RPG, its RPG migration component that enables migrating ILE RPG or RPG/400 to Encore RPG or C#.
The original version of ASNA Monarch produced only ASNA Visual RPG (AVR) directly for IBM i RPG application migrations. (ASNA Visual RPG is our .NET Framework-based RPG development environment.) For many years, AVR was a desirable, strategic target. However, as time went on, we encountered many shops who needed Monarch to produce C#. To resolve that, we created an adjunct facility for Monarch called Serengeti that, with some effort, could produce C#. The C# produced was clean, good C# but the Serengeti process to produce that C# imposed more friction than was desirable.
Monarch Core’s RPG Migration Agent produces what we call Encore RPG. With Monarch Core, Encore RPG solves the challenge of producing either an RPG-based result or a C# result from the same Monarch-migrated project. Encore RPG is similar in syntax to Visual RPG. The big difference is that Encore RPG produces either a .NET Core executable or a corresponding C# project that targets .NET Core. Figure 1 below shows the Encore RPG workflow.
Our migration prospects generally describe one of two migration needs to us:
Regardless of how strongly a given shop feels about its migration path, the flexibility of targeting RPG initially provides substantial benefits for either ultimate migration path:
In either case, it’s important to remember that the RPG estate application isn’t documented (or if it is, those docs are old and out of date). All of the behaviors, the workarounds, and the anomalies (kind word for bugs!) are embedded in your RPG programmer’s heads. These RPG programmers are a highly valuable asset to have engaged in the application migration project. Using Encore RPG’s RPG migration path initially is a superb way to help get that knowledge passed off to the C# team. Once absorbed, it’s easy then to create a pure C# version.
Encore RPG implements all ILE RPG and RPG/400 idioms. With either its RPG migration path or its C# migration path, Encore RPG is the natural evolution of RPG to .NET Core.
Encore RPG features:
ASNA Visual RPG (AVR) produces fat Windows clients and ASP.NET Webforms projects. It targets the original .NET Framework. While Encore RPG is syntactically very similar to Visual RPG, Encore RPG and Visual RPG are two separate products with two separate purposes. Encore RPG is exclusively for the Monarch Core application domain. There isn’t an upgrade path from Visual RPG to Encore RPG.
Although Monarch Core and Encore RPG both have some new code, many of their core facilities are ports from our mature and proven .NET Framework-based migration suite. With .NET Core under it, and C# easily available, Monarch Core is a superb, long-term solution for your business—no matter what your desired target migration language is.
We’re very proud of what we’ve done with Monarch Core. Integrating Encore RPG into Monarch gives managers never-available-before migration options. These options mitigate risk, facilitate effective interaction between your RPG and C# teams, and ensure that your business will never be without its line-of-business RPG application—even when it turns into C#!