Sun Java System Calendar Server 6 2005Q4 管理ガイド

条件付き出力

特定の条件が満たされる場合にだけ行を出力できると便利なことがあります。たとえば、次のような行です。


title: %S%N
 start: %B%N
 end: %E%N  

これは、次のような通知として出力されます。


title: Staff Meeting
 start: Feb 04, 1999 09:00:00
 end: Feb 04, 1999 10:00:00 

ただし、上の例には不正確な結果を招く 2 つの条件があります。

このような状況では、終了時刻を一切出力しない方法が最適です。デフォルトでは、タイムスタンプが all-day という属性を持つ場合、年、月、日だけが出力されます。さらに、予定の開始時刻が all-day 属性を持ち、予定が開始日と同じ日に終了する場合、特別な条件フラグが設定されます。特別な条件フラグが設定されていない場合にだけ ? 修飾子を使用して条件値を出力します。

たとえば、上の例の行を次のように変更します。


title: %S%N
 start: %B%N
 end: %?E%N 

最後の行は、開始日と終了日が同じ終日予定では出力されません。これは、一般的な終日予定 (誕生日や記念日など) について次のように出力します。


title: Staff Meeting
 start: Feb 04, 1999

? フラグは、その他の修飾子と組み合わせて使用することができます。次に例を示します。

The event ends: %?(%b %d, %Y %I:%M %p)E%N