Lotus notes 如何识别已定义列总计的notesView列?

Lotus notes 如何识别已定义列总计的notesView列?,lotus-notes,lotus-domino,lotusscript,Lotus Notes,Lotus Domino,Lotusscript,我有几个视图在这些视图的某些列中定义了“列总计”。总计可以在每个视图中的不同位置。我正在寻找一种快速、可靠的方法,在扫描这些列和视图之前识别哪些列有总计 理想情况下,我希望列定义(NotesViewColumn)上有一个'isTotal'属性,但该属性未定义/可用。 我可以看到ColumnValues数组中的totals确实返回了一个“double”数据类型,其中有一个列存在,但我只能在开始扫描视图中的数据后才能看到这个数据类型,我希望在开始查看数据之前看到这个细节。(有关信息,category

我有几个视图在这些视图的某些列中定义了“列总计”。总计可以在每个视图中的不同位置。我正在寻找一种快速、可靠的方法,在扫描这些列和视图之前识别哪些列有总计

理想情况下,我希望列定义(NotesViewColumn)上有一个'isTotal'属性,但该属性未定义/可用。

我可以看到ColumnValues数组中的totals确实返回了一个“double”数据类型,其中有一个列存在,但我只能在开始扫描视图中的数据后才能看到这个数据类型,我希望在开始查看数据之前看到这个细节。(有关信息,category notesViewEntry的ColumnValues是一个数组,其中包含:cat列的字符串、未计数字段的“empty”以及总计的双精度值)

我可以(当然)在某个地方硬编码这个细节,但这样做似乎太过时了。我可以通过“getFirstDoc”在“预循环”检查中计算出列值,但这似乎是“浪费”


PS:我见过一个叫做“ColumnValuesIndex”的东西,但这似乎是一个我不愿意使用的未记录的特性。然而,如果有一个“isTotal”未记录的特性,我会同意的

在扫描数据之前,我能想到的唯一解决方案是将视图设计导出到DXL,然后检查DXL中指定每列是否显示总计的属性或元素。
我假设DXL中的视图列具有用于此目的的属性或子元素。我还没查过


如果您从未做过类似的事情,使用
NotesDXLExporter
NotesDOMParser
NotesSAXParser
,您可以将选定的设计元素导出到内存中的DXL中,并以编程方式对其进行分析。

如原始帖子中所述,查看NotesViewEntry(NVE)的列值在类别行上,确实提供了一个值数组,可用于确定任何特定列是类别字符串、空列还是合计列。总计的数据类型为double,因此单步遍历循环中的列可以轻松地标记总计

如果视图具有类别,则视图中的第一个NVE将提供这些详细信息。一个简单的“NotesView.GetFirstEntry().ColumnValues”将返回数组。如果视图包含总计,但不包含类别,则可以为视图底部的总计行“GetLastEntry”

然后,读取总计只是查找类别行(nve.IsCategory)并从nve.ColumnValue中提取总计的一种情况


性能是合理的,并且可以通过构建总数所在位置的布尔数组预循环来加快性能。

谢谢您的回答。与检查单个文档的列值“预循环”或读取预先计算的DXL摘要相比,DXL提取可能要慢得多、复杂得多。理想情况下,我只想要一些简单的东西,可以在扫描这些视图之前进行动态检查。