Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Invité régulier
    Homme Profil pro
    Electromécanicien
    Inscrit en
    octobre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electromécanicien

    Informations forums :
    Inscription : octobre 2009
    Messages : 44
    Points : 7
    Points
    7

    Par défaut QReport - Probleme pour affiché une image

    Bonjour,
    je viens de crée une application , je me sert d'une base de données *.mdb,
    je me connecte bien sur cette base j'ai bien les infos qui s'affiche dans ma
    DBGrid mais pour faire une impression de tous je me sert de QReport
    j'ais bien les données mais pas les Photos qui s"affiche alors que dans l'application les photos s'affiche.

    dans la base de données le champ "Photo1" contient le nom de l'image :
    "rob vasque.jpg" j'ai meme essayer avec le chemin complet en mettant les
    double slash : "c:\\Photo\\rob vasque.jpg"
    ça marche pas

    logiciel: c++Builder
    merci de votre aide

  2. #2
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 025
    Points : 12 830
    Points
    12 830

    Par défaut

    TQRImage = il faut spécifier le nom de l'image par un Picture.LoadFromFile durant le OnNeedData ou OnStartPage
    TQRDBImage = il faut utiliser un champ blob au lieu de champ string contenant le nom de l'image

    Il est préférable de mettre le chemin complet, par défaut, si tu ne mets que le nom, il ira chercher dans le répetoire de l'exe, attention CurrentDir est altéré par les OpenDialog
    Entraine toi d'abord avec un TImage sur un TForm avant de faire l'impression

    A Savoir que le JPEG doit être converti via un TJPEGImage en D7, à partir de D2007, c'est implicite
    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

    Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !

  3. #3
    Invité régulier
    Homme Profil pro
    Electromécanicien
    Inscrit en
    octobre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electromécanicien

    Informations forums :
    Inscription : octobre 2009
    Messages : 44
    Points : 7
    Points
    7

    Par défaut

    ok, merci je vais essayer

  4. #4
    Invité régulier
    Homme Profil pro
    Electromécanicien
    Inscrit en
    octobre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electromécanicien

    Informations forums :
    Inscription : octobre 2009
    Messages : 44
    Points : 7
    Points
    7

    Par défaut

    bonjour,

    ça marche avec :

    "TQRImage = il faut spécifier le nom de l'image par un Picture.LoadFromFile durant le OnNeedData ou OnStartPage "

    mais j'ai un autre souci, sur chaque page j'ai deux groupes infos qui s'affiche
    qui correspond a deux lignes de ma base de données et le problème viens que toutes les infos textuels de ma base s'affiche bien mais les images sont répété deux fois exemple:
    au moment de l’aperçue j'ai sur une page : le nom de la première ligne est ça photo et en dessous j’ai le nom de la deuxième ligne et la photo de la première ligne

    merci

    ps: est ce possible d'afficher une page et une seul avant les autres pages au début du rapport ?
    Images attachées Images attachées

  5. #5
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 025
    Points : 12 830
    Points
    12 830

    Par défaut

    Tu as je suppose utiliser le OnStartPage, il faut dans ce cas uniquement un enregistrement par page !
    Typiquement une fiche signalétique avec photo

    Faudrait alors le faire dans AfterScroll du DataSet associé, ce n'est pas très élégant et j'ai un doute, possible qu'au lieu d'avoir deux fois la 1ère, tu auras à la place 2 fois la seconde
    Est-ce que le TQRImage a des évènements comme un BeforePrint ?

    il est préférable que ce soit DataSet soit exclusivement utilisé par le QuickReport et non un objet commun d'un Datamodule par exemple !

    Autre méthode 1 :
    As-tu essayé le OnNeedData, je crois qu'il faut enlever le lien avec le DataSet et gérer manuellement l'alimentation des TQRText, TQRLabel non DB


    Autre méthode 2 :
    Sinon, utilise un TClientDataSet avec une colonne blob où tu charges toutes les images nécessaires, tu associe ce ClientDataSet comme détail de l'autre DataSet (MasterSource\MasterFields\IndexFieldNames...), tu utilises à la place un TQRDBImage connecté sur le ClientDataSet

    Tu as des options dans les TQRCustomBand comme ForceNewPage
    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

    Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !

  6. #6
    Invité régulier
    Homme Profil pro
    Electromécanicien
    Inscrit en
    octobre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electromécanicien

    Informations forums :
    Inscription : octobre 2009
    Messages : 44
    Points : 7
    Points
    7

    Par défaut

    bon, je pense que je vais mettre une infos par page

    merci

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •