Foxtable(狐表)用户栏目专家坐堂 → 【移动开发】销售日编号不能按照顺序递增,易乱,求解!


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

主题:【移动开发】销售日编号不能按照顺序递增,易乱,求解!

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
【移动开发】销售日编号不能按照顺序递增,易乱,求解!  发帖心情 Post By:2017/6/29 0:01:00 [只看该作者]

【移动开发】销售日编号不能按照顺序递增,易乱,求解!

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:服务器端.zip


代码如下:
Static Lastbh As String '通过这个Static变量可以访问上一次生成的编号,避免重复Compute
Dim prefix As String = Format(Date.now,"yyyyMMdd") '本次编号前缀
If Lastbh >"" AndAlso Lastbh.SubString(0,8) = prefix Then '如果上一次生成编号的前缀和本次相同
    Lastbh = prefix & "-" & Format(Cint(Lastbh.SubString(8,3)) + 1,"000") '在上次编号的基础上递增1
Else
    '取数据表中同前缀的最大编号
    Dim max As String=DataTables("客户资料").sqlCompute("Max(销售日编号)","销售日编号 like '" & prefix & "%'")
    If max = "" Then '如果不存在同前缀的编号
        Lastbh  = prefix & "001"  '同前缀的第一个编号
    Else
        Lastbh = prefix & "-" & Format(CInt(max.SubString(8,3)) + 1,"000") '在同前缀最大编号的基础上递增1
    End If
End If
Return Lastbh

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


加好友 发短信
等级:超级版主 帖子:107661 积分:547620 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/29 8:42:00 [只看该作者]


If max = "" Then '如果不存在同前缀的编号
        Lastbh  = prefix & "-" & "001"  '同前缀的第一个编号
    Else
        Lastbh = prefix & "-" & Format(CInt(max.SubString(8,3)) + 1,"000") '在同前缀最大编号的基础上递增1
    End If
[此贴子已经被作者于2017/6/29 8:42:26编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点蓝)If max = "" Then '如果不存在同前缀...  发帖心情 Post By:2017/6/29 8:55:00 [只看该作者]

有点蓝老师 这个是更正过了的 结果现在编号永远都是同样的一个编号  好纠结哦

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

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


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


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

If max = "" Then '如果不存在同前缀的编号
    Lastbh  = prefix & "-" & "001"  '同前缀的第一个编号
Else
    Lastbh = prefix & "-" & Format(CInt(max.SubString(9,3)) + 1,"000") '在同前缀最大编号的基础上递增1
End If

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


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

If max = "" Then '如果不存在同前缀的编号
    Lastbh  = prefix & "-" & "001"  '同前缀的第一个编号
Else
    Lastbh = prefix & "-" & Format(CInt(max.SubString(prefix.length+1,3)) + 1,"000") '在同前缀最大编号的基础上递增1
End If

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点色)If max = "" Then '如果不存在同前缀...  发帖心情 Post By:2017/6/29 9:45:00 [只看该作者]

采用这个还是不得行,编号还是只有一个
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:服务器端0628.zip

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


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


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

Static Lastbh As String '通过这个Static变量可以访问上一次生成的编号,避免重复Compute
Dim prefix As String = Format(Date.now,"yyyyMMdd") '本次编号前缀
If Lastbh >"" AndAlso Lastbh.SubString(0,prefix.length) = prefix Then '如果上一次生成编号的前缀和本次相同
    Lastbh = prefix & "-" & Format(Cint(Lastbh.SubString(prefix.length+1,3)) + 1,"000") '在上次编号的基础上递增1
Else
    '取数据表中同前缀的最大编号
    Dim max As String=DataTables("客户资料").sqlCompute("Max(销售日编号)","销售日编号 like '" & prefix & "%'")
    If max = "" Then '如果不存在同前缀的编号
        Lastbh  = prefix & "-" & "001"  '同前缀的第一个编号
    Else
         Lastbh = prefix & "-" & Format(CInt(max.SubString(prefix.length+1,3)) + 1,"000")'在同前缀最大编号的基础上递增1
    End If
End If
Return Lastbh
[此贴子已经被作者于2017/6/29 10:32:41编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点色)Static Lastbh As String '通过这个S...  发帖心情 Post By:2017/6/29 10:37:00 [只看该作者]

谢谢  !辛苦了 有点色老师

 回到顶部