Oracle® Fusion Middleware

Oracle Business Intelligence Enterprise Editionジョブ・スケジューリング・ガイド

12c (12.2.1)

E70056-01(原本部品番号:E57388-01)

2015年10月

Schedulerを構成する方法、ジョブ・マネージャとそのメニューを使用する方法、スクリプトやJavaジョブをプログラミングする方法など、Oracle Business Intelligence Enterprise Edition Schedulerとジョブ・マネージャを管理する方法が説明されています。SAシステム・サブジェクト・エリアに関する情報が記載されています。

Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionジョブ・スケジューリング・ガイド, 12c (12.2.1)

E70056-01

Copyright © 2010, 2015, Oracle and/or its affiliatesAll rights reserved.

原本著者: Guriqpal Gill

原本協力著者: Nick Fry

原本協力者: Oracle Business Intelligenceの開発、製品管理および品質保証チーム

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle およびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXはThe Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメントおよびその他のリソース

- システム要件と動作要件

- 表記規則

Oracle Business Intelligenceジョブ・スケジューリングの新機能

1 Oracle BI Schedulerの概要

- 1.1 Oracle BI Schedulerとは

- 1.2 Oracle BI Schedulerのサーバー・コンポーネントについて

- 1.3 その他のガイド内の関連トピック

2 Oracle BI Schedulerの構成タスク

- 2.1 Oracle BI Schedulerのデータベースの構成

- 2.1.1 SQL ServerデータベースのシステムDSNエントリの構成

- 2.2 クラスタ環境におけるOracle BI Schedulerインスタンスの構成

3 Oracle BI Schedulerのジョブ・マネージャの使用方法

- 3.1 ジョブ・マネージャのオープン

- 3.2 ジョブ・マネージャにおけるOracle BI Schedulerのジョブの追加

- 3.3 ジョブ・マネージャにおけるOracle BI Schedulerのジョブの変更

- 3.4 エージェント・ジョブの追加について

- 3.5 ジョブ・マネージャにおけるエージェントの変更

- 3.6 ジョブ・インスタンスの再実行

- 3.7 Oracle BI Schedulerのジョブ・インスタンスの管理

- 3.7.1 Oracle BI Schedulerのジョブ・インスタンスの表示またはリフレッシュ

- 3.7.2 Oracle BI Schedulerのジョブ・インスタンスの取消し

- 3.7.3 Oracle BI Schedulerのジョブ・インスタンスのパージ

- 3.7.3.1 ジョブ・マネージャの「インスタンス」リストの使用

- 3.7.3.2 ジョブ・マネージャの「インスタンスのパージ」ウィンドウの使用

4 BI SchedulerのVBScriptジョブとJScriptジョブのプログラミング

- 4.1 Oracle BI Schedulerのカスタム・スクリプト・プロパティの構成

- 4.2 キャッシュをクリアするサンプル・カスタム・スクリプトの作成

- 4.3 Oracle BI Deliversのカスタム・スクリプト・プロパティの構成

- 4.4 結果をファイル・システムにコピーするサンプル・カスタム・スクリプトの作成

- 4.5 Oracle BI Schedulerの読取り専用スクリプト・オブジェクト・プロパティ

- 4.6 Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ

- 4.7 Oracle BI Schedulerのスクリプト定義定数

- 4.7.1 Severity定数

- 4.7.2 DayEnum定数

- 4.7.3 DayOfWeekEnum定数

- 4.7.4 JobFlagsEnum定数

- 4.7.5 MonthEnum定数

- 4.7.6 OccurrenceEnum定数

- 4.8 Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント

- 4.8.1 CreateArrayメソッド

- 4.8.2 DeregisterCancelCommandメソッド

- 4.8.3 GetConfigurationValueメソッド

- 4.8.4 GetTempFileNameメソッド

- 4.8.5 LaunchProcessメソッド

- 4.8.6 RegisterCancelCommandメソッド

- 4.8.7 ScheduleJobDailyメソッド

- 4.8.8 ScheduleJobMonthlyDateメソッド

- 4.8.9 ScheduleJobMonthlyDOWメソッド

- 4.8.10 ScheduleJobNowメソッド

- 4.8.11 ScheduleJobOnceメソッド

- 4.8.12 ScheduleJobWeeklyメソッド

- 4.8.13 OnErrorイベント

- 4.9 JScriptジョブとVBScriptジョブの失敗のトラブルシューティング

5 BI SchedulerのJavaジョブのプログラミング

- 5.1 Oracle BI SchedulerのJavaジョブの使用方法

- 5.1.1 ジョブ・マネージャにおけるカスタムJavaジョブの追加と構成

- 5.1.2 例: エージェントのJavaプログラムの作成

- 5.1.3 例: Javaプログラムの構成

- 5.2 Oracle BI SchedulerのJavaジョブ

- 5.3 Oracle BI SchedulerのJavaジョブの追加

- 5.4 Oracle BI SchedulerのカスタムJavaプログラム・パッケージ

- 5.5 SchedulerJavaExtensionインタフェース

- 5.6 SchedulerJobInfoインタフェース

- 5.7 SchedulerJobExceptionクラス

- 5.8 Oracle BI SchedulerのJava拡張例

6 Oracle BI Schedulerのジョブ・マネージャのメニュー

- 6.1 ジョブ・マネージャについて

- 6.2 ジョブ・マネージャにおけるツールバーのメニュー

- 6.2.1 ジョブ・マネージャの「ファイル」メニュー

- 6.2.2 ジョブ・マネージャの「サービス管理」メニュー

- 6.2.3 ジョブ・マネージャの「ジョブ」メニュー

- 6.2.4 ジョブ・マネージャの「インスタンス」メニュー

- 6.2.5 ジョブ・マネージャのインスタンス・プロパティ

- 6.3 Oracle BI Schedulerの一般的なジョブ・プロパティ

- 6.4 ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ

- 6.5 ジョブ・マネージャにおけるジョブのトリガー

- 6.5.1 単一実行トリガー

- 6.5.2 繰返しトリガー

- 6.5.2.1 繰返しトリガーのタイプ

A SAシステム・サブジェクト・エリアの設定

- A.1 SAシステム・サブジェクト・エリアについて

- A.1.1 グループとアプリケーション・ロールの解決について

- A.2 SAシステム・サブジェクト・エリアのデータ・ソースの設定

- A.3 リポジトリへのSAシステム・データのインポート

- A.4 SAシステム・サブジェクト・エリアの構成オプションの設定

- A.4.1 SAシステム・サブジェクト・エリアのログイン名における大文字と小文字の区別に関する管理

はじめに

Oracle Business Intelligence Foundation Suiteは、レポート、非定型問合せ、OLAP、ダッシュボード、スコアカード、What-If分析など、すべてのエンタープライズのビジネス・インテリジェンス・ニーズを満たす、完全かつオープンな統合ソリューションです。Oracle Business Intelligence Foundation Suiteには、Oracle Business Intelligence Enterprise Editionが含まれます。

Oracle Business Intelligence Enterprise Edition (Oracle BI EE)は包括的な一連のエンタープライズ・ビジネス・インテリジェンス・ツールおよびインフラストラクチャであり、拡張性のある効率的な問合せおよび分析サーバー、非定型の問合せおよび分析ツール、インタラクティブ・ダッシュボード、プロアクティブ・インテリジェンスとアラート、エンタープライズ・レポート・エンジンなどが含まれます。

Oracle BI EEのコンポーネントは、共通のサービス指向アーキテクチャ、データ・アクセス・サービス、分析および計算インフラストラクチャ、メタデータ管理サービス、意味的ビジネス・モデル、セキュリティ・モデルやユーザー・プリファレンスおよび管理ツールを共有します。Oracle BI EEは、各データ・ソース向けに最適化されたリクエスト生成、最適化されたデータ・アクセス、高度な計算、インテリジェント・キャッシュ・サービス、クラスタリングにより、スケーラビリティとパフォーマンスを提供します。

このガイドは、Oracle BIスケジューラおよびジョブ・マネージャを使用してエージェントおよびジョブを自動化する方法について説明します。たとえば、分析、ダッシュボード、ブリーフィング・ブックまたはアラートを1週間に1回BIユーザーに自動的に配信したり、1日に1回スクリプトを自動的に実行して分析用のデータベースにOracle BIサーバー統計をロードできます。

対象読者

このガイドは、Oracle Business Intelligenceのジョブ・スケジューリング管理を担当する管理者を対象としています。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

サポートをご購入のOracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメントとその他のリソース

関連するOracle Business Intelligenceのドキュメントのリストは、Oracle Business Intelligenceのドキュメント・ライブラリを参照してください。

さらに、次もあります。

- Oracle Business Intelligenceに関連するオンライン・トレーニングのリソースについては、Oracle Learning Libraryを参照してください。

- 製品情報センターに関するサポート・ノート(記事ID: 1267009.1)をMy Oracle Support(https://support.oracle.com)でアクセスしてください。

システム要件と動作要件

ハードウェアとソフトウェアの要件、プラットフォーム、データベースおよびその他の情報の詳細は、システム要件と動作要件のドキュメントを参照してください。いずれのドキュメントもOracle Technology Network (OTN)から入手できます。

システム要件のドキュメントには、ハードウェアとソフトウェアの要件、ディスク領域とメモリーの最小要件、必要なシステム・ライブラリ、パッケージまたはパッチなどの情報が記載されています。

http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-requirements-100147.html

動作要件のドキュメントには、サポートされているインストール・タイプ、プラットフォーム、オペレーティング・システム、データベース、JDKおよびサードパーティ製品が記載されています。

http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

Oracle Business Intelligenceジョブ・スケジューリングの新機能

Oracle BI EE 12c (12.2.1)の新しいジョブ・スケジューリング機能はありません。

1 Oracle BI Schedulerの概要

Oracle BIスケジューラおよびジョブ・マネージャを使用して、エージェントおよびジョブを自動化します。たとえば、分析、ダッシュボード、ブリーフィング・ブックまたはアラートを1週間に1回BIユーザーに自動的に配信したり、1日に1回スクリプトを自動的に実行して分析用のデータベースにOracle BIサーバー統計をロードできます。

この章の構成は、次のとおりです。

- 第1.1項「Oracle BI Schedulerとは」

- 第1.2項「Oracle BI Schedulerのサーバー・コンポーネントについて」

- 第1.3項「その他のガイド内の関連トピック」

1.1 Oracle BI Schedulerとは

Oracle BI Schedulerは、ジョブの管理およびスケジュールを行うサーバーです。Oracle BI Schedulerは次の2種類のジョブをサポートしています。

- スクリプト化されたジョブ。
スクリプト化されたジョブは、ジョブ・マネージャを使用して構成および発行されます。たとえば、スクリプト化されたジョブは、定期的にOracle BI Serverの使用量の統計をバックエンド・データベースにロードできます。この例では、Oracle BI Schedulerは、BI Serverと通信します。ただし、スクリプト化されたジョブは、エージェントの出力を共有ドライブに保存するなどして、BI Serverにアクセスすることはできません。スクリプト化されたジョブは、エージェントとアクションでも構成できます。

Oracle BI Schedulerは、Javaプログラミング言語やVBScriptおよびJScriptのスクリプト言語で記述されたジョブをサポートしています。

注意:
Oracle BI Schedulerのジョブ・マネージャにより定義されるエージェントとスクリプトの記述は、Windowsプラットフォームでのみサポートされます。Javaインタフェースではすべてのプラットフォームがサポートされています。

- エージェント。
エージェントは、Oracle BI Deliversを使用して実行のための構成と発行が行われます。エージェントによりコンテンツがエンド・ユーザーに配信されます。コンテンツは、分析、ダッシュボード、ブリーフィング・ブックまたはアラートです。コンテンツが配信されると、エージェントではアクションを実行できます。アクションには、Javaアクション、URLアクション、Webサービス・アクションおよびサーバー・スクリプト・アクションがあります。エージェントは他のエージェントも実行して、エージェントの連鎖を作成できます。スクリプト化されていないジョブの場合は、Oracle BI SchedulerはOracle BI Presentation Serviceと通信します。

注意:
実行可能なカスタムJavaには、独自の権限で実行されるJavaスクリプト化ジョブと、エージェントの一部として実行されるJavaアクションの2種類の形態があります。

1.2 Oracle BI Schedulerのサーバー・コンポーネントについて

Oracle BI Schedulerは、次のコンポーネントで構成されます。

- Oracle BI Schedulerジョブ・マネージャ

- Oracle BIスケジューラ・サービス・プロセス: <Oracle_Home>/bin/obish<n>

- Fusion Middleware Controlの「構成」タブの「メール」タブ

- コマンドラインのジョブ起動ツール:

- Windowsオペレーティング・システム: saschinvoke.exe

- UNIXオペレーティング・システム: saschinvoke

1.3 その他のガイド内の関連トピック

セキュリティ管理者に関連するトピックが、他のガイドでもいくつか取り上げられています。表1-1にこれらのトピックをリストし、詳細の参照先を示します。

表1-1 他のガイドで取り上げられているトピック

トピック

詳細の参照先

エージェントに影響する構成設定

Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド

データソースの構成

Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド

SSOとSSLの構成などセキュリティに関する情報

Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionセキュリティ・ガイド

インストールとアップグレード

Oracle Fusion Middleware Oracle Business Intelligenceインストレーション・ガイド

Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionアップグレード・ガイド

2 Oracle BI Schedulerの構成タスク

この章では、特定のデプロイメントに応じて、次のOracle BI Scheduler構成タスクを実行する必要があることについて説明します。

- 第2.1項「Oracle BI Schedulerのデータベースの構成」

- 第2.2項「クラスタ環境におけるOracle BI Schedulerインスタンスの構成」

次のことに注意してください。

- Oracle BI Schedulerを使用しない場合、この章に記載されている情報は必要ありません。

- エージェントの実行に必要な構成(一般的なジョブの実行とは対照的)の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のエージェントの構成と管理に関する項を参照してください。

- Oracle Business Intelligence環境を新しいシステムに移行する場合、Oracle Business Intelligence Serverリポジトリ・ファイルおよびOracle BI Schedulerの表も必ず移行してください。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』で異なる環境間における移行に関する項を参照してください。エージェントは Oracle BIスケジューラの表を必要とします。

2.1 Oracle BI Schedulerのデータベースの構成

Fusion Middleware Controlを使用して、Oracle BI Schedulerでエージェントにより使用される一般的な設定を構成できます。

注意:
Weblogicデータ・ソースから資格証明情報を自動的に移入または再移入できます。接続詳細を変更する場合(たとえば、パスワードの有効期限またはデータベース障害など)、Weblogic BIプラットフォーム・データ・ソースを更新し、DH/bitools/bin/sync_midtier_db.shを実行します。
ファイルDH/config/fmwconfig/biconfig/OBISCH/schedulerconfig.xmlにはDSN名が含まれ、資格証明がoracle.bi.systemマップのdatasource.biplatformキー(EMに表示)に格納されます。

次の手順では、バックエンド・データベースと表を構成する方法について説明します。

- 第2.1.1項「SQL ServerデータベースのシステムDSNエントリの構成」

2.1.1 SQL ServerデータベースのシステムDSNエントリの構成

SQL Serverデータベースの場合、Fusion Middleware Controlスケジューラ構成で使用されるデータ・ソース名(DSN)は、SQL Server S_NQ_SCHEDデータベースの既存のODBC DSNと一致する必要があります。

システムDSNエントリがない場合、次の手順の説明に従って新規に作成します。

SQL ServerデータベースのDSNエントリを構成するには:

1. Windowsの「スタート」メニューで、「設定」→「コントロール パネル」→「管理ツール」→「データ ソース(ODBC)」を選択します。

2. ODBCデータ ソース アドミニストレータを起動します。

3. 「システム DSN」タブを選択し、「追加」をクリックします。

4. ドライバSQL Serverを選択し、「完了」をクリックします。

5. 「SQL Server に接続するための新規データ ソースを作成する」ウィザードで、次を実行します。

1. データ・ソースの名前および説明を入力します。

2. 「サーバー」リストから「SQL Server」を選択し、「次へ」をクリックします。

3. ログインID認証性のサーバー検証のため、S_NQ_SCHED SQL Serverデータベース・スキーマの適切な認証を選択します。「次へ」をクリックします。

6. 「既定のデータベースを以下に変更する」フィールドを選択し、リストからS_NQ_SCHEDデータベースを選択します。「次へ」をクリックします。

7. 必要に応じて言語やログ・ファイルの設定を更新し、「完了」をクリックします。

8. 接続設定を検証するには、「データ ソースのテスト」ボタンをクリックしてから、「OK」をクリックします。

9. 「OK」をクリックして、ODBCデータ ソース アドミニストレータを終了します。

2.2 クラスタ環境におけるOracle BI Schedulerインスタンスの構成

クラスタ環境では、スケジューラのインスタンスの個数は0～2個にできます。スケジュールされるジョブやエージェントのサポートが不要な場合、インスタンスは構成しません。高可用性が不要な場合は、1つのインスタンスを構成します。

2ノード・クラスタ環境は、プライマリおよびセカンダリ・ノードとして自動的に構成される2つのインスタンスのスケジューラで常に構成されます。

3 Oracle BI Schedulerのジョブ・マネージャの使用方法

この章では、ジョブ・マネージャを使用してエージェントおよびジョブを管理する方法について説明します。内容は次のとおりです。

- 第3.1項「ジョブ・マネージャのオープン」

- 第3.2項「ジョブ・マネージャにおけるOracle BI Schedulerのジョブの追加」

- 第3.3項「ジョブ・マネージャにおけるOracle BI Schedulerのジョブの変更」

- 第3.4項「エージェント・ジョブの追加について」

- 第3.5項「ジョブ・マネージャにおけるエージェントの変更」

- 第3.6項「ジョブ・インスタンスの再実行」

- 第3.7項「Oracle BI Schedulerのジョブ・インスタンスの管理」

3.1 ジョブ・マネージャのオープン

ジョブ・マネージャは、エージェントおよびジョブを管理するために使用するWindowsのツールです。たとえば、Oracle BIスケジューラの起動と停止、ジョブの追加と管理、およびジョブ・インスタンスの管理を実行できます。

ジョブ・マネージャを開くには

1. Windowsで、「スタート」、「プログラム」、「Oracle Business Intelligence Enterprise Edition Plus Client」、「Job Manager」の順に選択します。
注意: 'Oracle Business Intelligence Enterprise Edition Plus Client'は、Oracle BI EE Clientインストールのデフォルト・プログラム・フォルダ名です。

2. ジョブ・マネージャで、「ファイル」メニューから「スケジューラ接続を開く」を選択して「マシン名」ダイアログを表示します。

3. 「クラスタ・コントローラを介して接続」オプション(Oracle推奨接続方法)を選択し、「プライマリ・コントローラ」および関連付けられたポート番号を選択します。
注意: セカンダリ・コントローラ接続はオプションです。

4. 適切なログイン資格証明を指定し、「OK」をクリックします。

3.2 ジョブ・マネージャにおけるOracle BI Schedulerのジョブの追加

ジョブ・マネージャにより、スクリプト化されたジョブを新規に追加できます。エージェントは、Oracle BI Presentation Servicesでのみ作成できます。

次の手順を使用して、ジョブ・マネージャでOracle BI Schedulerのジョブを追加します。

ジョブ・マネージャでOracle BIスケジューラ・ジョブを追加するには:

1. ジョブ・マネージャの「ジョブ」メニューで、「新規ジョブの追加」を選択します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. ダイアログで適切な情報を入力します。
フィールドの詳細は、次の各項を参照してください。

- 第6.3項「Oracle BI Schedulerの一般的なジョブ・プロパティ」

- 第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」

- 第6.5項「ジョブ・マネージャにおけるジョブのトリガー」

3.3 ジョブ・マネージャにおけるOracle BI Schedulerのジョブの変更

次の手順を使用して、ジョブ・マネージャでOracle BI Schedulerのジョブを変更できます。

注意:
ジョブをジョブ・マネージャで追加または変更する際に、「スクリプト」フィールドにスクリプトを入力すると、Oracle BI Schedulerにより次のディレクトリでSCS拡張子のファイルが作成されます。
\orainst\bifoundation\<OracleBISchedulerComponent>\coreapplication_obisch1\scripts\scheduler

前述のorainstは、Oracle Business Intelligenceのインストール場所です。

Oracle BI Schedulerのジョブ・スクリプトはこの場所(バックエンド・データベースではありません)に格納されるので、スクリプトをここから削除しないでください。

ジョブ・マネージャでOracle BI Schedulerのジョブを変更するには:

1. ジョブ・マネージャで、変更するジョブを選択します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. 「ジョブ」メニューから、「ジョブの変更」を選択します。

3. 「ジョブの変更」ダイアログで、ジョブのプロパティを変更します。
フィールドの詳細は、第6.3項「Oracle BI Schedulerの一般的なジョブ・プロパティ」、第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」および第6.5項「ジョブ・マネージャにおけるジョブのトリガー」を参照してください。

3.4 エージェント・ジョブの追加について

ジョブ・マネージャを使用してエージェント・ジョブを追加できません。エージェントは一般的に、Oracle BI Presentation Servicesで追加されます。詳細は、第1.1項「Oracle BI Schedulerとは」を参照してください。

ただし、「ジョブの変更」ダイアログを使用して、エージェントのジョブを変更することは可能です。詳細は、第3.5項「ジョブ・マネージャにおけるエージェントの変更」を参照してください。

3.5 ジョブ・マネージャにおけるエージェントの変更

ジョブ・マネージャで「ジョブの変更」ダイアログを使用して、個々のエージェントを変更できます。

ジョブ・マネージャでエージェントを変更するには:

1. ジョブ・マネージャで変更するエージェントを選択します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. 「ジョブ」メニューから、「ジョブの変更」を選択します。

3. 「ジョブの変更」ダイアログで、エージェント・ジョブ・プロパティを変更します。
フィールドの詳細は、第6.3項「Oracle BI Schedulerの一般的なジョブ・プロパティ」、第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」および第6.5項「ジョブ・マネージャにおけるジョブのトリガー」を参照してください。

次の表でエージェント固有のジョブ・プロパティについて説明します。

注意:
これらのフィールドのデフォルト値は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のエージェントのScheduler構成設定に関する項で指定した値がアクティブであることを示しています。

エージェント・プロパティ

説明

BIプレゼンテーション・サーバー

このエージェントが実行時に通信するWebサーバーを指定します。
エージェントが別のWebサーバーには存在しない場合があるため、この設定は変更しないでください。この機能はデバッグ専用に追加されています。

デバッグ・ログ

デバッグ情報をログ・ファイルに書き込むかどうかを指定します。この1つのエージェントでは、これがSchedulerのデバッグ構成設定よりも優先されます。trueに設定されている場合、エージェント実行時に、Agent-<jobID>-<InstanceID>.logというログ・ファイルが、アクティブなSchedulerのログ・ディレクトリに作成されます。

3.6 ジョブ・インスタンスの再実行

失敗したジョブ・インスタンスのジョブ・タイプ(たとえば、「失敗」、「警告」、「取消済」、「タイムアウト」のステータスのエージェント・ジョブ)を再実行して、エージェントを受信していない受信者に結果を配信できます。失敗したエージェント・ジョブを再実行すると、失敗した項目のみ配信されます。たとえば、エージェントの受信者が1,000人いて、そのうち200人が適切な表示リクエスト権限がないグループに属している場合、管理者は権限設定を変更してからジョブを再実行できます。この例では、変更されたグループの200人のユーザーのみがエージェントを受信します。エージェントを正常に受信した他の800人のユーザーにはエージェントは再配信されません。

ジョブ・インスタンスを再実行するには:

1. ジョブ・マネージャで、インスタンス・リストを表示します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. 再実行するジョブ・インスタンスを探します。

3. ジョブ・インスタンスを右クリックしてから、インスタンスの即時再実行を選択します。
正常に完了したジョブでは、インスタンスの即時再実行メニュー・オプションは利用できません。

3.7 Oracle BI Schedulerのジョブ・インスタンスの管理

Oracle BI Schedulerのインスタンスは、Oracle BI Schedulerのジョブの特定の実行に関する情報を格納するレコードです。

Oracle BI Schedulerのジョブ・インスタンスを使用して、次のタスクを実行できます。

- 第3.7.1項「Oracle BI Schedulerのジョブ・インスタンスの表示またはリフレッシュ」

- 第3.7.2項「Oracle BI Schedulerのジョブ・インスタンスの取消し」

- 第3.7.3項「Oracle BI Schedulerのジョブ・インスタンスのパージ」

Oracle BI Schedulerのジョブ・インスタンスで作業するには:

1. 「ジョブ・マネージャ」ウィンドウの左下隅にある「インスタンス」タブをクリックします。

2. インスタンスが存在する場合、左ペインのツリーを使用してインスタンスを探し、情報を表示します。

- 「インスタンス」メニューについては、第6.2.4項「ジョブ・マネージャの「インスタンス」メニュー」の表を参照してください。

- インスタンス・プロパティについては、第6.2.5項「ジョブ・マネージャのインスタンス・プロパティ」の表を参照してください。

3.7.1 Oracle BI Schedulerのジョブ・インスタンスの表示またはリフレッシュ

次の手順を使用して、Oracle BI Schedulerのジョブ・インスタンス情報を表示できます。

注意:
環境によっては、多数のインスタンスが実行され、インスタンスが以前にパージされないことがあった場合、この処理に数秒がかかることがあります。

Oracle BI Schedulerのジョブ・インスタンス情報を表示するには:

1. ジョブ・マネージャで、インスタンス・リストに移動します。

2. 特定のジョブ・インスタンスを選択し、「インスタンス」メニューから「インスタンスの表示」を選択します。
「インスタンス」ウィンドウに表示されるインスタンス・プロパティについては、第6.2.4項「ジョブ・マネージャの「インスタンス」メニュー」を参照してください。

Oracle BI Schedulerのジョブ・インスタンスをリフレッシュするには:

1. 「インスタンス」リストの「インスタンス」メニューで、「インスタンス・リストのリフレッシュ」を選択します。

3.7.2 Oracle BI Schedulerのジョブ・インスタンスの取消し

取り消された登録済インスタンスは、第4.8.6項「RegisterCancelCommandメソッド」を参照してください。その登録済取消しメソッドがコールされると、取消しイベントがOracle BI Schedulerに発行され、インスタンスは取消し済とマークされます。

Oracle BI Schedulerのジョブ・インスタンスを取り消すには:

1. ジョブ・マネージャで、インスタンス・リストを表示します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. 特定のジョブ・インスタンスを選択し、「インスタンス」メニューから「インスタンスの取消」を選択します。

3.7.3 Oracle BI Schedulerのジョブ・インスタンスのパージ

ジョブ・インスタンスのパージでは、次の方法のいずれかを使用してバックエンド・データベースからジョブ・インスタンスを削除します。

- 第3.7.3.1項「ジョブ・マネージャの「インスタンス」リストの使用」

- 第3.7.3.2項「ジョブ・マネージャの「インスタンスのパージ」ウィンドウの使用」

3.7.3.1 ジョブ・マネージャの「インスタンス」リストの使用

次の手順では、Oracle BI Schedulerのジョブ・インスタンスを「インスタンス」リストでパージします。

Oracle BI Schedulerのジョブ・インスタンスを「インスタンス」リストでパージするには:

1. ジョブ・マネージャで、インスタンス・リストを表示します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. 「インスタンス」リストからインスタンス選択し、「削除」をクリックします。

3.7.3.2 ジョブ・マネージャの「インスタンスのパージ」ウィンドウの使用

次の手順では、ジョブ・インスタンスを「インスタンスのパージ」ウィンドウでパージします。

Oracle BI Schedulerのジョブ・インスタンスを「インスタンスのパージ」ウィンドウでパージするには:

1. ジョブ・マネージャで、インスタンス・リストを表示します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. ツールバーか「インスタンス」メニューで「インスタンスのパージ」アイコンをクリックしてから、「インスタンスのパージ」を選択して「インスタンスのパージ」ウィンドウを開きます。
JobID別、UserID別または終了時間別にパージできます。

終了時間の方法を選択すると、指定時間以前の終了時間のジョブはすべてパージされます。

3. 使用するパージ方法を選択します。

4. 終了したら「OK」をクリックして、「ジョブ・マネージャ」ウィンドウに戻ります。

4 BI SchedulerのVBScriptジョブとJScriptジョブのプログラミング

この章では、Oracle BI Schedulerを使用して、Oracle Business Intelligenceの機能を拡張する汎用的なスクリプトをスケジュールする方法について説明します。

スクリプトは、スタンドアロンのスクリプト・ジョブ(ジョブ・マネージャにおいて)、またはエージェントの末尾にタグ付けされるスクリプト・アクションにできます(エージェントの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionユーザーズ・ガイド』を参照してください)。両方のタイプのスクリプトで同じスクリプト機能を使用しますが、若干の例外があります。たとえば、スクリプト・アクションはエージェントにより配信される結果セットにアクセスできますが、スタンドアロンのスクリプト・ジョブは結果セットにアクセスできません。

Oracle BI Schedulerには、実行中のスクリプトをカプセル化するスクリプト・オブジェクトが含まれています。スクリプト・オブジェクトはスクリプトを表し、スクリプトのプロパティとメソッドを公開します。そのメソッドとプロパティは、名前が暗示されているため直接アクセスできます。たとえば、JobIDプロパティにアクセスするには、Script.JobIDではなくJobIDを指定できます。

注意:
Oracle BI Schedulerのジョブ・マネージャにより定義されるエージェントとスクリプトの記述は、Windowsプラットフォームでのみサポートされ、UNIXではサポートされません。

この章では、カスタム・スクリプト・プロパティを構成する方法についてスクリプト例も含めて説明し、スクリプト・ジョブ・プロパティに関する詳細情報を提供します。内容は次のとおりです。

- 第4.1項「Oracle BI Schedulerのカスタム・スクリプト・プロパティの構成」

- 第4.2項「キャッシュをクリアするサンプル・カスタム・スクリプトの作成」

- 第4.3項「Oracle BI Deliversのカスタム・スクリプト・プロパティの構成」

- 第4.4項「結果をファイル・システムにコピーするサンプル・カスタム・スクリプトの作成」

- 第4.5項「Oracle BI Schedulerの読取り専用スクリプト・オブジェクト・プロパティ」

- 第4.6項「Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ」

- 第4.7項「Oracle BI Schedulerのスクリプト定義定数」

- 第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」

- 第4.9項「JScriptジョブとVBScriptジョブの失敗のトラブルシューティング」

4.1 Oracle BI Schedulerのカスタム・スクリプト・プロパティの構成

次の手順を使用して、Oracle BI Schedulerの既存スクリプトのプロパティを変更します。

このジョブをジョブ・マネージャでスタンドアロン・ジョブとして追加するには、第3.2項「ジョブ・マネージャにおけるOracle BI Schedulerのジョブの追加」を参照してください。

注意:
プロパティを構成する前に、Oracle BI Schedulerのサーバー・コンピュータにスクリプトが存在する必要があります。

Oracle BI Schedulerのカスタム・スクリプト・プロパティを構成するには:

1. 第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」に従ってカスタム・プロパティを設定します。
たとえば、purgeSASCache.jsスクリプトの場合、次の表に記載されている値を使用します。SASCache.jsスクリプトの例を表示するには、第4.2項「キャッシュをクリアするサンプル・カスタム・スクリプトの作成」を参照してください。

フィールド

値または設定

スクリプト・タイプ

JScript

「スクリプト」/スクリプト・ファイルのチェック・ボックス

スクリプト・ファイル

スクリプト

purgeSASCache.js

パラメータ(0): ユーザー

管理者

パラメータ(1): パスワード

your_password

2. 「OK」をクリックします。

4.2 キャッシュをクリアするサンプル・カスタム・スクリプトの作成

purgeSASCache.jsスクリプトを使用して、Oracle BI Serverからすべてのキャッシュを定期的にパージできます。ファイルは、次のディレクトリに保存されている必要があります。

DOMAIN_HOME/config/fmwconfig/biconfig/OBISCH/schedulerconfig.xml <DefaultScriptPath/>

/////////////////////////////////////////////////////////
//purgeSASCache.js
//
//Purges the cache on SAS.
//Parameter(0) - The user name to pass in to NQCMD.
//Parameter(1) - The password for the aforementioned user.
/////////////////////////////////////////////////////////
//The full path to nqcmd.exe
var nqCmd = "[$INSTALLDIR]\\server\\Bin\\nqcmd.exe";
//The data source name
var dsn = "BI Web";
//The user to execute the queries
var user = Parameter(0);
//The password of the aforementioned user
var pswd = Parameter(1);
//The ODBC procedure call for purging the cache
var sqlStatement = "{call SAPurgeAllCache()};";
//////////////////////////////////////////////////////////
//Returns a string from the file name
//////////////////////////////////////////////////////////
function GetOutput(fso, fileName)
{
var outStream = fso.OpenTextFile(fileName, 1);
var output = outStream.ReadAll();
outStream.Close();
return output;
}
//////////////////////////////////////////////////////////
// Get WshShell object and run nqCmd. Capture the output
// so that we can handle erroneous conditions.
var wshShell = new ActiveXObject("WScript.Shell");
// Create a temp file to input the SQL statement.
var fso = new ActiveXObject("Scripting.FileSystemObject");
var tempFolder = fso.GetSpecialFolder(2);
var tempInFileName = fso.GetTempName();
var tempOutFileName = fso.GetTempName();
tempInFileName = tempFolder + "\\" + tempInFileName;
tempOutFileName = tempFolder + "\\" + tempOutFileName;
var tempInFile = fso.CreateTextFile(tempInFileName, true);
tempInFile.WriteLine(sqlStatement);
tempInFile.Close();
try
{
// execute
var dosCmd = nqCmd + " -d \"" + dsn + "\" -u \"" + user
+ "\" -p \"" + pswd + "\" -s \"" + tempInFileName + "\"" +
" -o \"" + tempOutFileName + "\"";
wshShell.Run(dosCmd, 0, true);
var output = GetOutput(fso, tempOutFileName);
// Remove the temp files
fso.DeleteFile(tempInFileName);
if (fso.FileExists(tempOutFileName)) {
fso.DeleteFile(tempOutFileName);
}
// Check the output for any errors
if (output.indexOf("Processed: 1 queries") == -1) {
ExitCode = -1;
throw Error(-1, output);
}
else if (output.indexOf("Encountered") != -1) {
ExitCode = -2;
throw Error(-2, output);
}
ExitCode = 0;
} catch (e) {
if (fso.FileExists(tempInFileName)) {
fso.DeleteFile(tempInFileName);
}
if (fso.FileExists(tempOutFileName)) {
fso.DeleteFile(tempOutFileName);
}
throw e;
}

4.3 Oracle BI Deliversのカスタム・スクリプト・プロパティの構成

Oracle BI Deliversにおいてエージェントの「アクション」タブでスクリプトのプロパティを設定します。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionユーザーズ・ガイド』を参照してください。第3.5項「ジョブ・マネージャにおけるエージェントの変更」も参照してください。

注意:
エージェントを作成する前に、Oracle BI Schedulerのサーバー・コンピュータにスクリプトが存在する必要があります。カスタム・スクリプトを作成してから、スクリプトをコールするエージェントを作成します。第4.4項「結果をファイル・システムにコピーするサンプル・カスタム・スクリプトの作成」を参照してください。

エージェントのカスタム・スクリプト・プロパティを構成するには:

1. Oracle BI EEのホーム・ページで、「新規」メニューをクリックしてから「エージェント」オプションを選択します。

2. 「条件」タブを表示してから、「条件を使用」ボックスを選択します。

3. 「作成」および「参照」をクリックし、分析を選択します。

4. 「OK」をクリックします。

5. 「OK」をクリックします。

6. 「アクション」タブを表示します。

7. 「新規アクションの追加」アイコンをクリックし、「サーバー・スクリプトの起動」メニュー・オプションを選択します。
「新規アクション - サーバー・スクリプトの起動」ダイアログが表示されます。

8. 「ドキュメント・パラメータの追加」アイコンをクリックします。

9. パラメータの最初の行を選択し、「削除」ボタンをクリックします。

10. 表示されているパラメータのプロパティを入力します。
たとえば、第4.4項「結果をファイル・システムにコピーするサンプル・カスタム・スクリプトの作成」に示されたスクリプトの場合、次の表で説明する値を使用します。

フィールド

値または設定

Language

JavaScript

スクリプト・パス

createResultfile.js

名前

パラメータの名前を入力します。

プロンプト

プロンプトを入力します。たとえば、「Result Set:」などです。

値

リストから値を選択します。これによって、PDFなどの固定値がマップされます。
「条件分析」を選択します。

オプション

チェック・ボックスの選択を解除します。

11. プラス・アイコンを使用して、2番目のパラメータの新規行を表示します。

12. 「プロンプト」フィールドにResult Set Extensionと入力します。

13. 「値」フィールドに.pdfと入力します。

14. 「OK」をクリックします。

15. エージェントを保存します。
エージェントの条件付きリクエスト後にこのスクリプトが実行されます。

4.4 結果をファイル・システムにコピーするサンプル・カスタム・スクリプトの作成

この例では、エージェントの結果を別のディレクトリにコピーするOracle BI Scheduler用スクリプトを構成します。スクリプトにより、条件付きリクエストの結果を含む一時ファイルがエージェント・ログ・ディレクトリにコピーされます。JobID、InstanceIDおよびUserIDをファイル名に使用して、エージェント、各ユーザー、またはこのスクリプトを共有するその他のエージェントの各実行で、結果セットが互いを上書きしないように保証します。

このジョブをエージェントに追加するには、第4.3項「Oracle BI Deliversのカスタム・スクリプト・プロパティの構成」を参照してください。

サンプル・スクリプトでは次の値を使用します。

- Oracle BIスケジューラ・コンピュータのエージェント・ログ・ディレクトリは、DOMAIN_HOME/servers/obisch1/logsです。

- エージェントは管理者として実行されます。

- 第4.3項「Oracle BI Deliversのカスタム・スクリプト・プロパティの構成」の表に従って、カスタム・スクリプト・プロパティが設定されます。

- ジョブIDが101でインスタンスIDが1208の場合、ファイル名は101-1208-Administrator-AgentScript1.pdfになります。

エージェント実行後、この例では、Oracle BI SchedulerのコンピュータにDOMAIN_HOME/servers/obisch1/logs/101-1208-Administrator-AgentScript1.PDFというファイルが出力されます

このファイルには条件付きリクエストの結果がPDF形式で格納されます。

連鎖しているエージェントのすべてのスクリプト・ジョブに対し、一時ファイルへのフルパス名はParameter(0)で指定されます。

/////////////////////////////////////////////////////////////
//
// createResultFile.js
//
// Copies the results in the temporary file to a new file name
//
// Parameter(0) = Agent Result File Path
// Parameter(1) = Last Part of Output File Name (no path)
//
/////////////////////////////////////////////////////////////
var FSO = new ActiveXObject("Scripting.FileSystemObject");
var fileName = GetConfigurationValue("Log Dir", "Agents") +
"\\" + JobID + "-" + InstanceID + "-" + UserID + "-" +
Parameter(1);
var fooFile = FSO.CopyFile(Parameter(0), fileName, true);

4.5 Oracle BI Schedulerの読取り専用スクリプト・オブジェクト・プロパティ

Oracle BI Schedulerでは、表4-1に記載されている読取り専用スクリプト・オブジェクト・プロパティがサポートされています。

表4-1 Oracle BI Schedulerの読取り専用スクリプト・オブジェクト・プロパティ

オブジェクト・プロパティ

説明

戻り値

構文

ジョブID

このインスタンスに関連付けられているジョブ識別番号を戻します。

long

なし

インスタンスID

このインスタンスに関連付けられているインスタンス識別番号を戻します。

long

なし

ParameterCount

ジョブ・スクリプトに関連付けられているジョブ・パラメータの数を戻します。

long

なし

Parameter (index)

スクリプトに関連付けられている特定パラメータを戻します。指定された索引が0未満の場合や、ParameterCount-1より大きい場合、Parameter (index)はエラーを戻します。

string

Parameter(index)

indexは、パラメータのゼロベースの索引です。

スクリプト

現在のスクリプトを表すスクリプト・オブジェクトを戻します。このオブジェクトはCOM IDispatchインタフェースを実装し、システムに存在する他のオブジェクトのメソッドに引数として渡すことができます。COM IDispatchの実装は、実行中インスタンスの取消しイベントを処理する際に特に便利です。詳細は、第4.8.6項「RegisterCancelCommandメソッド」を参照してください。

スクリプト・オブジェクト

なし

ユーザーID

インスタンスに関連付けられているユーザー識別番号を戻します。

string

なし

4.6 Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ

Oracle BI Schedulerでは、表4-2に示されている読取り/書込みスクリプト・オブジェクト・プロパティがサポートされています。

表4-2 Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ

オブジェクト・プロパティ

説明

戻り値

メッセージ

実行中インスタンスのMessageプロパティを設定するか戻します。Messageプロパティには、意味のあるエラー情報を示す場合があります。この値を設定すると、現在のジョブ・スクリプト実行は停止せずに、ジョブ・インスタンスのMessageフィールドが変更されます。

JScriptのthrow()メソッドがコールされた際にこのプロパティが設定されていると、JScriptやVBScriptのエラー・オブジェクトにあるメッセージ記述に値が付加されます。

IDispatchインタフェースを実装するCOMオブジェクトは、ジョブ・スクリプト内からアクセスできます。メソッドが失敗した際にSetErrorInfo()メソッドにより適切にエラー情報が提供されると、その情報はジョブ・インスタンスのMessageフィールドに格納されます。COMオブジェクトのエラーが生成される前にMessageプロパティが設定されていると、その文字列値がCOMオブジェクトのエラー情報に付加されます。

string

重大度

インスタンス・ステータスを設定します。いずれかのSeverity定数に設定できます。詳細は、第4.7.1項「Severity定数」を参照してください。デフォルトでは、nqSeverityInformationに設定されます。

string

ExitCode

インスタンスに関連付けられているExitCodeプロパティを設定するか戻します。デフォルトは0(ゼロ)です。ExitCodeインスタンス・プロパティの説明は、第6.2.5項「ジョブ・マネージャのインスタンス・プロパティ」を参照してください。

long

4.7 Oracle BI Schedulerのスクリプト定義定数

Oracle BI Schedulerでは、次のスクリプト定義定数がサポートされています。これらの定数は新しいジョブをスケジュールするメソッドで使用します。

- 第4.7.1項「Severity定数」

- 第4.7.2項「DayEnum定数」

- 第4.7.3項「DayOfWeekEnum定数」

- 第4.7.4項「JobFlagsEnum定数」

- 第4.7.5項「MonthEnum定数」

- 第4.7.6項「OccurrenceEnum定数」

4.7.1 Severity定数

このトピックは、第4.7項「Oracle BI Schedulerのスクリプト定義定数」の一部です。

スクリプトで戻されるMessage(エラー・メッセージ)のSeverityプロパティでSeverity定数を使用して、ジョブ・インスタンスのステータスを判別します。表4-3で、Severity値について説明します。

表4-3 Severity定数値

値

説明

nqSeverityInformation

ジョブ・インスタンスの情報のみがMessageに含まれている場合、SeverityプロパティをInformationに設定します。エラー条件は反映されません。インスタンス・ステータスはCompletedに設定されます。これは、Severityが設定されていない場合のデフォルトです。

nqSeverityWarning

クリティカルでない失敗を示すテキストがMessageに含まれている場合、SeverityプロパティをWarningに設定します。インスタンス・ステータスはWarningに設定されます。

nqSeverityError

クリティカルな失敗を示すテキストがMessageに含まれている場合、SeverityプロパティをErrorに設定します。インスタンス・ステータスはFailedに設定されます。

4.7.2 DayEnum定数

このトピックは、第4.7項「Oracle BI Schedulerのスクリプト定義定数」の一部です。

DayEnum値は、スケジュール関数で月の1日から31日までの識別に使用されます。表4-4で、DayEnum値について説明します。

表4-4 DayEnum定数値

値

説明

nqDay1

1日

nqDay2

2日

nqDay3

3日

...

...

nqDay31

31日

4.7.3 DayOfWeekEnum定数

このトピックは、第4.7項「Oracle BI Schedulerのスクリプト定義定数」の一部です。

DayOfWeekEnum値は、スケジュール関数で曜日の識別に使用されます。表4-5で、DayOfWeekEnum値について説明します。

表4-5 DayOfWeekEnum定数値

値

説明

nqSunday

日曜日

nqMonday

月曜日

nqTuesday

火曜日

nqWednesday

水曜日

nqThursday

木曜日

nqFriday

金曜日

nqSaturday

土曜日

4.7.4 JobFlagsEnum定数

このトピックは、第4.7項「Oracle BI Schedulerのスクリプト定義定数」の一部です。

JobFlagsEnum値は、スクリプト・オブジェクトのスケジュール・メソッドでジョブの動作の制御に使用されます。表4-6で、JobFlagsEnum値について説明します。

表4-6 JobFlagsEnum定数値

値

説明

nqJobNoFlags

このフラグはジョブには特別な動作がないことを示します。

nqJobDeleteWhenDone

このフラグは、スケジュールされている実行時間が他にない場合にジョブが削除されることを示します。

nqJobDisabled

このフラグはジョブが無効であることを示します。スケジュールされた時間にジョブが実行されないようにする際に役立ちます。

nqJobHasEndDate

このフラグはジョブに有効な終了日があることを示します。

nqJobExecuteWhenMissed

このフラグは、ジョブが開始する際になんらかの理由でOracle BI Schedulerが停止している場合、Oracle BI Schedulerが再び起動した際にジョブが実行されることを示します。

nqJobDeleteScriptWhenDone

このフラグが設定されていてジョブが削除されると、ジョブに関連付けられているスクリプトは削除されます。これは、nqJobScriptContainsPathフラグでのみ有効です。

nqJobScriptContainsPath

このフラグは、ジョブに関連付けられているスクリプトに、実際のスクリプト・コードがあるファイルへのパスが含まれていることを示します。

nqJobStartNow

このフラグが設定されていると、開始日と開始時間は無視されます。かわりに、これらのフィールドはOracle BI Schedulerの現在の時間に設定されます。

4.7.5 MonthEnum定数

このトピックは、第4.7項「Oracle BI Schedulerのスクリプト定義定数」の一部です。

MonthEnum値は、スケジュール関数で月の識別に使用されます。表4-7で、MonthEnum値について説明します。

表4-7 MonthEnum定数値

値

説明

nqJanuary

1月

nqFebruary

2月

nqMarch

3月

nqApril

4月

nqMay

5月

nqJune

6月

nqJuly

7月

nqAugust

8月

nqSeptember

9月

nqOctober

10月

nqNovember

11月

nqDecember

12月

4.7.6 OccurrenceEnum定数

このトピックは、第4.7項「Oracle BI Schedulerのスクリプト定義定数」の一部です。

OccurrenceEnum値は、スケジュール関数で指定された日の繰返しの識別に使用されます。表4-8で、OccurrenceEnum値について説明しまです。

表4-8 OccurrenceEnum定数値

値

説明

nqFirst

1度目の繰返し

nqSecond

2度目の繰返し

nqThird

3度目の繰返し

nqFourth

4度目の繰返し

nqLast

最後の繰返し

4.8 Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント

プログラムを記述する際、第4章「BI SchedulerのVBScriptジョブとJScriptジョブのプログラミング」で説明されているように、Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベントを使用します。次の各項でメソッドとイベントについて説明します。

- 第4.8.1項「CreateArrayメソッド」

- 第4.8.2項「DeregisterCancelCommandメソッド」

- 第4.8.3項「GetConfigurationValueメソッド」

- 第4.8.4項「GetTempFileNameメソッド」

- 第4.8.5項「LaunchProcessメソッド」

- 第4.8.6項「RegisterCancelCommandメソッド」

- 第4.8.7項「ScheduleJobDailyメソッド」

- 第4.8.8項「ScheduleJobMonthlyDateメソッド」

- 第4.8.9項「ScheduleJobMonthlyDOWメソッド」

- 第4.8.10項「ScheduleJobNowメソッド」

- 第4.8.11項「ScheduleJobOnceメソッド」

- 第4.8.12項「ScheduleJobWeeklyメソッド」

- 第4.8.13項「OnErrorイベント」

4.8.1 CreateArrayメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

配列オブジェクトを作成します。

使用方法: JScriptのローカル配列オブジェクトはScriptメソッドに直接渡すことができないため、このメソッドがJScript専用で用意されています。このメソッドをコールして、配列オブジェクトを作成し、配列を引数として受け取るScriptメソッドにその配列オブジェクトを渡します。

構文1: Set array = CreateArray ()

構文2: Set array = CreateArray (size)

構文3: Set array = CreateArray (element 0, element 1, ..., element n)

異なる構文に応じて、配列は次のように作成されます。

- 構文1では、サイズが0(ゼロ)の配列が作成されます。

- 構文2では、指定されたサイズで配列が作成されます。

- 構文3では、指定された要素が設定されて配列が作成されます。

例4-1 例

var i;
var array1= CreateArray(2);
for (i = 0; i < array1.Size; i++)
{
array1(i) = i;
}

array1.Resize(4);
for (i = 2; i < array1.Size; i++)
{
array1(i) = i;
}

var array2 = CreateArray(0, 1, 2,3);
for (i = 0; i < array2.Size; i++)
{
if (array1(i) != array2(i))
break;
}

引数: CreateArrayメソッドの引数については、表4-9を参照してください。

戻り値: 配列オブジェクトを戻します。

表4-9 CreateArrayメソッドの引数

引数

説明

size

配列の初期サイズを指定するロング値です。

element0 … elementn

配列に設定する値です。これによって、下限が0(ゼロ)で上限がnである配列が作成されます。

4.8.2 DeregisterCancelCommandメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

以前に登録された取消しメソッドの登録を解除します。

使用方法: このメソッドをコールして、長時間の処理が正常に完了した後で、最近登録した取消しメソッドの登録を解除します。スクリプトが取り消された場合、このメソッドをコールする必要はありません。

構文: DeregisterCancelCommand

4.8.3 GetConfigurationValueメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

Oracle BI Schedulerのルート・レジストリ・エントリに対する構成の値を戻します。

使用方法: Oracle BI Schedulerに対するレジストリ設定の文字列値を戻します。configKeyとsubkeyPathの文字列は、レジストリにあるそれらの文字列と同一にする必要があります。

構文: value = GetConfigurationValue(configKey [, subkeyPath])

引数: GetConfigurationValueメソッドの引数については、表4-10を参照してください。

戻り値: 文字列値を戻します。

表4-10 GetConfigurationValueメソッドの引数

引数

説明

configKey

戻すレジストリ・キー名を指定する文字列です。

subkeyPath

(オプション)Oracle BI Schedulerのルート・パスの下のレジストリ・パスを指定する文字列値です。

4.8.4 GetTempFileNameメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

一時ファイルの名前を戻します。

使用方法: GetTempFileName()ではファイルを作成しません。ファイル作成で使用する一時ファイルの名前を指定するのみです。スクリプトが終了しても、ジョブ・スクリプトで作成したファイルは自動的に削除されません。

構文: tfname = GetTempFileName()

戻り値: 文字列値を戻します。

4.8.5 LaunchProcessメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

コマンドラインを新しいプロセスで実行します。

使用方法: このメソッドをコールして、コマンドラインを新しいプロセスで実行します。wait引数がTrueに設定されていると、プロセスで返された終了コードをこのメソッドで返します。

構文: exitcode = LaunchProcess ( commandLine [, wait, terminateOnCancel] )

引数: LaunchProcessメソッドの引数については、表4-11を参照してください。

戻り値: ロング値を戻します。

表4-11 LaunchProcessメソッドの引数

引数

説明

commandLine

実行するコマンドラインを指定する文字列です。

wait

(オプション)プロセスが終了するのをメソッドが待機するかどうかを指定するブール値です。デフォルトは「True」です。

terminateOnCancel

(オプション)スクリプトが取り消された際にメソッドでプロセスを終了させるかどうかを指定するブール値です。デフォルトは「True」です。

4.8.6 RegisterCancelCommandメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

スクリプトが取り消された際にコールされるメソッドを登録します。

使用方法: オブジェクトのメソッドが完了するのに時間がかかる場合があります。コールが戻る前にジョブが取り消されると、スクリプト・エンジンはコールが戻るまで待機する必要があります。これは数時間かかり、リソースを制限する場合があります。スクリプトが取り消されるとスクリプト・エンジンにより非同期にコールされるメソッドを登録することで、このメソッドにより問題が解決します。

長時間の処理を実行するメソッドをコールする前に、取消しメソッドを登録する必要があります。メソッドが戻ったら、DeregisterCancelCommand()をコールすることで取消しメソッドの登録を解除する必要があります。

COMオブジェクトの実装の詳細をコール側から隠し、COMオブジェクト自体で取消しコマンドのすべての登録と登録解除を処理することをお薦めします。スクリプト・オブジェクトがIDispatchインタフェースを実装しているので、スクリプト・オブジェクトのインスタンスをCOMオブジェクトに渡してから、RegisterCancelCommand()とDeregisterCancelCommand()のメソッドをコールします。

構文: RegisterCancelCommand source, methodName [, arguments]

引数: RegisterCancelCommandメソッドの引数については、表4-12を参照してください。

表4-12 RegisterCancelCommandメソッドの引数

引数

説明

source

登録されているメソッドを持つオブジェクトです。

methodName

メソッドの名前を指定する文字列です。

arguments

メソッドに渡されるオプション引数です。

4.8.7 ScheduleJobDailyメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

新しいジョブを日次トリガーでスケジュールします。

構文: ScheduleJobDaily name, description, scriptType, script, startDate, startTime, endTime, minutesInterval, daysInterval [, parameters, flags, maxRunTimeMS, maxConcurrentInstances, endDate]

引数: ScheduleJobDailyメソッドの引数については、表4-13を参照してください。

表4-13 ScheduleJobDailyメソッドの引数

引数

説明

name

ジョブの名前を指定する文字列です。

description

ジョブの説明を指定する文字列です。

scriptType

ジョブに関連付けられているスクリプト・タイプ(VBScriptまたはJScript)を指定する文字列です。

script

(オプション)ジョブに関連付けられているスクリプト・コードまたはパス(nqJobScriptContainsPathフラグが設定されている場合)を指定する文字列です。

startDate

ジョブがアクティブ化される日付を指定する日付値です。

startTime

ジョブがアクティブ化される時間を指定する日付値です。

endTime

ジョブが非アクティブ化される時間を指定する日付値です。

minutesInterval

連続するジョブの実行間隔を分単位で指定するロング値です。

daysInterval

ジョブの起動間隔を日数で指定する整数値です。

parameters

(オプション)スクリプトに渡すパラメータ値の文字列配列です。デフォルトは空の配列です。

flags

(オプション)ジョブに関連付けられているフラグを指定するロング値です。有効な設定については、第4.7.4項「JobFlagsEnum定数」を参照してください。デフォルトはnqJobNoFlagsです。

maxRunTimeMS

(オプション)ジョブを停止するまでに実行する最長時間をミリ秒単位で指定するロング値です。デフォルトは0(ゼロ)で、この場合ジョブを無期限に実行できることを意味します。

maxConcurrentInstances

(オプション)このジョブの同時実行インスタンスの最大数を指定するロング値です。デフォルトは0(ゼロ)で、この場合制限がないことを意味します。

endDate

(オプション)ジョブが非アクティブ化される時間を指定する日付値です。

4.8.8 ScheduleJobMonthlyDateメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

新しいジョブを指定月の指定日のトリガーでスケジュールします。

構文: ScheduleJobMonthlyDate name, description, scriptType, script, startDate, startTime, endTime, minutesInterval, whichDays, whichMonths [, parameters, flags, maxRunTimeMS, maxConcurrentInstances, endDate]

引数: ScheduleJobMonthlyDateメソッドの引数については、表4-14を参照してください。

表4-14 ScheduleJobMonthlyDateメソッドの引数

引数

説明

name

ジョブの名前を指定する文字列です。

description

ジョブの説明を指定する文字列です。

scriptType

ジョブに関連付けられているスクリプト・タイプ(VBScriptまたはJScript)を指定する文字列です。

script

(オプション)ジョブに関連付けられているスクリプト・コードまたはパス(nqJobScriptContainsPathフラグが設定されている場合)を指定する文字列です。

startDate

ジョブがアクティブ化される日付を指定する日付値です。

startTime

ジョブがアクティブ化される時間を指定する日付値です。

endTime

ジョブが非アクティブ化される時間を指定する日付値です。

minutesInterval

連続するジョブの実行間隔を分単位で指定するロング値です。

whichDays

ジョブを実行する月の日を指定するロング値です。有効な設定については、第4.7.2項「DayEnum定数」を参照してください。

whichMonths

ジョブを実行する月を指定する整数値です。有効な設定については、第4.7.5項「MonthEnum定数」を参照してください。

parameters

(オプション)スクリプトに渡すパラメータ値の文字列配列です。デフォルトは空の配列です。

flags

(オプション)ジョブに関連付けられているフラグを指定するロング値です。有効な設定については、第4.7.4項「JobFlagsEnum定数」を参照してください。デフォルトはnqJobNoFlagsです。

maxRunTimeMS

(オプション)ジョブを停止するまでに実行する最長時間をミリ秒単位で指定するロング値です。デフォルトは0(ゼロ)で、この場合ジョブを無期限に実行できることを意味します。

maxConcurrentInstances

(オプション)このジョブの同時実行インスタンスの最大数を指定するロング値です。デフォルトは0(ゼロ)で、この場合制限がないことを意味します。

endDate

(オプション)ジョブが非アクティブ化される時間を指定する日付値です。

4.8.9 ScheduleJobMonthlyDOWメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

新しいジョブをDOW(指定月の指定曜日)トリガーでスケジュールします。

構文: ScheduleJobMonthlyDOW name, description, scriptType, script, startDate, startTime, endTime, minutesInterval, whichOccurrences, whichDays, whichMonths [, parameters, flags, maxRunTimeMS, maxConcurrentInstances, endDate]

引数: ScheduleJobMonthlyDOWメソッドの引数については、表4-15を参照してください。

表4-15 ScheduleJobMonthlyDOWメソッドの引数

引数

説明

name

ジョブの名前を指定する文字列です。

description

ジョブの説明を指定する文字列です。

scriptType

ジョブに関連付けられているスクリプト・タイプ(VBScriptまたはJScript)を指定する文字列です。

script

(オプション)ジョブに関連付けられているスクリプト・コードまたはパス(nqJobScriptContainsPathフラグが設定されている場合)を指定する文字列です。

startDate

ジョブがアクティブ化される日付を指定する日付値です。

startTime

ジョブがアクティブ化される時間を指定する日付値です。

endTime

ジョブが非アクティブ化される時間を指定する日付値です。

minutesInterval

連続するジョブの実行間隔を分単位で指定するロング値です。

whichOccurrences

ジョブを実行する曜日の繰返しを指定する整数値です。有効な設定については、第4.7.2項「DayEnum定数」を参照してください。

whichDays

ジョブを実行する曜日を指定する整数値です。有効な設定については、第4.7.3項「DayOfWeekEnum定数」を参照してください。

whichMonths

ジョブを実行する月を指定する整数値です。有効な設定については、第4.7.5項「MonthEnum定数」を参照してください。

parameters

(オプション)スクリプトに渡すパラメータ値の文字列配列です。デフォルトは空の配列です。

flags

(オプション)ジョブに関連付けられているフラグを指定するロング値です。有効な設定については、第4.7.4項「JobFlagsEnum定数」を参照してください。デフォルトはnqJobNoFlagsです。

maxRunTimeMS

(オプション)ジョブを停止するまでに実行する最長時間をミリ秒単位で指定するロング値です。デフォルトは0(ゼロ)で、この場合ジョブを無期限に実行できることを意味します。

maxConcurrentInstances

(オプション)このジョブの同時実行インスタンスの最大数を指定するロング値です。デフォルトは0(ゼロ)で、この場合制限がないことを意味します。

endDate

(オプション)ジョブが非アクティブ化される時間を指定する日付値です。

4.8.10 ScheduleJobNowメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

新しいジョブを即時実行トリガーでスケジュールします。

構文: ScheduleJobNow name, description, scriptType, script [, parameters, flags, maxRunTimeMS]

引数: ScheduleJobNowメソッドの引数については、表4-16を参照してください。

表4-16 ScheduleJobNowメソッドの引数

引数

説明

name

ジョブの名前を指定する文字列です。

description

ジョブの説明を指定する文字列です。

scriptType

ジョブに関連付けられているスクリプト・タイプ(VBScriptまたはJScript)を指定する文字列です。

script

(オプション)ジョブに関連付けられているスクリプト・コードまたはパス(nqJobScriptContainsPathフラグが設定されている場合)を指定する文字列です。

parameters

(オプション)スクリプトに渡すパラメータ値の文字列配列です。デフォルトは空の配列です。

flags

(オプション)ジョブに関連付けられているフラグを指定するロング値です。有効な設定については、第4.7.4項「JobFlagsEnum定数」を参照してください。デフォルトはnqJobNoFlagsです。

maxRunTimeMS

(オプション)ジョブを停止するまでに実行する最長時間をミリ秒単位で指定するロング値です。デフォルトは0(ゼロ)で、この場合ジョブを無期限に実行できることを意味します。

4.8.11 ScheduleJobOnceメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

新しいジョブを1回実行トリガーでスケジュールします。

構文: ScheduleJobOnce name, description, scriptType, script, startDate, startTime [, parameters, flags, maxRunTimeMS]

引数: ScheduleJobOnceメソッドの引数については、表4-17を参照してください。

表4-17 ScheduleJobOnceメソッドの引数

引数

説明

name

ジョブの名前を指定する文字列です。

description

ジョブの説明を指定する文字列です。

scriptType

ジョブに関連付けられているスクリプト・タイプ(VBScriptまたはJScript)を指定する文字列です。

script

(オプション)ジョブに関連付けられているスクリプト・コードまたはパス(nqJobScriptContainsPathフラグが設定されている場合)を指定する文字列です。

startDate

ジョブがアクティブ化される日付を指定する日付値です。

startTime

ジョブがアクティブ化される時間を指定する日付値です。

parameters

(オプション)スクリプトに渡すパラメータ値の文字列配列です。デフォルトは空の配列です。

flags

(オプション)ジョブに関連付けられているフラグを指定するロング値です。有効な設定については、第4.7.4項「JobFlagsEnum定数」を参照してください。デフォルトはnqJobNoFlagです。

maxRunTimeMS

(オプション)ジョブを停止するまでに実行する最長時間をミリ秒単位で指定するロング値です。デフォルトは0(ゼロ)で、この場合ジョブを無期限に実行できることを意味します。

4.8.12 ScheduleJobWeeklyメソッド

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

新しいジョブを週次トリガーでスケジュールします。

構文: ScheduleJobWeekly name, description, scriptType, script, startDate, startTime, endTime, minutesInterval, weeksInterval, whichDays [, parameters, flags, maxRunTimeMS, maxConcurrentInstances, endDate]

引数: ScheduleJobWeeklyメソッドの引数については、表4-18を参照してください。

表4-18 ScheduleJobWeeklyメソッドの引数

引数

説明

name

ジョブの名前を指定する文字列です。

description

ジョブの説明を指定する文字列です。

scriptType

ジョブに関連付けられているスクリプト・タイプ(VBScriptまたはJScript)を指定する文字列です。

script

(オプション)ジョブに関連付けられているスクリプト・コードまたはパス(nqJobScriptContainsPathフラグが設定されている場合)を指定する文字列です。

startDate

ジョブがアクティブ化される日付を指定する日付値です。

startTime

ジョブがアクティブ化される時間を指定する日付値です。

endTime

ジョブが非アクティブ化される時間を指定する日付値です。

minutesInterval

連続するジョブの実行間隔を分単位で指定するロング値です。

weeksInterval

ジョブの起動間隔を週数で指定するロング値です。

whichDays

ジョブを実行する曜日を指定する整数値です。有効な設定については、第4.7.3項「DayOfWeekEnum定数」を参照してください。

parameters

(オプション)スクリプトに渡すパラメータ値の文字列配列です。デフォルトは空の配列です。

flags

(オプション)ジョブに関連付けられているフラグを指定するロング値です。有効な設定については、第4.7.4項「JobFlagsEnum定数」を参照してください。デフォルトはnqJobNoFlagsです。

maxRunTimeMS

(オプション)ジョブを停止するまでに実行する最長時間をミリ秒単位で指定するロング値です。デフォルトは0(ゼロ)で、この場合ジョブを無期限に実行できることを意味します。

maxConcurrentInstances

(オプション)このジョブの同時実行インスタンスの最大数を指定するロング値です。デフォルトは0(ゼロ)で、この場合制限がないことを意味します。

endDate

(オプション)ジョブが非アクティブ化される時間を指定する日付値です。

4.8.13 OnErrorイベント

このトピックは、第4.8項「Oracle BI Schedulerのスクリプト・オブジェクトのメソッドとイベント」の一部です。

スクリプト実行中にスクリプト・エンジンでランタイム・エラーが生じた際に発生します。これはクリーンアップのためのものですが、try/catchブロックをJScriptで活用したり適切なエラー処理をVBScriptで行うことが、このイベントを使用するよりも優れた代替手段になる場合も多くあります。

使用方法: スクリプト実行中にスクリプト・エンジンでランタイム・エラーが発生すると、スクリプト・エンジンはこのプロシージャをコールします。スクリプトが終了する前に、一時ファイルの削除やリソースの解放などのクリーンアップ処理を実行するように、このプロシージャをスクリプトで定義します。

構文: OnError

例4-2 VBScriptの使用方法:

Public Sub OnError()
LogFile.WriteLine "Encountered a runtime error in the script."
LogFile.Close
End Sub

例4-3 JScriptの使用方法:

function OnError()
{
LogFile.WriteLine("Encountered a runtime error in the
script.");
LogFile.Close();

4.9 JScriptジョブとVBScriptジョブの失敗のトラブルシューティング

nQSError: 66001] ActiveXスクリプト・エンジンの作成に失敗しました。のエラーでJScriptやVBScriptのジョブが失敗した場合、必要なスクリプト・エンジン(VBScriptまたはJScript)がこのコンピュータで利用できないか壊れています。

VBScriptが失敗した場合はregsvr32 vbscript.dllコマンドを、JScriptが失敗した場合はregsvr32 jscript.dllコマンドをそれぞれ実行することでスクリプトDLLファイルをWindowsに再登録できます。失敗したモジュールが見つかりませんでしたのメッセージが戻された場合、Windowsインストールを修復して、足りないDLLファイルを再設定する必要があります。リストア・ポイントにロールバックするか、オペレーティング・システム・インストール用オリジナル・ディスクを使用して修復することでこれを実現できます。

5 BI SchedulerのJavaジョブのプログラミング

この章では、Oracle BI Schedulerを使用して、Oracle Business Intelligenceの機能を拡張するJavaジョブと呼ばれるJavaプログラムをスケジュールする方法について説明します。Javaジョブは、ジョブ・マネージャでスタンドアロンのSchedulerジョブ(Windows)にするか、エージェントの末尾に追加されてリリース11gからアップグレードされたOracle BI Deliversの既存のJavaアクション(WindowsまたはUNIX)にできます。

リリース11gからアップグレードされた既存のJavaアクションは実行できますが、リリース12c (12.2.1)では作成できません。かわりに、このリリースで利用可能なEJBベースのJavaアクションを使用する必要があります。アクションの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionユーザーズ・ガイド』を参照してください。

この章では、Oracle BI SchedulerのJavaジョブをプログラミングする方法について説明します。内容は次のとおりです。

- 第5.1項「Oracle BI SchedulerのJavaジョブの使用方法」

- 第5.2項「Oracle BI SchedulerのJavaジョブ」

- 第5.3項「Oracle BI SchedulerのJavaジョブの追加」

- 第5.4項「Oracle BI SchedulerのカスタムJavaプログラム・パッケージ」

- 第5.5項「SchedulerJavaExtensionインタフェース」

- 第5.6項「SchedulerJobInfoインタフェース」

- 第5.7項「SchedulerJobExceptionクラス」

- 第5.8項「Oracle BI SchedulerのJava拡張例」

5.1 Oracle BI SchedulerのJavaジョブの使用方法

Javaジョブは、Oracle BI SchedulerのかわりにJavaHostプロセスで実行されるJavaプログラムです。JavaジョブはJava EJBアクションとは異なります。1つのクラスでエントリ・ポイントが定義されているJavaジョブがJARファイルでデプロイされます。このクラスはSchedulerJavaExtensionインタフェースを実装する必要があります。ジョブのコンテキストは、入力SchedulerJobInfoパラメータにより提供されます。

この項の内容は次のとおりです。

- 第5.1.1項「ジョブ・マネージャにおけるカスタムJavaジョブの追加と構成」

- 第5.1.2項「例: エージェントのJavaプログラムの作成」

- 第5.1.3項「例: Javaプログラムの構成」

5.1.1 ジョブ・マネージャにおけるカスタムJavaジョブの追加と構成

ジョブ・マネージャの「ジョブの変更」とジョブの追加のダイアログでカスタムJavaジョブの追加と構成を行います。第3.2項「ジョブ・マネージャにおけるOracle BI Schedulerのジョブの追加」と第3.3項「ジョブ・マネージャにおけるOracle BI Schedulerのジョブの変更」を参照してください。

注意:
ジョブをジョブ・マネージャで作成する前に、Oracle BI Schedulerのサーバー・コンピュータにJavaプログラムが存在する必要があります。Javaプログラムを作成してから、Javaプログラムをコールするジョブを作成します。

ジョブ・マネージャでカスタムJavaジョブの追加と構成を行うには:

1. 第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」の説明に従ってカスタム・プロパティを設定します。

2. 「新規ジョブの追加」ウィンドウで、プロパティを入力します。
たとえば、Javaプログラムのfilecopy.jarの場合、次の表に記載されている値を使用します。filecopy.jarプログラムの例を表示するには、第5.1.2項「例: エージェントのJavaプログラムの作成」を参照してください。

フィールド

値または設定

スクリプト・タイプ

Java

クラス名

sched.sched
第5.1.2項「例: エージェントのJavaプログラムの作成」で作成したJavaクラス。

クラス・パス

filecopy.jar
Javaクラスが含まれているJARファイル。

パラメータ

c:\tmp\report.pdf
注意: JavaHostプロセスの所有者は、このディレクトリ・ポイントで書込み権限を所有している必要があります。

3. 「OK」をクリックします。
エージェントの条件付きリクエストが実行された後にJavaプログラムが実行されます。

Oracle BI Deliversでは新しいJavaジョブ・アクションをエージェントに追加できません。このリリースにアップグレードされた既存のもののみを使用できます。ただし、ジョブ・マネージャで新しいJavaジョブをジョブに追加することは可能です。詳細は、第3.2項「ジョブ・マネージャにおけるOracle BI Schedulerのジョブの追加」を参照してください。

5.1.2 例: エージェントのJavaプログラムの作成

この例では、エージェントの結果を別のディレクトリにコピーするJavaプログラムを作成します。例ではファイルをコピーするロジックのあるJavaクラスを作成します。

エージェントで使用するJavaプログラムを作成するには:

1. Javaエディタを使用してJavaプログラムを作成します。

1. schedという新しいJavaクラスを作成します。

2. 次のコードをJavaエディタに貼り付けます。

package sched;
import java.io.*;
import java.lang.Thread;

import com.siebel.analytics.scheduler.javahostrpccalls.SchedulerJavaExtension;
import com.siebel.analytics.scheduler.javahostrpccalls.SchedulerJobException;
import com.siebel.analytics.scheduler.javahostrpccalls.SchedulerJobInfo;

public class sched implements SchedulerJavaExtension{
public void run(SchedulerJobInfo jobInfo) throws SchedulerJobException
{
System.out.println("JobID is:" + jobInfo.jobID());
System.out.println("Instance ID is:" + jobInfo.instanceID());
System.out.println("JobInfo to string is:" + jobInfo.toString());
try
{
// File outputFile = new File("D:\\JavaJob.txt");
File attachFile = jobInfo.getResultSetFile();

InputStream in = new FileInputStream(attachFile.getAbsolutePath());
OutputStream out = new FileOutputStream(jobInfo.parameter(0));
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0)
{
out.write(buf, 0, len);
}
in.close();
out.close();

}
catch(Exception ex)
{
throw new SchedulerJobException(1, 1, ex.getMessage());
}
}
public void cancel()
{
}
}

3. schedulerrpccalls.jarファイルをORACLE_HOME/bi/bifoundation/javahost/lib/schedulerディレクトリから各自のクラス・パスに追加します。

4. Javaクラスをエラーなしでコンパイルします。

5. コンパイル済出力をファイルにJar形式でアーカイブします。たとえば、filecopy.jarなどです。

6. ファイルの場所に注意して、エラーのないようにしてください。

5.1.3 例: Javaプログラムの構成

この例では、第5.1.2項「例: エージェントのJavaプログラムの作成」で作成したJavaプログラムを構成し、Javaジョブがエージェントで機能するようにします。

エージェントで使用するJavaプログラムを構成するには:

1. 第5.1.2項「例: エージェントのJavaプログラムの作成」で作成したfilecopy.jarファイルを次のディレクトリにコピーします。
ORACLE_HOME/bi/bifoundation/javahost/lib

2. 次の変更をconfig.xmlというJavaHost構成ファイルに対して行います。

<Scheduler>
<Enabled>True</Enabled>
<DefaultUserJarFilePath>D:\<ORACLE_HOME>\bi\bifoundation\javahost\lib</DefaultUserJarFilePath>
</Scheduler>

JavaHost構成ファイルの使用方法の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のOracle BI Presentation ServicesのJavahostサービスの使用に関する項を参照してください。

JavaHostファイルが正しく構成されていないと、エージェントとSchedulerが実行中でも、エージェントのログ・ファイルへの書込みが停止する場合があります。この場合、Windows タスク マネージャを使用してSchedulerを停止します。

3. その後、JavaHostサービスを再起動してください。

5.2 Oracle BI SchedulerのJavaジョブ

Oracle BI SchedulerはJavaHostサービスと統合して、カスタムJavaプログラムをサポートします。Oracle BI Schedulerには2つのJavaインタフェース(SchedulerJavaExtensionとSchedulerJobInfo)と1つのJavaクラス(SchedulerJobException)が用意されています。SchedulerJavaExtensionインタフェースを実装するクラスを用意します。

注意:
JavaHostサービスの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のOracle BI Presentation ServicesのJavahostサービスの使用に関する項を参照してください。

5.3 Oracle BI SchedulerのJavaジョブの追加

次の手順を使用して、Oracle BI SchedulerのJavaジョブを追加します。

注意:
プロパティを構成する前に、コンパイル済Javaクラス・ファイルがJavaHostコンピュータに存在する必要があります。

Oracle BI SchedulerのJavaジョブを追加するには:

1. ジョブ・マネージャで、「ジョブ」メニューを選択し、「新規ジョブの追加」を選択して「新規ジョブの追加」ウィンドウを表示します。
ジョブ・マネージャを開く方法を確認するには、第3.1項「ジョブ・マネージャのオープン」を参照してください。

2. 「スクリプト・タイプ」フィールドで「Java」を選択します。

3. カスタム・プロパティを指定します。これらの値を設定する方法の詳細は、第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」を参照してください。
クラス名がsample.Test、ファイル・パスがSampleのJavaジョブの値と設定の例を次に示します。追加のパスおよびパラーメータは含まれていません。

フィールド

値または設定

スクリプト・タイプ

Java

クラス名

sample.Test

クラス・ファイル(JARファイル)

Sample

4. 「OK」をクリックします。

5.4 Oracle BI SchedulerのカスタムJavaプログラム・パッケージ

Oracle BI SchedulerのカスタムJavaプログラムの公開インタフェースとクラスは、com.siebel.analytics.scheduler.javahostrpccallsでパッケージ化されています。インタフェースが2つ、クラスが1つあり、これらについては次のトピックで説明します。

- 第5.5項「SchedulerJavaExtensionインタフェース」

- 第5.6項「SchedulerJobInfoインタフェース」

- 第5.7項「SchedulerJobExceptionクラス」

5.5 SchedulerJavaExtensionインタフェース

カスタム・コードでは次のインタフェースを実装する必要があります。

package com.siebel.analytics.scheduler.javahostrpccalls;
public interface SchedulerJavaExtension {
public void run(SchedulerJobInfo jobInfo) throws SchedulerJobException;
public void cancel();
}

このインタフェースは、runとcancelのメソッドを備えています。次の表で、これらのメソッドについて説明します。

メソッド

説明

run

このメソッドはJavaHostにより起動されます。1つのSchedulerJobInfoオブジェクト(次に説明されています)が用意されており、これには、ユーザーID、ジョブID、インスタンスIDなどのインスタンス関連プロパティとパラメータが含まれています。SchedulerJobExceptionをスローするようにメソッドが宣言されます。これについても次に説明します。

cancel

ジョブ・インスタンスがまだ実行中にSchedulerが実行を取り消そうとすると、このメソッドが起動されます。cancelメソッドは別のスレッドにより同時にコールされます。そのため、実装では実行で共有されるデータを保護して、同期ブロックによりメソッドを取り消す必要があります。通常の実装では、cancelメソッド実装でcancelCalledブール値を設定し、run実装の長時間実行ループでこれをチェックします。

5.6 SchedulerJobInfoインタフェース

SchedulerJobInfoインタフェースは、現在実行されているジョブ・インスタンスに関する情報をカスタム・コードに提供します。

package com.siebel.analytics.scheduler.javahostrpccalls;
import java.io.*;
public interface SchedulerJobInfo {
public final int kJavaJobInformation = 0;
public final int kJavaJobWarning = 1;
public final int kJavaJobError = 2;
int jobID();
int instanceID();
int parameterCount();
String parameter(int index);
boolean hasResultSet();
File getResultSetFile();
String userID();
int getExitCode();
void setExitCode(int exitCode);
int getStatus();
void setStatus(int status);
String getMessage();
void setMessage(String message);
void appendMessage(String message);
}

3つのpublic final整数値であるkJavaJobInformation、kJavaJobWarningおよびkJavaJobErrorは、状況に応じたステータスの設定に使用される推奨値です。次の表は、これらの状況を示しています。

メンバー

説明

public final int kJavaJobInformation = 0

情報メッセージが格納されます。

public final int kJavaJobWarning = 1

警告メッセージが格納されます。

public final int kJavaJobError = 2

エラー・メッセージが格納されます。

次の表で、インタフェースで宣言されるすべてのメソッドについて説明します。

メソッド

説明

int jobID()

エージェントに関連付けられているジョブIDを戻します。

int instanceID()

エージェントに関連付けられているインスタンスIDを戻します。

int parameterCount()

エージェントに関連付けられているパラメータの数を戻します。

String parameter(int index)

エージェントの索引付きパラメータを戻します。(1)

boolean hasResultSet()

このエージェントに結果セットがあるかどうかを指定します。

File getResultSetFile()

このエージェントの結果セットのファイルを戻します。(2)

String userID()

エージェントを実行しているユーザーのIDを戻します。

int getExitCode()

エージェントの終了コードを戻します。

void setExitCode(int exitCode)

ユーザーはエージェントの終了コードを設定できます。

int getStatus()

エージェントのステータス・コードを戻します。

void setStatus(int status)

ユーザーはエージェントのステータス・コードを設定できます。

String getMessage()

エージェントに関連付けられているメッセージを戻します。

void setMessage(String message)

ユーザーはエージェントに関連付けられているメッセージを設定できます。既存のメッセージが置換されます。

void appendMessage(String message)

ユーザーは追加メッセージをエージェントに追加できます。

5.7 SchedulerJobExceptionクラス

カスタム・コードが正常に完了できない場合、この例外クラスのインスタンスをスローします。

package com.siebel.analytics.scheduler.javahostrpccalls;
public final class SchedulerJobException extends Exception {
public SchedulerJobException(int exitCode, int status, String message) {
m_exitCode = exitCode;
m_status = status;
m_message = message;
}
public int getExitCode() {
return m_exitCode;
}
public int getStatus() {
return m_status;
}
public String getMessage() {
return m_message;
}
private int m_exitCode;
private int m_status;
private String m_message;
}

SchedulerJavaExtensionインタフェースのrunメソッドは、SchedulerJobExceptionをスローするように宣言されています。次の表で、3つのメンバーについて説明します。

メンバー

説明

int m_exitCode

フレームワークによりこの終了コードがエージェントに割り当てられます。

int m_status

フレームワークによりこのステータス・コードがエージェントに割り当てられます。

String m_message

フレームワークによりこのメッセージがエージェントに割り当てられます。

5.8 Oracle BI SchedulerのJava拡張例

次の例では、以前に説明したインタフェースとクラスを使用して、カスタムJavaアクションを作成する方法について示しています。詳細は、第5.1項「Oracle BI SchedulerのJavaジョブの使用方法」を参照してください。

この例には長時間実行コードがないので、cancelメソッドでは処理が行われないのが妥当です。

コンパイルされたクラスが実行されると、エージェントを実行したユーザーのID、エージェントのジョブID、エージェントのインスタンスIDおよびすべての可能なパラメータを出力ファイルに収集します。

package sample;
import java.io.*;
import java.lang.Thread;
import com.siebel.analytics.scheduler.javahostrpccalls.SchedulerJavaExtension;
import com.siebel.analytics.scheduler.javahostrpccalls.SchedulerJobException;
import com.siebel.analytics.scheduler.javahostrpccalls.SchedulerJobInfo;
/**
*
* @author
*/public class SimpleTest implements SchedulerJavaExtension
{
public void run(SchedulerJobInfo jobInfo) throws SchedulerJobException
{
System.out.println("JobID is:" + jobInfo.jobID());
System.out.println("Instance ID is:" + jobInfo.instanceID());
System.out.println("JobInfo to string is:" + jobInfo.toString());
try
{
File outputFile = new File("D:\\temp\\JavaJob.txt");
FileWriter out = new FileWriter(outputFile);
out.write("User ID:\t\t" + jobInfo.userID() + "\r\n");
out.write("Job ID:\t\t" + jobInfo.jobID() + "\r\n");
out.write("Instance ID:\t\t" + jobInfo.instanceID() + "\r\n");
out.write("Parameter Count:\t\t" + jobInfo.parameterCount() + "\r\n");
for(int i = 0; i < jobInfo.parameterCount(); ++i)
{
out.write("\tParameter ");
out.write(new Integer(i).toString());
out.write(":\t" + jobInfo.parameter(i) + "\r\n");
}
out.close();
}
catch(Exception ex)
{
throw new SchedulerJobException(1, 1, ex.getMessage());
}
}
public void cancel()
{
}
}

6 Oracle BI Schedulerのジョブ・マネージャのメニュー

この章では、ジョブ・マネージャで使用可能なメニューおよびオプションについて説明します。この章の内容は次のとおりです。

- 第6.1項「ジョブ・マネージャについて」

- 第6.2項「ジョブ・マネージャにおけるツールバーのメニュー」

- 第6.3項「Oracle BI Schedulerの一般的なジョブ・プロパティ」

- 第6.4項「ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ」

- 第6.5項「ジョブ・マネージャにおけるジョブのトリガー」

6.1 ジョブ・マネージャについて

ジョブ・マネージャを使用して、Oracle BI Schedulerのジョブの追加、削除、変更または取消しを行います。たとえば、次のタスクを実行できます。

- 開始時間、開始日、実行間隔、オプションの終了日時など、実行スケジュールのオプションを設定します。

- ジョブの追加や「ジョブの変更」のダイアログを使用して、ジョブの追加や変更を行います。これらのダイアログには、次に示す3種類の情報があります。

- 一般的なジョブ・プロパティ

- 実行するアクションを指定できるスクリプト・エリア

- ジョブ・トリガーを指定できるトリガー・エリア
トリガーはジョブを実行するタイミングを定義します。

6.2 ジョブ・マネージャにおけるツールバーのメニュー

ジョブ・マネージャのツールバーには4つのメニューがあります。これらについて、次のトピックで説明します。

- 第6.2.1項「ジョブ・マネージャの「ファイル」メニュー」

- 第6.2.2項「ジョブ・マネージャの「サービス管理」メニュー」

- 第6.2.3項「ジョブ・マネージャの「ジョブ」メニュー」

- 第6.2.4項「ジョブ・マネージャの「インスタンス」メニュー」

6.2.1 ジョブ・マネージャの「ファイル」メニュー

「ファイル」メニュー・オプションについて、表6-1で説明します。

表6-1 ジョブ・マネージャの「ファイル」メニュー・オプション

コマンド

説明

スケジューラ接続を開く

「マシン名」ダイアログを開きます。ここでは代替接続メカニズムを指定します。クラスタ化されていない単一Schedulerを実行する場合、アクティブなスケジューラに直接接続オプションを使用して接続します。アクティブなスケジューラがこのマシンで実行中(さらに、特定のネットワーク・インタフェースのみをリスニングするように構成されていない)の場合、マシン名にlocalhostを使用してポート番号(通常は9704)を指定できます。Schedulerがクラスタ化されている場合、「クラスタ・コントローラを介して接続」オプションを使用します。このオプションにより、現在アクティブなSchedulerに関係なく正常に接続できます。

システムがSSLで保護されている場合、「SSL」チェック・ボックスを選択する必要があります。デフォルトのSSL構成が使用されている場合、他のSSLフィールドをすべて空にできます。

スケジューラ接続を閉じる

Oracle BI Schedulerへのジョブ・マネージャ接続を閉じます。

終了

ジョブ・マネージャを停止し、Oracle BI管理ツールに戻ります。Oracle BI Schedulerへの接続が開いたままジョブ・マネージャを終了すると、接続は閉じます。

6.2.2 ジョブ・マネージャの「サービス管理」メニュー

「サービス管理」メニュー・オプションについて、表6-2で説明します。

表6-2 ジョブ・マネージャの「サービス管理」メニュー

コマンド

説明

スケジュールの一時停止

スケジュールが続けられるまで実行するジョブをすべて停止します。「スケジュールの一時停止」はメンテナンスのために必要な場合があります。これによって、管理者が制御ジョブに介入して解決できます。過剰なリソースが使用され頻繁にスケジュールされているカスタム・ジョブがあると、ジョブ・マネージャを含め、そのコンピュータの他のプロセスが非効率的になる場合があります。スケジュールの一時停止により、ジョブの削除や変更ができます。

Oracle BI Schedulerが停止中に「スケジュールの一時停止」が必要な場合があります。この場合、「サービスの開始時に一時停止」オプションも設定しないかぎり、Oracle BIスケジューラを再起動するときにスケジューリングが続行します。JavaHostサービスの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のエージェントに影響するスケジューラの一般的な構成設定に関する項を参照してください。

スケジュールの続行

Oracle BI Schedulerの定期実行を再開します。

サービスの停止

Oracle BI Schedulerのサービスを停止します。

6.2.3 ジョブ・マネージャの「ジョブ」メニュー

「ジョブ」メニュー・オプションについて、表6-3で説明します。

表6-3 ジョブ・マネージャの「ジョブ」メニュー

コマンド

説明

新規ジョブの追加

新しいジョブのプロパティを指定する「新規ジョブの追加」ウィンドウを開きます。

ジョブの削除

選択されたジョブをOracle BI Schedulerから削除します。ジョブが削除されると、そのジョブのインスタンスもすべて削除されます。

ジョブの変更

既存のジョブのプロパティを変更できる「ジョブの変更」ウィンドウを開きます。

ジョブの表示

ジョブのプロパティを表示できる「ジョブの表示」ウィンドウを開きます。

ジョブの即時実行

選択されたスケジュール済ジョブを即時に実行します。

ジョブ・リストのリフレッシュ

右ペインの「ジョブ」リストに表示されるジョブ情報をリフレッシュします。

1つ以上のジョブに関連するインスタンスを表示するには、最初にジョブをジョブ・ビューで選択します。そして、下にあるインスタンス・ビューでリフレッシュ・アイコンを押します。

6.2.3 ジョブ・マネージャの「インスタンス」メニュー

Oracle BI Schedulerのインスタンスにより、Oracle BI Schedulerにおけるジョブの特定の実行に関する情報が記録されます。「インスタンス」メニュー・オプションについて、表6-4で説明します。

表6-4 ジョブ・マネージャの「インスタンス」メニュー

コマンド

説明

インスタンスの取消

実行中のジョブを取り消します。ジョブが正常に取り消されると、ジョブのステータスは「取消済」と表示されます。

インスタンスのパージ

使用するインスタンス削除方法を指定できる「インスタンスのパージ」ダイアログを開きます。ジョブID別やユーザーID別でインスタンスを削除したり、特定の時間の前のインスタンスを削除できます。

インスタンスの表示

選択されたインスタンスの情報が表示されます。

ジョブ・インスタンスの即時再実行

ジョブ・インスタンスを再実行します。失敗したエージェント・ジョブを再実行すると、失敗した項目のみ配信されます。

インスタンス・リストのリフレッシュ

ジョブ・インスタンス・ビューペインの「インスタンス」リストに表示されるインスタンス情報をリフレッシュします。

6.2.5 ジョブ・マネージャのインスタンス・プロパティ

ジョブ・マネージャのインスタンス・プロパティについて、表6-6で説明します。

表6-5 ジョブ・マネージャのインスタンス・プロパティ

フィールド

説明

ジョブID

このインスタンスに関連付けられているジョブのID。

ステータス: 実行中

これは、エージェント・ジョブとスクリプト・ジョブで同じです。インスタンスが実行中の場合、ステータスは「実行中」になります。

ステータス: 完了

エージェントの場合、エージェントの配信デバイスすべてに正常に配信されると、エージェントのインスタンスは「完了」に設定されます。

スクリプトの場合、スクリプトのSeverityプロパティに従って設定されます。表4-2「Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ」を参照してください。

ステータス: 失敗

エージェントの場合、エージェントのいずれかの配信デバイスへの配信に失敗すると、エージェントのインスタンスは「失敗」に設定されます。

スクリプトの場合、スクリプトのSeverityプロパティに従って設定されます。表4-2「Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ」を参照してください。

ステータス: 取消済

インスタンスをジョブ・マネージャから取り消すと、ステータスは「取消済」に設定されます。

ステータス: タイムアウト

ジョブに最長実行時間が設定されている場合に、インスタンスの実行時間がその時間を超えると、インスタンスのステータスは「タイムアウト」に設定されます。

ステータス: 警告

エージェントの場合、配信デバイスすべてではなくその一部に正常に配信されると、エージェントのインスタンスは「警告」に設定されます。

スクリプトの場合、スクリプトのSeverityプロパティに従って設定されます。表4-2「Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ」を参照してください。

ステータス: 再実行中

スケジューラのクラスタが存在し、アクティブなスケジューラでジョブの実行中にエラーが発生した場合、失敗した部分のジョブは再びスケジュールされます。

ステータス: 再度実行

修復可能な1つ以上のエラーが発生してジョブが終了した場合、失敗した部分は再びスケジュールされます。また、BIプレゼンテーション・サーバー呼出しがタイムアウトになった場合など、ステータスが「再度実行」に設定されます。ジョブのステータスが、「ステータス: 再度実行」のままの場合、自動的に再スケジュールされません。手動でジョブを再びスケジュールしてください。

インスタンスID

ジョブのこの特定インスタンスの一意のIDです。

開始時間

Schedulerがジョブ・インスタンスを開始した日時です。

終了時間

ジョブ・スケジューラがジョブ・インスタンスを完了した日時です。

ExitCode: エージェント

インスタンスの「終了コード」は、成功した配信の数に設定されます。カウントはデバイスへの正常配信の数に対応しますが、エージェントの各受信に対して複数のデバイスが存在する場合があります。

ExitCode: スクリプト

インスタンスの「終了コード」は、スクリプトのExitCodeプロパティに従って設定されます。

デフォルトは0(ゼロ)です。表4-2「Oracle BI Schedulerの読取り/書込みスクリプト・オブジェクト・プロパティ」を参照してください。

メッセージ

インスタンスのエラー情報、警告、またはインスタンス実行に関する一般的なメッセージが含まれているテキスト・メッセージです。

6.3 Oracle BI Schedulerの一般的なジョブ・プロパティ

ジョブの追加や「ジョブの変更」のダイアログで、フィールドを使用して、ジョブの一般的なプロパティの構成や変更を行います。一般的なジョブ・プロパティについて、表6-6で説明します。

さらに、表6-7でジョブ・アクション・プロパティについて、表6-8で繰返しジョブのトリガーについて説明します。

表6-6 Oracle BI Schedulerの一般的なジョブ・プロパティ

フィールド

説明

名前

短く、わかりやすいジョブ名です。このフィールドは「ジョブ・マネージャ」ウィンドウにある右ペインの「ジョブ」リスト表示にも表示されます。

説明

エンド・ユーザーに対するそのアクションに関するジョブの簡潔な説明です。このフィールドは「ジョブ・マネージャ」ウィンドウにある右ペインの「ジョブ」リスト表示にも表示されます。

ユーザーID

すべてのジョブで必須です。Oracle BI Presentation ServicesやOracle BI Serverと通信するジョブの場合、UserIDは有効なOracle Business IntelligenceユーザーIDである必要があります。このフィールドは「ジョブ・マネージャ」ウィンドウにある右ペインの「ジョブ」リスト表示にも表示されます。

このジョブを実行する際、Oracle BI Schedulerはこのフィールドで指定されたユーザーIDのために、これを実行します。

最大実行時間(ミリ秒)

ジョブの実行を強制的に取り消すまでにジョブが実行する最長時間をミリ秒単位で指定します。ジョブの実行時間が超過すると、これはタイムアウトの理由コードで失敗します。

ジョブのタイムアウトを回避するには、このフィールドを0(ゼロ)に設定します。

注意: 1秒は1,000ミリ秒です。

最終実行時間

このジョブが実行を開始した最後の時間を表示する表示専用フィールドです。このフィールドは「ジョブ・マネージャ」ウィンドウにある右ペインの「ジョブ」リスト表示にも表示されます。

ここで表示される日時が夏時間が適用されるタイム・ゾーンの日時の場合、このタイム・ゾーンは夏時間を反映します。たとえば、夏時間が適用される月に「(GMT) グリニッチ標準時間: ダブリン、エジンバラ、リスボン、ロンドン」を設定すると、これはBST(イギリス夏時間)を意味します。

次回実行時間

繰返しジョブと次回このジョブを実行する時間を表示する表示専用フィールドです。トリガーを使用して、この値を判別します。

ここで表示される日時が夏時間が適用されるタイム・ゾーンの日時の場合、このタイム・ゾーンは夏時間を反映します。たとえば、夏時間が適用される月に「(GMT) グリニッチ標準時間: ダブリン、エジンバラ、リスボン、ロンドン」を設定すると、これはBST(イギリス夏時間)を意味します。

実行インスタンス件数

現在実行中のこのジョブのインスタンスの数を表示する表示専用フィールドです。

完了時にジョブを削除

このオプションを選択すると、Oracle BI Schedulerは、そのトリガーで定義されているとおり、スケジュールされた最後の実行の後にジョブを削除します。次の実行時間がなくなると、ジョブは完了になります。ジョブが削除されると、すべてのインスタンスも削除されます。大半のジョブの場合、ジョブはジョブ・マネージャを使用して手動で削除できるため、このオプションは選択しないでください。

無効

このオプションを選択する場合、トリガーが期限切れになるとジョブ・スクリプトは実行されません。ただし、トリガー設定に応じて次の実行時間は更新されます。「無効」フィールドは、新しいジョブのテストやデバッグの際に役立ちます。すべての情報を失うことなく管理者が迅速にジョブを無効にできるためです。

存在しない場合に実行

Oracle BI Schedulerが停止している(すべてのスケジューリングが一時停止しているかOracle BI Schedulerアプリケーションが停止している)間にこのオプションを選択する場合、ジョブの次回実行時間を逃すと、Oracle BI Schedulerが再起動した後でジョブが実行されます。このオプションを選択しない場合、そのトリガーで定義されているとおり、ジョブが次の実行時間に実行されます。

ジョブが削除されたときにスクリプトを削除

このオプションを選択する場合、ジョブが削除されると、その関連ジョブ・スクリプトも削除されます。多数のジョブが同じジョブ・スクリプトを参照する場合、このオプションは設定しないでください。

6.4 ジョブ・マネージャで利用可能なジョブ・アクション・プロパティ

ジョブの追加ダイアログおよび「ジョブの変更」ダイアログで利用可能なジョブ・アクション・プロパティについて、表6-7で説明します。ジョブの追加や「ジョブの変更」のダイアログの「スクリプト」領域のフィールドを使用して、実行時にジョブが行うアクションを定義します。

表6-7 ジョブ・マネージャのジョブ・アクション・フィールド

フィールド

説明

スクリプト・タイプ

Oracle BI Schedulerでは、VBScript、JScript、JavaおよびNQCmdがサポートされています。「スクリプト」フィールドにより参照されるスクリプトのタイプに応じてこのフィールドを設定します。表示されるフィールドは、指定したスクリプトのタイプに応じて異なります。

ファイルからスクリプトをロード

(VBScriptとJScriptのみ)ジョブ・マネージャで、スクリプトのファイル名または実際の内容を「スクリプト・パス」フィールドに入力できます。

スクリプト

(VBScriptとJScriptのみ)この値は、ジョブ・スクリプト・ファイルへの参照かジョブ・スクリプト自体の内容になります。これが参照の場合、TestConnect.jsなどのファイル名をこのフィールドに入力します。パスが指定されていないと、Oracle BI Schedulerでは「デフォルト・スクリプト・パス」構成値で参照されるディレクトリを調べます。JavaHostサービスの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のエージェントに影響するSchedulerの一般的な構成設定に関する項を参照してください。パスが指定されている場合、パスはOracle BI Schedulerアプリケーションからアクセスできる必要があります。

パラメータ

(VBScript、JScriptおよびJavaのみ)フィールド値がパラメータ配列によりジョブ・スクリプトに渡されます。1行に1つずつパラメータを入力します。次に、例を示します。

c:\oracleBI\data\scheduler
cli_snowflake
SELECT Lastname FROM Employee

クラス名

(スクリプト・タイプ=Java)Javaプログラム・アクションの完全修飾実装クラスです。

クラス・パス(JARファイル)

(スクリプト・タイプ=Java)Javaプログラムが含まれているJARファイルの名前です。

追加のクラス・パス

(スクリプト・タイプ=Java)Javaプログラムが正常に実行される必要があるユーティリティ・クラスとライブラリが格納されている他のJARファイルです。JARファイルのカンマ区切りリストが格納されます。このパラメータの後、ジョブ・マネージャと同様に、コマンドライン・パラメータを付加する必要があります。

DSN(データ・ソース名)

(スクリプト・タイプ=NQCmd)BI Serverに接続するためにOracle BI Schedulerが使用するデータ・ソース名です。

注意: 偽装はNQCmdで使用されます。「ユーザーID」の値は、BI Server接続時にOracle BI Schedulerが偽装しようとするユーザーです。

SQL入力ファイル

(スクリプト・タイプ=NQCmd)NQCmdが実行するSQLファイルの完全修飾パスです。フルパスを入力するか、「...」ボタンをクリックしてファイルの場所を参照します。このフィールドは一般的に、集計の永続性の機能により生成されるファイルで使用されます。

追加コマンドライン・パラメータ

(スクリプト・タイプ=NQCmd)NQCmdに渡すパラメータです。1行に1つずつパラメータを入力します。次に、例を示します。

-o
D:\foo\bar.txt

6.5 ジョブ・マネージャにおけるジョブのトリガー

ジョブのトリガーにより、ジョブを実行するタイミングとその頻度が決まります。ジョブの追加や「ジョブの変更」のダイアログの「トリガー」エリアのフィールドを使用して、実行時にジョブが行うアクションを定義します。

Oracle BI Schedulerのジョブ・トリガーには単一実行トリガーと繰返しトリガーの2種類があります。

6.5.1 単一実行トリガー

「トリガー・タイプ」リストを使用して、トリガー・タイプを選択します。単一実行トリガーはアクションを一度実行します。単一実行トリガーには2種類があります。

- 今すぐ実行:このトリガーはジョブの即時実行を指定します。一度のみ実行されます。

- 1回実行:このトリガー・タイプのジョブは、「開始日」と「開始時間」のフィールドで指定された日時に実行され、「1回実行」を選択するとアクティブになります。指定した時間が過去の場合は、エラーが発生します。「開始時間を現在時刻に設定」オプションを選択すると、このトリガーは「1回実行」トリガーと同等になります。

6.5.2 繰返しトリガー

すべての繰返しトリガーは、ある期間に渡り、指定した間隔でジョブを実行するように指定します。繰返しトリガーで使用するフィールドを表6-8に示します。繰返しトリガーのタイプを表6-9に示します。

表6-8 ジョブ・マネージャの繰返しトリガーのフィールド

フィールド

説明

タイムゾーン

ジョブの実行で使用するタイムゾーンを指定します。instanceconfig.xmlファイルでの指定に従ってデフォルトのタイムゾーンを表示します。JavaHostサービスの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のタイムゾーン設定の説明に関する項を参照してください。

開始日

最初の繰返し区間を実行する日付を指定します。繰返し区間は、「開始時間」から「終了時間」までの時間として定義されます。「開始時間を現在時刻に設定」オプションを選択した場合、このフィールドは非表示になります。

終了日

最後の繰返し区間を実行する日付を指定します。

「終了日あり」オプションが設定されている場合、アクティブになります。終了日が設定されていない場合、ジョブは無限に実行されます。

開始時間

繰返し区間の下限を指定します。その日におけるジョブの最初の実行は、この値で指定した時間に行われます。

終了時間

繰返し区間の上限を指定します。

指定された日におけるジョブの最後の実行は、この値で指定した時間かその前に行われます。この値が「開始時間」値より早い時間の場合、その区間は指定された日の深夜に及びます。たとえば、開始時間が午後11:00で終了時間が午前2:00のトリガーは、「開始日」で指定された日の午後11:00に実行を開始し、次の日の午前2:00まで続行します。

終了日あり

このオプションを選択した場合、「終了日」を指定します。

このオプションを選択しない場合、ジョブはスケジュールされたままになります。

注意: スケジュールは永久的になりますが、ジョブ・インスタンスは永久的になりません。Oracle BI Schedulerを再起動する場合、ジョブ・スケジュールで指定したように次の実行時間が設定されます。Oracle BI Scheduler停止中にインスタンスが実行されている場合、これは取り消されます。

開始時間を現在時刻に設定

このオプションを選択すると、「開始日」と「開始時間」のフィールドは無視され、それらの値にはOracle BI Schedulerの現在の日時が移入されます。

間隔(分単位)

繰返し区間中に次のジョブを実行するまでの時間を分単位で指定します。ジョブはその開始時間に即座に実行を開始し、n分ごとに再び実行します。nはこのフィールドの値です。

最大同時インスタンス

ジョブがn分間隔(間隔(分単位)フィールドの値)で実行される場合、長時間実行ジョブでは実行が重なることがあります。このフィールドを使用して、同時実行インスタンスの数を設定します。同時インスタンスの数を制限しない場合は、この値をゼロに設定します。

6.5.2.1 繰返しトリガーのタイプ

「トリガー・タイプ」リストで利用可能な繰返しトリガー・タイプを表6-9で説明します。フィールドはすべての繰返しトリガーに関連します。選択したトリガー・タイプに応じて、追加オプションがアクティブになります。表の例は、これらの追加オプションを使用する方法を示します。

表6-9 ジョブ・マネージャの繰返しトリガーのタイプ

トリガーのタイプ

説明と例

日

ジョブを毎日または数日おきに実行します。「間隔の日数」で、次の繰返し区間までの日数を指定します。

次に、例を示します。

2010年1月1日から2010年1月15日まで、午前8:00～午後5:00の時間帯に1時間間隔でジョブを実行するには、「開始日」を1/1/10に、「開始時間」を午前8:00に、「終了時間」を午後5:00にそれぞれ設定します。また、「終了日あり」フラグを設定し、「終了日」を1/15/10に、間隔(分単位)を60に、「間隔の日数」を1にそれぞれ設定します。

ジョブを5分間隔で無限に実行するには、「開始日」を適切な日に、「開始時間」を午後12:00に、「終了時間」を午前11:59に、間隔(分単位)を5に、「間隔の日数」を1にそれぞれ設定します。

毎週

指定した曜日にジョブを実行します。「間隔の週数」で、次回実行するまでの週数を指定します。「曜日」フィールドで、実行が行われる曜日を指定します。

次に、例を示します。

隔週の月曜日、水曜日および金曜日の正午にジョブを実行するには、「開始日」を適切な日に、「開始時間」と「終了時間」を午後12:00に、間隔を1に、「間隔の週数」を2に、「曜日」を月曜日、水曜日および金曜日にそれぞれ設定します。

指定月の指定日

指定月の指定日にジョブを実行します。「月」フィールドで、このジョブを実行する月を指定します。「日」フィールドで、これらの月の対象日を指定します。指定した月に指定日が存在しない場合、その日は無視されます。

次に、例を示します。

1月、2月および3月の1日と15日の午後5:00にジョブを実行するには、「開始日」を1月1日に、「開始時間」と「終了時間」を午後5:00に、間隔を1に、「月」を1月、2月および3月に、「日」を1と15にそれぞれ設定します。

ジョブをうるう日(2月29日)ごとの午前2:00に実行するには、「開始日」を1月1日に、「開始時間」と「終了時間」を午前2:00に、間隔を1に、「月」を2月に、「日」を29にそれぞれ設定します。

指定月の指定曜日

指定月の指定曜日の特定の繰り返しでジョブを実行します。「月」フィールドで、このジョブを実行する月を指定します。「曜日」フィールドで、これらの月のジョブを実行する曜日を指定します。「繰返し」フィールドで、実行する日を指定します。繰返しは、「最初」、「第2」、「第3」、「第4」および「最後」のいずれか、またはすべてにできます。「最後」値は、その月にその曜日が4回であるか、5回であるかに応じて、第4週または第5週の指定曜日が使用されることを指定します。

次に、例を示します。

12月の第1と第3の金曜日の午前4:00～午後8:00の時間帯に1時間間隔でジョブを実行するには、「開始日」を適切な日に、「開始時間」を午前4:00に、「終了時間」を午後8:00に、間隔を60に、「月」を12月に、「曜日」を金曜日に、「繰返し」を最初第3にそれぞれ設定します。

夏時間から標準時間への切替えごとに午前3:00にジョブを実行するには、「開始日」を適切な日に、「開始時間」と「終了時間」を午前3:00に、「月」を10月に、「曜日」を日曜日に、「繰返し」を最後にそれぞれ設定します。

A SAシステム・サブジェクト・エリアの設定

この付録では、ユーザー情報をデータベースから取得し、ユーザー・プロファイル情報を移入するようにSAシステム・サブジェクト・エリアを設定する方法について説明します。Oracle BI Presentation Servicesは、アラートをOracle BI Deliversから指定された電子メール・アドレスや電話番号などに配信します。これらの配信先は、ユーザーごとのOracle Business Intelligenceプロファイルに格納されます。場合によっては、自動的に電話番号や電子メール・アドレスをユーザー・プロファイルに移入することもできます。

ユーザー・プロファイルへの電子メール・アドレスの移入のみを自動化する必要がある場合は、LDAPサーバー、または可能であれば他の認証プロバイダのユーザーの電子メール・アドレス・フィールドにアドレスを入力してください。これらの値を使用して、電子メール・アドレスをOracle Business Intelligenceユーザー・プロファイルに移入します。これによって、ユーザーはOracle Business Intelligenceにサイン・インしなくてもコンテンツをDeliversから受信できます。この機能は、そのユーザーのメール属性があるLDAPサーバーで機能します。

ただし、場合によって、電子メール・アドレスに加えて自動的にユーザー・プロファイルの追加オプションを移入することがあります。たとえば、電子メール・ゲートウェイを使用して、携帯電話に適したフォーマット(テキストなど)でDeliversにより配信する場合、自動的に携帯電話の電話番号をユーザー・プロファイル情報の一部として移入することが必要なことがあります。

この状況では、SAシステムと呼ばれるリポジトリで特別なサブジェクト・エリアを構成し、ユーザー情報をデータベースから取得し、ユーザー・プロファイル情報を移入できます。この付録では、SAシステム・サブジェクト・エリアを構成して使用することで、このタスクを実現する方法について説明します。

SAシステム・サブジェクト・エリアを使用するように選択する場合、配信プロファイルをユーザーが個々に構成しないようにする必要があります。デフォルトでは、配信プロファイルで指定した値が、SAシステム・サブジェクト・エリアに示される値よりも優先されます。

この付録のトピックは次のとおりです。

- 第A.1項「SAシステム・サブジェクト・エリアについて」

- 第A.2項「SAシステム・サブジェクト・エリアのデータ・ソースの設定」

- 第A.3項「リポジトリへのSAシステム・データのインポート」

- 第A.4項「SAシステム・サブジェクト・エリアの構成オプションの設定」

A.1 SAシステム・サブジェクト・エリアについて

以前のリリースのOracle Business Intelligenceでは、SAシステムは、グループ・メンバーシップをDeliversに公開して、電子メール・アドレスなどの連絡先情報をデータベースから取得して配信デバイスとしてDeliversで使用できるようにするサブジェクト・エリアでした。SAシステム・サブジェクト・エリア機能では自動的にユーザーの配信デバイスとプロファイルの移入が行われ、ユーザーがDeliversで「マイ・アカウント」画面を更新する必要はありませんでした。SAシステム・サブジェクト・エリアにより、各グループに関連付けられているユーザーと外部電子メール・アドレスがDeliversに提供されていました。

このリリースのOracle Business Intelligenceでは、適切にアラートを配信できるように、Deliversではグループとロールのメンバーシップを決める必要があります。ただし一般的に、LDAPアイデンティティ・ストアはグループとロールのメンバーシップのソースになります。SAシステムが定義され有効な場合、アプリケーション・ロールおよびカタログ・グループのメンバーシップは、DeliversのSAシステム・サブジェクト・エリアから導出されます。SAシステム・サブジェクト・エリアでのグループのメンバーシップの判別には、エージェントで選択されたアプリケーション・ロールおよびカタログ・グループの名前が使用されます。

LDAPサーバーを使用する場合はSAシステムは不要で、ユーザー・プロファイルの電子メール・アドレスのみを移入する必要があります。電子メール・アドレスをユーザー・プロファイルに移入する推奨ベスト・プラクティスは、LDAPサーバーでメール属性を使用することです。大半の携帯デバイスでは電子メールを直接読み込むことができるので、特定のテキストやSMSの形式はエージェントの配信では必要でないことが多く、通常は電子メール・アドレスをLDAPから移入することで十分です。

また、「エージェント条件に使用されている分析から受信者を取得します」機能を使用するためにSAシステムを使用する必要はありません。この機能は、問合せ結果から受信者を判別でき、配信データがそれらのユーザーに固有な場合に使用されます。

SAシステムの表をユーザー移入のソースとして使用して、初期化ブロックをベースにしたユーザー認証を構成できます。SAシステムのデータをこの方法で使用することは、SAシステムを使用して配信プロファイルを移入することとは別になります。むしろこれらは、同じユーザー・ソース・データに基づく独立機能です。

A.1.1 グループとアプリケーション・ロールの解決について

このリリースのOracle Business Intelligenceでは、アプリケーション・ロールを使用して、グループではなくセキュリティ・ポリシーを定義します。エージェントを作成すると、ユーザー、アプリケーション・ロールまたはカタログ・グループのどれに配信するかを選択できます。

ただし、以前のリリースとの下位互換性を維持するために、SAシステムではSAシステムのソース表のGroup Name列を使用して、エージェント用に指定されているアプリケーション・ロールとカタログ・グループの電子メール・アドレスを特定します。このため、Oracle Business Intelligenceのセキュリティ・モデルは現在のリリースで大幅に変更されていますが、SAシステム・サブジェクト・エリアは以前のリリースと同様に機能します。

SAシステムのグループ・メンバーシップを使用して、アプリケーション・ロールやカタログ・グループのメンバーシップではなく、受信者のリストを特定するので、ユーザーはメンバーをカタログ・グループに追加しないでください。かわりに、管理者が、メンバーシップ更新時にアプリケーション・ロールとカタログ・グループのメンバーシップをSAシステムと同期できます。

A.2 SAシステム・サブジェクト・エリアのデータ・ソースの設定

外部データ・ソースで、様々な配信オプションに対応する列のある表をSA_SYSTEM_USERSの名前で作成します。さらに、すべてのユーザーとグループがデータに存在することを確認する必要があります。

表A-1に、SA_SYSTEM_USERS表で必要な列を示します。一覧にある列を記載順序で作成する必要があります。この表に情報が記載されている外部スキーマは、SAシステム・サブジェクト・エリアにマップできます。

表A-1 SA_SYSTEM_USERS表の列

列

データ型

説明

LOGON

VARCHAR (50)

システムにログオンするユーザーの一意のユーザーID。

これはNULLにできません。

DISPLAY_NAME

VARCHAR2(100)

ユーザーの完全名。

これはNULLにできます。

GROUP_NAME

VARCHAR2 (20)

このユーザーが所属するグループの名前。ユーザーが複数のグループに属している場合、SAシステム表のグループごとに行が1行必要です。

データ・アクセス・セキュリティがグループのメンバーシップに基づく場合、これはNULLにしないでください。

TIMEZONE

VARCHAR2 (100)

この列は現在使用されません。将来用です。

これはNULLにする必要があります。

LANGUAGE

VARCHAR2 (20)

この列は現在使用されません。将来用です。

これはNULLにする必要があります。

LOCALE

VARCHAR2 (20)

この列は現在使用されません。将来用です。

これはNULLにする必要があります。

EMAIL

VARCHAR2 (100)

ユーザーのプライマリ電子メール・アドレス。これは、joe.perez@example.comなどの完全なSMTPアドレスです。

これはNULLにできます。

EMAIL_PRIORITY

VARCHAR2(10)

これによって、アラートがこのデバイスに配信されるタイミングが決まります。値は、3種類のエージェントの優先度(Hは高い優先度、Nは通常の優先度、Lは低い優先度)の任意の組合せにできます。たとえば、高い優先度、通常の優先度および低い優先度のアラートをこのデバイスに配信する場合、フィールドはHNLにします。高い優先度と通常の優先度のアラートのみを配信する場合、フィールドはHNにします。

Email列が指定されている場合、このフィールドはNULLにしないでください。EmailがNULLの場合、これはNULLにできます。

EMAIL_TYPE

VARCHAR2 (50)

このフィールドは、2つのテキスト文字列、'html'または'text'のいずれかにできます。大半のプライマリ電子メール・クライアントはリッチMIMEコンテンツ(埋込みイメージのあるHTML)を読み込めるので、値'html'が一般的に最適な選択肢です。プレーン・テキスト電子メールのみを読み出すことができるレガシー電子メール・クライアントをサポートするには、値'text'を選択します。Email列が指定されている場合、このフィールドはNULLにしないでください。

EmailがNULLの場合、これはNULLにできます。

CELL_PHONE

VARCHAR2 (40)

このフィールドは、テキスト・メッセージのアラートを受信する携帯電話デバイスの完全なSMTPアドレスです。たとえば、1015551234@cellphoneprovider.comなどです。テキスト・メッセージのみがこのデバイスに送信されます。

これはNULLにできます。

CELL_PHONE_PRIORITY

VARCHAR2 (20)

これによって、アラートがこのデバイスに配信されるタイミングが決まります。値は、3種類の優先度(Hは高い優先度、Nは通常の優先度、Lは低い優先度)の任意の組合せにできます。Cell Phone列が指定されている場合、このフィールドはNULLにしないでください。

Cell PhoneがNULLの場合、これはNULLにできます。

PAGER

VARCHAR2 (20)

このフィールドは、テキスト・メッセージのアラートを受信するページャ・デバイスの完全なSMTPアドレスです。たとえば、1015555678@pagerprovider.comなどです。テキスト・メッセージのみがこのデバイスに送信されます。

これはNULLにできます。

PAGER_PRIORITY

VARCHAR2 (30)

これによって、アラートがこのデバイスに配信されるタイミングが決まります。値は、3種類の優先度(Hは高い優先度、Nは通常の優先度、Lは低い優先度)の任意の組合せにできます。

Pager列が指定されている場合、このフィールドはNULLにしないでください。PagerがNULLの場合、これはNULLにできます。

HANDHELD

VARCHAR2 (20)

このフィールドは、テキスト・メッセージのアラートを受信するハンドヘルド・デバイスの完全なSMTPアドレスです。たとえば、joe.perez@handheldprovider.comなどです。テキスト・メッセージのみがこのデバイスに送信されます。

これはNULLにできます。

HAND_HELD_PRIORITY

VARCHAR2 (30)

これによって、アラートがこのデバイスに配信されるタイミングが決まります。値は、3種類の優先度(Hは高い優先度、Nは通常の優先度、Lは低い優先度)の任意の組合せにできます。

Handheld列が指定されている場合、このフィールドはNULLにしないでください。HandheldがNULLの場合、これはNULLにできます。

次のサンプルのSQL文を使用して、表A-1で説明するSA_SYSTEM_USERS表を作成します。

CREATE TABLE SA_SYSTEM_USERS
(
LOGON VARCHAR2(50) NOT NULL,
DISPLAY_NAME VARCHAR2(100),
EMAIL VARCHAR2(100),
EMAIL_PRIORITY VARCHAR2(10) DEFAULT 'HNL',
EMAIL_TYPE VARCHAR2(50) DEFAULT 'html',
CELL_PHONE VARCHAR2(40),
CELL_PHONE_PRIORITY VARCHAR2(20),
PAGER VARCHAR2(20),
PAGER_PRIORITY VARCHAR2(30),
HANDHELD VARCHAR2(20),
HANDHELD_PRIORITY VARCHAR2(30),
TIMEZONE VARCHAR2(100),
GROUP_NAME VARCHAR2(20),
LOCALE VARCHAR2(20) DEFAULT 'en',
LANGUAGE VARCHAR2(20) DEFAULT 'en',
PRIMARY KEY (LOGON));

A.3 リポジトリへのSAシステム・データのインポート

外部データ・ソースを構成した後、Oracle BIリポジトリでサブジェクト・エリアを作成してビルドする必要があります。これを行うには、最初にSA_SYSTEM_USERS表をデータ・ソースから物理レイヤーにインポートします。そして、物理レイヤーからビジネス・モデルとマッピング・レイヤーにSA_SYSTEM_USERS表と列をマップします。最後に、ビジネス・モデルとマッピング・レイヤーからプレゼンテーション・レイヤーにSA_SYSTEM_USERS表と列をマップします。サブジェクト・エリアの名前はSA Systemにする必要があります。

データをリポジトリにインポートし、情報をビジネス・モデルおよびマッピング・レイヤーとプレゼンテーション・レイヤーでモデリングする方法の詳細は、Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイドを参照してください。

図A-1に、リポジトリのプレゼンテーション・レイヤーにおける表と列を示します。

図A-1 プレゼンテーション・レイヤーのSAシステム・サブジェクト・エリア

A.4 SAシステム・サブジェクト・エリアの構成オプションの設定

特定の要素をOracle BIプレゼンテーション・サーバーのバージョンのinstanceconfig.xmlファイルに含めることで、SAシステム・サブジェクト・エリアで構成された配信オプションとユーザー定義の配信オプションの可用性を制御できます。SAシステム・サブジェクト・エリアが使用されている場合のみ、これらの要素は有効になります。

この手順を開始する前に、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』で、テキスト・エディタを使用したOracle Business Intelligence構成設定の更新に関する項に記載されている情報を十分に理解してください。

SAシステム・サブジェクト・エリアの構成オプションを変更するには:

1. Oracle BIプレゼンテーション・サーバーのバージョンのinstanceconfig.xmlファイルを開いて、編集します。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』の構成ファイルの場所に関する項を参照してください。

2. 次の要素を追加する必要があるセクションを探します。

- SystemSubjectArea: SAシステム・サブジェクト・エリアで構成された配信デバイスと配信プロファイルを認識するかどうかを指定します。

- true: SAシステム・サブジェクト・エリアで構成された配信デバイスと配信プロファイルを認識して、「マイ・アカウント」ページに表示します(デフォルト)。

- false: SAシステム・サブジェクト・エリアで構成された配信デバイスと配信プロファイルを無視し、「マイ・アカウント」ページには表示しません。

この要素をSubjectAreaMetadata要素内部に含めます。これ自体はServerInstance要素に含まれます。trueおよびfalseの値は、大文字/小文字が区別されます。

- IgnoreWebcatDeliveryProfiles: ユーザー定義の配信デバイスと配信プロファイルを無視するかどうかを指定します。

- true: ユーザー定義の配信デバイスと配信プロファイルを無視し、「マイ・アカウント」ページには表示しません(つまり、ユーザーは新しい配信デバイスと配信プロファイルを作成できません)。

- false: ユーザー定義の配信デバイスと配信プロファイルを認識して、「マイ・アカウント」ページに表示します(デフォルト)。

この要素をAlerts要素内部に含めます。これ自体はServerInstance要素に含まれます。trueおよびfalseの値は、大文字/小文字が区別されます。

- UpperCaseRecipientNames: ユーザー名が大文字であるユーザーのみが、配信対象エージェントを持つことができることを指定します。
たとえば、user_lowercaseとUSER_UPPERCASEの名前のユーザーが存在すると仮定します。UpperCaseRecipientNames要素をtrueに設定すると、エージェントはUSER_UPPERCASEにのみ送信されます。

この要素をAlerts要素内部に含めます。これ自体はServerInstance要素に含まれます。

3. 次の例に示すように、必要な要素とその祖先要素を追加します。

<ServerInstance>
<SubjectAreaMetadata>
<SystemSubjectArea>true</SystemSubjectArea>
</SubjectAreaMetadata>
<Alerts>
<IgnoreWebcatDeliveryProfiles>false</IgnoreWebcatDeliveryProfiles>
<UpperCaseRecipientNames>true</UpperCaseRecipientNames>
</Alerts>
</ServerInstance>

4. 変更内容を保存し、ファイルを閉じます。

5. Oracle Business Intelligenceを再起動します。

A.4.1 SAシステム・サブジェクト・エリアのログイン名における大文字と小文字の区別に関する管理

SAシステム・サブジェクト・エリアが使用されている場合、ログイン名がSAシステム・サブジェクト・エリアのLOGON列と比較されます。デフォルトで、この比較は大文字/小文字が区別され、ブランクは無視されます。つまり、たとえば、LDAPユーザー名"Fred"は、LOGONが"fred"であるSAシステム・サブジェクト・エリア・エントリと一致します。ただし、UpperCaseRecipientNames要素をinstanceconfig.xmlファイルで'true'に設定し、名前が大文字のユーザーにのみ配信されるようにする場合は、例外です。必要な場合、Upper()関数内で設定することでSA_SYSTEM_USERS表のLOGON値を大文字に設定します。

オラクルの法律上の注意点について

コピーライトについて

Copyright © 1994-2016, Oracle and/or its affiliates.All rights reserved.

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクルまでご連絡ください。

制限付権利について

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、Oracle Corporationおよびその関連会社は一切の責任を負いかねます。

商標と登録商標について

OracleおよびJavaはオラクルおよびその関連会社の登録商標です。その他の社名、商品名等は各社の商標または登録商標である場合があります。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

アルファ版およびベータ版ドラフト・ドキュメントについて

このドキュメントが試作版の場合:

このドキュメントは試作版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。Oracle Corporationおよびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

非公開のアルファ版およびベータ版ドラフト・ドキュメントについて

このドキュメントが非公開の試作版の場合:

このドキュメントに含まれる情報は、情報の共有のみを目的としたものであって、顧客諮問委員会(Customer Advisory Board)のメンバーとしてのお客様の立場でのみ、またはお客様のベータ・トライアル契約のみに従って検討されるべきものとします。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。このドキュメントに記載されている特徴または機能の開発、リリースおよび時期については、オラクルの裁量により決定されます。

このドキュメントには、ソフトウェアまたは印刷物などの形式を問わず、オラクルが独占的な権利を有する財産的情報が含まれています。この機密資料へのアクセスと使用は、お客様とオラクルとの間で締結され、お客様が遵守に同意した、Oracle Master Agreement、Oracle License and Oracle Services Agreement (オラクル・ライセンスおよびサービスに関する契約書)、Oracle PartnerNetwork Agreement、Oracle Distribution Agreementまたはその他のライセンス契約の条件に従うものとします。このドキュメントとその内容の開示、コピー、複製および配布には、オラクルによる事前の承諾を必要とします。このドキュメントはライセンス契約の一部となるものではなく、オラクルおよびその子会社や関連会社との契約を構成するものではありません。

ドキュメントのアクセシビリティについて

オラクルのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc を参照してください。

Oracle Supportへのアクセス

サポートをご契約のお客様には、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoか、聴覚に障害のあるお客様はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trsを参照してください。