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 :

Problème avec l'affichage de la fiche_client


Sujet :

Delphi

  1. #1
    Membre régulier Avatar de menoulette
    Inscrit en
    Août 2009
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 320
    Points : 111
    Points
    111
    Par défaut Problème avec l'affichage de la fiche_client
    Bonsoir à vous tous,

    je suis une débutante en Delphi bon je viens de créer mon premier projet , logciel pour la gestion commerciale,

    j'ai trois fiches :
    fiche_menu et fiche_produit et fiche_client la fiche menu et produit fonctionne très bien or que la fiche client non pourtant j'ai enregistré avant et ca allait très bien mais quand j'ai fermé l’Éditeur j'ai relancé et hop la fiche client ne s'affiche pas or que j'ai programmé le sous menu client procedure Tfiche_menu.FormCreate(Sender: TObject);
    begin
    fiche_client.showmodal;
    end;

    et ça donne l'erreur suivante:
    [Erreur] Menu.pas(107): Identificateur non déclaré : 'fiche_client'
    [Erreur] Menu.pas(107): Opérateur ou point-virgule manquant
    [Erreur fatale] Commerce.dpr(7): Impossible de compiler l'unité utilisée 'Menu.pas'



    quelqu'un peut m'orienter s'il vous plait merci d'avance



    Cordialement

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 021
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 021
    Points : 40 932
    Points
    40 932
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Il manque certainement un uses 'nomdufichier.pas contenant TFiche_Client' dans le fichier menu.pas
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Membre régulier Avatar de menoulette
    Inscrit en
    Août 2009
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 320
    Points : 111
    Points
    111
    Par défaut
    Bonjour merci pour votre réponse , bon que dois je faire ?pouvez vous m'expliquer encore plus voici le code de la fiche_menu (menu.pas)
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
     
    unit Menu;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, Menus, ImgList, ComCtrls, ToolWin;
     
    type
      Tfiche_menu = class(TForm)
        MainMenu1: TMainMenu;
        Fichier1: TMenuItem;
        Produit1: TMenuItem;
        Client1: TMenuItem;
        Fournisseur1: TMenuItem;
        Quitter1: TMenuItem;
        Edition1: TMenuItem;
        Factureachat1: TMenuItem;
        Facturevente1: TMenuItem;
        Consultation1: TMenuItem;
        Achats1: TMenuItem;
        Ventes1: TMenuItem;
        Statistiques1: TMenuItem;
        Rglements1: TMenuItem;
        Outils1: TMenuItem;
        Inventaire1: TMenuItem;
        Archivage1: TMenuItem;
        Protection1: TMenuItem;
        Cloture1: TMenuItem;
        N1: TMenuItem;
        Aide1: TMenuItem;
        Apropos1: TMenuItem;
        ToolBar1: TToolBar;
        ToolButton1: TToolButton;
        ToolButton2: TToolButton;
        ToolButton3: TToolButton;
        ToolButton4: TToolButton;
        ToolButton5: TToolButton;
        ToolButton6: TToolButton;
        ToolButton7: TToolButton;
        ToolButton8: TToolButton;
        ToolButton9: TToolButton;
        ToolButton10: TToolButton;
        ToolButton11: TToolButton;
        ToolButton12: TToolButton;
        ToolButton13: TToolButton;
        ToolButton14: TToolButton;
        ToolButton15: TToolButton;
        ToolButton16: TToolButton;
        ToolButton17: TToolButton;
        ToolButton18: TToolButton;
        ToolButton19: TToolButton;
        ToolButton20: TToolButton;
        ToolButton21: TToolButton;
        ToolButton22: TToolButton;
        ToolButton23: TToolButton;
        ToolButton24: TToolButton;
        ToolButton25: TToolButton;
        ToolButton26: TToolButton;
        ToolButton27: TToolButton;
        ToolButton28: TToolButton;
        ToolButton29: TToolButton;
        ImageList1: TImageList;
        procedure Quitter1Click(Sender: TObject);
        procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
        procedure Produit1Click(Sender: TObject);
        procedure Client1Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
      end;
     
    var
      fiche_menu: Tfiche_menu;
     
    implementation
     
    uses produit;
     
    {$R *.dfm}
     
    procedure Tfiche_menu.Quitter1Click(Sender: TObject);
    begin
    close;
    end;
     
    procedure Tfiche_menu.FormCloseQuery(Sender: TObject;
      var CanClose: Boolean);
    begin
    if MessageDlg('Voulez vous vraiment quitter le logiciel ?',mtConfirmation,[mbyes,mbno],0)=mryes then
    begin
    canclose:=true;
    application.Terminate;
    end
    else
     canclose:=false;
    end;
     
    procedure Tfiche_menu.Produit1Click(Sender: TObject);
    begin
    fiche_produit.showmodal;
    end;
     
    procedure Tfiche_menu.Client1Click(Sender: TObject);
    begin
    fiche_client.showmodal;
    end;
     
    end.

    Merci pour votre réponse
    Cordialement

  4. #4
    Expert éminent sénior
    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 : 61
    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
    Points : 10 008
    Points
    10 008
    Par défaut
    Bonjour

    Ligne 103 tu fais appel à form_produit définie dans l'unité Produit.pas.
    Cette unité est bien présente à la ligne 80 (uses).
    Jusque là tout va bien.

    Mais ligne 108 tu fais maintenant appel à form_client (définie dans l'unité Client.pas je suppose), mais cette unité est absente des uses (ligne 80).
    Le compilateur ne retrouve pas la définition de cette form d'où le message d'erreur.

    Donc ajoute Client.pas aux uses:

    @+ Claudius.

  5. #5
    Membre régulier Avatar de menoulette
    Inscrit en
    Août 2009
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 320
    Points : 111
    Points
    111
    Par défaut
    super ça marcher merci beaucoup

  6. #6
    Membre expert
    Avatar de e-ric
    Homme Profil pro
    Apprenti chat, bienfaiteur de tritons et autres bestioles
    Inscrit en
    Mars 2002
    Messages
    1 550
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Apprenti chat, bienfaiteur de tritons et autres bestioles

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 550
    Points : 3 916
    Points
    3 916
    Par défaut
    Pour rappel : Un principe général en Delphi (provenant de Pascal) est qu'un identificateur ne peut être utilisé dans une unité que s'il a été déclaré :
    - dans cette unité avant la première instruction où il est utilisé.
    - ou dans une autre unité inscrite dans l'une des clauses uses d'interface ou d'implementation de l'unité utilisatice.

    La seule exception concerne la déclaration des types pointeurs.

    Cdlt

    M E N S . A G I T A T . M O L E M
    Debian 64bit, Lazarus + FPC -> n'oubliez pas de consulter les FAQ Delphi et Pascal ainsi que les cours et tutoriels Delphi et Pascal

    "La théorie, c'est quand on sait tout, mais que rien ne marche. La pratique, c'est quand tout marche, mais qu'on ne sait pas pourquoi. En informatique, la théorie et la pratique sont réunies: rien ne marche et on ne sait pas pourquoi!".
    Mais Emmanuel Kant disait aussi : "La théorie sans la pratique est inutile, la pratique sans la théorie est aveugle."

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

Discussions similaires

  1. [débutant] problème avec l'affichage des lettres sou dev-C++
    Par Antigonos Ier Gonatas dans le forum Dev-C++
    Réponses: 9
    Dernier message: 02/04/2006, 23h22
  2. problème avec l'affichage des caractères spéciaux
    Par michelkey dans le forum Général Python
    Réponses: 4
    Dernier message: 19/08/2005, 09h09
  3. Problème avec l'affichage de souris INT 33,01h
    Par belgampaul dans le forum Assembleur
    Réponses: 7
    Dernier message: 07/12/2004, 22h37
  4. Réponses: 11
    Dernier message: 16/12/2003, 20h58

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