Affichage simultanée des données

Bonjour l'Ami

Je tente, une fois les données sont validées, de les faire apparaître sur la DataGrid dans le même instant.

le code de l'enregistrement dans la base des données :

RS.AddNew

If not TNom ="" then RS![NOM]=TNom
if not TPrenom="" then rs![PRENOM]=TPrenom

RS.Update


Merci d'avance

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    il faut relancer la mise a jour du connecteur adodc1 (si vous avez toujour les memes nom, autrement adaptez a votre nom de controle)

    ajoutez apres RS.Update

    SQLs= "la requete qui vous convient"
    Adodc1.RecordSource = SQLs
    Adodc1.Refresh
    1. Bonjour l'ami,

      J'ai essayer avec
      SQLs="select * from Repertoire" 
      
      adodc1.RecordSource=SQLs 
      adodc1.Refresh 


      l'affichage sur le tableau ( datagrid ) ne se fait qu'après la saisie d'un autre contact. Je ne comprends pas.
      Ce que je cherche est l'affichage automatique, une fois la commande AJOUTER est validée.

      Merci pour votre aide
      1. Bonjour,

        une fois la commande AJOUTER est validée. Votre saisie est validee avec quoi
        1. Bonjour l'Ami,

          Je vous relate ici le code complet de la validation de la commande Ajout :

          Private Sub cmdAjouter_Click()
          
          SQLs = "select * from ReperTel where GSM='" & TGsm & "'"
          
          If RS.State = adStateOpen Then RS.Close
          RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic
          
          If RS.EOF Then
          GoTo OkAddNew
          
          Else
          
          MsgBox "Attention ! Ce numéro existe déjà", vbCritical + vbMsgBoxRight, "Erreur de saisie"
          
          
          Exit Sub
          End If
          
          OkAddNew:
          
          '-----------------------------------------------------
          
          
          
          Dim Reponse As String
          
          Reponse = MsgBox("Etes vous sûr de vouloir enregistrer ce nouveau contact ?", vbCritical + vbQuestion + vbYesNo, "Alors ! Que décidez vous ?")
          
          If Reponse = vbYes Then
          
          
          RS.AddNew
          
          If Not TNom = "" Then RS![NOM] = TNom
          If Not TPrenom = "" Then RS![PRENOM] = TPrenom
          If Not TGsm = "" Then RS![GSM] = TGsm
          If Not TEmail = "" Then RS![EMAIL] = TEmail
          
          RS.Update
          
          SQLs="select * from ReperTel"
          
          adodc1.ReordSource = SQLs
          Adodc1.Refresh
          
          End If
          
          TNom = ""
          TPrenom = ""
          TGsm = ""
          TEmail = ""
          
          TNom.SetFocus
          
          End If
          End Sub
          End Sub


          Même avec la requette et le rafraichaissement de la liaison adodc, la nouvelle saisie n'apparait sur le tableau qu'après l'ajout d'une autre saisie.

          c'est dire pour faire appraitre n, il faut n+1

          A plus
          1. Bonjour,

            RS.Update
            RS.Close

            SQLs="select * from ReperTel"
            RS.Open SQLs, DB, adOpenStatic

            Adodc1.RecordSource = SQLs
            Adodc1.Refresh
            RS.Close
            1. Bonjour l'Ami,

              Cette fois est la bonne. Merci pour votre précieuse aide.
              Voilà ce que j'ai écris, bien sûr en me basant sur vos suggestions.

              RS.Update
              RS.Close
              
              
              SQLs = "select * from ReperTel " & " order by NOM asc"
              RS.Open SQLs, DB, adOpenStatic
              
              
              Adodc1.RecordSource = SQLs
              Adodc1.Refresh
              
              lblCpteur.Caption = "Le nombre des enregistrements : " & "    " & Adodc1.Recordset.RecordCount & "    " & "Enregistrés"
              Adodc1.Refresh
              RS.Close
              
              1. Bonjour,

                Je vois que monsieur est assidu et ne lache pas le "morceau". Bien

                Bonne suite