数据集中进行记录统计
2012-10-04 01:43
190 查看
出处:http://www.winu.cn/space-14160-do-blog-id-1925.html TDBSumList在可视动态变化数据集中进行记录统计(属于Ehlib的一个控件)
【TDBSumList说明】 你可以使用TDBSumList在可视动态变化数据集中进行记录统计。在你想查看的数据集中设置相关的数据字段,然后写 SumListChanged 事件来指定在TDBSumList发生改变后所要做的操作。TDBSumList 的 SumCollection 属性上一个 TDBSum 对象容器。每个 TDBSum 对象是一个可以指定集合值的元件。 FieldName 和 GroupOperation 决定了集合值的类型,SumValue 控制当前的集合值。
TDBSumList 被埋藏于 DBGridEh 组件中,因此所的下面有关TDBGridEh.SumList 的说明与TDBGirdEh的TDBGridEh.SumList 属性的说明是一样的。
【如何工作以及为什么有时SumList的集合值计算不正确?】 你知道 data-aware 控件与数据集是通过 TDataLink 对象相连接的。 TDataLink 不允许快速重新计算集合值。例如,当从数据集中删除记录时,数据集发送deDataSetChange事件给所有的TDataLink对象,在当前局部过滤发生改变时,同样的事件也被发送了。因此当 TDataLink 接收到该事件时,它不得不在所有的数据集中重新计算集合值,甚至于仅从数据集中删除一条记录。在激活后, TDBSumList 重载了数据集的下列事件: OnAfterEdit, OnAfterInsert, OnAfterOpen, OnAfterPost, OnAfterScroll, OnBeforeDelete, OnAfterClose。这种方法避免了在所有的数据集中它。在不需要它时,又会出现其它的问题,比如: T 运行时指定这些事件。在指定上述事件之一以前,关闭 SumList。 在下面的情形下,SumList 发出存取错误信息。 SumList 试着向数据集返回事件,但数据集数据并未被删除。在SumList(或网格)以及数据集放置在不同的窗体(数据模块)这种情况下,可以显示数据。在这种情况下,试着在从数据集或数据模块中数据集数据被删除时关闭SumList。 如果你使用SetRange或ApplyRange事件,SumList 将不能跟踪数据集中发生的变化。但可以调用 SumList.RecalAll 方法。 在非BDE数据集的主/明细表中,SumList 不能跟踪数据变化。在主数据集激活状态数据集发生变化后,调用 SumList.RecalAll 方法。 在任何其它情况下,如果你发现了其它SumList的计算值不正确,你都可以调用 RecalAll 方法。
procedure TForm1.DBSumList1SumListChanged(Sender: TObject);vari: Int64;c: Currency ;beginc:=DBSumList1.SumCollection.Items[0].SumValue;kbmMemTable1.Edit;kbmMemTable1.FieldByName('je').AsFloat:=c;if kbmMemTable1.State in[dsEdit, dsInsert] thenkbmMemTable1.Post;end;
相关文章推荐
- Oracle数据库按时间进行分组统计数据的方法
- DataTable数据进行排序、检索、合并、分页、统计 [转]
- 【ORACLE】一个简单实用的对数据进行行列转换并统计的SQL语句
- 使用map来进行票数统计工作,循环输入多个人名,作为key存储到map中,对应的value就是该人获得的票数(即重复输入的次数),当重复输入时,需要对相应的数据进行修改。最红输quit结束循环,打印
- SQL数据进行排序、分组、统计10技巧
- DataTable中数据记录的统计
- 统计图中:仅用前几条数据记录来画统计图
- datagirdview进行数据统计
- ArcGIS runtime sdk for android 结合mpchartlib进行离线数据统计分析
- 使用聚合数据平台对电商网站进行流量以及访问统计
- DataTable中数据记录的统计
- 【ORACLE】一个简单实用的对数据进行行列转换并统计的SQL语句
- MySQL如何按天统计数据,没有记录的天自动补充0
- DataTable中数据记录的统计
- SQL SERVER2000教程-第五章 处理数据 第十九节 使用DECLARE 语句进行数据统计
- ado多次按条件使用一个记录集中的数据的方法
- Mysql分表数据通过Python进行汇总统计
- PHP 读取数据库 数据集中记录的总条数
- 使用SQL进行IIS日志中的访问记录统计
- MYSQL中GROUP BY进行数据统计