Foxtable(狐表)用户栏目专家坐堂 → 自动编号问题


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

主题:自动编号问题

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
自动编号问题  发帖心情 Post By:2020/6/4 9:05:00 [只看该作者]

抄了帮助文档,修改了相应的列而已,但编译失败,提示:没有可访问的的“computer” 接受此数目访问,因此重载决策失败。
错误代码: max = e.DataTable.Compute("Max("zzsqbh")","gzxx = '" & lb & "' And [_Identify] <> " & e.DataRow("_Identify")) '取得该类别的最大编号

代码如下:
 If e.DataRow.IsNull("gzxx") Then
            e.DataRow("zzsqbh") = Nothing
        Else
            Dim lb As String = e.DataRow("gzxx")
            If e.DataRow("zzsqbh").StartsWith(lb) = False '如果单据编号前缀不符
                Dim max As String
                Dim idx As Integer
                max = e.DataTable.Compute("Max("zzsqbh")","gzxx = '" & lb & "' And [_Identify] <> " & e.DataRow("_Identify")) '取得该类别的最大编号
                If max > "" Then '如果存在最大编号
                    idx = CInt(max.Substring(2,3)) + 1 '获得最大编号的后三位顺序号,并加1
                Else
                    idx = 1 '否则顺序号等于1
                End If
                e.DataRow("zzsqbh") = lb & Format(idx,"000")
            End If
        End If
为何?谢谢!
补充:表的主键是 [_Identify] 在命令窗口执行:
 dim dr as datarow=current.current.datarow
dim lb as string=dr("gzxx")
msgbox( max ="gzxx = '" & lb & "' And [_Identify] <> " & dr("_Identify"))
显示是正常的
[此贴子已经被作者于2020/6/4 9:22:03编辑过]

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


加好友 发短信
等级:超级版主 帖子:108958 积分:554345 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/4 9:15:00 [只看该作者]

max = e.DataTable.Compute("Max(zzsqbh)","gzxx = '" & lb & "' And [_Identify] <> " & e.DataRow("_Identify")) 

列名不需要双引号

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2020/6/4 9:23:00 [只看该作者]

谢谢!

 回到顶部