最近のアクセス:
Today 関数

現在の日付を返します。


構文

Today()


戻されるタイプ:
Date


適用範囲

オブジェクト: ProcedureTransactionWeb PanelWork Panel


注:
  • iSeries 環境では、この関数はシステムの日付ではなくジョブの開始日を返します。これにより、現在の日付と異なる日付のジョブを実行でき、また、この日付をプログラムで使用できます。
  • 実際のシステムの日付を使用する場合は、Sysdate() 関数を参照してください。
  • PC 環境ではシステムの日付を返すため、Today 関数と Sysdate 関数は同等になります。


次の Transaction オブジェクトがあるとします:
Customer
{
   CustomerId*
   CustomerName
   CustomerPhone
   CustomerDateOfBirth
   CustomerAddedDate
}
1)トランザクションの  [ Rules ] エレメントで、以下のルールを定義できます:
Default(CustomerDateOfBirth, Today());
Error("The date of birth cannot be higher than today.") if CustomerDateOfBirth > Today();
Default ルールは、新しいレコードを挿入するときだけトリガーされます。そのため、最初のルールは現在の日付を既定として CustomerDateOfBirth 項目属性を初期化し、エンドユーザーが値を変更できます。
2 つ目のルールは、CustomerDateOfBirth が現在の日付より後かどうかを検証します。そうである場合はエラーテキストを表示します。 
2)さらに、同じトランザクションの [ Rules ] エレメントで、以下のルールを定義できます:
Default(CustomerAddedDate, Today());
Noaccept(CustomerAddedDate);
この Default ルールは、現在の日付を既定として CustomerAddedDate 項目属性を初期化します。さらに NoAccept ルールが、CustomerAddedDate 項目属性の編集を無効にします。したがって、CustomerAddedDate 項目属性には現在の日付が設定され、その値を更新することはできません。
3) ここで、 [ Web Layout ] に変数 &StartDate と 1 つのボタンを含む Web Panel オブジェクトについて考えます。エンドユーザーは変数に日付を入力する必要があり、ボタンをクリックすると、関連するイベントが、&StartDate が空であるか、現在の日付よりも後かどうかを検証する必要があります。これらのどれにも当てはまらない場合、&StartDate 値以降に挿入されたすべての顧客をナビゲートし、何らかのアクションを実行する必要があります。 
ボタンに関連付けられたイベントには、以下のコードが含まれています:
Event 'Processes customers'
    If &DateFrom.IsEmpty()
        msg("The date must not be empty")
    Else
        If &DateFrom > Today()  
            msg("The date must not be higher than today")
        else
            For each Customer
              where CustomerAddedDate < &DateFrom
              //何らかの処理
            endfor  
        endif
    endif
Endevent


参考情報

Sysdate 関数
GxRemove 変数

       

サブページ
Created: 14/09/18 03:44 by Admin Last update: 24/12/16 23:23 by Admin
カテゴリ
Powered by GXwiki 3.0