
Привет всем! Меня зовут Ростислав, я программист 1С в ТехВилле.
И если Вы разрабатываете под 1С, то знаете главное правило: хочешь протестировать мелкое исправление — готовься перезапускать режим предприятия, снова открывать нужный документ, снова восстанавливать контекст и снова проходить длинный бизнес-процесс ради одной кнопки.
В какой-то момент я понял: я не готов так жить дальше.
И сделал инструмент, который позволяет писать код в файле, сохранять и мгновенно видеть результат в режиме предприятия, без перезапуска и без боли!
Так появился Чпоньк! Название говорит само за себя: нажал Ctrl+S = чпоньк! и изменения уже применены.
Хочу рассказать, как он работает, чем помогает и почему возвращаться к старому циклу «правка → перезапуск → проверка» совсем не хочется.
Как выглядит работа с Чпоньк?
Чтобы было проще объяснить, возьмём простой пример. Д��пустим, в карточке поставщика нужно добавить кнопку: отправить код поставщика во внешний сервис и записать ответ в комментарий.
Классическая рутина, но в Чпоньк! всё выглядит совсем иначе.
Шаг 1. Пишу код в VS Code
Создаю обычный файл. Да, самый обычный, который можно открыть хоть в блокноте. Я предпочитаю VS Code.

Шаг 2. Запускаю Чпоньк!

Указываю:
файл версии конфигурации (если его нет, то выгружаю нажатие кнопки «Выгрузить файл версий»);
файл с доработками;
способ поставки изменений (COM или HTTP «ручка»).
Нажимаю кнопку «Запустить».
В этот момент внутри начинается магия: Чпоньк! парсит файл, собирает расширение, подключает его, один раз перезапускает режим предприятия и всё! Изменения применены, можно проверять..
При первом подключении понадобится единственный перезапуск за всю сессию разработки.
Шаг 3. Открываю карточку поставщика

Кнопка уже на месте. Нажимаю — ответ сервиса появился в поле комментарий.
Шаг 4. Меняю код — и вижу результат, не перезапуская 1С

Подключаю наблюдатель за файлами.

Меняю код в файле, сохраняю, возвращаюсь в карточку - логика уже другая.

И всё это без повторного открытия формы, без воспроизведения бизнес-процесса, без «ну щас ещё разок перезапущу».
Почему это реально ускоряет разработку
Лично для меня главное это то, что контекст не теряется. Если нужно протестировать кусочек логики в середине длинного процесса, то в классике вы:
Перезапускаете предприятие.
Последовательно воссоздаете контекст, выполняя необходимые действия по процессу.
И на последнем шаге проверяете корректность доработки.
С Чпоньк! всё иначе:
Редактируйте код в файле
Сохраняете
Проверяете корректность доработки
И тестируете ровно то, что нужно, прямо на том шаге, где вы стояли. Плюс все доработки по задаче находится в одном файле, а не разбросан по модулям конфигурации. Разделение по модулям с помощью специальных директив. Для теста или демонстрации достаточно его “подключить” к конфигурации через обработку. Также удобно отправить файл на код-ревью или переносить доработки из одного файла в хранилище.
Что под капотом?
Главная идея простая: мы перехватываем выполнение метода через расширение, но само тело метода берём не из расширения, а из вашего файла.
Как это выглядит технически:
код из файла хранится в Хранилище общих настроек,
наблюдатель следит за изменениями и обновляет их в базе в хр��нилище,
расширение перехватывает вызов метода и выполняет код из хранилища,

Сборка расширения полностью автоматическая:
Чпоньк! парсит код из файла и разбивает его на модули и методы,
формирует исходные XML файлы расширения,
используя временную базу или утилиту ibcmd собирает файл расширения,
подключает его в рабочую базу.
Вы ничего этого не видите, так как это всё происходит под капотом.
Настройки и работа в интерфейсе
Первый запуск — четыре действия: указать файл версий, файл с доработками, способ доставки и нажать «Запустить».
После подключения на форме обработке будет:
список файлов,
список методов,
параметры, аннотации, события,
возможность удалить файл (и вернуть базу в исходное состояние).

Ограничения, о которых нужно знать
Пишу честно, как есть:
На проде использовать не надо. Это инструмент для разработки.
Отладки нет. Но содержимое переменных или трассировку можно выводить в лог или сообщения.
Работает только на управляемых формах.
Нужна платформа 8.3.18+ (используются асинх методы для работы с ОС)
Работает только на Windows
После добавления нового модуля в текст файла понадобится перезапуск.
При этом методы можно добавлять без перезапуска.Асинхронные методы и обработчики оповещений внутри файла пока не поддерживаются.
Планы развития
Дальше хочу:
обойти ограничения,
сделать кнопку «закинуть код сразу в конфигурацию или хранилище»,
добавить полноценную поддержку формата EDT.
Идей много, времени мало, но я стараюсь.
И самое главное — Чпоньк! в открытом доступе
На странице репозитория можно посмотреть исходники, протестировать готовую сборку, попробовать пример файла или даже прислать свой pull-request — я буду только рад.
Очень надеюсь, что Чпоньк! ускорит Вашу разработку так же, как ускорил мою, и вокруг него появится сообщество людей, которым по душе такой способ работы.