タイム スライスの設定

ccppmop1561
HID_admin_configure_time_slices
タイム スライスは、スライスされた 2 進法の大規模なオブジェクト(BLOB)に由来したデータが含まれるフラットなテーブルです。 BLOB は、データベース内に単一のエンティティとして保存されたバイナリ データの集積です。 カーブとカレンダのデータを格納するために BLOB を使用できます。
データ モデルには、ほとんどのレポート ツールが読み取ることができないいくつかの BLOB が含まれます。 オブジェクトおよびフィールド、スライス頻度、およびデータ格納の精度を指定するためにタイム スライス リクエストを設定します。 タイム スライス付けジョブを定義した後に、ジョブによってデータが抽出されます。 このジョブには、ユーザがタイム スライス リクエストで設定した条件に基づく、読み取り可能なフラット テーブルが表示されます。 その後、レポートを実行するためにタイム スライスをクエリできます。 詳細については、「
CA PPM Studio Development
」を参照してください。
タイム スライスを必要とするオブジェクト
以下のオブジェクトがタイム スライス付けを必要とします:
  • prAllocCurve
    プロジェクトに割り当てられたリソース利用可能時間のパーセンテージ(レート曲線として)。
    ソース テーブル
    : PRTeam
  • prActCurve
    割り当てに対してポストされた実績値。
    データベース列:
    prExtension
    ソース テーブル
    : PRAssignment
  • prEstCurve
    割り当てに対する見積もり。
    データベース列:
    prExtension
    ソース テーブル
    : PRAssignment
  • prBaseCurve
    割り当てのベースライン。
    データベース列:
    prExtension
    ソース テーブル
    : PRAssignment
  • prAvailCurve
    リソース利用可能時間(レート曲線として)。
    ソース テーブル
    : PRResource
  • prValue
    シフト、休日および祝日などの作業時間情報。 このテーブルはリソース利用可能時間と配置を計算しますが、タイム スライス付け用のテーブルは選択できません。
    ソース テーブル
    : PRCalendar
  • prAllocCurve
    タイムシートの時間入力の値。
    ソース テーブル
    : PRTimeentry
タイム スライス リクエストの作成
最初のタイム スライス付けのプロセスには数分かかる場合があります。 いったんタイム スライス データを書き込むと、次回ジョブを実行する際には更新されたオブジェクトのみをチェックします。 オブジェクトのコンテンツが変わるたびにタイム スライスが更新されます。 たとえば割り当てに ETC を追加する場合などです。
タイム スライス リクエストを作成する時点と、それを更新する時点の間に、多くのデータベース トランザクションが発生する可能性があります。 システム リソースを確保するには、トランザクション ロギングを一時的に無効にします。 タイム スライス リクエストを変更する前、または大量のデータベース トランザクションを引き起こす可能性のあるあらゆる作業を行う前には、ユーザのデータベース管理者に確認します。
以下の手順に従います。
  1. [コントロール]を開いて、[データ管理]から[タイム スライス]をクリックします。
  2. [新規]をクリックします。
  3. 以下のフィールドに入力します。
    • タイム スライス名
      タイム スライス リクエストの名前を定義します。
    • ロールオーバー間隔
      更新されたタイム スライス リクエストの処理に対して、[開始日]が更新する頻度を定義します。 月末のレポートなど、進行中のレポートを実行しているときのオプションを定義します。
      値:
      • 毎日: タイム スライスを毎カレンダ日に更新。
      • 毎週: タイム スライスを毎週更新。
      • 隔週: タイム スライスを 14 カレンダ日ごとに更新。
      • 毎月: タイム スライスを毎カレンダ月ごとに更新(推奨頻度)。
      • 隔月: タイム スライスを 2 カレンダ月ごとに更新。
      • 四半期: タイム スライスを 3 カレンダ月ごとに更新。
      • 半年: タイム スライスを 6 カレンダ月ごとに更新。
      • 毎年: タイム スライスを毎年更新。
      • なし: タイム スライスを更新しない。
      既定値:
      日次
      アド ホック レポート:
      なし
    • 開始日
      タイム スライス期間の開始日を定義します。
      例:
      タイム スライス データを毎月第 1 日目に開始するには、月の第 1 日目を入力します。 次に、期間単位として[月次]を選択します。
    • 期間単位
      各タイム スライス リクエストに使用する期間を指定します。
      値:
      • 日単位
      • 週単位: 7 カレンダ日
      • 隔週単位: 14 カレンダ日
      • 月単位: 1 カレンダ月
      • 隔月単位: 2 カレンダ月
      • 四半期単位: 3 カレンダ月
      • 半年単位: 6 カレンダ月
      • 年単位: 12 カレンダ月
      • なし
    • 期間数
      各タイム スライス リクエストの期間の数を定義します。
      例:
      12 (か月)、52 (週)、5 (年)
    • 項目
      タイム スライスの対象となるオブジェクト(すなわちデータ要素)を定義します。
      値:
      • 実績値: プロジェクトへの割り当てに対してポストされた時間数を定義します。 既定では、この要素は設定されます。
      • 見積もり: プロジェクトへの割り当てに対する見積もり時間を定義します。 既定では、この要素は設定されます。
      • ベースライン: プロジェクトの割り当てに対するベースライン(時間数)を定義します。 既定では、この要素は設定されます。
      • 利用可能時間: リソースがプロジェクトで作業できる 1 日当たりの時間を定義します。 既定では、この要素は設定されます。
      • 配置: リソースがプロジェクトに割り当てる時間(パーセント)を定義します。 既定では、この要素は設定されます。
      • 時間入力: タイムシートの時間入力値を定義します。
      • 現在: 現在のベースラインに対して識別されるデータ。 たとえば、複数のベースラインがあるとき、各プロジェクトの現在のベースラインを考慮するためにベースラインを選択します。
      • 非現在: 現在のベースラインに対して識別されないデータ。
    • 有効期限
      アド ホック レポートには、このフィールドを使用します。 データがデータベースから削除される日付を指定します。 日付は、ロールオーバー タイム スライスに対して自動的に表示されます。
  4. 変更を保存します。
    新しいタイム スライス リクエストが記録し、タイム スライス付けがただちに始まります。
