以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 实时加载数据 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=179356) |
|
-- 作者:edisontsui -- 发布时间:2022/8/19 18:11:00 -- 实时加载数据 我有一个"销售单"这个数据表,希望在这个表里面输入“产品代号”时,能够从数据库的“物料字典”里面加载这个产品代号实时的库存数量,因为在我登录 foxtable 时与我现在输入这个产品代号时,这个产品代号在数据库里面的库存数量可能已经发生了变化,所以我希望得到当前的库存数量,而不是我登录系统时加载到的库存数量。这样的话,我不用专门去同步“物料字典”这个表,就可以得到最新的库存数据。请问有什么代码可以实现这个目标吗?谢谢。 |
|
-- 作者:chnfo -- 发布时间:2022/8/20 8:19:00 -- 直接定义一个后台查询表就可以了 |
|
-- 作者:有点蓝 -- 发布时间:2022/8/20 9:21:00 -- 每次都从后台查询需要的数据:http://www.foxtable.com/webhelp/topics/2902.htm |
|
-- 作者:edisontsui -- 发布时间:2022/8/20 14:58:00 -- 我在"物料字典"之 datacolchanged 里面设置了如下代码: If e.DataCol.Name = "物料编号" Then Dim Val As Single Val = DataTables("出入库").SQLCompute("Sum(出入库数量)","物料编号 = \'" & e.datarow("物料编号") & "\'") \'SQLCompute用于计算后台所有数据 e.DataRow("出入库累计T1") = Val End If 然后在 afteropenproject 里面设置了如下代码: DataTables("物料字典").DataCols("物料编号").RaiseDataColChanged() \'用于统计后台数据 目的是在打开项目时统计每个物料的出入库数量。但是,在启动 foxtable 时速度非常慢。有什么方法可以加快打开项目时的速度吗?谢谢。 |
|
-- 作者:有点蓝 -- 发布时间:2022/8/20 15:13:00 -- 没有必要做这种重置的计算。在业务处理的过程中,什么时候需要的时候再去数据库取数据。比如用户录入物料编号001,希望查看001的各种数据的时候,再用数据库查询001的数据 |
|
-- 作者:edisontsui -- 发布时间:2022/8/20 16:11:00 -- 好的。 |
|
-- 作者:edisontsui -- 发布时间:2022/8/23 16:27:00 --
|
|
-- 作者:有点蓝 -- 发布时间:2022/8/23 16:30:00 -- SQLCompute只能统计已经保存的数据 If e.DataCol.name = "出入库数量" Then e.DataRow.save DataTables("物料字典").DataCols("物料编号").RaiseDataColChanged("物料编号 = \'" & e.DataRow("物料编号") & "\'") end if |
|
-- 作者:edisontsui -- 发布时间:2022/8/23 17:12:00 -- datarowdeleted 事件里面是否也要加 e.DataRow.save,SQLCompute才能统计删除数据行之后的数据呢? |
|
-- 作者:有点蓝 -- 发布时间:2022/8/23 17:28:00 -- 是的 |