反饋已提交
網絡繁忙
點選「選單伺服器>伺服器設定」,會彈出伺服器設定的介面,在伺服器配置處設定的「分頁預覽」,「填報預覽」,「資料分析」,「引用 Css」,「引用 JavaScript」,「出錯範本定義」,「列印設定」,「PC 端自適應」的屬性是適用於整個伺服器下的範本的,如下圖所示:
分頁預覽設定頁面,對整個伺服器下所有範本的分頁預覽有效。例如點選「選單伺服器>伺服器設定>分頁預覽」,將報表顯示位置勾選置中顯示,點選「確定」。如下圖所示:
再點選「範本>範本 Web 屬性」,選擇分頁預覽,選擇採用伺服器設定,可見報表顯示位置已經變為置中顯示,如下圖所示:
填報頁面設定,對整個伺服器下所有範本的分頁預覽有效。與第二節分頁預覽效果相似,不再重複贅述。
資料分析設定,對整個伺服器下所有範本的資料分析預覽生效。與第二節分頁預覽效果相似,不再重複贅述。
伺服器配置相對範本 Web 屬性,增加了出錯範本定義功能,使用者可以自訂報錯頁面。
注:出錯範本定義僅支援 PC 端。
報表自帶的報錯頁面色相如下圖,但是客戶項目可能有自己的色相和統一的出錯頁面,與我們提供的不一致,因此需要使用自訂出錯頁面。
在「伺服器>伺服器設定>出錯範本定義」直接呼叫自訂的出錯頁面如:/error.html,頁面中可以透過範本出錯參數 message、charset、exception 獲取到報錯資訊。
在使用自訂出錯頁面的時候可以呼叫報表系統錯誤頁面的參數,下面簡單的列出參數以及說明。
參數
說明
如上的參數可以透過 ${參數名} 的形式呼叫。如在定義的 error.html 頁面中呼叫參數 message 將提示錯誤資訊顯示在表格中,如下:
<html> <body> <table> <tr> <td> ${message} </td> </tr> </table> </body> </html>
定義好的出錯頁面在「伺服器>伺服器設定>出錯範本定義」的範本路徑中呼叫,可以透過相對路徑進行呼叫:
相對路徑:自訂的出錯頁面 error.html 放在當前 Web 應用下,如 webroot 目錄下,透過相對路徑進行呼叫,範本路徑為:/error.html。
注:html 類型檔案不支援使用絕對路徑進行呼叫。
在「伺服器>伺服器設定>PC 端自適應屬性」中,使用者可對伺服器配置的「決策報表」、「舊決策報表」、「普通報表」的自適應屬性進行修改,對整個伺服器下範本生效,如下圖所示:
例如選擇「普通報表」,將「字體」和「表格」分別勾選「自適應」和「雙向自適應」,如下圖所示:
再建立普通報表,點選「範本>PC 端自適應屬性」,選擇「採用伺服器設定」,可見「字體」和「表格」已變為「自適應」和「雙向自適應」,如下圖所示:
「伺服器設定>引用 CSS」對整個伺服器下的範本生效。與「範本 Web 屬性>引用 CSS」僅作用範圍不同,詳情請參見:引用 CSS 。
「伺服器設定>引用 JavaScript」對整個伺服器下的範本生效。與「範本 Web 屬性>引用 JavaScript」僅作用範圍不同,詳情請參見:引用 JavaScript 。
若不為報表的預覽方式進行單獨設定時,統一採用伺服器設定。若為報表的預覽方式進行單獨設定時,會以單獨設定的屬性進行顯示。
在出錯文字為中文的情況下,使用了 ${message} ,會出現亂碼。
比如找不到範本檔案,錯誤程式碼 : 1304 ;沒有找到範本檔案 : GettingStarted2.cpt ;
使用上述自訂出錯資訊的話,出錯資訊如下圖所示:
後面的英文部分顯示正常,中文部分卻是亂碼,顯示不是我們需要的,那麼如何解決呢?
出錯的資訊是透過 FR 進行轉碼過後的,中文會被顯示成上述樣式,為了還原,我們需要在error.html檔案中使用 FR.cjkDecode() 來進行還原出錯的資訊,使用這個方法必須載入 finereport.js 檔案,路徑為/webroot/decision/view/report?op=emb&resource=finereport.js,需要在 HTML 中引用,如下圖:
由於頁面使用的 ${message} 是在頁面載入後完成的,所有js轉碼部分必須寫在 body 內部,在 ${message} 之後,為了獲取此資訊,我們加一組 span 標籤,class 設定為 message,利用 jQuery 中的 $('.message').text() 就可以獲取和設定資訊內容了,如下圖:
注:在 JS 部分,不能直接使用 ${message} 來獲取出錯資訊內容,所以必須使用jquery或其他方法來獲取 span 中的資訊內容。
完整的原始碼如下:
<html> <head> <script src="/webroot/decision/view/report?op=emb&resource=finereport.js"></script> </head> <body> <table> <tr> <td> <span class='message'>${message}</span> </td> <td></td> </tr> </table> <script> $('.message').text(FR.cjkDecode($('.message').text())); //因為錯誤資訊是轉碼之後的,必須解碼 </script> </body> </html>
儲存後重新整理重新整理頁面,即可看到新的出錯資訊了,如下圖:
可以看到,已經正確地還原了出錯資訊了。
文 檔回 饋
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