システム全体で日付の範囲と無効な日付の振る舞いを設定します。
Synopsis
$ZUTIL(69,32,n)
$ZU(69,32,n)
パラメータ
n システム全体で Caché 形式の日付の振る舞いを使用するかどうかを指定するブーリアン値
概要
$ZUTIL(69,32) には、以下の 2 つの機能があります。
$ZUTIL(69,32) は、$ZDATE の振る舞いのみに影響し、その他の日付と時間関数には影響しません。
n を指定せずに $ZUTIL(69,32) を呼び出すと、現在のスイッチ設定が返されます。
パラメータ
n
使用する日付の範囲を設定するスイッチ。0 は Caché の標準的で有効な日付範囲を使用します (既定)。1 は ISM と互換性のある有効な日付範囲を使用します。
メモ
有効な日付範囲の設定
$ZUTIL(69,32,0) は、Caché の有効な日付範囲を設定します。この範囲は 0 から 2980013 までで、これは 1840/12/31 から 9999/12/31 までの日付に対応します。この範囲は $ZDATEmindatemaxdate のパラメータを設定することで制限できます。
$ZUTIL(69,32,1) は、ISM と互換性のある有効な日付範囲を設定します。この範囲は 1 から 94232 までです。これは、1841/01/01/ から 2098/12/30 までの日付に対応します。この日付範囲は、パラメータが 3 つ以下の任意の $ZDATE 関数の呼び出しに設定できます。$ZDATE 関数が 3 つより多くのパラメータを呼び出す場合、有効な日付範囲は、$ZDATEmindate パラメータと maxdate パラメータ (指定がある場合)、あるいは現在のロケールに設定された日付範囲のいずれかから取得されます。
$ZUTIL(69,32) の既定の設定は、Caché 製品の場合はすべて 0 で、ISM 製品の場合はすべて 1 です。
無効な日付の振る舞いの設定
無効な日付とは、正の数以外の数あるいは前述で指定した有効な日付範囲以外の値です。
無効な日付を設定すると、$ZUTIL(69,32,0)$ZDATE がエラー・メッセージ <ILLEGAL VALUE> あるいは <VALUE OUT OF RANGE> を返すようにします。この振る舞いは、$ZDATE の呼び出しで erropt を指定することによりオーバーライドできます。
無効な日付を設定すると、$ZUTIL(69,32,1)$ZDATE が NULL 文字列を返すようにします。この振る舞いは、パラメータの数に関係なく、すべての $ZDATE 関数呼び出しに設定されます。
この構成の既定は、システム管理ポータルでは変更できません。
$ZUTIL(69,32) を設定すると、[システム構成] の既定はオーバーライドされますが、既定の設定は変更されません。
$ZUTIL(69,32) の呼び出し
新規プロセスが生成されると、その $ZDATE の振る舞いは、現在の [システム構成] の既定と $ZUTIL(69,32) から初期化されます。$ZUTIL(68,32) を呼び出すと、現在のプロセスをこの振る舞いに置き換えます。$ZUTIL(69,32) の設定を変更すると、既存のプロセスではなく、次に作成したプロセスにのみ影響します。
関連項目