我有一个DataTable
(CategoryUnsummarised
),其中有三列:Category
,DataSort
和Net
。
这用于生成按类别显示总计的报告。报告应用程序是Devexpress XtraReports。这在他们的布局脚本中。
此表的每个类别都有几行不同的网络。 DataSort列仅用于确保类别“ Other”在排序时显示在列表的最后。只会是1或2。
数据示例:
我正在尝试创建一个新表,该表是按类别和数据排序分组的Net的总和。
所需数据:
以下是我根据StockOverflow上的其他示例尝试过的方法,但是它给了我一个错误。
' Sets columns in CategorySummary table
CategorySummary = CategoryUnsummarised.clone()
' Now summarises the rows. Groups by Category and Datasort, and gives sum total.
Dim CatGroups = CategoryUnsummarised.AsEnumerable().
GroupBy(Function(row) New With {
Key .Category = row.Field(Of String)("Category"),
Key .DataSort = row.Field(Of integer)("DataSort")
})
For Each GroupRow In CatGroups
CategorySummary.Rows.Add(GroupRow.Key.Category, GroupRow.Sum(Function(row) row.Field(Of decimal)("Net")), GroupRow.Key.DataSort)
Next
这是我得到的错误:
如果我将GroupRow声明为变量,则它允许代码,但是我得到以下信息:
据我所知,Linq代码是有效的。
答案 0 :(得分:0)
您可以使用{
"pages": [
{
"label": "SomeLabel",
"name": "Some",
"sections": [
{
"type": "Repeat",
"label": "Label 1",
"name": "Name 1",
"rows": [
{
"pages": [
{
"label": "Label 1",
"name": "Name 1",
"sections": [
{
"type": "Flow",
"label": "Label 2",
"name": "Name 2",
"answers": [
{
"label": "Question Label",
"question": "Question",
"values": [
"Value A",
"Value B"
],
"valuesMetadata": [
{
"display": [
"Display A",
"Display B"
],
"row": {
"columns": []
}
}
]
}
]
}
]
}
]
}
],
"footer": null
}
]
}
]
}
方法:
GroupBy
这应该给出一个如何实现您想要的目标的想法。