プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionインテグレーターズ・ガイド
12c (12.2.1)
E70040-02
  目次へ移動
目次

前
 
次
 

6 HTTPおよびJavaScriptを使用したOracle BIプレゼンテーション・サービスの企業環境への統合

この章では、Oracle BIプレゼンテーション・サービスを企業環境に統合するために使用するHTTPおよびJavaScriptのメソッドについて説明します。Go URL、Go URLを使用したSQLの発行とフィルタの受渡し方法、およびダッシュボードURLについて説明します。

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

6.1 Oracle Business Intelligenceの結果の外部ポータルまたは外部アプリケーションへの取込み

この項では、Oracle BIプレゼンテーション・サービスGo URLを使用して、結果を外部のポータルや外部アプリケーションに取り込む方法を説明します。内容は次のとおりです。

6.1.1 Oracle BI Presentation ServicesのプロンプトURLについて

Oracle BI Presentation ServicesのプロンプトURLコマンドを使用すると、ダッシュボード・ページへのパスと簡素化したダッシュボード・プロンプト表示を外部ポータルやアプリケーションに組み込むことができます。基本構文の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionユーザーズ・ガイド』のプロンプト・リンクの概要に関する項を参照してください。

6.1.2 Oracle BIプレゼンテーション・サービスのGo URLについて

Oracle BIプレゼンテーション・サービスのGo URLコマンドは、特定のOracle Business Intelligenceの結果を外部ポータルや外部アプリケーションに取り込むために使用します。Go URLは、結果をお気に入りに追加したり、ダッシュボードや外部Webサイトへのリクエストにリンクを追加したりする場合に使用します。このコマンドの動作は、様々な書式やオプション引数を使用して制御できます。

攻撃者がインライン・フレーム内でアプリケーションを表示しないように、フレーム・バスティングを使用できます。このセキュリティメソッドの使用の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』の「攻撃からのOracle BI EEページの保護」を参照してください。

Go URLは、フォームとしてポストすることも、URLとして発行することもできます。URLの一部としてパラメータを発行する場合は、適切なエスケープが必要になります。スペースはプラス(+)記号で置き換える必要があります。たとえば、East Regionを値として渡すには、「East+Region」と入力します。

Oracle BIプレゼンテーション・サービス画面、ダッシュボードやHTMLの結果画面からコールするときは、URLの先頭に次の文字を使用する必要があります。

saw.dll?Go

同じWebサーバーの別の画面からコールする場合は、URLの先頭に次の文字を使用する必要があります。

/analytics/saw.dll?Go

別のサーバーの画面から参照する場合(電子メールで送信する場合など)は、URLの先頭に完全修飾されたサーバー名またはIPアドレスを使用する必要があります。

http://server_name_or_ip_address/analytics/saw.dll?Go

Go URLの起動時は、User-Agentストリング・ヘッダーが設定されている必要があります。

これらのコマンドをテストするには、ブラウザのアドレス・フィールドに完全修飾されたコマンドを入力します。

6.1.3 Oracle BIプレゼンテーション・サービスの基本のGo URLの構造

基本のGo URLコマンドには、実行するリクエストの完全なカタログ・パスを記述する必要があります。これにより、リクエストに定義されているデフォルトの結果ビューが返されます。

たとえば、次のGo URLコマンドを実行すると、SB2 という名前のリクエストに定義されているデフォルトの結果ビューが返されます。

saw.dll?Go&Path=%2Fshared%2FTest%2FSB2

6.1.4 Oracle BIプレゼンテーション・サービスのGo URLのオプション・パラメータ

Go URLの動作は、次の1つ以上のパラメータを追加することによって変更できます。無効なURLを指定した場合(たとえば、間違ったパラメータを入力した場合)、「ページが見つかりません」というエラーが詳細テキスト「HTTP 400 - Bad Request」とともにブラウザに表示されます。URL内でエンコードするためにスラッシュ(/)が必要なブラウザがあります。たとえば、Path=/Shared Folder/Test/SB2はPath=%2fShared%20Folder%2fTest%2fSB2です。


注意:

