ANS85 

YEAR-TO-YYYY関数

YEAR-TO-YYYY 関数は、引数-1 を、年の下位の 2桁から 4桁の年へ変換する。引数-2 は実行時に年に追加された時、100年間隔の終了年を定義するか、または引数-1 が起こるところへのウィンドウの移動を定義する。この関数の型は整数である。

一般形式

      FUNCTION YEAR-TO-YYYY ( 引数-1 [引数-2] )

引数

  1. 引数-1 は 100 より小さい、負でない整数とする。

  2. 引数-2 は整数とする。

  3. 引数-2 が省略された場合、この関数は 50 が指定されたものとして評価される。

  4. 実行時の年と引数-2 の値の合計は、10,000 より小さく、1699より大きいものとする。

戻り値

  1. 最大年は次のように計算される。

    (FUNCTION NUMVAL (FUNCTION CURRENT-DATE (1:4)) + 引数-2)

    ここで、NUMVAL 関数の引数-2 は YEAR-TO-YYYY 関数自身の引数-2 と同じである。

  2. 同等の算術式は次のとおりである。

    1. 以下の条件が真のとき:

      (FUNCTION MOD (最大年, 100) > = 引数-1)

      同等の算術式:

      引数-1 + 100 * (FUNCTION INTEGER (最大年/100))

    2. それ以外のときの、同等の算術式:

      引数-1 + 100 * (FUNCTION INTEGER (最大年/100) - 1)

  1. 1995年では、FUNCTION YEAR-TO-YYYY (4, 23) の戻り値は2004 である。2008年では、FUNCTION YEAR-TO-YYYY (98, (-15))の戻り値は 1898 である。

  2. YEAR-TO-YYYY 関数はウィンドウ移動アルゴリズムを持っている。これをきまったウィンドウに使用するには、引数-2を次のように指定できる。ここで、固定最大年は固定した 100年間隔での最大年とする。

    (固定最大年 - FUNCTION NUMVAL (FUNCTION CURRENT-DATE (1:4)))

    決まったウィンドウが 1973 から 2072 の場合、2009 では引数-2 は値 63 を持ち、2019 では値 53 を持つ。