変更を加えた後は、タイム スライス付けジョブで新しいデータを再生成できるように、必ずジョブを再開するかジョブの一時停止を解除します。
レポートを実行するためにタイム スライスをクエリする
以下の手順に従います。
  1. タイム スライス リクエストを作成します。
  2. [タイム スライス付け]ジョブをスケジューリングします。
  3. [タイム スライス付け]ジョブがタイム スライス付けを実行すると、レポートの実行でタイム スライスをクエリできるようになります。
    • タイム スライス テーブル内の各レコードには、データ要素に対応するオブジェクト ID が含まれます。
    • レポート ライタは、スライス レコードと関連付けられたリソースを識別するためにオブジェクト ID を使用します。
日単位のタイム スライス
実装ごとに、データ量とレボートの必要性に基づいてタイム スライスを適切に設定する必要があります。
  • 履歴データのレポートのために作成するレコード数を推奨設定の範囲で少なくするように、日単位スライスの数を制限します。
  • 2 年を超える範囲をカバーする日単位スライス(特にチーム スライス)を定義しないでください。
  • ここに推奨されるよりも古い日付の履歴データのスライスが必要である場合、代替設定のアドバイスについて CA Services チームにお問い合わせください。あるいは月単位のタイム スライスを使用します。
以下の推奨日単位タイム スライス ID を設定します。
タイム スライス:
開始日:
期間数:
見積り
(1 年間の範囲)
DAILYRESOURCEESTCURVE
今月の初日
過去の見積もりをスライスする必要なし。
400
実績値
(2 年間の範囲)
DAILYRESOURCEACTCURVE
今月の初日
過去 1 年。
740
ベースライン
(2 年間の範囲)
DAILYRESOURCEBASECURVE
今月の初日
過去 1 年。
740
利用可能時間
(2 年間の範囲)
DAILYRESOURCEAVAILCURVE
今月の初日
過去 1 年。
740
配置
(2 年間の範囲)
DAILYRESOURCEALLOCCURVE
今月の初日
過去 1 年。
740
リソースに雇用日または解雇日が設定されている場合、リソースの利用可能時間スライスは、その日付範囲に限定されます。
配置タイム スライス
組織でプロジェクト レベルの配置を管理していない場合は、配置用のスライス データを管理する必要がない場合があります。 配置はスライス データの最大部分を占め、それがすべて有効ということでなければ、大幅に削減できます。 プロジェクト レベルの配置を設定しない場合は、配置スライス リクエストの期間数を 4 に設定することをお勧めします。 これにより、配置スライスのために保存されデータマートまたはデータ ウェアハウスのテーブルに入力されるデータの量を最小限に抑えられます。
この配置データを実際に使用する場合、ベースラインおよび利用可能時間タイム スライスと同じ範囲で定義する必要があります。 プロジェクトの配置を強制的に会社全体で設定し、残存配置や未使用の配置を消去することをお勧めします。 配置がアクティブなプロジェクトに正しく設定されている場合は、有効なデータのみがタイムスライスに格納され、配置を管理するために必要なレコードの量が大幅に削減されます。
また、非アクティブなプロジェクトやクローズされたプロジェクトに対して、[プロジェクト チーム]ページ(またはプロジェクト登録簿)で表示される
残存配置
を消去することもお勧めします。
リソースの残存配置を消去するには、リソースがプロジェクトに対する作業を前回行った日付を配置終了日に設定します。
  • 残存配置では、リソースが前回実績値を追跡した日付が考慮されます。 リソースのプロジェクトでの作業が終了した場合、この日付を配置終了日として設定する必要があります。
  • 必要がなくなった残存配置を消去すると、タイムスライスに格納されるデータの量が減少し、データが実用的になります。
ヒント: ショートカットとして、[
ETC
]を
ゼロ
(0)に設定してから[
チーム
]ページで[
見積もりから配置
]をクリックすることもできます。 この方法は、多少不確実ですが、使用されていないリソースの配置を解放する最も簡単な方法です。
会計タイム スライス
以下の推奨会計タイム スライス ID を設定します。
タイム スライス:
開始日:
期間数:
会計
(7 年の範囲)
DAILYRESOURCEESTCURVE
今月の初日
過去 1 年。
72
か月
変更を加えた後は、タイム スライス付けジョブで新しいデータを再生成できるように、必ずジョブを再開するかジョブの一時停止を解除します。
bg-ca.logs のデッドロック エラー
タイム スライス付けジョブの実行中に大量の XOG アクティビティが発生した場合、bg-ca.logs に以下のようなデッドロック エラーが記録されることがあります。
Error processing slices com.niku.union.persistence.PersistenceDeadlockException: SQL error code: 60 Error message: [CA Clarity][Oracle JDBC Driver] [Oracle]ORA-00060: deadlock detected while waiting for resource
この問題は重要ではありません。 ジョブは、次回実行時にレコードを回復し処理します。 通常 1 分ごとに実行するよう設定されるタイム スライス付けジョブでは、大量の XOG アクティビティを処理する必要があるので、一般に、タイム スライス付けジョブを一時停止するか、XOG を呼び出すプロセスを設定します。