Современный инструментарий 1Сника

25.08.26

Разработка - DevOps и автоматизация разработки

Платформа 1С давно вышла за рамки учетных систем. Сегодня это полноценная среда для создания сложных, высоконагруженных и распределенных приложений. А значит, и стек технологий современного разработчика кардинально изменился. Систематизируем весь инструментарий, который превращает 1С-программиста в инженера: от EDT и Git до автотестов на YAxUnit, контейнеризации приложений в Docker, мониторинга в Prometheus и организации шины данных на Kafka. Разберемся, зачем каждый инструмент нужен, как он вписывается в жизненный цикл разработки и с чего начать его внедрение.

Разбираться в технологиях мне интересно с детства. В то время я устанавливал программы с дисков просто чтобы понять, как они работают и для чего нужны. Alcohol 120%, DAEMON Tools, ArtMoney, AIMP, скины для Winamp – все, что было на дисках – все было установлено. Тогда я понял, что программы есть практически для всего, и можно не изобретать велосипед, а пользоваться уже существующими решениями.

А когда я пришёл в мир 1С, меня очень удивило, что внешние инструменты здесь почему-то мало используются.

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

Об этой карте стека технологий для 1С мы сегодня и поговорим.

 

 

Начнем мы с самой 1С – с того, как ее в принципе видит обычный пользователь. Потому что когда у человека спрашивают: «В какой программе ты работаешь?», он ответит: «Я работаю в 1С 8.3».

Но мы-то с вами знаем, что он на самом деле работает в «1С:Бухгалтерии предприятия, редакция 3.0» на платформе 8.3. И что сама 1С не монолитна в своей структуре.

 

 

1С можно условно разделить на две части:

  • Пользовательскую – для работы с информационной базой в режиме 1С:Предприятие (среда выполнения).

  • И конфигуратор (среда разработки), где можно вносить в конфигурацию изменения и обновлять ее на новую версию.

 

 

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

 

 

Ведь если пойти еще глубже, выяснится, что:

  • Клиентов может быть несколько. Причем они могут быть разные – толстые и тонкие. А еще с 1С можно работать через веб-клиент – для этого базу 1С нужно будет опубликовать на веб-сервере.

  • Серверы 1С могут объединяться в кластеры серверов, чтобы все это работало вместе.

  • А база данных может быть не только файловая, но и, например, на PostgreSQL.

  • Ну и журнал регистрации тут тоже есть, и позже мы поговорим про него чуть подробнее.

 

 

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

Это важный инструмент в хороших командах.

 

 

Потом, со временем, мы понимаем, что разработку 1С можно вести не только в конфигураторе. Есть еще и другие среды разработки, которые тоже умеют работать с 1С и даже запускать отладку из него – например, Enterprise Development Tools или VS Code.

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

 

 

Git и хранилище – это системы контроля версий.

  • Одна из них – централизованное хранилище, которое всегда хранит всю историю в одном месте.

  • А Git – распределенная система контроля версий, где у каждого разработчика своя собственная копия репозитория со всеми существующими в нем коммитами. И если что-то пойдет не так, можно будет восстановить все предыдущие версии кода из репозитория другого разработчика.

 

 

Отдельное направление, которое сейчас активно развивается и применимо в новых средах разработки – это различные плагины ИИ. Например, в 1C:EDT уже встроен 1С:Напарник, который умеет продолжать и генерировать код, помогать с рефакторингом и объяснять ошибки.

 

 

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

 

 

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

И здесь важно разделять два понятия, которые иногда путают: Git и GitHub – это не одно и то же.

  • Git – это сама система контроля версий.

  • А GitHub, GitLab, BitBucket и другие подобные решения – это платформы, где можно хранить удаленные Git-репозитории и организовывать совместную работу.

    • GitLab обычно разворачивают внутри компании на собственных серверах.

    • GitHub используют как облачный сервис.

    • Или размещают репозиторий на одном из альтернативных облачных Git-серверов – например, в BitBucket.

 

 

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

И первое, что мы видим, когда пытаемся запустить отладку кода с ошибкой – это сообщение от конфигуратора о том, что сохранить изменения у него не получилось из-за того, что в коде, например, не хватает точки с запятой. Это наше первое знакомство со встроенной в конфигуратор синтаксической проверкой – одним из инструментов статического анализа.

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

 

 

