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

Bases de données Delphi Discussion :

validation de donnée... et post


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut validation de donnée... et post
    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

  2. #2
    Membre confirmé Avatar de JustMe
    Inscrit en
    Juillet 2002
    Messages
    479
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 479
    Points : 593
    Points
    593
    Par défaut Avant de faire quoi que ce soit
    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).
    <On fait la science avec des faits, comme on fait une maison avec des pierres : mais une accumulation de faits n'est pas plus une science qu'un tas de pierres n'est une maison> **Poincaré**

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut Re: Avant de faire quoi que ce soit
    Citation Envoyé par Petit_Delphiste
    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ènement

  4. #4
    Membre confirmé Avatar de JustMe
    Inscrit en
    Juillet 2002
    Messages
    479
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 479
    Points : 593
    Points
    593
    Par défaut
    Dans ton BeforePost si les tests ne permettent pas la validation tu met un Abort OK?
    <On fait la science avec des faits, comme on fait une maison avec des pierres : mais une accumulation de faits n'est pas plus une science qu'un tas de pierres n'est une maison> **Poincaré**

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut
    il doit avoir un moyen plus propre qu'un abort

    les gens utilisent vraiment ça dans leurs prog pour valider?

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 29
    Points : 24
    Points
    24
    Par défaut
    Et il n'est pas possible de faire un cancel ? Ce qui annulerai les modifications apportées pour le transaction en cours.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par marghett
    Et il n'est pas possible de faire un cancel ? Ce qui annulerai les modifications apportées pour le transaction en cours.
    aucune idée

    il doit avoir plein de professionel qui ont de bonne solution

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut
    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é?

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 115
    Points : 73
    Points
    73
    Par défaut
    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

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par ludo00002
    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ù?

    car dans le beforepost, il y a directement une varaible edatabaseerror...

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 115
    Points : 73
    Points
    73
    Par défaut
    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 :
    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;
    Dans l'événement beforepost il faut mettre les contrôles de validation.

  12. #12
    Membre confirmé Avatar de JustMe
    Inscrit en
    Juillet 2002
    Messages
    479
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 479
    Points : 593
    Points
    593
    Par défaut SVP avant de parler de propreté
    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.
    <On fait la science avec des faits, comme on fait une maison avec des pierres : mais une accumulation de faits n'est pas plus une science qu'un tas de pierres n'est une maison> **Poincaré**

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 54
    Points : 57
    Points
    57
    Par défaut Re: SVP avant de parler de propreté
    Citation Envoyé par Petit_Delphiste
    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?

    tente de parler plus en français, ça aiderait déjà à te faire comprendre

Discussions similaires

  1. [2.x] handleRequest : post valid les données sont changées
    Par dukoid dans le forum Symfony
    Réponses: 4
    Dernier message: 12/02/2015, 16h14
  2. [Excel] Validation de données
    Par ptitsoleil87 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 21/12/2005, 19h35
  3. Problème de validation de données
    Par loutsky dans le forum Access
    Réponses: 3
    Dernier message: 23/11/2005, 14h11
  4. dbgrid AND validation des données
    Par samlerouge dans le forum Bases de données
    Réponses: 10
    Dernier message: 11/06/2004, 23h08
  5. Validation de données à partir d'un XML Schema
    Par leup dans le forum Valider
    Réponses: 2
    Dernier message: 10/06/2004, 08h30

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