Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 мар 2024, 20:38

Внешняя печатная форма зависает на сборе данных

Автор vanek516, 11 апр 2016, 11:52

0 Пользователей и 1 гость просматривают эту тему.

vanek516

Добрый день,

Есть внешняя печатная форма, генерирующая word-файл, на локальной копи базы формирование doc файла происходит за 7-10 сек, на рабочей зависает. Пробовал с той же версией Office, то же самое. В чем может быть проблема, куда копать?

Заранее спасибо.

Luzer1C

Как происходит обращение к word файлу? Через COMОбъект или посредством макета?
Если через COMОбъект, то у пользователей может не быть прав доступа для его создания на сервере.
Халамбалам.

vanek516

Цитата: Luzer1C от 12 апр 2016, 05:49Как происходит обращение к word файлу? Через COMОбъект или посредством макета?
Если через COMОбъект, то у пользователей может не быть прав доступа для его создания на сервере.

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

Функция ПоискИЗаменаВВорде(ОбъектВорд,знач ТекстПоиска = "",знач ТекстЗамены = "",ЗаменитьВсе = Истина)

ДляВозврата = Истина;

ТекстЗамены = Строка(ТекстЗамены);
ТекстПоиска = Строка(ТекстПоиска);

ОбъектВорд.Selection.Collapse();
ОбъектВорд.Selection.Find.Forward = True;
ОбъектВорд.Selection.Find.Text = ТекстПоиска;
ОбъектВорд.Selection.Find.Replacement.Text = ТекстЗамены;
ОбъектВорд.Selection.Find.Execute(, , , , , , , , , , 00000002);
// http://infostart.ru/public/364753/


Возврат ДляВозврата;
КонецФункции




vitasw

Это вы привели уже исправленный код или до вашего исправления?

vanek516

Цитата: vitasw от 13 апр 2016, 11:50
Это вы привели уже исправленный код или до вашего исправления?

После исправления
Добавлено: 13 апр 2016, 14:52


Цитата: vitasw от 13 апр 2016, 11:50
Это вы привели уже исправленный код или до вашего исправления?

Сама печать и выше функция замены,
Выдает Поле объекта не обнаружено (Selection)

Функция Печать() Экспорт

Попытка

Договор = ПолучитьМакет(ОпределитьМакетДоговора());
ОбъектWord = Договор.Получить();
ДокументWord = ОбъектWord.Application.Documents(1);
ДокументWord.Activate();
Исключение
Сообщить(ОписаниеОшибки(),СтатусСообщения.ОченьВажное);
Возврат Неопределено;
КонецПопытки;


СоздатьИЗаполнитьТЗподстановок();


Для Каждого Стр ИЗ ТЗп Цикл
ПоискИЗаменаВВорде(ДокументWord,Стр.Шаблон,Стр.СтрокаЗамены);
КонецЦикла;

ОбъектWord.Application.Visible=Истина;
ОбъектWord.Activate();

Возврат Неопределено;

КонецФункции


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск