Foxtable(狐表)用户栏目专家坐堂 → [分享] 新版《网络环境下复杂的不重复编号》


  共有16806人关注过本帖树形打印复制链接

主题:[分享] 新版《网络环境下复杂的不重复编号》

帅哥哟,离线,有人找我吗?
supwork
  41楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2015/3/15 23:04:00 [只看该作者]

不错

 回到顶部
帅哥哟,离线,有人找我吗?
klg1011
  42楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:320 积分:2798 威望:0 精华:0 注册:2013/1/30 17:49:00
  发帖心情 Post By:2015/4/18 12:30:00 [只看该作者]

发现个问题,按程版的方法自动编号,当打开添加窗口后,会自动生成编号,这时候后台就已经自动写入了该编号,如果此时我又不想添加项目了,点击取消关闭了添加窗口,但后台却已经新增了一个编号,而此编号却没有被真正使用。下次再添加时又会从该编号之后添加编号。从此会产生一些无意义的编号,这该怎么解决?

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  43楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7236 积分:40597 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2015/4/18 12:37:00 [只看该作者]

我的方案是:添加一行即生成了编号,删除一行回收编号供下次利用,难道您在添加行操作已经开始的过程中来终止添加行操作?


 回到顶部
帅哥哟,离线,有人找我吗?
klg1011
  44楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:320 积分:2798 威望:0 精华:0 注册:2013/1/30 17:49:00
  发帖心情 Post By:2015/4/18 13:45:00 [只看该作者]

现在的问题是我新增了一行,此时还没有保存,取消按钮里用的是reject命令,Tables("登记表").Current.Reject,这样就可以把新增的一行恢复掉,但却不会触发BeforeDeleteDataRow事件,你的回收代码是写在BeforeDeleteDataRow这里面的。


 回到顶部
帅哥哟,离线,有人找我吗?
klg1011
  45楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:320 积分:2798 威望:0 精华:0 注册:2013/1/30 17:49:00
  发帖心情 Post By:2015/4/18 14:31:00 [只看该作者]

问题解决了,想了个折中办法,在取消按钮里添加了逻辑判断:
If vars("添加") = True
    Tables("回款登记表").Current.Delete
    
Else
    Tables("回款登记表").Current.Reject
    
End If
Tables("回款登记表").AllowEdit = False
vars("添加") = False

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  46楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7236 积分:40597 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2015/4/19 1:42:00 [只看该作者]

二、DataRowAdded事件代码:

 

……

 

’最后一行添加如下代码:

e.datarow.save() '这样就杜绝了使用Tables("登记表").Current.Reject撤销命令,只有删除该行!


 回到顶部
总数 46 上一页 1 2 3 4 5