Foxtable(狐表)用户栏目专家坐堂 → [求助]关于联网多人增加行自动编号的代码的优化请教


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

主题:[求助]关于联网多人增加行自动编号的代码的优化请教

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/14 9:05:00 [显示全部帖子]

1、代码要写到dataRowAdded事件,不是ing事件。

 

2、看看 http://www.foxtable.com/webhelp/scr/1994.htm

 

http://www.foxtable.com/webhelp/scr/3008.htm

 

3、你的编号,不一定要连续,你可以把_Identify作为编号的一部分,这样能区别唯一。

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/14 10:40:00 [显示全部帖子]

以下是引用jwt在2017/11/14 9:27:00的发言:
这是个档案系统,档案编号就是简单的从00001一直增加到99999这种,我把代码写到ed也不行,网络延迟是硬伤。

 

那就加入_Identify处理,如生产 00001-001、00002-002、00002-002 这样的编号,即便前面相同,后面都不同。

 

目前这个问题,除非你用openQQ,否则延时、并发的问题都不能解决。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/11 14:53:00 [显示全部帖子]

Select Case e.DataCol.name
    Case "创建日期"     '由创建日期自动生成计划明细编码
        If e.DataRow.IsNull("创建日期") Then
            e.DataRow("编码") = Nothing
        Else
            If e.DataRow.IsNull("编码") Then

                e.DataRow.Save '保存之后,才会获取_Identify值
                Dim d As Date = e.DataRow("创建日期")
                Dim bh As String = Format(d,"yyMM") 
                Dim str As String = Format(e.DataRow("_Identify"),"00000")    
                e.DataRow("计划明细编码") = "JH" & bh & "-" & str
            End If
        End If
End Select

 

 


 回到顶部