Foxtable(狐表)用户栏目专家坐堂 → 抄作业都抄不好,新人求指点,单号自动生成的问题


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

主题:抄作业都抄不好,新人求指点,单号自动生成的问题

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5039 威望:0 精华:0 注册:2017/9/1 23:28:00
抄作业都抄不好,新人求指点,单号自动生成的问题  发帖心情 Post By:2018/10/27 16:01:00 [只看该作者]

我要设计一个采购单,要求在点击“新增”后,生成一条新的空白单,采购单号要自动生成,格式为XX+年+月+日+编号,编号要自动累加。想来这个应该是比较初级的问题,就没提问题,直接在论坛检索,看到了甜老师的一段代码,想着直接抄过来就可以了,谁知调试了一个早晨都调不好,无奈,只能来这里发帖求教了,望各位老师给予指点。
-------------------------------------------------------------------------------------
甜老师的代码是这样:
DataRowAdded事件


Dim d As Date = Date.Today
Dim bh As String = "MY" & Format(d,"yyyyMM") '生成编号的前6位,4位年,2位月.
If e.DataRow("编号").StartsWith(bh) = False '如果编号的前6位不符
    Dim max As String
    Dim idx As Integer
    max = e.DataTable.Compute("Max(编号)","编号 like '" & bh & "%' And [_Identify] <> " & e.DataRow("_Identify")) '取得该月的最大编号
    If max > "" Then '如果存在最大编号
        idx = CInt(max.Substring(8,4)) + 1 '获得最大编号的后三位顺序号,并加1
    Else
        idx = 1 '否则顺序号等于1
    End If
    e.DataRow("编号") = bh &  Format(idx,"0000")
End If
--------------------------------------------------------------------------------------
但是我实际运行报错:datarow不是controleventargs的成员

再检索这个错误,甜老师在另外一个帖子说把 e.DataRow 改成 Tables("表A").Current

但是我改了之后还是报错。
我错在哪里呢??

附件的图片是我改甜老师代码后的报错截图

图片点击可在新窗口打开查看此主题相关图片如下:cw.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2018/10/27 16:11:59编辑过]

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5039 威望:0 精华:0 注册:2017/9/1 23:28:00
  发帖心情 Post By:2018/10/27 16:03:00 [只看该作者]

附件怎么没传上?

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106023 积分:539208 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/27 16:21:00 [只看该作者]

代码放到表格的DataRowAdded事件

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5039 威望:0 精华:0 注册:2017/9/1 23:28:00
  发帖心情 Post By:2018/10/27 16:35:00 [只看该作者]

终于明白了!!!谢谢蓝老师!

 回到顶部