關於cognosjs調試的信息

本文目錄一覽:

Cognos 用JS實現導出Excel按鈕 ?求代碼,急!

我用的報表開發工具是FineReport,這種情況出現在FineReport中的解決方案是

1. 描述

FineReport支持多種不同的導出方式,直接使用FineReport內置導出按鈕可以非常快捷方便的來對各種格式的輸出,但是我們在web頁面集成中的時候,往往只想講報表內容嵌入到iframe中,而工具欄以及工具欄上的按鈕都會隱藏掉,而使用web頁面自定義的按鈕,那麼,此時,這種自定義按鈕如何實現導出呢,如下圖所示:

2. 示例

如上圖所示,我們新建一個html頁面,定義一個工具欄和一個iframe,工具欄中定義上圖所示的按鈕,iframe中嵌入FR中的報表,如下圖:

2.1 FR報表設置

打開設計器,找到上面web頁面中嵌入的那張模板,由於要使用自定義按鈕作為工具欄,那麼FR報表內置的工具欄就無需顯示出來。點擊模板模板web屬性分頁預覽設置,去掉使用工具欄前面的勾選,如下圖:

2.2 自定義導出按鈕

web頁面中定義了6個自定義導出按鈕,那麼怎樣才能實現導出操作呢?

FineReport導出操作的js接口為:

導出PDF:exportReportToPDF()

導出[Excel](分頁):exportReportToExcel(‘page’)

導出[Excel](原樣):exportReportToExcel(‘simple’)

導出[Excel](分頁分sheet):exportReportToExcel(‘sheet’)

導出[圖片]:exportReportToImage(‘gif’)【括號裏面可以更換參數,比如說png,jpg等等圖片類型】

導出[word]:exportReportToWord()

故,各個按鈕的點擊事件應該調用上述的js接口來實現其對應的導出格式,比如說導出PDF,那麼其按鈕的onclikc事件為:

onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToPDF()”

註:document.getElementById(‘reportFrame’)是獲取到iframe框架,然後通過contentWindow得到報表窗口,並拿到contentPane這個報表容器,最後就可以從容器中調用各種導出接口的方法了。

其他的幾個按鈕的導出事件這裡就不一一講解了。

2.3 完整代碼

根據上述同樣的方法為其他幾個按鈕添加導出事件,完整代碼如下:

html

head

titleFineReport自定義導出/title

meta http-equiv=”Content-Type” content=”text/html; charset=GBK” /

/head

body

fieldset

div id=”toolbar”

button type=”button”  onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToPDF()”導出[PDF]/button

button type=”button”  onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToExcel(‘page’)”導出[Excel](分頁)/button

button type=”button”  onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToExcel(‘simple’)”導出[Excel](原樣)/button

button type=”button”  onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToExcel(‘sheet’)”導出[Excel](分頁分sheet)/button

button type=”button”  onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToImage(‘png’)”導出[圖片]/button

button type=”button”  onclick=”document.getElementById(‘reportFrame’).contentWindow.contentPane.exportReportToWord()”導出[Word]/button

/div

/fieldset

iframe id=”reportFrame” width=”100%” height=”100%” src=’ReportServer?reportlet=doc/Primary/DetailReport/Details.cpt’ /iframe

/body

/html

3. 效果查看

點擊不同的按鈕,即可看到其導出的結果:

Cognos通過JS設置值提示的默認值

根據需要,設置默認值,並顯示對應的列表信息。這裡設置為值提示的最後一個值,並去掉值提示中的「——」選項。效果如下:

求助:關於Cognos8打印報表的問題

是打印報表的什麼問題呢?在進行報表集成時,常常需要通過js來調用打印事件,在我用的報表軟件finereport中就是用的這種方法,在調用之前,需要先引入finereport.js,在通過doURLxxxxPrint()進行調用。

1)doURLxxxxPrint(printurl)

FR.doURLFlashPrint(“/WebReport/ReportServer?reportlet=report.cpt”)

2)doURLxxxxPrint(printurl,isPopUp)

FR.doURLFlashPrint(“/WebReport/ReportServer?reportlet=report.cpt”,true);

3)doURLxxxxPrint(config)

var printurl=””;     

var reportlets =”[{reportlet: ‘1.cpt’, p1: ‘a’}, {reportlet: ‘1.cpt’, p1: ‘b’}]”;

var config = {

url : printurl,

isPopUp : false,

data : {

reportlets: reportlets

}

};

FR.doURLPDFPrint(config);

cognos custom view 哪裡

1.在page頁面中加入4個HTLM 項目分別用來實現隱藏工具欄、打印、Excel2002導出、選擇導出格式。如下:

2.修改4個HTML屬性-》常規-》說明內容分別為:隱藏工具欄、打印、Excel2002導出、選擇導出格式。

3.修改完畢。如下所示:

4.隱藏工具欄對應的JS代碼:

style .mainHeader1{ display: none;}

.mainViewerHeader3{ display: none;}

/style

5.打印Html對應的js 代碼:(打印報表)

input type=”button” value=”打印” style=”padding-left:10px;padding-right:10px;font-size: 10px” onclick=”javascript:print();” class=”toolbarButton”/

6.Excel2002導出Html對應的JS代碼:(Excel2002格式導出報表)

input type=”button” value=”Excel2002導出” style=”padding-left:0px;padding-right:0px;font-size:10px”

onclick=”javascript:gCognosViewer.getRV().viewReport(‘XLWA’)”

class=”toolbarButton”/

7.選擇導出Html對應的JS代碼:(下拉框導出不同格式報表)

!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”

HTML

HEAD

TITLE New Document /TITLE

META NAME=”Generator” CONTENT=”EditPlus”

META NAME=”Author” CONTENT=””

META NAME=”Keywords” CONTENT=””

META NAME=”Description” CONTENT=””

script language=”javascript”

function Export_js(){

var s;

var se =document.getElementByIdx_x_x(“zbsjlx”);

var options=se.getElementsByTagName_r(“option”);

for(var i=0;ioptions.length;++i)

{

if(options[i].selected)

{

s = options[i].text;

}

}

var str=s;

if(str==’Excel2007′){

eval_r(gCognosViewer.getRV().viewReport(‘spreadsheetML’));

}else if(str==’Excel2003′){

eval_r(gCognosViewer.getRV().viewReport(‘XLWA’));

}else if(str==’Excel2002′){

eval_r(gCognosViewer.getRV().viewReport(‘XLWA’));

}else if(str==’Singlesheet’){

eval_r(gCognosViewer.getRV().viewReport(‘singleXLS’));

}else if(str==’Excel2000′){//Excel2000有可能不支持

eval_r(gCognosViewer.getRV().viewReport(‘XLS’));

}else if(str==’PDF’){

eval_r(gCognosViewer.getRV().viewReport(‘PDF’));

}else {

alert(‘請選擇導出格式!’);

}

}

/script

/HEAD

BODY

table

TD nowrap class=”Edit_content”select id=”zbsjlx” name=”zbsjlx”

option selected value=”Excel2007″Excel2007/option

option value=”Excel2003″Excel2003/option

option value=”Excel2002″Excel2002/option

option value=”Singlesheet”Singlesheet/option

option value=”Excel2000″Excel2000/option

option value=”PDF”PDF/option

/select

/TD

TD /TD

TD /TD

TD

input type=”button” value=”導出” onClick=”Export_js()” class=”toolbarButton”/

/TD

/table

/BODY

/HTML

8.界面實現效果:

請教一個cognos添加js的問題

請問題主到底是添加js的什麼問題呢,是需要添加js控件呢還是在運用js語言的時候遇到了困難呢?可以明確的說明一下嗎?

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/295375.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-26 17:15
下一篇 2024-12-26 17:15

相關推薦

  • Java 監控接口返回信息報錯信息怎麼處理

    本文將從多個方面對 Java 監控接口返回信息報錯信息的處理方法進行詳細的闡述,其中包括如何捕獲異常、如何使用日誌輸出錯誤信息、以及如何通過異常處理機制解決報錯問題等等。以下是詳細…

    編程 2025-04-29
  • 使用Python爬蟲獲取電影信息的實現方法

    本文將介紹如何使用Python編寫爬蟲程序,來獲取和處理電影數據。需要了解基本的Python編程語言知識,並使用BeautifulSoup庫和Requests庫進行爬取。 一、準備…

    編程 2025-04-28
  • Python爬取網頁信息

    本文將從多個方面對Python爬取網頁信息做詳細的闡述。 一、爬蟲介紹 爬蟲是一種自動化程序,可以模擬人對網頁進行訪問獲取信息的行為。通過編寫代碼,我們可以指定要獲取的信息,將其從…

    編程 2025-04-28
  • 如何使用Python執行Shell命令並獲取執行過程信息

    本文將介紹如何使用Python執行Shell命令並獲取執行過程信息。我們將從以下幾個方面進行闡述: 一、執行Shell命令 Python內置的subprocess模塊可以方便地執行…

    編程 2025-04-28
  • Python實現身份信息模擬生成與查驗

    本文將從以下幾個方面對Python實現身份信息模擬生成與查驗進行詳細闡述: 一、身份信息生成 身份信息生成是指通過代碼生成符合身份信息規範的虛假數據。Python中,我們可以使用f…

    編程 2025-04-27
  • Dapper使用getschema獲取表信息

    本文旨在介紹Dapper中使用getschema獲取表信息的方法和注意事項。 一、獲取某張表的所有列信息 使用Dapper獲取某張表信息,可以使用 `IDbConnection.G…

    編程 2025-04-27
  • 已裝備我軍的空中信息化作戰平台

    本文將會從多個方面詳細闡述已裝備我軍的空中信息化作戰平台。 一、平台概述 已裝備我軍的空中信息化作戰平台是一個全新的作戰系統,具備實時數據採集、處理、分析、共享的能力。它可以在不同…

    編程 2025-04-27
  • 通過提交信息搜索-使用git

    本篇文章重點講解如何使用git通過提交信息來搜索。我們將從多個方面介紹如何使用git來搜索提交信息,並提供相應的代碼示例以供參考。 一、搜索方式 Git提供了三種搜索方式,分別為:…

    編程 2025-04-27
  • Linux查看系統信息

    一、CPU信息 Linux系統下,查看CPU的信息最常用的命令是lscpu。該命令可以顯示CPU架構、核心數量、線程數、緩存大小、CPU頻率等信息。例如: lscpu 該命令會輸出…

    編程 2025-04-24
  • 軟考 信息安全工程師

    軟考 信息安全工程師是一項技能型國家級資格認證考試,主要測試考生在信息安全領域的理論知識和實踐技能,是證明個人信息安全能力的重要證書。本文將從多個方面對軟考 信息安全工程師做詳細的…

    編程 2025-04-23

發表回復

登錄後才能評論