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

VB.NET Discussion :

comment enregistrer des données saisies dans un datagrid


Sujet :

VB.NET

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut comment enregistrer des données saisies dans un datagrid
    Salut à vous,

    alors je vous présente mon problème, je suis entrain de développer une application pour la gestion d'un portefeuille obligataire, sous vb.net, une partie de mon programme doit être présenté sous forme de lignes(obligations), et de colonnes(caractéristiques de l'obligation), j'ai créer un dataset contenant les données que j'affiche dans un datagrid, naturellement, quand l'application tourne je peux modifier comme je veux dans le datagrid, mais ce qui me pose problème c'est comment coder un bouton pour enregistrer les modifications effectués par l'utilisateur dans le datagrid, puis comment referencer chaque cellule pour pouvoir faire des calculs et des opérations avec les valeurs saisies dans ce datagrid.


    je vous remercie d'avance pour votre aide qui me serait très utile!

  2. #2
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Bonjour,
    Si tu as lié ta datatable à ton datagrid par la propriété datasource du datagrid, quand tu effectues des modifications sur les données du datagrid, elles sont répercutées automatiquement sur les données de la datatable.
    Pour faire des calcules sur ces données modifiées, il te suffit donc de parcourir la datatable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for each row as dataRow in maDatatable.rows
        if row("nomColonne") = valeur then
            ' Traitement
        endif
    next
    Pour la sauvegarde, il te faut faire un dataAdaptateur qui te servira à répercuté les changements dans la bd.
    Dans ce dataAdapteur, il te faudra régler les commandes update, insert et delete.
    Il te faut savoir que tu n'es pas obligé de faire toi même les commandes update, insert, delete car elles peuvent être faite automatiquement via OleDbCommandBuilder mais dans mon entreprise je code moi même ces commande comme suit :

    Exemple de code pour l'adaptateur :
    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
     
        Public Function getadaptater() As OleDb.OleDbDataAdapter
            getadaptater = New OleDb.OleDbDataAdapter
            getadaptater.InsertCommand = GetCommandInsert()
            getadaptater.UpdateCommand = GetCommandUpdate()
            getadaptater.DeleteCommand = GetCommandDelete()       
        End Function
     
        Public Overrides Function getCommandInsert() As OleDb.OleDbCommand
            Dim strSql As String
            strSql = "Insert into " & strBibliothequeEtFichier & "(" _
             & " AFCNI  ,  AFCDOS  ,  AFCDO2  ,  AFCDO3  ,  AFCNOM  , " _
             & ") values(" _
             & " ?,  ?,  ?,  ?,  ?)"
            Dim cmd As OleDb.OleDbCommand = connection.CreateCommand
            cmd.CommandText = strSql
     
            cmd.Parameters.Add("iAFCNI", OleDb.OleDbType.Integer, 7, "AFCNI")
            cmd.Parameters.Add("iAFCDOS", OleDb.OleDbType.VarChar, 3, "AFCDOS")
            cmd.Parameters.Add("iAFCDO2", OleDb.OleDbType.VarChar, 15, "AFCDO2")
            cmd.Parameters.Add("iAFCDO3", OleDb.OleDbType.Integer, 2, "AFCDO3")
            cmd.Parameters.Add("iAFCNOM", OleDb.OleDbType.VarChar, 40, "AFCNOM")
     
            Return cmd
     
        End Function
     
        Public Overrides Function getCommandUpdate() As OleDb.OleDbCommand
     
            Dim strSql As String
            strSql = "Update " & strBibliothequeEtFichier & " set" _
             & " AFCNI = ?,  AFCDOS = ?,  AFCDO2 = ?,  AFCDO3 = ?,  AFCNOM = ?, " _
             & " where " _
             & " AFCNI = ? and AFCDOS = ? and AFCDO2 = ? and AFCDO3 = ? and AFCNOM = ? "
     
            Dim cmd As OleDb.OleDbCommand = connection.CreateCommand
            cmd.CommandText = strSql
     
            cmd.Parameters.Add("iAFCNI", OleDb.OleDbType.Integer, 7, "AFCNI").SourceVersion = DataRowVersion.Current
            cmd.Parameters.Add("iAFCDOS", OleDb.OleDbType.VarChar, 3, "AFCDOS").SourceVersion = DataRowVersion.Current
            cmd.Parameters.Add("iAFCDO2", OleDb.OleDbType.VarChar, 15, "AFCDO2").SourceVersion = DataRowVersion.Current
            cmd.Parameters.Add("iAFCDO3", OleDb.OleDbType.Integer, 2, "AFCDO3").SourceVersion = DataRowVersion.Current
            cmd.Parameters.Add("iAFCNOM", OleDb.OleDbType.VarChar, 40, "AFCNOM").SourceVersion = DataRowVersion.Current
     
     
            'Where
            cmd.Parameters.Add("oAFCNI", OleDb.OleDbType.Integer, 7, "AFCNI").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCDOS", OleDb.OleDbType.VarChar, 3, "AFCDOS").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCDO2", OleDb.OleDbType.VarChar, 15, "AFCDO2").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCDO3", OleDb.OleDbType.Integer, 2, "AFCDO3").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCNOM", OleDb.OleDbType.VarChar, 40, "AFCNOM").SourceVersion = DataRowVersion.Original
     
     
            Return cmd
     
        End Function
        Public Overrides Function getCommandDelete() As OleDb.OleDbCommand
     
            Dim strSql As String
            strSql = "Delete from " & strBibliothequeEtFichier & " where" _
                & " AFCNI = ? and AFCDOS = ? and AFCDO2 = ? and AFCDO3 = ? and AFCNOM = ? "
     
            Dim cmd As OleDb.OleDbCommand = connection.CreateCommand
            cmd.CommandText = strSql
     
            cmd.Parameters.Add("oAFCNI", OleDb.OleDbType.Integer, 7, "AFCNI").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCDOS", OleDb.OleDbType.VarChar, 3, "AFCDOS").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCDO2", OleDb.OleDbType.VarChar, 15, "AFCDO2").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCDO3", OleDb.OleDbType.Integer, 2, "AFCDO3").SourceVersion = DataRowVersion.Original
            cmd.Parameters.Add("oAFCNOM", OleDb.OleDbType.VarChar, 40, "AFCNOM").SourceVersion = DataRowVersion.Original
     
     
            Return cmd
     
        End Function
     
        Public Sub update()
            Dim adaptater As OleDb.OleDbDataAdapter
            adaptater = getadaptater()
            adaptater.Update(table)
        End Sub
    Je te conseille de lire attentivement msdn : http://msdn.microsoft.com/fr-be/libr...er.update.aspx

    et si tu as des questions, n'hésite pas

  3. #3
    Futur Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    merci pour ton aide Sankasss!!
    j'essaie ca tout de suite, j'espère que ca marchera!!


    EDIT: Ca marche nickel, encore merci Sankass

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] comment recuperer des données saisies dans un formulaire?
    Par adel25 dans le forum Symfony
    Réponses: 6
    Dernier message: 29/08/2013, 17h19
  2. Réponses: 6
    Dernier message: 05/02/2008, 23h52
  3. Réponses: 2
    Dernier message: 14/05/2007, 10h40
  4. Comment enregistrer des données de DataGridView dans dataset
    Par hellspawn_ludo dans le forum Windows Forms
    Réponses: 4
    Dernier message: 10/05/2007, 09h23
  5. [C#] Comment enregistrer des données dans un base Mysql ?
    Par zidenne dans le forum Accès aux données
    Réponses: 3
    Dernier message: 21/09/2006, 18h51

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