在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
例如:Table1用于提取主表的数据,主键名为A,DataSource1连接Table1,用DBGrid1;Table2用于提取子表数据,外键为B,用DBGrid2显示。要求在DBGrid1的当前记录改变时,DBGrid2能显示对应的子表数据。 方法1:使用MasterField和MasterSource属性,该方法比较易用,但可控制程度稍低。只要指定Table2的MasterSource属性为DataSource1,在MasterField的对话框中把A B指定为Join Field即可实现主从表数据显示。 方法2:使用Filter和Filtered属性。该方法涉及的方面比较多,而且还有引号的问题,但可数据操作较灵活。同样是上面的控件。 Table1AfterScroll事件加入 if not Table1.IsEmpty then Table2.Filter:='B='+QuotedStr(Table1.FieldByName('A').AsString); else Table2.Filter:='B='+QuotedStr('-9999'); Table2.Filtered:=True; 该代码假设B字段是文本型字段,A不可能取值为'-9999' |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论