2013-10-03 2 views
5

член Уважаемая община,Как вы заполняете текстовое поле SSRS с помощью значения DataSet?

Учитывая специфический Key (например, "user_name"), как делает один населён SSRS TextBox с соответствующим DataSetValue (например, "John Doe")?

Любое понимание, которое вы можете предоставить, будет принята с благодарностью!

КОНТЕКСТ

  • SQL Server = 2008 R2
  • IDE = Visual Studio 2012
  • ReportDataDataSet содержит данные, используемые для заполнения Tablix в тексте доклада
  • HeaderDataDataSet содержит данные, используемые для населения те два TextBox элементы в заголовке отчета
    • это DataSet содержит два столбца: ключ и значение

CONSTRAINTS

  • для этой конкретной проблемы, я не могу просто свяжите HeaderDataDataSet к Tablix в заголовке отчета ... Я должен заполнить TextBox элементов
  • Если отчет содержит несколько DataSets, и вы ссылаетесь на Fields коллекции в выражении ... вы получите «Выражение значения для пользователи текстового поля представляют собой совокупное выражение без видимости области ".

SAMPLE DATA

HeaderData

Key = "camera_name", Value = "Panomera - Терминал 1"

Key = "user_name", Value = "John Doe "

ответ

8

Использование набора данных под названием HeaderData как:

enter image description here

У меня есть несколько текстовых полей в заголовке отчета:

enter image description here

Где выражение выше:

=Max(IIf(Fields!Key.Value = "user_name" 
    , Fields!Value.Value, Nothing) 
    , "HeaderData") 

Это работает нормально:

enter image description here

Это работает, как он использует выражение IIf обнулять любые другие, чем при Key = user_name, затем берет Max от отсутствия Value значений NULL значения.

Поскольку вы ссылаетесь на набор данных за пределами табликса, вам нужна сводка и совокупность. Я использую Max, чтобы игнорировать значения NULL, что-то вроде First не будет. Судя по вашему описанию, там должно быть только одно значение NULL, поэтому должно быть хорошо.

+5

Для справки мой коллега нашел альтернативный ответ: '= Lookup (« user_name », Fields! Key.Value, Fields! Value.Value,« HeaderData »)' – Pressacco

+0

@Pressacco, спасибо за обновление, это приятно подход! –

+0

@Pressacco Это превосходно, спасибо! –

Смежные вопросы