Кроме встроенных проверок существуют еще и отдельные инструменты статического анализа.

  • Например, плагин BSL Language Server, который можно подключить в среду разработки VS Code, и получать замечания сразу во время написания кода.

  • Также есть 1С:Автоматизированная проверка конфигураций (АПК), которая проверит код всей вашей конфигурации на соответствие стандартам разработки. Выдаст миллион замечаний, вы посмотрите, вздохнете и продолжите работать, как раньше.

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

 

 

Чтобы все эти проверки запускались не вручную, а автоматически каждую ночь, существует набор практик CI/CD.

 

 

И самый популярный у 1С-ников инструмент CI/CD – это Jenkins. Его чаще всего используют для автоматизации получения исходников из среды разработки, чтобы передать их в инструмент статического анализа. Основная причина его популярности в том, что вы можете самостоятельно развернуть и настроить Jenkins у себя на компьютере. Причем он может делать что угодно – даже суперсложные вещи. Но за ним нужно ухаживать: обновлять, бэкапить, следить, чтобы не упал.

 

 

При этом Jenkins далеко не единственный вариант. Если команда работает с GitHub, можно попробовать GitHub Actions. А если у вас Gitlab, то там есть собственный механизм – GitLab CI.

 

 

Или можно использовать Travis CI – это такой же запускатор проверок, тестов и других операций в рамках CI/CD. И хотя в 1С-сообществе его используют довольно редко, я его сюда тоже добавил для разнообразия.

 

 

А теперь представьте: сначала мы работали только с базой 1С:Бухгалтерии, а потом у нас появилась еще и 1С:ЗУП. И возникла потребность, чтобы эти две базы как-то друг с другом обменивались.

 

 

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

Наверняка многие из вас либо сами с ней работали, либо хотя бы встречали в резюме строчку: «Владею Конвертацией данных». У меня, честно признаюсь, тоже такая строчка в резюме была. Но потом я познакомился с ребятами, которые разрабатывают типовые форматы обмена, правила конвертации и алгоритмы, и понял, что вообще Конвертацией не владею. Это просто какая-то волшебная штука, в которой можно делать все что угодно. И как это работает – мне не всегда понятно.

 

 

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

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

Преимущество формата EnterpriseData в том, что с ним могут работать и внешние решения, и 1С-конфигурации. То есть на стороне CRM этот формат может быть поддержан. А с помощью «Конвертации данных» такой обмен можно настроить для конкретного случая.

 

 

Дальше нашей системе понадобилась интеграция с мессенджером, а точнее сразу с двумя – с Телеграм и МАКС. Поскольку у каждого из них свой API, свои особенности и форматы сообщений, напрямую обмениваться будет неудобно. Нужна промежуточная система. Один из вариантов – Система взаимодействия 1С.

 

 

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

Например, клиент пишет нам в Telegram, сообщение приходит в систему, менеджер видит его непосредственно в 1С, отвечает там же и ответ отправляется обратно пользователю. При этом сотруднику не нужно постоянно переключаться между 1С и мессенджером.

 

 

Если же Система взаимодействия вам по каким-то причинам не подходит, есть ещё один интересный вариант – Открытый пакет интеграций (ОПИ).

Это большая библиотека готовых интеграций с различными внешними сервисами: мессенджерами, файловыми хранилищами и многими другими системами. При этом нам не нужно самостоятельно разбираться в каждом API, просто подключаем к себе в базу готовую подсистему и вызываем методы оттуда. Этот проект развивает Антон Титовец. Код ОПИ открыт и доступен на GitHub, можно посмотреть, как это все работает.

 

 

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

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

Автотесты помогают:

  • Выявить проблемы на ранних этапах, ещё до того, как они повлияют на пользователей.

  • Контролировать качество внедряемых доработок – убедиться, что новая функциональность корректно работает в рамках текущей системы

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

 

 

Один из самых известных инструментов автоматизированного тестирования в сообществе 1С – Vanessa Automation.

 

 

Помимо Vanessa Automation есть еще и 1С:Тестировщик. Это бесплатный инструмент от фирмы «1С», наследник 1С:Сценарного тестирования, который тоже позволяет выполнять сценарные тесты. Он разрабатывается в том же отделе, что и 1С:Бухгалтерия предприятия. Все наши тесты написаны и работают как раз на нем.

 

 

Но если вам нужны не интерфейсные тесты, а модульное тестирование, есть шикарный инструмент YAxUnit. Он как раз позволяет делать удобные и понятные тесты для ваших методов.

 

 

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

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

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

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

Короче, очень крутая штука.

 

 

Но когда контейнеров становится много, ими нужно как-то управлять.

