期限やタイマーを定義するときに、通常のカレンダーの代わりにビジネスカレンダーを使用することができます。ビジネスカレンダーは、組織の営業時間と営業日を定義するものです。ビジネスカレンダーを使用することによって、タイマーが必ず営業時間内に切れるようにすることができます。期限についても同様です。ビジネスカレンダーを使用することによって、アクティビティの期限が必ず営業時間内に設定されるようにすることができます。
Systemwalker Runbook Automation Studioには、デフォルトのビジネスカレンダーが用意されています。このデフォルトのビジネスカレンダーに修正を加えることも、独自のビジネスカレンダーを作成することもできます。ビジネスカレンダーは、組織のニーズに応じて必要なだけ作成できます。たとえば、営業日や祝日の異なる複数の地域に組織の部門が分散されている場合は、地域ごとにビジネスカレンダーを作成します。
ビジネスカレンダーを作成する方法について説明します。
ワークフローアプリケーションプロジェクトで、[Calendar]フォルダを右クリックし、[新規] - [カレンダー]の順に選択します。
[新規カレンダー]ダイアログが表示されます。[プロジェクト]フィールドに自動的にビジネスカレンダーを作成したいワークフローアプリケーションプロジェクトの名前が表示されます。
図6.35 [新規カレンダー]ダイアログの表示
別のプロジェクトを選択した場合には、[参照]をクリックします。
[フォルダの選択]ダイアログが表示されます。新しいカレンダーファイルのプロジェクトのディレクトリを選択します。カレンダーファイルのデフォルト名は、<任意の名前>.calになります。
拡張子.calは、そのファイルがビジネスカレンダーであることを示します。カレンダーは、プロパティ、もしくは、営業日や営業時間を指定する初期化ファイルのようなものです。
新しいカレンダーファイルが保存されるプロジェクトを選択し、[OK]をクリックします。ファイル名がすでに存在している場合には新しい名前を入力し、ファイル名の重複を避けるようにしてください。
[名前]フィールドに新しいカレンダーファイルの名前を入力し、[完了]をクリックします。
新しいカレンダー(.cal)ファイルは、選択したプロジェクトの[Calendar]フォルダに自動的に保存されます。
以下の図は、新しいmyNewBusinessCalendar.calファイルの保存場所を示しています。
図6.36 新しいカレンダーファイルの保存場所
新しいファイルは、.calファイルを開くために指定してあるテキストエディタで自動的に開きます。デフォルトのカレンダーファイルは、C:\Fujitsu\Systemwalker\SWRBA_Studio\ibpm\Data\calendarディレクトリに保存されています。ファイルは以下のようになります。
注意
日本で管理サーバを動作させる場合は、以下のコードをカレンダーファイルに追加してください。
TIMEZONE=+9:00;
EVERYDAY=8:30,18:00; SAT=; SUN=; 2009/01/01=; 2010/01/01=; 2011/01/01=; 2012/01/01=; 2013/01/01=; 2014/01/01=; 2015/01/01=; 2016/01/01=; CALENDAR_BEGIN=2009/01/01; CALENDAR_END=2018/12/31;
ビジネスカレンダーを定義します。
例として、デフォルトのカレンダーを使用できます。ビジネスカレンダーの形式の詳細については、“6.22.4.1 ビジネスカレンダーの形式”を参照してください。
注意
変更の保存は、[ファイル]メニューの[保存]で行います。[別名保存]は使用できません。
作成したビジネスカレンダーは、プロセス定義または特定のタイマーに割り当てることができます。
ビジネスカレンダーの形式を以下に示します。
ビジネスカレンダーには、以下のパラメーターを使用して営業時間を指定します。
EVERYDAY
デフォルトの営業時間を指定します。
<曜日>
通常、1週間の営業日から土日などの曜日を除外するために使用します。
<日付>
通常、1年間の営業日から休暇を除外するために使用します。
これらのパラメーターには、以下の優先順位があります。
<日付> > <曜日> > EVERYDAY
例: 営業時間を以下のように設定できます。
EVERYDAY=9:00,17:00; FRI=9:00,14:00; 2007/06/08=09:30,13:00;
この例では、6月8日金曜日は午前9時半から午後1時、そのほかの金曜日は午前9時から午後2時、それ以外のすべての曜日は午前9時から午後5時という営業時間が設定されています。
以下にカレンダーファイルで使用できる各パラメーターについて詳細を説明します。
EVERYDAY
このパラメーターは必須です。このパラメーターは、すべての曜日に適用されるデフォルトの営業時間を定義します。
例: EVERYDAY=9:00,17:00;
<曜日>
このパラメーターは、特定の曜日に適用されるデフォルトの営業時間を定義します。指定曜日については、この設定がEVERDAYパラメーターの設定よりも優先されます。
例: 特定の曜日(SUN、MON、TUE、WED、THU、FRI、SAT)の営業時間を以下のように指定できます。
FRI=9:00,16:00;
時間を特に指定しない場合、その曜日は営業日外ということになります。
このパラメーターは、通常、1週間の営業日から土日を除外するために使用します。その場合は、土曜日と日曜日にnull値を設定します。1週間の営業日から土曜日と日曜日を除外する方法を以下の例に示します。
SAT=; SUN=;
<日付>
このパラメーターは、特定の日付の営業時間を定義します。この設定は、EVERYDAYパラメーターまたは<曜日>パラメーターの設定よりも優先されます。
形式: yyyy/mm/dd (年/月/日)
このパラメーターは、通常、1年間の営業日から休暇を除外するために使用します。
例: 2007/01/01=;
また、特別な用件があって昼休みを長く取る場合など、特別な時間を指定する場合にも使用されます。
例: 2007/12/01=9:00,12:00;15:30,17:00;
DST
このパラメーターは、夏時間(DST: Daylight Saving Time、サマータイム)の調整用に使用されます。
形式: <日付>=DST(<調整時間数>)
<調整時間数>には、0時間から4時間までの値を指定できます。
例: 春に時間を進め、秋に時間を戻すように調整する方法について説明します。
2006/04/20=DST(1);
2006/10/19=DST(0);
DST(<調整時間数>)と時間の指定を組み合わせることはできません。たとえば、2006/10/20=DST(1);9:00,12:00;13:00,17:30;のような指定は正しくありません。
CALENDAR_END
このパラメーターは必須です。このパラメーターは、カレンダーの有効期限日を定義します。このパラメーターに指定された日付が過ぎると、該当カレンダーは使用できなくなります。タイマーの有効期限がこの日付よりも後に設定されている場合は、配列の範囲外エラーが発生し、タイマーは適切に機能しません。
デフォルト値: CALENDAR_END=2010/12/31;
CALENDAR_BEGIN
このパラメーターは必須です。このパラメーターは、カレンダーの発効日を定義します。このパラメーターに指定された日付以前に、該当カレンダーを使用することはできません。タイマーの有効期限がこの日付よりも前に設定されている場合は、配列の範囲外エラーが発生し、タイマーは適切に機能しません。
デフォルト値: CALENDAR_BEGIN=2003/01/01;
注意
カレンダーの有効期間は最長10年です。このため、ビジネスカレンダーの発効日(CALENDAR_BEGIN)と有効期限日(CALENDAR_END)には、最長で10年間離れた日付を指定できます。
TIMEZONE
このパラメーターは必須です。このパラメーターは、クライアントの所在地のタイムゾーンをグリニッジ標準時(GMT)を基準とした表記で定義します。
例: 日本の標準時(JST)は、グリニッジ標準時(GMT)よりも9時間進んでいるため、TIMEZONE=+9:00;と指定します。