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

FastReport Discussion :

Pages dupliquées sur un Report à la volée


Sujet :

FastReport

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2005
    Messages : 22
    Points : 14
    Points
    14
    Par défaut Pages dupliquées sur un Report à la volée
    Bonjour à toutes et tous,

    C'est mon premier post sur le forum, merci pour votre indulgence.

    Je développe avec delphi 10.3 RIO une appli qui est censée générer un rapport écrit à partir de données saisies dans des formulaires (form).
    Ces pages de saisies écrites en delphi avec des composants VCL et JVCL ne sont reliées à aucune base de données, tout est généré par des fichiers texte (type ini).

    Sur l'une de ces pages j'affiche 1 à n images dans un tJvThumbView.

    A partir de toutes ces données, je tente de générer un rapport dont les 6 premières pages sont pré établies et sont remplies par les zones saisies ou par défaut dans l'appli delphi.

    à partir de la 7eme page, je génère dans le rapport des tFrxPage à la volée. Chacune contient un tFrxHeader comportant un tfrxMemoView. Je n'ai pas mis de tChildBand, n'y voyant pas de nécessité vu que les données sont envoyées à la volée. Sous le tfrxMemoView, je génère autant de tfrxPictureView que d'images de mon appli. Quand je ne dépasse pas la hauteur max du tfrxPage, tout va bien, par contre dès que je dépasse, il recréé la même page en double avant de continuer avec l'image suivante.

    Y a t'il une propriété, un morceau de code, une prière, quelque chose à faire ?

    merci d'avance

    photo du résultat du code

    Nom : 2020-12-30_00-50-24.png
Affichages : 75
Taille : 356,4 Ko

    Code delphi : 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
     
             //récupération du thumbview du sheet en cours
             myJv := tJvThumbView(mySheet.FindChildControl('tvScelle'));
             //initialisation des positions iTop et iLeft
             iTop     := iTop + 10;
             iLeft    := 0;
             //boucle sur toutes les images
             for iboucle := 0 to myJv.GetCount -1 do begin
                //sélection de l'image dans la boucle
                myJv.Selected := iBoucle;
                //création d'une image dans le report
                myFrxImg := tFrxPictureView.Create(myFrxPage);
                with myFrxImg do begin
                   Parent         := myFrxBand; //myFrxBand est un tfrxheader
                   CreateUniqueName;
                   Align          := baNone;
                   //hauteur incrémentée d'un écart
                   Height         := 350;
                   Width          := 250;
                   Top            := iTop;
                   Left           := iLeft;
                   //si boucle paire
                   if iBoucle mod 2 = 0 then begin
                      iTop        := iTop;
                      iLeft       := iLeft + Width + 5;
                   //si boucle impaire
                   end else begin
                      iTop        := iTop  + Height + 10;
                      iLeft       := 0;
                   end;
                   //variable de la position en hauteur pour le coup d'après
                   Center         := True;
                   KeepAspectRatio:= true;
                   //attribution de l'image
                   Picture.LoadFromFile(myJv.SelectedFile);
                end;
             end;

  2. #2
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 14 620
    Points : 39 778
    Points
    39 778
    Billets dans le blog
    59
    Par défaut
    Bonjour,

    je suis loin de tout comprendre sur les 6 premières pages et sur la "duplication" de page je me contenterai donc de "parler" des pages contenant les photos.
    Je note ceci
    ne sont reliées à aucune base de données,
    mais surtout cela
    Je n'ai pas mis de tChildBand, n'y voyant pas de nécessité vu que les données sont envoyées à la volée.
    AMHA c'est cette derniére citation qui coince. Il y a peu j'ai répondu sur ce forum à une question presque identique dans le principe (selon moi) https://www.developpez.net/forums/d2...le-fastreport/

    J'utiliserai la même technique pour ce problème.

    En premier lieu création d'un frxUserdataset (pas de base de données mais quand même une source de données )

    En second lieu l'état que je concevrai de la manière suivante : une bande titre (pour le "cartouche"), une bande maitre (deux colonnes) avec au sein de cette bande, l'image.

    Le code ? cf ma réponse #5 du post sus-cité. C'est dans le OnGetValue que se récupéréra l'image (je ne comprend pas vraiment l'utilisation du composant jvThumbView)

    Je préférerai également séparer cet état des autres pages (il est très facile de fusionner plusieurs états ensemble)

    Y a t'il une propriété, un morceau de code, une prière, quelque chose à faire ?
    pour répondre aux questions :
    - Utiliser frxUserDataset
    - voir #5
    - après tout je suis d'Yeu (l'île mais j'adore le jeu de mot) la prière a été entendue
    - à partir de de là pourquoi ne pas revoir ces six autres pages faites avec des fichiers ini
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) ,D11 (Alexandria)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2005
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    bonjour et merci.

    Je vais essayer de mettre tout cela en application. Je n'ai jamais utilisé le tfrxuserdataset. Je vais donc me déniaiser sur ce sujet.

    Conseils rapides et précieux.
    ce forum et cette page sont dans mes favoris.

    a+

  4. #4
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : novembre 2005
    Messages : 22
    Points : 14
    Points
    14
    Par défaut yessss
    Evidemment ça fonctionne.
    1000 merci d'yeu bien que je préfère oléron et ré.

    En citation, je prèfère :
    La connaissance ne vaut que si elle est partagée par tous.

  5. #5
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 14 620
    Points : 39 778
    Points
    39 778
    Billets dans le blog
    59
    Par défaut
    IMO Oléron, Ré et Noirmoutier ne sont plus des iles puisque reliées au continent par un pont ce ne sont plus que des presqu'iles.

    Une ile ça se mérite par la traversée en bateau (surtout ces derniers temps, grâce à Bella).
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) ,D11 (Alexandria)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

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

Discussions similaires

  1. contenu dupliqué sur la même page
    Par cyci60 dans le forum WordPress
    Réponses: 4
    Dernier message: 20/01/2020, 17h05
  2. Page blanche sur Report Builder + Erreur REP-1213
    Par Odawin dans le forum Reports
    Réponses: 0
    Dernier message: 28/11/2016, 12h27
  3. [CR XI] Afficher un état crystal report dans une page ASP sur windows 7
    Par regisyves dans le forum SAP Crystal Reports
    Réponses: 0
    Dernier message: 29/01/2012, 12h03
  4. LastPageFooter dupliqué sur chaque page
    Par doons dans le forum iReport
    Réponses: 0
    Dernier message: 15/07/2009, 11h53
  5. [VBA-E] Impression page paire sur plusieurs onglets
    Par liop49 dans le forum Macros et VBA Excel
    Réponses: 23
    Dernier message: 17/02/2005, 15h19

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