Passer au contenu du pied de page
UTILISATION DE IRONBARCODE

Comment ajouter un code-barres dans Crystal Reports en utilisant C#

Crystal Reports est un puissant outil de création de rapports qui permet aux développeurs de créer des rapports riches en fonctionnalités pour leurs applications. When it comes to including barcodes in Crystal Reports using C#, it adds a new dimension to data representation, making it easier to manage and track information. Dans cet article, nous explorerons les étapes pour intégrer des codes-barres dans Crystal Reports à l'aide de C#.

Comment ajouter un code-barres dans Crystal Reports en utilisant C

  1. Installer la bibliothèque de codes-barres.
  2. Générer une image de code-barres et la sauvegarder comme image dans une table de la base de données.
  3. Concevoir la mise en page pour le Crystal Report.
  4. Établir une connexion à la base de données et sélectionner la table nécessaire.
  5. Inclure un champ d'image de code-barres dans la mise en page du Crystal Report.
  6. Construire et exécuter le projet.

Choisir une bibliothèque de codes-barres

Avant de plonger dans la mise en œuvre, il est essentiel de sélectionner une bibliothèque de codes-barres qui prend en charge Crystal Reports et C#. Un choix populaire est IronBarcode pour .NET.

Qu'est-ce que IronBarcode

IronBarcode is a versatile .NET library that simplifies barcode generation and lecture de codes-barres. Avec IronBarcode, vous pouvez créer facilement divers codes-barres, y compris les codes 128 et QR, en spécifiant la valeur à encoder. It also supports resizing and customization. Côté lecture, IronBarcode peut extraire les données des codes-barres à partir d'images ou de PDF, ce qui le rend idéal pour la gestion des stocks et le suivi des documents. Son API conviviale assure une intégration rapide dans vos projets, et le support multiplateforme permet un développement transparent sur différentes versions de .NET. Que vous soyez un développeur expérimenté ou débutant, IronBarcode vous permet de travailler efficacement avec les codes-barres.

Créer un nouveau projet

Ouvrez Visual Studio pour créer un site Web ASP.NET Crystal Reports. J'utilise Visual Studio 2022. Vous pouvez en utiliser n'importe lequel, mais assurez-vous que Crystal Reports pour Visual Studio pour cette version particulière est installé.

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 1 - Ouvrir Visual Studio. Créez un nouveau projet ASP.NET Crystal Reports Web Site.

Sélectionnez le nom du projet, l'emplacement et le framework cible. Cliquez sur le bouton Créer. Un nouveau projet sera créé comme indiqué ci-dessous.

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 2 - Un nouveau projet sera créé avec une page par défaut CrystalReport1.rpt.

Avant de commencer, nous devons avoir une base de données. Créons une nouvelle base de données et une table d'exemple.

Créer une nouvelle base de données

Le script suivant créera une nouvelle base de données.

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

Insérons des données dans cette table. Nous créerons un code-barres et le sauvegarderons dans la table Produit. Par conséquent, nous devons insérer des données à l'aide du code C# et installer la bibliothèque IronBarcode dans notre projet pour utiliser ses fonctionnalités de création de codes-barres.

Installer la bibliothèque IronBarcode

Pour installer la bibliothèque IronBarcode à l'aide de la console du gestionnaire de packages NuGet, suivez ces étapes :

Ouvrez la console du gestionnaire de packages NuGet. Vous pouvez la trouver en allant dans Affichage -> Autres fenêtres -> Console du gestionnaire de packages.

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 3 - Ouvrir la console du gestionnaire de packages NuGet. Naviguez vers le menu Affichage - Autres fenêtres - Console du gestionnaire de packages

Dans la console du gestionnaire de packages, utilisez la commande suivante pour installer la bibliothèque IronBarcode :

Install-Package BarCode

Appuyez sur Entrée pour exécuter la commande.

Alternativement, vous pouvez installer la bibliothèque IronBarcode en utilisant Gérer les packages NuGet pour la solution :

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 4 - Installer IronBarcode en utilisant Gérer le package NuGet pour la solution en recherchant IronBarcode dans la barre de recherche du gestionnaire de packages NuGet, puis sélectionnez le projet et cliquez sur le bouton Installer.

Attendez que le gestionnaire de packages NuGet télécharge et installe la bibliothèque IronBarcode et ses dépendances. Une fois l'installation terminée, vous verrez un message de confirmation dans la console du gestionnaire de packages.

Maintenant, la bibliothèque IronBarcode est installée dans votre projet, et vous pouvez commencer à utiliser ses fonctionnalités pour la génération et la lecture de codes-barres.

Générer des images de codes-barres et les stocker dans la base de données

