因为报表的建立很多是复制的别的类型差不多的报表得来,结果造成一些莫名其妙的问题

比如数据源的排序被控件改了,因为有分组小计分组的字段等设置会影响排序.正常的设计是这样的 

 groupheader2 为何也要group 因为 这个表头需要在分页的时候也要显示,也只有用group的band 才有,重复显示在每页的选项

另外我们要有小计 ,自然要有 用于分组的字段.可以在groupheader1内设置如下

接着添加字段,当然也可以在新建报表的时候选上 参与分组的使用字段.

 

排序选择 none.就不影响数据源的排序了

 

以上就是标准的分组小计的dev报表设计, 如果还存在问题,只能删掉按照这样重建就可以了.

后记:因为有自定义模版问题,要充分注意导入模版的次数,比如打开报表出现重复导入模版,尽管程序不报错,但里边的分组字段是多了.导致了排序不按数据源的来了. 这也是我排查到最后发现的问题.

通过设计界面下边分组与排序可以看出字段重复了,本来只需一个

 还有就是比如改变小计的字段 那需要导入模版,然后修改groupfield 数组内的值,初始化后要清空

GroupField[] 然后再加入group的分组字段.
 this.GroupHeader1.GroupFields.Clear();
 this.GroupHeader1.GroupFields.AddRange(new DevExpress.XtraReports.UI.GroupField[] 
    new DevExpress.XtraReports.UI.GroupField("ProductsName", DevExpress.XtraReports.UI.XRColumnSortOrder.None)});
                this.xrTableCell22.ExpressionBindings.AddRange(new DevExpress.XtraReports.UI.ExpressionBinding[] {
            new DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[ProductsName]")});

 

posted on 2023-06-10 10:23  小石头的一天  阅读(99)  评论(0编辑  收藏  举报