用Master-Detail方式,就可以了。

解决方案 »

  1.   

    如果中间可能还会包括一些计算的过程,还能在同一form中操作吗?
      

  2.   

    没有,Query也可以做MD方式的。
    QueryB的DataSource属性连接上与QueryA想连的DataSource。
    然后QueryB的Where语句中参数名要和QueryA中的字段名相同。
      

  3.   

    1.可在B表中设置筛选参数,在A表的AfterScroll事件中重置B表的各个参数值
    2.在A表的AfterScroll事件中设置B表的Filter属性
      

  4.   

    假设A(a,b,c),B(b,c,d)
    那么QueryA的SQL语句select a, b, c from A,与QueryA关联的Datasource是DSA。
    然后QueryB的SQL语句是select b, c, d from B where b = :b and c=:c,然后将QueryB的Datasource属性设为DSA。
    将两表的Active属性设为True,你就发现QueryA和QueryB已经是主从表了。
      

  5.   

    用Master-Detail就可以实现了,即将queryB的datasource属性设为queryA的datasource即可,然后再在queryB.sql.text或者filter中加入一些过滤条件就可以达到你的要求了。
      

  6.   

    以上各位说的好像只是满足一对一的关系啊,如果说A(a1,a2.a3),B(a,b,c)这种情况能,其中a1,a2,a3都和B中的a是多对一的关系,那用刚才的方法好像又会出错了是吗?
      

  7.   

    query生成好后将字段也生成
    将query2的mastersource 设成query1关联的datasource
    将masterfields中添加你要的关联条件Ok
      

  8.   

    那不是和chechy说的一样吗,还是不能实现多对一的关联查询啊。再次求教!!
      

  9.   

    SQL这么写:
    select a,b,c from B where a=:a1 or a=:a2 or a=:a3
    是不是这样?你试试。
      

  10.   

    to foxzz 你试过没有?你没试过怎么知道不能呢?我用的是mastersource和masterfields这根datasource完全是两个概念.masterfieds是谈出一个对话框,你可以在其中加上你想要的关联条件,也可加上多个
      

  11.   

    比如你的query1是A表,query2是B表,query1连接Datasource1
    那么你在query2的属性mastersource中选Datasource1,在masterfieds属性中双击会弹出一个对话框。左边是Query2中的字段,右边是Query1的字段。选中左右各选择一个然后点中间的Add按钮。如果还有其他关联字段继续上面的操作。
      

  12.   

    你可以用SQL语句,来实现,不知道你的具体要求是什么,用MASTERSOURCE也可以,如果其中有一些计算过程最好用SQL,