パラメータの記述に使用されているSB2は、実行するリクエストの名前です。

  • ユーザーIDとパスワード。リクエストにこの情報が指定されていない場合、ユーザーはユーザーIDとパスワードの入力を求められます。ユーザーIDおよびパスワードをURLに直接入力するのはセキュアではありません。

    書式は次のとおりです。uuuはユーザーID、pppはパスワードです。

    &NQUser=uuu&NQPassword=ppp
    

    例:

    saw.dll?Go&Path=%2fShared%2fSB2&NQUser=user1&NQPassword=rock
    

    このコマンドは、user1というユーザーIDでrockというパスワードを使用してログオンしてリクエストを実行します。

  • リンク・オプション。結果にリンクが表示されます。

    書式は次のとおりです。

    &Options=x 
    

    xには、次の文字を1つ以上使用できます。

    • m = リクエストを修正

    • f = プリンタ優先

    • d = Excelにダウンロード

    • r = 結果のリフレッシュ

    例:

    saw.dll?Go&Path=%2fShared%2fTest%2fSB2&Options=md
    This displays results with the links Modify Request and Download.
    
  • プリンタ優先。結果が印刷用フォーマットで表示されます。ページ・コントロール、ホット・リンクなどは表示されません。

    書式は次のとおりです。

    &Action=print
    

    例:

    saw.dll?Go&Path=%2fShared%2fTest%2f&Action=Print
    
  • アプリケーション優先。結果がMicrosoft Excelなどのアプリケーション用フォーマットで表示されます。ページ・コントロール、ホット・リンクなどは表示されません。

    書式は次のとおりです。

    &Action=Extract
    

    例:

    saw.dll?Go&Path%2fShared%2fTest%2fSB2&Action=Extract
    

    抽出処理もナビゲーション処理として機能するため(第6.3.2項「URL(ナビゲーション)を使用したOracle BIプレゼンテーション・サービスのGo URLへのフィルタの受渡し」を参照)、コールによって返される結果をフィルタできます。

  • 個別のビュー。デフォルトの複合ビューではなく個別の結果ビューを表示します。

    書式は次のとおりです。xxはビューの名前です。

    saw.dll?Go&Path=%2fShared%2fTest%2fSB2&ViewName=xx
    

    例:

    saw.dll?Go&Path=%2fShared%2fTest%2fSB2&ViewName=Chart
    

    リクエストにChartという名前のチャート・ビューが含まれていると仮定した場合、これによってチャート・ビューのみが表示されます。

  • 特定のスタイル。指定されたスタイルで結果を表示します。スタイルが存在しない場合は、デフォルトが使用されます。

    書式は次のとおりです。xxはスタイルの名前です。

    saw.dll?Go&Path=%2f%2fShared%2fTest%2fSB2&Style=xx
    

    例:

    saw.dll?Go&Path=%2fShared%2fSB2&Style=Lime
    

    このコマンドは、Limeという名前のスタイルを使用して結果を表示します。

  • 結果フォーマット。結果のフォーマットを制御します。

    書式は次のとおりです。xxはXML、HTMLまたはCSVです。

    saw.dll?Go&Path=%2fShared%2fTest%2fSB2&Format=xx
    

    例:

    saw.dll?Go&Path=%2fShared%2fTest%2fSB2&Format=XML
    

    このコマンドは、XML形式で結果を表示します。

  • データベース・プロンプトのパス。データベース・プロンプトをダッシュボード上のレポートにパスし、特殊文字をダッシュボード上のレポートにパスします。

    例:

    saw.dll?Dashboard&PortalPath=%2fshared%2fSAT%20Regional%2f_portal%2fSAT%20Regional%20Dashboard&Page=Region1%20-%20AMR&Action=Navigate
    &col1=%22Dim_Program_D%22.%22PROGRAM%22&val1=%22O_K5B%2B%22+%22O_K60B%22
    &col2=%22Dim_Geo_D%22.%22COUNTRY_NAME%22&val2=%22Brazil%22+%22Canada%22+%22USA%22
    &col3=%22Dim_Channel_D%22.%22CHANNEL%22&val3=%22RSLR%22
    &col4=%22Dim_Geo_D%22.%22GEO%22&val4=%22AMR%22
    &col5=%22Dim_PLAN_VERSION_D%22.%22Plan%20Version%22&val5=%22Current%20Plan%22
    

    この例は、ダッシュボード・ページ上のレポートを指します。

  • Excelでデータをダウンロード。これは、前述の構文に類似していますが、ダッシュボード・パスをレポート・パスに置き換えて、Excel2007でデータをダウンロードする構文を追加します(データのダウンロードはプロンプトされた値のためのみ)。

    例:

    saw.dll?Go&Path=%2fshared%2fSAT%20Regional%2fRegional%20Reports%20with%20guided%20navigation%2fRegion1_AMR&Action=Download&format=excel2007
    &col1=%22Dim_Program_D%22.%22PROGRAM%22&val1=%22O_K5B%2B%22+%22O_K60B%22
    &col2=%22Dim_Geo_D%22.%22COUNTRY_NAME%22&val2=%22Brazil%22+%22Canada%22+%22USA%22
    &col3=%22Dim_Channel_D%22.%22CHANNEL%22&val3=%22RSLR%22
    &col4=%22Dim_Geo_D%22.%22GEO%22&val4=%22AMR%22
    &col5=%22Dim_PLAN_VERSION_D%22.%22Plan%20Version%22&val5=%22Current%20Plan%22
    

    この例は、固有の列情報と共にExcelでダウンロードされた結果を示しています。

  • ViewState。ViewStateを更新する初期値およびアクションについて、レポートまたはダッシュボードの状態を制御します。

    レポートまたはダッシュボードは、通常、空のViewStateから開始し、後続のアクションによりViewStateが更新されます。ViewStateを使用すると、初期値をレポートまたはダッシュボードに適用できます。その後、初期のViewStateに加えて「プロンプトURL」または「移動URL」を適用できます。

    ViewStateに初期値がない場合、「プロンプトURL」または「移動URL」が空のViewStateに適用されます。

    ViewStateは一時的で、セッション中の指定された時間に適用されます。セッションが終了すると無効化します。現在のセッションでのViewStateパラメータが有効な時間を構成できます。これをするには、XmlCacheDefaults要素のinstanceconfig.xmlにあるDiskExpireMinutesを次のように編集します。

    <XmlCacheDefaults> <DiskExpireMinutes>1440</DiskExpireMinutes></XmlCacheDefaults>
    

    Javascriptでは、saw.view.getGlobalViewStateID()を使用し、現在のページでロードが終了後、そのページからviewStateIDを取得します。

    次の例では、divにビュー状態を表示します。ダッシュボード・エディタ内にテキスト・オブジェクトまたは分析内に静的テキスト・ビューを作成し、「HTMLマークアップを含む」チェックボックスを選択し、次のスクリプトを入力してください。

    <div>
      <div id="idDisplaySink"/>
       <script>displayStateID = function() { setTimeout(function() { document.getElementById('idDisplaySink').innerHTML = saw.view.getGlobalViewStateID(); }, 50) }; displayStateID();
       </script>
    </div>
    

    次の例では、状態管理をアプリケーションに組み込んで、ViewStateを使用します。

    • 空のビュー状態でページを表示するには、次のようにします。

      saw.dll?Go&Path=%2fShared%2fTest%2fSB2

      saw.dll?Go&Path=%2fShared%2fTest%2fSB2&ViewState=

    • 既存のビュー状態でページを表示するには、次のようにします。

      saw.dll?Go&Path=%2fShared%2fTest%2fSB2&ViewState=xxxxxxxxxxxxxxx

    • 既存のビュー状態でページを印刷するには、次のようにします。

      saw.dll?Go&Path=%2fShared%2fTest%2fSB2&ViewState=xxxxxxxxxxxxxxx&Action=print

    • 既存のビュー状態でページを表示し、「移動URL」パラメータを現在の状態に適用するには、次のようにします。

      saw.dll?Go&Path=%2fShared%2fTest%2fSB2&ViewState=xxxxxxxxxxxxxxx&Action=Navigate&P0=2&P1=cany&P2=Customers.Region&P3=1+e&P4=gt&P5="Sales%20Facts".Dollars&P6=1+20000000

    制限事項:

    ViewStateが使用中の場合、Action=PrintおよびAction=Downloadを使用することはできません。またGoURLパラメータまたはPURLパラメータを適用できません。

    回避策:

    Action=NavigateとGoURLパラメータまたはPURLパラメータを使用して新しいViewStateIDを取得し、Action=PrintまたはAction=DownloadとViewStateを使用して必要なコンテンツを印刷またはダウンロードしてください。

6.1.4.1 すべてのレコードの表形式での表示

すべてのレコードを表形式で表示するには、次の2通りの方法があります。

  • 「表」ビューの「1ページの行数」プロパティを10,000に設定し、基本のGoコマンドを使用します。この方法は、もう1つの方法よりも簡単です。

  • 次のURLを発行します。

    saw.dll?Go&Path=%2fusers%2fAdministrator%2fa&Action=Scroll&P5=-1&ViewID=o:go~r:report~v:compoundView!1~v:tableView!1 
    

6.2 外部ポータルまたは外部アプリケーションのダッシュボード・コンテンツの参照

この項では、Oracle BIプレゼンテーション・サービス・ダッシュボードURLの使用方法を説明します。この項の内容は次のとおりです。

6.2.1 Oracle BIプレゼンテーション・サービスのダッシュボードURLについて

Oracle BIプレゼンテーション・サービスのダッシュボードURLは、外部ポータルまたは外部アプリケーションで、特定のダッシュボード・コンテンツを取り込んだり、参照したりする際に使用できます。このコマンドの動作は、様々な書式やオプション引数を使用して制御できます。

ダッシュボードURLコマンドは、フォームとしてポストすることも、URLとして発行することもできます。URLの一部としてパラメータを発行する場合は、適切なエスケープが必要となります。スペースはプラス(+)記号で置き換える必要があります。たとえば、値としてEast Regionを渡す場合は、「East+Region」と入力します。

