1

Возможно ли выполнить хранимую процедуру внутри текстового поля? Нам нужно это, чтобы локализовать наш отчет.Выполнение хранимой процедуры внутри текстового поля для получения локализованного текста

Например, у нас есть хранимая процедура, которая возвращает локализованный текст для заданного Key и заданного LanguageId. Я хочу выполнить эту хранимую процедуру для каждого ярлыка (текстовое поле) с другим ключом внутри моего отчета.

Мы используем SSRS 2008.

+0

еще не определил набор данных для этой хранимой процедуры? –

+0

Да, я уже определил набор данных для хранимой процедуры ... – Roland

ответ

5

Я думаю, что у вас есть вещи немного перепутали, вы не можете «выполнить sproc внутри текстового поля».

Что вы можете сделать вместо этого, это создать набор данных, который получает все необходимые пар ключ/значение для текущего языка, что-то вроде этого:

EXEC usp_GetReportLabels 'en-US' 

/* Returns: 

    Key  Val 
    --------- ------------ 
    lbl1  Firstname 
    lbl2  Surname 
    etc  etc 
*/ 

На ваших текстовых вы можете использовать выражение, использующего Lookup Function к получить правильную строку из этого набора данных и отобразить значение метки.

Примечание: Вы указываете , но не редакция, я не думаю, что функция Lookup доступна в plain-2008. В этом случае вам потребуется немного изменить структуру набора данных, чтобы получить тот же эффект. Одним из решений будет PIVOT набор данных и сделать Key s в столбцы (набор данных будет содержать только одну строку в этом случае, так что вы можете сделать First(Fields!lbl1.Value)). Тем не менее, обходной путь.

+0

Я расширяю хранимую процедуру, поэтому она вернет таблицу с ключевыми значениями, а затем я буду использовать функцию поиска. Прекрасно работает! Спасибо – Roland

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

  • Нет связанных вопросов^_^