Sign in Join
Wiki copytemporary

TParadoxDataSet: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: TParadoxDataSet

OldNewLine
1+> **Note:** Paradox uses the **BDE** (Borland Database Engine) that is unmaintained and unsupported since around 2000.
2+
3+![](/wiki-images/3/37/Tparadoxdataset_150.png) **TParadoxDataSet** is a [[TDataSet]] that can read (***but not write!***) Paradox files up to Version 7.
4+
5+Its main characteristics are :
6+
7+- 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.
8+- All table levels up to version 7
9+- No external DLL needed (unlike the [[TParadox]] component that comes with Lazarus). Works in 32- and 64-bit operating systems.
10+- Now supports BLOB fields, character encoding, filtering and bookmarks.
11+
12+The motivation for having the component read-only is to provide a way to read old Paradox files for converting to newer database formats.
13+
14+### Author/License
15+
16+- Author: Christian Ulrich
17+- License: [Mozilla Public License 1.1](https://opensource.org/licenses/MPL-1.1), or [LGPL](http://www.opensource.org/licenses/lgpl-license.php)
18+
19+### Download
20+
21+The latest stable release (v0.2) can be found at
22+
23+- [Lazarus CCR](https://sourceforge.net/projects/lazarus-ccr/files/Paradox%20DataSet/tparadoxdataset-v0.2.zip/download)
24+
25+### Bug reporting / Feature Request
26+
27+Please report bugs to the [Lazarus Bugtracker](http://www.freepascal.org/mantis/set_project.php?project_id=3) in Category Packages
28+
29+### SVN
30+
31+You can get the latest source via SVN:
32+
33+``` bash
34+svn checkout https://svn.code.sf.net/p/lazarus-ccr/svn/components/tparadoxdataset
35+```
36+
37+### Change Log
38+
39+- 31 January 2007 - Initial release
40+- May 2019 - Update to current FPC/Lazarus versions, 64-bit, BLOB support, filtering, bookmarks, character encoding
41+
42+Status: Beta
43+
44+### Installation
45+
46+- If needed, unzip the files from the zip file to any directory.
47+- 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 [[TParadox|Paradox]] package contained in the Lazarus distribution; therefore it is recommended to install **lazparadoxpkg.lpk** instead.
48+- If you don't want to install the component into the IDE, click on "Compile".
49+- 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".
50+
51+### Usage
52+
53+- Drop the `TParadoxDataset` component on the form.
54+- Specify the name of the table file (extension ".db") in property `TableName`
55+- 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.
56+- 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*).
57+- **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`.
58+- **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`.
59+
60+## See also
61+
62+- [[TParadox]]
63+
64+---
65+*From the Free Pascal wiki, page "TParadoxDataSet", as it stood on 2019-05-12 after a change by Wp, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
66+Category: Components
67+Category: Databases
68+Category: Lazarus-CCR

Back to history