例: 日付/時刻演算を実行する

  1. @Created。次のエージェントの例は、文書が 1995 年より前に作成されていれば [Status] フィールドに「Archive」と書き込み、それ以外の場合は「Current®」と書き込みます。
    SELECT @All;
    FIELD Status := @If(@Created < [01/01/95 12:00:00 AM]; "Archive"; "Current");
  2. @Modified、@Date、@Today、@Yesterday。次のエージェントの例は、カレント文書が最後に修正された日付に応じて、[ViewStatus] フィールドに「Today」、「Yesterday」、「Old」を書き込みます。
    FIELD ViewStatus := @If(@Date(@Modified) = @Today; "Today"; @Date(@Modified) = @Yesterday; "Yesterday"; "Old");
    SELECT @All
  3. @Modified、@Date、@Weekday、@Today、@Adjust、@Yesterday。次のエージェントの例は、上記の例を修正して、「Yesterday」の割り当てから週末を除外します。今日が月曜日なら、y は今日の日付から 3 日を引いた日付に設定され、それ以外の場合は昨日の日付に設定されます。その後、@Modified の日付に対して @Yesterday の代わりに y でテストします。
    d := @Date(@Modified);
    y := @If(@Weekday(@Today) = 2; @Adjust(@Today; 0; 0; -3; 0; 0; 0); @Yesterday);
    FIELD ViewStatus := @If(d = @Today; "Today"; d = y; "Yesterday"; "Old");
    SELECT @All
  4. @Now、@Month、@Year、@Day。計算結果のテキストフィールドの次の例は、今日の日付をレターヘッド形式で表示します。例えば、6/30/95 は「June 30, 1995」と表示されます。
    months := "January" : "February" : "March" : "April" : "May" : "June" : "July" : "August" : "September" : "October" : "November" : "December";
    month := @Subset(@Subset(months; @Month(@Now)); -1);
    year := @Year(@Now);
    day := @Day (@Now);
    month + " " + @Text(day) + ", " + @Text(year)
  5. @Adjust、@Weekday、@Created。時刻の計算結果フィールドの次の例は、文書の作成日から 2 日後の日付を表示します。作成日が金曜日なら、週末を省くために 4 日を足して計算します。
    increment := @If(@Weekday(@Created) = 6; 4; 2);
    @Date(@Adjust(@Created; 0; 0; increment; 0; 0; 0))
  6. @BusinessDays。このエージェントは、2001 年度の土曜日、日曜日、10 日間の祝日を除く日数を表示します。
    @Prompt([Ok];
    @Text(
    @BusinessDays([01/01/2001]; [12/31/2001]; 1 : 7;
    [01/01/2001] : [01/15/2001] : [02/16/2001] : [05/28/2001] : [07/04/2001] :
    [09/03/2001] : [10/08/2001] : [11/22/2001] : [11/23/2001] : [12/25/2001])
    );
    "Business days in 2001")

追加の資料 | 商標 (英語) |