intervalValue()

dateTimeLib.intervalValue() システム関数は、ソース・ストリングから INTERVAL 値を戻します。 EGL では、以前のバージョンとの互換性を保つことを目的として、この関数を維持しています。 新規のコードでは、単に TIME 変数にストリングを代入します。

関数の入力ストリングには、6 桁含まれている必要があります。 最初の 4 桁で間隔の年数を表し、最後の 2 桁で月の数を表します。 「yyyyMM」以外のパターンを指定するには、dateTimeLib.intervalValueWithPattern() を使用します。

文字列値を INTERVAL 値に変換するために、EGL は以下のメソッドを示された順序で使用します。
  1. EGL は、「yyyyMM」マスクを使用して、テキストを INTERVAL 値に構文解析します。EGL がこの方法でテキストを構文解析できない場合、次の方法を試します。
  2. EGL は、数字の間のセパレーターとして非数字を使用して、テキストを 2 つの数字のグループ、 すなわち 4 桁の年、および 2 桁の月に構文解析します。
    1. EGL は、最初はテキストの先頭にあるすべての非数字を無視します。
    2. 次に EGL は、INTERVAL 値の年フィールドで、以下の数字を使用します。EGL は、テキスト内に非数字を検出すると、 または 4 桁に到達すると、このフィールドへの桁の追加を停止します。
    3. EGL は、以下のすべての非数字をスキップします。
    4. 次に EGL は、月フィールドのそれぞれの 2 桁に対して、ステップ b および c を繰り返します。
    5. すべてのフィールドが埋まると、テキスト内のすべての残りの数字または非数字は無視されます。
    この処理によってパターンのそれぞれのフィールドごとに少なくとも 1 桁削減できなかった場合、 処理は失敗し、例外 TypeCastException がスローされます。

    この構文解析のプロセスの例については、dateValue()を参照してください。

構文

  dateTimeLib.intervalValue(intervalAsString STRING? in)
  returns (result INTERVAL?)
intervalAsString
間隔パターン yyyyMM によって意味が解釈される 6 桁の数字を含むストリング。
result
INTERVAL 変数。 intervalAsString が NULL の場合、 関数は NULL 値を戻します。

互換性

表 1. intervalValue の互換性に関する考慮事項
プラットフォーム 問題
Rich UI INTERVAL 値はサポートされません。

フィードバック