主明细表中,父表记录用dbedit录入,明细表记录要根据主表字段的值从其它表中挑出供修改后保存。那么,明细表的记录的插入写在哪个事件中较好?(50分)

  • 主题发起人 主题发起人 zazinfo
  • 开始时间 开始时间
Z

zazinfo

Unregistered / Unconfirmed
GUEST, unregistred user!
主明细表中,父表记录用dbedit录入,明细表记录要根据主表字段的值从其它表中
挑出供修改后保存。那么,明细表的记录的插入写在哪个事件中较好?
 
在父表的 DBEdit 连接的 DataSource 的 OnUpDateData 事件中。
 
这样的话,会不会在我修改后再post时将记录再重新插入明细表中,会出乱子的。
 
最好要有个事务(用在主表的保存的时候)
 
可以在关键字的OnChange事件通过Query来动态筛选子表的记录以供修改。
 
我程序中记录插入的关系字段并不是主表中的关键字,我是说如何判断和在哪里判断
该字段是正在修改(可能是修改为新的),还是在新增,根据此而判断是否插入记录。
 
而且,当我离开浏览状态,按下新增按钮时,父表的 DBEdit 连接的 DataSource
的 OnUpDateData 事件好象也会发生,其它动作也会触发它发生啊。
 
主表触发器
 
触发器要如何写?
 
而且,当我需要插入多条明细时,dbgrid老是只显示最后一条,而明细中有些字段还
是需要修改的,不知各位是如何解决这个问题的。
 
我也有类似问题,主表要一个单号,子表记录这个单号,由于可能会取消单据,
数据是不可以在提交前写入数据库的。要保证单号连续,如何解决。
 
而且,我主表中有一字段是对应明细的条数,这种应该如何处理?
 
还有,我插入的记录有的字段为空,需要手工填上去。
 
我在ACCESS中做过,要这样实现(笨办法):
1.多设几个MAST字段,当逐一输入不同的条件的时候,子记录条数就会增加(多于所需要的记录)
2.在主MAST记录中设一个DBEDit字段,在DBGRID中双击的时候就,将该记录复制到子表中去
这种情况出现在先有子表,后生成主表的情况,比如先有订单号,然后又有了预定的提单号(关单号),再挑订单组织出运
不知道是不是理解正确?
 
OnNewRecord 事件。
 
高深,看得偶头晕晕 :)

偶就在onnewrecord处理,最后按不同状态写相应的处理
 
如果写在OnNewRecord中的话,我的明细记录要根据主表的中间某些字段来提取,
这样是否方便?如果方便,该怎么写?
 
在OnNewRecord和BeforePost事件中写都可以。
 
随便~~~~~~~~
只要你用事务处理保护一下就行了。
 
随便~~~~~~~~~~~
只要你用事务处理保护一下就行了。
 
后退
顶部