Вопрос о приведении формата вывода чисел к единому виду — частая задача при настройке интерфейса для пользователей. Нередко возникает желание «одной кнопкой» изменить отображение дробной части для всех отчетов в системе. Давайте разберем, почему в типовых конфигурациях, таких как УТ 11.4, не существует глобального переключателя для этого параметра, и как правильно решить задачу, не нарушая целостность системы.
Прежде всего, важно понимать, что архитектура 1С:Предприятие и типовых решений предполагает независимость объектов метаданных. Отчеты — это самостоятельные объекты, каждый из которых имеет свои уникальные наборы данных, поля и правила вывода. Попытка внесения изменений в общие модули или глобальные формы для принудительного округления всех чисел приведет к ряду критических проблем:
Количество может означать разные сущности (например, штуки, килограммы или метры). В одних случаях отображение целых чисел удобно, в других — критически важно видеть точность до третьего знака. Принудительное обрезание нулей приведет к тому, что оператор может увидеть 1 вместо 1.005, что повлечет за собой ошибки в складских операциях.СКД (Системе компоновки данных) имеют разные типы и правила вывода. Глобальная настройка формата потребует сложного алгоритмического анализа каждого выводимого поля.Самый правильный и поддерживаемый путь — использование встроенного механизма Условное оформление внутри отчета. Этот способ не меняет конфигурацию и позволяет тонко настроить отображение для любого отчета, в котором используется СКД.
Рассмотрим пошагово, как это сделать:
Настройки.Расширенный режим, если он еще не активен.Оформление.Добавить, чтобы создать новое правило.Оформление найдите параметр Формат.ЧДЦ=0 (что означает число, дробная часть = 0).Выбрать поле и укажите те поля, которые должны подчиняться этому правилу (например, Количество, КоличествоОстаток и т.д.).После сохранения этих настроек система будет выводить выбранные поля согласно заданному вами формату. Чтобы эти изменения не потерялись, сохраните полученные настройки как Вариант отчета.
Если пользователей не устраивает стандартный вид отчета, лучший способ — создать для них готовые Варианты отчетов. Вы можете настроить один отчет под нужды «тети» (или любого другого пользователя), настроить все необходимые колонки, условное оформление для чисел и фильтры, а затем сохранить это как вариант под понятным именем.
Почему это лучше:
Если задача стоит остро и отчеты критически нуждаются в правках, разработчики могут использовать механизм Расширения конфигурации. В расширении можно переопределить настройки СКД программно, используя событие ПриКомпоновкеРезультата. В данном обработчике можно обратиться к НастройкиКомпоновкиДанных и программно изменить Условное оформление для всех отчетов, которые вы считаете нужным изменить.
// Пример программного добавления формата через СКД (в модуле отчета)
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
ЭлементОформления = Настройки.УсловноеОформление.Элементы.Добавить();
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Формат", "ЧДЦ=0");
// Указываем поле, к которому применяем формат
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Количество");
КонецПроцедуры
Однако помните, что даже этот метод требует тестирования, так как при обновлении конфигурации структура метаданных может измениться, и программные обращения к полям могут стать неактуальными. Лучшим подходом всегда остается обучение пользователей работе с функционалом Настройки отчетов, который является мощным и гибким инструментом в руках подготовленного специалиста.