2015-01-07 2 views
0

Я использовал предложенный ниже пользовательский код SSRS для пользователя: 20977, чтобы создать функцию, которая разделила бы строку и вернула бы разделенное значение или «».Пользовательский код разделения строк SSRS не работает

Все это прекрасно работало, но внезапно перестало работать, и я не могу понять, почему?

Public Function ExtractCode(Combined As String, Position As Integer) As String <br> 
    if (Split(Combined," - ").Length >=Position) Then <br> 
    Return Split(Combined," - ").GetValue(Position-1) <br> 
      Else <br> 
    Return "" <br> 
    End If <br> 
End Function 

этот код вызывается из отчета с:

=Code.ExtractCode(Fields!FreightForwarder_c.Value, 1) 
=Code.ExtractCode(Fields!FreightForwarder_c.Value, 2)etc.. 

Что может пойти не так здесь?

Заранее благодарим за любые предложения.

+1

Не работает означает, что именно происходит? Любые ошибки/исключения? –

+0

Извините, поле появилось пустым - но выяснилось, что запрос был изменен, поэтому текстовые поля перестали заполняться. Ожидал бы некоторого сообщения об ошибке, но никто не был показан :-( –

ответ

0

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

Пройдите через данные и проверьте, не передаете ли вы странные значения в качестве параметра.

Проверьте файл журнала сервера отчетов, если у вас нет сообщений.

0

спасибо за ваш ответ - прошел через все его части, и оказалось, что более старая версия запроса была скопирована по ошибке, и я не пришел, чтобы проверить это, потому что я знал, что я включил это поле. Странная вещь, однако, что enginge не выдавал никаких предупреждений о том, что добавленное поле не было заполнено запросом !?