Q. RM互換とは何ですか?

旧バージョンからuniPaaSに移行するとき、「イベント化せずに、RM互換でも構いませんか?」と言われました。
イベント化とか、RM互換とは、どのような意味なのでしょう?

A. RM互換は旧バージョンと同様の作り方という意味です。

V9Plus以前と、V10以降とでは、オンラインタスク(対話処理型)の作り方が異なります。
※バッチタスク(一括処理型)は新旧のバージョンで特に違いはありません。

V9Plus以前(旧バージョンと呼びます)のオンラインタスクでは、レコードメインというところに設定されたコマンドを上から順番に処理するという動作をしていました。
これを「フロー中心」という表現をすることもあります。

それに対して、V10やuniPaaSではレコードメインが廃止され、イベントドリブンでオンラインタスクを作成するようになりました。
新規でプログラム作成する場合は、旧バージョンのレコードメインよりも、V10やuniPaaSのイベント型の方が、生産性もメンテナンス性も高いと思います。
また 、旧バージョンでは諦めていたような動作も、uniPaaSなら実現できるようになりました。

イベントドリブンのメリットは多々あるのですが、旧バージョンからの移行に限ってはレコードメインを使えた方が互換性が高くなるのも事実です。
そこで、RM互換(= レコードメイン互換)というロジックユニットを特別に用意して、互換性を上げる工夫がされているのです。

RM互換を使えば、旧バージョンのレコードメインと同様の動作をしてくれるので、移行工数が削減できます。
しかし、V10以降の新機能は、ほとんど使うことができません。
新機能を使いたい場合は、イベント化が必要ということになります。

尚、一つのアプリケーションの中で、RM互換のプログラムとイベント化されたプログラムの共存は可能です。
従って、既存の旧バージョンプログラムはRM互換で移行し、その後作成するプログラムはイベントドリブンでという案も有力です。

勿論、費用面で少し余力があるのなら、移行時にRM互換をイベント化するのが望ましいと思います。
そのときは、RMConverterというユーティリティも有効かもしれません。