Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1045 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  BeforeUpdate sur un DataGrid

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

BeforeUpdate sur un DataGrid

n°172727
kinanveu
Posté le 08-07-2002 à 10:31:21  profilanswer
 

Salut !
 
Je programme une application en VB6 avec une bdd Access
J'utilise un DataGrid pour entrer des données dans une de mes tables.
Je suis dans la phase de verification de mes données.
Si une ligne n'est pas complete (au moins une case est vide), et que l'utilisateur clique sur une autre ligne, ca provoque une erreur pas belle du tout, parce que la methode Update se declenche.
Du coup, j'ai utilisé l'evenement BeforeUpdate, je teste si les champs sont bien remplis. Si oui, ok pour Update, sinon, je mets la variable Cancel a True.
 
Mais ce qui m'embete c'est que ca affiche un Msgbox : "L'action a été annulée". Mais ce n'est pas moi qui ai programmé ce msgBox. Et je trouves pas comment l'enlever.
 
Quelqu'un a une idée ???
Merci d'avance

mood
Publicité
Posté le 08-07-2002 à 10:31:21  profilanswer
 

n°172731
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 08-07-2002 à 10:35:11  profilanswer
 

Pourquoi mettre la variable Cancel à True ?
Si une ligne n'est pas complète, il te suffit de coder une Box demandant à l'utilisateur de saisir tous les champs avant de passer à la ligne suivante

n°172736
kinanveu
Posté le 08-07-2002 à 10:39:40  profilanswer
 

Harkonnen a écrit a écrit :

Pourquoi mettre la variable Cancel à True ?
Si une ligne n'est pas complète, il te suffit de coder une Box demandant à l'utilisateur de saisir tous les champs avant de passer à la ligne suivante




 
Si je ne mets pas Cancel a True, le Update va s'executer, et ca me met #ERROR dans toutes les cases de la derniere ligne.

n°172742
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 08-07-2002 à 10:45:50  profilanswer
 

à quoi ressemble ton code ?
 
moi j'ai testé sur VB7 ce code, et je n'ai pas le message que tu décris :

Code :
  1. Private Sub DataGrid1_BeforeUpdate (Cancel As Integer)
  2.    If DataGrid1.Columns(1).Value = "" Then
  3.       MsgBox "Vous devez remplir la 1ere colonne"
  4.       Cancel = True
  5.    End If
  6. End Sub

n°172743
jeanphi80
Posté le 08-07-2002 à 10:47:15  profilanswer
 

kinanveu a écrit a écrit :

Salut !
 
Je programme une application en VB6 avec une bdd Access
J'utilise un DataGrid pour entrer des données dans une de mes tables.
Je suis dans la phase de verification de mes données.
Si une ligne n'est pas complete (au moins une case est vide), et que l'utilisateur clique sur une autre ligne, ca provoque une erreur pas belle du tout, parce que la methode Update se declenche.
Du coup, j'ai utilisé l'evenement BeforeUpdate, je teste si les champs sont bien remplis. Si oui, ok pour Update, sinon, je mets la variable Cancel a True.
 
Mais ce qui m'embete c'est que ca affiche un Msgbox : "L'action a été annulée". Mais ce n'est pas moi qui ai programmé ce msgBox. Et je trouves pas comment l'enlever.
 
Quelqu'un a une idée ???
Merci d'avance
 




 
 
Essaie Tools/Options, onglet Edit/Find et decoche record changes
 
Mais ca va changer pas mal de chose pour ton programme

n°172751
kinanveu
Posté le 08-07-2002 à 10:52:36  profilanswer
 

Voila mon code. isAdding est un booleen qui vaut vrai des q'un AddNew est executé. Mon MsgBox s'affiche bien, mais un 2e MsgBox s'affiche : "L'action a été annulée".
 

Code :
  1. Private Sub dbgrdAnnée_BeforeUpdate(Cancel As Integer)
  2.     If isAdding Then
  3.         MsgBox "Vous devez compléter la ligne avant de continuer.", vbExclamation
  4.         Cancel = True
  5.     End If
  6. End Sub


 
Ptet que ya une difference entre VB6 et VB7 ?

n°172753
kinanveu
Posté le 08-07-2002 à 10:54:31  profilanswer
 

jeanphi80 a écrit a écrit :

 
Essaie Tools/Options, onglet Edit/Find et decoche record changes
Mais ca va changer pas mal de chose pour ton programme




 
Tu penses que ca changera aussi pour l'executable ?

n°172755
mareek
Et de 3 \o/
Posté le 08-07-2002 à 10:56:36  profilanswer
 

Harkonnen a écrit a écrit :

à quoi ressemble ton code ?
 
moi j'ai testé sur VB7 ce code, et je n'ai pas le message que tu décris :




 
il existe VB7 ? c'est pas VB.net ?


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°172757
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 08-07-2002 à 10:59:07  profilanswer
 

mareek a écrit a écrit :

 
 
il existe VB7 ? c'est pas VB.net ?




oui, VB .NET :)
c plus rapide de dire VB7 ;)

n°172758
jeanphi80
Posté le 08-07-2002 à 11:02:25  profilanswer
 

kinanveu a écrit a écrit :

 
 
Tu penses que ca changera aussi pour l'executable ?




 
Ce que ca change, c'est que quand tu effaces un record, il ne te demandera plus "etes vous sur de vouloir supprimer cet enregistrement..." mais il le supprimera directement! Pareil si tu supprimes un formulaire ou une table

mood
Publicité
Posté le 08-07-2002 à 11:02:25  profilanswer
 

n°172760
jeanphi80
Posté le 08-07-2002 à 11:04:11  profilanswer
 

non, ce n'est vrai que pour les records, pardon, il te demandera toujours confirmation qd tu effaces un formulaire ou une table


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  BeforeUpdate sur un DataGrid

 

Sujets relatifs
Sélection multiple dans un dataGrid[VB] Pb de Recordselectors dans un datagrid
refresh d'une datagrid sous VB6[VB6] Datagrid ! HELPPPPPPPPPPPPP...
[VB.NET] WebAppli: change color d'une cell selectionnee d'1 datagrid[VB6] DataGrid
[visual . NET] remplir une datagrid!!![VB .NET] Connecter une BBD avec une datagrid...
[aspx] et oui encore de l'aspx, comment remplir une datagrid avec ADO[VB6] DataGrid et menu deroulant via Button
Plus de sujets relatifs à : BeforeUpdate sur un DataGrid


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR