水晶報表 - 快速指南



水晶報表 - 概述

SAP 水晶報表是一個商業智慧工具,用於從 SAP 和非 SAP 資料來源生成報表。它使使用者能夠生成包含出色視覺化的報表,並將新的業務需求融入報表中,以減少對 IT 和報表開發人員的依賴。

SAP 水晶報表可以連線到任何資料來源,包括關係資料庫(如 Oracle),OLAP 資料來源系統(如 BW),以及 XML 資料。您可以建立一個簡單的報表,也可以使用水晶報表的複雜或專用工具為終端使用者建立高階報表。它主要用於為 CEO 和管理人員建立畫素級精確的報表。

使用水晶報表的優勢

靈活且自定義的報表 − 使用 SAP 水晶報表及其高階設計介面和高效工作流程,您可以快速建立高度格式化、畫素級精確的報表。

強大的報表交付選項 − 您可以以終端使用者首選的語言和格式向您的業務終端使用者交付個性化報表。

資料來源連線性 − 您可以直接連線到資訊源。資料來源包括:原生、ODBC、OLE DB 和 JDBC 連線到關係型、OLAP、Web 服務、XML、企業資料來源和 salesforce.com。

對 Excel 的擴充套件支援 − 透過允許將更多資料匯出到單個工作表(無需跨多個工作表),您可以充分利用 Excel 檔案格式。

Windows 作業系統相容性 − SAP 水晶報表 2013 軟體已認證與 Microsoft Windows 7 相容。

移動相容性 − 您還可以透過移動裝置開啟互動式報表。

SAP 水晶報表、Adobe Flash 和 HTML 5 整合 − 它使 SAP 水晶報表開發人員能夠建立強大的“混合應用程式”,從各種來源提取資料。

競爭對手 − SAP 水晶報表與 Microsoft 市場上的幾種產品競爭,例如 SQL Server Reporting Services SSRS、XtraReports、ActiveReports 和 List & Label。

水晶報表的安裝要求

以下是安裝水晶報表的必要條件:

  • 配備 AMD 或 Intel 處理器的電腦,雙核 CPU,2 GB RAM

  • 大約 4 GB 可用硬碟空間(僅限英語,所有語言 8 GB)

  • Microsoft Windows 7 SP1、Windows 8、Windows Server 2008 SP2、Windows Server 2008 R2 SP1、Windows Server 2012

可用語言 − 英語、芬蘭語、法語、德語、匈牙利語、義大利語、日語、韓語、挪威語、波蘭語、葡萄牙語、簡體中文、繁體中文、捷克語、丹麥語、荷蘭語、斯洛伐克語、斯洛維尼亞語、西班牙語、瑞典語、泰語、土耳其語、羅馬尼亞語、俄語

技術規格

  • 硬體要求 − Intel Pentium III 或同等處理器,建議最低 512 MB RAM

  • 磁碟空間 − 使用英語語言的預設安裝需要 2 GB,安裝所有語言的預設安裝需要 4 GB

版本和功能比較

讓我們以一個例子來解碼 SAP 水晶報表的版本格式。假設 12.1.2.957.12 是 CR 2008 的版本。這裡1表示它是 Service Pack 1,.2表示在 Service Pack 1 之上應用了 Fix Pack 1.2。最後三位或四位數字並不重要。另一個例子,如果您有版本 12.3.1.684,我知道我使用的是 CR 2008,Service Pack 3,Fix Pack 3.1。

版本 − 開發者版 (D)、專業版 (P)、標準版 (S)

dps

版本 − 開發者版 (D)、專業版 (P)、標準版 (S)

dps1

dps2

版本 − 開發者版 (D)、專業版 (P)、標準版 (S)

dps3

版本 − 開發者版 (D)、專業版 (P)、標準版 (S)

dps4.jpg

dps5.jpg

水晶報表 - GUI 導航

企業版水晶報表提供了一個介面,使您可以快速輕鬆地建立、格式化和釋出有效的報表。

選單欄提供了企業版水晶報表中提供的全部功能,如下圖所示。

Enterprise

標準工具欄(如下圖所示)允許您訪問常見的報表功能,例如:開啟現有報表、建立新報表、儲存報表、列印報表、剪下、貼上、匯出和撤消。

Enterprise1

“插入”選項卡允許您將物件插入報表,例如插入文字、線條、框、組、節、圖片、計算和/或圖表,如下圖所示。

Insert Tab

“格式”選項卡(如下圖所示)允許您使用函式來格式化所選欄位,例如:更改字型大小或顏色、背景顏色、文字對齊方式(居中、左對齊、右對齊)等。

它還允許您應用條件格式化,例如突出顯示報表中高於或低於特定閾值的數值。

Format Tab

當您單擊右上角的條件格式化選項時,將開啟格式化框。在此框中,您可以定義條件格式化顯示的條件。在設定區域中,指定滿足條件時顯示的格式,例如更改文字的字型樣式或顏色。

“資料”選項卡(如下圖所示)使您可以處理資料編輯查詢、建立分組和排序、應用過濾器以限制報表中的資料以及建立公式以向報表新增自定義計算。

Data Tab

當您單擊“查詢過濾器”選項或“編輯資料來源”時(如下圖所示),將開啟一個查詢面板。在查詢面板中,您可以選擇要在報表中顯示的物件。在過濾器選項中,您可以應用過濾器來限制報表返回的資料。

Query Filter

當您單擊“公式”按鈕時(如下圖所示),將開啟“公式工作區”。這允許您在報表中使用自定義計算。您可以透過鍵入或單擊資料資源管理器中的物件、函式和運算子來應用公式。

Formula Button

水晶報表中的主要工作區域稱為報表設計畫布,它分為結構選項卡和頁面選項卡。水晶報表預設情況下分為五個不同的部分,如果您對報表應用分組,則會新增其他節。

Report Title

使用結構選項卡(如上圖所示),您可以透過將專案放置在報表的各個節中來建立整體結構。您還可以應用任何所需的排序、分組等。在這裡,您處理的是資料的佔位符,而不是資料本身。

頁面選項卡(如下圖所示)根據您在結構選項卡中建立的結構顯示報表資料。在這裡,您可以評估報表設計的格式和佈局,以便於分發。

Page Tab

水晶報表 - 選項

報表選項是水晶報表設計器中最常用的功能之一,當您需要在水晶報表 .NET 應用程式中執行時訪問/修改水晶報表的報表選項值時,可以使用此功能。

轉到“編輯”→“報表選項”

Report Options

Report Options1

報表選項功能用於設定水晶報表中的各種欄位,例如智慧參考線功能,該功能允許您選擇、移動和調整報表元素的整列大小,而無需手動選擇每個元素。當您選擇報表元素時,智慧參考線將出現並自動選擇列中的相關元素。

水晶報表 - 頁面佈局

SAP 水晶報表提供兩種頁面佈局選項 - 橫向和縱向。橫向表示頁面水平方向,而縱向表示頁面垂直方向。

要在水晶報表中開啟頁面佈局選項,請轉到“檔案”→“頁面設定”。

Page Setup

此選項允許您選擇頁面選項,例如:紙張大小、紙張寬度、紙張高度和頁邊距(左、右、上和下)。

要更改頁面佈局:

在“檔案”選單中選擇“頁面設定”選項卡。單擊“頁面設定”組中的“方向”選項。

Orientation Option

水晶報表 - 獲取幫助

企業版 SAP 水晶報表的幫助選項卡提供 SAP 站點上的所有學習資料和互動式影片連結,用於學習水晶報表的功能。

