Foxtable(狐表)用户栏目专家坐堂 → [求助]如何实现同一批选择的生成编号相同,下一批选择的生成编号往下编


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

主题:[求助]如何实现同一批选择的生成编号相同,下一批选择的生成编号往下编

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


加好友 发短信
等级:一尾狐 帖子:407 积分:5093 威望:0 精华:0 注册:2015/4/30 15:42:00
[求助]如何实现同一批选择的生成编号相同,下一批选择的生成编号往下编  发帖心情 Post By:2017/4/8 23:13:00 [只看该作者]

如何实现同一批选择的生成编号相同,下一批选择的生成编号往下编?如图


此主题相关图片如下:1.jpg
按此在新窗口浏览图片

此主题相关图片如下:2.jpg
按此在新窗口浏览图片


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/9 10:33:00 [只看该作者]

DataRowAdded事件

 

Dim d As Date = Date.Today
Dim bh As String = Format(d,"yyyy") '生成支付编号的前6位,4位年,2位月.

Dim max As String
Dim idx As Integer
max = e.DataTable.Compute("Max(支付编号)","支付编号 like '" & bh & "%' and 是否支付 = true") '取得该月的最大支付编号
If max > "" Then '如果存在最大支付编号
    idx = CInt(max.Substring(bh.length)) + 1 '获得最大支付编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
e.DataRow("支付编号") = bh & Format(idx,"000")


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


加好友 发短信
等级:一尾狐 帖子:407 积分:5093 威望:0 精华:0 注册:2015/4/30 15:42:00
  发帖心情 Post By:2017/4/9 13:10:00 [只看该作者]

有点色老师,我可能没说清楚,表里面的数据已经有了,当同批次选中要支付的多行时,生成编号相同,下一批次选择时编号往下编,有可能同一天分好几批次进行选择(因为属于不同的合同或者客户)

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/9 22:19:00 [只看该作者]

 做个按钮【生成下一个编号】,然后再勾选,勾选的行填充生成的编号

 

Dim d As Date = Date.Today
Dim bh As String = Format(d,"yyyy") '生成支付编号的前6位,4位年,2位月.

Dim max As String
Dim idx As Integer
max = DataTables("表C").Compute("Max(支付编号)","支付编号 like '" & bh & "%'") '取得该月的最大支付编号
If max > "" Then '如果存在最大支付编号
    idx = CInt(max.Substring(bh.length)) + 1 '获得最大支付编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
vars("支付编号") = bh & Format(idx,"000")

msgbox(vars("支付编号"))

 

 


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


加好友 发短信
等级:一尾狐 帖子:407 积分:5093 威望:0 精华:0 注册:2015/4/30 15:42:00
  发帖心情 Post By:2017/4/10 9:14:00 [只看该作者]

有点色老师,先勾选,再生成编号填充这样可以实现吗

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/10 9:15:00 [只看该作者]

以下是引用twef在2017/4/10 9:14:00的发言:
有点色老师,先勾选,再生成编号填充这样可以实现吗

 

也可以,生成编号的代码看4楼。

 

你把勾选了的,编号为空白的,填充为生成的支付编号,即可。


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


加好友 发短信
等级:一尾狐 帖子:407 积分:5093 威望:0 精华:0 注册:2015/4/30 15:42:00
  发帖心情 Post By:2017/4/10 9:39:00 [只看该作者]

有点色老师,如果按年月生成流水号,代码该怎么改呀

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/10 9:43:00 [只看该作者]

Dim d As Date = Date.Today
Dim bh As String = Format(d,"yyyyMM") '生成支付编号的前6位,4位年,2位月.

Dim max As String
Dim idx As Integer
max = DataTables("表C").Compute("Max(支付编号)","支付编号 like '" & bh & "%'") '取得该月的最大支付编号
If max > "" Then '如果存在最大支付编号
    idx = CInt(max.Substring(bh.length)) + 1 '获得最大支付编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
vars("支付编号") = bh & Format(idx,"000")

msgbox(vars("支付编号"))


 回到顶部