|
Закрытие объекта "Word.Basic" | ☑ | ||
---|---|---|---|---|
0
Voittamaton
26.07.12
✎
17:51
|
Доброго времени суток!
Столкнулся с такой проблемой. Открываю документ и печатаю, после чего закрываю. Ворд = Новый COMОбъект("Word.Basic"); Ворд.Documents.Open("C:\Файл.dotx"); Ворд.FilePrint(0,0,"4","","","",0,2,"2,4"); Ворд.FileClose(2); После этого остаётся процесс "WINWORD.EXE", которых после нескольких циклов накапливается много штук и в дальнейшем 1С отказывается печатать. Также пробовал реализовать печать с помощью COM-объекта ("Word.Application"), но результат тот же. Ворд = Новый COMОбъект("Word.Application"); Ворд.Documents.Open("C:\Файл.dotx"); Ворд.FilePrint(0,0,"4","","","",0,2,"2,4"); Ворд.Quit(); Выручайте! Как программно закрывать процесс после распечатки документа? Спасибо всем участникам! |
|||
1
le_
26.07.12
✎
17:56
|
Ворд.Quit();
|
|||
2
Popkorm
26.07.12
✎
17:59
|
(1)либо :
Ворд.Close() |
|||
3
Voittamaton
26.07.12
✎
18:01
|
Верно... Дело было в этой строчке:
Ворд = Неопределено; Огромное спасибо! |
|||
4
Voittamaton
26.07.12
✎
18:09
|
Хм... А с "Word.Basic"
Ворд = Неопределено; Не работает |
|||
5
le_
26.07.12
✎
18:19
|
(4) А quit-то делаешь?
|
|||
6
le_
26.07.12
✎
18:21
|
wordBasic.OleProcedure("Quit");
|
|||
7
Voittamaton
28.07.12
✎
12:02
|
(6) С объектом "Word.Basic" не работает .OleProcedure("Quit"), выдаёт:
Метод объекта не обнаружен (OleProcedure) Ворд.OleProcedure("Quit"); |
|||
8
Voittamaton
28.07.12
✎
12:44
|
Разобрался!
Ворд = Новый COMОбъект("Word.Application"); Ворд.Documents.Open("F:\!Проекты\ЦДЗ Илария\Электронный журнал\Договор.dotx"); Актив = Ворд.ActiveDocument(); Попытка Актив.Variables("Номер").Value = Формат(Число(ЗаписьОбъект.Номер), "ДФ=""ЧГ=0"""); Исключение Актив.Variables("Номер").Value = ЗаписьОбъект.Номер; КонецПопытки; Актив.Variables("Дата_Число").Value = Формат(ЗаписьОбъект.День, "ДФ=""дд"""); Актив.Variables("Дата_Число2").Value = Формат(ЗаписьОбъект.День, "ДФ=""дд"""); Актив.Variables("Дата_Месяц").Value = Врем.МесяцПрописью_РП(ЗаписьОбъект.День); Актив.Variables("Дата_Месяц2").Value = Врем.МесяцПрописью_РП(ЗаписьОбъект.День); Актив.Variables("Дата_Год").Value = Формат(ЗаписьОбъект.День, "ДФ=""гггг"""); Актив.Variables("Дата_Год2").Value = Формат(ЗаписьОбъект.День, "ДФ=""гггг"""); Актив.Variables("Телефон").Value = ЗаписьОбъект.Пациент.Телефон; Актив.Variables("Телефон2").Value = ЗаписьОбъект.Пациент.Телефон; Актив.Variables("Пациент").Value = ЗаписьОбъект.Пациент.Фамилия + " " + ЗаписьОбъект.Пациент.Имя + " " + ЗаписьОбъект.Пациент.Отчество; ВозрастВМесяцах = Врем.РазностьМеждуДатамиВМесяцах(ЗаписьОбъект.Пациент.ДатаРождения, ТекущаяДата()); Если ВозрастВМесяцах >= 12 * 18 Тогда Актив.Variables("Представитель2").Value = Пациенты.СформироватьФамилиюИО(ЗаписьОбъект.Пациент); Актив.Variables("Представитель3").Value = Пациенты.СформироватьФамилиюИО(ЗаписьОбъект.Пациент); Актив.Variables("Представитель4").Value = Пациенты.СформироватьФамилиюИО(ЗаписьОбъект.Пациент); КонецЕсли; Ворд.Documents.Close(); Ворд.Application.Quit(); |
|||
9
Voittamaton
28.07.12
✎
12:45
|
После использование "Неопределено" проблемы продолжали возникать при закрытии изменённого документа. Проблема решилась после использования команды:
Ворд.Documents.Close(); |
|||
10
Voittamaton
28.07.12
✎
12:46
|
Разбираться с "Word.Basic" уже нет желания, но думаю, там всё по схожей схеме.
|
|||
11
Voittamaton
28.07.12
✎
12:49
|
И одно маленькое замечание насчёт "Word.Application": при закрытии в (8) на секунду-две открывается окно Word. Неприятная мелочь.
|
|||
12
Voittamaton
28.07.12
✎
13:00
|
Всё-таки разобрался с "Word.Basic":
Ворд.AppClose(2); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |