Passer au contenu du pied de page
UTILISATION DE IRONBARCODE

Comment imprimer des codes-barres dans Crystal Reports avec VB.NET

Pour imprimer des codes-barres dans Crystal Reports avec VB .NET, installez IronBarcode via NuGet, générez des images de code-barres en utilisant BarcodeWriter.CreateBarcode(), et liez les données binaires résultantes à un champ image dans votre rapport Crystal. Cette approche élimine les dépendances liées aux polices de caractères et produit des codes-barres scannables et prêts à imprimer en quelques minutes.

L'ajout de codes-barres à Crystal Reports peut améliorer vos processus métier, les rendant plus rapides et plus précis, du suivi des stocks à la génération de rapports détaillés. Si vous avez déjà essayé d'utiliser des codes-barres basés sur des polices de caractères dans VB .NET, vous savez à quel point cela peut être compliqué avec les formules complexes, les formats limités et les problèmes d'imprimante qui peuvent rendre la tâche frustrante.

Les kits de développement logiciel (SDK) modernes de génération de codes-barres, tels IronBarcode , simplifient la création et l'impression de codes-barres. Dans ce guide, vous trouverez tout ce dont vous avez besoin : configurer IronBarcode dans Visual Studio, générer des codes-barres et les afficher directement dans vos rapports Crystal Reports. À la fin de cette formation, vous serez capable de produire des codes-barres Professional et fiables avec un minimum d'efforts.

Quels sont les méthodes pour imprimer des codes-barres dans Crystal Reports ?

Il existe deux approches principales pour ajouter des codes-barres à Crystal Reports : les méthodes basées sur la police et les solutions SDK.

Les méthodes basées sur la police nécessitent l'installation de polices de codes-barres spéciales (polices True Type) dans votre dossier de polices et l'utilisation de formules ou d'une bibliothèque de fonctions utilisateur (UFL) pour encoder les données. Bien que cette approche fonctionne, elle implique souvent des formules de codage complexes, une prise en charge limitée des formats de codes-barres (tels que Code 39 ou data matrix), et des problèmes potentiels de rendu de polices sur différents imprimantes et systèmes, comme discuté dans la documentation de Microsoft sur le rendu des polices.

Les solutions basées sur un SDK offrent une alternative plus fiable. Ces bibliothèques génèrent des images de codes-barres par programmation, ce qui garantit une meilleure fiabilité, une prise en charge étendue des formats et une mise en œuvre simplifiée. IronBarcode illustre cette approche moderne, permettant aux développeurs de générer des codes-barres sous forme d'images qui s'intègrent à Crystal Reports via des champs de base de données standard ou des objets DataTable. Cette méthode assure un rendu cohérent sur toutes les plateformes et élimine les problèmes de dépendance aux polices lors de l'impression d'un code-barres dans un Crystal Report à l'aide de VB.NET.

Méthodes de codes-barres basées sur les polices vs. méthodes basées sur le SDK dans Crystal Reports
Facteur Méthode basée sur les polices Méthode basée sur le SDK (IronBarcode)
Complexité de la configuration Élevé -- nécessite l'installation de polices et de formules d'encodage Faible -- installation d'un seul package NuGet
support des formats de codes-barres Limité (Code 39, Code 128) Plus de 30 formats, dont QR, Data Matrix et PDF417
Cohérence entre imprimantes Incohérent – ​​dépend des polices installées Rendu cohérent basé sur l'image
Charge d'entretien Élevé -- les polices doivent être gérées par machine Faible -- géré via les mises à jour NuGet
Fiabilité de la numérisation Variable Élevé -- IronBarcode génère des images vérifiées

Comment installer IronBarcode pour VB .NET?

La configuration de IronBarcode dans votre projet VB.NET nécessite une configuration minimale. Tout d'abord, installez la bibliothèque via le gestionnaire de packages NuGet en exécutant :

Install-Package BarCode
Install-Package BarCode
SHELL

Vous pouvez également utiliser l'interface utilisateur du Gestionnaire de packages dans Visual Studio pour rechercher et installer " BarCode ". Une fois installé, importez l'espace de noms dans votre code VB.NET :

Imports IronBarCode

Assurez-vous que votre projet cible .NET Framework 4.6.2 ou supérieur, ou toute version de .NET Core, .NET 5 ou .NET 6+. IronBarcode fonctionne avec toutes les versions de Crystal Reports qui prennent en charge les champs d'image, ce qui le rend largement compatible avec les projets existants. Pour des instructions d'installation détaillées, reportez-vous au guide de démarrage IronBarcode .

