База знаний 1С для разработчиков

Блог

Справочник с примерами кода: как сделать отчёт на СКД, подключить БСП, ускорить запрос, опубликовать HTTP-сервис или развернуть сервер 1С на Linux.

1С:Напарник для разработки: ИИ-помощник подсказывает программисту 1С код и проверяет его
ИИ в 1С

1С:Напарник для разработки: что умеет ИИ-помощник и где его ответы нужно проверять

Разбираю, для каких задач программисту 1С полезен «1С:Напарник», где он ошибается убедительно и как построить работу, чтобы ускоряться, а не переписывать сгенерированный код.

9 мин чтения
1C:Drive — конфигурация 1С для иностранных компаний, учёт в нескольких странах и валютах
Учёт и прикладные решения

1C:Drive: обзор конфигурации для иностранных компаний глазами разработчика 1С

Обзор 1C:Drive для разработчика, который привык к российским типовым: происхождение, состав, отличия в учёте и документах, английский синтаксис и с чего начать изучение.

8 мин чтения
Автоматическое создание документов в 1С: цепочка складских документов от заказа до отбора товара
Учёт и прикладные решения

Автоматическое создание документов в 1С для ордерного склада: очередь задач

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

11 мин чтения
Аннотации расширения 1С: слои кода расширения поверх типовой конфигурации
Расширения и доработка

Аннотации расширения 1С: Вместо, После, Перед и ПродолжитьВызов на примерах

Разбираю перехват методов типовой конфигурации в расширении: выбор аннотации, ПродолжитьВызов, порядок слоёв и ошибки, которые всплывают после обновлений.

10 мин чтения
АПК 1С: автоматизированная проверка конфигурации на соответствие стандартам разработки
DevOps и тестирование

АПК 1С: автоматизированная проверка конфигураций на соответствие стандартам

Как проверить конфигурацию 1С на соответствие стандартам разработки с помощью «1С:Автоматизированная проверка конфигураций»: настройка, запуск, отчёт и особенности.

8 мин чтения
АРМ снабжения 1С:ERP: потребности подразделений и заказы поставщикам в одном рабочем месте
Учёт и прикладные решения

АРМ снабжения и закупок в 1С:ERP: как спроектировать рабочее место внешней обработкой

Когда типовых рабочих мест ERP не хватает, снабжение уходит в Excel. Разбираю, как сделать единый АРМ потребностей и закупок внешней обработкой, не снимая базу с поддержки.

9 мин чтения
Базовый период регистра расчёта 1С: премия рассчитывается от оклада за прошлые месяцы
ЗУП и расчёт

Базовый период и перерасчёт в регистре расчёта 1С: премия от оклада на примере

На примере ежемесячной премии от оклада за два прошлых месяца разбираю базовый период, виртуальную таблицу База и то, как перерасчёты ловят изменения задним числом.

10 мин чтения
БСП 1С: набор готовых модулей-кирпичей, из которых собирается конфигурация
БСП

БСП 1С в разработке: программный интерфейс, переопределяемые модули и определяемые типы

Разбираемся, какие методы Библиотеки стандартных подсистем можно вызывать, а какие нет, и как подключить свой объект к подсистеме БСП так, чтобы доработка пережила обновление.

11 мин чтения
Бухгалтерский учёт для программиста 1С: проводка по дебету и кредиту в регистре бухгалтерии
Учёт и прикладные решения

Бухгалтерский учёт для программиста 1С: счета, проводки, субконто и закрытие месяца

Минимум бухгалтерии, без которого нельзя дорабатывать БП, ERP и КА: как устроены счета и проводки, что такое субконто и почему неаккуратная доработка ломает закрытие месяца.

9 мин чтения
Ввод на основании в расширении 1С: новый документ создается из существующего
Расширения и доработка

Ввод на основании в расширении 1С: общая команда, заполнение и права

Добавляем создание реализации на основании счета в типовой конфигурации расширением: команда, корректное заполнение документа, подключение к меню БСП и типичные ошибки.

9 мин чтения
Веб-публикация 1С на Linux: сервер 1С, PostgreSQL и Apache на одной виртуальной машине
Администрирование и серверы

Веб-публикация 1С на Linux: Apache, PostgreSQL и community-лицензия для тестового стенда

Собираем тестовый стенд на Linux: сервер 1С, PostgreSQL для 1С, Apache с модулем веб-расширения, публикация базы через webinst и отладка на сервере.

9 мин чтения
Веб-сервис 1С: две информационные базы обмениваются XML-сообщениями по SOAP
Интеграции и обмены

Веб-сервис 1С (SOAP): создание с XDTO-пакетом и вызов из другой базы — пример

Собираем SOAP веб-сервис на платформе 1С: описываем XDTO-типы для таблицы продаж, пишем операцию выгрузки за период, публикуем и получаем данные из другой информационной базы.

10 мин чтения
Вложенные схемы СКД 1С: малые отчёты внутри большого, как матрёшка
СКД и отчёты

Вложенные схемы СКД 1С: когда использовать и как связать с основной схемой

Разбираем вложенные схемы компоновки данных: как передать в них параметры и отборы из основной схемы, как собрать несколько готовых отчётов в один и чем это грозит производительности.

10 мин чтения
Вопрос пользователю перед записью в 1С: диалог подтверждения в управляемой форме
БСП

Вопрос пользователю перед записью в 1С: ПоказатьВопрос, ВопросАсинх и Знач

Немодальный вопрос в ПередЗаписью: отменяем запись, спрашиваем, записываем повторно. Два способа — через ОписаниеОповещения и через Асинх/Ждать — и разбор модификатора Знач в серверных вызовах.

10 мин чтения
Выгрузка из 1С в Google Таблицы: отчет из учетной системы появляется в облачной таблице на телефоне
Интеграции и обмены

Выгрузка из 1С в Google Таблицы: быстрый вариант через Google Диск и правильный через API

Как за час показать руководителю свежие данные из 1С на телефоне через Google Диск, чем этот прием опасен и на что его заменить, когда решение становится постоянным.

8 мин чтения
Вытеснение по периоду действия в 1С: временная шкала, где командировка вытесняет оклад
ЗУП и расчёт

Вытеснение по периоду действия в 1С: регистр расчёта и фактический период на примере

Разбираем, как командировка вытесняет оклад в регистре расчёта: что настроить в плане видов расчёта, как платформа строит фактический период действия и как считать сумму по графику.

9 мин чтения
Горячие клавиши конфигуратора 1С: клавиатура программиста и окно редактора кода
Стандарты и инструменты

Горячие клавиши конфигуратора 1С, шаблоны и правила комментирования кода

Набор приёмов, которые реально экономят время программиста 1С: сочетания клавиш, свои шаблоны, комментарии к доработкам и запросам, плюс пара трюков для пользователей.

9 мин чтения
Группировки в СКД 1С: многоуровневая структура отчета с итогами
СКД и отчёты

Группировки в СКД 1С: детальные записи, иерархия, таблица и программная настройка

Разбираем структуру отчета на СКД: какие бывают группировки, почему в них пропадают поля, как наследуются настройки и как собрать группировку из кода.

11 мин чтения
Данные были изменены или удалены другим пользователем: два пользователя редактируют один документ 1С
Формы и интерфейс

Данные были изменены или удалены другим пользователем: блокировка объектов в 1С

Разбираем конфликты одновременного редактирования: как работает оптимистическая и пессимистическая блокировка, как занять документ при открытии и как безопасно менять объекты из обработок.

9 мин чтения
Дерево значений 1С: иерархия узлов, которые подгружаются при раскрытии
Запросы, скорость и права

Дерево значений 1С: ленивая загрузка, обход без рекурсии и быстрый поиск

Почему дерево значений тормозит на тысячах строк и как это исправить: подгрузка узлов при раскрытии, итеративный обход, правильный поиск и построение дерева средствами платформы.

10 мин чтения
Динамический список 1С: таблица с иконками статусов, флажками и печатью
Формы и интерфейс

Динамический список 1С: печать, ключ строки, пометки, иконки и правка запроса

Пять задач, с которыми рано или поздно сталкивается каждый разработчик форм: печать списка как его видит пользователь, ключ из нескольких полей, флажки, иконки и изменение запроса кодом.

13 мин чтения
Директивы компиляции 1С: код распределяется между клиентом и сервером
Стандарты и инструменты

Директивы компиляции 1С и инструкции препроцессора: в чём разница и где ошибаются

Разбираем, чем директивы с символом & отличаются от инструкций препроцессора с символом #, как выбирать контекст метода и какие ошибки дают условия #Если в модулях менеджера.

9 мин чтения
Дополнительные отчеты и обработки БСП: внешние модули подключаются к конфигурации без её изменения
БСП

Дополнительные отчеты и обработки БСП: регистрация, команды, печатная форма

Разбираем подсистему «Дополнительные отчеты и обработки»: какие виды разработок бывают, как описать регистрацию и команды, как сделать внешнюю печатную форму и как отлаживать.

11 мин чтения
Дополнительные реквизиты 1С: карточка объекта с подключаемыми полями из набора свойств
БСП

Дополнительные реквизиты и сведения в 1С БСП: устройство, запросы и программная работа

Как устроена подсистема «Свойства» БСП, чем дополнительный реквизит отличается от сведения, как читать и писать значения программно и выводить их в отчёты без доработки конфигурации.

12 мин чтения
Запрос в СКД 1С: схема компоновки данных превращает текст запроса в отчет
СКД и отчёты

Запрос в СКД 1С: ограничения, фигурные скобки и отладка итогового текста

Набор данных «Запрос» в СКД работает не так, как обычный запрос: разбираем ограничения, расширение языка запросов в фигурных скобках и способ увидеть реальный текст, который уходит в СУБД.

9 мин чтения
Иерархия подразделений в отчёте ЗУП: дерево структуры, развёрнутое в таблицу по уровням
Формы и интерфейс

Иерархия подразделений в отчёте ЗУП 3: своё представление в механизме общих наборов данных

Каждый второй отчёт в ЗУП просит разложить подразделение по уровням структуры. Делаем это один раз — как собственное представление механизма общих наборов данных, которое подключается в СКД одной временной таблицей.

9 мин чтения
Интеграция с 1С:Документооборот: учетная система передает данные в карточку документа ДО
Интеграции и обмены

Интеграция с 1С:Документооборот: как расширить правила библиотеки интеграции

Стандартные правила интеграции с ДО не умеют заполнять поля по сложной логике. Разбираем, как добавить в них обработчик перед записью карточки в Документообороте — и почему не стоит передавать исполняемый код.

10 мин чтения
Интервальные регистры ЗУП: кадровая история сотрудника в виде непрерывной ленты интервалов
ЗУП и расчёт

Интервальные регистры ЗУП 3.1: как устроены и как правильно получать кадровые данные

Зачем в ЗУП 3.1 у кадровых регистров появились интервальные двойники, как с ними работать в запросах и доработках и как восстановить данные при расхождении.

9 мин чтения
Кабинет сотрудника без подписи руководителя: документ уходит из ЗУП сразу сотруднику
ЗУП и расчёт

Кабинет сотрудника без подписи руководителя: отправка документов из 1С:ЗУП в один клик

Не каждому кадровому документу нужна подпись руководителя. Разбираем штатный обходной путь и доработку ЗУП расширением: команда «Передать без подписи» прямо из формы печати.

8 мин чтения
Кабинет сотрудника и произвольное обращение: заявление в PDF превращается в данные ЗУП
ЗУП и расчёт

Кабинет сотрудника: произвольное обращение и его параметры в ЗУП через PDF

Параметры произвольного шаблона не доходят до ЗУП, но есть в PDF заявления. Показываю, как достать их расширением и не трогать сам кабинет сотрудника.

9 мин чтения
Кадровые данные сотрудников ЗУП: карточки сотрудников с должностью и подразделением на временной шкале
ЗУП и расчёт

Кадровые данные сотрудников в ЗУП 3.1 программно: модуль КадровыйУчет

Не пишите запросы к кадровым регистрам ЗУП вручную: разбираю функции модуля КадровыйУчет для одного сотрудника, списка и набора дат.

9 мин чтения
Добавить поле на форму отчета БСП: новый элемент выбора месяца на панели настроек
СКД и отчёты

Как добавить поле на форму отчета БСП: свои элементы в общей форме ФормаОтчета

Пошагово добавляем на общую форму отчета БСП поле выбора месяца: элемент создается из модуля отчета, события обрабатываются универсально, значение доходит до компоновки.

10 мин чтения
Ускорить открытие формы в 1С: форма открывается мгновенно, показатели догружаются фоном
Формы и интерфейс

Как ускорить открытие формы в 1С: фоновый расчёт показателей и ленивая загрузка

Форма документа открывается 15 секунд из-за расчёта показателей. Показываю, как найти виновника и открыть форму сразу, а цифры дорисовать фоном или по запросу.

9 мин чтения
Картинки в отчете СКД: таблица с фотографиями товаров и сотрудников
СКД и отчёты

Картинки в отчете СКД: вывод фото сотрудников и товаров в табличный документ

Прайс с фото товаров или список сотрудников с фотографиями на СКД: формируем отчёт программно и расставляем картинки по ячейкам через данные расшифровки.

8 мин чтения
КД 2.0: строки табличной части документа превращаются в записи регистра сведений
Интеграции и обмены

КД 2.0: выгрузка табличной части документа в регистр сведений через ВыгрузитьПоПравилу

Документ в источнике, регистр сведений в приёмнике: строим правила КД 2.0, в которых сам документ не выгружается, а каждая строка его табличной части превращается в запись регистра.

8 мин чтения
Команда печати БСП: печатная форма документа в подменю «Печать»
БСП

Команда печати БСП: как добавить печатную форму в свой документ

Пошагово подключаем свой документ к подсистеме «Печать» БСП: подменю «Печать» в форме и списке, универсальное окно печати и пользовательские макеты без лишнего кода.

9 мин чтения
Конвертация данных 3: правила обмена между двумя конфигурациями через EnterpriseData
Интеграции и обмены

Конвертация данных 3: настройка базы для доработки правил обмена EnterpriseData

Пошагово готовим базу КД3 к доработке типовых обменов через EnterpriseData: версия формата, XDTO-схемы, структура конфигураций, загрузка правил из модуля менеджера.

12 мин чтения
Контактная информация БСП: адреса, телефоны и почта в единой структуре
БСП

Контактная информация БСП: устройство подсистемы, API и поиск по адресам

Шпаргалка по подсистеме «Контактная информация»: как хранятся адреса и телефоны, как читать и записывать их из кода и почему поиск по полям адреса требует подготовки.

9 мин чтения
Логирование в 1С: журнал событий с записями об этапах алгоритма и ошибках
Администрирование и серверы

Логирование в 1С: свой журнал событий на регистре сведений вместо журнала регистрации

Когда штатного журнала регистрации мало: делаю собственный журнал событий для обменов и сложных алгоритмов, который удобно фильтровать, отчётами разбирать и чистить.

8 мин чтения
Макеты СКД в 1С: отчёт с оформленной шапкой и параметрами периода
СКД и отчёты

Макеты СКД в 1С: заголовок с параметрами, макеты группировок и постобработка

Разбираем вкладку «Макеты» схемы компоновки: какой макет за что отвечает, как вывести в шапку отчёта период и отборы и что делать, когда макетов уже не хватает.

11 мин чтения
Менеджер временных таблиц в СКД: подготовленная таблица передаётся в отчёт
СКД и отчёты

Менеджер временных таблиц в СКД: внешние данные без набора «Объект»

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

7 мин чтения
Многопоточность БСП: данные делятся на порции и обрабатываются параллельными потоками
БСП

Многопоточность в БСП: ВыполнитьФункциюВНесколькоПотоков на практике

Как распараллелить расчёт и запись документов типовым механизмом БСП: готовим порции, запускаем потоки, собираем результаты и не ловим блокировки.

11 мин чтения
Мобильная платформа 1С: смартфон с приложением обменивается данными с сервером
Мобильная платформа и 1С:Элемент

Мобильная платформа 1С: варианты мобильных приложений, ограничения и первый проект

