Ошибка в StiDataColumn...
Добавлено: 21 ноя 2007, 06:09
Возникла необходимость сформировать полное имя источника для компонента, в формате Имя_датасета.Имя_таблицы.Имя_Колонки.
Делаю это следующим образом:
1. Получаю колонку источника по ссылке на него:
2. Два варианта дающие разные результаты:
2.1.
2.2.
причем верный результат получается только в 2.2.
Делаю это следующим образом:
1. Получаю колонку источника по ссылке на него:
Код: Выделить всё
Dim dc As StiDataColumn = StiDataColumn.GetDataColumnFromColumnName(report.Dictionary, component.Text.Value)
2.1.
Код: Выделить всё
Dim dt As DataTable = dc.DataSource.DataTable
Dim strFullName As String
If dt.DataSet Is Nothing Then
Throw New InvalidOperationException("Источник компонента, не является полем таблицы датасета.")
Else
strFullName = String.Format("{0}.{1}", dt.DataSet.DataSetName, dt.TableName)
End If
strFullName = String.Format("{0}.{1}", strFullName, dc.NameInSource)
Код: Выделить всё
Dim ds As StiDataTableSource = Ctype(dc.DataSource, StiDataTableSource)
Dim strFullName As String
strFullName = String.Format("{0}.{1}", ds.NameInSource, dc.NameInSource)
причем верный результат получается только в 2.2.