Foxtable(狐表)用户栏目专家坐堂 → 自定义函数赋值出错


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

主题:自定义函数赋值出错

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


加好友 发短信
等级:童狐 帖子:248 积分:2895 威望:0 精华:0 注册:2017/10/15 20:04:00
自定义函数赋值出错  发帖心情 Post By:2021/8/24 22:56:00 [只看该作者]

我有一个自定义函数 CountPages 用于计算当有表格总共有几页
如果是直接FUNCTIONS.EXECUTE(CountPages) 是没有问题的
即可是放在MESSAGE.SHOW(FUNCTIONS.EXECUTE(CountPages))也能正确的显示页数
可是只要定义个值进行赋值则会出错
dim pg as integer = FUNCTIONS.EXECUTE(CountPages)
就会显示 关键字 'where' 附近有语法错误。

以下是CountPages自定义函数里的代码
Dim funcount As Integer = Args(0) '定义传入分页的每页行数
Dim sqltable As String=Args(1) '定义传入的SQL表语句
Dim funfilter As String = Args(2)'定义传入总计页的筛选条件
Dim cmd As New SQLCommand
Dim cnt As Integer
cmd.C
cmd.CommandText=CExp("selec t Count(1) f rom ({0} where {1}) t",sqltable,funfilter)
cnt = cmd.ExecuteScalar
Return Math.Ceiling(cnt / funcount) '计算总的页数,每页50行

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


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

自己调试一下
msgbox(CExp("select Count(1) f rom ({0} where {1}) t",sqltable,funfilter))

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


加好友 发短信
等级:童狐 帖子:248 积分:2895 威望:0 精华:0 注册:2017/10/15 20:04:00
  发帖心情 Post By:2021/8/24 23:35:00 [只看该作者]

已经发现问题 已经解决 非常感谢 是我定义变量的位置太前面
dim pg as integer = FUNCTIONS.EXECUTE(CountPages)
把这里放后面一点 相应的值有出现 就不会出问题了

 回到顶部