當您單擊選單欄中的“幫助”選項卡時,將顯示以下選項(如下圖所示):

  • 企業版 SAP 水晶報表幫助
  • 文件
  • 教程
  • 顯示起始頁
  • 聯絡我們
  • 註冊
  • 關於企業版 SAP 水晶報表
Getting Help

企業版 SAP 水晶報表幫助

此選項提供完整的指南,標題為“企業版 SAP 水晶報表簡介”,如下圖所示。

Crystal Reports Enterprise

這涵蓋了企業版水晶報表 4.x 的介紹以及該工具中可用的所有基本報表功能,例如登入伺服器、報表介紹、設計概念、資料來源和查詢、圖表等。

文件

當您單擊“幫助”選項卡中的“文件”選項時,它會將您帶到企業版水晶報表 4.x 的 SAP 連結。

此連結包含企業版水晶報表 4.x 的指南,用於:

  • 安裝、升級和部署
  • 終端使用者指南
  • 附加資訊
Help Portal

教程

當您單擊“幫助”選項卡中的“教程”連結時,它會將您帶到官方產品教程 - 企業版 SAP BusinessObjects 水晶報表 4.x。

此頁面提供電子學習資料,其中包括關於該工具所有關鍵功能的互動式課程和影片教程。

Community Network

起始頁

它將您帶到企業版 SAP 水晶報表 4.1 工具的主頁。“聯絡我們”和“註冊選項”用於聯絡 SAP 以瞭解任何與工具相關的功能。

關於企業版 SAP 水晶報表

它會將您帶到工具的“關於”頁面,其中包含版本和構建詳細資訊。

About Page

水晶報表 - 設計環境

SAP 水晶報表設計環境為您提供了設計報表結構的區域。它包含多個元件:

報表設計畫布

報表設計畫布用於設計報表結構。您可以在報表中放置各種元素,例如圖表、文字元素和資料物件。

“顯示標尺”選項會在報表畫布上方顯示一個標尺。您可以透過更改“設計畫布”選項卡上的度量單位選項來更改度量單位。

報表佈局可以使用結構模式和頁面模式來定義。結構模式顯示報表的結構,頁面模式用於預覽報表。

編輯 → 首選項 → 設計畫布

Design Canvas

結構模式

結構模式用於提供設計報表的環境。它提供建立報表的結構和說明。當您在報表中放置物件時,它會顯示在結構模式中。您可以新增/刪除物件或應用複雜的公式,也可以移動物件。

在結構模式中,每個物件都由一個框架表示。結構模式有多個元件可用於編輯報表:

報表頁首

用於在報表頂部新增報表標題或任何其他您想放在報表開頭的資訊。

頁面頁首

此選項用於在每一頁頂部顯示資訊,例如文件標題、章節名稱等。頁面頁首不包含在報表頁首中。

主體

用於顯示報表主體。所有報表資料都位於此部分。

報表頁尾

用於在報表末尾顯示資訊,例如合計等。

頁面頁尾

用於在每一頁末尾顯示頁碼或任何其他您想要的資訊。

Structure Mode

頁面模式

它表示報表釋出或列印時報表中的實際資料。它還允許您使用實際資料更改報表的格式,並且更改會立即在報表中顯示。

Page Mode

資料資源管理器側邊欄

用於在報表中新增/刪除物件。當您建立新報表或開啟現有報表時,此側面板會自動開啟。

查詢面板中新增的所有物件都顯示在資料資源管理器下,您可以從此處將物件新增到報表。它進一步分為以下元件:

結果物件

它顯示已新增到報表的所有物件。您也可以拖動物件將其新增到報表中。“編輯資料來源”選項允許您從Universe新增新物件或從儲存庫中選擇新的Universe/資料來源。

公式

這顯示了為報表建立的所有公式。您可以右鍵單擊“公式”選項卡,然後選擇“新建”→“新建公式”來建立新公式。

您也可以將公式拖動到報表中。

引數

它顯示了為報表建立的所有引數。您可以右鍵單擊“引數”→“新建”→“新建引數”來建立新的引數組。

執行總計

它顯示了為報表建立的所有執行總計的列表。您可以右鍵單擊選項卡→“新建執行總計”來建立新的執行總計。

預定義物件

它顯示可以新增到報表的預定義物件。您可以將預定義物件拖動到報表畫布以將其新增到報表。

Data Explorer Side Bar

大綱

用於檢視報表的樹狀結構。樹狀結構中的第一個節點表示報表本身,第一級節點表示報表中的節,並且列出了包含物件的每個節。

分組樹

用於檢視報表中所有分組和子分組的樹狀檢視。

查詢

用於在報表中搜索特定值。在搜尋框中鍵入一個詞來查詢任何值。

水晶報表 - 資料來源

Crystal Report可以連線到多個數據源,包括:

  • Universe
  • SAP BEx 查詢
  • 關係連線
  • HANA檢視
  • Excel電子表格

要連線到資料來源,請轉到檔案 → 新建 → 從資料來源

Data Source

要選擇資料來源,您必須連線到SAP Business Objects平臺伺服器。

當您轉到檔案 → 新建 → 從資料來源時,會顯示“選擇資料來源連線”對話方塊 → 瀏覽儲存庫 → 資料來源型別列表 → 選擇您要連線的資料來源 → 下一步。

如果您選擇Universe,則會開啟一個查詢面板,您可以將物件新增到查詢過濾器以生成報表。

水晶報表 - 查詢

SAP BEx和Universe資料來源連線允許您在Crystal Reports中建立和設計查詢。

建立查詢

要在Universe中建立查詢,您可以選擇OLAP和關係資料來源。

查詢設計的第一個步驟是定義您想要新增到查詢中的物件。您還可以透過應用排序和查詢過濾器來細化查詢。查詢面板分為多個窗格:

Edit Query

Universe窗格

它包含Universe中所有物件的樹狀結構。您可以使用“展開全部”選項檢視Universe中的所有物件。

您不能在查詢面板中新增新物件或編輯現有物件。

結果物件窗格

在此區域,您可以新增您想要新增到查詢中的物件。

查詢過濾器窗格

這用於過濾報表中物件的價值。您可以使用預定義過濾器,也可以透過新增物件來建立自定義過濾器。

SAP BEx查詢可以包含一個或多個層次結構和預定義物件來執行報表。

SAP HANA查詢包含來自SAP HANA建模檢視的資料:分析檢視、計算檢視。要連線到HANA資料庫並使用資料庫中的模式→表,您可以使用現有的關係或OLAP連線。可以在IDT工具中建立關係連線。

OLAP連線可以在CMC以及資訊設計工具中建立。可以使用OLAP連線將HANA多維檢視連線到Crystal Reports。

Olap Connection

單擊“下一步”→它將向您顯示HANA儲存庫中所有建模檢視的列表→選擇一個建模檢視→完成

它將在查詢面板中開啟檢視的物件,這些物件可用於將其新增到報表。

Query Panel

編輯查詢

使用查詢建立Crystal報表後,要更改物件,您必須轉到“編輯資料來源”選項。單擊該選項時,它將開啟“編輯查詢”面板,您可以在其中新增/刪除物件、應用過濾器等。

您還可以透過轉到資料 → 編輯資料來源來編輯現有查詢,如下面的圖片所示。

Editing a Query

完成更改後,單擊“完成”,所有更改都將應用於Crystal報表中的資料。

查詢過濾器和過濾條件

以下是Crystal Reports中可以使用的一些查詢過濾器:

  • 預定義過濾器
  • 自定義過濾器
  • 自定義過濾器

預定義過濾器

這些是管理員在查詢面板中建立的內建過濾器。預定義過濾器是在Universe級別建立的,可以直接從Universe在報表中使用。將您想要應用過濾器的物件拖到查詢過濾器窗格,並將預定義過濾器也拖動到其中。執行查詢時,報表中將返回關於查詢過濾器的相應資料。

自定義過濾器

這些過濾器是在查詢面板中使用查詢建立的。自定義過濾器是在查詢面板的查詢過濾器選項卡下建立的。將物件拖動到查詢過濾器窗格,並使用各種關係運算符來傳遞過濾器條件。您可以在查詢過濾器中放置一個常量值或一個值列表。

提示

它們用於顯示問題或值列表,被稱為動態過濾器。

篩選條件

“常量”選項允許您在過濾器中輸入單個值。

值列表允許您從物件的可用值中選擇一個值。

提示用於將動態值傳遞給查詢過濾器。

Query Panel

選項 描述
常量
  • 在文字框中鍵入值

LOV
  • 提示對話方塊中,透過雙擊成員或在成員窗格中選擇它們並單擊中間的箭頭來將成員新增到列表中。

  • 單擊確定

提示
  • 編輯提示對話方塊中,選擇新建提示以新增新提示,或選擇使用Universe引數以從Universe中選擇引數。

  • 如果選擇新建提示,請輸入提示選項;如果選擇使用Universe引數,請選擇一個引數。

  • 單擊確定

Query Filter Condition

水晶報表 - 基於時間的過濾器

基於時間的查詢過濾器用於在特定時間段內過濾特定物件的價值。當您將日期維度新增到查詢過濾器時,您可以使用下拉列表中的“介於”運算子來具體說明開始日期和結束日期。

您可以單擊日曆選項來選擇“開始”和“結束”欄位中的日期。您還可以將日期維度與值列表 (LOV) 或常量值選項一起使用。LOV允許您從Universe中日期維度提供的可用值列表中選擇開始日期和結束日期。

Time Based Filter

這被稱為在報表中應用基於時間的過濾器。

欄位物件控制元件和修改

欄位物件控制元件用於編輯報表中的物件。要編輯物件,您可以右鍵單擊物件名稱,然後選擇“格式化結果物件元素”或“條件格式”選項,如下面的圖片所示。

Field Object Control

“格式化結果物件元素”欄位用於更改報表中物件的外觀。它內部有以下4個選項卡:

  • 常規
  • 字型
  • 外觀
  • 段落

常規選項卡用於定義報表物件的通用屬性:例如高度和寬度、隱藏和如果重複則隱藏等。“常規”中的“高階”選項卡用於在報表中傳遞超連結。

字型選項卡用於更改報表中物件名稱的字型大小、顏色、樣式、對齊方式和旋轉。

外觀選項卡用於更改邊框併為報表物件新增效果。

段落選項卡用於定義報表中多行情況下的行屬性。

Elements Field

條件格式用於傳遞報表物件的顯示條件。

您可以透過單擊“新增條件”選項卡→選擇物件名稱並傳遞條件來傳遞物件的值。您可以定義字型樣式、字型顏色等。

Conditional Formatting

Crystal Reports - 報表節

如前所述,Crystal Reports預設情況下提供五個主要節:

  • 報表頁首
  • 頁面頁首
  • 主體
  • 報表頁尾
  • 頁面頁尾

在這裡,我們將學習如何在Crystal Report for Enterprise 4.x中插入、隱藏和刪除節。

要在任何報表節中插入節,請選擇該節→右鍵單擊並插入。

Insert Section

您可以使用“隱藏”和“移動”選項來隱藏節或向上或向下移動節。

“格式節”選項允許您設定節的屬性。包括:

  • 名稱
  • 顏色
  • 大小

“大小”選項允許您調整節的高度。

Format Section

要防止節跨頁斷開:

如果元素長於一頁,則它會跨多頁列印。要避免這種情況,您可以使用分頁選項。

右鍵單擊一個節,然後單擊“格式節”→“分頁”→選擇“避免分頁符”,然後單擊“關閉”。

現在讓我們看看如何在Crystal Report 2013中插入、隱藏和刪除節。

如下面的圖片所示,“節專家”用於管理報表中的節。

Section Expert

要插入新節,您需要:

點選如下圖所示的“節專家”按鈕(“節專家”包含報表中所有節的列表)→ 選擇節並點選插入。

Section Expert

報表中將出現一個新節。

水晶報表 - 刪除節

刪除節

在頂部開啟“節專家”,選擇要刪除的節→ 輸入“刪除”。

只有字母編號的節才能刪除。您不能刪除Crystal Reports原始提供的節。

Report Header

更改順序

開啟“節專家”→ 選擇要移動的節,並使用向上和向下箭頭更改節的順序。

合併節

開啟“節專家”→ 將要合併的節互相移動→ 選擇頂部的節→ 點選合併。

節將與列表中的下一個節合併。

拆分節

點選要拆分的節的邊界→ 將出現拆分節的水平線→ 將其拖放到要拆分節的位置。

資料排序

有時需要按特定順序對Crystal Reports中的資料進行排序。排序資料後,更容易找到報表中的特定記錄。您可以按升序或降序新增排序,也可以將其應用於屬性和度量值。

您也可以使用“排序”選項卡中的“刪除”選項刪除排序。

讓我們看看如何在Crystal Reports中應用排序。

要在企業版4.x的Crystal Report中應用排序,請轉到報表的“結構”選項卡→ 點選頂部的“資料”選項卡,然後選擇“排序”。

Data Tab Section

點選“排序”選項後,將彈出一個包含分組和排序選項的視窗。

轉到“排序”選項卡並展開“主體”選項卡,以對報表中的度量和屬性值應用排序。

Sort Tab

要新增排序,請點選“新增排序”選項。它將顯示新增到報表中的所有屬性和度量。選擇要應用排序的物件,然後點選升序和降序選項。

A → Z 升序或 Z → A 降序

您也可以在一個報表中新增多個排序,然後點選“確定”。

Multiple Sort

要檢視排序後的資料,請轉到“頁面”選項卡。

在上面的示例中,它對客戶姓名然後是銷售數量進行了排序。

Delete Sort

要刪除排序,請選擇排序並點選“刪除排序”選項。

水晶報表 - 分組

本章將介紹如何定義、呈現和刪除分組。

定義分組

當您需要將資料分成幾組以便於理解時,可以使用分組選項。

您還可以使用分組選項卡內的自定義選項,為單個值或多個值自定義分組。

要在報表中應用分組,請轉到報表的“結構”選項卡→“資料”→“分組”。

Data Groups

呈現分組

要新增分組條件,請點選“新建”(“+”號),然後選擇要應用分組的屬性。如果您對一個物件應用常規分組,它將對報表中所有類似的值進行分組。

Render Groups

要對單個值應用分組,請轉到“自定義分組”選項→“新建”→“新增條件”→ 從下拉列表中選擇運算子和值,如下圖所示:

Add Condition

它還提供了一個選項,可以丟棄所有其他內容,將所有其他內容在一個名為“其他”的分組中分組,或者在不更改分組名稱的情況下包含所有其他內容。

在下面的示例中,它建立了兩個組:第一個組的“地區名稱”為“新德里”,第二個組包含所有其他內容,組名為“其他”。

Groups

當您在報表中使用分組時,報表畫布中將出現兩個新節:分組頁首 1 和分組頁尾 1。

刪除分組

要刪除分組,請選擇要刪除的分組,然後點選“刪除”選項。

轉到報表的“結構”→“分組”→ 選擇要刪除的分組 #1、2 → 刪除。

Delete Groups

水晶報表 - 分組選項

在Crystal Reports中自定義分組時,可以使用以下3個選項:

  • 丟棄所有其他內容

  • 將所有其他內容在一個分組中分組,併為其指定分組名稱

  • 包含所有其他內容,而不更改分組名稱

分組樹

當您在“頁面”選項卡中時,側面板中的分組樹圖示用於檢視報表中分組的樹檢視。它允許您跳轉到報表中的特定分組,而無需滾動瀏覽報表以查詢特定分組。

Group Tree

報表中的動態頁首

動態頁首根據分組的內容而變化。當您在報表中定義分組時,程式會自動在分組頁首部分的元素中插入分組名稱。此元素顯示分組的名稱。

Groups Name

分組資料的合計

對報表中的資料進行分組是為了查詢報表中每個分組的總計。有多種合計選項可用:求和、計數、最大值、最小值、平均值等。您還可以向報表新增小計。

報表中的合計選項:轉到“插入”選項卡→ 選擇合計選項。

Grouped Data

Grouped Data1

要更改合計框的格式,請右鍵點選合計值→ 格式化合計。

Format Total

水晶報表 - 模板

除了從頭開始建立報表外,您還可以使用報表儲存庫中的內建模板。這些報表模板為常見文件(如採購訂單、發票、信函模板等)提供預定義的佈局。

要從儲存庫中選擇報表模板,請轉到“檔案”→“新建”→“從Web模板”。

Open Template

Crystal Reports中有兩種模板選項:

  • 特色模板
  • 最近使用

您也可以使用搜索工具進行搜尋。選擇報表模板後,系統將要求您選擇資料來源。

選擇“預覽”(在選擇資料來源之前預覽報表模板)→ 設定資料來源位置以選擇資料來源→“目標資料來源”面板,“新增連線”圖示→ 出現“選擇資料來源連線”對話方塊。

從以下選項之一中選擇您的資料來源連線:

以前的連線 - 此選項允許您使用以前連線的資料來源。

瀏覽儲存庫 - 此選項允許您從“資料來源型別”列表中選擇資料來源。

按供應商連線 - 此選項連線到按供應商或軟體提供商排序的資料來源。

點選“完成”。

從“當前資料來源”面板中選擇一個物件,並將其連線到“目標資料來源”面板中的一個物件→ 點選“對映”→ 點選“完成”。

水晶報表 - 插入物件

Crystal Reports for Enterprise中的插入選項允許您在報表級別新增多個物件:圖表、交叉表、圖片、Flash、子報表等。

新增圖形物件

您可以在報表中新增多種格式的圖片。如果您想在報表中新增公司徽標、品牌名稱等,也可以使用它。

Inserting Object

點選“圖片”後,可以選擇在報表中插入圖片。Crystal Reports支援以下常見的圖片格式:

  • jpeg
  • png
  • gif
  • tiff
Pictures Library

它還允許您在報表中插入Flash檔案。點選“Flash”後,您可以選擇檔案路徑或直接嵌入Flash檔案的連結以新增到報表中。它支援.swf檔案型別的Flash檔案,因此您可以在報表中新增動態儀表板。

Inserting Flash Element

水晶報表 - 圖表

本章將學習圖表型別、建立和格式化圖表。

圖表型別

您可以在Crystal Reports for Enterprise中使用以下圖表型別。要插入圖表,請轉到“插入”→“圖表”→ 選擇圖表型別,然後在“結構”或“頁面”選項卡中插入圖表。

Chart Types

建立圖表和圖表佈局

您可以在報表頁尾中插入圖表。從“插入圖表”選項中選擇圖表型別後,您可以將游標移動到報表頁尾區域,然後點選要插入圖表的位置。

插入圖表後,將提供兩個選項:資料和顯示圖表。

Create Chart

“顯示圖表”選項允許您調整圖表大小,在報表頁尾區域移動圖表(如上所示)。

“資料”選項卡允許您在圖表中插入資料。當您轉到“資料”選項卡時,它會要求您在X、Y、Z軸上新增值。

Data Tab Chart

右鍵點選每個軸,然後轉到“插入圖表類別物件”→ 您可以從下拉列表中選擇“選定的元素”→“圖表資料物件”、“標題”、“副標題”、“腳註”、“圖例”等。

Chart Category

“圖表資料物件”允許您選擇要傳遞到圖表資料中的屬性名稱。“標題”、“副標題”和“腳註”允許您向圖表新增標題或註釋。

格式化圖表

右鍵點選圖表後,將提供以下格式化選項:

“格式化圖表” - 允許您透過進入高階、外觀和深度選項來格式化圖表的結構。您還可以透過點選“格式化圖表”選項卡中的“圖表”選項,從下拉列表中更改圖表型別。

Format Chart

“圖表突出顯示專家”允許您突出顯示圖表中的特定值。您可以選擇不同的顏色來突出顯示圖表中的值。

“新增條件”→ 選擇要在圖表中突出顯示的屬性,如下圖所示。

Format Chart1

“編輯圖表型別”與“格式化圖表”相同,所有選項都類似。

Format Chart2

“編輯圖表資料”用於編輯圖表中的資料。如果您想更改圖表軸上的引數值,您可以點選“編輯圖表資料”並更改值。“隱藏”選項用於隱藏圖表,“移動”選項用於將圖表向後或向前移動。

您可以透過調整圖表大小在一個報表或一行中新增多個圖表。例如,您可以為不同的值新增條形圖和餅圖來表示。您將看到第二個圖表的“顯示圖表”和“資料”選項→ 您可以新增所需的物件,還可以向圖表新增頁首和頁腳註釋,如下圖所示。

Report Footer

要檢視實際報表,請轉到“頁面”選項卡。

Report

水晶報表 - 交叉表佈局

交叉表用於顯示按兩個方向分組或彙總的資料。它以簡潔的格式顯示資料,使資料更容易理解和檢視趨勢。例如,如果您想檢視特定區域內每個客戶的銷售數量,如果沒有交叉表,資料將以分散的格式顯示。

Cross Tab

您可以透過點選“+”號在行和列中新增多個屬性。要刪除物件,請點選“X”號。

Cross Tab Layout

點選“插入”後,交叉表將新增到報表的結構中。如果點選頁面選項卡,則會在報表中顯示交叉表資料。

您還可以編輯交叉表中的單元格。要編輯交叉表屬性,請右鍵單擊交叉表,然後您可以更改以下屬性:

  • 格式化交叉表
  • 編輯交叉表
  • 排序
  • 隱藏
  • 網格選項
  • 透視
  • 從交叉表建立圖表
Cross Tab Properties

交叉表包含行總計、列總計和總計。要將值顯示為百分比,請右鍵單擊總計單元格,然後轉到“格式化總計”→選擇“顯示為百分比”。

Crosstab

網格選項允許您對交叉錶行進行格式設定,例如隱藏空行、重複行標籤、隱藏行總計等,如下圖所示。

Grid Options

水晶報表 - 定義公式

公式用於在報表中插入任何物件都不包含的資料。如果需要執行一些計算或在報表中新增特殊資料,可以使用公式。

示例 − (Emp_details.sal)*0.15

常用公式包括:計算、字串函式(如 UPPERCASE)、日期函式等。

公式在報表中包含兩部分:

  • 語法
  • 元件

元件用於建立公式。

Crystal Reports 包含以下型別的公式:報表公式和條件格式化公式。

報表公式在報表中作為獨立單元使用。條件格式化公式定義應用報表公式的條件。

水晶報表 - 公式工作區

