本文主要是介绍23. 在LotusScript中利用视图的合计功能求和,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在关系型数据库中,我们可以使用SQL语言中的SUM函数对某一列的结果求和。Notes因为基于的是非结构化的数据模型,动态地查询文档集合,获取它们的域值并且进行求和之类的运算,成本很高,性能会很差;所以Notes采取的是给静态的视图按需更新索引的方式。在视图的列上,也提供了合计的功能。但是我们有时需要在程序里获取某个域值的加和。如果通过遍历一个DocumentCollection或EntryCollection来手工加和,效率很低。我们可不可以在LotusScript里利用视图的合计功能呢?
视图的合计值显示在不同于一般文档的合计行上,因此不能通过View.GetFirstEntry之类的方法获得。幸好Notes为我们提供了可以获得包括分类、合计在内的各种ViewEntry的ViewNavigator。它有各种各样的方法,可以在视图的树型结构中前进后退、上升下降,查询和获得我们需要的Entry,最后获得合计列上的值。
%REMFunction GetTotalDescription: Use a viewNavigator to get the total number of a matched categoryReturn the total number in a variant
%END REM
Public Function GetTotal(viewName As String, keys As Variant, colNum As Integer, dbPath As String)As VariantDim s As New NotesSessionDim db As NotesDatabaseDim result As VariantIf (dbPath="") ThenSet db=s.CurrentdatabaseElseSet db=s.Getdatabase(s.Curre
这篇关于23. 在LotusScript中利用视图的合计功能求和的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!