このような非互換性のほとんどは、関連するデータ項目を再定義するか、比較を再コーディングすることで解決できます。Enterprise Developer で英数字から数字へのデータ項目の MOVE 文を含むプログラムをサブミットすると、このことを示す警告メッセージが表示されます。
次のデータ項目および手続き文を含むソース プログラムをサブミットすると、指定したテストは実行時に失敗します。
01 numeric-field pic 9(5). procedure division. move "abc" to numeric-field. if numeric-field = "00abc" ....
RM コンパイラ指令が設定されている場合、Enterprise Developer では、数字項目を右揃えの英数字項目として扱うことで、英数字から数字への MOVE に関する RM/COBOL の動作を部分的にエミュレートします。ただし、RM/COBOL ではリテラル ABC は数字として扱われ、00ABC は数字項目に配置されるため、上記の例は依然として失敗します。Enterprise Developer で文を正常に実行するには、ソース プログラムのテストを次のように修正します。
if numeric-field = " abc"
修正後に、ソース プログラムを再度サブミットします。