Есть ли способ сделать испанский / английский MailMerge?
У меня есть отчет SSRS с текстовыми полями на испанском и английском языках. Если строка набора данных является говорящим по-испански, выражение в каждом текстовом поле на испанском языке показывает это и скрывает текстовое поле на английском языке. Эти текстовые поля точно расположены друг над другом.
Мой начальник хочет, чтобы я использовал SSRS для создания электронной таблицы Excel из набора данных (это не сложно) и использовал шаблон Word для слияния. Тем не менее, у меня возникают проблемы, пытаясь выяснить, могу ли я скрыть весь английский, когда строка - это испанская строка, и наоборот. Это медицинские клиенты испанской и английской национальности.
Я могу делать почтовые слияния, прикрепленные к Recordset, я могу сделать один на английском, один на испанском. Я пытаюсь избежать этого и все это в одном Mail Merge.
Области, отмеченные красным цветом, изменятся на испанский перевод и / или формат даты. Даты являются легким делом, я могу использовать условное IIF, однако отформатированное тело, для которого у меня нет решения, основано на значении в поле "CL_Language", которое является "испанским" или "английским".
====================================
Поля слияния для дат и приветствия просты. Для текста нет поля слияния. И да, единственный вариант может быть для 2 отдельных отчетов с разными наборами записей.
2 ответа
Я нашел решение. Но это может быть очень сложно для клиента. Для этого нужно нажать Ctrl + F9, что создаст фигурные скобки {}. Внутри этих фигурных скобок помещается выражение IF, и я просто вставил все тело в испанском формате в истинную область, а все тело в английском - в ложную область.
{IF "CL_Language" = "испанский" "испанский текст здесь" "английский текст здесь"}
Очень странный синтаксис, и вам нужно щелкнуть правой кнопкой мыши по области, чтобы увидеть варианты, такие как "Переключить коды полей" (оператор IF скрыт), "Редактировать поле" и "Обновить поле". С Edit Field и Update Field вы получите всплывающее окно с полями в вашем наборе записей. Если вы увидели примеры в моем вопросе, вы увидите, что это большой неуклюжий текст AND ., Внутри него поле слияния, которое работает! Набор записей Excel уже содержит название месяца на правильном языке для каждой строки.
Поскольку нецелесообразно включать ссылки, срок действия которых может истечь, я включаю текст Google, который использовал для поиска этого решения. Затем я воспользовался огромным отформатированным фрагментом текста с полем слияния внутри него. Google это: "Если поле слияния, то"
Теперь это жизнеспособное решение для клиента, а не просто наличие шаблона Word для каждого языка?
Я думаю, что это слишком сложно, и я даже утка, когда бегаю. Кроме того, как только он заработает, если я посмотрю на переключаемый код, в поле "Условие" больше не будет указано имя поля, а будет значение в поле. {IF "Испанский" = "Испанский" или {IF "Английский" = "Испанский" вместо {IF "CL_Language" = "Испанский" или {IF "CL_Language" = "Английский"
Вот как можно получить доступ к полям, используя правую кнопку мыши. (помните, что ваши фигурные скобки должны быть созданы с помощью Control + F9).
Непонятно, в чем собственно проблема, но... Вместо того, чтобы скрывать текстовые поля, которые могут вызвать проблемы при экспорте и т. Д., Почему бы не установить для одного текстового поля правильный текст на языке, используя выражение?
Нечто подобное
=IIF(Fields!Language.Value = "English", Fields!MyEnglishText.Value, FieldsMySpanishText.Value)