Как не отстать от развития экосистемы 1С

19.06.25

Архитектура - Архитектура решений

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

 

Меня зовут Матвей Серегин, я работаю в Фирме 1С системным архитектором сервиса 1С:Бухобслуживание – это самый крупный сервис по автоматизации бухгалтерского аутсорсинга. Платформа 1С развивается в разных направлениях: для пользователей и для специалистов службы эксплуатации. Я рассмотрю изменения с позиции прикладного разработчика. Что мне, как разработчику, нужно знать, чтобы грамотно вписывать в свои конфигурации те возможности, которые предоставляют новые версии платформы? Постараюсь на каждую из технологий привести конкретный практический пример, где она либо уже применяется (мной или в практиках), либо, если технологии совсем новые (в бета-версиях), где это будет применяться или где я планирую это применить.

 

Что входит в экосистему 1С для разработчика

 

 

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

Прикладные подсистемы базируются на этом фундаменте. В своей работе они взаимодействуют с многочисленными дополнительными компонентами: 1С:ИТС, 1С:Аналитика, 1С:Предприятие.Элемент, 1С:Исполнитель, 1С:Шина и многими другими. Они, с одной стороны, не включены в дистрибутив платформы. С другой стороны, современные конфигурации очень много с ними взаимодействуют и получают дополнительную пользу.

 

 

В статье я хочу сфокусироваться на развитии двух основных продуктов: платформы 1С:Предприятие (версии с 8.3.23 по 8.3.26) и Библиотеки стандартных подсистем (версии с 3.1.8 по 3.1.10).

Рассмотрим отрезок с 2022 года по сегодняшний день – и немного заглянем в будущее.

 

Режим совместимости и новые функции платформы

 

 

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

На сегодняшний день в типовых конфигурациях режим совместимости где-то 8.3.24, а где-то 8.3.21. Новую функциональность платформы мы практически всегда можем использовать без изменения режима совместимости. То есть, если у нашей конфигурации режим совместимости 8.3.21, мы поставили платформу 8.3.25 и можем использовать новые функции, привнесенные в 8.3.25. Режим совместимости не мешает.

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

 

Новшества платформы 8.3.23: Комьюнити-лицензии, Регулярные выражения, Множественные значения, Распознавание речи

 

 

Комьюнити-лицензии. Появилась возможность бесплатно использовать платформу для разработки, тестирования и обучения. Если у вас есть задача на своей машине (дома, на ноутбуке, на виртуалке) развернуть платформу и потестировать какие-то базы или поразрабатывать – вы можете сделать это бесплатно. Вам не нужен ключ или программная лицензия. Вы просто регистрируетесь на портале developer.1с.ru, подтверждаете номер телефона и активируете комьюнити-лицензию на машине.

Преимущества. Во-первых, можно использовать сервер. То есть развернуть сервер и в нем активировать лицензию. Во-вторых, на этом сервере можно использовать функции, которые требуют лицензию КОРП (профили безопасности, хранилище двоичных данных и др.). Разработчики могут у себя разрабатывать механизмы, которые опираются на КОРП-функции платформы, при этом не просить у работодателя покупку дорогого сервера КОРП.

 

 

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

Примеры использования:

  • Автоматизированная проверка конфигурации. Статический анализатор кода на 1С использует регулярные выражения для проверки соответствия кода стандартам.

  • Проверка внедрения БСП (статический анализ).

  • Распознавание назначения платежа в банковских выписках (бухгалтерия НКО) – регулярные выражения вычленяют блоки строки для передачи в алгоритм.

  • Синтетические тесты. Строковые функции БСП (латинские/русские буквы) работают в десятки раз быстрее при замене алгоритмов на регулярные выражения. Возможно, БСП изменит эти функции после отказа от поддержки платформы 8.3.21.

  • Исключение небезопасного содержимого из файлов HTML (например, теги script). Алгоритмически это сложно и ресурсоемко, регулярные выражения делают это проще и быстрее.

В багаж знаний профессионального разработчика 1С уровня Middle+ стоит включать регулярные выражения. Очень полезный инструмент.

 

 

Множественные значения в полях ввода. Ранее значения из списка значений выводились через точку с запятой и редактировались в отдельном окне. В 8.3.23 появилась возможность:

  • Редактировать значения через выпадающее меню;

  • Управлять оформлением (прикреплять картинки, выводить значения в кружочках, в ячейках таблиц значений);

  • В динамических списках при добавлении автоматического отбора с видом «В списке» включать множественный выбор (работает «из коробки»);

  • Делать удобный вывод множественных значений в конкретной колонке таблицы (раньше делали рядом лежащую таблицу значений или вложенную таблицу без удобного интерфейса).

 

 

Распознавание речи (первая ступень). Платформа поддерживает:

  • Потоковое распознавание. Система в реальном времени преобразует речь человека в текст с помощью специального сервиса.

  • Локальное и облачное распознавание. Можно использовать собственные мощности или облачные решения.

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

  • Подключение пользовательских словарей. Если в речи встречается специфическая терминология, можно загрузить свой словарь.

Можно надиктовывать письма или автоматически транскрибировать телефонные разговоры (если у вас АТС пишет телефонные разговоры) без подключения каких-то сторонних решений.

 

Новшества платформы 8.3.24: Работа с буфером обмена, Улучшения отладки, Форматирование в табличном документе

 

 

Работа с буфером обмена. Ранее с помощью поля HTML-объекта, COM-объекта или JavaScript можно было положить информацию в буфер обмена, а затем достать. Это было не кроссплатформенно и трудоемко. Теперь используется единый кроссплатформенный программный интерфейс, который работает в браузере (Linux, Windows, macOS).

Можно реализовывать нативные сценарии:

Копирование изображений и диаграмм. Скопируйте картинку или диаграмму в буфер обмена (Ctrl+C) и вставьте ее в Telegram через Ctrl+V.

Быстрое добавление скриншотов в документы. Сделайте скриншот (например, с помощью PrintScreen или Win+Shift+S) ? вставьте как присоединенный файл через Ctrl+V в письмо или заявку в 1С.

Перенос файлов между проводником и 1С. Выделите несколько файлов в проводнике (Ctrl+C), переключитесь в окно 1С и вставьте их (Ctrl+V) — файлы добавятся как вложения.

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

Платформа позволяет записывать и считывать сложные структуры в системный буфер (обеспечивая прозрачную работу между тонким клиентом и веб-клиентом).

 

 

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

 

 

Форматирование в табличном документе. Появилась возможность форматирования ячеек (в несколько этапов). Можно сформировать форматированную строку и назначить ее в качестве текста ячейки.

Часто возникают запросы на выделение элементов при печати документов. Например, в договорах нужно подсветить ключевые слова (название организации, контрагента и т. д.). Раньше для такого форматирования приходилось создавать печатную форму в формате DOCX, даже если требовалось лишь выделить один фрагмент жирным.

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

 

Новшества платформы 8.3.25: Пауза, Синтез речи, Временные таблицы, Усечение типов, Режимы записи регистров

 

 

Пауза. Появилась функция приостановки выполнения кода на указанное время (в миллисекундах).

Нюансы. Прямое использование паузы в клиент-серверном вызове запрещено – она доступна только на сервере. Ограничение можно обойти с помощью ожидания фонового задания. Однако мы теряем точность паузы, поскольку запуск фонового задания требует дополнительного времени (возможна погрешность вплоть до десятков миллисекунд).

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

  • Ожидать выполнение синхронного метода внешней системы (например, отправили запрос, подождали 1–2 секунды, проверили ответ).

  • Контролировать частоту запросов при интеграции с внешними сервисами.

Например, если сервис ограничивает число запросов (не более 10 в секунду), то после получения ошибки 429 можно сделать паузу на разумное время (например, секунду) и повторить запрос.

Важно: если сервис требует ждать 5 минут, пауза – не лучшее решение. В таком случае стоит прервать выполнение и возобновить попытки при следующем сеансе взаимодействия.

 

 

Синтез речи (вторая ступень). Появилась возможность озвучивать текст (например, прочитать входящее письмо). Это еще один шаг к созданию голосовых интерфейсов.

В платформе 8.3.28 планируется активация распознавания речи по ключевым словам, что позволит создавать полноценные голосовые интерфейсы (как Яндекс.Алиса или Apple).

 

 

