|
Расчет суммы итогов снизу вверх по определенным условиям в СКД | ☑ | ||
---|---|---|---|---|
0
БУКА
29.03.17
✎
13:26
|
Добрый день всем, есть следующая задача, рассчитать факт выполнения договора, в данном примере в договоре указано что необходимо продать 80 шт
товара 1, 2 и 3, обязательно нужно продать товара1 10 шт, товара 2 - 20 шт как рассчитать итоги в СКД по нижней группировке? 1. По группировке ДОГОВОР план не выполнился, т.к. условие по продаже товара2 не выполнено, значит сумма бонусов 0 2. По группировке КОНТРАГЕНТ сложить все суммы бонусов ВЫПОЛНЕННЫХ договоров Контрагент договор Товар план факт бонус ---------------------------------------------- Рога и копыта 0 ---------------------------------------------- договор 80 0 ---------------------------------------------- Товар1 10 15 150 ---------------------------------------------- Товар2 20 19 0 ---------------------------------------------- Товар3 10 100 ---------------------------------------------- |
|||
1
DrShad
29.03.17
✎
13:30
|
ФИФО в запросе
|
|||
2
БУКА
29.03.17
✎
13:35
|
Уже 4 дня кручу агрегатную функцию ВычислитьВыражение(), но не выходит.
Подскажите в какую сторону двигаться, заранее сапсибо. |
|||
3
ДемонМаксвелла
29.03.17
✎
13:41
|
(0) проще всего обработать ТЗ в цикле, вычислить нужные значения, а потом ТЗ скормить СКД-шке
|
|||
4
БУКА
29.03.17
✎
13:56
|
(3) то же склонялся к этой мысли, но все таки хотелось бы решить все это в СКД, тем более, что такой мощный инструмент должен это позволять
|
|||
5
БУКА
29.03.17
✎
14:02
|
вот таблицу немного подправил, а то пробелы съедает
Контрагент договор Товар----------------- план --факт --- бонус Рога и копыта --------------------------0 ---------------------------------------------- договор111 -----------80-----54------- 0 ---------------------------------------------- Товар 1 ---------------10----- 15 ------150 ---------------------------------------------- Товар 2 ---------------20----- 19------- 0 ---------------------------------------------- Товар 3 ---------------0-------10--- --100 ---------------------------------------------- |
|||
6
aleks_default
29.03.17
✎
14:07
|
Сумма(ВычислитьВыражениеСГруппировкойМассив())
|
|||
7
aleks_default
29.03.17
✎
14:12
|
Сумма(ВычислитьВыражениеСГруппировкойМассив("Бонус","Договор","Факт>План"))
примерно как-то так |
|||
8
БУКА
29.03.17
✎
14:20
|
Можно добавить булевое поле План выполнен, на уровне группировке товаров я ее вычисляю. Есть агрегатная функция КАЖДЫЙ() которая возвращает ЛОЖЬ если ЛОЖЬ встречается хоть один разв в наборе, что в принципе подходит
Есть у кого мысли как можно использовать ее для определения выполнения договора рассчитывая группировку по товарам? Контрагент договор Товар----------------- план --факт --- бонус -------ПланВыполнен Рога и копыта --------------------------0--------------ЛОЖЬ (получить) ------------------------------------------------------------------------------ договор111 -----------80-----54------- 0--------------ЛОЖЬ (получить) ------------------------------------------------------------------------------ Товар 1 ---------------10----- 15 ------150-------------ИСТИНА---------- ------------------------------------------------------------------------------ Товар 2 ---------------20----- 19------- 0---------------ЛОЖЬ------------ ----------------------------------------------------------------------------- Товар 3 ---------------0-------10--- --100---------------ИСТИНА ---------------------------------------------------------------------------- |
|||
9
Вафель
29.03.17
✎
14:43
|
те просто нужно чтоб на уровне договор было не равно сумме по товарам?
|
|||
10
aleks_default
29.03.17
✎
15:05
|
ВЫБОР КОГДА Минимум(ПланВыполнен) = истина тогда Сумма(Бонус) иначе 0 конец
|
|||
11
aleks_default
29.03.17
✎
15:09
|
че тупим? делов-то
|
|||
12
БУКА
29.03.17
✎
15:56
|
10 наверное ВычислитьВыражение("Минимум(ПланВыполнен)", "Номенклатура","Группировка")
|
|||
13
aleks_default
29.03.17
✎
16:23
|
(12) если для поля "ПланВыполнен", то просто Минимум(ПланВыполнен). Зачем ВычислитьВыражение если Номенклатура у тебя это же детальные записи?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |