Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]重算下一行怎么写

1楼
抽烟男人 发表于:2008/9/7 11:07:00

用 recalc 只能重算敕列,或算当前行,下一行应该怎么写

2楼
kylin 发表于:2008/9/7 11:37:00
 e.datatables("入库数量").datacols("结余数量").recalc(e.Position+1)
3楼
抽烟男人 发表于:2008/9/7 11:40:00
谢了
4楼
抽烟男人 发表于:2008/9/7 11:50:00
好像不行,不知是哪错了
5楼
lxl 发表于:2008/9/7 11:56:00
以下是引用kylin在2008-9-7 11:37:00的发言:
 e.datatables("入库数量").datacols("结余数量").recalc(e.Position+1)

当然不行了 呵呵
e参数没有Position 属性
就是Table的Position属性 返回值是当前行位置 是一个数字,不可能做recalc的参数的.
Recalc的参数必须是DataRow类型

[此贴子已经被作者于2008-9-7 11:56:00编辑过]
6楼
抽烟男人 发表于:2008/9/7 11:59:00
那应该怎么样实现,lxl兄
7楼
lxl 发表于:2008/9/7 12:01:00
数据库各条记录之间是平等的关系,一般不会因为上条的变动影响下一条记录的值
易表中的流水帐公式都是对于数据库来说都是不规范的.
你说的重算下一条记录 不知道是什么情况下使用.
对于易表的流水帐公式在数据库中往往是通过查询来统计实现的.

当然,代码的灵活性很强,你说的也能通过[_Identify]列来实现,不过这是不规范的.
比如DataColChanged 事件中:
e.DataRow 表示当前列,那么可以得到e.DataRow("_Identify") 的值
然后用Filter方法找到[_Identify] 的值 等于e.DataRow("_Identify") + 1的列进行重算

8楼
抽烟男人 发表于:2008/9/7 12:04:00
我就是看中了流水帐的记录
你帮我看看http://www.foxtable.com/dispbbs.asp?boardid=2&id=331&page=1&star=1
共8 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03516 s, 2 queries.