具有缓存更新的 Delphi 主从数据集 - 如何循环遍历详细数据集中的所有记录

标签 delphi

我有一个主从数据集:订单和订单项,两个数据集都设置为缓存更新。问题是在保存订单项时我想更新数据库中的不同表,因此需要进行一些手动工作。我尝试通过检查来做到这一点

MTOrderItem.UpdatesPending

这部分工作正常,但是当我尝试使用循环遍历数据集中的项目时

  with MTOrderItem do
  begin
    First;
    while NOT Eof do 
     .....

仅获取所选订单(主数据集)的过滤订单项。如何循环遍历所有修改的详细信息(订单项目)记录

最佳答案

通常,当主当前记录发生更改时,详细信息数据集将重新打开,因此详细信息仅包含当前主记录的记录。

您应该加载所有详细记录并使用“过滤器”和“已过滤”属性手动对其进行过滤。

例如

Master.OnScroll
    Details.Filter = 'MasterID='+Master.FieldByName(ID).AsString
    Details.Filtered := True

关于具有缓存更新的 Delphi 主从数据集 - 如何循环遍历详细数据集中的所有记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6631653/

相关文章:

delphi - 分配 self 的后果

delphi - Delphi 2010 中的 SAML

delphi - Delphi中如何指定调用哪个基类的重写方法?

database - 使用 ACCESS 和 ADO 连接的 Delphi 数据库连接

delphi - delphi中使用发送输入的重复字符

delphi - Firebird 和 Delphi 2009 出现错误消息 "Incorrect values within SQLDA structure"

delphi - Delphi中如何获取用于互联网连接的IP

delphi - 如何更改 tcxgrid 行的颜色

android - 如何在知道 Jnet_Uri 的情况下将文件加载到 Android 上的流中?

delphi - IIS 和 Delphi - 获取 ISAPI 中的应用程序文件夹