Разбираю три варианта мобильных приложений на 1С, ограничения мобильной платформы, порядок разработки и отладки и обмен данными с основной базой через HTTP-сервис.

10 мин чтения
Мобильное приложение 1С для Android: смартфон, синхронизированный с компьютером разработчика
Мобильная платформа и 1С:Элемент

Мобильное приложение 1С для Android с нуля: установка, публикация, отладка и сборка

Первое мобильное приложение на платформе 1С: от установки мобильной платформы на телефон до готового APK, с граблями, на которые наступает каждый новичок.

10 мин чтения
Модификация конфигурации УТ 11 и ERP: доработка форм без конфликтов при обновлении
Расширения и доработка

Модификация конфигурации УТ 11, КА 2 и ERP 2: доработка форм без правки форм

Типовой механизм упрощённой модификации форм в линейке ERP: какие события он перехватывает, как писать код для конкретной формы и как совместить его с расширением.

8 мин чтения
Мониторинг сервера 1С: графики нагрузки ОС, СУБД и кластера на дашборде
Администрирование и серверы

Мониторинг сервера 1С: Grafana, Prometheus и Loki для ОС, СУБД и техжурнала

Собираем бесплатную систему мониторинга: метрики ОС, MS SQL и кластера 1С в Prometheus, технологический журнал в Loki, всё вместе на дашбордах Grafana.

10 мин чтения
МСФО в 1С: данные российского учёта проходят слой трансляции и корректировок
Учёт и прикладные решения

МСФО в 1С для разработчика: модель данных, трансляция и корректировки

МСФО в 1С — это не вторая бухгалтерия, а слой преобразования данных РСБУ. Разбираю модель данных, план счетов, правила трансляции и типичные ошибки проектирования.

10 мин чтения
Мультиязычность БСП: одна печатная форма на нескольких языках
БСП

Мультиязычность БСП: печатные формы на английском и других языках в 1С

Печатаем счета и акты для иностранных контрагентов на их языке средствами БСП: настройка языков, перевод макетов, автоматический перевод и правила для разработчика.

8 мин чтения
Настройка PostgreSQL для 1С: сервер Linux с базой данных и панелью параметров
Администрирование и серверы

Настройка PostgreSQL для 1С на Linux: параметры, обслуживание и типичные ошибки

Как подготовить PostgreSQL под базы 1С на Linux: сборка, инициализация кластера, параметры памяти, обслуживание и решения частых проблем.

11 мин чтения
Настройки СКД 1С: слои настроек отчёта и параметры вывода
СКД и отчёты

Настройки СКД 1С: варианты, пользовательские и фиксированные настройки, параметры вывода

Разбираем компоновщик настроек отчёта: три слоя настроек, пользовательские настройки на форме, хранилища вариантов и все параметры закладки «Другие настройки».

11 мин чтения
Нейросети в разработке 1С: программист и цифровой помощник за одним рабочим столом
ИИ в 1С

Нейросети в разработке 1С: где экономят время, а где создают проблемы

Разбираю, как использовать языковые модели в работе программиста 1С без самообмана: задачи, где они помогают, типичные ошибки в коде 1С и правила безопасности.

9 мин чтения
Обмен НСИ через HTTP-сервисы 1С: мастер-база раздаёт справочники нескольким базам-приёмникам
Интеграции и обмены

Обмен НСИ через HTTP-сервисы 1С: мастер-база, контракт данных и порционная выгрузка

Архитектура лёгкого обмена нормативно-справочной информацией без конвертации данных: домены данных, контракт полей, регистрация изменений через план обмена, курсор и подтверждение.

12 мин чтения
Обмен EnterpriseData: документ с табличной частью передается между двумя базами 1С
Интеграции и обмены

Обмен EnterpriseData: передача документа с табличной частью без КД3

Пошаговый маршрут доработки обмена через универсальный формат, когда сгенерировать правила в «Конвертации данных 3» нельзя: что править в обеих базах и как передать табличную часть.

9 мин чтения
Обработка получения данных выбора: из полного списка значений остаются только нужные
Формы и интерфейс

Обработка получения данных выбора: ограничение списка по параметру формы

Ограничиваем список выбора поля на конкретных формах, не трогая обработчики поля: служебный реквизит, связь параметра выбора и ОбработкаПолученияДанныхВыбора в модуле менеджера.

8 мин чтения
Обработчики событий модуля объекта 1С: последовательность записи объекта и проверки
Стандарты и инструменты

Обработчики событий модуля объекта 1С: ПередЗаписью, ПриЗаписи и проверки по стандарту

Разбираю, какой код в каком обработчике модуля объекта должен жить по стандартам разработки 1С, почему важна проверка ОбменДанными.Загрузка и как правильно работать с параметром Отказ.

9 мин чтения
Ограничение доступа к дополнительным реквизитам 1С: часть свойств скрыта от пользователя
Запросы, скорость и права

Ограничение доступа к дополнительным реквизитам 1С без RLS: скрываем свойства в списках и отчётах

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

8 мин чтения
Оптимизация запроса 1С АВТОНОМЕРЗАПИСИ: много полей сворачиваются в один числовой ключ
Запросы, скорость и права

Оптимизация запроса 1С через АВТОНОМЕРЗАПИСИ: ключ вместо соединения по всем полям

Когда таблицу приходится соединять саму с собой по многим полям, запрос тормозит. Показываю, как свернуть набор полей в числовой ключ функцией АВТОНОМЕРЗАПИСИ.

10 мин чтения
Отбор в СКД 1С: воронка, отсекающая лишние строки отчёта
СКД и отчёты

Отбор в СКД 1С: настройка в схеме, на группировках, для пользователя и из кода

Разбираем, где и как задавать отборы в системе компоновки данных: в варианте отчёта, на группировке, в пользовательских настройках и кодом — в отчётах и динамических списках.

11 мин чтения
Открытие формы при начале работы в 1С:ERP: рабочее место открывается сразу после входа
Учёт и прикладные решения

Открытие формы при начале работы в 1С:ERP: своя обработка и внешняя форма через расширение

Подключаем свою обработку к типовому механизму ERP «открывать при начале работы»: расширение, роль, настройка пользователя, параметр запуска и вариант с внешней обработкой.

8 мин чтения
Отладка 1С: программист проходит код по шагам и проверяет значения переменных
Стандарты и инструменты

Отладка 1С в конфигураторе: точки останова, вычисление выражений и трассировка

Шпаргалка по отладчику конфигуратора: как быстро найти место ошибки, посмотреть и подменить значения переменных, пройти код по шагам и отладить серверные вызовы.

9 мин чтения
Отчет СКД по таблице значений: данные из внешней таблицы попадают в схему компоновки
СКД и отчёты

Отчет СКД по таблице значений: набор данных объект и внешние наборы данных

Когда данные нельзя получить запросом, отчет на СКД строится по таблице значений через набор данных объект. Показываю схему, полный код и частые ошибки.

9 мин чтения
Ошибка варианта универсального отчёта 1С: ремонт повреждённых настроек отчёта
СКД и отчёты

Ошибка варианта универсального отчёта 1С после обновления: как починить настройки

После обновления конфигурации вариант отчёта падает при открытии и не сбрасывается. Показываю, как найти сломанные варианты, достать XML настроек из хранилища, исправить и записать обратно.

9 мин чтения
Параметры СКД 1С: схема компоновки данных с полями параметров
СКД и отчёты

Параметры СКД 1С: обязательные и необязательные, выражения и программная установка

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

11 мин чтения
Передача присоединённых файлов в Конвертации данных 2 вместе с документом
Интеграции и обмены

Передача присоединённых файлов в Конвертации данных 2: файлы документа через таблицу значений

Передаём вложения документа вместе с ним в обмене по правилам КД 2: собираем файлы в таблицу значений, сериализуем в строку, передаём параметром и разбираем в приёмнике.

8 мин чтения
ПередЗавершениемРаботыСистемы в 1С: пользователь закрывает приложение, сервер уже недоступен
Администрирование и серверы

ПередЗавершениемРаботыСистемы в 1С: что можно делать при выходе из программы

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

8 мин чтения
Перенос доработок 1С: разбор старой конфигурации на отдельные доработки и перенос в новую
Расширения и доработка

Перенос доработок 1С на новую конфигурацию: методика ревизии без документации

Пошаговая методика ревизии доработок при переходе ДО 2.1 на 3.0, УПП на ERP и подобных переездах: все источники доработок, цикл «нашёл — выписал — удалил — поискал снова» и реестр с решениями.

11 мин чтения
Печать в DOCX средствами БСП: документ Word формируется на сервере 1С без Microsoft Office
БСП

Печать в DOCX средствами БСП без COM: макеты офисных документов и код

Формируем DOCX на сервере 1С, в том числе на Linux, методами БСП: как разметить шаблон Word, какие процедуры вызывать и где подстерегают ошибки.

11 мин чтения
Печать комплекта документов в 1С: стопка печатных форм, выходящая из принтера
БСП

Печать комплекта документов в 1С ERP и УТ: подключаем свой документ за 7 шагов

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

9 мин чтения
Печать на сервере 1С: сервер отправляет PDF-этикетку на принтер через Ghostscript
Администрирование и серверы

Печать на сервере 1С через Ghostscript: этикетки из фонового задания и веб-сервиса

Как вывести табличный документ на принтер там, где нет клиента: в регламентном задании или при вызове веб-сервиса с ТСД. Схема PDF плюс Ghostscript с кодом.

7 мин чтения
План обмена 1С: узлы информационных баз и регистрация изменённых объектов
Интеграции и обмены

План обмена 1С: регистрация изменений, чтение и снятие регистрации

Разбираем механизм плана обмена: что такое узлы и авторегистрация, как регистрировать изменения программно, почему для чтения лучше таблица «Изменения», а не ВыбратьИзменения, и когда снимать регистрацию.

10 мин чтения
Подключаемые команды БСП: форма документа с подменю печати, отчётов и создания на основании
БСП

Подключаемые команды БСП: печать, отчёты и создание на основании для своих объектов

Пошаговое подключение подсистемы «Подключаемые команды» к нетиповому объекту: код формы, процедуры модуля менеджера и регистрация объекта в переопределяемых модулях.

9 мин чтения
Подключение 1С к Oracle: обмен данными между базой 1С и Oracle Database
Интеграции и обмены

Подключение 1С к Oracle: ADODB.Connection, чтение и запись данных, внешние источники

Читаем таблицы Oracle из 1С и пишем данные обратно: провайдер и строка подключения, безопасные параметризованные запросы, закрытие соединений и вариант без COM.

10 мин чтения
Подключение БСП к своему документу: модули библиотеки встраиваются в нетиповой объект
БСП

Подключение БСП к своему документу: печать, даты запрета, версии и файлы

Чек-лист внедрения подсистем БСП в собственный документ: что добавить в модули форм, подписки, определяемые типы и переопределяемые модули, чтобы всё заработало как в типовых.

10 мин чтения
Поиск по номеру телефона в поле ввода 1С: выпадающий список контрагентов
Формы и интерфейс

Поиск по номеру телефона в поле ввода 1С: доработка ОбработкаПолученияДанныхВыбора

Пользователь вводит цифры телефона в поле «Контрагент» и сразу видит подходящих клиентов. Разбираем доработку выбора по произвольному реквизиту без новых форм.

8 мин чтения
Постобработка отчёта СКД 1С: доработка табличного документа после формирования
СКД и отчёты

Постобработка отчёта СКД 1С: программное формирование и доработка табличного документа

Когда настроек СКД не хватает, результат дорабатывают кодом. Разбираем два способа перехватить формирование отчёта и пять практичных примеров постобработки.

11 мин чтения
ПриЗаполненииОграниченияДоступа: правила доступа к записям базы 1С
Запросы, скорость и права

ПриЗаполненииОграниченияДоступа: язык ограничений RLS в БСП с примерами

Разбираем язык универсального ограничения доступа БСП с нуля: блоки, функции, уточнения сравнения и двенадцать типовых ограничений для документов, файлов и журналов.

14 мин чтения
Программное изменение формы 1С: элементы формы собираются кодом поверх типовой формы
Расширения и доработка

Программное изменение формы 1С в расширении: поля, группы, страницы и команды из кода

Почему доработку типовых форм выгоднее делать кодом, а не в редакторе формы расширения, и как устроить небольшой общий модуль, который создаёт поля, группы, страницы и кнопки одной строкой.

12 мин чтения
Программное создание динамического списка и таблицы значений на форме 1С
Формы и интерфейс

Программное создание динамического списка и таблицы значений на управляемой форме 1С

Код для создания реквизитов-таблиц на форме из ПриСозданииНаСервере: таблица значений с колонками, динамический список с произвольным запросом, оформление, отборы и обновление параметров.

11 мин чтения
Программное создание СКД в 1С: схема компоновки данных собирается из блоков кода
СКД и отчёты

Программное создание СКД в 1С: схема, наборы данных, настройки и вывод отчёта

Собираем схему компоновки данных целиком из кода: от источника и набора-запроса до группировок, параметров и вывода результата в табличный документ или таблицу значений.

12 мин чтения
Программное создание элементов формы 1С: поля и кнопки собираются на форме из кода
Формы и интерфейс

Программное создание элементов формы 1С: реквизиты, команды, группы и поля

Добавляем на управляемую форму реквизиты, команды, группы, поля и декорации из кода — так, чтобы доработка переживала обновления типовой конфигурации.

11 мин чтения
Программное формирование отчета СКД: настройки компоновки превращаются в готовую таблицу
СКД и отчёты

Программное формирование отчета СКД: открытие с настройками и вывод в таблицу

Три способа запустить отчёт на СКД из кода: открыть форму с готовыми настройками, собрать результат компоновки на сервере и выгрузить его в таблицу значений.

11 мин чтения
Производительный вариант RLS: объект данных открывается ключом доступа, связанным с группами пользователя
Запросы, скорость и права

Производительный вариант RLS в БСП: как работают ключи доступа и шаблоны ролей

Во что превращается шаблон ограничения при производительном варианте RLS: какие параметры сеанса и регистры участвуют и как проверить доступ пользователя к объекту.

12 мин чтения
Работа с DBF в 1С: табличный файл данных и база 1С обмениваются записями
Интеграции и обмены

Работа с DBF в 1С: чтение и запись файлов через XBase и ADO

Как в 1С прочитать и сформировать DBF-файл: объект XBase с примерами кода, выбор кодировки, работа на сервере и когда может понадобиться ADO.

9 мин чтения
Разработка в 1С:ERP: конвейер от документа через оперативные регистры к проводкам
Учёт и прикладные решения

Разработка в 1С:ERP после «Бухгалтерии»: что устроено иначе и с чего начать

В ERP проводка — следствие оперативного учёта, а не центр проведения. Разбираю ключевые отличия от БП, как отлаживать отражение в регл. учёте и какие механизмы изучать первыми.

10 мин чтения
Расширение конфигурации 1С: модуль-надстройка над типовой конфигурацией
Расширения и доработка

Расширение конфигурации 1С: назначение, создание и доработка типовой без снятия с поддержки

Как дорабатывать типовую 1С, не снимая её с поддержки: выбираем назначение расширения, добавляем объекты и реквизиты, выводим их на форму и подключаем расширение у заказчика.

11 мин чтения
Расшифровка СКД в 1С: от итоговой строки отчёта к подробным данным
СКД и отчёты

Расшифровка СКД в 1С: стандартные действия, макеты и своя обработка в коде

Всё о расшифровке в отчётах на СКД: от выражения представления и параметра расшифровки в макете до своего меню действий и чтения значений группировок.

13 мин чтения
Регистры расчета 1С: временная шкала начислений с окладом, командировкой и премией
ЗУП и расчёт

Регистры расчета 1С: вытеснение, базовый период и расчёт оклада по графику

Разбираем механику регистров расчета на учебной конфигурации: от плана видов расчета и графика работы до проведения документа и расчёта оклада через виртуальную таблицу ДанныеГрафика.

11 мин чтения
Регламентные задания 1С: часы и шестерёнки сервера, выполняющие операции по расписанию
БСП

Регламентные задания 1С и фоновые задания в БСП: настройка, код и отладка

