Консультация № 143344
08.09.2008, 13:03
0.00 руб.
07.09.2009, 10:26
0 5 2
Подскажите пожалуйста. Требуется из 1С отправить уже созданный вордавский документ Word на печать. Какая команда или метод это реализует?
Просто ситуация в следующем: файлы с этикетками товаров храняться в уже готовых doc-файлах. При формировании заявки на продукцию нужно распечатать эти файлы из 1С.
Вопрос только в команде вывода на печать самого документа и печати нескольких копий одной и той же этикетки.

Обсуждение

давно
Студент
218854
56
09.09.2008, 12:51
общий
это ответ
Здравствуйте, Лисов!
Если для 1С:8.х, то можно необходимый документ word загрузить как макет для документа "Заявка на продукцию" или в общие макеты как Active document. Далее при формировании заявки получать этот макет и средствами 1С отправлять на печать. В данном случае не будет зависимости от того где "лежит" файл в момент вывода на печать :))

Приложение:
АктивныйДокумент = ПолучитьМакет("Макет");
КомОбъект = АктивныйДокумент.Получить();

КомОбъект.PrintOut(); //распечатать документ
КомОбъект.Application.Quit(); //закрыть Word
КомОбъект = 0;
Неизвестный
09.09.2008, 13:00
общий
Насчёт printout() я в курсе. А каким обрзом тогда передать параметр copies (количество копий) в эту функцию??? Мне нужно чтобы файл печатался несколько раз. Интуитивно я знаю что это возможно, и попадалось много литературы по printout(), но она для VBA. А вопрос, как передать параметр copies в 1C? Постояно кидать печать в цикл не хочется.
Кстати, у меня стоит 1С:7.7!!!
Неизвестный
09.09.2008, 16:02
общий
это ответ
Здравствуйте, Лисов!
Пример:
ИсхТабл.ПараметрыСтраницы(,,,,,,,,,1,,);
ИсхТабл.КоличествоЭкземпляров(КолЭкз);
ИсхТабл.Напечатать(0);
Описание оператора:
Напечатать(<?>);
Синтаксис:
Напечатать(<Флаг>)
Назначение:
Напечатать таблицу без предварительного просмотра (печать без открытия окна редактирования).
Параметры:
<Флаг> - необязательный параметр. Режим запроса диалога печати: 1 - запрашивать диалог печати (по умолчанию), 0 - не запрашивать.
Замечание:
Метод может использоваться при работе с таблицей в режиме ввода данных.

Неизвестный
09.09.2008, 16:11
общий
Это мне не подходит т.к. я пытаюсь распечатать документы не перенося их в 1С таблицы. Именно таким способом я печатал общую этикетку для товара. Я же пытаюсь использовать метод printout(). Не знаю как передать параметр copies???
На данный момент дошёл вот до чего
Word.Application.ActiveDocument.PrintOut(0,1,0,"c:\123.mdi","wdPrintDocumentContent","wdPrintCurrentPage",3);
Кто сталкивался с таким? помогите!!!!!
Неизвестный
14.09.2008, 16:39
общий
Попробуйте (для семерки гарантированно, для восьмерки тоже подойдет) запустить ворд из коммандной строки и распечатать.
КоммандаСистемы("start c:\mypath\MyFile.doc /print");
Форма ответа