Crystal Reports

出自 ProgWiki
前往: 導覽搜尋

技術文件

Crystal Report取得方式

Visual Studio 2012

  • 在Visual Studio裡新增一個Crystal Report專案,會有一個Crystal Report相關套件的下載網址,下載安裝後重新啟動Visual Studio。

Visual Studio 2005/2008/2010 Pro版以上

  • Visual Studio 2005 Pro版以上,內附『CRYSTAL REPORTS FOR MICROSOFT VISUAL STUDIO 2005』。
  • Visual Studio 2008 Pro版以上,內附『CRYSTAL REPORTS BASIC FOR MICROSOFT VISUAL STUDIO 2008』。
  • Visual Studio 2010 Pro版以上,從Crystal Reports官網下載『Crystal Reports for Visual Studio .NET 2010』。
    • 先在Visual Studio新增一個Crystal Reports專案,就會有提供下載的網址

SAP官網

RunTime

相關檔案

Business Objects 更新服務

相關網站


應用

ASP

ASP.NET

ASP.NET MVC

FAQ

Crystal Reports XI有哪些新功能?

以Crystal Reports for Visual Studio.NET所開發出來的Web報表,若報表中有圖,圖的解析度該如何提高?

  • 使用Regedit,修改登錄資訊
HKEY_LOCAL_MACHINE\Software\Seagate Software\Crystal Reports\Export\

"BitMapMagnifNumerator"=dword:00000003
"BitMapMagnifDenominator"=dword:00000001

網頁上看不到Crystal Reports的控制項圖示

  • 以 Crystal Reports XI Release 2 為例:
  1. IIS 在網站根目錄,新增虛擬目錄 crystalreportviewers115 指向 C:\Program Files\Business Objects\Common\3.5\crystalreportviewers115
  2. IIS 在網站根目錄,新增虛擬目錄 aspnet_client 指向 C:\Inetpub\wwwroot\aspnet_client
  • Visual Studio 2008 Pro的CrystalReport移植到ASP.NET 4.0用
CrystalReportWebFormViewer4資料夾需從 /aspnet_client/system_web/2_0_50727/ 搬至 /aspnet_client/system_web/4_0_30319/
  • Visual Studio 2010/2012/2013的CrystalReport,
將 C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13
或 C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\Crystal Reports 2011\crystalreportviewers
,複製到網站的 /aspnet_client/system_web/4_0_30319/crystalreportviewers13

在 asp.net2.0下,Crystal Report登入問題

  • 載入報表失敗。您要求的報表需要進一步的資訊。(出現Crystal Report的登入用表單)
  1. 在 *.aspx 裡的 Crystal Report Viewer 標籤中,將 EnableDatabaseLogonPromot 設為 false
  2. 在設定報表的資料來源時, 下面這三個的DataTable的名稱要一致:
    1. 也就是在 Visual Studio 2005 裡加資料集的 *.xsd 檔案裡的 DataTable的名稱。
    2. Crystal Report 的 *.rpt 檔的資料庫欄位的 DataTable 名稱。
    3. 如果報表的資料是經由 *.aspx.cs 或 *.aspx.vb 裡在從SQL Server抓資料時, 必須在 SqlDataAdapter.Fill 時指定 DataTable的名稱。

數字轉英文的欄位

Crystal Reports for Visual Studio .NET 2010的RunTime裝好後仍出現缺少log4net的錯誤訊息

  • Download Apache log4net
    • 下載 og4net-1.2.11-bin-newkey.zip ,將 log4net 的 dll 放到與應用程式同一個資料夾中,如果是ASP.NET網站則放到 bin 資料夾中。

Crystal Reports的ActiveX 列印控制項

Crystal ActiveX Report Viewer Control安裝不成功

Crystal Reports for Visual Studio 2005

  1. Crystal Reports XI Release 2 的 PrintControl.cab 在 C:\Program Files\Business Objects\Common\3.5\crystalreportviewers115\ActiveXControls
  2. 或下載 PrintControl.cab:"printControl.dll" browser error when printing from ActiveX Print Control(似乎是包在裡面)
  • 修改 Web.Config (版號應隨實際使用的控制項版本而改變)
<configSections>
  <sectionGroup name="businessObjects">
    <sectionGroup name="crystalReports">
      <section name="printControl" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null" />
    </sectionGroup>
  </sectionGroup>
</configSections>
 
<businessObjects>
  <crystalReports>
    <printControl>
      <add key="url" value="http://myserver/PrintControl.cab" />
    </printControl>
  </crystalReports>
</businessObjects>

自訂欄位

IF
if (條件式) then (
  //如果條件成立
) else (
  //如果條件不成立
);
使用自訂欄位
{@欄位名稱}
自訂區域變數
Local stringVar strText := '';
Local numberVar nVar1 := 0;
Local DateTimeVar orderDate := CDate (1999, 9, 23);

屬性 'DisplayGroupTree' 不是 'CrystalReportViewer' 項目的有效屬性。

  • 這個屬性在新版的CrystalReport已過時,不再使用。

CrystalReport的13.x版Runtime無法安裝?

因為在某些版本的Windows上並未安裝此VC++ 2005 SP1 ATL的更新檔,偏偏CrystalReport的13.x版Runtime必要有