Как правильно сделать регламентное задание в конфигурации на БСП: ключ, расписание, функциональные опции, фоновые задания для длительных операций и отладка без фона.

9 мин чтения
Связи наборов данных СКД: два набора данных соединяются по общему полю
СКД и отчёты

Связи наборов данных СКД и несколько схем в одном отчёте 1С

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

10 мин чтения
Сервисы интеграции 1С: базы 1С подключены к центральной шине обмена сообщениями
Интеграции и обмены

Сервисы интеграции 1С: подключение базы к 1С:Шине по шагам

Как подключить типовую или самописную базу к 1С:Шине через сервисы интеграции и не превратить доработку конфигурации в отдельный проект.

11 мин чтения
Поставка конфигурации 1С: доработанная конфигурация упакована в собственный файл поставки
Расширения и доработка

Собственная поставка конфигурации 1С: как поставить базу на поддержку своего .cf

Когда доработанную типовую конфигурацию передают заказчику, удобно, чтобы его база стояла на поддержке вашего .cf. Разбираем шаги в конфигураторе, неочевидный фильтр и риски при обновлении релизов.

8 мин чтения
Список значений 1С: форма планёрки со списком участников, отметками и выбором организатора
Запросы, скорость и права

Список значений 1С на практике: задача с собеседования про планёрки и участников

Разбираем задачу с собеседования: форма планёрки со списком участников без табличной части. Решение на списке значений и исправление типичных ошибок.

10 мин чтения
Срез последних на каждую дату: временная шкала с интервалами значений периодического регистра
ЗУП и расчёт

Срез последних на каждую дату в 1С: классический запрос и интервальные регистры ЗУП

Разбираем задачу среза последних на каждую дату: два рабочих варианта запроса без цикла, механизм интервальных регистров в ЗУП и собственная реализация для своего регистра.

12 мин чтения
Стандарты кодирования 1С: аккуратно структурированный код на мониторе и чек-лист
Стандарты и инструменты

Стандарты кодирования 1С: памятка программисту по оформлению и структуре кода

Собрал в одну шпаргалку правила из системы стандартов 1С, которые чаще всего всплывают на код-ревью: от выбора модуля до когнитивной сложности и магических чисел.

12 мин чтения
Стандарты разработки 1С: аккуратно разложенный код по модулям, формам и запросам
Стандарты и инструменты

Стандарты разработки 1С: бизнес-логика, открытие форм, тексты запросов и DRY

Шпаргалка по стандартам 1С с примерами: бизнес-логика вне формы, открытие форм с параметрами и описанием оповещения, оформление запросов, псевдонимы и сборка пакетов.

11 мин чтения
Схема СКД типового отчёта: несколько схем компоновки собираются в один отчёт
СКД и отчёты

Схема СКД типового отчёта в своём отчёте: как использовать и вывести в таблицу значений

Собираем сложный отчёт из нескольких схем компоновки: своих и типовых. Без копирования типовых запросов и без потерь при обновлении конфигурации.

10 мин чтения
Табличный документ на управляемой форме 1С: интерактивная сетка ячеек с данными
Формы и интерфейс

Табличный документ на управляемой форме 1С: ввод данных, события, очистка и водяной знак

Практика работы с полем табличного документа на управляемой форме: как хранить и читать данные ячеек, обрабатывать клики и перетаскивание, стоит ли очищать документ на клиенте и как добавить подложку в печатную форму.

12 мин чтения
Техническое задание на доработку 1С: структурированный документ с разделами и схемой процесса
Стандарты и инструменты

Техническое задание на доработку 1С: структура, пример и чек-лист

Как написать ТЗ на доработку 1С, по которому программист оценит задачу без десятка уточнений, а через год любой поймёт, что и зачем было сделано.

9 мин чтения
Транзакции в 1С: группа операций, которая выполняется целиком или откатывается
Запросы, скорость и права

Транзакции в 1С: вложенность, откат и типичные ошибки на примерах кода

Четыре коротких примера, на которых ошибаются даже опытные разработчики: явная транзакция внутри записи объекта, переменные после отката, объект в памяти против данных по ссылке и повторный НачатьТранзакцию.

9 мин чтения
Транспортная логистика в 1С:ERP: грузовики, маршруты и склад, связанные в единый процесс
Учёт и прикладные решения

Транспортная логистика в 1С:ERP: типовая доставка и доработка под автопарк

Разбираю, что даёт типовой контур доставки 1С:ERP, где начинаются доработки — ОСАГО, техосмотры, ГСМ, распределение фрахта — и как сделать их без ущерба для обновлений.

10 мин чтения
Управляемые формы 1С: окна, сообщения и представления объектов
Формы и интерфейс

Управляемые формы 1С: представление объекта, сообщения после закрытия и оповещение

Четыре задачи, с которыми регулярно сталкивается разработчик управляемых форм: своё представление ссылки, ввод без отдельной формы, сообщения, которые не пропадают, и оповещение о закрытии, которое не срабатывает.

10 мин чтения
Установка сервера 1С на Ubuntu: два сервера кластера, СУБД PostgreSQL и веб-сервер
Администрирование и серверы

Установка сервера 1С на Ubuntu: кластер из двух серверов, RAS/RAC и публикация в Apache

Пошагово ставлю сервер 1С:Предприятия 8.3 на Ubuntu LTS: служба systemd, удалённое администрирование через RAS/RAC, второй рабочий сервер, создание базы и веб-публикация.

13 мин чтения
Фоновое задание во внешней обработке 1С: форма с индикатором прогресса и сервер, выполняющий задачу
БСП

