以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于自动编号的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=106680)

--  作者:benwong2013
--  发布时间:2017/9/13 16:37:00
--  关于自动编号的问题
若需要网络上编号的话需要openQQ来作为服务器,但考虑到日常人数不用太多的事情下,我考虑在提交记录的时候用按键来生成编号,试过是可行的,请问这样有没有什么弊端;

Dim NY As String ="SZ001" & "-" & Format(Date.Today,"yyyyMM") & "-"
Dim max As String
Dim idx As Integer
Max = DataTables("表A").SQLCompute("Max(第一列)","Substring(第一列,1,13) = \'"& NY &"\'")
If Max > "" Then
idx = CInt(max.Substring(13,3) + 1)
Else
idx = 1
End If
MessageBox.Show(NY & Format(idx,"000"))

--  作者:有点甜
--  发布时间:2017/9/13 17:06:00
--  

你生成编号后,必须马上赋值给第一列,然后保存那一行。不然,别人接着按下查找到的也是同样的编号

 

弊端是:两个人同时按下按钮,有可能查询到的最大编号一样,导致编号重复。


--  作者:积水成渊
--  发布时间:2017/10/21 11:15:00
--  
有点甜老师说的对,我现在就是遇到了这个尴尬的问题,导致单据编号重复