Bonjour

je dévelppe une app de facturation sous VB.net et SqlServer2005 pour ma BD et j'ai la procédure d'édition de +ieurs type de facture


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub ImprimerFacture(ByVal Facture As String)
 
                Dim cryRpt As New ReportDocument 
 
                cryRpt.Load("C:\MonApplication\CR_Facturation_Avance.rpt")
 
                Dim crParameterDiscreteValue As New ParameterDiscreteValue
                Dim crParameterFieldDefinition As ParameterFieldDefinition
                Dim crParameterValues As New ParameterValues
                cryRpt.SetParameterValue("TypeFacture", "Valeur")
                crParameterDiscreteValue.Value = Facture 
                crParameterFieldDefinition = cryRpt.DataDefinition.ParameterFields.Item("NUM_FACT")
 
                crParameterValues = crParameterFieldDefinition.CurrentValues
 
                crParameterValues.Clear()
                crParameterValues.Add(crParameterDiscreteValue)
                crParameterFieldDefinition.ApplyCurrentValues(crParameterValues)
 
                FrmEtatFacturation.CrystalReportViewer1.ReportSource = cryRpt
                FrmEtatFacturation.CrystalReportViewer1.Refresh()
                FrmEtatFacturation.Show()
 
        End Sub
le problème que cette procédure fonctionne pour un type de facture exp si je lui donne le chemaine

Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cryRpt.Load("C:\MonApplication\CR_Facturation_Avance.rpt")
par contre ne fonctionne pas :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
     cryRpt.Load("C:\MonApplication\CR_Facturation_Facture.rpt")
et affiche le message :
Index non valide. (Exception de HRESULT : 0x8002000B (DISP_E_BADINDEX))
Et es ce qu'il y a une autre methode plus simple d'éditer les factures
Merci