Фоновое задание во внешней обработке 1С на БСП: запуск, прогресс и результат

Пошаговый пример: дополнительная обработка запускает свой метод в фоне через подсистему «Длительные операции», показывает процент выполнения и забирает результат из временного хранилища.

11 мин чтения
Фоновые задания 1С: длительная обработка разделена на параллельные потоки
Запросы, скорость и права

Фоновые задания 1С для многопоточности: ускоряем длительную обработку без БСП

Цикл по тысячам объектов можно разделить на порции и выполнить параллельно. Разбираем запуск фоновых заданий платформенными средствами, ожидание, сбор результатов и подводные камни.

8 мин чтения
Хардкод в 1С: значения, вбитые в код, заменяются настройками в базе
Стандарты и инструменты

Хардкод в 1С: как убрать «гвозди» из кода и хранить ключевые значения в настройках

Разбираю, чем опасны «гвозди» в коде 1С, и два рабочих способа вынести их в данные: справочник с предопределёнными элементами и регистр соответствий с составным ключом.

9 мин чтения
Хранилище конфигурации 1С через HTTP: веб-сервер между разработчиками и сервером хранилища
Администрирование и серверы

Хранилище конфигурации 1С через HTTP: сервер хранилища и публикация на Apache

Как дать разработчикам доступ к хранилищу конфигурации через веб-сервер: сервер хранилища, файл .1ccr, Apache с модулем 1С, проверка и частые ошибки.

8 мин чтения
Чтение Excel в 1С: таблица Excel превращается в таблицу значений на сервере 1С
Интеграции и обмены

Чтение Excel в 1С: табличный документ, COM, ADO и внешний источник данных

Сравниваем способы загрузки данных из Excel в 1С, разбираем рабочий код через табличный документ с передачей файла на сервер и типичные ошибки: зависшие процессы Excel, даты-строки, пустые строки.

11 мин чтения
Штамп в PDF средствами 1С: печать-отметка поверх многостраничного документа
Администрирование и серверы

Штамп в PDF средствами 1С: вставка картинки без конвертации через ImageMagick

Вставляем картинку штампа в PDF через ДокументPDF, не превращая документ в растр: многостраничные файлы обрабатываются в разы быстрее, текстовый слой сохраняется.

10 мин чтения
COM-объект на C# для 1С: мост между библиотекой .NET и платформой 1С
Интеграции и обмены

COM-объект на C# для 1С: пишем, регистрируем и вызываем через COMОбъект

Минимальная библиотека на C#, которую 1С видит как COM-объект: код класса, настройка проекта, регистрация для 32- и 64-битной платформы и вызов из встроенного языка. Плюс когда COM лучше не использовать.

9 мин чтения
HTTP-сервисы 1С: схема обмена JSON между информационной базой и внешней системой
Интеграции и обмены

HTTP-сервисы 1С: создание REST API, публикация и вызов из другой базы

Делаем REST API на платформе 1С: от шаблона URL и обработчика метода до публикации на веб-сервере и вызова сервиса из другой информационной базы.

12 мин чтения
Утилита ibcmd 1С: консоль администратора управляет базами на серверах СУБД
Администрирование и серверы

ibcmd 1С: примеры команд для выгрузки, загрузки и копирования баз

Разбираю консольную утилиту ibcmd: как создать базу, выгрузить и загрузить dt без конфигуратора, скопировать базу между серверами СУБД и встроить всё это в скрипты.

9 мин чтения
NULL и пустые значения в 1С: пустые ячейки и ловушки в данных
Запросы, скорость и права

NULL и пустые значения в 1С: подводные камни дат, чисел и ссылок

Разбираем ошибки, которые прячутся в самых простых конструкциях 1С: NULL в запросах, проверка заполненности, битые ссылки, текущая дата в разных часовых поясах и строка в число.

11 мин чтения
OData 1С: внешнее приложение читает и изменяет данные информационной базы по REST
Интеграции и обмены

OData 1С: стандартный интерфейс, публикация, запросы и примеры кода

Разбираем автоматический REST-интерфейс платформы: как включить OData, как строить запросы к справочникам, документам и регистрам и когда лучше выбрать HTTP-сервис.

12 мин чтения
OData в 1С: данные из расширения конфигурации доступны внешним системам через REST
Интеграции и обмены

OData в 1С для объектов расширения: как опубликовать метаданные расширения

Объекты расширения не появляются в настройке OData сами. Показываю два пути — платформенный метод состава интерфейса и доработку обработки БСП в расширении — и как проверить результат.

7 мин чтения
RLS в БСП: ограничение доступа на уровне записей для объектов конфигурации
Запросы, скорость и права

RLS в БСП: подключение новых объектов к производительному варианту ограничения доступа

Инструкция по подключению своих объектов к универсальному ограничению доступа БСП и чек-лист, что проверить, если пользователь видит лишние данные при включённом RLS.

11 мин чтения
Swagger для 1С: интерактивная документация HTTP-сервисов в браузере
Интеграции и обмены

Swagger для 1С: документация OpenAPI для HTTP-сервисов и проверка запросов

Интегратор открывает браузер и видит методы, параметры и примеры ответов вашего API в 1С. Разбираем два способа сделать Swagger для HTTP-сервисов и грабли с веб-сервером.

11 мин чтения

Нужна помощь с 1С?

Опишите задачу: разберусь, оценю объём и предложу решение. Код 1С, интеграции и настройку делаю сам.

Написать в Telegram