在Oracle BI 中使用HTTP

來源:互聯網
上載者:User

標籤:

本文檔旨在說明如何在Oracle BI 中使用HTTP (URL或JavaScript) 方法實現一些特定的展示效果。 本文檔包含以下主題:1、使用Go URL在外部Portal或應用中引入Oracle BI視圖;2、使用Dashboard URL在外部Portal或應用中引用Dashboard內容;3、使用Go URL傳遞SQL或篩選器;4、使用JavaScript進行篩選   1 使用Go URL在外部Portal或應用中引入Oracle BI視圖 此部分介紹了如何通過使用Go URL在外部Portal或應用中引入Oracle BI視圖,包含以下內容:(1)、Go URL結構;(2)、Go URL參數;  1.1 Go URL結構 Oracle BI的Go URL命令可以將某一特定的Oracle BI視圖引入外部portal或應用。當你向一個頁面上添加一個視圖,或是添加一個請求Oracle BI視圖的連結,你會用到Go URL。 如果調用的是同一Web server上的頁面,URL應該寫成 /analytics/saw.dll?Go&Path= 的形式,”=”後面是你所引用的Oracle BI視圖的路徑。 如果調用的是不同Web server上的頁面,URL應該寫成 http://server_name_or_ip_address/Analytics/saw.dll?Go&Path= 的形式,”=”後面是你所引用的Oracle BI視圖在該Web server上的路徑。 下面的Go URL將返回Oracle BI的/share/test目錄下名為testform的視圖: /analytics/saw.dll?Go&Path=/shared/test/testform  1.2 Go URL參數 可以通過添加一個或多個參數來控制Go URL的效果。如果你所傳遞的參數中含有空格,那麼必須用”+”將其替換。 ?  1.2.1 使用者名稱和密碼。 如果Go URL中所請求的視圖需要特定的使用者權限察看,或者使用者未選 擇保留登陸資訊,那麼需要在Go URL中提交使用者名稱和密碼。 格式如下: &NQUser=uuu&NQPassword=ppp 例如: http://localhost:9704/analytics/saw.dll?Go&Path=/shared/test/testform&NQuser=Administrator&NQPassword=Administrator 使用者以Administrator的身份登陸,密碼為Administrator ?  1.2.2 連結選項。 返回的頁面中將包含相關連結。 格式: &Option=x x可以為以下字元: m: 修改 f: 重新整理 d: 列印r: 下載 例如: http://localhost:9704/analytics/saw.dll?Go&Path=/shared/test/testform&Options=mfdr ?  1.2.3 應用最佳化。 將根據具體參數值對返回的頁面進行適當的最佳化。 格式: &Action= 例如: http://localhost:9704/analytics/saw.dll?Go&Path=/shared/test/testform&Action=print ; 返回的頁面不會包含頁面控制,超連結等資訊,適合列印(print)。 ?  1.2.4 指定視圖。 將返回參數值所指定的視圖而不是預設的複合檢視。 格式: &ViewName= 例如: http://localhost:9704/analytics/saw.dll?Go&Path=/shared/test/testform&ViewName=Chart ; 假設請求的視圖中包含一個名為Chart的圖,那麼返回的頁面中只顯示這個圖。 ?  1.2.5 指定風格。 將以參數中指定的風格顯示視圖。 格式: &Style= 例如: http://localhost:9704/analytics/saw.dll?Go&Path=/shared/test/testform&Style=Lime ?  1.2.6 結果格式。 這個參數可以用來控制返回頁面的格式。 格式: &Format=XML/HTML 例子: http://localhost:9704/analytics/saw.dll?Go&Path=/shared/test/testform&Format=XML ; 顯示的是頁面的XML代碼。  2 使用Dashboard URL在外部Portal或應用中引用Dashboard 內容 此部分介紹了如何通過使用Dashboard URL,包含以下內容: ?(1)、Dashboard URL 結構;(2)、Dashboard URL 參數;(3)、Dashboard URL 的一個應用案例。  2.1 Dashboard URL 結構 Oracle BI的Dashboard URL命令可以將某一特定的Dashboard上的內容引入外部portal或應用。 如果調用的是同一Web server上的Dashboard,URL應該寫成 /analytics/saw.dll?Dashboard&PortalPath= 的形式,”=”後面是你所引用的Dashboard的路徑。 如果調用的是不同Web server上的頁面,URL應該寫成 http://server_name_or_ip_address/Analytics/saw.dll?Dashboard &PortalPath= 的形式,”=”後面是你所引用的Dashboard在該Web server上的路徑。 下面的Dashboard URL將返回Oracle BI的/share/test/_portal/test 目錄下名為page1的Dashboard: /analytics/saw.dll?Dashboard&PortalPath=/shared/test/_portal/test&Page=page1  2.2 Dashboard URL 參數 Dashboard URL的參數類型和用法同Go URL類似,請參照Go URL參數。  2.3 Dashboard URL 的一個應用案例 Oracle BI 所產生的視圖中,可以在列屬性部分設定導航,指向某個頁面或Dashboard。而且該列的所有行都將指向同一頁面或Dashboard,也就是說返回的結果和該行的其它值無關。在實際應用中,常常期望返回和該行其它列相關的結果,可以利用Dashboard URL實現這一點。 下面通過一個例子來說明: 現在有一個名為Market Analysis Detail的表,如下所示 ┌──────────┬───┬──────┬───────┐│Market          │Year│Dollars   │link         │├──────────┼───┼──────┼───────┤│                    │2000│$282,113│Click here││                    ├───┼──────┼───────┤│ATLANTA       │2001│$474,691│Click here││                    ├───┼──────┼───────┤│                    │2002│$74,545 │Click here│├──────────┼───┼──────┼───────┤│                    │2000│$85,595 │Click here││                    ├───┼──────┼───────┤│BIRMINGHAM │2001│$202,137│Click here││                    ├───┼──────┼───────┤│                     │2002│$18,052 │Click here│└──────────┴───┴──────┴───────┘ 其中link是一個自訂的一個列。在列屬性裡設定”將文本視為HTML”。 編輯列公式為: ‘<a href=saw.dll?Dashboard&PortalPath=/shared/test/_portal/test&Page=test&Action=Navigate&P0=1&P1=eq&P2=Markets.Market&P3=1+‘||Markets.Market||‘>Click here</a>‘ 這樣,點擊第一行的”Click here”就可以顯示該行Market的詳細銷售資訊。 前三行的”Click here”實際指向了: saw.dll?Dashboard&PortalPath=/shared/test/_portal/test&Page=test&Action=Navigate&P0=1&P1=eq&P2=Markets.Market&P3=1+ ATLANTA 後三行的”Click here”實際指向了: saw.dll?Dashboard&PortalPath=/shared/test/_portal/test&Page=test&Action=Navigate&P0=1&P1=eq&P2=Markets.Market&P3=1+ BIRMINGHAM 當然,使用Go URL也可以達到類似效果,只是最終指向的不是Dashboard,而是某個特定的Oracle BI視圖。  3 使用Go URL傳遞SQL或篩選器 此部分介紹了如何在Go URL中傳遞SQL命令以及如何傳遞篩選器來控制Oracle BI視圖結果,包含以下內容: ? (1)、在Go URL中傳遞SQL命令; ?(2)、在Go URL中傳遞篩選器。   3.1 在Go URL中傳遞SQL命令 在Go URL中傳遞SQL命令的格式如下: saw.dll?Go&SQL= 可以與&Style,&Options等參數同時使用。 需要注意的是,SQL語句中的空格必須用”+”替換。 例如: saw.dll?Go&SQL=select+Region,Dollars+from+SupplierSales 將返回從名為SupplierSales中選出的名為Region.Dollars的列。  3.2 在Go URL中傳遞篩選器 Go URL中可以包含篩選器對所請求的目標進行篩選。需要注意的是,在URL中涉及的列必須是在視圖中本身就含有篩選提示的列。 格式: &Action=Navigate &P0=n n表示要進行篩選的列的數量,取值範圍為1~6。 &P1=op op的值及其含義見下表。. 參數 說明------------------------------------------------eq 等於或在neq 不等於或不在lt 小於gt 大於ge 大於等於bwith 開始於ewith 結束於cany 包含任何(&P3中的值)call 包含所有(&P3中的值)like 使用%25代替常規的%萬用字元top &p3=1+n,n是要顯示的項的數目bottom &p3=1+n,n是要顯示的項的數目bet 介於(&P3中必須包含兩個值)null 為空白(&P3必須為0或省略)nnull 不為空白(&P3必須為0或省略)&P2=ttt.ccc ttt為表名,ccc為列名,空格必須用%20替換&P3=n+xxx+yyy+zzz n為值的數目,xxx,yyy,zzz為實際的值 例如: 返回Central和East地區的記錄: Saw.dll?Go&Path=/Shared/Test/ testform&Action=Navigate&P0=1&P1=eq&P2=Customers.Region&P3=2+Central+East 返回地區名以E開頭的記錄: saw.dll?Go&Path=vate&P0=1&P1=bwith&P2=Customers.Region&P3=1+E 返回地區名為E....t格式的記錄: saw.dll?Go&Path=/Shared/Test/ testform&Action=Navigate&P0=1&P1=like&P2=Customers.Region&P3=1+E%25t返回銷量額前兩名地區的記錄: saw.dll?Go&Path=/Shared/Test/ testform&Action=Navigate&P0=1&P1=top&P2="Sales%20Facts".Dollars&P3=1+2 返回銷售額介於2,000,000 和 2,500,000之間的記錄: saw.dll?Go&Path=/Shared/Test/ testform&Action=Navigate&P0=1&P1=top&P2="Sales%20Facts".Dollars&P3=2+2000000 +2500000 返回地區名以E開頭且銷售額超過2,000,000的記錄: saw.dll?Go&Path=/Shared/Test/ testform&Action=Navigate&P0=2&P1=cany&P2=Customers.Region&P3=1+e&P4=gt&P5="Sales%20Facts".Dollars&P6=1+20000000 注意,在Go Dashboard也可以使用類似的格式和參數傳遞篩選器。  4 使用JavaScript進行篩選 Oracle BI提供了一些JavaSript函數,可以用來實現和使用提示及篩選器類似的效果。 這些函數定義在 OracleBI\oc4j_bi\j2ee\home\applications\analytics\analytics\res\b_mozilla\viewhelper.js中。 ?  4.1 GoNav & GoNavEx 這兩個函數用於對某一特定的Oracle BI視圖進行控制。 函數原型: GoNav(event, sPath, sTbl, sCol, sVal, sTarget) 其中: event:事件指示符,一般設定為1sPath:目標Oracle BI的路徑及名稱sCol: 所要進行篩選的表名sVal: 所要進行篩選的列名sTarget (可選):設定為”_blank”表示在新視窗中顯示結果 例如: <a href= "javascript:GoNav(1,‘/Shared/Paint Demo/Sales Summaries/Regional Analysis/Market Analysis Detail‘, ‘Markets‘,‘Market‘, ‘BOSTON‘);">Click here to navigate to Transaction Details with ‘‘Some value‘</a> 該連結指向的頁面顯示名為Market Analysis Detail的視圖中,Markets.Market為’BOSTON’的記錄。 GoNav函數在其內部調用了GoNavEx。GoNavEx可以視為GoNav的多參數版本,可以同時對同一視圖中的多個列(最多4個)進行篩選。 函數原型: GoNavEx(event, sPath,sTarget,sTbl1,sCol1,sVal1,sTbl2,sCol2,sVal2,sTbl3,sCol3,sVal3,sTbl4,sCol4,sVal4) 各參數的含義與GoNav中參數含義的類似。 注意,在GoNavEx中,sTarget必須設定,不能省略。 例如: <a href= "javascript:GoNavEx(1,‘/Shared/Paint Demo/Sales Summaries/Regional Analysis/Market Analysis Detail‘,‘_blank‘,‘Markets‘,‘Market‘,‘ATLANTA‘,‘Periods‘,‘Year‘,‘2001‘);">Click here to navigate to Transaction with ‘‘Some value‘</a> 該連結指向的頁面顯示名為Market Analysis Detail的視圖中,Markets.Market為’ATLANTA’且Year為’2001’的記錄. ?  4.2 PortalNav & PortalPageNav 這兩個函數用於對某一特定的Dashboard進行控制。 函數原型: PortalNav(event, sPortal,sTbl,sCol,sVal) 其中: event:事件指示符,一般設定為1sPortal:目標Dashboard的路徑及名稱sCol: 所要進行篩選的表名sVal: 所要進行篩選的列名 例如: <a href="javascript:PortalNav(1, ‘/shared/test/_portal/test‘,‘Periods‘,‘Year‘,‘2001‘);">Click here to navigate to Transaction with ‘‘Some value‘</a> 該連結指向的頁面顯示名為test的Dashboard中,Year為’2001’的記錄。 PortalNav函數在其內部調用了PortalPageNav。PortalPageNav可以視為PortalNav的多參數版本,可以同時對同一Dashboard中的多個列(最多9個)進行篩選。  函數原型: PortalPageNav(event,sPortal,null, sTbl1,sCol1,sVal1,sTbl2,sCol2,sVal2,sTbl3,sCol3,sVal3,……sTbl9,sCol9,sVal9)  各參數的含義與PortalNav中參數含義的類似。 例如: <a href= "javascript:PortalPageNav(1,‘/shared/test/_portal/test‘,null,‘Markets‘,‘Market‘,‘ATLANTA‘,‘Periods‘,‘Year‘,‘2001‘);">Click here to navigate to Transaction with ‘‘Some value‘</a> 該連結指向的頁面顯示名為test的Dashboard中,Markets.Market為’ATLANTA’且年份為’2001’的記錄。

在Oracle BI 中使用HTTP

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.