以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]datatables (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=175844) |
-- 作者:crazyfengyu -- 发布时间:2022/3/21 17:44:00 -- [求助]datatables 请问使用 datatables().select 每次选择数据,数据是每次都在后台获取的,还是只是本地数据,没有同步后台其他人修改? |
-- 作者:有点蓝 -- 发布时间:2022/3/21 20:06:00 -- select的只是本地数据,sqlselect 才是在后台获取的:http://www.foxtable.com/webhelp/topics/2900.htm |
-- 作者:crazyfengyu -- 发布时间:2022/3/22 8:37:00 -- 使用sqlSelect获取到的数据取表达式列的值会报错 |
-- 作者:有点蓝 -- 发布时间:2022/3/22 8:45:00 -- 信息太少无法判断问题:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=150626 |
-- 作者:crazyfengyu -- 发布时间:2022/3/22 8:54:00 -- dim ls as (of datarow) = datatables("订单").sqlSelect("id=\'12\'") for each a as datarow in ls
Message.show(a("总数量")) next 上面取总数量的值就会报错,提示 “列‘总数量’不属于表”,实际上总数量是表达式列,用select查询到的可以正常取到,用sqlSelect可能是通过后台查询所以没有取到,请问有什么办法解决?
|
-- 作者:有点蓝 -- 发布时间:2022/3/22 9:17:00 -- sqlselect是直接取数据库的,而数据库是不存在表达式列的。 应该这样用 假设"总数量"表达式为:第一列 + 第二列,那么代码改为: for each a as datarow in ls
Message.show(a("第一列") + a("第二列")) next |
-- 作者:crazyfengyu -- 发布时间:2022/3/22 9:25:00 -- 还有其他的解决而办法吗?我的这个 总数量列 是根据子表计算的。子表自己又根据另一个父表的列进行计算,嵌套太深了。 |
-- 作者:有点蓝 -- 发布时间:2022/3/22 9:32:00 -- 加载数据,然后使用select datatables("订单").removefor("id=\'12\'") datatables("订单").appendload("id=\'12\'") dim ls as (of datarow) = datatables("订单").Select("id=\'12\'")
for each a as datarow in ls
Message.show(a("总数量")) next |
-- 作者:crazyfengyu -- 发布时间:2022/3/22 10:02:00 -- 多个子表数据重新加载操作起来还是有点复杂,请问如果在计划管理里面设置一段时间进行数据表(4-5个)重新加载,会不会造成系统卡死? |
-- 作者:有点蓝 -- 发布时间:2022/3/22 10:18:00 -- 会,也不建议这样做。 或者不要使用表达式列,改为使用数据列,使用代码计算
|