0
Вадяс
02.12.13
✎
20:14
|
Заполняю договор в ворде из 1С.
Документ = ПолучитьCOMОбъект("","Word.Application");
Документ.Documents.Open(Константы.ИмяШаблонаДоговора.Получить());
//Документ.ActiveDocument;
Замена = Документ.ActiveDocument.Range().Find;
Замена.Execute("пНомерДоговора", Ложь, Истина, Ложь, , , Истина, , Ложь, ОбщегоНазначения.ПолучитьНомерНаПечать(ЭтотОбъект));
Замена = Документ.ActiveDocument.Range().Find;
Замена.Execute("пДатаДоговора", Ложь, Истина, Ложь, , , Истина, , Ложь, Формат(Дата, "ДЛФ=DD"));
Замена = Документ.ActiveDocument.Range().Find;
Замена.Execute("пТуристы", Ложь, Истина, Ложь, , , Истина, , Ложь, ПолучитьТекстТуристов());
Проблема возникает с третьей заменой, так как ПолучитьТекстТуристов() возвращает длинную строку.
Как можно решить задачу?
Слишком длинный строковый параметр.
|
|
4
bborisko
02.12.13
✎
20:40
|
цитата "Разбиваешь вставляемую строку на строку с количеством символов 255-ДлинаСтроки("{"+Элемент.Ключ+"}")
потом к каждой отрезанной части перед вставкой в ворд дописываешь "{"+Элемент.Ключ+"}" вот и всё.
Таким образом у тебя цикл будет постоянно находить ту часть, которую надо заменить твоим длинным текстом и по кускам ты его заменишь"
|
|