jsDBExport.gif (954 bytes)jsDBExport

This component exports a dataset to the windows clipboard or a text file. You can export in tab delimited format so MS Excel can easily import your exported file.

Example: Export a TQuery dataset to a file which MS Excel can read:

jsDBExport.DataSource := dsQuery; // dataSource for a TQuery
jsDBExport.Destination := deFile;
jsDBExport.Delimited := True;
jsDBExport.DelimitedChar := dcTab;
jsDBExport.FileName := 'c:\mydir\export.txt';
jsDBExport.Execute;  // executes the export, creating the file

 

type TDestination = (deFile, deClipboard);
type TDelimitedChar = (dcTab, dcComma, dcPipe);


type TjsDBExport = class(TComponent)
private
  FjsFile : TjsFile;
  FDataLink: TFieldDataLink;
  FDestination : TDestination;
  FFileName : TFileName;
  FDelimited : Boolean;
  FDelimitedChar : TDelimitedChar;
  function GetDataSource : TDataSource;
  procedure SetDataSource(Value: TDataSource);
  function GetDestination : TDestination;
  procedure SetDestination(Value : TDestination);
  function GetFileName : TFileName;
  procedure SetFileName(Value : TFileName);
  function GetDelimitedChar : TDelimitedChar;
  procedure SetDelimitedChar(Value : TDelimitedChar);
protected
  procedure Notification(AComponent: TComponent; Operation: TOperation); override;
  function RPad(S : String; iPadLen : Integer) : String; virtual;
  function DoExportToClipboard : Boolean; virtual;
  function DoExportToFile : Boolean; virtual;
public
  constructor Create(AOwner : TComponent); override;
  destructor Destroy; override;
  function Execute : Boolean; virtual;
published
  property DataSource : TDataSource read GetDataSource write SetDataSource;
  property Destination : TDestination read GetDestination write SetDestination;
  property Delimited: Boolean read FDelimited write FDelimited;
  property FileName : TFileName read GetFileName write SetFileName;
  property DelimitedChar : TDelimitedChar read GetDelimitedChar write SetDelimitedChar;
end;