
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6910 8e941d3f-bd1b-0410-a28a-d453659cc2b4
93 lines
4.4 KiB
Plaintext
93 lines
4.4 KiB
Plaintext
================================================================================
|
|
TParadoxDataset for Lazarus
|
|
================================================================================
|
|
|
|
Current package can be found at:
|
|
https://sourceforge.net/p/lazarus-ccr/svn/HEAD/tree/components/tparadoxdataset/
|
|
|
|
--------------------------------------------------------------------------------
|
|
License
|
|
--------------------------------------------------------------------------------
|
|
The contents of this file are subject to the Mozilla Public License
|
|
Version 1.1 (the "License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
http://www.mozilla.org/MPL/
|
|
|
|
Alternatively, you may redistribute this library, use and/or modify it under the
|
|
terms of the GNU Lesser General Public License as published by the
|
|
Free Software Foundation; either version 2.1 of the License, or (at your option)
|
|
any later version.
|
|
You may obtain a copy of the LGPL at http://www.gnu.org/copyleft/.
|
|
|
|
Software distributed under the License is distributed on an "AS IS" basis,
|
|
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
|
|
specific language governing rights and limitations under the License.
|
|
|
|
--------------------------------------------------------------------------------
|
|
Summary
|
|
--------------------------------------------------------------------------------
|
|
TParadoxDataSet is a TDataSet that can read (but not write!) Paradox files up
|
|
to Version 7.
|
|
|
|
The motivation for having the component read-only is to provide a way to read
|
|
old Pardox files for converting to newer database formats.
|
|
|
|
The main characteristics are:
|
|
|
|
* Data-aware implementation, i.e. the component is a descendant of TDataset,
|
|
and you can use the standard data-aware Lazarus components to display the
|
|
table contents.
|
|
|
|
* All table levels up to version 7
|
|
|
|
* No external DLL needed (unlike the TParadox component that comes with
|
|
Lazarus). Works in 32- and 64-bit operating systems.
|
|
|
|
* Now supports BLOB fields, character encoding, filtering and bookmarks.
|
|
|
|
--------------------------------------------------------------------------------
|
|
Installation
|
|
--------------------------------------------------------------------------------
|
|
* If needed, unzip the files from the zip file to any directory.
|
|
|
|
* In Lazarus, open the package .lpk file with
|
|
"Package" > "Open package file (.lpk)".
|
|
In v0.2 there are two packages; both have the same content, but
|
|
lazparadox.lpk has a naming conflict with the Paradox package contained
|
|
in the Lazarus distribution; therefore it is recommended to install
|
|
lazparadoxpkg.lpk instead.
|
|
|
|
* If you don't want to install the component into the IDE, click on "Compile".
|
|
|
|
* If you want to install the component into the IDE, click on "Use" > "Install".
|
|
Confirm the prompt to rebuild the IDE. When Lazarus restarts you'll find the
|
|
component TParadoxDataset on palette "Data Access".
|
|
|
|
--------------------------------------------------------------------------------
|
|
Usage
|
|
--------------------------------------------------------------------------------
|
|
* Drop the TParadoxDataset component on the form.
|
|
|
|
* Specify the name of the table file (extension ".db") in property TableName
|
|
|
|
* Set Active to true in order to open the table. When, for example, a DBGrid
|
|
is linked to the dataset the table is immediately displayed.
|
|
|
|
* The encoding of text fields used in the file is displayed in the read-only
|
|
property InputEncoding. It is automatically converted to the encoding given
|
|
in property TargetEncoding which defaults to "UTF8". In the case that text
|
|
fields must be encoded differently specify the codepage name here, e.g.
|
|
"CP1252" for Western Europe code page (use the (case-insensitive) names
|
|
given in the LazUtils unit lconvencoding).
|
|
|
|
* Filtering: Set Filtered to false. Then define the filter conditon in property
|
|
Filter or use the OnFilterRecord event. Finally start the filtering action
|
|
by setting Filtered to true.
|
|
|
|
* Bookmarks: Store the currently active record as a bookmark by setting the
|
|
variable bookmark (which is of type TBookmark to ParadoxDataset1.GetBookmark.
|
|
For returning to this record, call ParadoxDataset1.GotoBookmark(boomark).
|
|
Since the component uses the RecNo as bookmarks it is not required to call
|
|
FreeBookmark.
|
|
|