Oracle BIプレゼンテーション・サービスの画面(ダッシュボードやHTML形式の結果ビューなど)からコールする場合は、URLの先頭に次の文字を使用する必要があります。

saw.dll?Dashboard

同じWebサーバーの別の画面からコールする場合は、URLの先頭に次の文字を使用する必要があります。

/analytics/saw.dll?Dashboard

別のサーバーの画面から参照する場合(電子メールで送信する場合など)は、URLの先頭に完全修飾されたサーバー名またはIPアドレスを使用する必要があります。

http://server_name_or_ip_address/analytics/saw.dll?Dashboard

これらのコマンドをテストするには、ブラウザのアドレス・フィールドに完全修飾されたバージョンを入力します。

6.2.2 Oracle BIプレゼンテーション・サービスの基本のダッシュボードURLの構造

基本のダッシュボードURLコマンドにはパラメータは不要です。このコマンドは、ユーザーを認証した後、ユーザーのデフォルト・ポータルを表示します。

基本のダッシュボードURLコマンドの書式は次のとおりです。

http://server_name_or_ip_address/analytics/saw.dll?Dashboard&PortalPath=path of your dashboard

PortalPathは、ダッシュボードのパスです。ユーザーがこのURLをクリックすると、ダッシュボードの最初のページが表示されます。

http://localhost:9704/analytics/saw.dll?Dashboard&PortalPath=%2fshared%2fSample Sales Demo%2f_portal%2fSample Sales Demo Dashboard

オプションのPage引数を追加し、ユーザーがURLをクリックしたときに表示されるダッシュボード・ページを指定できます。ダッシュボード・ページ・タブのページ番号をこの引数の値として使用します。Page引数を含むURLの書式は次のとおりです。

http://server_name_or_ip_address/analytics/saw.dll?Dashboard&PortalPath=path of your dashboard&Page=page of your dashboard

http://localhost:9704/analytics/saw.dll?Dashboard&PortalPath=%2fshared%2fSample Sales Demo%2f_portal%2fSample Sales Demo Dashboard&Page=page 3

6.2.3 Oracle BIプレゼンテーション・サービスのダッシュボードURLのオプション・コマンドとパラメータ

ダッシュボードURLには、オプションのコマンドとパラメータを追加できます。コマンドとパラメータの様々な使用例とその説明を次に示します。

ユーザーIDとパスワードの例

ユーザーIDとパスワードのパラメータを追加することにより、ダッシュボードURLコマンドの動作を変更できます。これらのパラメータを省略すると、ユーザーは、最後のログオン時にログオン情報を記憶するオプションを選択していないかぎり、ユーザーIDとパスワードの入力を求められます。セッションIDまたはチケットを使用している場合は、それをNQUserパラメータとして渡します。次のパラメータの記述に使用されているSB2は、実行のリクエストの名前です。ユーザーIDおよびパスワードをURLに直接入力するのはセキュアではありません。

書式は次のとおりです。uuuはユーザーID、pppはパスワードです。

&NQUser=uuu&NQPassword=ppp

URLの例:

http://localhost:9704/analytics/saw.dll?Dashboard&PortalPath=%2fshared%2fSample%20Sales%20Demo%2f_portal%2fSample%20Sales%20Demo%20Dashboard&NQUser=user1&NQPassword=rock

PortalPagesの例

PortalPagesコマンドを追加することにより、ダッシュボードURLコマンドの動作を変更できます。このコマンドは、共通ヘッダーを使用せずにダッシュボード・ページを開きます。このコマンドを使用して、指定したダッシュボード・ページにリンクやイメージをリンク先として作成できます。さらに、新しいブラウザ・ウィンドウにダッシュボード・ページを開くことができます。

書式は次のとおりです。xxxはカタログ・パスのポータル・ページ、yyyはダッシュボード・ページ名です。

PortalPages&PortalPath=xxx&Page=yyy&Done=close

コマンドの説明は次のとおりです。

  • PortalPath - このパラメータには、ダッシュボードのカタログ・パス指定します。

  • Page - (オプション)このパラメータには、ダッシュボードのページ名を指定します。

URLの例:

http://localhost:8080/analytics/saw.dll?PortalPages&PortalPath=%2fshared%2fdashboardfolder1%2f_portal%2fdefault&Page=page%202&Done=close

Goの例

Goコマンドを追加して、分析へのカタログ・パス指定することにより、ダッシュボードURLコマンドの動作を変更できます。このコマンドは、共通ヘッダーを使用せずに分析を開きます。このコマンドを使用して、指定した分析にリンクまたはイメージをリンク先として作成できます。さらに、新しいブラウザ・ウィンドウに分析を開くことができます。

書式は次のとおりです。パスはxxで、Doneはcloseです。

Go&Path=xxx&Done=close

パラメータの説明は次のとおりです。

  • Path - このパラメータには、分析のカタログ・パスを指定します。

  • Done - このパラメータは分析のパスには不要です。

URLの例:

http://localhost:8080/analytics/saw.dll?Go&Path=%2fusers%2fadministrator%2fdashboard_actionlink_report&Action=Prompt&Done=close

PortalGoの例

PortalGoパラメータを追加して、カタログ・パスを分析に指定することにより、ダッシュボードURLコマンドの動作を変更できます。このパラメータは、ダッシュボードで分析を開きます。このパラメータを使用して、分析にリンクまたはイメージをリンク先として作成できます。さらに、既存のブラウザ・ウィンドウに分析を開くことができます。

書式は次のとおりです。ポータル・パスはxxx、パスはyyy、Doneはzzzです。

PortalGo&PortalPath=xxx&Path=yyy&Done=zzz

パラメータの説明は次のとおりです。

  • PortalPath - このパラメータはダッシュボードのカタログ・パスです。これは、分析が表示されるこのダッシュボード内になります。

  • Path - このパラメータは、分析のカタログ・パスです。

  • Done - このパラメータは、Returnリンクで使用する、戻る位置を指定します。

URLの例:

 http://localhost:8080/analytics/saw.dll?PortalGo&PortalPath=%2fusers%2fadministrator%2f_portal&Path=%2fusers%2fadministrator%2fSalesInMarket 

6.3 Oracle BIプレゼンテーション・サービスのGo URLを使用したSQLの発行とフィルタの受渡し

この項では、Go URLコマンドを使用してSQLを発行する方法、およびナビゲーションに使用するフィルタを渡す方法を説明します。この項の内容は次のとおりです。

6.3.1 SQLコマンドの発行

Go URLコマンドを使用して、Oracle Business Intelligence SQLを発行できます。この書式のGo URLのは、表形式の結果を返します。このコマンドにも、基本的なオプションである&Style=および&Options=を使用できます。

Oracle Business Intelligenceの簡易SQLを発行するには、Go URLへのパラメータとしてエスケープしたSQLを入力します。例:

saw.dll?Go&SQL=select+Region,Dollars+from+SupplierSales

FROM句は問い合せるサブジェクト・エリアの名前です。

また、IssueRawSQLコマンドを使用すると、Web処理をバイパスして、BIサーバーに直接SQLを発行することもできます。

6.3.2 URL(ナビゲーション)を使用したOracle BIプレゼンテーション・サービスGo URLへのフィルタの受渡し

