Bonsoir chers amis
Je veux afficher le contenu d'une table au niveau d'un état.Pour cela,j'ai utilisé une boucle for partant de 0 à val-1 où val est le nombre total d'enregistrements de la table. Le code est le suivant:
Public Sub Etat_Client()
Dim ClasseGenerale As New clConnexion
Dim dst As New DataSet2
Dim cl As New clConnexion
Dim MaConn As New OdbcConnection
MaConn = cl.oConnexion
Dim MonDataRow As DataRow
Dim MondataSet As New DataSet
MaConn.Open()
Dim Mondataadapter As OdbcDataAdapter
'Dim Requete As String = "select code_cli,nom_cli,prenom_cli,code_v,date_v,montant_v,montant_cli,credit_restant from T_etat_client Where code_cli='" & Me.txtcode.Text & "' And nom_cli='" & Me.txtnom.Text & "' And prenom_cli='" & Me.txtprenom.Text & "' And date_v between #" & ClasseGenerale.fctMaDate(CDate(FormatDateTime(Me.dtpDateDebut.Value, DateFormat.ShortDate))) & "# And #" & ClasseGenerale.fctMaDate(CDate(FormatDateTime(Me.dtpDateFin.Value, DateFormat.ShortDate))) & "# order by montant_cli ASC"
'Dim Requete As String = "select code_cli,nom_cli,prenom_cli,code_v,date_v,montant_v,montant_cli,credit_restant from T_etat_client " 'Where code_cli='" & Me.txtcode.Text & "' And nom_cli='" & Me.txtnom.Text & "' And prenom_cli='" & Me.txtprenom.Text & "' " 'And date_v between #" & ClasseGenerale.fctMaDate(CDate(FormatDateTime(Me.dtpDateDebut.Value, DateFormat.ShortDate))) & "# And #" & ClasseGenerale.fctMaDate(CDate(FormatDateTime(Me.dtpDateFin.Value, DateFormat.ShortDate))) & "# order by montant_cli ASC"
Dim Requete As String = "select distinct * from T_etat_client order by montant_cli ASC"
Mondataadapter = New OdbcDataAdapter(Requete, MaConn)
Mondataadapter.Fill(MondataSet)
Dim val As Integer = MondataSet.Tables(0).Rows.Count
dst.Clear()
Dim i As Integer
For i = 0 To val - 1
MonDataRow = dst.T_etat_client.NewRow
MonDataRow("code_cli") = MondataSet.Tables(0).Rows(i).Item("code_cli")
MonDataRow("nom_cli") = MondataSet.Tables(0).Rows(i).Item("nom_cli")
MonDataRow("prenom_cli") = MondataSet.Tables(0).Rows(i).Item("prenom_cli")
MonDataRow("code_v") = MondataSet.Tables(0).Rows(i).Item("code_v")
MonDataRow("date_v") = MondataSet.Tables(0).Rows(i).Item("date_v")
MonDataRow("montant_v") = MondataSet.Tables(0).Rows(i).Item("montant_v")
MonDataRow("montant_cli") = MondataSet.Tables(0).Rows(i).Item("montant_cli")
MonDataRow("credit_restant") = MondataSet.Tables(0).Rows(i).Item("credit_restant")
dst.T_etat_client.Rows.Add(MonDataRow)
Next
Dim rpt As New CrtEtaCli
rpt.SetDataSource(dst)
Me.CrvEtaCli.ReportSource = rpt
MaConn.Close()
MaConn.Dispose()
End Sub
Le problème:
L'état n'affiche pas tous les enregistrements.S'il y'en a 2, il affiche un seul.
J'aimerai vraiment que vous m'aidiez à résoudre ce problème car il s'agit d'un projet très urgent.Merci de votre compréhension.
Partager