Как добавить код в отчет (службы Reporting Services)
В любом выражении можно вызвать собственный пользовательский код. Данный код можно предоставить следующими способами.
Напрямую внедрить в отчет код, написанный на Visual Basic. Если код ссылается на классы платформы Microsoft.NET Framework, не принадлежащие пространству имен System..::..Math или System..::..Convert, то в отчет нужно добавить ссылку. Дополнительные сведения см. в разделе Как добавить в отчет ссылку на сборку (службы Reporting Services). Дополнительные сведения о других ссылках, которые можно выполнить из кода, см. в разделе Использование в выражениях ссылок на пользовательский код (службы Reporting Services).
Предоставить сборку пользовательского кода, использующего платформу .NET Framework. Если предоставляется пользовательская сборка, ее следует установить как на компьютере, на котором создается отчет, так и на сервере отчетов, где выполняется просмотр отчета. Дополнительные сведения см. в разделе Использование пользовательских сборок с отчетами.
Добавление в отчет внедренного кода
В режиме конструктора щелкните правой кнопкой мыши в области конструктора, за границей отчета, и выберите команду Свойства отчета.
Щелкните Код.
В поле Пользовательский код введите код. Если при выполнении отчета в коде возникают ошибки, то выводятся предупреждения. В следующем примере создается пользовательская функция с именем ChangeWord, заменяющая слово «Bike» словом «Bicycle».
Public Function ChangeWord(ByVal s As String) As String Dim strBuilder As New System.Text.StringBuilder(s) If s.Contains("Bike") Then strBuilder.Replace("Bike", "Bicycle") Return strBuilder.ToString() Else : Return s End If End Function
В следующем примере показывается, как с помощью выражения передать этой функции поле набора данных с именем «Категория».
=Code.ChangeWord(Fields!Category.Value)
Если поместить такое выражение в ячейку таблицы, отображающую значения категории, то при возникновении в поле набора данных для данной строки слова «Bike», в качестве значения ячейки таблицы будет отображено слово «Bicycle».