|
Перебор справочника в тексте запроса....хз | ☑ | ||
---|---|---|---|---|
0
1C_Enigma
25.04.12
✎
01:12
|
Есть справочник ШкалаЗРП, в нем указаны диапазоны(средней наценки)и ставки...Типа если наценка в диапазоне от 1% до 2%, то ставка 0,5. На 0,5 будем умножать твой оборот, что и будет являться зарплатой. К примеру.
Нужно в запросе выбрать обороты и наценки менеджеров по производителям, найти соответствие в справочнике, полученную ставку умножить на оборот. Запрос "ВЫБРАТЬ | Продажи.Регистратор.Менеджер КАК Менеджер, | Продажи.Номенклатура.Производитель КАК Производитель, | ШкалаСтавокЗРП.НГраница КАК НижняяГраница, | ШкалаСтавокЗРП.ВГраница КАК ВерхняяГраница, | ШкалаСтавокЗРП.Ставка КАК СтавкаЗРП, | Продажи.Стоимость КАК Стоимость, | ПродажиСебестоимость.Стоимость КАК СтоимостьСеб, | СУММА(Продажи.Стоимость) - СУММА(ПродажиСебестоимость.Стоимость) КАК Доход, | 100 * ((СУММА(Продажи.Стоимость) - СУММА(ПродажиСебестоимость.Стоимость)) / СУММА(ПродажиСебестоимость.Стоимость)) КАК Наценка, | ВЫБОР | КОГДА СУММА(Продажи.Стоимость) - СУММА(ПродажиСебестоимость.Стоимость) <> 0 | И (100 * ((СУММА(Продажи.Стоимость) - СУММА(ПродажиСебестоимость.Стоимость)) / СУММА(ПродажиСебестоимость.Стоимость)) МЕЖДУ ШкалаСтавокЗРП.НГраница И ШкалаСтавокЗРП.ВГраница) | ТОГДА ШкалаСтавокЗРП.Ставка | ИНАЧЕ 0 | КОНЕЦ КАК Ставка, | ПродажиСебестоимость.Регистратор.Менеджер |ИЗ | Справочник.ШкалаСтавокЗРП КАК ШкалаСтавокЗРП, | РегистрНакопления.ПродажиСебестоимость КАК ПродажиСебестоимость | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи | ПО ПродажиСебестоимость.Номенклатура = Продажи.Номенклатура |ГДЕ | Продажи.Регистратор.Менеджер <> &ПустойМенеджер | И ПродажиСебестоимость.Регистратор.Менеджер <> &ПустойМенеджер | |СГРУППИРОВАТЬ ПО | Продажи.Регистратор.Менеджер, | Продажи.Номенклатура.Производитель, | ШкалаСтавокЗРП.НГраница, | ШкалаСтавокЗРП.ВГраница, | ШкалаСтавокЗРП.Ставка, | Продажи.Стоимость, | ПродажиСебестоимость.Стоимость, | ПродажиСебестоимость.Регистратор.Менеджер |ИТОГИ | СУММА(Стоимость), | СУММА(СтоимостьСеб), | СУММА(Доход) |ПО | Менеджер, | Производитель"; Вопрос № 1 - как в этом случае лучше делать поиск.... Вопрос № 2 - не хочу, группировать по этой куче полей, не правильно итоги рассчитываются, а удаляешь эти поля - ругается.... |
|||
1
zak555
25.04.12
✎
08:13
|
странная реализация
откуда программа будет знать : какая наценка была применена к тому или иному товару ? |
|||
2
Азат
25.04.12
✎
08:23
|
а что мешает сначала ставки зафигачить во врем таблицу, а потом получить данные по продажам и приджойнить туда как раз ставки?
что-то вроде выбрать из регистр.продажисебестоимость левое соединение ВТ_Ставки ПО ВТ_Ставки.НижняяГраница < ПродажиОборот И ВТ_Ставки.ВерхняяГраница > ПродажиОборот... |
|||
3
1C_Enigma
25.04.12
✎
14:33
|
(2) это проверочный вариант, а так обороты и наценка и так во временной таблице...загвоздка КАК сделать поиск наценки из врем таблицы в справочнике.....в справочнике не лежат конкретные значения, а диапазоны.....разве получится левым соединением???
|
|||
4
1C_Enigma
25.04.12
✎
14:34
|
(1) что значит - откуда программа будет знать : какая наценка была применена к тому или иному товару ?
что прога не знает оборот и себестоимость? вычислим доход, вычислим наценку....вот и знает |
|||
5
1C_Enigma
25.04.12
✎
14:41
|
надо так
ВТНаценки(расчитанные уже) СпрШкалаСтавок шоколад А - 5% диапазон 1: нижняя ставка 3% верхняя 6% ставка 0,3 шоколад Б - 7% диапазон 2: нижняя ставка 6,5% верхняя 8% ставка 0,5 Берем шоколад А, видим что наценка у него 5%, берем теперь справочник и смотрим, в какой диапазон входит эти 5%, находим, что это диапазон 1 со ставкой 0,3. |
|||
6
1C_Enigma
25.04.12
✎
15:35
|
Вопрос снят. Спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |