以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 订单编号重复 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=193913) |
||||
-- 作者:denghui69986 -- 发布时间:2024/10/25 8:21:00 -- 订单编号重复 订单编号列按日期生成订单编号每天早上第一次打开录入订单就会有每个月第一个编号重复,老师帮忙看看什么原因导致每天早上打开录入第一个就会重复 此主题相关图片如下:截图订单编号.png |
||||
-- 作者:有点蓝 -- 发布时间:2024/10/25 8:39:00 -- 请上传实例测试 |
||||
-- 作者:denghui69986 -- 发布时间:2024/10/25 13:59:00 -- 当天不重复编号,换日期就重复编号 此主题相关图片如下:换日期重复编号.png
|
||||
-- 作者:有点蓝 -- 发布时间:2024/10/25 14:29:00 -- 设置的查询条件里的日期条件不正确。如果是按月生成编号,参考:http://www.foxtable.com/webhelp/topics/2403.htm,看一、按月生成编号是如何设置日期查询条件的 |
||||
-- 作者:denghui69986 -- 发布时间:2024/10/25 16:26:00 -- 没看明白,老师指点一下那里不对,谢谢 |
||||
-- 作者:有点蓝 -- 发布时间:2024/10/25 16:58:00 -- Dim d As Date = e.DataRow("日期") Dim y As Integer = d.Year Dim m As Integer = d.Month Dim Days As Integer = Date.DaysInMonth(y,m) Dim fd As Date = New Date(y,m,1) \'获得该月的第一天 Dim ld As Date = New Date(y,m,Days) \'获得该月的最后一天 Dim bh As String = 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(编号)","日期 >= #" & fd & "# And 日期 <= #" & ld & "# And [_Identify] <> " & e.DataRow("_Identify")) \'取得该月的最大编号 |