FireDAC.TFDMemTable.CloneCursor Sample

From RAD Studio Code Examples
Jump to: navigation, search

This sample demonstrates how to use the CloneCursor method to share the data belonging to another dataset.


You can find the CloneCursor sample project at:

  • Start | Programs | Embarcadero RAD Studio Alexandria | Samples and then navigate to:
    • Object Pascal\Database\FireDAC\Samples\Comp Layer\TFDMemTable\CloneCursor
  • Subversion Repository:
    • You can find Delphi code samples in GitHub Repositories. Search by name into the samples repositories according to your RAD Studio version.


The CloneCursor sample shows you how to clone a dataset. To this end, the sample uses the CloneCursor method of the TFDDataSet class. Moreover, the sample uses other methods to determine whether the current record is within a specified range.

How to Use the Sample

  1. Navigate to the location given above and open CDS_CachedUpdates.dproj.
  2. Press F9 or choose Run > Run.
  3. Click on the Use Connection Definition combo box and select an option.
    • Click on the CloneCursor button to clone the dataset.
    • Modify the Start range (OrderID) and End range (OrderID) labels.
    • Click on the CheckRange button.


File in Delphi Contains


The project itself.


The main form.


This sample uses three main components:

When you run the application, click on the Use Connection Definition combo box and select an option in order to define a connection. When you select an item of the combo box, the Active property of the cdsOrders table is set to True in order to open the dataset and read data from the database. Then, the sample displays a table using a TDBGrid component. Once the TDBGrid is filled, you can interact with the sample. Each of the following buttons implements an OnClick event to do what is described below:

  • When you click on the CloneCursor button, the sample clones the cdsOrders table using the CloneCursor method and sets the Active property of the cdsClone table to True in order to populate the table with the cloned data.
  • When you click on the CheckRange button, the sample uses the Start range (OrderID) and End range (OrderID) labels as the starting and ending values of the SetRange method. Then the sample applies the range to the cdsClone table using the GotoCurrent method.
  • When you click on the CancelRange button, the sample uses the CancelRange to remove the current range.


See Also