有A、B2张表,A表的状态字段有a、b、c、d4个值,假设A表有7条记录:
id号 序号  批号   状态
100  1111  1111-1  b   ...
101  1111  1111-2  b   ... 
102  1111  1111-3  b   ...
103  1111  1111-4  c   ...
104  1111  1111-5  d   ...
105  1112  1112-2  a   ...
106  1113  1113-1  b   ...,上面可以查序号,输入1111后,cxgrid中查出来5条数据,cx旁有一个rzchecklist控件,里面显示对应的批号: 1111-1、1111-2、1111-3、1111-4、1111-5,B表里有id号,sysid,处理状态,后续状态,备注,姓名等字段,A、Bid号相关联,B表sysid是主键,现在在rzchecklist的处于b状态的1111-1,1111-2,1111-31前打上勾,他们在B表的处理状态都是b状态,旁边有个combox控件,我可以自己选后续状态为c状态,B表相当于一个处理的历史表,现在有一个提交按钮,我怎么写代码,可以使打上勾的3个一起处理,提交完后A表的都更新成c状态,B表的3条相应的各自都插入表中?
或者不要rzchecklist,在A表添一个字段,cx中的批号前用这个字段做个checkbox用来打勾,还是一样的,提交代码怎么写?使打勾的插入B表历史表,怎么办,求高手啊???谢谢!!!

解决方案 »

  1.   

    如果想简单的话,就在A表设计一个触发器,当触发修改状态时,就将修改的记录保存到B表,而A表很好处理,用三层,或者用更新语句都新,三层的话就比较简单,批量更新,最后一个cds.ApplyUpdates(0),就完事了,
    如果用语句呢,就去循环 rzchecklist,判断是否选中的,记录下序号,然后生成更新语句,update A set 状态='c' where id号 in(....)
    最后在刷新一下当前数据集,完了~