Документы и Печать · 9 мин
Как загрузить Word-документ в 1С
Как загрузить файл Word в 1С: хранение в справочниках, прикрепление к документам, импорт таблиц и текста, типовые и программные способы.
Загрузка файла Word в 1С — задача, которая встречается в разных сценариях: нужно прикрепить договор к карточке контрагента, хранить шаблоны писем в базе, перенести таблицу из документа в табличную часть или загрузить текст в справочник. Универсальной кнопки «загрузить Word» нет — способ зависит от того, что именно вы хотите получить: файл как вложение, данные из файла или печатную форму на его основе.
В типовых конфигурациях (Бухгалтерия, Управление торговлей, ERP, Зарплата и управление персоналом) работа с файлами уже встроена, и в большинстве случаев программировать ничего не нужно. Ниже разобраны основные сценарии: прикрепление файла через интерфейс, импорт содержимого, использование макетов Word для печати и программная загрузка через COM-объект для тех, кто дорабатывает конфигурацию.
Определите, что именно нужно загрузить: файл или данные
Прежде чем выбирать инструмент, ответьте на вопрос: зачем нужен Word-документ в базе. Если требуется хранить скан договора или приложение к заказу — достаточно прикрепить файл, он сохранится в базе или в томах на диске и будет открываться из 1С двойным щелчком. Если нужно, чтобы данные из документа стали частью учёта (строки заказа, реквизиты, спецификация), простого прикрепления недостаточно — потребуется импорт содержимого.
Третий сценарий — использование Word как шаблона печатной формы. В этом случае файл загружается в макет, а 1С при печати подставляет в него данные из документа. Это удобно для договоров, актов и писем, текст которых должен редактировать пользователь без обращения к разработчику.
Как выбрать способ загрузки
Прикрепление Word-файла к документу или справочнику
В типовых конфигурациях на платформе 8.3 у большинства объектов есть функция присоединённых файлов. Откройте нужный документ, карточку контрагента или номенклатуры и найдите в командной панели ссылку «Присоединенные файлы» (иногда она называется «Файлы» или скрыта в меню «Ещё»). В открывшемся списке нажмите «Добавить» → «Из файла на диске» и выберите нужный .doc или .docx.
После добавления файл хранится внутри информационной базы либо в выделенном томе на диске — это зависит от настройки программы (Администрирование → Работа с файлами). Из списка присоединённых файлов документ можно открыть на просмотр, сохранить обратно на диск, заменить новой версией или удалить. Для файлов с договорами полезно заполнять описание, чтобы потом находить их поиском.
- 1Откройте документ или карточку объекта, к которому относится файл
- 2Нажмите «Присоединенные файлы» в командной панели или в меню «Ещё»
- 3Выберите «Добавить» → «Из файла на диске» и укажите Word-документ
- 4При необходимости заполните описание файла
- 5Откройте файл двойным щелчком и проверьте, что он открывается корректно
Если пункта «Присоединенные файлы» нет, возможны две причины: у пользователя недостаточно прав (нужно право добавления присоединённых файлов) или в конфигурации для данного объекта механизм не включён. Во втором случае вопрос решается администратором или разработчиком.
Загрузка данных из Word в табличную часть
Когда из документа Word нужны не сами файлы, а содержимое — например, список товаров из спецификации — самый быстрый способ без доработок: выделить таблицу в Word, скопировать её в Excel, привести колонки к нужному порядку и загрузить типовой обработкой «Загрузка данных из табличного документа» (в ряде конфигураций доступна через раздел настроек или встроена в документы как «Загрузить из файла»).
Для документов с кнопкой «Загрузить» в табличной части (например, загрузка номенклатуры в заказ или поступление) обычно поддерживаются форматы Excel, CSV и табличный документ 1С (mxl). Word напрямую такие обработки не читают, поэтому промежуточное сохранение таблицы в Excel — стандартный приём. Проверьте, чтобы в файле не было объединённых ячеек и многострочных шапок — они ломают сопоставление колонок.
Word как макет печатной формы
Если цель — печатать из 1С договоры и письма по собственному шаблону, файл Word загружается в макет. В пользовательском режиме некоторые конфигурации позволяют подключить внешнюю печатную форму через «Администрирование» → «Печатные формы, отчеты и обработки» → «Дополнительные отчеты и обработки». Шаблон оформляется как документ Word с параметрами вида {НаименованиеКонтрагента} или через механизм закладок.
В режиме конфигуратора макет создаётся в дереве конфигурации: «Макеты» → «Добавить» → тип «Документ Microsoft Word», затем файл загружается в макет целиком. В тексте шаблона расставляются параметры, а в модуле менеджера печати пишется код, который открывает макет и подставляет значения. Этот путь требует навыков разработки, но даёт полностью автоматическую печать.
Программная загрузка через COM-объект
Для регулярной загрузки данных из Word-файлов — например, ежедневного импорта спецификаций — пишут обработку, использующую COM-соединение с Word. На компьютере, где выполняется код, должен быть установлен Microsoft Word. Обработка открывает файл, читает таблицы и параграфы, а затем создаёт объекты в базе.
Word = Новый COMОбъект("Word.Application");
Word.Visible = Ложь;
Документ = Word.Documents.Open("C:\Файлы\Спецификация.docx");
Таблица = Документ.Tables(1);
Для НомерСтроки = 2 По Таблица.Rows.Count Цикл
Наименование = СокрЛП(Таблица.Cell(НомерСтроки, 1).Range.Text);
// создание строки документа в 1С
КонецЦикла;
Документ.Close(0);
Word.Quit();При таком подходе критично корректно завершать работу: закрывать документ и приложение Word, иначе в памяти сервера накапливаются зависшие процессы WINWORD.EXE. Также учитывайте, что из ячеек Word текст приходит с символами конца ячейки — их нужно очищать перед записью в базу.
Ограничения и проверка результата
Учитывайте ограничения платформы: размер присоединённого файла может быть ограничен настройками базы, а хранение большого числа объёмных файлов внутри базы увеличивает её размер и замедляет резервное копирование. Для больших архивов документов лучше настроить хранение в томах на диске. Форматы .doc и .docx поддерживаются одинаково, но очень старые файлы .doc из Word 6.0/95 могут открываться с проблемами — их стоит пересохранить.
Как проверить результат загрузки
Файл виден в списке, открывается двойным щелчком, содержимое читаемо
Файл не открывается, выдаётся ошибка формата или пустой документ
Количество строк и итоговые суммы совпадают с исходным документом Word
Строки сдвинуты, часть данных попала не в те колонки
Все параметры подставлены, нет видимых фигурных скобок в готовом документе
В тексте остались {Параметры} или пустые места вместо данных
После любой загрузки данных сверяйте итоги: количество строк, суммы, ключевые реквизиты. Для печатных форм распечатайте тестовый документ и просмотрите его целиком — параметры, которые не нашли замены, часто остаются в тексте в виде фигурных скобок.
Часто задаваемые вопросы
Можно ли загрузить Word-файл в 1С без установленного Microsoft Office?
Прикрепить файл к объекту можно — для этого Office не нужен, 1С хранит файл как двоичные данные. А вот программное чтение содержимого через COM-объект требует установленного Word на том компьютере, где выполняется код. Альтернатива — конвертировать документ в Excel или CSV и загружать через табличный формат.
Почему в списке нет пункта «Присоединенные файлы»?
Чаще всего не хватает прав пользователя — попросите администратора проверить роли, связанные с работой с файлами. Реже механизм просто не включён для конкретного вида объектов в настройках конфигурации. Также убедитесь, что смотрите командную панель формы объекта, а не списка: в ряде конфигураций ссылка доступна только из открытой карточки.
Как загрузить из Word таблицу с номенклатурой в заказ?
Скопируйте таблицу из Word в Excel, удалите объединённые ячейки и лишние шапки, сохраните файл. Затем в документе 1С используйте кнопку «Загрузить» в табличной части или обработку загрузки из табличного документа, сопоставьте колонки и проверьте итоговое количество строк.
Файл загрузился, но не открывается из 1С. Что делать?
Проверьте, установлен ли Word или другая программа для просмотра .docx на вашем компьютере — 1С открывает файл через ассоциацию Windows. Если файл повреждён, сохраните его из 1С на диск и попробуйте открыть напрямую; при повреждении исходника придётся загрузить файл заново.
Можно ли настроить автоматическую загрузку Word-файлов из папки?
Да, через регламентное задание с обработкой, которая сканирует каталог и прикрепляет файлы к объектам или читает их содержимое через COM-объект. Учтите, что на сервере 1С для чтения содержимого должен быть установлен Word, а сама обработка должна корректно закрывать COM-объекты, чтобы не плодить зависшие процессы.
Куда лучше хранить файлы: в базе или на диске?
Небольшое количество файлов удобнее хранить в базе — они попадают в резервную копию автоматически. При больших объёмах (сканы, архивы договоров) лучше настроить хранение в томах на диске через «Администрирование» → «Работа с файлами», иначе база быстро разрастётся, а выгрузка и обновление станут заметно медленнее.