Nous générerons des images de codes-barres et les stockerons dans la base de données à l'aide d'ADO.NET. Le code suivant illustre l'exemple de génération d'un code-barres en 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();
        }
    }
}
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 Class
$vbLabelText   $csharpLabel

Explication du code

1. Génération de codes-barres

  1. var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);

    • Cette ligne crée un code-barres à l'aide de la méthode CreateBarcode() de la classe BarcodeWriter. Le code-barres est généré à partir des données représentées par la chaîne "77446252" en utilisant le format d'encodage Code 128. La variable myBarcode contient maintenant le code-barres généré.
  2. AddBarcodeValueTextBelowBarcode()

    • Cette fonction ajoute un texte descriptif de la valeur du code-barres sous le code-barres.
  3. ResizeTo(600, 300)

    • Ajuste la hauteur et la largeur de l'image de code-barres aux dimensions fournies.
  4. Vous pouvez utiliser la méthode SaveAs() pour enregistrer les images de codes-barres dans le système de fichiers.

Le code-barres suivant sera généré à partir du code ci-dessus :

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 5 - Résultat : Code-barres généré

2. Configuration de la connexion à la base de données

  1. SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=ProductDB;User ID=sa;Password=123456;Integrated Security=SSPI;");

    • Établit une connexion à une base de données SQL Server. La chaîne de connexion spécifie le serveur (localhost\\SQLEXPRESS), le catalogue initial (nom de la base de données : ProductDB) et les informations d'authentification (user ID sa et password 123456).

3. Création de commande SQL

  1. SqlCommand cmd = new SqlCommand("$INSERT INTO dbo.Products VALUES (77446252, 'Pine Apple Small', '100', '{myBarcode.BinaryStream}' )", cn);

    • Crée un nouvel objet SqlCommand. Cette commande représente une requête SQL pour insérer des données dans la table Products.
    • La requête insère des valeurs dans les colonnes de la table : 77446252, 'Pine Apple Small', '100', et le flux binaire du code-barres généré (myBarcode.BinaryStream).

4. Interaction avec la base de données

  1. cn.Open(); : La connexion à la base de données est ouverte.
  2. cmd.ExecuteNonQuery(); : La requête SQL est exécutée, insérant les valeurs spécifiées dans la table Products.
  3. cn.Close(); : Ferme la connexion à la base de données pour libérer des ressources.

Concevez votre générateur de codes-barres Crystal Reports

Maintenant, concevez la mise en page du rapport, ajoutez des connexions à la base de données et disposez les champs nécessaires. Si vous êtes nouveau dans ce domaine, suivez les étapes suivantes.

  1. Ouvrir l'explorateur de champs => Champ de base de données => Expert de base de données.

    Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 6 - Ajouter une connexion à la base de données à la mise en page du rapport : Ouvrir l'explorateur de champs - Champ de base de données - Expert de base de données.

  2. Développer Créer une nouvelle connexion => OLE DB(ADO) => Créer une nouvelle connexion.

    Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 7 - Développer Créer une nouvelle connexion - OLE DB(ADO) - Créer une nouvelle connexion.

  3. Sélectionnez Microsoft OLE DB Data Source pour SQL Server et cliquez sur Suivant.

    Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 8 - Sélectionnez Microsoft OLE DB Data Source pour SQL Server et cliquez sur Suivant.

  4. Fournissez le nom du serveur, les informations d'identification de connexion et le nom de la base de données comme illustré ci-dessous.

    Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 9 - Spécifiez le nom du serveur SQL, les informations d'identification de connexion et le nom de la base de données. Ensuite, cliquez sur Suivant - puis sur Terminer.

  5. Appuyez sur le bouton Suivant, une nouvelle fenêtre apparaîtra, puis cliquez sur Terminer.
  6. Sélectionnez la table que vous souhaitez ajouter. Dans ce cas, sélectionnez la table Products.

    Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 10 - Ajouter une table : Sélectionnez la table Products de la base de données ProductDB. Ensuite, cliquez sur le bouton OK.

  7. Cliquez sur le bouton OK.

Nous avons configuré une connexion à la base de données. Maintenant, configurons la mise en page du rapport.

Maintenant, j'ai ajouté une zone de texte avec le texte "Barcode in Crystal report C#". J'ai ajouté une zone de texte, et fait glisser et déposé l'ID du produit, le nom du produit, le champ de prix du produit et le code-barres du produit à partir des champs de base de données et les ai placés dans la boîte comme indiqué ci-dessous.

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 11 - Créer un Crystal Report en C#. Faites glisser et déposez les champs ID du produit, Nom du produit, Prix du produit, Code-barres du produit à partir des champs de base de données.

