1С: Генерация документа DOCX на сервере без установки WORD

Задача: создать по шаблону файл формата Word на сервере 1С предприятие. Кросплатформенно (т.е. никаких COMОбъект).

Первоначально было сделано на основе сохранения табличного документа генерируемого из Макета. Однако в нём сложно получить вычурную разметку, которая необходима в моем случае.

Решение: используем функционал БСП УправлениеПечатью, а именно функцию ИнициализироватьМакетОфисногоДокумента.

1.Создаем документа в формате OpenXML. Любым редактором. Хоть Word хоть LibreOffice. Без разницы. Разметку в нём делаем в соответствии с разделителями вида:

Подробнее о разметке тут

2. Создаем в конфигураторе 1С документ и макет с бинарными данными и загружаем в него этот файл.

3. В Менеджере документа размещаем:

4. В Форме документа размещаем:

В приведенном примере, файл формируется на сервере и открывается для наглядности в Word уже «готовым» на клиенте. В принципе ничего не мешает эту фазу исключить и сразу сохранять полученный с сервера файл куда угодно.

Доступ к процедурам и функциям общего модуля объекта из формы списка.

Странное желание, однако бывает.. Что делаем:

  1. Получаем обьект документа
  2. Обращаемся к процедуре/функции этого обьекта

Например:

Пауза в исполнении кода в 1С

В языке 1С нет команды паузы. Ну нет и всё тут! Парадигма: если чего то нет, что вам нужно, значит вы что то делаете не так (с) конечно хороша… Но усложнять код ради «выверта»? Код должен быть читаем и прост! Ну вот как например ПРОСТО сделать 10 попыток чтения чего-то с паузой в 60 секунд например не городя огород из костылей? Например, элементарная схема:

А вот так можно реализовать функцию ГлПауза:

Вариант 2 с загрузкой процессора:

1С: Не работает авторизация по учетной записи

Ситуация: есть два сервера Windows, один из которых играет роль сервера 1С предприятие+БД, другой RDP.  Оба сервера «отдельно стоящие», не входят в AD. Проблема заключается в не возможности входа по учетной записи на RDP сервере, т.к. запущенный клиент 1С на сервере RDP ищет на самом деле у.з. на сервере 1С предприятие.

Решение: создавать ПОЛНОСТЬЮ идентичные учетные записи пользователей на обоих серверах. Вплоть до одинакового пароля. Тогда фишка с авторизацией «прокатывает»

1С: получить ссылку по уникальному идентификатору

Задача:  есть некий идентификатор 09e5174f-551f-11e8-a22b-0800272d9f13. Нужно по нему получить ссылку на элемент справочника.

Решение:

1 19 20 21 22 23 45