以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  单号始终不变,请老师帮忙指正  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=140561)

--  作者:xxfoxtable
--  发布时间:2019/9/8 20:18:00
--  单号始终不变,请老师帮忙指正
Dim dr As Row=Tables("产品销售").addnew
Dim bh As String ="XS" & Format(Date.Today ,"yyyyMMdd") \'取得编号的8位前缀
Dim  max As String
Dim  idx As  Integer
max = DataTables("产品销售").sqlCompute("Max(销售单号)","销售日期 >= \'" & Date.Today & "\' and 销售日期 <= \'" & Date.Today.AddDays(1) & "\' and 销售单号 like \'XS*\' " ) \'取得该天的最大编号
If  max > "" Then \'如果存在最大编号
    idx = CInt(max.Substring(10,4)) + 1  \'获得最大编号的后三位顺序号,并加1
Else
    idx = 1 \'否则顺序号等于1
End  If
dr("销售单号") = bh  & Format(idx,"0000")

--  作者:有点蓝
--  发布时间:2019/9/8 22:31:00
--  
max = DataTables("产品销售").sqlCompute("Max(销售单号)","销售日期 >= \'" & Date.Today & "\' and 销售日期 < \'" & Date.Today.AddDays(1) & "\' and 销售单号 like \'XS*\' " ) \'取得该天的最大编号
--  作者:xxfoxtable
--  发布时间:2019/9/8 22:41:00
--  
老师,单号还是不变
--  作者:有点蓝
--  发布时间:2019/9/8 22:58:00
--  
上传实例测试。

sqlCompute是查询已经保存的数据的,新增的行必须马上保存

--  作者:xxfoxtable
--  发布时间:2019/9/8 23:05:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.rar


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:data.rar


[此贴子已经被作者于2019/9/8 23:05:22编辑过]

--  作者:有点蓝
--  发布时间:2019/9/9 8:44:00
--  
... & "\' and 销售单号 like \'XS%\' " )