Многие пользователи и начинающие разработчики, переходя из 1С:Управление торговлей (УТ) или 1С:ERP в 1С:Бухгалтерию предприятия (БП) 3.0, сталкиваются с неожиданной проблемой. Попытка настроить отчет «Валовая прибыль» привычным способом через меню Еще — Прочее — Изменить вариант заходит в тупик, так как заветная кнопка попросту отсутствует в интерфейсе. Это вызывает недоумение, ведь отчет построен на базе Системы компоновки данных (СКД), которая по умолчанию предполагает гибкую настройку колонок и формул.
В рамках этой статьи мы разберем причины такого поведения системы, проанализируем ситуацию с точки зрения архитектуры конфигурации и рассмотрим несколько способов решения задачи: от использования альтернативных отчетов до программной доработки через расширение.
Выясним причину этой особенности. В конфигурации Бухгалтерия предприятия 3.0 разработчики фирмы «1С» придерживаются концепции упрощения интерфейса для конечного пользователя-бухгалтера. В отличие от управленческих систем, где аналитика может быть произвольной, в БП многие отчеты имеют жестко заданную структуру, чтобы минимизировать риск получения некорректных данных из-за случайного изменения настроек группировок или полей.
Проанализируем техническую сторону: в отчете «Валовая прибыль» используется специализированная форма. В отличие от стандартных форм Библиотеки стандартных подсистем (БСП), где кнопка «Изменить вариант» выводится автоматически, здесь состав командной панели ограничен программно или на уровне свойств формы в конфигураторе. Даже если вы обладаете правами администратора, в пользовательском режиме стандартными средствами вызвать конструктор настроек СКД не удастся.
Рассмотрим самый быстрый способ получить нужные данные с пользовательскими колонками без изменения конфигурации. Если типовой отчет «Валовая прибыль» ограничен в настройках, мы можем обратиться к инструменту УниверсальныйОтчет. Этот отчет предоставляет полный доступ к настройкам СКД для любого регистра или документа.
Продажи или специализированные регистры учета выручки и себестоимости.(СуммаВыручки - Себестоимость) / Себестоимость * 100.Важный нюанс: построение отчета по валовой прибыли через УниверсальныйОтчет требует понимания структуры регистров. Вам придется самостоятельно настроить группировки по номенклатуре и периодам, а также следить за корректностью выбора ресурсов (сумма без НДС, себестоимость).
Если же требуется работать именно в типовом интерфейсе отчета «Валовая прибыль», нам придется прибегнуть к механизму расширений. Рассмотрим, как принудительно вернуть команду «Изменить вариант» в форму отчета.
Разберем по шагам алгоритм действий программиста:
ВаловаяПрибыль и заимствуем его форму (обычно это ФормаОтчета).ПриСозданииНаСервере с аннотацией &После.Пример кода для расширения:
&После("ПриСозданииНаСервере")
Процедура Расш1_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
// Пробуем найти команду в составе команд формы
КомандаИзменитьВариант = ЭтаФорма.Команды.Найти("ИзменитьВариант");
Если КомандаИзменитьВариант <> Неопределено Тогда
КомандаИзменитьВариант.Видимость = Истина;
КонецЕсли;
// Также стоит проверить доступность через стандартные настройки БСП,
// если отчет использует общие механизмы формирования настроек.
ЭтаФорма.Элементы.ФормаИзменитьВариант.Видимость = Истина;
КонецПроцедуры
После применения этого расширения в меню «Еще» должна появиться возможность редактирования схемы. Однако будьте осторожны: если форма отчета сильно кастомизирована (например, данные выводятся в таблицу значений программно, а не напрямую через Результат компоновки), изменения в СКД могут не отобразиться в итоговой печатной форме.
Проанализируем ситуацию, упомянутую в обсуждении: когда в пользовательскую формулу нужно добавить дополнительный реквизит справочника Номенклатура. Даже если вы включили кнопку «Изменить вариант», вы можете не увидеть доп. реквизиты в списке доступных полей.
Это происходит потому, что в БП 3.0 дополнительные сведения хранятся в отдельной таблице. Чтобы они стали доступны в СКД «через точку», необходимо убедиться, что в схеме компоновки данных настроены характеристики.
Если характеристики не настроены, вам потребуется отредактировать саму схему (СКД) в расширении:
ОсновнаяСхемаКомпоновкиДанных отчета «Валовая прибыль».СправочникСсылка.Номенклатура.После этих манипуляций в окне «Изменить вариант» при нажатии на плюс рядом с полем Номенклатура раскроется список всех дополнительных реквизитов, которые вы сможете использовать в своих формулах для вычисляемых колонок.
Мы выяснили, что отсутствие возможности добавлять колонки в отчете «Валовая прибыль» в 1С:Бухгалтерии 3.0 — это сознательное ограничение интерфейса. Для решения проблемы мы можем пойти тремя путями:
Выбор метода зависит от ваших навыков и того, насколько часто требуется такая настройка. Если задача разовая — УниверсальныйОтчет будет лучшим выбором. Если же бухгалтеру нужно постоянно работать с расширенной аналитикой — лучше один раз настроить расширение конфигурации.