公式編輯器用於建立各種型別的公式。您可以透過轉到“資料”→單擊“公式”或單擊“資料”工具欄上的“公式”選項卡來開啟公式編輯器。

Formula Workshop

在公式編輯器中,有兩個面板:導航面板和物件面板。

導航面板包含 Crystal Reports 中每種型別公式的資料夾。

Navigation Panel

物件面板包含 4 個欄位:

資料瀏覽器 - 包含 Crystal Report 中正在使用的物件、公式、引數和執行總計。

結果物件 - 包含可在報表中使用的所有結果物件。

函式 - 包含可在報表中使用的所有內建函式。它還包括自定義函式。例如:Sum、Count、字串函式、日期函式等。

運算子 - 用於在值之間傳遞條件。包括:算術運算子、陣列、布林運算子等。

Object Panels

公式編輯器還包含公式文字視窗和公式編輯器按鈕。文字視窗用於建立或修改公式,而編輯器面板按鈕允許您使用過濾器公式、排序公式、刪除等。

建立和修改公式

您可以一次建立單個或多個公式並在報表中使用它們。您還可以刪除公式,或在公式文字視窗中搜索和更改公式文字。

建立一個新公式,您可以右鍵單擊“資料瀏覽器”下的“公式”選項卡。單擊新公式→輸入公式名稱→將開啟公式編輯器。

New Formula

您還可以透過從“資料”下的“公式”選項卡開啟公式編輯器來建立新公式,方法是:新建→新建公式,如下圖所示。

Formula Tab

要在公式文字視窗中編寫公式,您可以使用“運算子”選項卡下的正在使用的物件和不同的運算子來在公式中傳遞條件。

Operator Tab

可以使用頁面底部的儲存選項儲存公式。儲存公式後,它將出現在“資料瀏覽器”選項卡的公式列表中。

Data Explorer Tab

您可以將此公式拖動到報表的任何部分。

Section

在上圖快照中,“測試公式”已拖動到報表頁尾,並且它在報表頁尾中計算的值為“銷售數量/2”。

現在要修改公式,請單擊“資料瀏覽器”下的公式名稱,這將開啟公式編輯器。對公式進行更改,然後使用底部的儲存按鈕儲存更改。這些更改將自動應用於報表值。

要從報表中刪除公式,請右鍵單擊公式名稱,然後單擊“刪除”。

Delete Formula

底部的“問題”面板用於除錯。它會顯示公式中的語法錯誤。下圖中的錯誤訊息指出,帶紅色下劃線的欄位作為欄位語法未知且不正確。

Problem Error

水晶報表 - 應用布林公式

Crystal Reports 中的公式可以使用不同的布林運算子。它們是:

  • AND
  • OR
  • NOT
  • Eqv
  • Imp
  • XOR

所有這些運算子都用於在公式中傳遞多個條件:

Boolean Operators

當您希望公式中的兩個條件都為真時,使用 AND 運算子。其他布林運算子及其含義如上圖快照所示。

使用布林運算子“AND”:

If {CUSTOMER.CUSTOMER_NAME} [1 to 2] = "AN" and
ToText({CUSTOMER.CUSTOMER ID}) [2] = "4" then
"TRUE"
Else
"FALSE"

使用布林運算子“AND”和“OR”:

If ({CUSTOMER.CUSTOMER_NAME} [1 to 2] = "AN" and
ToText({CUSTOMER.CUSTOMER ID}) [1] = "4") or
({CUSTOMER.CUSTOMER_NAME} [1 to 2] = "Ja" and
ToText({CUSTOMER.CUSTOMER ID}) [1] = "2") then
"Five star rating CUSTOMER"
Else
"1 star rating CUSTOMER"

Crystal Reports - If Then Else

if-then-else 語句是所有控制流語句中最基本的語句。它告訴您的程式僅當特定條件滿足時才執行一段特定的程式碼。

如果您看到以下帶有布林運算子的 if-then-else 語句,它允許您在公式中傳遞多個條件,並在條件為真時返回該值。

If({PROJECT.Customer\Customer Name} [1 to 2] = "An" and
ToText({PROJECT.Time\Year}) [1] = "2") or
({Project.Customer\CUSTOMER NAME} [1 to 2] = "Ja" and
ToText({PROJECT.Time\Year}) [1] = "2") Then
"Five star rating CUSTOMER"
Else
"1 star rating CUSTOMER"

此語句表示,當任何條件為真(OR 運算子之前和之後),則列印“五星級客戶”,否則列印“一星級客戶”。

此公式已儲存,然後新增到“結構”選項卡下的報表主體中,如下圖所示:

Structure Tab

Structure Tab1

報表中添加了一個新列,其中包含如“測試公式”中所述的客戶評級。

水晶報表 - 應用計算

計算公式用於在 Crystal Reports 中執行數學計算,它們可以在公式編輯器中設計。

算術運算子用於在編輯器中設計計算公式。可以使用不同的算術運算子進行加、除、指數、乘等運算。

Arithmetic Operators

要在公式中應用計算,請將物件從物件面板拖動到公式文字面板,並使用運算子執行所需的計算。儲存完公式後(使用底部的儲存選項),此公式將儲存在“資料瀏覽器”中的“公式”選項卡下。

Formula Tabs

然後,您可以將公式拖動到報表結構中,並轉到“頁面”選項卡以檢視報表中的計算資料。

Calculated Data Report

算術運算子列表(從最高優先順序到最低優先順序):

  • 指數運算
  • 否定
  • 乘法、除法和百分比
  • 整數除法
  • 取模
  • 加法和減法

水晶報表 - 條件格式化

要編寫條件格式化公式,請右鍵單擊報表,然後單擊“格式化結果物件元素”→選擇要應用條件公式的屬性→單擊,這將開啟公式編輯器。

在公式文字面板中編寫公式,儲存並關閉。

Conditional Formatting

在此示例中,如果可以將大於 60000 的總價列印為綠色,小於 60000 的列印為紅色,則可以在公式編輯器中傳遞此條件。

Formula Example

Formula Example2

在此示例中,使用了 crGreen、crRed、crBlack。您也可以使用顏色常量的實際數值。

有三個常見的條件格式化函式:

  • CurrentObjectValue
  • DefaultAttribute
  • GridRowColumnValue

DefaultAttribute 可用於任何格式化公式;CurrentObjectValue 用於格式化物件值的任何格式化公式;GridRowColumnValue 可用於在交叉表中格式化物件值的任何格式化公式。

水晶報表 - 建立變數

變數用於為物件分配不同的值,這與固定的常量不同。為變數賦值後,它會保持該值,直到您為其賦予新值。在使用變數之前,必須先在報表中定義它們。

在 Crystal Report 中宣告變數時,需要為其命名,但是此名稱不應與任何其他函式、運算子等相同。變數可以是數字型別、字串型別、日期型別、布林型別、範圍型別或陣列型別。變數只能儲存單一型別的值,例如,如果將其宣告為數字,則以後不能將其用於儲存字串值。

定義變數

Local Stringvar Customer_Lastname
Local numbervar Sales_percentage

宣告變數的關鍵字在末尾有“var”,所有變數型別都是如此。您還可以在宣告時或在單獨的語法中為變數賦值。

Local NumberVar Z; //Declare Z to be a Number variable
Z := 30;           //Assign the value of 30 to Z

要在公式中使用變數,需要定義其作用域。變數作用域可以分為三種類型:

  • 區域性
  • 全域性
  • 共享

這定義了在一個公式中的變數可以在其他公式中使用。

區域性變數

區域性變數使用 local 關鍵字宣告,後跟型別,然後是變數名,如上例所示。

