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

QuickReport Discussion :

Créer un sous état en mode paysage


Sujet :

QuickReport

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut Créer un sous état en mode paysage
    Bonjour à tous;
    J'ai un état qui se compose de deux feuilles la première en portrait et la deuxième en paysage alors comment faire pour les générer dans le cadre d'un seul état? y a t-il une possibilité de créer un sous état ?
    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    Bonne question , à laquelle je n'ai jamais réussi à répondre avec Quickreport
    (si l'objectif est du genre Portrait/paysage/suite portrait etc...) .

    Dans ces cas là je me suis tourné vers Rave

    Une solution peut-être : découper l'état en petits états (donc découper les données) pour faire un état composite ?

    Il y a peut être d'autres solutions sur le site de qusoft http://www.qusoft.com/Default.aspx page FAQ voir entre autre l'exemple ReportMergeDelphi

    Cependant je ne sais pas si cela répond vraiment à la question

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour sergio Merci pour ta réponse;
    J'ai cherché dans les FAQS et j'ai trouvé que c'est pas possible de faire les deux au me^me temps avec quickreport la question et sa réponse :
    "Q. One of the reports in my Composite Report has Landscape Orientation, and the others are Portrait. The report prints everything in Portrait
    A. You can not mix landscape and portrait oriented reports with the composite report.
    "
    c'est dommage

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    d'où mon utilisation de Rave dans ce cas
    mantenant je pense a une solution , compliquée mais faisable :
    transformer les etats quickreport en pdf et ajouter tous les pdf en un seul document

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour;
    Même si c'est compliqué dites moi comment y procéder
    Merci

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    je te renvoi sur ce lien
    pour ce qui est du PDF .

    Pour le reste , c'était une idée en passant . Le principe en est plus ou moins expliqué dans le lien indiqué . Chaque page d'un quickreport est en fait un métafile que l'on peut donc copier vers un PDF , l'objectif est donc de copier les pages des différents états Quickreport dans un seul fichier PDF (en fait c'est un peu comme le QRCompositeReport) . La beauté du PDF c'est qu'il accepte les différentes présentation de feuilles paysage/portrait.

    Le hic , je n'ai jamais essayé d'ajouter plusieurs QReports de cette façon et donc encore moins les formats de page , dans le principe cela me semble possible .

    Cerise sur le gâteau pas besoin d'avoir, je pense, de version pro de quickreport et l'essai (transformé) que j'avais fait pour le PDF était avec D3

    Bon courage . Si tu poursuis dans cette voie , tiens moi au courant .
    Sinon , il y a RAVE Report

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour;
    Merci pour ta réponse.
    En fait le lien que vous m'avez envoyé s'agit d'un code qu'il placer où ? c'est au lieu d'utiliser report.preview qu'il faut le mettre ?

    Et pour le composant Nishita's PDF Creation VCL (TNPDF) je le trouve pas sur le lien que vous m'avez indiqué http://www.delphi-files.com/Vcl/Tool...VCL-v-2-0.html




    Je vais faire mon essaie et vous mettre au courant .
    Merci infiniment

  8. #8
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    une petite recherche google pour le lien http://www.torry.net/vcl/vcltools/un...n/kn_tnpdf.zip

    En fait le lien que vous m'avez envoyé s'agit d'un code qu'il placer où ?
    effectivement , car dans mon cas il s'agissait de :
    1. récupérer un fichier QRP précédemment créer
    2. le pré visualiser
    3. puis l'imprimer et/ou le transformer sous un autre format (PDF entre autres)


    cependant le principe reste : l'utilisation des METAfiles

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour Merci pour la réponse.
    Alors j'ai testé ce composant mais en exécutant, le programme ne reconnait pas le type de données TStringSearchOptions au niveau d'une unité même si celle contient la directive uses StrUtils et dans le dossier Lib il y a déja la bibliothèque StrUtils.dcu
    L'erreur générée est la suivante : [Error] StdActns.pas(976): Undeclared identifier: 'TStringSearchOptions'

    Ce problème est dû à quoi ? sachant que j'utilise Delphi7

    Merci

  10. #10
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    cela fait tres longtemps que je n'ai pas regardé ce composant (que d'ailleurs je n'utilise pas).

    J'utilise une dérivée (joint) ou j'ai oté l'enregistrement du composant

    de plus si je ragarde la liste des uses je ne vois pas strutils !!!!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    uses
      SysUtils, WinProcs, WinTypes, Messages, Classes, Graphics, Controls,
      StdCtrls, ExtCtrls, Forms, Dialogs{$IFDEF USE_ZLIB} ,dZLib{$ENDIF},JPEG;

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Alors pour être plus clair le dossier zip que vous m'avez envoyé je l'ai décompressé dans le dossier delphi/Lib.
    Le bout de code pour convertir en pdf je l'ai mis dans l'evenement click de mon bouton imprimer et le voilà :
    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
     
    var  d1,d2 : Tdatetime;
     PPDF : Tnpdf; // création d''un fichier PDF
      MF : TMetaFile;
      B : TBitmap;         // récupération du metaFile pour manipulations
      FileExt : string;
      I : integer;
    begin
    Title := 'Sauvegarde PDF';
        Filter := 'Fichiers Adobe PDF (*.pdf)|*.PDF';
        FileName := QRPreview1.QRPrinter.Title;
        IF Execute then begin
           IF pos('.',FileName) > 0 then
              FileName := Copy(FileName, 1, pos('.',FileName)-1)+'.pdf'
           else FileName := FileName+'.pdf';
           FileExt := FileName;
          PPDF := TPrintPDF.CREATE(Self);
          PPDF.FileName := FileName;
          PPDF.BeginDoc;
          FOR i := 1 TO QRPrinter.PageCount do begin
            B := TBitmap.CREATE;
            B.PixelFormat := pf24bit;
            MF := QRPrinter.GetPage(i);
            B.Width := MF.Width;
            B.Height := MF.Height;
            B.Canvas.Draw(0,0,MF);
            PPDF.DrawJPEG(52,0,B); // JPEG
            IF (i <> QRPrinter.PageCount) then
              PPDF.NewPage;
            B.Free;
          end;
          PPDF.EndDoc;
          PPDF.Free;
    end;

    quand j'exécute il donne l'erreur relative à TStringSearchOptions au niveau de l'unité StdActns sachant qu'au niveau de cette unité il y a déja uses StrUtils comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    uses SysUtils, Classes, ActnList, StdCtrls, Forms, Dialogs,StrUtils  ;
    est ce que j'ai bien procédé ou pas? sinon quoi faire exactement ?

    Merci d'avance .

  12. #12
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    Citation Envoyé par zanoubya Voir le message
    Alors pour être plus clair le dossier zip que vous m'avez envoyé je l'ai décompressé dans le dossier delphi/Lib.
    justement , je n'ai pas envoyé de zip juste le lien sur le composant TPNPDF.

    comme dit ensuite , je n'ai pas utilisé le composant, mais juste son unité (voir fichier joint) . Et enfin dans cette unité il n'y a aucune référence a des actnlist je le répete

    est ce que j'ai bien procédé ou pas? sinon quoi faire exactement ?
    je dirais NON . Ensuite le bout de code (qu'il me semble reconnaitre )
    est utilisé avec un QRPreview ce qui n'est pas a faire dans le cas de la fusion.

    seule cette partie est a prendre en considération
    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
     
         PPDF := TPrintPDF.CREATE(Self);
          PPDF.FileName := FileName;
          PPDF.BeginDoc;
         // ici rajouter boucle sur les etats (qrreports) de façon a tous les inclure
         // ici il faut trouver un moyen d'assigner le QRPrinter de l'etat de la boucle  
          FOR i := 1 TO QRPrinter.PageCount do begin
            B := TBitmap.CREATE;
            B.PixelFormat := pf24bit;
            MF := QRPrinter.GetPage(i);
            B.Width := MF.Width;
            B.Height := MF.Height;
            B.Canvas.Draw(0,0,MF);
            PPDF.DrawJPEG(52,0,B); // JPEG
            IF (i <> QRPrinter.PageCount) then
              PPDF.NewPage;
            B.Free;
          end;
          // fin de la boucle etat 
     
          PPDF.EndDoc;

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour;
    Merci c'est bien clair maintenant et ca marche

  14. #14
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 224
    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 224
    Points : 41 524
    Points
    41 524
    Billets dans le blog
    63
    Par défaut
    genial , tu pourrais peut-être poster ton code pour en faire profiter la communauté
    merci !

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    J'ai utlisé le code que vous m'avez posté

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

Discussions similaires

  1. [AC-2010] Exporter un état sous pdf en mode paysage
    Par kawaya dans le forum VBA Access
    Réponses: 5
    Dernier message: 09/08/2013, 11h00
  2. [AC-2007] Créer un sous-état lié dans un état principal
    Par Lincoln911 dans le forum IHM
    Réponses: 0
    Dernier message: 28/04/2010, 10h48
  3. Créer un sous-état
    Par tgap65 dans le forum IHM
    Réponses: 2
    Dernier message: 19/06/2007, 00h34
  4. Créer un sous-formulaire en mode création
    Par The_Super_Steph dans le forum IHM
    Réponses: 9
    Dernier message: 23/05/2007, 15h04
  5. Créer un sous-état avec Access97
    Par fouding dans le forum IHM
    Réponses: 4
    Dernier message: 05/04/2007, 10h11

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