L leader47 Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #1 用户A 和B 同时新建一个单,同时产生单号 01。这种情况,怎样做,A 和 B 各自能正确保存自己的记录,互相不影响。大家是怎样实现的?
N notebook800 Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #2 加一个序列,单号根据序列产生,在before insert for each row 时给单号复值,这样就可以避免重复了
Z znxia Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #3 或者在OnBeforePost事件中,重新生成该单号。
D de410 Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #6 在保存时,如果发现有此单号,当然是新增了,不然会把别人纪录覆盖掉~~
L leader47 Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #7 问题是,在保存时,如果发现有此单号,是新增还是修改记录?是怎样知道要保存的这条记录是新增保存还是修改保存?
Z znxia Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #8 procedure TForm1.Table1BeforePost(DataSet: TDataSet);begin if DataSet.State=dsEdit then exit;//如果是编辑状态则直接退出 下面重新生成号码end;
procedure TForm1.Table1BeforePost(DataSet: TDataSet);begin if DataSet.State=dsEdit then exit;//如果是编辑状态则直接退出 下面重新生成号码end;
S shhw Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-03 #9 建议在建立新单的同时就创建一个对应的ID号,并插入到表中,保存时只要更新其它字段就可以了,如果放弃保存怎删除那条记录
Z zkktom Unregistered / Unconfirmed GUEST, unregistred user! 2009-06-05 #10 很简单啊 在保存的时候先搜索下你的单号是否存在,如果存在就重新分配。(当然是指在新增的情况下,编辑的时候不需要)