區域性變數僅限於單個公式。這意味著您無法從不同的公式訪問一個公式中區域性變數的值。

//Formula 1
Local NumberVar Z;
Z := 30;

//Formula 2
EvaluateAfter ({@Formula A})
Local NumberVar Z;
Z := z + 5;

在上例中,公式 2 將返回 5,因為 Z 在公式 1 中宣告為區域性數字變數,因此公式 2 將採用變數 Z 的預設值。

全域性變數

全域性變數用於整個主報表。其值可用於宣告該變數的所有公式,子報表除外。

Global StringVar Z;

建議僅當局部變數不足時才使用全域性變數。

由於全域性變數在整個主報表中共享其值,因此您不能在一個公式中宣告一個全域性變數為一種型別,然後在另一個公式中宣告一個同名全域性變數為另一種型別。

共享變數

共享變數用於整個主報表及其所有子報表。共享變數比全域性變數更通用。

要使用共享變數,請在主報表中的公式中宣告它:

Shared NumberVar Z := 10;

要使用共享變數,必須先宣告它併為其賦值,然後才能在主報表和子報表中使用它。

水晶報表 - 建立陣列

Crystal Report 中的陣列變數可以使用關鍵字“Array”定義。

Global NumberVar Array Z := [1, 2, 3];

您還可以為陣列的元素賦值,這些值可用於公式中的計算。例如:

StringVar Array Z := [“Hello”,”World”];
Z[2] :=[“Bye”];
UpperCase (Z [2] )

此公式將返回字串“Bye”。

您還可以使用 Redim 和 Redim Preserve 關鍵字調整陣列大小。Redim 用於在調整陣列大小時刪除陣列的先前條目,而 Redim Preserve 用於保留先前的陣列值。例如:

Local NumberVar Array Z;
Redim Z [2]; //Now Z is [0, 0]
Z [2] := 10; //Now Z is [0, 10]
Redim Z [3]; //Now Z is [0, 0, 0], Redim has erased previous Array values.
Z [3] := 20; //Now Z is [0, 0, 20]
Redim Preserve Z [4]; 
//Now Z is [0, 0, 20, 0], Redim Preserve has contained previous Array values.
"finished"

帶迴圈的陣列

陣列也與迴圈一起使用:如 For 迴圈。

Local NumberVar Array Z;
Redim Z[10];
Local NumberVar x;
For x := 1 To 10 Do
(Z[x] := 10 * x);
Z [5] //The formula returns the Number 50

水晶報表 - 引數

引數用於在生成報表之前獲取使用者輸入。使用者必須在生成報表之前回答提示,並且報表輸出取決於使用者對引數值的響應。

透過在公式和報表中使用引數,您可以建立一個根據不同使用者的需求而變化的單個報表。

可以使用LOV在引數中輸入提示值。LOV可以是靜態的也可以是動態的。它們也可以用作單級動態提示或多級提示。

注意 − Crystal Reports中的引數可以在從資料庫檢索後用於篩選器。

級聯引數

具有依賴關係的引數組合在一起,稱為級聯引數。級聯引數允許您將兩個或多個引數組合到單個組中。

繼承的引數

引數也可以在Universe級別或查詢面板中建立,稍後可以繼承到Crystal Reports中。它們被稱為繼承引數。這些引數可以在報表級別刪除,但不能在報表中編輯。這些引數只能在其建立位置進行編輯。

引數資料型別

Crystal Report中的引數支援以下資料型別:

  • 數字
  • 字串
  • 日期
  • 時間
  • 日期時間
  • 貨幣
  • 布林值
  • 成員

使用引數時要記住的重要事項:

  • 要在公式中使用引數,無需將其放在報表中。引數可以在公式中像其他物件一樣使用,並且可以在公式工作區中建立。

  • 引數可以與靜態或動態LOV一起使用。

  • 您還可以建立一個值列表,使用者可以從中選擇引數值,而不是手動輸入。

值列表型別

型別 描述 何時使用
靜態LOV 提供基於您在報表中新增或匯入的值的簡單列表
  • 使用不會更改的資料
基於報表資料的動態LOV 提供來自資料來源的動態列表
  • 從資料庫檢索資料後過濾資料。
  • 互動式過濾報表資料,無需訪問資料庫。
  • 在資料來源(例如Universe或BEx查詢)中不存在LOV的情況下建立LOV。
Universe LOV 提供在Universe中建立和維護的列表。
  • 建立由Universe管理員管理的可重用值列表。

如何建立引數?

在“資料資源管理器”檢視中,右鍵單擊“引數”區域內的任意位置→選擇“新建”→“新建引數”

Parameters1

將出現“建立引數”對話方塊→輸入引數名稱(最多255個字母數字字元)。在對話方塊中,您可以更改引數的名稱和型別以及其他屬性。

從列表中選擇適當的資料型別→例如字串、數字或日期等。

Create Parameter

在“提示文字”框中,輸入所需的提示文字(最多255個字母數字字元)。

例如 − “選擇名稱”

預覽報表或重新整理頁面區域中的資料時,此文字將出現在提示對話方塊中。

要建立值列表,請單擊省略號按鈕→將出現“編輯值列表”對話方塊→輸入您希望在提示時看到的值→您可以為字串型別新增國家/地區列表,或為數字型別新增值列表→單擊“確定”→返回“建立引數”對話方塊→單擊“確定”並將引數拖動到您的報表中。

Edit Values

Edit Values1

Customer Details

將引數拖動到報表結構後,您可以轉到頁面選項卡以檢視重新整理報表資料時選擇的LOV。

水晶報表 - 過濾器

篩選器用於根據使用者的要求限制Crystal Report中的記錄。篩選器根據物件、運算子和引數應用。

如何在報表中建立互動式篩選器?

轉到頂部的“資料”選項卡→“互動式篩選器”

Filters

單擊“新增篩選器”→從篩選器中選擇第一個物件→選擇運算子→選擇引數

Add Filter

下拉列表將顯示為報表建立的所有引數列表。要編輯引數,可以單擊末尾的省略號按鈕。

Ellipsis Button

選擇引數後,單擊“確定”。如果您在引數中選擇了值列表,它將要求您從下拉列表中選擇一個值→選擇值→確定

選擇儲存的資料或重新整理資料→報表現在僅顯示篩選資料。

Saved Data

要新增多個互動式篩選器,可以使用“AND”和“OR”運算子。

刪除互動式篩選器

轉到“資料”選項卡→“互動式篩選器”→選擇要刪除的篩選器→單擊刪除按鈕

Delete Filter

水晶報表 - 提示面板

建立引數時,可以使用兩種型別的提示選項。

  • 提示使用者將建立一個提示,供使用者輸入引數的值。

  • 隱藏提示將用於透過公式而不是使用者傳遞一些初始值或值。

Prompt Panel

在“提示”面板中使用“提示使用者”選項時,您需要輸入“提示文字”。“提示”面板為您提供三個選項:

  • 不顯示提示 − 它不提供在報表級別更改值的選項。

  • 顯示為可編輯提示 − 它提供每次輸入不同值的選項。

  • 顯示為只讀提示 − 它提供以只讀模式檢視值的選項。

隱藏提示用於透過公式傳遞初始值或值。

Hidden Prompt

要傳遞初始值,請單擊函式按鈕之前的省略號按鈕。單擊此按鈕後,它會要求您輸入引數的值。輸入值並單擊“確定”後,該值將儲存在隱藏提示中。

Add a Value

要新增值,請鍵入值並單擊“新增”。將引數拖動到報表後,該值將顯示在報表中,如上圖所示。

水晶報表 - 級聯提示

級聯引數組允許您將引數排列到組中,從而提供一系列過濾後的選擇。

例如,如果您要提示城市值,但您還需要知道該城市來自哪個國家/地區和區域,則可以建立一個級聯引數組。在這種情況下,您首先提示國家/地區,選擇該值後,程式會透過僅顯示適用於所選國家的區域來提示區域。最後,選擇區域值後,程式會透過僅顯示適用於所選區域的城市來提示城市。透過這種方式,您可以為使用者提供易於管理的城市列表,並確保使用者選擇正確的城市。

如何建立級聯引數組?

轉到“資料資源管理器”→“引數”→“新建”→“新建級聯引數組”

New Cascading Parameter

出現“建立引數組”對話方塊→輸入引數組的名稱→輸入提示文字,如下面的影像所示。

Create Parameter Group

現在單擊值列中的第一個空行,它將向您顯示列表中所有可用的物件。從列表中選擇國家/地區→選擇國家/地區下方的空行並選擇區域→確定

現在將國家/地區引數拖動到報表中。它將提示您輸入國家/地區名稱。選擇國家/地區名稱後→它將提示您選擇區域名稱。

Country Parameter

將區域名稱拖動到報表中。

水晶報表 - 建立引數欄位

在“資料資源管理器”檢視中,右鍵單擊“引數”區域內的任意位置→選擇“新建”→“新建引數”

Create Parameter Field

將出現“建立引數”對話方塊→輸入引數名稱(最多255個字母數字字元)。在對話方塊中,您可以更改引數的名稱和型別以及其他屬性。

從列表中選擇適當的資料型別→例如字串、數字或日期等。

Create Parameters

建立允許多個值的引數

在“資料資源管理器”中→右鍵單擊“引數”→選擇“新建”→“新建引數”

在“建立引數”對話方塊中,輸入引數的名稱。

從列表中選擇適當的資料型別→輸入提示文字→將“允許多個值”設定為“True”。

現在,提示時,您可以指定要為引數輸入的多個值。

Dialog Box

Data Set

指定離散值或範圍值

對於值範圍的型別,選擇“離散”或“範圍”。

如果選擇“離散”,則引數將接受離散值(而不是值範圍)。

如果選擇“範圍”,則會提示您輸入引數值。您可以輸入起始值和結束值。例如,如果您輸入值“1”和“10”,則範圍為1-10,使用此引數進行篩選的報表將顯示所有值介於1和10之間的記錄。這也適用於字串引數。起始值為“A”且結束值為“H”,使用此引數進行篩選的報表將顯示字母範圍為A-H內的所有記錄。

Range Values

如果選擇了“允許多個值”和“離散選項”,則引數將接受多個離散值。您可以輸入多個值,但這些值將分別進行評估,不會解釋為範圍。如果選擇了“允許多個值”和“範圍選項”,則引數將接受多個範圍。

水晶報表 - 編輯引數欄位

將引數拖動到報表後→要編輯引數欄位,請右鍵單擊引數名稱並轉到“編輯引數”。

Edit Parameter Field

單擊“編輯引數”後,將開啟“編輯引數”視窗。

您也可以透過雙擊引數名稱來編輯引數。

刪除引數欄位

轉到“資料資源管理器”檢視→展開“引數”,然後右鍵單擊要刪除的引數。

選擇“刪除”。

Delete Parameter Field

動態引數

您可以使用動態LOV建立引數以從資料來源檢索資料。例如 − 當資料庫中的客戶名稱頻繁更改時,您可以建立動態LOV。

如何使用動態LOV建立引數?

開啟您的報表→“資料資源管理器”面板→右鍵單擊“引數”並選擇“新建引數”。

將出現“建立引數”對話方塊。

輸入引數名稱(最多255個字母數字字元)→要建立值列表,請單擊“編輯值列表”按鈕。

將出現“編輯值列表”對話方塊→在“列表型別”區域中,選擇“動態”。

在“值”組合框中,從列表中選擇“客戶名稱”。

Edit List of Values

您可以按升序或降序對LOV進行排序→單擊“確定”。

在“提示文字”物件中,輸入所需的提示文字(最多 255 個字母數字字元)→在提示對話方塊和互動面板中顯示的文字。預設值為“輸入 (引數名稱)” → 點選“確定”。

將引數拖動到報表中。

Current Data Set

水晶子報表 - 概述

子報表允許您將不相關的報表組合成一個報表。它是在報表中的報表。您可以組合無法連結的資料,並在單個報表中呈現同一資料的不同檢視。

子報表和主報表的區別:

  • 它用作主報表中的一個元素,不能用作單個報表。

  • 子報表不能包含其他子報表。

  • 它可以放置在任何報表節中,整個子報表將在此節中列印。

  • 它沒有頁首或頁尾節。

未連結的子報表

未連結的子報表是獨立的報表,它們的資料與主報表中的資料無關。未連結的子報表不必使用與主報表相同的資料;它可以使用相同的資料來源或完全不同的資料來源。無論底層資料來源如何,這些報表都被視為不相關的。

已連結的子報表

已連結的子報表使用與主報表中的資料協調的資料。程式將子報表中的資料與主報表中的資料匹配。如果您建立包含客戶資訊的報表和包含訂單資訊的子報表,然後將它們連結,則程式將為每個客戶建立一個包含其所有訂單的子報表。

子報表可以使用資料傳遞連結或子報表篩選器進行連結。

插入子報表

您可以在主報表中插入新的報表或現有的報表作為子報表。子報表具有與主報表類似的特性。子報表中使用的資料來源必須與主報表中使用的資料來源相似,並且還必須位於同一 BI 儲存庫中。您也可以選擇不同的源連線,但它必須具有與主報表連結的欄位。

子報表不能插入到另一個子報表中。子報表可以放置在任何報表節中,整個子報表將在此節中列印。但是,子報表不能獨立存在。它總是作為元素插入到主報表中。

格式化子報表

如何將子報表插入主報表?

轉到“插入”選項卡,單擊“子報表”→程式將顯示一個元素框架。

Subreport

將游標移動到要在報表中顯示的位置,然後單擊以放置它。

將出現“插入子報表”對話方塊 → 選擇建立新報表 → 在“報表名稱”文字框中鍵入報表的名稱。(您也可以插入現有子報表)。

New Subreport
選項 描述
使用主報表資料來源
  • 將出現“編輯查詢”頁面

連線到新的資料來源
  • 將出現“選擇資料來源連線”對話方塊

  • 選擇資料來源,然後單擊“下一步”

  • 將出現“編輯查詢”頁面

從“資料連線”區域中選擇一個選項,然後單擊“下一步”。如果您選擇“使用主報表資料來源”,它將開啟“查詢”面板以在報表中新增物件。

Edit Query Project

如果您選擇連線到新的資料來源,它將開啟“新建資料來源連線”視窗,您可以從中選擇新的資料來源。

選擇新的資料來源後,您需要定義主報表和子報表之間的關係。

Subreport Links

單擊“下一步”後,它將提示您選擇子報表型別,例如詳細報表、圖表、合計或自定義報表。

Insert Subreport

單擊“完成”→它將顯示在主報表的結構中。如果您單擊“頁面”選項卡,它將顯示主報表中子報表的資料。

Subreport Reports

要插入現有報表作為子報表

在“插入”選項卡上,單擊“子報表”→程式將顯示一個元素框架。

將游標移動到要在報表中顯示的位置,然後單擊以放置它。

將出現“插入子報表”嚮導 → 選擇“使用現有報表”,然後單擊“瀏覽”。

Existing Subreport