Чтобы с этим справиться, придумали Kubernetes, который как раз позволяет, как дирижер, управлять жизненным циклом контейнеризированных приложений.

Вы спросите: «Какое отношение это имеет к 1С, если у нас основная работа происходит с информационной базой? И вообще, как можно управлять всеми 1Сками одновременно, да еще и в изолированных средах?» Оказывается, в этом направлении давно ведет исследования Дмитрий Овчаренко. Можно у него выяснить, как Kubernetes работает с 1С, и куда все это движется.

 

 

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

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

Но что произойдет, если в этот момент информационная база недоступна? Или сайт недоступен? Запрос может просто не дойти.

А если речь идет о заказе клиента, это уже неприятно. Потеряли сообщение – потеряли заказ. Потеряли заказ – потенциально потеряли деньги и получили недовольного клиента.

 

 

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

 

 

Из популярных инструментов здесь можно выделить RabbitMQ, Kafka и 1С:Шина.

  • RabbitMQ – это классическая очередь. Отправитель публикует свое сообщение, оно направляется в очередь, и дальше брокер сам толкает (push) его нужным получателям по правилам маршрутизации – как почтальон с адресом. После того как потребитель подтвердил обработку, сообщение удаляется. Такой вариант подходит для простых задач вроде обработки заказов в магазине. С RabbitMQ удобно начинать, потому что для его использования в 1С есть много методических материалов.

  • Kafka – наоборот, представляет собой долговременный журнал событий, сообщения в котором не удаляются сразу после прочтения. Сообщения пишутся в топик, а получатели сами тянут (pull) их, когда хотят, и могут перечитывать старые. Удобно использовать для больших объемов данных, например, логов, телеметрии или огромных объемов изменений данных, где важна история событий.

  • А еще есть 1С:Шина. Она, наверное, больше похожа на RabbitMQ, чем на Kafka. Это полноценная шина данных с очередями сообщений, где они хранятся на диске до подтверждения доставки и передаются по сложным правилам маршрутизации.

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

 

 

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

И первый инструмент, который в свое время меня очень впечатлил – Fiddler.

Fiddler относится к категории снифферов – это анализатор трафика и прокси-сервер.

Fiddler используется для регистрации, проверки и изменения трафика HTTP и HTTPS между компьютером и веб-сервером.

С его помощью можно для любого запроса посмотреть заголовки, тело сообщения, параметры и что пошло не так. И после этого либо подправить отправленное сообщение, либо разобраться, что не работает на стороне приемника.

 

 

Другой инструмент здесь же в веб-разработке – это Swagger UI, который визуализирует OpenAPI-описание веб-сервиса в виде интерактивной документации.

Это «Инструкция по API», которую готовит сам сайт – генерирует красивую HTML-страничку с описанием своего API, т.е. всех доступных для сайта запросов (эндпоинтов). На этой странице мы даже без внешней системы (то есть без 1С) можем просто поменять данные и проверить, что все хорошо работает – можем кликать и тестировать прямо там, без кода.

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

 

 

Еще один очень популярный инструмент – это Postman, «почтальон для тестов». Правда, это скорее класс инструментов, потому что к самому Postman есть вопросы по безопасности. Но у него аналоги, которые делают примерно то же самое.

В Postman можно сохранять запросы к нашему API в коллекции, а потом последовательно их выполнять и проверять ответы – все ли у нас там хорошо.

Хотим проверить API – свой или чужой, с которым используется интеграция, неважно – сохраняем в Postman набор GET и POST запросов с данными, отправляем их на сервер и смотрим ответ. Есть коллекции для повторных проверок и автоматизация. Удобно проверять API, как отправлять посылки и смотреть, что внутри.

 

 

И последний инструмент, о котором я здесь хочу рассказать – это ngrok, который позволяет открыть туннель наружу.

Например, у нас на локальном компьютере, на localhost (127.0.0.1) развернут HTTP-сервис 1С. По этому адресу его никто снаружи не увидит, его видно только с локального компа. Но вам нужно проверить, что он работает – например, чтобы показать проект друзьям или потестить вебхуки. Ради этого необязательно сразу публиковать разработку на боевом сервере, ngrok позволяет открыть временный туннель наружу. Вы запускаете его, получаете внешний URL (типа abc.ngrok.io), он нам дает ссылку на наш сайт, и мы можем извне уже проверять.

 

 

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

И первый инструмент, о котором я хочу рассказать – это Allure, специальный фреймворк для визуализации результатов автоматизированного тестирования.

Например, Vanessa Automation умеет записывать результаты выполнения автотестов для 1С (с шагами, скринами, ошибками) в JSON-файл. То же самое можно настроить в Postman.

А Allure с помощью команды allure generate собирает их в красивый HTML-сайт с графиками и трендами – открываешь в браузере и видишь, какие тесты прошли, какие упали, сколько времени выполнялись, какая была история предыдущих запусков.

 

 

Если вдруг нужно мониторить физические машины, для этого есть Zabbix. Он позволяет раскидать на все пользовательские машины агентов, и если вдруг там закончилось место, проблемы с памятью или с CPU – при приближении значения к пороговому информация об этом поступит через SMS или уведомление в мессенджер. Агенты на раннерах с заданным интервалом передают метрики в центральный сервер Zabbix, триггеры проверяют правила (если CPU>90% – алерт по SMS), а графики строятся автоматически.

 

 

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

В Prometheus можно собирать множество показателей – фиксировать возникновение ошибок, количество выполненных заданий, время выполнения операций, число запросов, собственные метрики.

А потом с помощью Grafana всю эту информацию можно вывести в виде красивых дашбордов с графиками в реальном времени, алертами и фильтрами – обновляется само.

Связка Prometheus и Grafana особенно полезна для сбора информации по проблемам в системе и востребована у технических специалистов – разработчиков и службы поддержки.

 

 

А если красивые графики нужно показывать уже руководителю, пригодится другой класс решений – системы бизнес-аналитики, которые еще называются BI-системами.

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

 

 

Самая известная BI-система для 1С – это 1С:Аналитика, которая как раз позволяет собирать информацию из нескольких баз данных и агрегировать ее в одном месте.

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

В качестве зарубежного аналога можно посмотреть Power BI от Microsoft – он тоже может применяться для сложных аналитических отчетов по данным 1С.

 

 

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

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

 

 

Наиболее часто для анализа логов применяется ELK-стэк, куда входят Elasticsearch, Logstash и Kibana.

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

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

  • А Kibana позволяет рисовать на основании систематизированных логов дашборды в браузере – составлять графики, карты ошибок, видеть тренды и алерты.

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

 

 

Еще для анализа логов можно использовать Clickhouse. Это супербыстрая колоночная база данных для огромных объемов информации. Она не совсем про мониторинг, как ELK, но также часто используется как хранилище больших объемов логов и событий.

 

 

И еще отдельно отмечу OneSwiss – систему мониторинга и автоматизации рутинных операций обслуживания информационных баз 1С. Она опубликована в открытом доступе и много чего умеет.

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

 

 

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

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

  • Самый известный инструмент прототипирования – это Figma. Она уже давно стала стандартом для дизайна веб- и мобильных интерфейсов. При этом в ней точно так же можно спроектировать и форму 1С, показать ее заказчику для согласования, а потом передать для разработки.

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

  • Еще один инструмент, предназначенный специально для 1С – это MAKER STUDIO. В нем мы просто перетаскиванием готовых элементов в браузере накидываем форму, похожую на 1С – там есть желтая кнопка «Провести и закрыть», просмотр движений документа «ДтКт» и другие характерные составляющие. Аналитики могут его использовать, чтобы нарисовать интерфейс, согласовать его с заказчиком, а потом отнести разработчику. Либо скормить картинку искусственному интеллекту, чтобы он по ней уже написал то, что должно получиться.

  • А еще для этой цели могут пригодиться и внешние инструменты – такие как Mockplus, Balsamiq и другие.

    И вообще интерфейс полезнее сначала проектировать вне 1С, потому что иначе с ним потом психологически сложнее расставаться.

 

 

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

И здесь самым популярным инструментом в 1С-сообществе стал OneScript – движок, который позволяет запускать скрипты, написанные на 1С-подобном языке. Поэтому, если вы уже знаете встроенный язык 1С, вы легко освоитесь и с OneScript.

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

 

 

Такую же автоматизацию обеспечивает и инструмент от фирмы «1С», 1С:Предприятие.Элемент Скрипт – бывший Исполнитель.

Синтаксис у него такой же, как у 1С:Элемент. Поэтому если вы уже изучаете возможности разработки на 1С:Элемент, то можете попробовать автоматизировать рутинные операции через 1С:Элемент Скрипт.

Для скриптов, написанных на языке 1С:Элемент Скрипт, также поставляется специальная среда выполнения, оснащенная средствами DevOps и CLI. Удобно использовать для быстрой разработки и обучения.

 

 

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

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

 

 

Отдельный вопрос, который возникает практически всегда, когда заходит разговор о разработке – это где вести задачи?

Вариантов таск-трекеров для разработки множество, но я здесь собрал только самые распространенные.

  • Первый и самый используемый в мире – это Jira. Согласно опросу Stack Overflow Developer Survey 2024, Jira была самым распространённым из перечисленных инструментов совместной работы: её указали 51,4% ответивших на этот вопрос. Jira входит в линейку продуктов фирмы Atlassian, и хотя у нас она сейчас недоступна, как массовое явление ее стоит отметить.

  • Дальше – Trello. Он популярен из-за удобной Kanban-доски и наглядной визуализации задач. Там можно нарисовать колонки «План», «Анализ», «Разработка», «Тестирование», «Релиз» и интерактивно перевешивать задачу между разными статусами. Удобно для небольших команд и фрилансеров.

  • Яндекс Трекер особенно популярен в последнее время в российских ИТ-командах. Ориентирован на разработку, имеет поддержку Agile-проектов и интеграцию с Яндекс.Облаком.

  • Есть решения для управления задачами написанные и на самом 1С и позволяют легко адаптировать их под ваши нужды. Например, у фирмы «1С» есть СППР, в котором, помимо прочего, можно вести задачи. Или можно использовать инструмент «Трекер задач» от сообщества. Выбирайте любой, который вам нравится и подходит.

 

 

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

Для изучения стандартов рекомендую сайт Игоря Апресова v8std.ru, где стандарты 1С описаны понятным языком – что от нас требуется, и как это использовать.

Стандарты лежат в основе проведения код-ревью внутри команды, и на них опирается большинство проверок BSL Language Server и АПК, а также другие инструменты статического анализа.

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

 

 

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

Например, у многих в компаниях для КЭДО используется приложение «Кабинет сотрудника» – шикарная штука, удобно использовать для информирования персонала и подписания кадровых документов. Приложение доступно как сервис, легко подключается в типовых 1С.

 

 

И еще есть мобильная платформа, с помощью которой можно легко создавать мобильные приложения и публиковать их в различных маркетах: App Store, Google Play, Huawei AppStore. Встроенный в платформу 1С сервис публикации сильно упрощает подготовку дистрибутивов для магазинах приложений, и заморочек с этим будет гораздо меньше, чем при публикации вручную.

 

Куда двигаться дальше

 

Казалось бы, мы прошлись по всем основным элементам схемы. Но пока что это было скорее знакомство по закону малинового варенья – чем шире мажешь, тем тоньше слой. И конечно, сам стек технологий 1С на этом не заканчивается.

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

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

 

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

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

Инфостарт Tech Event 2026

Инфостарт A&PM Event 2026

Вступайте в нашу телеграмм-группу Инфостарт

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

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Работа с интерфейсом Анализ учета Мониторинг 1С:Предприятие 8 1С 8.3 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 Платные (руб)

Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения Infostart Dashboard. Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране. Узнайте возможность внедрения подсистемы у себя в конфигурации с помощью бесплатной обработки "Анализ внедрения подсистемы 1С Infostart Dashboard"!

31720 руб.

27.03.2025    90049    69    44    

76

Инструменты администратора БД Корректировка данных Мониторинг Учет документов 1С 8.3 1С:Управление торговлей 10 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

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

6100 руб.

11.06.2026    725    2    0    

4

DevOps и автоматизация разработки Тестирование QA Групповая разработка (Git, хранилище) Программист 1С:Предприятие 8 Бесплатно (free)

Четыре года в интеграторе я работал с git и EDT. Git после хранилища полюбил сразу: видно, кто и что менял. С EDT сложнее: тормозит, ошибки при обновлении ERP, автономный сервер внутри него работает только с файловой базой. На новой работе команда захотела перейти на git, я развернул EDT, и оно на второй день разрушило проект при загрузке расширения. Тогда я решил дать команде git с привычным Конфигуратором и инструмент, который за минуту доносит коммит до базы через ibcmd, вместо получасовой загрузки из файлов. На новой работе разрешили ИИ, и я написал это приложение с его помощью: от чтения документации и первого ТЗ до идей в электричке. Впервые за годы снова почувствовал себя творцом, а не закрывателем задач. По дороге приросли выгрузка, объединение и проверка конфигурации по коммитам, YAxUnit и режим MCP-сервера. В статье: схемы, скриншоты, грабли и честный список ограничений. Ссылки пока нет: хочу понять, нужно ли это кому-то, кроме меня.

03.09.2026    9413    KatanaDragon511    28    

37

Инструменты администратора БД Инструментарий разработчика Тестирование QA Системный администратор Программист Стажер 1С:Предприятие 8 Бесплатно (free)

В экосистеме 1С давно живут сотни инструментов: от Конфигуратора и Хранилища до систем тестирования, мониторинга, интеграции и CI/CD. Я собрал их в Ландшафт технологий, а теперь добавляю данные о реальном использовании. Рассказываю, как устроена карта, что показал первый опрос и почему в новой волне особенно нужны администраторы, аналитики и тестировщики.

01.09.2026    1704    mrXoxot    6    

24

Мониторинг Программист 1С 8.3 Россия Бесплатно (free)

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

17.08.2026    1628    255    AleksandrEvplov    19    

24

DevOps и автоматизация разработки Программист Бесплатно (free)

Хватит ограничивать себя родным и уютным стеком 1С. Пора расширять кругозор и осваивать смежные стеки! Разберемся, как Docker может упростить жизнь одинэснику: от сборки и тестирования 1С до запуска инфраструктуры и автоматизации CI/CD, причем быстро, воспроизводимо и без лишнего мусора в системе.

08.05.2026    6546    sleemp    81    

37

DevOps и автоматизация разработки Мониторинг Системный администратор Программист Бесплатно (free)

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

06.04.2026    15207    vladimir-89    12    

33

Тестирование QA Программист 1С:Предприятие 8 Бесплатно (free)

За последний год YAxUnit заметно вырос: обновилась документация, запуск тестов в EDT стал практически мгновенным, появился редактор для режима 1С:Предприятие, инструменты для подготовки тестовых данных и подключение к ИИ через MCP-сервер для проверки и улучшения кода. Расскажем о том, какие свежие возможности YAxUnit позволяют сделать модульное и интеграционное тестирование в 1С быстрым, эффективным и комфортным.

26.01.2026    7577    Жолтокнижниг    19    

30
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. osa92 76 26.08.26 01:45 Сейчас в теме
Большое спасибо за статью!!!
Если бы можно было поставить 10 "+" поставил бы!
Очень полезное описание ещё и по шагам.
Ждём следующую статью под названием "Проблемы и нюансы работ с инструментариями и способы их решений" 😅
Ninel_S; maosoft; user627620_kuklin_aa; NatalkaBal; mrXoxot; +5 Ответить
6. mrXoxot 3314 26.08.26 08:06 Сейчас в теме
(1) Спасибо огромное!
Для каждого инструмента есть статьи с чего начать, где как раз рассказаны первые шаги
2. Ibrogim 1912 26.08.26 02:13 Сейчас в теме
3. Светлый ум 508 26.08.26 06:53 Сейчас в теме
Еще можно добавить:

1) нормализацию МДМ
- Это как Sonar только для учета.

2) Bi системы, коих тоже масса
- из-за зоопарка программ проще некоторую аналитику для наглядности вынести в отдельную облачную базу
7. mrXoxot 3314 26.08.26 08:07 Сейчас в теме
(3) Да, про МДМ можно будет - согласен.

А вот BI-системы есть, но представлены слабо - только Power BI и Аналитикой
15. Dmitri93 12 26.08.26 11:57 Сейчас в теме
(7) а ещё инструменты для трёхстороннего сравнения/объединения (kdiff/p4 merge), они могут ускорить даже обычное нетиповое обновление, а в случае использования git, они вообще необходимы, на мой взгляд
16. mrXoxot 3314 26.08.26 12:36 Сейчас в теме
(15) Согласен!
Это действительно крутые инструменты, которые серьезно упрощают обновление

В ЕДТ трехстороннее сравнение из коробки сразу идет, а вот для Конфигуратора действительно мастхев!
31. Alistan007 26.08.26 17:18 Сейчас в теме
(7) Вы просто не умеете их готовить ) BI контур сейчас тоже может похвастаться довольно разветвленной архитектурой и помочь 1С избавиться от части тяжелых отчетов.
32. mrXoxot 3314 26.08.26 17:35 Сейчас в теме
(31) А можно пример такой системы? Куда покопать?
4. Светлый ум 508 26.08.26 06:55 Сейчас в теме
+1

Очень наглядно сделали, нарезал себе скриншотов понравилось
8. mrXoxot 3314 26.08.26 08:08 Сейчас в теме
(4) Итоговая схема тоже есть в репозитории на гитхабе - https://github.com/Oxotka/StackTechnologies1C
5. aximo 2751 26.08.26 07:11 Сейчас в теме
Среди всего этого многообразия не указан сайт хедхантер!
siamagic; +1 Ответить
9. mrXoxot 3314 26.08.26 08:08 Сейчас в теме
38. siamagic 27.08.26 21:25 Сейчас в теме
(9) бесполезным работу искать
41. mrXoxot 3314 28.08.26 09:12 Сейчас в теме
(38) Почему бесполезным?
47. пользователь 28.08.26 22:56
Сообщение было скрыто модератором.
...
48. mrXoxot 3314 29.08.26 09:14 Сейчас в теме
(47) О, интересный подход.
А из чего выводы про смузи появились?
53. peper- 07.09.26 18:08 Сейчас в теме
(48) У товарища, который считает себя умнее других, за 11 лет присутствия тут рейтинг 0. Чего вы от него хотите? Можно только на других желчь выливать
10. aximo 2751 26.08.26 08:10 Сейчас в теме
11. akR00b 26 26.08.26 08:25 Сейчас в теме
Отлично, спасибо!
12. d.zhukov 1661 26.08.26 10:55 Сейчас в теме
C 2009 года в 1С. 90% из перечисленного не использую. Бесполезная трата времени
swadim-is; rinik88; Brawler; +3 Ответить
13. mrXoxot 3314 26.08.26 11:38 Сейчас в теме
(12) А что используете?
23. Brawler 466 26.08.26 15:26 Сейчас в теме
(13) Например конфигруратора + хранилища хватает выше крыши и спишь спокойно, и голова не забита кучей мусора. Все эти разные программы приходят и уходят. Я себя давно ловлю на мысли, что я и музыку давно на кампе не слушаю при помощи AIMP, до него умер WINAMP.... Перерастаешь некоторые вещи и не хочется лишней суеты. Жизнь одна)))
И как весь тот набор прог тебе поможет с последней картинки, когда тебя по дружбе зовут помочь с базой))) припрешь весь софт, развернешь?, а исправить нужно только печатную форму или просто базу обновить)))
Оно и на основной работе нафиг не нужно. Но кому как, юзайте.
Best40000; XSlava; +2 Ответить
25. mrXoxot 3314 26.08.26 15:37 Сейчас в теме
(23) Да, для такого уровня задач это точно оверкилл.
Если достаточно конфигуратора, то не нужно ничего больше.

Вопросы начинаются, когда сложность задач растет
29. XSlava 204 26.08.26 16:45 Сейчас в теме
(25) Этож какая сложность задач требует такого количества всяких программ?
По моему мнению, достаточно конфигуратора + хранилища + порядка в голове + знание предметной области, но это мое мнение и моя практика.
smit1c; Best40000; swadim-is; mrXoxot; +4 Ответить
39. пользователь 27.08.26 21:27
Сообщение было скрыто модератором.
...
40. mrXoxot 3314 28.08.26 09:12 Сейчас в теме
(39) Почему? Пока в этом вижу какое-то оскорбление, но не понятно почему
46. пользователь 28.08.26 22:54
Сообщение было скрыто модератором.
...
49. mrXoxot 3314 29.08.26 09:16 Сейчас в теме
(46)
Реальный пример использования чего?
В статье про ИИ вообще почти ничего нет
54. peper- 07.09.26 18:23 Сейчас в теме
(49) Не обращайте внимания. Время, полагаю, все расставит на свои места.
55. mrXoxot 3314 08.09.26 08:24 Сейчас в теме
(54) Да я согласен. Спасибо за поддержку!
14. DamirMur 28 26.08.26 11:57 Сейчас в теме
DeepSeek, opencode, bsl language server, ещё что-то. Если есть ИИ, всё остальное он сам притащит, поставит и настроит, вплоть до того что сделает работу с ним из мессенджера.
17. mrXoxot 3314 26.08.26 12:37 Сейчас в теме
(14) Сейчас еще Unica круто с 1С работает, можно ее тоже использовать если с ИИ работаете
26. DamirMur 28 26.08.26 15:38 Сейчас в теме
(17)
Unica

