IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Besoins d'aide sur un Form lors de la sauvegarde.


Sujet :

Windows Forms

  1. #1
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut Besoins d'aide sur un Form lors de la sauvegarde.
    Bonsoir,

    Je tourne en rond ...
    Cela fait 2 semaines que je bosse sur une applique ... et je n'ai que des soucis ...
    Principalement lors de la sauvegarde des données.
    J'utilise un BindingNavigator.
    Voici le code que j'utilise lors du save :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                Me.Validate()
                Me.Table_OrganisateurBindingSource.EndEdit()
                Me.Table_OrganisateurTableAdapter.Update(Me.BoobooBDDataSet.Table_Organisateur)
    Les problèmes :

    1) Lorsque je clic SAVE, souvent l'enregistrement n'est pas enregistré.
    Sans même recevoir une exception !
    Est ce que le code plus haute est correct et suffisant ?

    2) Parfois, je reçois une exception de quoi qu'un champs est NULL, donc, j'ai mis des conditions pour prévenir l'utilisateur qu'il ne peut sauver sans avoir au préalable remplis les champs concernés.

    3) Le BUG le plus ennuyant, c'est que parfois le FOCUS reste bloqué sur une combobox. et je ne sais plus naviguer librement entre les enregistrements ou changer le focus.
    [RESOLU TEMPORAIREMENT], Voir post : http://www.developpez.net/forums/sho...d.php?t=476505

    4) Les combobox sur le Form sont remplies avec des valeurs provenant d'autres Tables. J'utilise alors la fonction "Use Data Bound Items" ...
    Exemple : une combo qui contient des Pays.

    DataSource : TablePaysBindingSource
    Display Member : Nom
    Display Value : ID

    5) J'ai également le soucis qu'un enregistrement fraîchement crée à tj un ID = -1 ou -2 .. etc..
    Une fois cliqué sur SAVE, j'ai besoins d'obtenir le nouvel ID.
    Donc, je dois recharger les données, du coup, je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Table_OrganisateurTableAdapter.Fill(Me.BoobooBDDataSet.Table_Organisateur)
    Mais alors, l'enregistrement courant n'est plus le dernier ...

    PQ est ce que l'ID n'est pas Attribué directement ?


    Avez vous une idée ?
    Est-ce qu'il existe un tutorial expliquant la conception de formulaire lié à une BD access ?
    Car VB 2008 Express, c'est beau .. mais tout ce code généré ouvre la porte à des dizaines de bug ...

    Enfin, je le vois comme ça


    Merci

  2. #2
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut Si quelqu'un peut m'aider sur mes problèmes de sauvegarde .. MERCI !
    Bonjour à tous,

    Je sais que je viens peut être avec 36 questions en même temps ..
    Aussi, j'aimerais vraiment trouver quelqu'un qui pourrait tester mon projet 5 minutes .. Et me dire ce qu'il en pense ?
    En tout cas, de me guider vis-a vis des problèmes que je rencontre ..
    Ce serait vraiment COOL !!!!

    D'avance Merci

    Voici le lien de la source et de la BD test. (Source VB2008 Express et Access 2003)

    http://www.torticolis.be/shared/test.rar

  3. #3
    Membre expérimenté

    Homme Profil pro
    kiné passionné de dev
    Inscrit en
    Mars 2006
    Messages
    1 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : kiné passionné de dev

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 570
    Points : 1 738
    Points
    1 738
    Billets dans le blog
    1
    Par défaut
    Tu as pensé à faire un debogage point par point, pour pouvoir controler les valeurs etc...?

  4. #4
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par Poulain Voir le message
    Tu as pensé à faire un debogage point par point, pour pouvoir controler les valeurs etc...?
    Clairement :

    1) Je click sur "+" sur le BindingNavigator
    2) Un nouvel enregistrement 'ID=-1' est créé ..
    3) J'encode uniquement le nom
    4) Je click sur SAVE qui exécute le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
            If (NomTextBox.Text.Length = 0) Then
                MsgBox("Le champs Nom ne peut pas être vide !")
                Exit Sub
            End If
            Try
                ' Table Organisateur
                Me.Validate()
                Me.Table_OrganisateurBindingSource.EndEdit()
                Me.Table_OrganisateurTableAdapter.Update(Me.BoobooBDDataSet.Table_Organisateur)
                'Me.Table_OrganisateurTableAdapter.GetData()
     
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
    Les 3 lignes Validate, EndEdit et Update sont exécutées normalement (sans exception).
    Pourtant, une fois que je quitte l'application, et que je la ré-ouvre, l'enregistrement n'est pas là, donc, n'as pas été sauvegardé.

    Ça, c'est mon problème N*1.

  5. #5
    Membre expérimenté

    Homme Profil pro
    kiné passionné de dev
    Inscrit en
    Mars 2006
    Messages
    1 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : kiné passionné de dev

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 570
    Points : 1 738
    Points
    1 738
    Billets dans le blog
    1
    Par défaut
    Oui, mais en meme temps, ton code, là il ne fait que updater le dataset...(mais je ne sais pas si le dataset va lui udater la BDD).

  6. #6
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par Poulain Voir le message
    Oui, mais en meme temps, ton code, là il ne fait que updater le dataset...(mais je ne sais pas si le dataset va lui udater la BDD).
    Il update la BD sur des enregistrements déjà présent dans la BD (encodé dans la BD pour tester) , .. donc pq pas sur un nouvel enregistrement ?

  7. #7
    Membre expérimenté

    Homme Profil pro
    kiné passionné de dev
    Inscrit en
    Mars 2006
    Messages
    1 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : kiné passionné de dev

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 570
    Points : 1 738
    Points
    1 738
    Billets dans le blog
    1
    Par défaut
    Tu n'as pas un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Table_OrganisateurTableAdapter.insert(Me.BoobooBDDataSet.Table_Organisateur)
    Car ça m'étonne qu'il n'ajoute pas les ligne que tu ajoutes...

  8. #8
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par Poulain Voir le message
    Tu n'as pas un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Table_OrganisateurTableAdapter.insert(Me.BoobooBDDataSet.Table_Organisateur)
    Car ça m'étonne qu'il n'ajoute pas les ligne que tu ajoutes...
    Merci de te pencher sur mon problème !

    En fait non, nulle part, je n'utilise la méthode "insert".

    Car lors du click sur SAVE (du BindingNavigator), j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Table_OrganisateurTableAdapter.Update(Me.BoobooBDDataSet.Table_Organisateur)
    Comme cité plus haut.

    Donc, j'imagine que cela met à jour les modifications vers le DataSet.

    Ma requête UPDATE est correct, vu que l'Update fonctionne pour les enregistrements déjà présent ?!

    Maintenant, je développe sous VB 2008 Express, et je ne sais pas ce que fait exactement le click sur le "+" du contrôle BindingNavigator. (je l'avoue)

  9. #9
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut
    Bonsoir,

    Concernant mes problèmes sur mon Application, le problème Combobox est +/- résolu, par contre... tj impossible de sauver les données d'un enregistrement fraichement ajouté.

    Pourtant, la modification d'un enregistrement existant fonctionne, mais pas pour un nouveau.

    ??

  10. #10
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    Citation Envoyé par Poulain Voir le message
    Oui, mais en meme temps, ton code, là il ne fait que updater le dataset...(mais je ne sais pas si le dataset va lui udater la BDD).
    C'est faux.

    Le update du dataadapter entraîne la MAJ de la BDD, que ce soit des insert, delete ou update, à partir du moment ou on a définit le commandbuilder.

    Faut donc creuser du côté du commandbuilder je pense. Il doit trainer quelque part dans le code et ça serai interessant de logger sa commande insert pour voir.

    Cdt.

  11. #11
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par olsimare Voir le message
    Bonjour.



    C'est faux.

    Le update du dataadapter entraîne la MAJ de la BDD, que ce soit des insert, delete ou update, à partir du moment ou on a définit le commandbuilder.

    Faut donc creuser du côté du commandbuilder je pense. Il doit trainer quelque part dans le code et ça serai interessant de logger sa commande insert pour voir.

    Cdt.
    Bonjour

    Effectivement, cela entraîne toujours la MAJ...
    Ici, je viens de faire un TEST, j'ai recréé de toute part le formulaire ...
    et petit à petit j'y ai ajouté mes contrôles, etc...
    Tout fonctionnait à nouveau normalement ... sauvegarde d'un nouvel enregistrement -> OK

    Et puis, sans vraiment savoir PQ, ... le problème vient de réapparaître !
    Plus moyen de sauvegarder les enregistrements ajoutés

    C'est vraiment pour devenir FOU ...
    Je ne vois pas d'où vient le problème ...
    Aucune exception n'est lancée.

    Voici le code du bouton SAVE :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
            Try
                Me.Validate()
                Me.Table_OrganisateurBindingSource.EndEdit()
                Me.Table_OrganisateurTableAdapter.Update(Me.BoobooBDDataSet.Table_Organisateur)
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try

    Voici le code COMPLET du Form ...
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
     
    Public Class FormOrganisation
     
        Private Sub Table_OrganisateurBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Table_OrganisateurBindingNavigatorSaveItem.Click
            Try
                Me.Validate()
                Me.Table_OrganisateurBindingSource.EndEdit()
                'Me.TableAdapterManager.UpdateAll(Me.BoobooBDDataSet)
                Me.Table_OrganisateurTableAdapter.Update(Me.BoobooBDDataSet.Table_Organisateur)
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
     
            'Me.TableAdapterManager.UpdateAll(Me.BoobooBDDataSet)
     
        End Sub
     
        Private Sub FormOrganisation_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.Table_ProvinceTableAdapter.Fill(Me.BoobooBDDataSet.Table_Province)
            'TODO: This line of code loads data into the 'BoobooBDDataSet.Table_Pays' table. You can move, or remove it, as needed.
            Me.Table_PaysTableAdapter.Fill(Me.BoobooBDDataSet.Table_Pays)
            'TODO: This line of code loads data into the 'BoobooBDDataSet.Table_Mois' table. You can move, or remove it, as needed.
            Me.Table_MoisTableAdapter.Fill(Me.BoobooBDDataSet.Table_Mois)
            'TODO: This line of code loads data into the 'BoobooBDDataSet.Table_Organisateur' table. You can move, or remove it, as needed.
            Me.Table_OrganisateurTableAdapter.Fill(Me.BoobooBDDataSet.Table_Organisateur)
     
            ' update liste de styles
            changeStyles()
     
            ' update liste des groupes
            changeGroupes()
     
            'update combo pays
            changePays()
            changeProvinces()
        End Sub
     
        'Mise à jour du pays dans la combo
        Private Sub changePays()
            Dim groupRow() As Data.DataRow
            Dim currentID As Integer
            Dim currentRowView As Data.DataRowView
            currentRowView = Me.Table_OrganisateurBindingSource.Current
            currentID = currentRowView.Row.Item("ID")
            If currentID > 0 Then
                groupRow = Me.BoobooBDDataSet.Table_Organisateur.Select("ID =" + currentID.ToString())
                If Not IsDBNull(groupRow(0)("Pays")) Then
                    PaysComboBox.SelectedValue = groupRow(0)("Pays")
                End If
            Else
                PaysComboBox.SelectedIndex = -1
            End If
        End Sub
     
        Public Sub changeStyles()
     
            Dim currentRowView As Data.DataRowView
            currentRowView = Me.Table_OrganisateurBindingSource.Current
     
            ' First show the index and check state of all selected items. 
            StyleTextBox.Text = ""
            Dim first As Boolean = True
            Dim items As String()
            Dim paramRow() As Data.DataRow
            items = currentRowView.Row.Item("Style").ToString().Split(";")
     
            For Each item As String In items
                If Not (first) Then
                    StyleTextBox.Text += ";"
                End If
     
                If Not (item = Nothing) Then
                    paramRow = Me.BoobooBDDataSet.Table_Info_Style.Select("ID = " + item)
                    If paramRow.Length() > 0 Then
                        StyleTextBox.Text += paramRow(0)("Style").ToString()
                    End If
                Else
                    Return
                End If
     
                first = False
            Next
        End Sub
     
        Public Sub changeGroupes()
     
            Dim currentRowView As Data.DataRowView
            currentRowView = Me.Table_OrganisateurBindingSource.Current
     
            ' First show the index and check state of all selected items. 
            Groupe_PréféréTextBox.Text = ""
            Dim first As Boolean = True
            Dim items As String()
            Dim paramRow() As Data.DataRow
            items = currentRowView.Row.Item("Groupe Préféré").ToString().Split(";")
     
            For Each item As String In items
                If Not (first) Then
                    Groupe_PréféréTextBox.Text += ";"
                End If
     
                If Not (item = Nothing) Then
                    paramRow = Me.BoobooBDDataSet.Table_Groupe.Select("ID = " + item)
                    If paramRow.Length() > 0 Then
                        Groupe_PréféréTextBox.Text += paramRow(0)("Nom").ToString()
                    End If
                Else
                    Return
                End If
     
                first = False
            Next
        End Sub
     
        Public Sub changeProvinces()
            'If Me.Table_OrganisateurBindingSource.Current.Row.Item("ID") < 0 Then
            '    ProvinceComboBox.Items.Clear()
            '    Exit Sub
            'End If
            ProvinceComboBox.Items.Clear()
            ' fill up province/dep
            If (Me.Table_OrganisateurBindingSource.Current IsNot Nothing) And (PaysComboBox.SelectedItem() IsNot Nothing) Then
                'Me.Table_OrganisateurBindingSource.Current.Row.Item("Pays") = PaysComboBox.SelectedValue()
                Dim index As Integer
                Dim paramRow() As Data.DataRow
                Try
                    paramRow = Me.BoobooBDDataSet.Table_Province.Select("ID_Pays ='" + PaysComboBox.SelectedValue().ToString() + "'")
                    For Each element In paramRow
                        Dim item As ComboItem = New ComboItem(element.Item("ID"), element.Item("Nom"))
                        index = ProvinceComboBox.Items.Add(item)
                        If Not IsDBNull(Table_OrganisateurBindingSource.Current.Row.Item("Province")) Then
                            If element.Item("ID") = Table_OrganisateurBindingSource.Current.Row.Item("Province") Then
                                ProvinceComboBox.SelectedIndex = index
                            End If
                        End If
                    Next
                Catch ex As Exception
                    MsgBox(ex.Message)
                End Try
            End If
        End Sub
     
     
        Private Sub Mois_ActivitéComboBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Mois_ActiviteComboBox.SelectedIndexChanged
            If (Me.Table_OrganisateurBindingSource.Current IsNot Nothing) And (Mois_ActiviteComboBox.SelectedValue() IsNot Nothing) Then
                Me.Table_OrganisateurBindingSource.Current.Row.Item("Mois Activité") = Mois_ActiviteComboBox.SelectedValue()
                Dim mois_activ As Integer = Mois_ActiviteComboBox.SelectedValue()
                Dim debut As Integer
                debut = ((mois_activ - My.Settings.MoisAvantProg) + 12) Mod 12
                If debut = 0 Then
                    debut = 12
                End If
     
                If (Debut_ProgrammationComboBox.Items.Count > 0) Then
                    Debut_ProgrammationComboBox.SelectedValue = debut
                End If
            End If
        End Sub
     
        Private Sub Début_ProgrammationComboBox_SelectedValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Debut_ProgrammationComboBox.SelectedValueChanged
            If (Me.Table_OrganisateurBindingSource.Current IsNot Nothing) And (Debut_ProgrammationComboBox.SelectedValue() IsNot Nothing) Then
                Me.Table_OrganisateurBindingSource.Current.Row.Item("Début Programmation") = Debut_ProgrammationComboBox.SelectedValue()
            End If
        End Sub
     
        Private Sub PaysComboBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PaysComboBox.SelectedIndexChanged
            If PaysComboBox.SelectedItem() IsNot Nothing Then
                Me.Table_OrganisateurBindingSource.Current.Row.Item("Pays") = PaysComboBox.SelectedValue()
                changeProvinces()
            End If
        End Sub
     
        Private Sub ProvinceComboBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProvinceComboBox.SelectedIndexChanged
            If ProvinceComboBox.SelectedItem() IsNot Nothing Then
                Dim item As ComboItem = ProvinceComboBox.SelectedItem
                Me.Table_OrganisateurBindingSource.Current.Row.Item("Province") = item.Value()
            End If
        End Sub
     
        Private Sub Table_OrganisateurBindingSource_CurrentChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Table_OrganisateurBindingSource.CurrentChanged
            ' Filtrer le data GridView
            Dim currentRowView As Data.DataRowView
            Dim currentID As Integer
            If (Me.Table_OrganisateurBindingSource.Current IsNot Nothing) Then
                currentRowView = Me.Table_OrganisateurBindingSource.Current
                currentID = currentRowView.Row.Item("ID")
     
                'Select Case TabControlInfos.SelectedTab.Name
                '    Case TabPageContacts.Name
                '        'applique le filtre
                '        Me.Table_Organisateur_ContactBindingSource.Filter = " ID = '" + currentID.ToString + "' "
                '        'charge les paramètres pour les colonnes
                '        Utilities.loadColumnSettings(Table_Organisateur_ContactDataGridView, My.Settings.DGVOrganisateurContact)
                '        'Case TabPageAlbum.Projet
                '        '    'applique le filtre
                '        '    Requete =>>Me.Table_Organisateur_AlbumBindingSource.Filter = " ID = '" + currentID.ToString + "' "
                '        '    'charge les paramètres pour les colonnes
                '        '    loadColumnSettings(DataGridViewProjet, My.Settings.DGVOrganisateurProjet)
                '    Case TabPageLink.Name
                '        'applique le filtre
                '        Me.Table_Organisateur_LinkBindingSource.Filter = " ID = '" + currentID.ToString + "' "
                '        'charge les paramètres pour les colonnes
                '        Utilities.loadColumnSettings(Table_Organisateur_LinkDataGridView, My.Settings.DGVOrganisateurLink)
                '    Case TabPageData.Name
                '        'applique le filtre
                '        Me.Table_Organisateur_DataBindingSource.Filter = " ID = '" + currentID.ToString + "' "
                '        'charge les paramètres pour les colonnes
                '        Utilities.loadColumnSettings(Table_Organisateur_DataDataGridView, My.Settings.DGVOrganisateurData)
                'End Select
     
                'changer l'image
                'updateImageGroupe(currentID)
     
                ' Changer les styles
                changeStyles()
     
                ' Changer les groupes
                changeGroupes()
     
                ' couleur des lignes
                'updateColorLines(Table_Groupe_ContactDataGridView)
     
                ' changer pays
                changePays()
                changeProvinces()
     
            End If
        End Sub
    End Class

  12. #12
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut Un bug dans VB 2008 Express ???
    Oiez, Oiez braves gens.

    Je viens de mettre tout mon code en commentaire ...

    Sauve le code du SAVE et le code du LOAD (où il y a les FILL).
    Et pourtant le problème persistait ..

    Voici le code que j'ai dans le LOAD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                Me.Table_ProvinceTableAdapter.Fill(Me.BoobooBDDataSet.Table_Province)
                Me.Table_PaysTableAdapter.Fill(Me.BoobooBDDataSet.Table_Pays)
                Me.Table_MoisTableAdapter.Fill(Me.BoobooBDDataSet.Table_Mois)
                Me.Table_OrganisateurTableAdapter.Fill(Me.BoobooBDDataSet.Table_Organisateur)
    Cad, les FILL pour les Tables que j'utilise pour remplir mes ComboBoxs.

    ET quand je mets en commentaire les 3 premiers FILLs, et que je laisse uniquement celui en rapport avec les données du Form => Le problème disparaît, et si j'oublie de remplir un champs avec une donnée obligatoire, une exception est bel et bien lancée !

    ?????????

    Donc, cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Table_MoisTableAdapter.Fill(Me.BoobooBDDataSet.Table_Mois)
    Pose problème !!!
    Pourtant, c'est l'IDE qui me la générée après avoir Bindé une Combobox avec la Table_Mois ... et puis, je n'y ai plus touché ...

    Par contre, il faut savoir que j'ai 2 Combobox Bindée à la Table_Mois !
    Est ce que le Bug viendrait de là ???

    En tout cas, ce qui est incroyable .. C'est qu'aucune exception ne me prévient du problème ...
    (et pourtant tous les FILL ou code du SAVE sont dans des blocs Try-Catch. !

    BUG ??

  13. #13
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    Ca doit venir du dataadapter.fill sur une datatable car dans l'aide :
    La surcharge de Fill qui prend DataTable comme paramètre n'obtient que le premier résultat. Utilisez une surcharge de Fill qui prend DataSet comme paramètre pour obtenir plusieurs résultats.

    Essaye avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    adapter.Fill(dataset, nomdelatable)
    Cdt.

  14. #14
    Membre du Club Avatar de dsolheid
    Inscrit en
    Décembre 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2007
    Messages : 141
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par olsimare Voir le message
    Bonjour.

    Ça doit venir du dataadapter.fill sur une datatable car dans l'aide :
    La surcharge de Fill qui prend DataTable comme paramètre n'obtient que le premier résultat. Utilisez une surcharge de Fill qui prend DataSet comme paramètre pour obtenir plusieurs résultats.

    Essaye avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    adapter.Fill(dataset, nomdelatable)
    Cdt.

    => Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

    Elle est bien bonne celle là

    En fait, dans mon application, je n'ai qu'un seul DataSet .. donc, je ne vois pas pq je devrais le spécifier ??
    Ou bien je suis passé à côté de quelque chose ?

    Clairement, j'ai contourné le problème, en remplissant à la mano toutes combo devant contenir des infos provenant d'une autre Table ..

    J'ai callé 2 semaines sur ces problèmes .. je ne pouvais plus chercher ..

    Je suis à la bourrrrr

    En tout cas, merci pour l'aide !!!

Discussions similaires

  1. [Débutant] Besoins d'aide sur une form rechercher
    Par dubdub87 dans le forum VB.NET
    Réponses: 1
    Dernier message: 16/02/2014, 09h48
  2. Besoin d'aide sur la taille des forms
    Par bulmish dans le forum IHM
    Réponses: 2
    Dernier message: 11/08/2008, 18h18
  3. besoin d'aide sur les indemnités lors d'une demission
    Par sandrine76 dans le forum Contrat
    Réponses: 4
    Dernier message: 01/08/2007, 14h44
  4. [intermedia] besoin d'aide sur script PL/SQL
    Par SteelBox dans le forum PL/SQL
    Réponses: 8
    Dernier message: 05/01/2004, 19h59
  5. [CR] besoin d'aide sur les formules
    Par GuillaumeDSA dans le forum Formules
    Réponses: 4
    Dernier message: 10/07/2003, 12h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo