Разбираясь с одним из проектов по 1с, мне попался один отчет, в котором было много колонок с расчетными данными на основе других колонок, в одной из ячеек мой взгляд привлекла фраза «Деление на 0». Действительно, в связи с отсутствием знаменателя происходило деление на ноль. Тот, кто программировал отчет, не предусмотрел такой поворот событий. Пример из другого отчета на картинке:
Посмотрев в код я обнаружил что поле1 вычислялось с помощю схеми компоновки данных на вкладке вичсляемых полей, что при отсутвии данных в нужной колонке и приводило к возникновению сообщения.
В принципе ето лечится проверкой на ноль с помощю констукции:
Выбор Когда СумаПлановаОборот 0 Тогда СумаОборот/СумаПлановаОборот Иначе 0 Конец
Эту конструкцию можно использовать как в запросе:
Так и на закладке с вычисляемыми полями
Результат будет одинаковый.
На мой вопрос, почему они не попросили переделать, мне ответили, что они настроили себе отчет, так что данное сообщение не выводиться. Оказывается, они сделали следующее: на закладке условного оформления установили правило. Что при знаменателе равном ноль текст в колонке заменялся на пробел, таким чином подавлялся вывод сообщения о делении на ноль и отчет выглядел правильно.
Просто и эффективно. Сталкиваясь с таким, поневоле думаеш, что некоторые пользователи знают и больше чем те «программисты» которых они нанимают.