將出現“開啟”對話方塊 → 選擇要使用的報表,然後單擊“開啟”→單擊“下一步”。

如果您選擇的報表包含引數,則會顯示“資料傳遞連結”頁面。

設定相應的連結,然後單擊“下一步”。將出現“建立子報表篩選器”頁面 → 透過單擊“新增”建立主報表和子報表之間的連結 → 單擊“完成”。

您選擇的報表將作為子報表新增。

將子報表另存為主報表

您還可以將子報表另存為主報表。

右鍵單擊子報表框架,然後單擊“將子報表另存為”→“另存為”。

Save Subreport

鍵入子報表的新名稱→單擊“儲存”。

子報表將另存為主報表,您可以開啟並使用它。

編輯子報表的屬性

將子報表插入主報表後,您可以編輯其屬性。要格式化子報表,請:

右鍵單擊子報表框架,然後單擊“格式化子報表”。

Format Subreport

將出現“格式”對話方塊 → 編輯值。

例如,您可以更改子報表的名稱,編輯字型、大小、顏色等。

單擊“關閉”。

要組合兩個不相關的報表

建立要首先列印的報表作為主報表。

建立一個新的子報表。

將子報表放置到報表頁尾中,它將緊隨主報表之後列印。

Report Footers

建立按需子報表

當您想要建立包含多個子報表的報表時,按需子報表尤其有用。

常規子報表和按需子報表之間的區別在於,按需子報表的實際資料只有在使用者將其隔離後才會從資料來源中讀取。這樣,只有實際檢視的按需子報表的相關資料才會從資料來源中檢索。這使得子報表更易於管理。

要建立按需子報表:將普通子報表放置到主報表中。右鍵單擊子報表,然後單擊“格式化子報表”。單擊“子報表”選項,然後選擇“按需”。

Subreport on Demand

水晶報表 - 資料匯出概述

已完成的 Crystal Reports 報表可以匯出為多種格式,例如 XML、HTM、PDF、電子表格和文字處理器以及其他常見的資料交換格式。這使得 Crystal Report 能夠輕鬆使用和分發。

例如,您可能希望使用報表資料來增強桌面出版軟體中資料的呈現效果。匯出過程要求您指定格式和目標位置。格式確定檔案型別,目標位置確定檔案的位置。

在頁面模式下,單擊“檔案”→“匯出”,然後從列表中選擇匯出格式。

將出現“匯出選項”對話方塊。選擇匯出選項。

Dataexport

單擊“確定”→您還可以將格式設定為預設選項。

Default Options

在出現的“匯出目標”對話方塊中,執行以下操作之一:

  • 單擊“儲存到檔案”,然後在“匯出報表”對話方塊中輸入報表標題以儲存匯出的報表。

  • 單擊“儲存到應用程式”,以便在所選應用程式中開啟報表而不儲存它。

Crystal Reports - 資料匯出到 Excel

有不同的 Excel 選項可用於匯出 Crystal Report 的資料。

Microsoft Excel (97-2003) 純資料

Microsoft Excel (97-2003) 純資料是一種基於記錄的格式,專注於資料。此格式確實匯出大部分格式,但是,它不合並單元格,並且每個元素僅新增到一個單元格中。

此格式還可以將某些彙總作為 Excel 函式匯出。支援的彙總包括 SUM、AVERAGE、COUNT、MIN 和 MAX。

Microsoft Excel

Microsoft Excel 工作簿 純資料

Microsoft Excel 工作簿 純資料是一種基於記錄的格式,也專注於資料。此匯出格式是對現有 Microsoft Excel 工作簿 純資料匯出型別的增強。

此格式的匯出結果為 XLSX 檔案。XLSX 檔案格式由 Microsoft Excel 2007 及更高版本引入並支援。Microsoft Excel 工作簿 純資料格式消除了以前 XLS 檔案格式的限制,大約為 65536 行和 256 列。

Microsoft Excel Workbook

Microsoft Excel (97-2003)

Microsoft Excel (97-2003) 基於頁面的格式會將報表內容逐頁轉換為 Excel 單元格。來自多個頁面的內容將匯出到同一 Excel 工作表。

如果工作表已滿並且還有更多資料要匯出,則匯出程式將建立多個工作表以容納資料。如果報表元素覆蓋多個單元格,則匯出程式將合併單元格以表示報表元素。

Microsoft Excel 的工作表中最多有 256 列,因此新增到超過 256 列的單元格中的任何報表元素都不會匯出。此匯出格式保留了大部分格式,但不匯出報表中的線條和框元素。

Microsoft Excels

限制

Crystal Reports for Enterprise Java 執行時引擎不支援報表中嵌入的所有元素。例如,不支援 OLAP 網格和地圖元素。

字元渲染

Crystal Reports for Enterprise 和 Crystal Reports 2013 的字元渲染技術不同。這意味著每個單個字元的大小可能略有差異(1 畫素),隨著時間的推移累積起來會建立額外的行或列。

Crystal Reports - 資料匯出到 XML

XML 格式主要用於交換報表中的資料。它使用 Crystal XML 架構。

Manage XML Format

Crystal Reports 中的 XML 專家可用於自定義 XML 輸出。

Crystal Reports - 資料匯出到 HTML

將 Crystal Reports 匯出為 HTML 格式可以輕鬆訪問和分發報表資料。它允許您在許多常見的瀏覽器(如 Firefox 和 MS Internet Explorer)中訪問您的報表。

HTML 4.0 格式還透過使用 DHTML 儲存報表的結構和格式。報表中的所有影像都儲存在外部,並在匯出的 HTML 輸出中插入超連結。此匯出格式在輸出中生成多個檔案。

Data Export to HTML

轉到“檔案”→“匯出”,然後從列表中選擇“HTML 4.0”。將出現“匯出選項”對話方塊。從“基本目錄”文字框中選擇“基本目錄”。單擊“確定”。

將開啟“匯出目標”對話方塊。在“匯出目標”對話方塊中,執行以下操作之一:

  • 單擊“儲存到檔案”,然後在“匯出報表”對話方塊中輸入報表標題以儲存匯出的報表。

  • 單擊“儲存到應用程式”,以便在所選應用程式中開啟報表而不儲存它。

Base Directory

如果選中“單獨 HTML 頁面”複選框,則整個報表將被分成單獨的頁面。初始 HTML 頁面將儲存為 <報表名稱>.html。如果要透過 Web 瀏覽器檢視報表,則開啟此檔案。

Export Options

Crystal Reports - 資料匯出到 CSV

它將報表元素匯出為由您指定的隔斷符和分隔符字元分隔的一組值。當使用逗號 (,) 分隔元素時,該格式稱為逗號分隔值 (CSV)。

此匯出格式在 Microsoft Excel 使用者中很流行。它為報表中的每個記錄建立一行值,還包含報表的所有節,如頁首、組頁首、主體、組頁尾、報表頁尾和頁尾。

Separated Values

此格式無法用於匯出包含交叉表(交叉表報表)的報表。它也無法用於匯出在頁首或頁尾部分包含子報表的報表。

水晶報表 - 資料匯出到 RTF

RTF 格式是基於頁面的格式,但它不會保留輸出中的所有結構和格式選項。Microsoft Word 格式和富文字格式都會生成 RTF 檔案作為輸出。

此格式旨在用於應用程式,例如填寫表格,其中輸入文字的空間被保留為空文字物件。此匯出格式幾乎保留了所有格式。

RTF

匯出的檔案包含繪圖物件和文字欄位,用於顯示報表中的物件。

富文字格式 (RTF) 和 Microsoft Word (RTF) 格式相同。

廣告
© . All rights reserved.