Переход с системы 1С:УПП 1.3 на современные платформы 1С:ERP или 1С:Комплексная автоматизация 2 часто вызывает вопросы у специалистов, привыкших к определенным механизмам. Одним из таких механизмов является документ Установка зависимостей оборотов по статьям. В старой системе он позволял жестко задать формулу, по которой при регистрации оборотов по одной статье (Статья X) автоматически создавались обороты по другой (Статья Y). В новых конфигурациях архитектура подсистемы бюджетирования была полностью пересмотрена.
В этой статье мы проанализируем, как реализовать подобную логику в 1С:ERP и КА 2, разберем основные методы настройки зависимостей и выясним, почему разработчики отказались от старой модели «событийного» формирования оборотов.
Разберем ситуацию: в ERP механизм зависимостей перенесен с уровня «регистрации данных» на уровень «планирования и отчетности». В УПП зависимость создавала реальные записи в регистре сразу при проведении документа. Это часто приводило к каскадным ошибкам и существенному замедлению работы системы при большом объеме данных. В 1С:ERP/КА расчет зависимых величин происходит либо в момент заполнения документа Экземпляр бюджета, либо динамически при формировании отчета.
Это основной и наиболее наглядный способ, к которому приходят пользователи. Рассмотрим, как настроить автоматический расчет Статья Y = 2 * Статья X непосредственно в форме ввода плановых данных.
Виды бюджетов и создадим новый элемент или отредактируем существующий.Статья X, во вторую — Статья Y.Статьи Y мы не будем вводить данные вручную. Вместо этого выделим ячейку и настроим её как Вычисляемую ячейку.Статьи X в этой же колонке. Итоговая формула будет выглядеть примерно так: [СтатьяX] * 2.Преимущество метода: Пользователь при заполнении Экземпляра бюджета сразу видит результат расчета. Если он изменит значение «Статьи X», значение «Статьи Y» пересчитается мгновенно.
Если нам нужно, чтобы зависимость срабатывала не «на лету» в таблице, а при выполнении команды заполнения, мы воспользуемся механизмом Правил получения данных. Это более мощный инструмент, который позволяет брать данные из разных источников.
Проанализируем шаги настройки:
Вида бюджета для конкретной статьи выберем способ заполнения По правилу.Исполнение бюджета (данные бюджетирования) или Планы (любые).Статья бюджетирования = Статья X.Операнд_СтатьяХ * 2.Экземпляр бюджета кнопки «Заполнить», система сама обратится к оборотам Статьи X и рассчитает значения для Статьи Y.Рассмотрим ситуацию, когда зависимость более сложная и связана с остатками. В ERP существует объект Показатели бюджетов (аналог остаточных счетов). В настройках каждой Статьи бюджетов есть вкладка Зависимые показатели.
Здесь мы можем указать, что при возникновении оборота по статье должен измениться остаток по определенному показателю. Хотя это напрямую не создает оборот по другой статье, это создает базу для расчета. Например, Статья «Закупка материалов» увеличивает показатель «Складские запасы». А Статья «Налог на имущество» может быть рассчитана в другом бюджете как процент от среднего значения этого показателя.
Часто зависимость Статья Y = 2 * Статья X обусловлена каким-то коэффициентом или нормативом. Выясним, как сделать настройку гибкой:
Нефинансовый показатель (например, «Коэффициент накладных расходов»).Установка значений нефинансовых показателей.Статьи Y (в виде бюджета или в правиле заполнения) используем этот показатель как один из множителей.Это позволит нам не менять структуру бюджета или формулы в правилах каждый раз, когда коэффициент зависимости изменится. Достаточно будет ввести новое значение нефинансового показателя с определенной даты.
Важно помнить о замечании, которое часто звучит на профильных форумах: избыточное использование сложных формул и многократное обращение к одним и тем же источникам данных может замедлить работу системы. Рассмотрим рекомендации по оптимизации:
Во-первых, старайтесь группировать зависимые расчеты. Если у вас десять статей зависят от одной, лучше настроить их расчет в рамках одного Вида бюджета.
Во-вторых, используйте инструмент Расшифровка данных (drill-down). В ERP, в отличие от УПП, вы всегда можете кликнуть на рассчитанную по формуле ячейку и увидеть, из каких компонентов сложилась итоговая сумма. Это обеспечивает прозрачность планирования, которой не хватало в старых версиях программы.
Подведем итог: прямого аналога документа Установка зависимостей оборотов по статьям в 1С:ERP нет, и это осознанное решение методистов фирмы «1С». Вместо этого мы используем гибкий конструктор Видов бюджетов, где через сложные таблицы и вычисляемые ячейки можем реализовать любую математическую зависимость. Для массового формирования данных по расписанию или кнопке «Заполнить» следует применять Правила получения данных с использованием операндов и формул.