DataTable.DefaultView.Sort не работает - PullRequest
       16

DataTable.DefaultView.Sort не работает

2 голосов
/ 19 февраля 2010

Я заполняю DataTable, затем сортирую DefaultView этого DataTable.Когда я устанавливаю DataTable в качестве источника для моего отчета, сортировка не работает.Если это поможет, вот код (GetData возвращает действительный DataTable):

    Dim dt As DataTable = a.GetData(Parm1, Parm2, Parm3)

    If rbtSortByField1.Checked Then
        dt.DefaultView.Sort = "Field1 ASC"
    ElseIf rbtSortByField2.Checked Then
        dt.DefaultView.Sort = "Field2 ASC"
    ElseIf rbtSortByField3.Checked Then
        dt.DefaultView.Sort = "Field3 ASC"
    End If

    rpt.SetDataSource(dt.DefaultView.Table)
    'This also doesn't work
    'rpt.SetDataSource(dt)

Ответы [ 2 ]

1 голос
/ 17 ноября 2012

Вам нужно передать данные в Crystal, а не в дата, как в

datatable.DefaultView.Sort = "col1, col2, col3"
Dim dv As DataView = datatable.DefaultView 

myReportDocument.SetDataSource(dv)
1 голос
/ 19 февраля 2010

Предполагая, что это Crystal Report ...

См. Эту статью. Вы не можете сортировать данные на источнике данных, вам нужно, чтобы отчет выполнял сортировку.

http://it.toolbox.com/blogs/coding-dotnet/sorting-the-fields-in-crystal-report-programmatically-16201

Также рассматривается здесь:

http://msdn.microsoft.com/en-us/library/ms225717.aspx

...