ADD-DURATION 関数は、日付、時刻、またはタイム・スタンプの項目に期間を加算し、その変更した項目を戻します。
関数タイプは日時です。
戻り値の長さは、引数-1 に指定する日付項目、時刻項目、またはタイム・スタンプ項目の長さによって決まります。
戻り値は、引数-1 の長さまで切り捨てられます。 
日付項目に期間を加算する場合は、戻される日付は、以下に示す特定の範囲内の値でなければなりません。
- 4 桁の日付の場合は 0001/01/01 から 9999/12/31 までの範囲内でなければならない。
- 2 桁の日付の場合は 0001/01/01 から 9999/12/31 までの範囲内でなければならない。
ただし、年の部分は 2 桁に切り捨てられます。
- 3 桁の年 (1 桁の世紀と 2 桁の年) の場合は 1900/01/01 から 2899/12/31 (デフォルト) までの範囲内でなければならない。
この範囲は DATTIM PROCESS ステートメント・オプションを指定することによって変更できます。
2 桁の日付項目に期間を加算する場合の戻り値の範囲は 4 桁の年の場合と同じです。
ただし、戻り値の年の部分は 2 桁に切り捨てられます。

フォーマット
.------------.
V |
>>-FUNCTION ADD-DURATION--(--引数-1----引数-2--引数-3-+--)-----------><
- 引数-1
- 日付、時刻、またはタイム・スタンプのデータ項目でなければなりません。
引数-1 は、期間を加算される値が入っているデータ項目です。
期間は引数-2 と引数-3 に指定します。
- 引数-2
- 引数-2 は期間を表すキーワードです。
有効な期間キーワードを以下に示します。
- YEARS
- MONTHS
- DAYS
- HOURS
- MINUTES
- SECONDS
- MICROSECONDS
PICOSECONDS 
期間キーワードと引数-1 との間で整合性がとれている必要があります。
例えば、期間キーワードは以下の規則に従わなければなりません。
- YEARS、MONTHS、および DAYS は、日付項目またはタイム・スタンプ項目に対してのみ加算することができる。
- HOURS、MINUTES、SECONDS、および MICROSECONDS は、時刻項目またはタイム・スタンプ項目に対してのみ加算することができる。
PICOSECONDS は、タイム・スタンプ項目にのみ加算できます。 
- 引数-3
- 整数算術式でなければなりません。
引数-3 は、引数-2 で指定した期間の単位数であり、引数-1 に加算されます。
引数-3 は負の整数でも構いませんが、この関数が取るのはその絶対値だけです。
引数-3 が 9 桁よりも長い場合は切り捨てが行われます。
引数-2 および引数-3 は反復可能です。
ただし、1 つの組み込み関数の中に重複する引数-2 があってはなりません。
日付に期間を加算した結果が無効となった場合は、その日付に対する調整が行われます。
例えば、1997 年 3 月 31 日という日付に期間 1 月を加算すると、
その結果は 1997 年 4 月 31 日という無効な日付となります。
このような場合、この日付は 1997 年 4 月 30 日という有効な日付に調整されます。