一般我们的明细表的更新方式为批更新方式,所以当记录处于修改状态时可能我们要修改多条明细记录,然后再提交保存,但当我们的明细表在编辑时,在DBGrid中移动明细记录时发现明细记录自动从编辑状态转到了浏览状态,使我们不能修改了,如何可以使主记录处于编辑状态时明细数据则一直处于编辑状态,直到提交为止, 而不会因为在明细Grid中移动时使明细表的状态切换到浏览模式

解决方案 »

  1.   

    还有在插入记录的时候
    如果执行
    TableMaster.Append;
    TableDetail.Append;
    录入记录则无法保存,提示什么无效空值等
    如果只执行TableMaster.append则可以添加主表中数据,必须在提交保存后再修改才可以添加明细记录
    请问各位在处理明细数据处理时是如何做的,可以指条解决方案或给出一些示例代码吗?
      

  2.   

    可以的,我以前也遇到过这个问题。现在解决了。
    設置adoquery的locktype属性为ltBatchOptimistic
    把adoquery1.UpdateBatch();這條命令,放在你的保存按鈕中adoquery1.post 之後.
    這樣你在dbgrid上的所有操作都沒有保存,
    除非執行了adoquery1.UpdateBatch()