Скормил DeepSeek v4 Flach - самый дешевый с 1 млн контекстного окна https://github.com/IngvarConsulting/unica/tree/main/plugins/unica - тот сам скачал и полез изучать, добавив себе инструкции в agents.md
27. mrXoxot 3314 26.08.26 15:48 Сейчас в теме
(26) Отлично! Надеюсь, что будет полезно.
18. paulpn 26.08.26 12:51 Сейчас в теме
Отличная статья. Огромное спасибо. Все ровно по полочкам разложено.
20. mrXoxot 3314 26.08.26 14:34 Сейчас в теме
(18) Спасибо большое! Очень приятно!
19. SerVer1C 1142 26.08.26 14:12 Сейчас в теме
Если внешние компоненты писать, то нужны ещё нормальные IDE-шки: VisualStudio или CLion (если на плюсах) и RustRover (если на расте)
21. mrXoxot 3314 26.08.26 14:35 Сейчас в теме
(19) Сейчас же уже важны ADE, например, orca
22. NatalkaBal 29 26.08.26 14:51 Сейчас в теме
Отличная статья, одна из немногих за последнее время что действительно понравилась. Все красиво и самое важное последовательно расписано. Спасибо автору за работу!
24. mrXoxot 3314 26.08.26 15:36 Сейчас в теме
(22) Спасибо большое за отзыв! Очень приятно читать!
28. user627620_kuklin_aa 26.08.26 15:50 Сейчас в теме
30. mrXoxot 3314 26.08.26 16:50 Сейчас в теме
(28) Почему забыт?
Скорее его как инструмент в повседневной работе использовать вряд ли получится
33. Dach 437 26.08.26 18:10 Сейчас в теме
Статья по содержанию местами не особо актуальна.

Например, bsl ls уже умеет не только в замечания, но в типы данных, в AST-дерево конкретного модуля и многое другое.

Эпоха, когда умение в гит, сонаркуб и дженкинс могло как-то поднять ценность спеца в нашей сфере - давно миновала.
Сейчас все эти инструменты влегкую поднимаются и настраиваются с нейросетями.
34. mrXoxot 3314 26.08.26 19:17 Сейчас в теме
(33) Да, сонаркуб уже отраслевой стандарт считай и скорее его отсутствие вызывает удивление, чем использование

И действительно с помощью нейросетей можно это все поднять проще
35. Foxe 5 27.08.26 11:01 Сейчас в теме
Прекрасно, спасибо!
36. mrXoxot 3314 27.08.26 11:10 Сейчас в теме
(35) Вам спасибо за оценку!
37. 1Concept 759 27.08.26 18:03 Сейчас в теме
Еще добавил бы:

а) Схемы бизнес-процессов:
1. MAKER-STUDIO
2. СППР

б) MCP-Серверы:
1. для EDT
2. для файлов выгрузки конфигурации

в) ИИ-агенты для работы с данными конфигурации

г) не хватает в мессенджерах "Система взаимодействия", мы успешно добавляем бота и видим сообщения в чатах клиентов прямо в 1с
42. mrXoxot 3314 28.08.26 09:22 Сейчас в теме
(37) Да, спасибо большое за комментарий!

Действительно, это важные инструменты, которые используются в работе 1Сников. Часть из них вот описаны в Стеке технологий.

Но больше их уже в Ландшафте технологий 1С - там более полная картина по инструментам
43. RocKeR_13 1485 28.08.26 10:43 Сейчас в теме
Возникает несколько вопросов:
1) Есть ли пример реального проекта, где все это используется?
2) Сколько времени заняло внедрение всего этого зоопарка?
3) И до сих пор ли используются все эти инструменты в рамках этого проекта?
44. mrXoxot 3314 28.08.26 10:48 Сейчас в теме
(43) Нет, не нужно в рамках одного проекта это все использовать! Это даже вредно будет!

Важно понимать, что если у вас возникла потребность интеграции, то есть вот такие инструменты в виде Брокеров сообщений. Если вдруг возникла потребность мониторинга, то не нужно придумывать свое, а можно взять, то что уже сделано.
Aleks_Zorro; RocKeR_13; +2 Ответить
45. CherAl 28.08.26 18:14 Сейчас в теме
Огромное спасибо за статью!
50. mrXoxot 3314 03.09.26 08:15 Сейчас в теме
Чтобы повлиять на стек 1Сника - пройди опрос по инструментам которые знаешь и пользуешься - https://infostart.ru/1c/articles/2776180/
51. Ninel_S 23 04.09.26 13:06 Сейчас в теме
Благодарю Вас, уважаемый Коллега!
Вы подарили мне тему для следующих 10+ статей (буду должна!)
52. mrXoxot 3314 06.09.26 10:29 Сейчас в теме
Для отправки сообщения требуется регистрация/авторизация