反饋已提交

網絡繁忙

排程管理程式範本

1. 概述

1.1 版本

報表伺服器版本插件版本
11.0.5V1.0.1

1.2 應用場景

資料決策管理系統中的排程管理,在“調度物件”設定的步驟,可以選擇程式報表執行。

2. 插件介紹

2.1 插件安裝

點選下載插件:下載

設計器插件安裝方法請參見:設計器插件管理

伺服器安裝插件方法請參見:伺服器插件管理

2.2 操作方法

1、程式範本:安裝定時排程器範本插件後,開啟資料決策管理系統,進入“管理系統->排程管理”頁面,新增任務後,可以看到在“調度物件”介面,出現了“程式範本”選擇介面,如下圖所示:

原“範本選擇”位置出現“選擇程式”下拉框,可以選擇一個放置在WEB-INF/classes中的自訂java類程式範本,以便在任務中執行。

其中,java類繼承自com.fr.form.main.Form、com.fr.web.core.Reportlet、com.fr.main.impl.WorkBook三個系統類(請參考程式報表java API

其他配置和“報表範本”配置相同。檔案名稱預設使用java類的全名。

2、多選程式範本:安裝定時排程器範本插件後,開啟資料決策管理系統,進入“管理系統->排程管理”頁面,新增任務後,可以看到在“調度物件”介面,出現了“多選程式範本”選擇介面,如下圖所示:

此時,可以選擇多個程式報表範本和多個普通範本,以便在任務中執行。其他配置和“多選報表範本”配置相同。程式報表範本檔案名稱預設使用java類的全名。

3. 範例

3.1 設計報表

繼承com.fr.web.core.Reportlet:

public class MyReportlet extends Reportlet {
@Override
public TemplateWorkBook createReport(ReportletRequest req) {
WorkBook workbook = new WorkBook();
ReportWebAttr web = new ReportWebAttr();
web.setTitle(getClass().getSimpleName());
workbook.setReportWebAttr(web);
WorkSheet sheet = new WorkSheet();

//p1為範本參數,可在呼叫時傳遞
DefaultTemplateCellElement cell = new DefaultTemplateCellElement(00"Hello World, " + req.getParameter("p1"));
sheet.addCellElement(cell);

Formula f = new Formula("now()");
// 設定匯出編輯結果時是否保留公式
f.setReserveInResult(false);
// 設定填報時計算後是否保留公式
f.setReserveOnWriteOrAnaly(true);
cell = new DefaultTemplateCellElement(11, f);
sheet.addCellElement(cell);

workbook.addReport(sheet);
return workbook;
}
}

繼承com.fr.main.impl.WorkBook:

public class MyTemplateWorkBook extends WorkBook {
public MyTemplateWorkBook() {
super();

ReportWebAttr web = new ReportWebAttr();
web.setTitle(getClass().getSimpleName());
setReportWebAttr(web);
WorkSheet sheet = new WorkSheet();

DefaultTemplateCellElement cell = new DefaultTemplateCellElement(00"Hello World, ");
sheet.addCellElement(cell);

Formula f = new Formula("now()");
// 設定匯出編輯結果時是否保留公式
f.setReserveInResult(false);
// 設定填報時計算後是否保留公式
f.setReserveOnWriteOrAnaly(true);
cell = new DefaultTemplateCellElement(11, f);
sheet.addCellElement(cell);

addReport("sheet", sheet);
}
}

繼承com.fr.form.main.Form

public class MyForm extends Form {
public MyForm() {
super();

WBorderLayout layout = new WBorderLayout();
layout.setWidgetName("form");

WFitLayout body = new WFitLayout();
layout.addCenter(body);
body.setWidgetName("body");
body.setLayoutType(WBodyLayoutType.FIT);

/*
 * 圖表
 */

ChartEditor chartEditor = new ChartEditor();
chartEditor.setWidgetName("chart0");
chartEditor.getBorderStyle().setBackground(ColorBackground.getInstance(Color.white));
PiePlot4VanChart plot = new PiePlot4VanChart();
plot.setRoseType(ChartRoseType.PIE_DIFFERENT_ARC);
OneValueCDDefinition data = new OneValueCDDefinition();
data.setTableData(new NameTableData("ds1"));
data.setCategoryName("無");
data.setSeriesColumnName("產品類型");
data.setValueColumnName("銷量");
data.setDataFunction(new SumFunction());
VanChart chart = new VanChart(plot);
chart.setFilterDefinition(data);
chart.getTitle().setTitleVisible(false);
chartEditor.resetChangeChartCollection(new ChartCollection(chart));
WTitleLayout chartLayout = new WTitleLayout();
chartLayout.setWidgetName("chart0");
chartLayout.addBody(chartEditor, new Rectangle(00400180));
com.fr.form.ui.Label titleLabel = new com.fr.form.ui.Label();
titleLabel.setWidgetName("Title_chart0");
titleLabel.setWidgetValue(new WidgetValue(""));
chartLayout.addTitle(titleLabel, new Rectangle(02040020));
BorderPacker borderStyle = chartEditor.getBorderStyle();
borderStyle.setType(LayoutBorderStyle.TITLE);
TitlePacker t = borderStyle.getTitle();
t.setTextObject("測試圖表");
t.setPosition(Constants.CENTER);

body.addWidget(new WAbsoluteLayout.BoundsWidget(chartLayout, new Rectangle(00400200)));

setContainer(layout);

// 範本資料集
DBTableData db = new DBTableData(new NameDatabaseConnection("FRDemo"), "select * from 銷量");
putTableData("ds1", db);
}
}

3.2 效果預覽

結果見下圖:

4. 範本下載

custom.zip


5. 注意事項

java類更新後需重啟管理系統


附件列表


主題: 數據決策系統
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