Изучение конфигурации «1С:Управление торговлей» версии 11 (УТ 11) — это серьезный вызов даже для опытного разработчика с многолетним стажем. В отличие от старых версий (например, 10.3), УТ 11 построена на совершенно иных архитектурных принципах. Разберем пошагово, как подступиться к этому «монстру», сколько времени это займет и на каких аспектах стоит сосредоточить внимание в первую очередь.
Прежде всего, проанализируем, с чем мы имеем дело. Современная УТ 11 построена на том же программном ядре, что и 1С:ERP 2 и 1С:Комплексная автоматизация 2. Фактически, изучая УТ 11, мы осваиваем торговый блок флагманских решений фирмы «1С». Это означает, что логика системы крайне универсальна, но в то же время перегружена условиями и сложными связями.
Особое внимание уделим Библиотеке стандартных подсистем (БСП). Огромная часть логики скрыта в общих модулях БСП. Без понимания принципов работы этой библиотеки (например, как работает механизм печати, подключаемые команды или дополнительные реквизиты) разобраться в коде будет практически невозможно. Рассмотрим основные стратегии погружения.
Как отмечают эксперты, невозможно качественно дорабатывать УТ 11, не зная ее функциональных возможностей на уровне «продвинутого пользователя» или консультанта. Попытка сразу «прыгнуть в код» приведет к тому, что вы начнете изобретать велосипеды там, где уже есть типовые настройки.
1С:Профессионал. Это заставит нас выучить, «где находятся какие галочки» и как типовые настройки влияют на поведение системы.Интеркампани, ордерный склад, партионный учет и чем отличается FIFO (скользящая оценка) от FIFO (средневзвешенная оценка). Без этих знаний код проведения документа РеализацияТоваровУслуг покажется бесконечным лабиринтом.Для программиста самый эффективный способ изучения — это движение от данных к алгоритмам. Выясним, как система хранит информацию, и тогда станет понятно, как она ее обрабатывает.
Проанализируем ключевые регистры накопления, на которых строится вся отчетность в УТ 11:
ВыручкаИСебестоимостьПродаж — здесь аккумулируется финансовый результат.ЗапасыНаСкладах — оперативные остатки товаров.РасчетыСКлиентами и РасчетыСПоставщиками — состояние взаиморасчетов.Разберем алгоритм исследования системы по шагам:
ЗаказКлиента или ПриобретениеТоваровУслуг).Примерно так может выглядеть упрощенная структура вызова в коде:
// В модуле менеджера документа часто встречается подобная логика
Процедура ИнициализироватьДанныеДокумента(Ссылка, ДополнительныеСвойства) Экспорт
// Здесь происходит подготовка временных таблиц для проведения
КонецПроцедуры
Процедура СформироватьДвижения(ТаблицаДвижений, Отказ) Экспорт
// Здесь данные из таблиц переносятся в наборы записей регистров
КонецПроцедуры
Современный стандарт разработки под УТ 11 — это использование расширений конфигурации. Нам нужно научиться внедрять кастомную логику, не снимая основную конфигурацию с поддержки. Проанализируем возможности аннотаций &Вместо, &Перед и &После. Это критически важно, так как прямое изменение типового кода в УТ 11 сделает последующее обновление системы мучительным процессом.
Также уделим время Системе компоновки данных (СКД). Почти все отчеты в УТ 11 построены на ней. Причем они используют сложные вложенные схемы. Чтобы понимать, как система видит остатки и резервы, нужно изучить запросы внутри схем компоновки типовых отчетов.
Выясним, какие подсистемы являются наиболее трудоемкими для освоения:
Проанализируем реальные сроки. Для опытного программиста (от 5–9 лет в отрасли) картина выглядит следующим образом:
Главный совет: не пытайтесь читать код подряд. Выберите конкретный бизнес-процесс, например «Продажа товара с резервированием», и пройдите его с отладчиком «от и до» — от нажатия кнопки в форме до финальных записей в регистрах. Только так абстрактные тысячи строк кода превратятся в понятную логику управления торговыми процессами.