Как установить зависимость по статьям бюджетирования в 1С:ERP и 1С:Комплексная автоматизация 2

Бизнес-аналитик 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием Управленческий учет
← На главную

Переход с системы 1С:УПП 1.3 на современные платформы 1С:ERP или 1С:Комплексная автоматизация 2 часто вызывает вопросы у специалистов, привыкших к определенным механизмам. Одним из таких механизмов является документ Установка зависимостей оборотов по статьям. В старой системе он позволял жестко задать формулу, по которой при регистрации оборотов по одной статье (Статья X) автоматически создавались обороты по другой (Статья Y). В новых конфигурациях архитектура подсистемы бюджетирования была полностью пересмотрена.

В этой статье мы проанализируем, как реализовать подобную логику в 1С:ERP и КА 2, разберем основные методы настройки зависимостей и выясним, почему разработчики отказались от старой модели «событийного» формирования оборотов.

Архитектурные отличия: почему нет привычного документа?

Разберем ситуацию: в ERP механизм зависимостей перенесен с уровня «регистрации данных» на уровень «планирования и отчетности». В УПП зависимость создавала реальные записи в регистре сразу при проведении документа. Это часто приводило к каскадным ошибкам и существенному замедлению работы системы при большом объеме данных. В 1С:ERP/КА расчет зависимых величин происходит либо в момент заполнения документа Экземпляр бюджета, либо динамически при формировании отчета.

Способ 1: Использование формул в Виде бюджета (Сложные таблицы)

Это основной и наиболее наглядный способ, к которому приходят пользователи. Рассмотрим, как настроить автоматический расчет Статья Y = 2 * Статья X непосредственно в форме ввода плановых данных.

  1. Откроем справочник Виды бюджетов и создадим новый элемент или отредактируем существующий.
  2. Перейдем в конструктор структуры бюджета. Для реализации расчетов нам потребуется использовать элемент Сложная таблица.
  3. В структуру таблицы добавим строки со статьями бюджетирования. Например, в первую строку поместим Статья X, во вторую — Статья Y.
  4. В колонке, где предполагается ввод данных (например, «Месяц»), для Статьи Y мы не будем вводить данные вручную. Вместо этого выделим ячейку и настроим её как Вычисляемую ячейку.
  5. В редакторе формул для этой ячейки укажем операнд, ссылающийся на значение Статьи X в этой же колонке. Итоговая формула будет выглядеть примерно так: [СтатьяX] * 2.

Преимущество метода: Пользователь при заполнении Экземпляра бюджета сразу видит результат расчета. Если он изменит значение «Статьи X», значение «Статьи Y» пересчитается мгновенно.

Способ 2: Правила формирования планируемых данных (Автозаполнение)

Если нам нужно, чтобы зависимость срабатывала не «на лету» в таблице, а при выполнении команды заполнения, мы воспользуемся механизмом Правил получения данных. Это более мощный инструмент, который позволяет брать данные из разных источников.

Проанализируем шаги настройки:

  1. В настройках Вида бюджета для конкретной статьи выберем способ заполнения По правилу.
  2. Создадим новое правило. В качестве источника данных выберем Исполнение бюджета (данные бюджетирования) или Планы (любые).
  3. В настройках отбора укажем Статья бюджетирования = Статья X.
  4. В разделе «Настройка значений» мы можем применить производные расчеты. Мы создаем Операнд, который получает сумму по Статье X, а в итоговой формуле правила пишем: Операнд_СтатьяХ * 2.
  5. Теперь при нажатии в документе Экземпляр бюджета кнопки «Заполнить», система сама обратится к оборотам Статьи X и рассчитает значения для Статьи Y.

Способ 3: Связь через Показатели бюджетов

Рассмотрим ситуацию, когда зависимость более сложная и связана с остатками. В ERP существует объект Показатели бюджетов (аналог остаточных счетов). В настройках каждой Статьи бюджетов есть вкладка Зависимые показатели.

Здесь мы можем указать, что при возникновении оборота по статье должен измениться остаток по определенному показателю. Хотя это напрямую не создает оборот по другой статье, это создает базу для расчета. Например, Статья «Закупка материалов» увеличивает показатель «Складские запасы». А Статья «Налог на имущество» может быть рассчитана в другом бюджете как процент от среднего значения этого показателя.

Способ 4: Использование нефинансовых показателей

Часто зависимость Статья Y = 2 * Статья X обусловлена каким-то коэффициентом или нормативом. Выясним, как сделать настройку гибкой:

  1. Создадим Нефинансовый показатель (например, «Коэффициент накладных расходов»).
  2. Установим его значение (например, «2») документом Установка значений нефинансовых показателей.
  3. В формуле расчета Статьи Y (в виде бюджета или в правиле заполнения) используем этот показатель как один из множителей.

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

Анализ производительности и прозрачности

Важно помнить о замечании, которое часто звучит на профильных форумах: избыточное использование сложных формул и многократное обращение к одним и тем же источникам данных может замедлить работу системы. Рассмотрим рекомендации по оптимизации:

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

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

Заключение

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

← На главную