Бедность 1с в плане отборов
Иногда меня поражает бедность средств для обора в 1С.
Обратился клиент с задачей для УНФ. Ему нужно было посчитать задачи по продажам, где в одной расходной накладной присутствовала номенклатура «Выезд механика» и номенклатура со всеми категориями из группы категорий «Запчасти для техники».
В отчете по продажам у «Документа движения» или «Документа» нет развертки до табличной части:

Открыл универсальный отчет по расходной накладной:

Создаю пользовательское поле «Нужная номенклатура 1» с выражением итоговых записей:
Максимум(Выбор
Когда [Номенклатура.Наименование] = "Выезд механика"
Тогда Истина
Иначе Ложь
Конец)
Создаю пользовательское поле «Нужная номенклатура 2» с выражением итоговых записей:
Максимум(Выбор
Когда [Номенклатура.Категория.В группе.Наименование] = "Запчасти для техники"
Тогда Истина
Когда [Номенклатура.Категория.В группе.В группе.Наименование] = "Запчасти для техники"
Тогда Истина
Когда [Номенклатура.Категория.В группе.В группе.В группе.Наименование] = "Запчасти для техники"
Тогда Истина
Иначе Ложь
Конец)
Обратите внимание на сложный отбор по иерархии, там были вложенные группы и папки категорий разного уровня.
Структуру сделал Документ — Номенклатура, на уровне документа сделал отбор по полям «Нужная номенклатура 1» и «Нужная номенклатура 2»:

Отобрал только проведенные документы:

Все сложилось.
Но бедность фильтрации удивляет. Нельзя отобрать сегмент документов и запустить отчет по нему. Нельзя сделать пересечение сегментов документов.
Похоже, 1С не в ту сторону развивает свой функционал, ей бы поработать над базовыми вещами.
Среда: УНФ 3.0.12.226 Объем: 1 час.




Свежие комментарии