DATE 属性によって、日付パターンによって宣言された 2 つの変数の代入において、暗黙的な変換も行われます。
dcl start_date char(6) date; start_date = ''; ...
dcl x char(6) date;
dcl y char(8) date('YYYYMMDD');
y = '20600101';
x = y; /* raises error if window is <= 1960 */ウィンドウ操作による解決方法を選択しない場合でも、2 桁年と 4 桁年の両方を取り扱う必要のあるコードがあります。このような場合は、次のように、複数の日付パターンを使用できます。
dcl old_date char(6) date('YYMMDD');
dcl new_date char(8) date('YYYYMMDD');
new_date = old_date;