Полезности при работе в конфигураторе 1С

Не все о них знают, работая в конфигураторе много лет. Сам о них узнал совсем недавно 😉

  1. Закладки.  Они есть. По горячим клавишам Alt-F2 установить и F2 — ходить по ним. Не очень конечно удобно, но хотяб так..
  2. В «штатной» настройке конфигуратор группирует только процедуры — функции. И я несколько лет думал что «вот убогий конфигуратор». Ан нет, просто я не потыкал настройки:

Ошибка преобразования данных XDTO, управляемые формы

При передаче данных какого-то документа или справочника из клиента на сервер, иногда возникает ошибка вида:

Фактически это означает, что сериализатор 1С не смог преобразовать данные в доступный для передачи вид. Скорее всего в справочнике есть таблица значений.  Что делать?

А всё просто — передадим на сервер уникальный идентификатор, а уж на сервер «восстановим» по нему объект:

 

1С: добавление в дерево на форме элемента перетаскиванием с другой таблице на форме

Собственно обрабатывать нужно событие «перетаскивание» на форме:

 

,где в

  • ПараметрыПеретаскивания.Значение — собственно что именно перетащилось
  • ПараметрыПеретаскивания.Действие=ДействиеПеретаскивания.Отмена; — что мы сами обработаем результат перетаскивания
  • Строка — в какую именно строчку тащим в дереве
  • Поле — в какое поле тащим в дереве

И как добавляем:

1С: проверка на пустую ссылку справочника (документа и.п.) на клиенте

Как известно, на «клиенте» в управляемых формах нельзя на прямую обратиться к документам-справочникам и т.п. Но! если нужно просто проверить есть элемент или нет, то можно воспользоваться стандартной функцией «ПредопределенноеЗначение». Например:

 

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

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

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

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

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

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

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

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

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

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

1 14 15 16 17 18 41