Есть остаточный регистр накопления "Товары", с измерениями "Фирма", "Склад" и ресурсом "Количество". На СКД создан отчет, который выбирает обороты товаров. Есть поле КоличествоОборот (КоличествоПриход-КоличествоРасход), есть ресурс Сумма(КоличествоОборот). Для ранжирования количества оборотов товаров есть вычисляемое поле Рейтинг со значением 0, есть ресурс для этого поля МестоВПорядке("Сумма(Количество) Убыв"). В итоге всё почти хорошо. Какие бы группировки не были бы в настройке отчета, в отчете показываются обороты и рейтинг оборачиваемости по убыванию.
Но есть есть одно "но". Если у одной группировки есть разные строки с одним значением ресурса, то тогда ресурс с функцией МестоВПорядке() также дублируется, хотя следующие значения ресурса ранжируются нормально.
Проблема в том, как избавится от дублей рейтинга. То есть груши на рынке должные иметь рейтинг 2, а персики в торговом зале - 3. Как-то надо вычислить смещение (Рейтинг-Смещение), которое бы позволяло это сделать. Какими функциями СКД это можно сделать?
(2) Ничем. Просто в группе "Рынок" нет ранга 2, но есть два ранга 1, а в группе "Торговый зал" нет ранга 3, но дублируется ранг 2.
(3) Не подходит. Пример упрощен. Сортировка любая может быть пользователем указана, также как и состав группировок.
(5) Не подходит Мне надо определять ранг, рейтинг не только для группировки Номенклатура. Детальные записи или значения группировок ранжируются внутри вышестоящей группировки, а состав группировок - произвольный.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший