翻譯|使用教程|編輯:王香|2018-12-18 09:58:53.000|閱讀 346 次
概述:此示例顯示如何從代碼連接到XML或SQL數據庫。要從代碼創建和顯示查看器,您需要調用StiViewerFx.initialize() 靜態方法。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
此示例顯示如何從代碼連接到XML或SQL數據庫。要從代碼創建和顯示查看器,您需要調用StiViewerFx.initialize() 靜態方法。在應用程序的initialize事件中調用此方法。還要加載報表模板文件并將其分配給reportString變量:
<mx:Application
xmlns:mx="//www.adobe.com/2006/mxml" layout="absolute"
minWidth="1024" minHeight="768" backgroundColor="#e8e8e8"
initialize="onInitialize()" xmlns:viewer="stimulsoft.viewer.*">
private function onInitialize(): void
{
StiViewerFx.initialize();
var request: URLRequest = new URLRequest(demoFile);
var loader: URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onLoadComplete);
loader.load(request);
}
private function onLoadComplete(event: Event): void
{
var loader: URLLoader = event.target as URLLoader;
reportString = loader.data as String;
}
要創建XML數據連接,需要使用StiXmlDatabase類。在構造函數的參數中,您應該傳遞數據連接名稱,部分傳遞給XSD架構和XML數據文件的路徑。然后使用report.dictionary.databases.add()方法將創建的數據連接對象添加到報表中。如果需要清除報表中的現有數據連接,可以使用report.dictionary.databases.clear()方法:
private function onConnectToXMLClick(): void
{
// Create new report object
var report: StiReport = new StiReport();
// Load report from XML string
report.loadReportFromString(reportString);
// Create new XML database with same name "Demo"
var database: StiXmlDatabase = new StiXmlDatabase("Demo", "reports/data/Demo.xsd", "reports/data/Demo.xml");
// Clear all existing databases in report
report.dictionary.databases.clear();
// Add database to report
report.dictionary.databases.add(database);
// Show report in Viewer dialog window
report.showDialog();
}
要創建MySQL數據連接,操作將是相同的,除了您需要使用StiMySqlDatabase類。在構造函數的參數中,您應該傳遞數據連接名稱和別名,連接字符串和標志以進行密碼管理:
private function onConnectToMySqlClick(): void
{
// Create new report object
var report: StiReport = new StiReport();
// Load report from XML string
report.loadReportFromString(reportString);
// Create new MySql database with same name "Demo"
var database: StiMySqlDatabase = new StiMySqlDatabase("Demo", "",
"Server=localhost;Port=3306;Database=db_name;Uid=root;Pwd=;", false);
// Clear all existing databases in report
report.dictionary.databases.clear();
// Add database to report
report.dictionary.databases.add(database);
}
下面的屏幕截圖中,您可以看到示例代碼的結果。

購買Stimulsoft正版授權,請點擊“”喲!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@ke049m.cn