Cours avec manuel d’intégration à Visual Basic

Cours avec manuel d’intégration à Visual Basic, tutoriel & guide de travaux pratiques en pdf.

Intégration avec passage d’un jeu d’enregistrements au rapport

L’édition brute d’un rapport est certainement la plus évidente à mettre en place. Cependant, elle convient peu à la réalité. En effet, on souhaitera souvent éditer un état incomplet, c’est-à-dire filtré ou trié par l’utilisateur de l’application. Dans ce cas, il faut recourir à l’édition avec passage d’un jeu d’enregistrement.
Note : pour que les techniques décrites ci-dessous fonctionnent, il est impératif que l’option

  • Enregistrer les données avec l’état » du menu fichier de Crystal Reports soit désactivée.
  • Pour un rapport ne comportant pas de sous-état
  • Comme pour l’intégration brute, il faut avant tout ajouter les composants nécessaires à Crystal Reports, mais également les composants nécessaires à la création d’un recordset qui sont :

Références :  Microsoft ActiveX Data Objects 2.5 Library   msado15.dll
Contrôles : Microsoft ADO Data Control 6.0msadodc.ocx
Ensuite, créer une feuille et y placer un composant CRViewer, qui sera normalement appelé « CRViewer1 » par défaut.
c) Ensuite, il faut insérer le code suivant :

Déclarations

Dim app As New CRAXDRT.Application Dim RecordSet As ADODB.Recordset Dim Report As New CRAXDRT.Report Dim lStrSql As String Dim lStrConnect As String
Dim Connect As ADODB.Connection

  • jeu d’enregistrements
  • Contient l’ordre SQL pour le recordset
  • Contient la chaîne de connection à la base
  • Objet de type connection

Private Sub Form_Load()

  • Change le pointeur de souris en sablier MousePointer = vbHourglass
  • Définit la requête pour le jeu d’enregistrements

lStrSql = « SELECT champ1, champ2, champN FROM table1, table2, tableN »
‘ Définit la chaine de connection
lStrConnect = « Provider=Nom_du_provider;User ID=nom_du_user; » & _ « Data Source=Nom_de_la_base; Password=Mot_de_passe »
‘ Instancie l’objet Connection
Set Connect = new ADODB.Connection

  • Ouvre la connection avec la chaine de connection open lStrConnect
  • Instancie l’objet Recordset

Set RecordSet = new ADODB.Recordset

  • Initialise le recordset avec la requête et l’objet connection open lStrSql, Connect
  • On peut éventuellement appliquer des tris ou filtres existant sur d’autres recordset sort = autreRecordSet.sort

RecordSet.filter = autreRecordSet.filter

  • Instancie l’objet application

Set app = New CRAXDRT.Application
‘ Ouvre le fichier rapport
Set Report = app.OpenReport(« C:\chemin\du\fichier\nom_de_fichier.rpt « )

  • Indique que la source du rapport est le recordset que l’on vient de définir Database.SetDataSource RecordSet
  • Indique à l’objet de visualisation que les données viennent du rapport ReportSource = Report
  • Lance la visualisation du rapport
  • Le pointeur de souris redevient normal une fois le chargement effectué MousePointer = vbDefault End Sub

Pour un rapport comportant un sous-état

Dans ce cas de figure, le type utilisé pour le rapport change. En effet, concernant les composants utilisés, Crystal Reports Engine 8 Object Library (cpeaut32.dll) vient remplacer Crystal Report 8 ActiveX Report Designer Run Time Library (craxdrt.dll).
En ce qui concerne les données, il faut créer deux jeux d’enregistrements. En effet, l’un est destiné à l’état principal, et l’autre au sous -état.
De plus, les composants utilisés étant différents de ceux utilisés précédemment, la création d’un objet CRViewer est inutile, puisque cette méthode commande elle-même l’ouverture d’une fenêtre de visualisation du rapport.

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *