Итак, босс приходит ко мне и говорит: «Я хочу, чтобы значение каждого агента и проекта было в одной строке, а среднее значение всех остальных операторов - в следующей строке, чтобы я мог легко видеть, выше ли он или ниже среднего. "
таблица выглядит так:
dt.Columns.Add("AGENT", GetType(String))
dt.Columns.Add("PROJECT", GetType(String))
dt.Columns.Add("Sales", GetType(Integer))
dt.Columns.Add("Declines", GetType(Integer))
dt.Columns.Add("Margin", GetType(Integer))
Хорошо, все хорошо. Одна строка в таблице данных - это агент и проект. Следующая строка является средним значением всех других агентов и проекта следующим образом:
строка 1: Джон Смит, ProjectName, (другие значения столбца)
строка 2: Джон Смит, ProjectName & " СРЕДНЕГО / ВСЕГО ", (другие значения столбца)
Имя проекта удалено в отчете SSRS в строке СРЕДНЕЕ / ВСЕГО из-за ограниченного пространства на листе бумаги, на котором он напечатан.
Я делаю сортировку с помощью нашего стандартного способа сортировки данных.
Dim dataView As New DataView(dt1)
dataView.Sort = "AGENT,PROJECT"
dt1 = dataView.ToTable
Return dt1
Но теперь у босса появилось новое требование. Он хочет иметь возможность сортировки по другим столбцам в таблице, но хранить две строки (агент / проект и агент / проект AVERAGE / TOTAL) вместе. Поэтому, по сути, он хочет иметь возможность сортировать не по одной строке, а по двум строкам вместе, но значением сортировки может быть «AGENT, Margin». Очевидно, чтобы сохранить две строки вместе, я должен найти способ сортировки значения Project тоже.
Так что я озадачен и был бы признателен за любые ваши мысли. C# идеи также приветствуются. LINQ в порядке, но он должен стать датированным.