Problem d'affichae QuickReortet requette SQL avec filtre

DJR - Modifié par DJR le 15/04/2015 à 19:44
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 21 avril 2015 à 09:19
Bonjour tout le monde,

j'ai un problème avec QuickReport, en effet j'utilise une requette SQL avec fltre.
ma requette marche très bien sur un dbgrid mais quant je la lie a mon QucReport
pour visualisation avant impression,il m'affiche le n'ombre d'enregistrement que je doit trouver mais sans les information, Voici ce que j'ai fait :


procedure TForModif.BoImpClick(Sender: TObject);
  begin
   Form_imp_liste := TForm_imp_liste.Create(nil);
   try
    Filtre := MonFiltre;// pour définir le filtre de la requette SQL
    if Filtre = 'MonFiltre1' then ClauseSQL := 'WHERE Cd LIKE' + quotedStr('F%');
    If Filtre = 'MonFiltre2' then ClauseSQL := 'WHERE Cd LIKE' + quotedStr('C%');
    with Query1 do
     begin
      Active := False;
      DatabaseName := Bdd;
      SQL.Clear;
      SQL.Text := MontextSQL + ClauseSQL;
      ExecSQL;
      Active := True;
     end;
    Ds1.DataSet := Query1; // ça c'est pour le DbGrid
    Form_Imp_Lise.ImpQr.DataSet := Query1;
    Form_imp_liste.ImpQr.Preview;
   finally
    Form_imp_liste.Free;
   end;
  end;


pour le QuckReprt c'est :


unit ListeImp;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, QRCtrls, DB, DBTables, QuickRpt, ExtCtrls;

type
  TForm_Imp_Liste = class(TForm)
    ImpQR: TQuickRep;
    QRBand1: TQRBand;
    QRSysData1: TQRSysData;
    QRBand2: TQRBand;
    QRBand3: TQRBand;
    QRSysData3: TQRSysData;
    QRBand4: TQRBand;
    QRSysData2: TQRSysData;
    Code: TQRDBText;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form_Imp_Liste: TForm_Imp_Liste;

implementation

uses Modification;

{$R *.dfm}

 procedure TForm_Imp_Liste.FormCreate(Sender: TObject);
  begin
   Code.DataField := ForModif.Query1.Fields[0].AsString;
  end;

end.


merci pour tout l'aide que vous nous apportez
A voir également:

1 réponse

cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
21 avril 2015 à 09:19
Bonjour,

il faut utiliser le TQRSubDetail
0
Rejoignez-nous