【问题标题】:Filtering A TClientDataSet On A NestedDataSet Field在 NestedDataSet 字段上过滤 TClientDataSet
【发布时间】:2009-01-21 15:01:49
【问题描述】:

我正在开发一个几乎完成的小型应用程序,感谢 那些在这里帮助过我的人。不过,我还有最后一项任务。 我需要能够在 NestedDataSet 字段上过滤 TClientDataSet。

ClientDataset1
Field0: Name (Lake Name)
ClientDataset2
Field0: Species (Fish Species)

type
  TDataModule1 = class( TDataModule )
    ClientDataSet1: TClientDataSet;
    ClientDataSet2: TClientDataSet;
    ClientDataSet1Name: TStringField;
    ClientDataSet1County: TStringField;
    ClientDataSet1Town: TStringField;
    ClientDataSet1Area: TStringField;
    ClientDataSet1MaximumDepth: TStringField;
    ClientDataSet1MeanDepth: TStringField;
    ClientDataSet1MapFilename: TStringField;
    ClientDataSet1Species: TDataSetField;
    ClientDataSet2Species: TStringField;
    procedure DataModuleDestroy( Sender: TObject );
  private
    { Private declarations }
  public
    { Public declarations }
  end;

Data:
Nate Pond
    Brook trout
    Creek chub
    Golden shiner
Black Pond
    Brook trout
    Brown bullhead
    Common shiner
Lake Placid
    Lake trout
    Smallmouth bass
    Yellow perch

我需要过滤 ClientDataset1 以显示所有有布鲁克鳟鱼的湖泊 在 ClientDataset Species 字段中。

Filtered:
Nate Pond
    Brook trout
    Creek chub
    Golden shiner
Black Pond
    Brook trout
    Brown bullhead
    Common shiner

如何创建过滤器(或其他方式)来实现此目的? 是否有任何第三方组件可以做到这一点?

谢谢,

比尔

【问题讨论】:

    标签: delphi tclientdataset


    【解决方案1】:

    尝试将 OnFilterRecord 处理程序添加到主数据集,并在处理程序内的嵌套数据集上使用定位来查看记录是否存在。

    【讨论】:

      猜你喜欢
      • 2019-08-17
      • 2013-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-07
      • 2012-07-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多