salut
avant de faire un post (beforepost) , je vérifie si les données devant être présente sont bien là
comment faire pour ne pas posté si elle ne le sont pas
merci
salut
avant de faire un post (beforepost) , je vérifie si les données devant être présente sont bien là
comment faire pour ne pas posté si elle ne le sont pas
merci
Dans les événements des tables il suffit de déclencher une exception pour que l'action s'annule.
L'une des exceptions l'exception muette (et passe partout) Abort doit stopper l'action dans la table
tu as aussi le choix de déclencher une exception par raise Exception.Create(Message).
dans quel évènementEnvoyé par Petit_Delphiste
Dans ton BeforePost si les tests ne permettent pas la validation tu met un Abort OK?
il doit avoir un moyen plus propre qu'un abort
les gens utilisent vraiment ça dans leurs prog pour valider?
Et il n'est pas possible de faire un cancel ? Ce qui annulerai les modifications apportées pour le transaction en cours.
aucune idéeEnvoyé par marghett
il doit avoir plein de professionel qui ont de bonne solution
dans le beforepost c'est déjà plus propre de faire:
raise EDatabaseError.Create('erreur');
dans ce cas, il n'y a pas besoin de rien libéré?
Il faut faire un try except. Toutes les exceptions seront interceptées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 try Dataset.post except Dataset.cancel end
et tu veux mettre ça où?Envoyé par ludo00002
car dans le beforepost, il y a directement une varaible edatabaseerror...
Cette méthode ne peut être utilisée uniquement si tu fais un edit ou un append insert et un post explicite.
Voici un code plus claire :
Dans l'événement beforepost il faut mettre les contrôles de validation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Dataset.Insert; Datasetvaleur.value:=valeur; //valeurs à insérer try dataset.post; except dataset.cancel; end;
SVP avant de parler de propreté de code il faut savoir que les démos des gens qui ont conçu ce langage utilisent les même procedures pour que vous les traiter d'impropre. Merci de juger moins les gens.
et après?Envoyé par Petit_Delphiste
tente de parler plus en français, ça aiderait déjà à te faire comprendre
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager