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

Langage Delphi Discussion :

FastReport combiner deux états


Sujet :

Langage Delphi

  1. #1
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 268
    Points : 41 671
    Points
    41 671
    Billets dans le blog
    64
    Par défaut FastReport combiner deux états
    Bonjour,

    Pour commencer, je vais me faire une remontrance, le post devrait être dans le forum FastReport sauf que peu de personnes le fréquente et qu'en général c'est plutôt moi qui donne les réponses (on ne se refait pas )

    Voilà mon problème
    j'ai deux états
    frxReportColis
    frxReportBL
    et je veux les imprimer (Print)

    Pour une prévisualisation je fais ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
       frxReportColis.PrepareReport();
       frxReportBL.PrepareReport();
       frxReportColis.PreviewPages.AddFrom(frxReportBL);
       frxReportColis.ShowPreparedReport;
    et ça baigne mes deux états sont bien fusionnés

    par contre pour une impression
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      frxReportColis.PrepareReport();
      frxReportBL.PrepareReport();
      frxReportColis.Print;
      frxReportBL.Print;
    j'ai deux fois le dialogue de choix d'imprimante , il n'est pas possible de faire de PreviewPages.Add cela va de soi

    J'ai bien sûr fait des recherches internet pour une fusion sauf que, excepté que ce soit du VB :
    1- Mes gabarits se trouvent dans une bdd, donc un chargement frxReportBL.Report.LoadFromStream(AStream); et non par un frxReportBL.Load('Colisage.fr3');
    2- Il doit y avoir une différence entre la version .Net et Delphi car le paramètre de PrepareReport Delphi est true par défaut (pour effacer l'état) et non comme dans l'article cité où il faut mettre TRUE
    As a function parameter we provide the value TRUE. This means that the current report is joined to the previous one.
    Bref, je patauge, est-ce que quelqu'un a déjà réussi une fusion pour l'impression ?

    J'ai essayé un truc comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      frxReportColis.Report.SaveToStream(AStream);
      aStream.Position:=0;
      Etats.Report.LoadFromStream(AStream);
      Etats.PrepareReport();
      frxReportBL.Report.SaveToStream(aStream);
      aStream.Position:=0;
      Etats.Report.LoadFromStream(AStream);
      Etats.PrepareReport(False);
      Etats.Print;
    Mais j'ai dû me planter quelque part

    J'ai bien sûr plusieurs solutions de repli : imprimer à partir de la prévisaulisation ou fusionner dans le design et donc un seul rapport, mais je ne voudrais pas rester idiot

  2. #2
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 268
    Points : 41 671
    Points
    41 671
    Billets dans le blog
    64
    Par défaut avancée
    Pour info ceci fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      Etats.LoadFromFile('ColisFRUS.fr3');
      Etats.PrepareReport();
      Etats.LoadFromFile('Colisage.fr3');
      Etats.PrepareReport(False);
      Etats.Print; //(ou Etats.ShowPreparedReport;
    ca qui m'offre donc une 3° posssibilité (stocker les .fr3 hors de ma BDD pour les utiliser pas top mais faute de grives ...)

    C'est donc ma codification des streams qui est en cause.

  3. #3
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 831
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 831
    Points : 13 579
    Points
    13 579
    Par défaut
    Il te manque juste un AStream.Clear avant frxReportBL.SaveToStream.

  4. #4
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 268
    Points : 41 671
    Points
    41 671
    Billets dans le blog
    64
    Par défaut
    Merci, je croyais que le Stream s'écrasait tout seul en faisant frxReportBL.Report.SaveToStream(aStream);

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

Discussions similaires

  1. deux états dans le même rapport crystal report
    Par hananemeryem dans le forum ASP.NET
    Réponses: 1
    Dernier message: 03/08/2007, 16h48
  2. Combiner deux matrices
    Par bernard6 dans le forum MATLAB
    Réponses: 4
    Dernier message: 13/04/2007, 15h32
  3. [C#] Combiner deux DLL ?
    Par choas dans le forum Windows Forms
    Réponses: 5
    Dernier message: 11/05/2006, 23h51
  4. Réponses: 2
    Dernier message: 27/02/2006, 11h08
  5. Fusion de deux états
    Par nancy54 dans le forum QuickReport
    Réponses: 2
    Dernier message: 07/06/2005, 20h07

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