近日,使用Delphi+ADO组件开发一个主-明细表的输入界面,主-明细表的关联已建立,查询时运行效果为预期,但在作为输入时遇到下面问题:主表新增记录时,仍处理编辑状态,这时主表与明细表的关联字段还未保存,在明细输入时就没法取行主表的关联字段的值,还有,用户可能取消输入时,主-明细表的内容均无效,我该如何处理主-明细表的输入?谁有ADO连接的主-明细表输入例子吗?
给我一份 [email protected]
谢谢大家~

解决方案 »

  1.   

    设成ltBatchOptimistic模式
    在从表的beforeinsert事件中给关连字段付值
    取消用adoquery1.cancelbatch
      

  2.   

    TO neilwq(啄木鸟) 
        
       在从表的beforeinsert事件中给关连字段付值   但是我的主表关连字段还没有值,是主表的自动字段~~~~~~   该怎样处理
      

  3.   

    但是我的主表关连字段还没有值,是主表的自动字段~~~~~~   该怎样处理
    -----------------------------------------------------
    在新增时 从表.datasource:=nil
    在保存时先保存主表,然后取得关联的值,然后赋给从表,再保存从表,
    再 从表.datasource:=datasource1
    取消时同样要执行 从表.datasource:=datasource1
      

  4.   

    在从表添加时先主表的changcount是否>0,或主表是否还处在添加或编辑,
    然后提示先保存主表,才能对从表进行操作!
    也可在主表进行添加的时候把从表的添加按纽都visible:=false!
    等监控保存后再另从表的visible:=true;
    当从表进行添加的时候判断他的关联字段是否为空,如果为空就把与主表关联的
    自动字段插到从表的关联字段中来啊!
      

  5.   

    To neilwq(啄木鸟) 
     
     取消部份能说详细点吗?可能的情况是主从表均取消操作!!!!! 有你做的例子给我吗?谢谢~~ [email protected]