以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 不加载表的累计值计算 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=66923) |
||||
-- 作者:lvfox -- 发布时间:2015/4/16 1:04:00 -- 不加载表的累计值计算 请教:遵照狐狸爸爸的提示,参照了分页加载流水账,因为分页加载流水是内部表,帮助中没有外部表的例子,感觉好难哪。 试着抄了些代码,但不成功,录数据后,还报错:“标准表达式中数据类型不匹配 "。
帮助中分页流水帐的例子是动态加载表达式“余额”列,因实际中只需要数据列,在分页流水的例子中将“余额”列改成数据列后,试了下 是可以的,照着代码做到上传的例子中就不行了,与例子不同的就是 没加载外部表。 一头雾水,请赐教。例子附上。
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2015/4/16 8:31:00 -- 你这样计算流水账实在是太恐怖了,每次DataColchanged事件都会加载所有数据,还不如一开始就加载所有数据呢。 你仔细看看帮助的例子是如何设计的: http://www.foxtable.com/help/topics/2926.htm 提醒: 1、数据表的AfterLoad事件还有代码,帮助没有提及。 2、使用SQLFind和SQLCompute,直接基于SQLTable,也就是DataTables("窗口1_Table1")执行就行了,不需要另外再生成一个包括所有数据的临时表
[此贴子已经被作者于2015/4/16 8:38:11编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2015/4/16 8:36:00 -- 至于错误提示,是因为你这个表不是在Foxtable设计的,你在Access中设计表的时候,将_SortKey设置为字符型了,实际上这一列应该是高进度小数型。 你修改这一列的类型就可以了。 这种系统列,可以通过菜单添加的: http://www.foxtable.com/help/topics/1791.htm |
||||
-- 作者:lvfox -- 发布时间:2015/4/16 23:42:00 -- 狐狸88: 1. 按照您的建议加载了外部表,就可以了,因为要在表中录入数据并动态查看累计数,您说的直接基于SQLTable的 sqlFind在窗口执行,但sqltable不能编辑。 2.数据表的AfterLoad 事件,是分页流水账的帮助中的例子的代码,这个代码可以不写吗?
谢谢狐狸88的精辟点评,那样计算流水账是太恐怖了。 |
||||
-- 作者:lvfox -- 发布时间:2015/4/16 23:46:00 -- 分页流水账帮助中例子的代码如下: If e.DataTable.DataRows.count > 0 Then
请问这段代码不写可以吗?在例子中注释这段代码后,貌似也没有发生异样?
??? |
||||
-- 作者:Bin -- 发布时间:2015/4/17 8:34:00 -- \'模拟第一行的支出发生变化, 刷新已加载行的余额. |
||||
-- 作者:狐狸爸爸 -- 发布时间:2015/4/17 8:58:00 -- 必须写,这是非常关键的一步,否则上一页下一页之后,就无法正确计算流水账了。 |