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

 Delphi Discussion :

Methodes TQuery inaccessible


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Par défaut Methodes TQuery inaccessible
    Bonjour à tous.

    Dès que j'utilise une methode de la classe TQuery, Delphi me lève une Exception de type "Violation d'accès".
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function TUsine.RequestSQL(Meuble : String) : String;
    begin
         NomFournisseur.SQL.Add('select * from TArticle');
    end;
    Ce code me revoit "Violation d'accès à l'adresse XXXXXXXX"

    Je ne comprends pas ...

    Merci de vos réponses.

  2. #2
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Salut,

    Citation Envoyé par juliano77 Voir le message
    Bonjour à tous.

    Dès que j'utilise une methode de la classe TQuery, Delphi me lève une Exception de type "Violation d'accès".
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function TUsine.RequestSQL(Meuble : String) : String;
    begin
         NomFournisseur.SQL.Add('select * from TArticle');
    end;
    Ce code me revoit "Violation d'accès à l'adresse XXXXXXXX"

    Je ne comprends pas ...

    Merci de vos réponses.
    TUsine est le nom de ta form ?
    Si tu fais une fonction, il te manque le Result ...

    Bref, il nous manque un peu de code et de précisions
    Merci

  3. #3
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut

    Est-ce NomFournisseur est créé dynamiquement ? Et si oui existe-t-il au moment de l'appel.

    Tu peux t'en assurer avec un: if Assigned() then...

    @+ Claudius

  4. #4
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Par défaut
    Avant tout merci pour vos réponses.

    Usine est mon TForm.
    NomFournisseur est mon TQuery.

    NomFournisseur est déclaré au début en dur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    unit UtraiteUsine;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      Db, ADODB, DBTables, UAccess;
     
    type
      TUsine = class(TForm)
        NomFournisseur: TQuery;
        RefConf: TDatabase;
     
      function RequestSQL(Meuble : String) : String;
     
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
      end;
    Pour le result, je d'accord, mais je n'aurais pas ce type d'erreur.

  5. #5
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Re,

    Citation Envoyé par juliano77 Voir le message
    NomFournisseur est déclaré au début en dur.
    Pour être bien sûr, c'est bien un composant que tu as déposé sur ta fiche ?

  6. #6
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Par défaut
    Oui je l'ai bien déposé sur ma fiche.

    Je sais plus quoi faire.

    Peut-être cela pourra vous aider, mais j'arrive à activer une requête via l'inspecteur d'objet.
    Je pense que le programme ne veut pas que j'accède au méthodes de TQuery.

    Malheuresment, c'est la que je bloque.

Discussions similaires

  1. Appel d'une methode inaccessible
    Par clouddd dans le forum Débuter
    Réponses: 2
    Dernier message: 21/02/2013, 16h48
  2. extends JButton methode inaccessible
    Par perrinpotez dans le forum NetBeans
    Réponses: 7
    Dernier message: 06/08/2009, 18h45
  3. methode d'interface inaccessible depuis classe metier!
    Par touftouf57 dans le forum Débuter avec Java
    Réponses: 14
    Dernier message: 14/04/2009, 11h06
  4. [AIDE] Methode de ma fonction inaccessible
    Par Nixeus dans le forum MFC
    Réponses: 3
    Dernier message: 19/04/2007, 16h55
  5. Methode de drcherche a l,interieur de basse de donner texte
    Par philippe V dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 03/12/2002, 10h20

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