Etat Crystal Reports VB.Net niveau débutant! [Résolu]

Signaler
Messages postés
65
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 mars 2006
-
Messages postés
9
Date d'inscription
mercredi 22 novembre 2006
Statut
Membre
Dernière intervention
4 octobre 2011
-
Bonjour,

Je travaille sous VB.Net 2003 et j'ai besoin d'un état de Crystal Reports.
J'ai fait mon état avec la version Crystal Reports 9 et j'ai référencé cet état dans mon projet. Jusque là tout va bien. Par contre je voudrais l'afficher sur le clic d'un bouton et je ne sais pas comment faire. C'est la première fois que j'utilise Crystal Reports et je ne sais pas comment l'insèrer à mon code.
Tout ce que j'ai pu écrire pour l'instant c'est :

Dim monEtat
As
New EtatParCommande


monEtat.OpenSubreport("EtatParCommande.rpt")


monEtat.Load()


monEtat.Close()

Mais je ne sais même pas à quoi ça correspond.

Est-ce que quelqu'un peut m'aider ou me filer des adresses ou des tutoriaux qui expliquent bien comment faire?

Merci d'avance.


Taly

6 réponses

Messages postés
100
Date d'inscription
samedi 11 janvier 2003
Statut
Membre
Dernière intervention
16 juin 2006
1
Le conseil que je peux te donner c est de travailler avec une procédure stockée qui te genera un DataSet.

Voici un ememple que j'ai utilisé

Dim cmd_proc As New SqlCommand
Dim DS As New DataSet
Dim myParam As SqlParameter


cmd_proc.CommandTimeout = 180
cmd_proc.CommandType = CommandType.StoredProcedure
cmd_proc.CommandText = "spu_fiche_stat_coif"
cmd_proc.Connection = cnx



myParam = New SqlParameter("@NumEtat", SqlDbType.Int)
myParam.Value = numEtat
cmd_proc.Parameters.Add(myParam)


DA = New SqlDataAdapter(cmd_proc)


Try
'cmd_proc.ExecuteNonQuery()
DA.Fill(DS)
' pour une meilleur maintenance on renome toutes les tables du DS
DS.Tables(0).TableName = "Rep"
DS.Tables(1).TableName = "Tec"
DS.Tables(2).TableName = "Client"
DS.Tables(3).TableName = "CA1"
DS.Tables(4).TableName = "Ca2"
DS.Tables(5).TableName = "Date"
DS.Tables(6).TableName = "Produits"
DS.Tables(7).TableName = "ProduitsHors"
DS.Tables(8).TableName = "Flag"
DS.Tables(9).TableName = "VBNET"
DS.Tables(10).TableName = "Glob"
DS.Tables(11).TableName = "soustrait"


cnx.Close()


Return DS
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 123 internautes nous ont dit merci ce mois-ci

Messages postés
100
Date d'inscription
samedi 11 janvier 2003
Statut
Membre
Dernière intervention
16 juin 2006
1
Pour l'afficher dans ton appli tu peux utiliser un CrystalReportViewer, qui te permet d'afficher un report dedans.
C est tres simple à utiliser. ce composant demande juste le chemin vers ton rpt et c est tout je pense.

Voici une fonction que j'utilise pour imprimer un report directement

Public Sub PrintReport(ByVal p_Dataset As DataSet, ByVal p_NameReport As String, ByVal p_Printer As String)
Dim DirReport As String
Dim crReportDocument As ReportDocument
Try
DirReport = Configuration.ConfigurationSettings.AppSettings("Directory Report").ToString
crReportDocument = New ReportDocument


crReportDocument.Load(DirReport & p_NameReport & ".rpt")
crReportDocument.PrintOptions.PrinterName = p_Printer
crReportDocument.SetDataSource(p_Dataset)


crReportDocument.PrintToPrinter(1, True, 0, 0)
crReportDocument.Dispose()
crReportDocument = Nothing
Catch ex As Exception
EventLog.WriteEntry("L'OREAL Fiches Statitistiques coiffure", ex.Message + " Pour l'etat :" + CStr(numEtat), EventLogEntryType.Error, 15)
End Try


End Sub
Messages postés
65
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 mars 2006

Merci c'est sympa, le seul truc c'est qu'il faut que je fasse un dataset, mais ça va se faire!

Si quelqu'un a d'autres exemples, je suis preuneuse.


Taly
Messages postés
65
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 mars 2006

Avec SQLServer oui mais j'ai une base Access. Mais ton exemple me servira sûrement plus tard dans une autre application .

En tout cas merci beaucoup de m'aider.


Taly
Messages postés
65
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 mars 2006

Rebonjour,

Après avoir parcouru plusieurs solutionsj'ai trouvé une solution qui avait l'air plus simple, mais je ne sais toujours pas comment faire.
J'ai fait mon état sous Crystal Reports version 9 et il est déjà relié à la base.
En fait il me suffirait de lui passer des informations en paramètre et je voudrais juste l'ouvrir en VB.Net dans mon application dans un nouveau formulaire.


Taly
Messages postés
9
Date d'inscription
mercredi 22 novembre 2006
Statut
Membre
Dernière intervention
4 octobre 2011

salu a tous le monde
cours pour debutant crystal report et vb.net pour crié des etat pour afficher des données extraire de sql server