原創|使用教程|編輯:黃竹雯|2019-03-22 14:16:06.000|閱讀 709 次
概述:Stimulsoft Reports.PHP報表設計工具主要是為了能夠在互聯網上使用客戶端-服務器技術創建報表而設計。為了讓更多的初學者快速上手使用Stimulsoft Reports.PHP,我們特意將所有Stimulsoft Reports.PHP的基礎操作教程整合在一起,方便大家學習和收藏。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Stimulsoft Reports.PHP報表設計工具主要是為了能夠在互聯網上使用客戶端-服務器技術創建報表而設計。Stimulsoft Reports.PHP中主要結合運用了兩種技術,PHP腳本技術和Adobe Flash技術。PHP腳本主要是在服務器端工作,用于控制報表的生成;而Adobe Flash 技術則主要是在客戶端工作,使Stimulsoft Reports.PHP可以在任何客戶端生成報表。
為了讓更多的初學者快速上手使用Stimulsoft Reports.PHP,我們特意將所有Stimulsoft Reports.PHP的基礎操作教程整合在一起,方便大家學習和收藏。
>>點擊下載最新版Stimulsoft Reports.PHP<<
首先,您需要將JavaScript庫和CSS樣式添加到Web頁面。例如,創建 designer.php文件并添加指向所有必需文件的鏈接:
Stimulsoft Reports.PHP - JS Report Designer
要將Designer與PHP服務器端進行通信,需要一些功能。要將它們添加到Web頁面,只需在部分中調用StiHelper :: initialize()靜態PHP函數即可。此函數可以在helper.php文件中找到,因此將此文件導入添加到Web頁面的頂部:
...
使用以下JavaScript代碼使用Designer選項創建對象并設置所需的值。例如,默認情況下以全屏模式顯示Designer。接下來,創建一個Designer對象,并將選項傳遞給它。所述designer.renderHtml()方法呈現設計器內容轉換成指定的HTML元素:
var options = new Stimulsoft.Designer.StiDesignerOptions(); options.appearance.fullScreenMode = true; var designer = new Stimulsoft.Designer.StiDesigner(options, "StiDesigner", false); designer.renderHtml("designerContent");
要加載報表模板并將其分配給Designer,您可以使用以下JavaScript代碼:
var report = new Stimulsoft.Report.StiReport(); report.loadFile("reports/SimpleList.mrt"); designer.report = report;
下圖為示例代碼結果
此示例顯示如何在HTML Designer中的PHP服務器端保存報表模板。為此,您需要添加onSaveReport事件處理程序:
designer.onSaveReport = function (event) { }
在PHP服務器端,您需要保存從Designer傳遞的JSON報表模板對象。這應該在做$ handler-> onSaveReport事件handler.php文件。例如,此代碼將報表模板保存到“reports”文件夾中的JSON文本文件:
$handler->onSaveReport = function ($event) { $report = $event->report; // Report JSON object $fileName = $event->fileName; // Report file name file_put_contents('reports/'.$fileName.".mrt",json_encode($report)); return StiResult::success("Save Report OK: ".$fileName); };
下圖為示例代碼結果
此示例顯示如何使用HTML查看器通過電子郵件發送報表。為此,您需要在Viewer選項中啟用 Send Email按鈕并添加onEmailReport事件處理程序:
var options = new Stimulsoft.Viewer.StiViewerOptions(); options.toolbar.showSendEmailButton = true; ... viewer.onEmailReport = function (event) { }
在PHP服務器端,您需要填寫電子郵件帳戶選項。這應該在做$ handler-> onEmailReport事件handler.php文件:
$handler->onEmailReport = function ($event) { $event->settings->from = "******@gmail.com"; $event->settings->host = "smtp.gmail.com"; $event->settings->login = "******"; $event->settings->password = "******"; };
下圖為示例代碼結果
此示例顯示如何使用HTML查看器在PHP服務器端發送和保存導出的報表。為此,您需要添加onEndExportReport事件處理程序。此外,如果要僅在服務器端保存導出的報表,則需要阻止內置文件處理。為此,只需將event.preventDefault屬性設置為true即可。
viewer.onEndExportReport = function (event) { event.preventDefault = true; }
在PHP服務器端,您可以獲取導出報表的Base64數據流。這可以在完成$ handler-> onEndExportReport事件handler.php文件。此外,例如,您可以將其保存到“reports”文件夾中的文件中。
$handler->onEndExportReport = function ($event) { $format = $event->format; // Export format $data = $event->data; // Base64 export data $fileName = $event->fileName; // Report file name file_put_contents('reports/'.$fileName.'.'.strtolower($format), base64_decode($data)); //return StiResult::success(); return StiResult::success("Export OK. Message from server side."); //return StiResult::error("Export ERROR. Message from server side."); };
此示例顯示如何在頁面上顯示HTML報表查看器并查看報表。首先,您需要將JavaScript庫和CSS樣式添加到Web頁面。例如,創建viewer.php文件并添加指向所有必需文件的鏈接:
Stimulsoft Reports.PHP - JS Report Viewer
要將Viewer與PHP服務器端進行通信,需要一些功能。要將它們添加到Web頁面,只需在部分中調用StiHelper :: initialize()靜態PHP函數即可。此函數可以在helper.php文件中找到,因此將此文件導入添加到Web頁面的頂部:
...
使用以下JavaScript代碼使用Viewer選項創建對象并設置所需的值。例如,默認情況下以全屏模式顯示查看器。接下來,創建Viewer對象,并將選項傳遞給它。所述viewer.renderHtml()方法呈現查看器內容轉換成指定的HTML元素:
var options = new Stimulsoft.Viewer.StiViewerOptions(); options.appearance.fullScreenMode = true; var viewer = new Stimulsoft.Viewer.StiViewer(options, "StiViewer", false); viewer.renderHtml("viewerContent");
要加載報表并將其分配給Viewer,您可以使用以下JavaScript代碼:
var report = new Stimulsoft.Report.StiReport(); report.loadFile("reports/SimpleList.mrt"); viewer.report = report;
下圖為示例代碼結果
此示例顯示如何在HTML Designer和Viewer中使用SQL數據源。使用PHP適配器在服務器端處理所有SQL數據。對于它們與JavaScript端的連接,使用了onBeginProcessData事件。報表引擎需要數據時會觸發此事件。要向PHP服務器端發送請求并處理響應就足以使用靜態StiHelper :: createHandler()函數,該函數在網頁上添加所有必需的JavaScript代碼:
designer.onBeginProcessData = function (event, callback) { }
如果需要更改服務器端的數據,例如,要更正連接字符串或檢查SQL查詢,可以在服務器端使用此事件。請更正$ handler-> onBeginProcessData 事件在 handler.php文件,因為你需要:
$handler->onBeginProcessData = function ($event) { $database = $event->database; $connectionString = $event->connectionString; $queryString = $event->queryString; return StiResult::success(); };
此示例顯示如何在報表中使用帶有參數的SQL數據源。使用PHP適配器在服務器端處理所有SQL數據。對于它們與JavaScript端的連接,使用了onBeginProcessData事件。報表引擎需要數據時會觸發此事件。要向PHP服務器端發送請求并處理響應就足以使用靜態StiHelper :: createHandler()函數,該函數在網頁上添加所有必需的JavaScript代碼。
designer.onBeginProcessData = function (event, callback) { }
您可以將SQL查詢中的參數用作表達式,將它們用大括號括起來。
SELECT id, name WHERE id = {Variable1} ORDER BY name {Variable2}
您可以在報表中創建具有相同名稱的變量。在這種情況下,當您查看報表時,大括號中的SQL參數將替換為變量的值。如果要使用PHP代碼替換服務器端的參數值,則無需創建報表變量。為此,請更正$ handler-> onBeginProcessData事件handler.php文件-只為參數添加值到$事件- >參數集合。您還可以在此事件中更正SQL查詢和連接字符串。
$handler->onBeginProcessData = function ($event) { $database = $event->database; $connectionString = $event->connectionString; $queryString = $event->queryString; $event->parameters["Variable1"] = 10; $event->parameters["Variable2"] = "ASC"; return StiResult::success(); };
想要擁有Stimulsoft Reports PHP為你帶來更輕松的工作嗎?
購買Stimulsoft正版授權,請點擊喲!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn