
Wie man einen Barcode in Crystal Reports mit C# hinzufügt
Crystal Reports ist ein leistungsstarkes Berichtswerkzeug, das Entwicklern ermöglicht, funktionsreiche Berichte für ihre Anwendungen zu erstellen. Wenn es darum geht, Barcodes in Crystal Reports mit C# einzubinden, fügt dies eine neue Dimension zur Datenrepräsentation hinzu, was die Verwaltung und Nachverfolgung von Informationen erleichtert. In diesem Artikel erkunden wir die Schritte zur Integration von Barcodes in Crystal Reports mit C#.
Wie man einen Barcode in Crystal Reports mit C# hinzufügt
- Installieren Sie die Barcode-Bibliothek.
- Erstellen Sie ein Barcode-Bild und speichern Sie es als Bild in einer Datenbanktabelle.
- Entwerfen Sie das Layout für den Crystal Report.
- Stellen Sie eine Verbindung zur Datenbank her und wählen Sie die erforderliche Tabelle aus.
- Fügen Sie ein Barcode-Bildfeld in das Crystal Report Layout ein.
- Erstellen und starten Sie das Projekt.
Wählen Sie eine Barcode-Bibliothek
Bevor Sie mit der Implementierung beginnen, ist es wichtig, eine Barcode-Bibliothek auszuwählen, die Crystal Reports und C# unterstützt. Eine beliebte Wahl ist IronBarcode for .NET.
Was ist IronBarcode
IronBarcode ist eine vielseitige .NET-Bibliothek, die die Erstellung und das Lesen von Barcodes vereinfacht. Mit IronBarcode können Sie mühelos verschiedene Barcodes erstellen, darunter Code 128 und QR-Codes, indem Sie den zu kodierenden Wert angeben. Es unterstützt auch Größenänderungen und Anpassungen. Auf der Leseseite kann IronBarcode Barcode-Daten aus Bildern oder PDFs extrahieren, was es ideal für Bestandsverwaltung und Dokumentenverfolgung macht. Sein benutzerfreundliches API sorgt für eine schnelle Integration in Ihre Projekte, und plattformübergreifende Unterstützung ermöglicht eine nahtlose Entwicklung über verschiedene .NET-Versionen hinweg. Egal ob Sie ein erfahrener Entwickler oder ein Anfänger sind, IronBarcode befähigt Sie, effizient mit Barcodes zu arbeiten.
Erstellen Sie ein neues Projekt
Öffnen Sie Visual Studio, um eine ASP.NET Crystal Reports Site zu erstellen. Ich verwende Visual Studio 2022. Sie können beliebig eine andere Version verwenden, aber stellen Sie sicher, dass Crystal Reports für Visual Studio für diese spezielle Version installiert ist.

Wählen Sie Projektnamen, Standort und Ziel-Framework aus. Klicken Sie auf 'Erstellen'. Ein neues Projekt wird wie unten gezeigt erstellt.

Bevor wir beginnen, brauchen wir eine Datenbank. Lassen Sie uns eine neue Datenbank und eine Muster-Tabelle erstellen.
Erstellen Sie eine neue Datenbank
Das folgende Skript erstellt eine neue Datenbank.
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
Lassen Sie uns Daten in diese Tabelle einfügen. Wir werden einen Barcode erstellen und in der Produkttabelle speichern. Deshalb müssen wir Daten mit C#-Code einfügen und die IronBarcode-Bibliothek in unser Projekt installieren, um ihre Funktionen zur Erstellung von Barcodes zu nutzen.
Installieren Sie die IronBarcode-Bibliothek
Um die IronBarcode-Bibliothek mit der NuGet-Paketmanager-Konsole zu installieren, folgen Sie diesen Schritten:
Öffnen Sie die NuGet-Paketmanager-Konsole. Sie finden es unter Ansicht -> Weitere Fenster -> Paketmanager-Konsole.

Verwenden Sie in der Paketmanager-Konsole den folgenden Befehl, um die IronBarcode-Bibliothek zu installieren:
Drücken Sie Enter, um den Befehl auszuführen.
Alternativ können Sie die IronBarcode-Bibliothek mit dem Verwalten von NuGet-Paketen für die Lösung installieren:

Warten Sie, bis der NuGet-Paketmanager die IronBarcode-Bibliothek und ihre Abhängigkeiten heruntergeladen und installiert hat. Sobald die Installation abgeschlossen ist, sehen Sie eine Bestätigungsmeldung in der Paketmanager-Konsole.
Nun ist die IronBarcode-Bibliothek in Ihrem Projekt installiert, und Sie können beginnen, ihre Funktionen zur Barcoderzeugung und -lesung zu verwenden.
Generieren von Barcode-Bildern und Speichern in der Datenbank
Wir werden Barcode-Bilder generieren und mit ADO.NET in der Datenbank speichern. Der folgende Code zeigt das Beispiel für die Erstellung eines Barcodes in C#.
using System;
using System.Data.SqlClient;
using IronBarCode;
class Program
{
static void Main(string[] args)
{
// Create a barcode from a string value using Code128 format.
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
// Add the barcode value text below the barcode image.
myBarcode.AddBarcodeValueTextBelowBarcode();
// Resize the barcode image.
myBarcode.ResizeTo(600, 300);
// SQL connection to the SQL Server database.
using (SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=ProductDB;User ID=sa;Password=123456;Integrated Security=SSPI;"))
{
// SQL command to insert the barcode into the Products table.
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products VALUES (77446252, 'Pine Apple Small', '100', @Barcode)", cn);
// Add parameter for the barcode binary data.
cmd.Parameters.AddWithValue("@Barcode", myBarcode.BinaryStream);
// Open the connection, execute the query, close the connection.
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
}
}Imports System
Imports System.Data.SqlClient
Imports IronBarCode
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Create a barcode from a string value using Code128 format.
Dim myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128)
' Add the barcode value text below the barcode image.
myBarcode.AddBarcodeValueTextBelowBarcode()
' Resize the barcode image.
myBarcode.ResizeTo(600, 300)
' SQL connection to the SQL Server database.
Using cn As New SqlConnection("Data Source=localhost\SQLEXPRESS;Initial Catalog=ProductDB;User ID=sa;Password=123456;Integrated Security=SSPI;")
' SQL command to insert the barcode into the Products table.
Dim cmd As New SqlCommand($"INSERT INTO dbo.Products VALUES (77446252, 'Pine Apple Small', '100', @Barcode)", cn)
' Add parameter for the barcode binary data.
cmd.Parameters.AddWithValue("@Barcode", myBarcode.BinaryStream)
' Open the connection, execute the query, close the connection.
cn.Open()
cmd.ExecuteNonQuery()
cn.Close()
End Using
End Sub
End ClassCode-Erklärung
1. Barcode-Erzeugung
-
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);- Diese Zeile erstellt einen Barcode mit der
BarcodeWriter-Klasse und derCreateBarcode()-Methode. Der Barcode wird aus den Daten erzeugt, die durch den String "77446252" im Code 128-Kodierungsformat dargestellt werden. DiemyBarcode-Variable enthält jetzt den generierten Barcode.
- Diese Zeile erstellt einen Barcode mit der
-
AddBarcodeValueTextBelowBarcode()- Diese Funktion fügt einen Beschreibungstext des Barcode-Wertes unter dem Barcode hinzu.
-
ResizeTo(600, 300)- Passt die Höhe und Breite des Barcode-Bildes an die angegebenen Dimensionen an.
-
Sie können die
SaveAs()-Methode verwenden, um Barcode-Bilder im Dateisystem zu speichern.
Der folgende Barcode wird aus dem obigen Code generiert:

2. Datenbankverbindungseinrichtung
-
SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=ProductDB;User ID=sa;Password=123456;Integrated Security=SSPI;");- Stellt eine Verbindung zu einer SQL Server-Datenbank her. Der Verbindungsstring gibt den Server (
localhost\\SQLEXPRESS), das anfängliche Katalog (Datenbankname:ProductDB) und die Authentifizierungsdaten (user ID saundpassword 123456) an.
- Stellt eine Verbindung zu einer SQL Server-Datenbank her. Der Verbindungsstring gibt den Server (
3. SQL-Befehlserstellung
-
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products VALUES (77446252, 'Pine Apple Small', '100', '{myBarcode.BinaryStream}' )", cn);- Erstellt ein neues
SqlCommand-Objekt. Dieser Befehl stellt eine SQL-Abfrage dar, um Daten in die Produkte-Tabelle einzufügen. - Die Abfrage fügt Werte in die Tabellenspalten ein:
77446252,'Pine Apple Small','100'und den binären Stream des generierten Barcodes (myBarcode.BinaryStream).
- Erstellt ein neues
4. Datenbankinteraktion
cn.Open();: Die Verbindung zur Datenbank wird geöffnet.cmd.ExecuteNonQuery();: Die SQL-Abfrage wird ausgeführt und die angegebenen Werte in die Tabelle Products eingefügt.cn.Close();: Schließt die Datenbankverbindung, um Ressourcen freizugeben.
Gestalten Sie Ihr Crystal Reports Barcode-Generator
Gestalten Sie jetzt das Berichtslayout, fügen Sie Datenbankverbindungen hinzu und ordnen Sie die notwendigen Felder an. Wenn Sie neu in diesem Bereich sind, folgen Sie den folgenden Schritten.
-
Öffnen Sie den Feldeplorer => Datenbankfeld => Datenbankexperte.

-
Erweitern Sie Neue Verbindung erstellen => OLE DB(ADO) => Neue Verbindung herstellen.

-
Wählen Sie Microsoft OLE DB-Datenquelle für SQL Server aus und klicken Sie auf Weiter.

-
Geben Sie den Servernamen, die Anmeldeinformationen und den Datenbanknamen wie unten gezeigt an.

-
Drücken Sie die Schaltfläche Weiter, ein neues Fenster wird angezeigt, und klicken Sie dann auf Fertig.
-
Wählen Sie die gewünschte Tabelle aus. In diesem Fall wählen Sie die Produkte-Tabelle.

-
Klicken Sie auf die OK-Schaltfläche.
Wir haben eine Datenbankverbindung eingerichtet. Nun lassen Sie uns das Berichts-Layout einrichten.
Nun habe ich ein Textfeld mit dem Text "Barcode in Crystal Report C#" hinzugefügt. Ich habe ein Textfeld hinzugefügt und die Felder Produkt-ID, Produktname, Produktpreis-Feld und Produkt-Barcode aus den Datenbankfeldern per Drag & Drop in das Feld eingefügt, wie unten gezeigt.

Sehen Sie sich die Crystal Report-Vorschau im Crystal Report Viewer an.

Bauen und führen Sie das Projekt aus. Das Ergebnis ist wie folgt:

Ich habe das Muster-Datensatzpaket nicht heruntergeladen, um sicherzustellen, dass ich die richtige Datendatei hatte, und habe dann einen Crystal Report in C# zur umfassenden Datenvisualisierung erstellt.
Auf diese Weise können wir einen Barcode in der Crystal Reports-Anwendung erstellen, ohne die Barcode-Schriftart herunterzuladen. In ähnlicher Weise können wir auch einen QR-Code nach Ihren Anforderungen hinzufügen.
Abschluss
Zusammenfassend lässt sich sagen, dass die Integration von Barcodes in Crystal Reports mit C# eine leistungsstarke Möglichkeit ist, die Datenrepräsentation und Verwaltung zu verbessern. Die Auswahl einer zuverlässigen Barcode-Bibliothek wie IronBarcode vereinfacht den Prozess und bietet Vielseitigkeit und Benutzerfreundlichkeit. IronBarcode, mit seiner Unterstützung für verschiedene Barcode-Typen, Größenänderung und Anpassungsfunktionen, erweist sich als wertvolles Werkzeug bei Aufgaben zur Barcoderzeugung und -lesung. Der hier bereitgestellte Schritt-für-Schritt-Leitfaden stellt sicher, dass der Implementierungsprozess nahtlos verläuft, von der Auswahl der Bibliothek bis hin zur Gestaltung des Crystal Report-Layouts.
Darüber hinaus bietet IronBarcode Entwicklern die Möglichkeit, zusätzliche Funktionen und Unterstützung freizuschalten, um ihre Barcode-Integrationserfahrung zu verbessern. Diese Flexibilität macht IronBarcode zu einer überzeugenden Wahl für Entwickler, ob sie an kleinen Projekten oder unternehmensweiten Anwendungen arbeiten.

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.
Verwandte Artikel


