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 :

Imprimer GoupeHeader sur nouvelle page


Sujet :

FastReport

  1. #1
    Candidat au Club
    Imprimer GoupeHeader sur nouvelle page
    Bonjour,

    Voilà quelques jours que je recherche une solution, mais là je sèche.

    J'ai un rapport contenant des commandes de différents articles.

    J'ai crée un GroupHeader qui contient des infos et un MasterData qui contient les données des articles.

    Actuellement mon GroupHeader s'imprime à chaque nouvel article. Mon souhait serai qu'il ne s'imprime qu'une seule fois par page.
    Il faudrait pouvoir le rattacher a mon MasterData, mais lui imposer qu'il ne s'imprime que si il y a une nouvelle page.

    Des idées ?

    J'utilise FR 6

    J'ai fait un screenshot du rapport actuel.


  2. #2
    Rédacteur/Modérateur

    Bonjour,

    Il faudrait pouvoir le rattacher a mon MasterData, mais lui imposer qu'il ne s'imprime que s’il y a une nouvelle page.
    Pour moi il ne s'agit pas d'un groupheader mais d'un "entête de colonne"
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  3. #3
    Candidat au Club
    Bonjour, merci pour ta réponse.

    Le problème avec l'"en-tête de colonne", c'est qu'il se positionne au-dessus de mes données d'adresse sur ma 1ere page. Impossible de l'attacher à mon MasterData... argh..

  4. #4
    Rédacteur/Modérateur

    Re,

    je suis en train de faire à peu de chose près la même chose (facturation) mais avec fastreport FMX 2 (moins avancé que fastreport 6 cela dit)
    un peu moins de détail mais tout juste !
    Je suis à peu près sûr que j'en parle dans d'autres discussions FastReport VCL 5 (je voulais le bas de facture bien an bas de page)

    En fait je transpose cet état VCL 5 en FMX 2 avec pas mal de surprises hélas ! (les modifications sur les fontes la migration n'aime pas donc je suis obligé de refaire le report )

    Voici comment j'ai fait la chose
    j'ai deux frxDBDataset Entete et Lignes
    une première page avec
    ReportTitle
    PageHeader
    MasterData <- Datasource entete
    ReportSummary

    Le masterData ne contient qu'un SubReport
    le subreport contient un Header (entete de ligne)
    pas mal de groupheaders (mais ça c'est ma sauce)
    un masterdata datasource lignes
    pas mal de groupfooters dont le dernier pour la totalisation

    et ça, ça fonctionne à peu près comme la présentation souhaitée

    Désormais je me bats avec mes logos que j'ai décidé de stocker dans la BDD (mais certainement mal)
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  5. #5
    Candidat au Club
    Re..

    Merci pour ta solution.

    Mais je n'ai pas réussi à en tirer exactement ce que je voulais...

    Du coup je suis repartis sur l'en-tête de colonne et j'ai réussi à m'approcher de ce que je désire.

    Je n'ai qu'un soucis. Mon en-tête s'imprime sur toutes les pages.

    Saurais-tu comment spécifier a mon en-tête de colonne, de ne s'imprimer que lorsque mon MasterData1 s'imprime ?

    J'utilise du PascalScript.

    Merci pour ton temps.

  6. #6
    Rédacteur/Modérateur

    Oh, à coup de Pascal script cela doit être assez facile quitte à utiliser quelques variables en plus
    Mais je ne le dirais jamais assez, c'est surtout une question de données !

    Ton état me paraît pas plus complexe que mes factures, cela dit je n'en n'imprime qu'une à la fois si je devais faire une "édition groupée" je rajouterais mais différentes factures en un seul état (ça se fait facilement) et c'est peut-être là , la solution à ton problème
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  7. #7
    Candidat au Club
    Non, ce sont des bulletins de commandes, rien de très différents.

    Mais il arrive que mes clients en impriment plusieurs d'un coup.

    si je devais faire une "édition groupée" je rajouterais mais différentes factures en un seul état (ça se fait facilement)
    Qu'entends-tu par là ?

    Désolé mais je débute...

  8. #8
    Rédacteur/Modérateur

    Je ne sais pas avec quel outil tu utilises FastReport, moi c'est avec Delphi (Rio), il est tout à fait possible d'ajouter (combiner) des états les uns aux autres afin de n'obtenir qu'un seul état (ou pdf ou ...)
    un exemple ici
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  9. #9
    Candidat au Club
    Merci pour ton aide !

    J'ai finalement réussi à m'en sortir avec des GroupHeader !

###raw>template_hook.ano_emploi###