在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
水晶報表是一個功能強大的報告工具,允許開發人員為其應用程式建立功能豐富的報告。 涉及包括時條碼在 Crystal Reports 使用C#,為數據呈現增添了新的維度,使得管理和追踪信息變得更加容易。 在本文中,我們將探討使用 C# 將條碼整合到 Crystal Reports 的步驟。
安裝條碼庫。
生成條碼圖像並將其作為圖像儲存在資料庫表中。
設計 Crystal Report 的版面配置。
建立與資料庫的連線並選擇所需的表格。
在 Crystal Report 佈局中包含一個條碼圖像欄位。
在進行實作之前,選擇支援 Crystal Reports 和 C# 的條碼庫是至關重要的。 一個受歡迎的選擇是IronBarcode適用於 .NET。
IronBarcode是一個多功能的 .NET 庫,簡化條碼生成和讀取. 使用 IronBarcode,您可以輕鬆創建各種條碼,包括 Code 128 和 QR 碼,通過指定要編碼的值。 它也支持調整大小和自定義. 在讀取方面,IronBarcode 能夠從圖片或 PDF 中提取條碼數據,使其成為庫存管理和文件追蹤的理想工具。 其使用者友好的 API 確保了您能夠快速整合到您的專案中,跨平台支援則允許您在不同 .NET 版本中無縫開發。 無論您是經驗豐富的開發人員還是初學者,IronBarcode 都能讓您高效地處理條碼。
打開 Visual Studio 以創建 ASP.NET Crystal Reports 網站。我正在使用Visual Studio 2022. 您可以使用任何版本,但請確保安裝了該特定版本的 Visual Studio 的 Crystal Reports。
選擇專案名稱、位置和目標框架。 點擊「建立」按鈕。 將建立如下面所示的新專案。
在開始之前,我們需要有一個資料庫。 讓我們建立一個新的資料庫和一個範例表。
以下腳本將創建一個新數據庫。
CREATE DATABASE ProductDB;
USE [ProductDB]
GO
/****** Object: Table [dbo].[Products] Script Date: 3/10/2024 2:57:18 PM**/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Products](
[Product_ID] [int] NULL,
[Product_Name] [varchar](100) NULL,
[Product_Price] [decimal](18, 0) NULL,
[Product_Barcode] [image] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
讓我們將資料插入這個表中。 我們需要創建條碼並將其儲存在產品表中。 因此,我們需要使用C#代碼插入數據。 我們需要在專案中安裝IronBarcode函式庫以使用其功能來創建條碼。
若要安裝IronBarcode 函式庫使用 NuGet 套件管理器主控台,請按照以下步驟:
開啟 NuGet 套件管理控制台。 您可以透過前往 View -> Other Windows -> Package Manager Console 找到它。
在套件管理器控制台中,使用以下命令安裝 IronBarcode 函式庫:
Install-Package Barcode
按下 Enter 鍵以執行命令。
或者,您可以使用解決方案的 NuGet 套件管理員安裝 IronBarcode 庫:
等待 NuGet 套件管理員下載並安裝 IronBarcode 函式庫及其相依性。 安裝完成後,您將在套件管理器控制台中看到確認消息。
現在,IronBarcode 程式庫已安裝在您的專案中,您可以開始使用其條碼生成和讀取功能。
我將生成條碼圖像,並使用 ADO.NET 將其存儲在資料庫中。 以下程式碼將演示如何在 C# 中生成條碼的範例。
static void Main(string [] args)
{
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.ResizeTo(600, 300);
SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;Integrated Security=SSPI;");
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
static void Main(string [] args)
{
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.ResizeTo(600, 300);
SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;Integrated Security=SSPI;");
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
Shared Sub Main(ByVal args() As String)
Dim myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128)
myBarcode.AddBarcodeValueTextBelowBarcode()
myBarcode.ResizeTo(600, 300)
Dim cn As New SqlConnection("Data Source=localhost\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;Integrated Security=SSPI;")
Dim cmd As New SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn)
cn.Open()
cmd.ExecuteNonQuery()
cn.Close()
End Sub
上述源代码生成条形码,連接到 SQL Server 資料庫,插入資料(包括條碼)插入到產品表中,然後關閉資料庫連接。
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
此行使用 BarcodeWriter 類別的 CreateBarcode 方法創建條碼。() 方法。 條碼是由字串「77446252」所代表的二進位數據,通過Code 128編碼格式生成的。myBarcode**變數現在持有生成的條碼。
在條碼下方添加條碼值文字()** 函數將在條碼下方添加一個文字值。
ResizeTo(600, 300)將使用提供的尺寸更改條碼圖像的高度和寬度。
我們可以使用 SaveAs()將條碼圖像保存到文件系統的方法。**
以下條碼將由上述程式碼生成。
SqlConnection cn = new SqlConnection("Data Source=localhost\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;);
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products values(77446252,'鳳梨小','100'{myBarcode.BinaryStream}')", cn);
創建了一個新的 SqlCommand 對象。 此命令表示將資料插入到產品表的 SQL 查詢。
cn.Open():已連接至資料庫。
cmd.ExecuteNonQuery()**:執行 SQL 查詢,將指定的值插入到 Products 表中。
現在,設計報告佈局,添加資料庫連接,並安排必要的欄位。 如果您是新手,請按照以下步驟操作。
開啟欄位瀏覽器 => 資料庫欄位 => 資料庫專家。
展開新建連接 => OLE DB(ADO)建立新連線
選擇 Microsoft OLE DB 資料來源以供 SQL Server。 點擊下一步。
提供伺服器名稱、登入憑證和資料庫名稱,如下所示。
按下「下一步」按鈕,會出現一個新視窗,然後點擊「完成」。
選擇您要添加的表格。 在這種情況下,選擇產品表。
點擊確定按鈕。
我們已經建立了一個資料庫連線。 現在,讓我們設置報告佈局。
現在,我已經添加了一個文字框,其文字為「Barcode in Crystal report C#」。 新增了文字方框、拖放產品編號、產品名稱和產品價格欄位,以及產品條碼,這些都來自於資料庫欄位,並將它們放置在方框內,如下所示。
在 Crystal Report Viewer 中查看 Crystal Report 預覽。
建置並執行項目。 輸出為:
我還沒有下載範例數據集包,確保我擁有正確的數據文件,然後使用C#創建了一個Crystal Report,以便進行全面的數據可視化。
這樣,我們可以在 Crystal Reports 應用程式中創建條碼,而無需下載條碼字型。 同樣地,我們也可以根據您的需求添加一個 QR Code。
總之,使用 C# 將條碼集成到 Crystal Reports 是增強數據表示和管理的強大方式。 選擇像IronBarcode簡化流程,提供多樣性和易用性。 IronBarcode 支援各種條碼類型、調整大小和自訂功能,證明在條碼生成和閱讀任務中是極有價值的資產。 這裡提供的逐步指南確保從選擇庫到設計 Crystal Report 版面的實施過程順利無礙。
此外,IronBarcode,解鎖額外的功能和支援,以進一步提升其條碼整合體驗。 這種靈活性使 IronBarcode 成為開發人員的理想選擇,無論他們是在從事小型專案還是企業級應用程式。