Création d'une dataview avec objectdatasource

haikelca Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 30 avril 2008 - 20 juil. 2007 à 22:29
haikelca Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 30 avril 2008 - 21 juil. 2007 à 20:30
je veux créer  une dataview pour filtrer les données d'une table
Dans la classe d'accès aux données la méthode est la suivante:

Public Sub LoadDataP(ByRef list As Collections.Generic.List(Of ClassP))
        'Initialisation de la chaîne contenant l'instruction SQL
        strSql = "SELECT * FROM DCOP "
        'Instancier un objet Commande
        ObjetCommand = New OleDbCommand(strSql)
        'Instancier un objet Adapter
        ObjetDataAdapter = New OleDbDataAdapter(ObjetCommand)
        'initialiser l'objet Command
        ObjetCommand.Connection() = ObjetConnection
        'Avec l'aide de la propriété Fill du DataAdapter charger le DataSet
        ObjetDataAdapter.Fill(ObjetDataSet, "DCOP")
        Dim dv As DataView
        dv = New DataView(ObjetDataSet.Tables("DCOP"))
        dv.Sort = "DCONUM"        dv.RowFilter "DCONUM 1"
        'Mettre dans un Objet DataTable une table du DataSet
        'ObjetDataTable = ObjetDataSet.Tables("DCOP")
        If RowNumber < 0 Then Exit Sub
        'Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
        If RowNumber > ObjetDataTable.Rows.Count - 1 Then Exit Sub
        ' ObjetTable.Rows(Numéro de lignes).Item( Nom de colonne) donne le contenu d'un champ dans une ligne donnée

        While RowNumber <= ObjetDataTable.Rows.Count - 1
            Dim P As New ClassP

            P.Reference = ObjetDataTable.Rows(RowNumber).Item("DCOREF")
            P.Destination = ObjetDataTable.Rows(RowNumber).Item("DCODESTIN")
            P.Destinataire = ObjetDataTable.Rows(RowNumber).Item("DCODESNTA")
            P.DateEnvoi = ObjetDataTable.Rows(RowNumber).Item("DCODTENV")
         
            list.Add(P)

            RowNumber = RowNumber + 1
        End While
    End Sub
  
Ensuite j'ai lié la datagrid en spécifiant l'objctdatasource avec la classe spécifique et la methode select  avec la méthode suivante
Public Function ListP() As List(Of ClassP)
        ad.LoadDataP(ListP)
        Return ListPli
    End Function

Mais ça n'affiche pas les données filtrées.
Est qcq peut m'aider svp.
merci.

4 réponses

ManuAntibes Messages postés 491 Date d'inscription mardi 24 octobre 2000 Statut Membre Dernière intervention 18 novembre 2021 5
20 juil. 2007 à 23:10
Salut
Si tu as un dataSet dans ton projet, c'est dans le dataSet qu'il faut que tu fasses ton select .
comme ça au niveau de charger le dataset
ObjetDataAdapter.Fill_By_Date(ObjetDataSet, "DCOP", "Datedetonchoix")

MANUANTIBES [:p]
0
haikelca Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 30 avril 2008
21 juil. 2007 à 19:05
Merci pour la réponse mais le probléme que la meéthode Fill_By_Date n'est pas membre deSystem.Data.OleDb.OleDbDataAdapter
je ne peux qu'utiliser la méthode Fill(DataTable,ADODbRecordSet As object).

Alors quoi faire?
0
ManuAntibes Messages postés 491 Date d'inscription mardi 24 octobre 2000 Statut Membre Dernière intervention 18 novembre 2021 5
21 juil. 2007 à 19:15
ah ok

j'ai tenté une reponse mais j'etais pas sur
A+ bon courage

MANUANTIBES [:p]
0
haikelca Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 30 avril 2008
21 juil. 2007 à 20:30
merci bq
0
Rejoignez-nous