Временные таблицы. Появились новые возможности:

  1. Добавлять несколько индексов (включая уникальные) к временной таблице. Это полезно, если таблица используется в разных запросах с соединениями по разным полям.

  2. Добавлять записи в существующую временную таблицу (вместо уничтожения старой и создания новой с тем же именем через «Поместить»). Уменьшает нагрузку на СУБД, упрощает код (особенно при использовании менеджеров временных таблиц, собирающих данные из разных модулей).

 

 

Усечение типов. Изменения на стыке эксплуатации и прикладной разработки.

Если мы работаем с регистром сведений, содержащим измерения с множественными ссылками, и при этом в этом технологическом регистре не хранятся важные пользовательские данные (например, там могут быть только кэши), то при удалении одного типа из составного измерения нам нужно заранее позаботиться о том, чтобы все строки, где этот тип упоминался, были удалены. В противном случае при реструктуризации возникнет ошибка из-за нарушения уникальности ключевых полей, что остановит процесс.

Теперь, если мы уверены, что эти данные можно безопасно удалить, мы можем просто указать для измерения параметр «удалять записи при реструктуризации».

Однако если усечение типов для нас неприемлемо (например, в случае определяемого типа, на который мы опираемся в чужой библиотеке), мы можем установить правило «запрещено усечение». В таком случае система не будет пытаться очищать данные или проверять их на дубли, а просто откажет в выполнении операции, сообщив, что для этого измерения удаление запрещено.

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

 

 

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

Раньше, когда нужно удалить или обновить записи в регистре сведений с разными наборами измерений, один отбор не покрывал все случаи. Приходилось обрабатывать записи в цикле – по одной или минимальными группами – каждый раз вызывая метод «Записать» у регистра. Даже если обернуть это в транзакцию на верхнем уровне, каждый вызов оставался ресурсоемкой операцией.

Теперь мы можем выполнить эту задачу за один вызов метода «Записать»:

  1. Готовим набор записей;

  2. Указываем, по каким измерениям нужно удалить данные;

  3. Запрос отправляется в СУБД, и записи удаляются.

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

 

 

Обновление и его отличие от Слияния:

  • В режиме Слияния платформа проверяет наличие записей: обновляет существующие или добавляет новые;

  • В режиме Обновления мы гарантируем, что записи уже есть в регистре. Если их нет, возникнет исключение.

В 25-й версии новые режимы записи регистров работали только с независимыми регистрами сведений. В 26-й поддерживаются и регистры накопления, и подчиненные регистратору регистры сведений.

Для регистров накопления ключевыми полями становятся регистратор и номер строки, по которым сопоставляются записи. При этом не требуется устанавливать отбор по регистратору. Можно, например, взять 100 документов, сформировать их движения единым алгоритмом и записать одной операцией (если движения ранее не были созданы).

 

Новшества платформы 8.3.26: Прямое оповещение клиента, Пакетная обработка, Управление строкой поиска, Расширение режимов записи регистров

 

 

Прямое оповещение клиента. Ранее для оповещения клиента с сервера требовалась работающая «Система взаимодействия». В 8.3.26 появился простой программный интерфейс для прямого оповещения клиента в рамках сеанса.

Алгоритм действия:

  1. На клиенте подключается обработчик оповещения;

  2. На сервере вызывается метод отправки данных в сеанс;

  3. Обработчик на клиенте получает данные.

Примеры использования:

  • Пришел новый лид и с сайта через HTTP-сервис необходимо срочно оповестить «Позвони менеджеру».

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

  • Разрабатываем собственный мессенджер/чат в 1С.

  • Необходимо быстро реагировать на изменение параметров работы оборудования/внешней системы.

  • Необходимо оповестить пользователя о срочной задаче.

  • Требуется отображать прогресс выполнения фонового задания (замена опросам состояния).

 

 

Пакетная обработка. Появилась возможность получать объекты (элементы справочников, документы) порционно при обработке большого объема. Ускоряет чтение (хотя основное время обычно занимает запись).

 

 

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

 

Взгляд в будущее. Платформа 8.3.27+

 

Планируемые возможности будущих версий:

  • Увеличение максимального числа строк в табличной части. Решение для тех, кто сталкивается с ограничениями.

  • Форматированная строка в макетах СКД. Возможность использовать форматированный текст не только в табличных документах, но и в отчетах, формируемых Системой компоновки данных (СКД). Гибкое оформление отчетов.

  • Поддержка протокола WebSocket со стороны клиента. Потенциал для интеграции с промышленными роботами и другими системами, требующими двусторонней связи в реальном времени (например, для роботизации).

 

Новшества БСП 3.1.8 - 3.1.10: Автокомпоновка печатных форм, Метки, Управление доступом

 

 

Автокомпоновка печатных форм. Эта функциональность появилась в версии 3.1.8. Она позволяет создавать простые печатные формы без программирования. Достаточно зайти в «Администрирование» ? «Печатные формы отчетов и обработок» ? «Макеты печатных форм», нажать кнопку «Добавить» и собрать форму в пользовательском режиме. Можно добавлять параметры, стандартные функции и другие элементы.

Конечно, это не дает такой гибкости, как встроенный язык программирования, где можно реализовать любую логику. Однако базовые поля доступны, а при необходимости их список можно расширить – для этого нужно подложить СКД-макет в конфигураторе соответствующему объекту. Если требуется распространить эту печатную форму на другие инсталляции, готовый макет можно перенести в конфигуратор и затем развернуть.

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

 

 

Метки. Это альтернативное представление дополнительных реквизитов – по сути, те же данные, но с другим способом вывода в интерфейсе (в списках и формах объектов).

 

 

Управление доступом с ограничением по времени. В подсистеме управления доступом появилась возможность задавать срок действия прав пользователя. Например, если сотрудник временно замещает руководителя отдела во время отпуска, можно сразу указать дату окончания доступа. Как только срок истечет, пользователь автоматически исключается из группы.

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

 

Развитие сторонних компонентов: Система взаимодействия, 1С:Аналитика, 1С:Предприятие.Элемент

 

 

Система взаимодействия включает в себя:

  • Встраиваемые веб-чаты;

  • Удобное взаимодействие с командами ботов (например, кнопки в Telegram);

  • Аналог Telegram-каналов, где писать может только программа (администратор), а пользователи – только читать (например, канал важных новостей).

 

 

1С:Аналитика включает в себя:

  • Возможность использовать данные из нескольких информационных баз в одном дашборде;

  • Возможность настраивать объединение и соединение таблиц источников данных на уровне самой «Аналитики» (раньше это можно было делать только через кастомные источники данных, написанные разработчиком).

 

 

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

 

*************

Статья написана по итогам доклада (видео), прочитанного на конференции INFOSTART TECH EVENT.

См. также

Архитектура данных Архитектура решений Бесплатно (free)

При проектировании информационной системы архитектору важно думать не только о ее запуске, но и о долгосрочной работе – на 5-10 лет вперед. Он должен заглянуть в будущее, предвидеть возможные вызовы при эксплуатации и развитии, и учесть эти факторы. По сути, архитектору для выполнения своей работы нужно уметь путешествовать во времени. Расскажем о выстраивании управления архитектурой информационных систем, которое помогает организации достигать своих стратегических целей, минимизируя риски и оптимизируя ресурсы.

27.03.2025    1297    0    mutovin    2    

6

Анализ потребностей и поиск решений Архитектура решений Бесплатно (free)

В четырнадцатом выпуске третьего сезона подкаста Радио “Аналитик“ обсудили, что из себя представляют облачные технологии и какие возможности они предоставляют для работы с решениями 1С.

11.03.2025    543    0    Radio_Analyst    0    

5

Архитектура решений Платформа 1С v8.3 1C:ERP 1С:КА Управленческий учет Бесплатно (free)

Давайте решим задачку, как скрестить на проекте внедрения ERP в одном отчете данные нескольких ключевых отчетов: по финансовым результатам, по взаиморасчетам, по структуре себестоимости и ОСВ. И затратить на разработку не более 20 часов, переложив всю работу на аналитиков. Использовать будем функциональность подсистемы бюджетирования в ERP. Поскольку задача - архитектурно-управленческая - статья про ход мысли. Так что слов будет много, картинок не очень, а техническое решение - в конце статьи.

06.03.2025    676    0    ovetgana    2    

4

Архитектура решений Внедрение изменений Платформа 1С v8.3 Бесплатно (free)

Самым подходящим инструментом для описания архитектуры системы на платформе 1С является продукт СППР – он привязан к метаданным 1С и допускает доработки под потребности конкретной команды разработки. Расскажем об информационных кризисах, которые использование СППР на проекте позволяет решить, а также о доработках, необходимых для повышения эффективности инструмента и превращения базы данных в полноценную базу знаний.

27.01.2025    2467    0    jf2000    3    

5

Архитектура решений Бесплатно (free)

«1С:Розница» и «1С:Управление нашей фирмой» (1С:УНФ) вместе с программой «1С:Рабочее место кассира» (1С:РМК) представляют линейку решений для малого бизнеса. Решения линейки имеют единую архитектуру, код и пользовательские интерфейсы, что обеспечивает простое совместное использование и легкий переход между решениями по мере развития бизнеса. Разработка программ линейки решений ведется одной командой, в одном репозитории, полностью на общем коде. Расскажем о специфике такой разработки и преимуществах унификации решений 1С.

05.12.2024    881    0    Samigullina_KI    3    

4

Архитектура решений Платформа 1С v8.3 Управленческий учет Бесплатно (free)

На связи Анна Астахова, коммерческий директор ИТ-интегратора «Белый код». У компаний за последние 3 года появилось больше каналов коммуникации с клиентами. Сегодня у многих есть сайт, канал в Telegram, группа в «ВКонтакте» и так далее. Здесь скидка, тут баллы — как этим управлять легко с помощью 1С?

21.10.2024    701    0    user1980363    0    

1

Архитектура решений Программист Платформа 1С v8.3 Бесплатно (free)

В статье расскажу про относительно уникальное явление на рынке. EmplDos - полноценный сервис, который в качестве Backend использует платформу 1С. Речь пойдёт не только о технической и архитектурной стороне вопроса, а ещё и о всех трудностях и граблях, которые пришлось и до сих пор приходится преодолевать на пути к успеху.

14.10.2024    5468    0    comol    29    

31

Архитектура решений Бесплатно (free)

Подход DDD гласит, что сложные системы (такие, как 1С) должны разрабатываться на основе понимания предметной области, в которой работает бизнес. Одновременно вместе с ростом конфигураций возникает проблема их доработки, разделения на части. О том, как применять подход DDD и принципы построения модульной архитектуры в 1С, расскажем в статье.

20.09.2024    1899    0    amon_ra    7    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. starik-2005 3180 19.06.25 14:10 Сейчас в теме
Статья уже отстала, ибо 8.3.27 с вебсокетом вышла, а за ней и 8.5.1 вышла с новым интерфейсом, правда пока сильно глючная.
2. Akcium 367 19.06.25 14:14 Сейчас в теме
(1) Да, это текстовая расшифровка доклада с осенней конференции 2024 года.

На текущий момент вышла платформа 8.3.27 и БСП 3.1.11, но крупных изменений в функциях для прикладной разработки там нет. Разве что веб-сокеты в 8.3.27.

Новый интерфейс пока в тестовой версии, ждем выхода в релиз.
3. starik-2005 3180 19.06.25 14:16 Сейчас в теме
(2)
Разве что веб-сокеты
А количество строк?
4. s512 19.06.25 18:57 Сейчас в теме
19 лет работаю с "восьмеркой"
Почитал статью и одна мысль : "вы серьёзно?"
Почти все, что там написано давно решено т.н. "костылями" причём часто высокотехнологичными. Например "пауза" набившая оскомину или "конструктор печатных форм", веб сокеты и прочая или Регулярные выражения? Раньше юзали микрософтовскую библиотеку, теперь она просто прикручена к платформе, и её функции мы можем вызывать на родном языке. Я могу ещё много чего перечислить.
Мы тут разработчики в основном, ждём, что полезное будет сделано для нас. Например Очень жду удобного переключения между сеансами фоновых заданий в отладке (больше чем лебединого озера на тв). И чтоб в модуль сеанса не "запрыгивала" отладка.
А ещё нам подарили новые точки останова, но теперь в редакторе модуля прыгают строки вверх вниз, когда пишешь (с 8.3.25 началось).
Ещё хочу при сравнении XDTO пакетов видеть различия (знаю, что сложно, но миллионер/дер Нуралиев мог бы дать на это денег)
БСП - вещь, но только для созерцания, 100500 библиотек Pytona быстрее освоить - там хоть что-то документируют. Ааа документации ИТС нет в свободном доступе.
Но это уже другая тема)
Оставьте свое сообщение