Go URLは、フィルタなどのコンテキストを宛先リクエストに渡す場合にも使用できます。これには、コールにパラメータを追加します。受渡しの対象となるすべての列が、Is Promptedフィルタまたは特定のデフォルトのフィルタとともに宛先に設定されていることを確認する必要があります。

6.3.2.1 ナビゲーション・パラメータ

ナビゲーション・コマンドの基本構文は、第6.2.2項「Oracle BIプレゼンテーション・サービスの基本のダッシュボードURLの構造」で説明した構文と同じですが、さらにAction=Navigateパラメータを追加し、P1 - Pnのパラメータを必要な数だけ使用できます。

デフォルトでは、100個までパラメータを追加できます。ただし、パラメータの数は、instanceconfig.xmlにあるPrompts/MaxPromptedURLParamsの設定を変更することによって調整できます。

&Action=Navigate

&P0=n nは、フィルタする列の数です。現在使用できる数は1~6です。

&P1=op opは次の演算子のいずれかです。

演算子 意味
eq 等しい
neq 等しくない
lt より小さい
gt より大きい
ge 以上
le 以下
bwith 次で始まる
ewith 次で終わる
cany (&P3内の値の)いずれかを含む
call (&P3内の値の)すべてを含む
like 通常の%ワイルドカードのかわりに、%25を入力する必要があります。後続の例を参照してください。
top &P3の値は1+nです。nは、先頭に表示する項目の数です。
bottom &P3の値は1+nです。nは、末尾に表示する項目の数です。
bet 間にある(&P3には2つの値を指定します)
null NULL(&P3は0になるか、省略されます)
nnul NULLでない(&P3は0になるか、省略されます)
&P2=ttt.ccc このパラメータでは、tttは表名、cccは列名です。表または列にスペースが含まれる場合は、二重引用符で囲む必要があります。スペースは、%20としてエスケープする必要があります(例: Measures."Dollar%20Sales)。
&P3=n+xxx+yyy+...+zzz このパラメータでは、nは値の数、xxx、yyyおよびzzzは実際の値です。

注意: P3の値が数字で始まる場合は、値全体を引用符で囲む必要があります。例:

saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=1&P1=top&P2=Customers.Region&P3="7West"


注意:

&P1、&P2および&P3の設定は、&P0の値に応じて、&P4 - P6、&P7 - P9、&P10 - P12、&P13 - P15および&P16 - P18についても必要なだけ繰り返すことができます。

6.3.2.2 ナビゲーションの例

次の例は、EastおよびCentral地域のレコードを返します。

Saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=1&P1=eq&P2=Customers.Region&P3=2+Central+East

次の例は、名前の最初の文字がEで末尾がt(E....t)の地域のレコードを返します。

saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=1&P1=like&P2=Customers.Region&P3=1+E%25t

次の例は、販売額(ドル)を基準とした上位2つの地域を返します。

saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=1&P1=top&P2="Sales%20Facts".Dollars&P3=1+2

次の例は、引数の数が指定されていない構文を示しています。

saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=1&P1=top&P2=Customers.Region&P3=Central

注意:

引数の数の指定を省略できるのは、引数の値を1つしか使用しない場合のみです。

次の例は、販売額が2,000,000 - 2,500,000ドルに該当するレコードを返します。

saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=1&P1=top&P2="Sales%20Facts".Dollars&P3=2+2000000+2500000

次の例は、名前が文字Eで始まる地域のレコードを返します。

saw.dll?Go&Path=vate&P0=1&P1=bwith&P2=Customers.Region&P3=1+E 

次の例は、名前に文字Eが含まれ、販売額が2000万ドルを上回っている地域のレコードを返します。

saw.dll?Go&Path=%2f/Shared/Test/SB2&Action=Navigate&P0=2&P1=cany&P2=Customers.Region&P3=1+e&P4=gt&P5="Sales%20Facts".Dollars&P6=1+20000000

Oracle BI Presentation Servicesでは、現在、グラフ・ビュー、表ビュー、ピボット・テーブル・ビュー、HTMLビュー、外部アプリケーションおよびWebページからのナビゲーションがサポートされています。宛先の検索には、コンテキストを取得する列に定義されているフィルタを設定する必要があります。これには、特定のフィルタ(通常はIs Promptedフィルタ)を指定できます。宛先に適用されるのは、ナビゲーション・コールで具体的に参照されるTable.Column値だけでなく、対応するtable.columnsが宛先に設定されているソース・リクエストのすべてのフィルタです。したがって、ソースの適切なコンテキストを宛先に渡すことができます。

6.3.2.3 JavaScriptを使用したナビゲーション

ナビゲーションは、現在、列のカスタムのテキスト/日付フォーマッタを使用して実行できます。この主要概念は、ナビゲート元の列を検索に追加することです。その後、列のプロパティで「Custom Text Format」を選択し、提供されている2つのJavaScript関数のいずれかをコールするHTMLを入力します。この手法は、列のソートやカスタムJavaScript関数のコールなど、多くの処理を実行するために使用できます。

Oracle BIプレゼンテーション・サービスには、表ビューおよびピボット・ビューからナビゲートできる2つのJavaScript関数(GoNavおよびPortalNav)が含まれています。これらの関数はORACLE_HOME/bifoundation/web/app/res/b_mozilla/viewhelper.jsにあります。前者は、特定の検索へのナビゲーションを処理します。後者は、特定のダッシュボードへのナビゲーションを処理します。これらの構文について、ナビゲーションの実装に使用できるカスタム・テキスト・フォーマットの例とともに次に説明します。


注意:

スタイル・シートを使用してナビゲート可能なテキストの外観を制御するために、Oracle BIプレゼンテーション・サービスでは、class=Navで標準で使用します。

GoNav関数

function GoNav(event, sPath, sTbl, sCol, sVal, sTarget)

パラメータの内容は次のとおりです。

event = イベント・インジケータ

sPath = 宛先検索のカタログ・パス

sTbl = フィルタ対象の論理表名

sCol = フィルタ対象の論理列名

sVal = フィルタ処理の基準となる値

sTarget (オプション) = 新しいブラウザ・ウィンドウに結果を表示するには「_blank」と指定します。

GoNavコールのカスタム・テキスト・フォーマットの例

GoNavコールおよびPortalNavコールはHTML文に記述できます(引用符を含む)。

[html]"<font class=nav onclick=\"JavaScript:GoNav(event, '/shared/topaz/performance/transaction details','
    Transaction','Quality','"@"');\">"@"</font>

表6-1はこの例の要素を説明しています。

表6-1 GoNavコールの要素の分析

要素 説明

[html]

Oracle BIプレゼンテーション・サービスに、後続のテキストをHTMLとして解釈するよう指示します。「より小さい」を示す文字(<)は、HTMLタグ内で使用する場合、二重引用符(")を前に付ける必要があります。

"<font

JavaScriptコールを添付できるHTMLタグ。<div>、<span>、<a>などを使用できます。

class=nav

HTMLタグのフォーマット設定に使用するCSSスタイル・クラス。

onclick=\"JavaScript:GoNav('event, /shared/topaz/performance/transaction details','Transaction','Quality','"@"');\"

JavaScript関数をコールするメソッド。ユーザーがこのHTMLタグの内容をクリックすると、JavaScript関数がコールされます。

>

フォント・タグの最後の文字。

"@"

Oracle BIプレゼンテーション・サービスに、アットマーク(@)を実際の列の値に置換するよう指示します。[html]を使用する場合、@記号は二重引用符(")で囲む必要があります。

</font>

<font>タグに対応する終了タグ。


次のGoNavの例は、このHTMLをダッシュボードに配置します。

<a href="javascript:GoNav(event, '/shared/topaz/performance/transaction details','Transaction','Quality','Some value');">Click here to navigate to Transaction Details with ''Some value'</a>

PortalNav関数

function PortalNav(event, sPortal,sTbl,sCol,sVal)

event = イベント・インジケータ

sPortal = 宛先ポータルのカタログ・パス

sTbl = フィルタ対象の論理表名

sCol = フィルタ対象の論理列名

sVal = フィルタ処理の基準となる値

PortalNavコールのカスタム・テキスト・フォーマットの例

引用符は必ず次の例と同じ位置に挿入してください。

"<font class=nav onclick=\"JavaScript:PortalNav(event, '/shared/topaz/_portal/transaction analysis','
    Transaction','Type','"@"');\">"@"</font>"

6.3.2.4 HTMLの結果からのナビゲーション

この方法は、第6.3.2.3項「JavaScriptを使用したナビゲーション」で説明した方法と同じです。ただし、カスタム・フォーマッタを使用するのではなく、HTML構文に@記号にかわる静的な値を入力します。

6.4 Oracle Business Intelligenceとサード・パーティのSQLツールとの統合例

この項では、Microsoft Accessとの統合例を取り上げながら、サード・パーティのSQLツールをOracle Business Intelligenceに統合する際の要件について説明します。Oracle Business Intelligenceは企業データのアクセスと統合に使用するミドルウェア・プラットフォームとして設計されているため、一般的なレポート・ライターやビジネス・インテリジェンス・ツールはBIサーバーとネイティブに通信できます。

サード・パーティのSQLツールのほとんどは、クロス結合を避けるために、問合せ内に結合条件を記述する必要があります。クロス結合は、リクエストにWHERE句が使用されていない場合に発生し、それにより、結合に使用される表のデカルト積が作成されます。デカルト積のサイズは、1つ目の表の行数と2つ目の表の行数の積になります。

Microsoft AccessをBIサーバーに統合するには、BIサーバーの管理者がOracle BI管理ツールのプレゼンテーション・レイヤー内のキーを公開する必要があります。

6.4.1 サード・パーティのSQLツールの統合例

  1. ビジネス・モデルとマッピング・レイヤーのキーをプレゼンテーション・レイヤーにドラッグ・アンド・ドロップし、リポジトリを保存します。

  2. Microsoft Accessを開いて、「Blank Access Database」オプションを選択します。プロンプトが表示されたら、名前に「oracle-analytics.mdb」と入力し、「Create」をクリックします。

  3. 新しいMicrosoft Accessデータベースが作成されたら、画面の空白部分を右クリックして、「Link Tables」を選択します。

  4. 「Files of Type」ドロップダウン・リスト・ボックスで、「ODBC Databases」を選択します。

    「Select a Source」ダイアログが表示され、データ・ソース名を入力するよう求められます。

  5. Machine Data Source」タブをクリックし、Analytics_Web DNSを選択して、「OK」をクリックします。

    Oracle BIサーバーにログインするよう要求されます。

  6. ユーザーIDとパスワードを入力します。

    「Import Objects」ダイアログ・ボックスが表示されます。

  7. Select All」ボタンをクリックするか、Oracle Business Intelligenceから目的の論理表を選択します。

    インポートの完了にはしばらく時間がかかる場合があります。

  8. インポートが完了したら、画面の空白部分を右クリックして、「Relationships」を選択します。

    1. 目的の表を追加し、ディメンション表(Period、Market、Product)からファクト表(Sales Measures)にキーをドラッグ・アンド・ドロップします。

    2. Periodキーをperkey列の上にドラッグ・アンド・ドロップします。対応するキーごとにこの操作を繰り返して、結合を作成します。

    これで、リクエストのテストと実行を行えるようになりました。

  9. Queries」ボタンから「Create query in Design view」を選択します。

    1. 「Markets」、「Products」および「Sales Facts」を選択します。

    2. 「Region」、「Brand」、「Units」および「Dollars」をそれぞれ追加して「Run」をクリックします。

6.5 スクリプトを使用したダッシュボード・ページへのリンクの取得

ダッシュボード・ページのカスタム・スクリプトで、表6-2の説明にあるJavaScript関数を使用することによって、ダッシュボード・ページへのリンク(ブックマーク・リンクとプロンプト・リンクの両方)を取得できます。


注意:

これらのJavaScript関数が機能するようにするには、HardenXSS要素をfalseに設定する必要があります。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のプレゼンテーション・サービスの詳細構成の変更に関する項を参照してください。

ブックマーク・リンクとプロンプト・リンクの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionユーザーズ・ガイド』のダッシュボード・ページへのリンクの作成に関する項を参照してください。

表6-2 ダッシュボード・ページへのリンクを取得するJavaScript関数

JavaScript関数 説明

LinkToPage(bInlineDrill,bGetBookmarkOnly)

変数saw.bookmarkURLの値をブックマーク・リンクに設定します。

次のように引数を設定します。

  • bInlineDrill - 「ページ・オプション」ボタンをページに表示する場合はtrueを設定し、表示しない場合はfalseを設定します。

  • bGetBookmarkOnly - ブックマークURLがブラウザのアドレス・バーでリフレッシュされないようにするにはtrueを設定します。ブックマークURLがブラウザのアドレス・バーでリフレッシュされるようにするにはfalseを設定します(または省略します)。

GetPURL()

プロンプト・リンクを文字列として返します。