算術式の中の日付フィールドに関する制限のために、以前は正常にコンパイルされたプログラムが、今では一部のデータ項目が日付フィールドに変更された結果、診断メッセージが出るようになることがあります。
01 Dates-Record.
03 Start-Year-1 Pic 99 Date Format yy.
03 End-Year-1 Pic 99 Date Format yy.
03 Start-Year-2 Pic 99 Date Format yy.
03 End-Year-2 Pic 99 Date Format yy.
. . .
Compute End-Year-2 = Start-Year-2 + End-Year-1 - Start-Year-1.
上の例では、評価される最初の算術式は次のものです。
Start-Year-2 + End-Year-1
しかし、2 つの日付フィールドを加算することは許可されません。これらの日付フィールドを解決するためには、括弧を使用して、許可される算術式の部分を分離しなければなりません。以下に例を示します。
Compute End-Year-2 = Start-Year-2 + (End-Year-1 - Start-Year-1).
この場合、評価される最初の算術式は次のものです。
End-Year-1 - Start-Year-1
ある日付フィールドから別の日付フィールドを減算することは許可され、非日付の結果が与えられます。次に、この非日付の結果が日付フィールド End-Year-1 に加算され、日付フィールドの結果が与えられ、これが End-Year-2 に保管されます。