CftClub.ru
Клуб специалистов ЦФТ-Банк

Вывод переменной с переносами строк в таблицу WORD

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы
Предыдущая тема :: Следующая тема  
Автор Сообщение
Andrey@Na
Участник


Вступление в Клуб: 11.09.2009
СообщениеВт Мар 22, 2011 14:42   Вывод переменной с переносами строк в таблицу WORD Ответить с цитатой
Полезность: Нет оценки
Доброго времени суток.
Такой вопрос.
Есть шаблон WORD, в нём таблица, в одной из ячеек таблицы переменная, в эту переменную необходимо передать Фамилию, Имя, Отчество таким образом, что бы в этой ячейке каждое новое ФИО начиналось с новой строки . Пробовал следующий вариант :
V_SIGN1 := V_SIGN1||pers.[FASE].[NAME]||CR$||LF$;
Если текст не в рамках таблицы работает чудесно - каждое новое ФИО с новой строки, но как только помещаю его в переменную, находящуюся в ячейке таблицы - перестаёт работать . Какие возможны решения ? Хотелось бы иметь некую универсальность в получении такой строки, т.к. операция работает на несколько разных шаблонов .
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеВт Мар 22, 2011 15:46   Re: Вывод переменной с переносами строк в таблицу WORD Ответить с цитатой
Полезность: Нет оценки
Andrey@Na пишет:
Доброго времени суток.
Такой вопрос.
Есть шаблон WORD, в нём таблица, в одной из ячеек таблицы переменная, в эту переменную необходимо передать Фамилию, Имя, Отчество таким образом, что бы в этой ячейке каждое новое ФИО начиналось с новой строки . Пробовал следующий вариант :
V_SIGN1 := V_SIGN1||pers.[FASE].[NAME]||CR$||LF$;
Если текст не в рамках таблицы работает чудесно - каждое новое ФИО с новой строки, но как только помещаю его в переменную, находящуюся в ячейке таблицы - перестаёт работать . Какие возможны решения ? Хотелось бы иметь некую универсальность в получении такой строки, т.к. операция работает на несколько разных шаблонов .

переменная какого типа? попробуйте сделать переменную типа MEMO данный тип как раз поддерживает перенос строк
скорее всего если тип данных СТРОКА то, символы возврата каретки и прокрутки строки не работают. Правда в пакете RTL про эти константы подробного описания в документации нет
_________________
всегда есть как минимум 2 выхода


Последний раз редактировалось: Alexsey (Вт Мар 22, 2011 15:55), всего редактировалось 1 раз
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеВт Мар 22, 2011 15:55    Ответить с цитатой
Полезность: Нет оценки
и в Word в свойствах самой закладки - тоже тип поля можно выставлять, может с этим попробовать.
kit83rd
Участник со стажем


Вступление в Клуб: 05.02.2010
СообщениеСр Мар 23, 2011 09:58    Ответить с цитатой
Полезность: Нет оценки
Пиши сразу в ячейку таблицы.

Только нужно экранировать символ переноса каретки
Код:

v_text :=    Replace(Replace(Replace(text, '"', '""'), chr(10), '"&chr(10)&"'), chr(13), '"&chr(13)&"');
Andrey@Na
Участник


Вступление в Клуб: 11.09.2009
СообщениеСр Мар 23, 2011 12:22    Ответить с цитатой
Полезность: 1
Всем спасибо за помощь.
Проблема крылась в следующем, в клиент-скритле использовалась следующая схема :
W.FormFields("Право_1_подписи").Result = V_SIGN1
А в [RUNTIME].[MSWORD_SCRIPT] "Библиотека VBA функций для печати в WORD" написано следующее
"' присвоение FormField.Result = x не работает со строками > 255 символов
' также это присвоение некорректно отображает в Word'е символ vbLF (10)"

Два первых предложенных варианта не прошли, последний не проверял, т.к. уже решил проблему путём использования в клиент-скрипте следующей схемы :
Call SetAllFormFields(WrdApp, W).

Ещё раз спасибо.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru