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 :

BDE et Abort


Sujet :

Bases de données Delphi

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 8
    Points : 5
    Points
    5
    Par défaut BDE et Abort
    Bonjour,
    J'utilise encore Delhi4. Mais là n'est pas le problème. Si je veux forcer la mise à jour des tables Paradox avec la fonction DBISaveChanges du BDE je rencontre un problème avec le mot réservé Abort qui se trouve dans differentes procèdures du DataModule.
    Exemple:
    J'ajoute DBIProcs dans la clause uses de mon unité

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Procedure DM.TableBeforeDelete(Dataset: TDataSet);
    Begin
    If Confirm('Supprimer cet enregistrement?') then
       Delete
    Else
      Abort;
    End;
    Lors de la vérif de la syntaxe ou de l'éxecution j'ai le message d'erreur suivant:
    Instruction attendue, mais expression de type Integer trouvée.
    Juste en dessous de l'instruction Abort.
    Qui sait comment remédier à cette erreur?
    Merci d'avance pour votre aide.


    [Balise code ajoutée par Bloon]

  2. #2
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 103
    Points : 120
    Points
    120
    Par défaut
    Salut,

    peut-être qu'en supprimant la virgule après le Abort...


    @+
    Ce n'est pas parce qu'on pédale dans la semoule, qu'on est sûr de manger du couscous... (anonyme)

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Points : 59
    Points
    59
    Par défaut
    J'y pensais aussi mais je ne pense pas que le problème soit à ce niveau. Ce point-virgule spécifie juste la présence d'une instruction vide. Je crois qu'il faut chercher ailleurs.

    On progresse…

  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
    Non ton erreur provient de ton Delete car delete est fonction qui supprime une sous chaine à partir d'une chaine de caractère
    Tu dois mettre :
    <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
    Futur Membre du Club
    Inscrit en
    Mars 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 8
    Points : 5
    Points
    5
    Par défaut BDE et Abort
    Bonjour,
    J'ai oublié de mettre table.Delete dans mon message mais dans ma procédure c'est OK comme tu le dis. Table.Delete mais l'ereur existe toujours.
    A+

  6. #6
    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
    je dois te dire alors que ta fonction confirm ne retourne pas un boolean.
    <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é**

  7. #7
    Futur Membre du Club
    Inscrit en
    Mars 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 8
    Points : 5
    Points
    5
    Par défaut BDE et Abort
    Bonjour,
    Ma fonction Confirm renvoie bien un boolean. La voici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function Confirm(Msg:string): Boolean;
    Begin
    Result := MessageDlg(Msg, mtConfirmation, mbYesNoCancel,0) = mrYes;
    End;
    Je pense que le problème viens d'une non compatibilité entre les fonctions du BDE et la fonction Abort.
    Mais qui pourra m'indiquer une solution pour forcer les mises à jour dans les tables Paradox car il arrive parfois des corruptions d'index ou d' enregistrement de données qui ne s'effectue pas


    [Balise code ajoutée par Bloon]

  8. #8
    Membre expérimenté
    Avatar de Bloon
    Homme Profil pro
    Consultant Freelance
    Inscrit en
    Avril 2002
    Messages
    467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant Freelance
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2002
    Messages : 467
    Points : 1 339
    Points
    1 339
    Par défaut Re: BDE et Abort
    Citation Envoyé par cochet
    Je pense que le problème viens d'une non compatibilité entre les fonctions du BDE et la fonction Abort.
    Une telle incompatibilité apparaîtrait à l'exécution et non à la compilation mais de toutes façons, on peut utiliser Abort avec le BDE !!! La seule erreur dans le code que tu nous fournis est Delete, qui devrait être DataSet.Delete. Ton erreur vient donc d'ailleurs. Abort est-elle bien la procédure de SysUtils ? Essaye SysUtils.Abort

    Bloon
    A lire : Les règles du club
    Delphi : La FAQ - Articles

  9. #9
    Futur Membre du Club
    Inscrit en
    Mars 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 8
    Points : 5
    Points
    5
    Par défaut [RESOLU]BDE et Abort
    Merci Bloon il faut effectivement mettre SysUtils.Abort pour supprimer le message d'erreur

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

Discussions similaires

  1. Incompatibilite 'Abort' avec BDE dans 'Uses'
    Par damene dans le forum Débuter
    Réponses: 4
    Dernier message: 21/04/2013, 21h27
  2. L'avenir du BDE et des SQL Links révélé ! <officiel>
    Par Merlin dans le forum Bases de données
    Réponses: 12
    Dernier message: 02/06/2006, 10h18
  3. Pb BDE suite a passage en Windows 2000 pro
    Par ARIF dans le forum Paradox
    Réponses: 4
    Dernier message: 18/11/2002, 11h39
  4. BDE : Configurer automatiquement le NETDIR
    Par Harry dans le forum Paradox
    Réponses: 10
    Dernier message: 29/07/2002, 11h33
  5. comment creer un alias dynamique avec BDE et ODBC
    Par david33 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/07/2002, 11h50

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