narialca
Messages postés6Date d'inscriptionvendredi 6 février 2004StatutMembreDernière intervention18 août 2005
-
22 févr. 2005 à 15:59
metalluric
Messages postés5Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention19 janvier 2006
-
26 août 2005 à 15:19
------Bonjour a tous
Je travaille avec VB NET application windows + un etat crystal report prenant des paramètres de ma winform.
Lorsque je génère mon rapport dans mon application VB NET les paramètres me sont demandés alors qu'il me semblait faire ce qui falait pour passer les valeurs à mon rapport.
Quelqu'un a t-il une idée sur mon erreur
Merci a vous de passer un peu de temps sur mon problème
Voici ce que j'ai fait dans le code :
Private Sub Rapport_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rapport.Click
Dim paramFields As New ParameterFields ' tableau des paramètres
CrystalReportViewer1.ReportSource = "..\ETAT.RPT"
' parametre date
paramFields = AddParameter("@datehr1", dat1.Text, paramFields)
CrystalReportViewer1.ParameterFieldInfo = paramFields
End Sub
Public Function AddParameter(ByVal paramName As String, _
ByVal paramValue As String, ByVal paramFields As ParameterFields) As ParameterFields
Dim paramField As New ParameterField
Dim paramDiscreteValue As New ParameterDiscreteValue
Dim paramValues As New ParameterValues
' Définir le nom du paramètre à modifier.
paramField.ParameterFieldName = paramName
' Définir une valeur pour le paramètre.
paramDiscreteValue.Value = paramValue
paramValues.Add(paramDiscreteValue)
paramField.CurrentValues = paramValues
' Ajouter le paramètre à la collection ParameterFields.
paramFields.Add(paramField)
Return paramFields
End Function
narialca
Messages postés6Date d'inscriptionvendredi 6 février 2004StatutMembreDernière intervention18 août 2005 22 févr. 2005 à 17:37
---Merci pour ton intérêt
Il me demande les paramètres que j'ai définit dans mon crystal report, alors que je suis censé les passer lors de la génération du rapport
narialca
Messages postés6Date d'inscriptionvendredi 6 février 2004StatutMembreDernière intervention18 août 2005 18 août 2005 à 16:05
Ca me fais plaisir de partager une solution
---je ne me souviens plus exactement ou etait mon probleme, mais je te fais suivre mon code source
Bonne lecture en esperant que ceci t'aidera !!!!!
Nadine
Private
Sub Rapport_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Rapport.Click
' tableau des paramètres pour le rapport
Dim paramFields
As
New ParameterFields
Dim chauffeur
As
String
Dim dist
As
String
Dim paramField
As
New ParameterField
' preparation des parametres du rapport puis ajout des paramètres a la collection paramFields (tableau des paramètres)Try
CrystalReportViewer1.ReportSource = "C:\CRYSTAL\ETAT.RPT"
Catch ex
As Exception
MessageBox.Show("erreur reportSource etat.rpt " & ex.Message)
End
Try
'date début
paramFields = AddParameter("@datehr1", dat1.Text, paramFields)
' date fin
paramFields = AddParameter("@datehr2", dat2.Text, paramFields)
Catch ex
As Exception
MessageBox.Show("erreur parametersFieldinfo " & ex.Message)
End
Try
CrystalReportViewer1.Refresh()
Catch engEx
As LogOnException
MessageBox.Show _("Incorrect Logon Parameters. Check your user name and password.")
Catch engEx
As DataSourceException
MessageBox.Show _("An error has occurred while connecting to the database.")
Catch engEx
As EngineException
MessageBox.Show(engEx.Message)
End
Try
End
Sub
Public
Function AddParameter(
ByVal paramName
As
String, _
ByVal paramValue
As
String,
ByVal paramFields
As ParameterFields)
As ParameterFields
Dim paramField
As
New ParameterField
Dim paramDiscreteValue
As
New ParameterDiscreteValue
Dim paramValues
As
New ParameterValues
' Définir le nom du paramètre à modifier.
paramField.ParameterFieldName = paramName
' Définir une valeur pour le paramètre.
paramDiscreteValue.Value = paramValue
paramValues.Add(paramDiscreteValue)
paramField.CurrentValues = paramValues
' Ajouter le paramètre à la collection ParameterFields.
paramFields.Add(paramField)
Return paramFields
End
Function
Private
Sub CrystalReportViewer1_HandleException(
ByVal source
As
Object,
ByVal e
As CrystalDecisions.Windows.Forms.ExceptionEventArgs)
Handles CrystalReportViewer1.HandleException
If
TypeOf (e.Exception)
Is EngineException
Then
Dim engEx
As EngineException
engEx = e.Exception
If engEx.ErrorID = EngineExceptionErrorID.DataSourceError
Then
e.Handled =
True
MessageBox.Show _("An error has occurred while connecting to the database.")
ElseIf engEx.ErrorID = EngineExceptionErrorID.LogOnFailed
Then e.Handled =
True
MessageBox.Show _("Incorrect Logon Parameters. Check your user name and password."
metalluric
Messages postés5Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention19 janvier 2006 26 août 2005 à 15:19
Ok merci (un peu en retard mais bon!) ;-). J'ai trouvé ce que je voulais en gros avec l'aide msdn livrée sous visual studio 2005 bêta 2. Il y a pas mal de tutoriaux bien faits dont des tutoriaux sur crystal report et VB!
Je vais néanmoins me servir de 2-3 petits trucs dans ton code donc ce n'était pas vain!
Me voilà avec une solution quasi complète (extraction de données et traitement de ces données sous Sql Server 2000, interface client et reporting automatique :-) :-) :-) ) !