TLDR:当使用查找的字段不为空时,为什么在查找中禁用 group by 子句?
我想对表单中的字段进行自定义查找。该表CTable
如下所示:
Val Spec
------------
A alpha
A beta
A gamma
B delta
C epsilon
查找仅涉及Val
使用 EDT 定义的列,该列具有基本关系:Val == CTable.Val
查找显然给了我一个这样的列表:
A
A
A
B
C
让我们来一组,以摆脱所有重复的As,我想!类似于以下内容:
QueryBuildDataSource.orderMode(OrderMode::GroupBy);
QueryBuildDataSource.addGroupByField(fieldNum(CTable, Val));
现在是我的奇怪行为和我的问题的实际意义。在一个空字段上,group by 被正确执行,我得到了这个:
A
B
C
现在让我们在查找中选择“A”,然后再次执行查找,因为我想点击“B”。group by 现在由于未知原因被禁用,我得到的查找结果与以前的第一个结果相同。
为什么会这样?我该如何克服呢?