home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue59 / Construc / DMQueryTableProducer.pas next >
Encoding:
Pascal/Delphi Source File  |  2000-06-05  |  1.1 KB  |  53 lines

  1. unit DMQueryTableProducer;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   DBWeb, DB, Asptlb;
  6.  
  7. type
  8.   TDMQueryTableProducer = class(TQueryTableProducer)
  9.   private
  10.     FRequest: IRequest;
  11.   public
  12.     constructor Create(AOwner: TComponent); override;
  13.     function Content: String; override;
  14.   published
  15.     property Request: IRequest read FRequest write FRequest;
  16.   end;
  17.  
  18. procedure Register;
  19.  
  20. implementation
  21.  
  22. procedure Register;
  23. begin
  24.   RegisterComponents('DrBob42', [TDMQueryTableProducer]);
  25. end;
  26.  
  27. { TDMQueryTableProducer }
  28.  
  29. constructor TDMQueryTableProducer.Create(AOwner: TComponent);
  30. begin
  31.   inherited;
  32.   FRequest := nil;
  33. end;
  34.  
  35. function TDMQueryTableProducer.Content: String;
  36. var
  37.   i: Integer;
  38. begin
  39.   Result := '';
  40.   if Query <> nil then
  41.   begin
  42.     Query.Close;
  43.     if Assigned(FRequest) then
  44.       for i:=0 to Pred(Query.ParamCount) do
  45.         Query.Params[i].Value := FRequest.Item[Query.Params[i].Name];
  46.     Query.Open;
  47.     if DoCreateContent then
  48.       Result := Header.Text + HTMLTable(Query, Self, MaxRows) + Footer.Text
  49.   end
  50. end {Content};
  51.  
  52. end.
  53.