Voir l'aperçu de Crystal Report dans Crystal Report Viewer.

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 12 - Vérifiez l'aperçu du Crystal Report dans Crystal Report Viewer.

Construisez et exécutez le projet. La sortie est la suivante :

Comment ajouter un code-barres dans Crystal Reports en utilisant C#: Figure 13 - Résultat : Crystal Report avec code-barres

Je n'ai pas téléchargé le package de jeu de données d'exemple, en m'assurant d'avoir le fichier de données correct et en procédant à la création d'un rapport Crystal en C# pour une visualisation complète des données.

De cette manière, nous pouvons créer un code-barres dans l'application Crystal Reports sans télécharger la police de code-barres. De même, nous pouvons également ajouter un code QR selon vos besoins.

Conclusion

En conclusion, l'intégration de codes-barres dans Crystal Reports à l'aide de C# est un moyen puissant d'améliorer la représentation et la gestion des données. Choisir une bibliothèque de codes-barres fiable comme IronBarcode simplifie le processus, offrant polyvalence et facilité d'utilisation. IronBarcode, avec son support pour divers types de codes-barres, les fonctionnalités de redimensionnement et de personnalisation, s'avère être un atout précieux dans les tâches de création et de lecture de codes-barres. Le guide étape par étape fourni ici garantit un processus de mise en œuvre sans faille, de la sélection de la bibliothèque à la conception de la mise en page du Crystal Report.

De plus, IronBarcode offre aux développeurs l'opportunité de débloquer des fonctionnalités supplémentaires et un support pour améliorer leur expérience d'intégration de codes-barres. Cette flexibilité fait d'IronBarcode un choix convaincant pour les développeurs, qu'ils travaillent sur des projets à petite échelle ou des applications de niveau entreprise.

Questions Fréquemment Posées

Comment puis-je intégrer des codes-barres dans Crystal Reports en utilisant C# ?

Pour intégrer des codes-barres dans Crystal Reports en utilisant C#, vous pouvez utiliser IronBarcode pour générer des images de codes-barres. Tout d'abord, installez la bibliothèque IronBarcode, générez l'image de code-barres, enregistrez-la dans une base de données, puis utilisez Crystal Reports pour concevoir la mise en page et incorporer l'image de code-barres.

Quel est le processus pour générer un code-barres en C# ?

En utilisant IronBarcode, vous pouvez générer un code-barres en C# en créant un objet code-barres, le personnalisant avec des options comme le redimensionnement et l'ajout de texte, puis en enregistrant l'image dans un fichier ou une base de données pour une utilisation dans les rapports.

Comment sauvegardez-vous une image de code-barres dans une base de données en C# ?

Après avoir généré une image de code-barres avec IronBarcode, vous pouvez la sauvegarder dans une base de données en convertissant l'image en format binaire et en utilisant ADO.NET pour l'insérer dans une table de base de données.

Quels sont les avantages d'utiliser IronBarcode pour la génération de codes-barres en C# ?

IronBarcode est bénéfique pour la génération de codes-barres en C# car il prend en charge divers formats de codes-barres, permet la personnalisation et offre une API simple pour une intégration rapide dans les applications, améliorant ainsi à la fois le suivi des stocks et des documents.

Comment puis-je configurer une connexion à une base de données dans Crystal Reports pour l'intégration de codes-barres ?

Pour configurer une connexion à une base de données dans Crystal Reports, utilisez l'Explorateur de champs pour naviguer jusqu'au champ de base de données, puis allez dans l'expert de la base de données, développez Créer une nouvelle connexion, sélectionnez OLE DB(ADO), et configurez votre connexion avec les détails du serveur nécessaires.

IronBarcode peut-il être utilisé pour générer des codes QR dans Crystal Reports ?

Oui, IronBarcode peut être utilisé pour générer des codes QR, ainsi que d'autres types de codes-barres, ce qui en fait un choix polyvalent pour intégrer différents formats de codes-barres dans Crystal Reports.

Quelles étapes doivent être suivies pour concevoir une mise en page de Crystal Report avec des codes-barres ?

Concevoir une mise en page de Crystal Report avec des codes-barres implique de créer un modèle de rapport, d'établir une connexion à une base de données, d'ajouter le champ d'image de code-barres et de formater le rapport pour incorporer efficacement les données de code-barres.

Comment IronBarcode améliore-t-il les capacités de reporting dans les projets C# ?

IronBarcode améliore les capacités de reporting dans les projets C# en fournissant une solution flexible et facile à utiliser pour générer et intégrer des codes-barres, ce qui améliore la visualisation et la gestion des données dans les rapports.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite