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 :

convertir un événement vers une procédure


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 182
    Par défaut convertir un événement vers une procédure
    salut J'ai cinq composants frxReport1 de fastreport dans la form1
    Et tous ces composants ont été utilisés dans son événement OnGetValue
    le mème code suivant (sauf: frxReport4 , frxReport5 Ils contiennent le même code et plus d'autres codes en dessous):
    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
     
    procedure TForm1.frxReport1GetValue(const VarName: String;var Value: Variant);
    begin
    if VarName = 'variable_sex' then
    begin
     if RadioGroup1.ItemIndex=0 then Value := 'M'
     else if RadioGroup1.ItemIndex=1 then Value := 'F'
    end;
    with FDQuery1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select code_etudiant from etudiantes');
      Open;
    end;
    if VarName = 'variable_code_etud' then
    Value := FDQuery1.FieldByName('code_etudiant').Value;
    end;
    Comment puis-je convertir ce code en procedure nous mettons un événement pour chaque composant frxReport
    Alors je l'ai mis dans chaque événement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    procedure TForm1.frxReport1GetValue(const VarName: String;var Value: Variant);
    begin
     
    //appele d'une procedure pour executer le code précédent
    end;

  2. #2
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    si je comprend bien la question, il suffit de faire pointer tous les événements vers la même procédure, qu'on renommera pour l'occasion en frxReportsGetValue

    cela se fait directement dans l'IDE en sélectionnant frxReport1 et en changeant le nom de la procédure directement dans l'inspecteur d'objets
    ensuite il suffit de sélectionnenr tous les frxReport concernée est de choisir cette procédure dans la combo de l'inspecteur d'objets...les autres copies peuvent être supprimées.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    Sinon, pour des rapports, pourquoi ne pas utiliser un SELECT avec des constructions type IF, CASE WHEN ou des tables thésaurus avec Jointure ?

    FastReport, je ne connais pas mais utiliser plusieurs sources, c'est possible ? une source pour l'entête, une source pour le listing voir même des sous-rapports
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 182
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    si je comprend bien la question, il suffit de faire pointer tous les événements vers la même procédure, qu'on renommera pour l'occasion en frxReportsGetValue

    cela se fait directement dans l'IDE en sélectionnant frxReport1 et en changeant le nom de la procédure directement dans l'inspecteur d'objets
    ensuite il suffit de sélectionnenr tous les frxReport concernée est de choisir cette procédure dans la combo de l'inspecteur d'objets...les autres copies peuvent être supprimées.
    vous avez bien compris ma question ..
    Et j'ai compris ta réponse
    Le problème reste pour ( frxReport4 , frxReport5 Ils contiennent le même code et plus d'autres codes en dessous)
    comment le résoudre ?

  5. #5
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 182
    Par défaut
    ShaiLeTroll
    Je suis un débutant dans le domaine de fastreport
    La requête que j'ai définie n'est qu'un exemple .. bien sûr, j'ai oublié de la mettre WHERE et parametre
    Mais cela ne résout pas le problème

  6. #6
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    procedure TForm1.frxReport5GetValue(const VarName: String;var Value: Variant);
    begin
      FrxReport1GetValue(VarName, Value);
      ///
      code en plus
    end;
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  7. #7
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 182
    Par défaut
    Merci,Paul TOTH la solution était faite

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 22/11/2013, 05h18
  2. Un événement sur une procédure externe
    Par Pedro dans le forum Composants VCL
    Réponses: 4
    Dernier message: 27/03/2013, 15h06
  3. Convertir un hashmap vers une matrice
    Par DionCeli dans le forum Collection et Stream
    Réponses: 23
    Dernier message: 14/01/2010, 15h53
  4. [Free Pascal] E/S redirigées depuis/vers une procédure
    Par CapJack dans le forum Free Pascal
    Réponses: 5
    Dernier message: 06/11/2008, 18h09
  5. Goto vers une procédure totalement lisible
    Par sechanbask dans le forum Général VBA
    Réponses: 10
    Dernier message: 06/06/2007, 18h22

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