Téléchargez IronBarcode dès aujourd'hui pour commencer à créer des codes-barres professionnels dans vos Crystal Reports.

Quelles versions de .NET sont prises en charge par IronBarcode ?

IronBarcode cible une large gamme d'environnements d'exécution .NET :

  • .NET Framework 4.6.2 et versions ultérieures
  • .NET Core 3.1+
  • .NET 5, 6, 7, 8 et 9
  • .NET Standard 2.0+

Cette large compatibilité signifie que vous pouvez intégrer IronBarcode dans les applications VB .NET existantes exécutées sur .NET Framework aussi facilement que dans les applications modernes ciblant .NET 8 ou une version ultérieure. Consultez la documentation de compatibilité IronBarcode pour obtenir la matrice de compatibilité complète.

Comment générer des codes-barres et les stocker dans une base de données ?

La création de codes-barres avec IronBarcode et leur stockage pour Crystal Reports impliquent la génération de l'image du code-barres et son enregistrement dans votre base de données à l'aide d'une connexion SqlConnection ou OleDbConnection. Voici un exemple complet :

Option 1 : Utilisation d'une base de données SQL

Imports IronBarCode
Imports System.Data.SqlClient

Module BarcodeGenerator
    Sub CreateAndStoreBarcode()
        ' Generate a Code128 barcode
        Dim myBarcode = BarcodeWriter.CreateBarcode("PROD-12345", BarcodeWriterEncoding.Code128)
        ' Add readable text below the barcode
        myBarcode.AddBarcodeValueTextBelowBarcode()
        ' Resize to appropriate dimensions
        myBarcode.ResizeTo(400, 150)
        ' Connect to your database
        Using connection As New SqlConnection("YourConnectionString")
            Dim cmd As New SqlCommand(
                "INSERT INTO Products (ProductCode, BarcodeImage) VALUES (@Code, @Image)",
                connection)
            cmd.Parameters.AddWithValue("@Code", "PROD-12345")
            cmd.Parameters.AddWithValue("@Image", myBarcode.BinaryStream)
            connection.Open()
            cmd.ExecuteNonQuery()
        End Using
    End Sub
End Module

Cet exemple génère un code-barres Code 128 et le stocke sous forme de données binaires dans SQL Server. La méthode AddBarcodeValueTextBelowBarcode() ajoute un texte lisible par l'homme sous le symbole du code-barres, le rendant utilisable à la fois pour la numérisation et l'inspection visuelle. La méthode ResizeTo() ajuste les dimensions pour s'adapter à la mise en page de votre rapport.

Option 2 : Utiliser un DataTable

Dans les cas où vous n'avez pas besoin de stockage persistant, une approche DataTable permet d'éviter complètement la base de données :

Imports IronBarCode
Imports System.Data

Function CreateBarcodeDataTable() As DataTable
    Dim dt As New DataTable()
    dt.Columns.Add("ProductCode", GetType(String))
    dt.Columns.Add("Barcode", GetType(Byte()))

    ' Generate a barcode for each product
    Dim row As DataRow = dt.NewRow()
    row("ProductCode") = "PROD-12345"

    Dim barcode = BarcodeWriter.CreateBarcode("PROD-12345", BarcodeWriterEncoding.Code128)
    barcode.AddBarcodeValueTextBelowBarcode()
    barcode.ResizeTo(400, 150)
    row("Barcode") = barcode.BinaryStream

    dt.Rows.Add(row)
    Return dt
End Function

Cette approche DataTable est idéale pour les aperçus de rapports, les travaux d'impression ponctuels ou lorsque l'infrastructure de base de données n'est pas disponible. Vous pouvez parcourir une liste de produits et ajouter une ligne pour chaque article, en générant des codes-barres à la demande. Pour découvrir d'autres formats de codes-barres, consultez les types de codes-barres pris en charge ou parcourez les tutoriels IronBarcode .

Comment personnaliser l'apparence des codes-barres ?

Au-delà de la simple génération, IronBarcode offre plusieurs options de personnalisation utiles pour les rapports imprimés :

  • Marges -- Utilisez myBarcode.SetMargins() pour ajouter un espace blanc autour du code-barres, améliorant ainsi la fiabilité de la lecture.
  • Couleurs -- Modifiez les couleurs de premier plan et d'arrière-plan des modèles de rapports personnalisés.
  • Annotations -- Ajoutez du texte personnalisé au-dessus ou en dessous du code-barres en utilisant AddBarcodeValueTextAboveBarcode()
  • Résolution -- Définissez la résolution DPI pour une impression de haute qualité en utilisant myBarcode.SetDPI()

Consultez le guide de personnalisation des codes-barres pour obtenir des exemples de code couvrant chaque option.

Comment afficher les codes-barres dans Crystal Reports ?

Une fois que les codes-barres sont stockés dans votre base de données, les afficher dans Crystal Reports suit les procédures standard de champ d'image :

  1. Ouvrez Crystal Reports et créez un nouveau rapport ou ouvrez un existant
  2. Dans l'Explorateur de champs, faites un clic droit sur "Champs de base de données" et sélectionnez "Expert de la base de données"

    Comment imprimer des codes-barres dans Crystal Reports avec VB .NET: Figure 1 - Fenêtre Expert de base de données

  3. Connectez-vous à votre base de données et sélectionnez la table contenant les images de codes-barres
  4. Faites glisser le champ d'image de code-barres sur la surface de conception de votre rapport
  5. Redimensionnez et placez le champ selon le besoin

Le concepteur de votre rapport devrait ressembler à ceci :

Comment imprimer des codes-barres dans Crystal Reports avec VB .NET: Figure 2 - Mise en page du concepteur de rapports

Pour générer des codes-barres dynamiques lors de l'exécution du rapport, modifiez votre DataTable ou votre requête de base de données pour générer des codes-barres à la volée. L'exemple suivant montre comment lier un DataTable créé dynamiquement à un CrystalReportViewer :

Imports IronBarCode
Imports System.Data

Function GetReportData() As DataTable
    Dim dt As New DataTable()
    dt.Columns.Add("ProductCode", GetType(String))
    dt.Columns.Add("Barcode", GetType(Byte()))

    Dim row As DataRow = dt.NewRow()
    row("ProductCode") = "CUSTOMER-12345"

    Dim barcode = BarcodeWriter.CreateBarcode("CUSTOMER-12345", BarcodeWriterEncoding.Code128)
    barcode.AddBarcodeValueTextBelowBarcode()
    barcode.ResizeTo(400, 150)
    row("Barcode") = barcode.BinaryStream

    dt.Rows.Add(row)
    Return dt
End Function

Cette approche génère dynamiquement des codes-barres lors du chargement du rapport, éliminant la nécessité de pré-stocker des images dans la base de données. Vous pouvez exporter les rapports au format PDF en utilisant les fonctionnalités d'exportation intégrées de Crystal Reports. Pour plus d'informations sur les sources de données Crystal Reports, consultez la documentation SAP sur Crystal Reports.

Sortie

Votre rapport Crystal Reports affichera le code-barres avec un texte lisible et des dimensions correctes. Ajustez la taille du champ ou les marges selon les besoins des scanners, des imprimantes ou des étiquettes. Le code-barres peut être inclus directement dans les fichiers PDF, les formulaires imprimés ou les modèles d'étiquettes depuis votre application VB .NET .

Comment imprimer des codes-barres dans Crystal Reports avec VB .NET: Figure 3 - Affichage des codes-barres générés avec Crystal Reports Viewer

Comment gérez-vous les problèmes courants d'impression de codes-barres ?

Plusieurs problèmes peuvent survenir lors de l'implémentation de codes-barres dans Crystal Reports à l'aide de VB .NET. Les conseils de dépannage suivants permettent de résoudre les problèmes les plus fréquents :

Problèmes courants et solutions pour l'impression de codes-barres dans Crystal Reports
Enjeu Cause Solution
Codes-barres flous Faible résolution d'image Utilisez `ResizeTo()` pour des dimensions plus importantes ou définissez une résolution DPI plus élevée.
Échecs de numérisation Zone de silence insuffisante Ajoutez des marges avec `SetMargins()` ; ajoutez des astérisques pour le code 39
Erreurs de connexion à la base de données Paramètres de connexion incorrects Vérifiez la chaîne de connexion OleDbConnection ou SqlConnection et la liaison de données.
Type de données incorrect dans la base de données Le champ n'est pas défini sur le type binaire. Utilisez le type de colonne `image` ou `varbinary(max)`
Les codes-barres ne s'affichent pas Problème d'autorisation ou de chemin d'accès Vérifiez que le visualiseur de Crystal Reports dispose des autorisations d'accès à la base de données/aux DataTables.
Erreurs DLL manquantes Installation incomplète Réinstallez via NuGet; vérifiez que la DLL IronBarcode est référencée dans le projet.

Pour obtenir une assistance supplémentaire en matière de dépannage, consultez le guide de dépannage IronBarcode . Le forum d'assistance IronBarcode est également disponible pour les questions spécifiques et les cas particuliers non couverts par la documentation.

Comment choisir le bon format de code-barres ?

Le choix du format de code-barres approprié est important pour la compatibilité du matériel de lecture et la capacité de stockage des données. Les formats les plus courants pour les rapports d'entreprise sont :

  • Code 128 -- Code-barres linéaire à usage général ; densité de données élevée ; Compatible avec la plupart des scanners. Utilisez BarcodeWriterEncoding.Code128.
  • Code 39 -- Norme plus ancienne ; largement soutenu ; encode les caractères alphanumériques. Utilisez BarcodeWriterEncoding.Code39.
  • Code QR -- code-barres 2D ; stocke de grandes quantités de données, notamment des URL. Utilisez BarcodeWriterEncoding.QRCode.
  • Data Matrix -- Code-barres 2D compact ; courant dans la fabrication et la logistique. Utilisez BarcodeWriterEncoding.DataMatrix.
  • PDF417 -- Code-barres 2D haute capacité ; Utilisé pour les étiquettes d'expédition et les identifiants. Utilisez BarcodeWriterEncoding.PDF417.

Consultez la liste complète des formats de codes-barres pris en charge lors du choix de l'encodage approprié à votre cas d'utilisation. Pour lire les codes-barres des images de sortie de Crystal Reports, consultez le tutoriel sur le lecteur de codes-barres .

Quelles sont vos prochaines étapes ?

L'intégration de codes-barres dans Crystal Reports à l'aide de VB .NET et IronBarcode offre une solution fiable pour l'amélioration des rapports. Cette approche basée sur SDK élimine les dépendances de polices tout en offrant de nombreuses options de personnalisation. Que vous utilisiez une base de données ou une DataTable, vous pouvez implémenter des codes-barres Professional — notamment les codes Data Matrix, Code 39 et QR — dans votre application Crystal Reports.

Pour continuer à développer votre flux de travail de codes-barres :

Téléchargez IronBarcode ! Profitez de l'essai gratuit et commencez à générer des codes-barres dès aujourd'hui.

Commencez dès aujourd'hui à intégrer les codes-barres à votre projet en explorant la version d'essai gratuite d'IronBarcode pour découvrir toutes ses fonctionnalités d'impression de codes-barres dans Crystal Reports à l'aide de VB .NET. Le kit de développement logiciel (SDK) SAP Crystal Reports est documenté sur le portail des développeurs SAP pour des exemples d'intégration supplémentaires.

Questions Fréquemment Posées

Quels sont les avantages de l'utilisation de IronBarcode dans Crystal Reports avec VB.NET ?

Utiliser IronBarcode dans Crystal Reports avec VB.NET vous permet d'intégrer des codes-barres de manière transparente, améliorant les processus métier pour des tâches telles que le suivi des stocks et la génération de rapports détaillés. Cela simplifie la génération de codes-barres par rapport aux solutions basées sur les polices.

Comment IronBarcode améliore-t-il la génération de codes-barres dans Crystal Reports ?

IronBarcode améliore la génération de codes-barres en offrant un SDK simple qui élimine le besoin de formules complexes et réduit les problèmes liés aux formats limités et à la compatibilité des imprimantes dans Crystal Reports.

IronBarcode peut-il gérer différents formats de codes-barres dans Crystal Reports ?

Oui, IronBarcode prend en charge une large gamme de formats de codes-barres, ce qui le rend polyvalent pour diverses applications au sein de Crystal Reports, garantissant compatibilité et fiabilité.

Est-il difficile d'intégrer IronBarcode dans un projet VB.NET ?

Non, l'intégration de IronBarcode dans un projet VB.NET est conçue pour être conviviale avec une documentation claire et un support, rendant le processus fluide et efficace.

Pourquoi devrais-je choisir IronBarcode plutôt que des solutions de codes-barres basées sur les polices ?

IronBarcode offre une solution plus robuste et flexible que les codes-barres basés sur les polices, évitant des formules complexes et des problèmes d'imprimante, tout en offrant un support de format étendu et une fiabilité.

IronBarcode prend-il en charge l'impression de codes-barres directement depuis Crystal Reports ?

Oui, IronBarcode permet l'impression directe de codes-barres depuis Crystal Reports, garantissant une sortie de haute qualité et réduisant la complexité souvent associée à d'autres méthodes.

Quels sont les problèmes courants avec les codes-barres basés sur les polices en VB.NET ?

Les codes-barres basés sur les polices impliquent souvent des formules complexes, des options de format limitées et des problèmes de compatibilité des imprimantes, qu'IronBarcode aide à surmonter grâce à son SDK complet.

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

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi