Имя: Пароль:
1C
1С v8
Как правильно составить выражение для ресурса СКД?
0 al_zzz
 
13.10.22
20:57
Суть задачи в следующем: необходимо для подчиненной группировки распределить значение из ресурса старшей группировки.
Например, склад - группировка 1-ого уровня, а номенклатура - ей подчинена. Мне требуется взять значение ресурса "Остаток" из группировки "Склад" и заполнить колонку "Распределение" следующим образом:
   Склад/номенклатура  |   Количество | Остаток | Распределение
   Склад1                     10           7          0
   Номенклатура1               2           0          2
   Номенклатура2               2           0          2
   Номенклатура3               4           0          4
   Номенклатура4               3           0          2
   Номенклатура5               2           0          0
   .....................................................
   Т.е., чтоб остаток 7 распределился на сколько хватит строк вниз по строкам группировки "Номенклатура".
   Можно ли как-то задать такое выражение в ресурсе? Как, если можно?
   Заранее спасибо!
1 al_zzz
 
13.10.22
20:58
Только таблицу исходную неправильно сделал.
Склад/номенклатура  |   Количество | Остаток | Распределение
   Склад1                     13           7          0
   Номенклатура1               2           0          2
   Номенклатура2               2           0          2
   Номенклатура3               4           0          3
   Номенклатура4               3           0          0
   Номенклатура5               2           0          0
2 Мультук
 
гуру
13.10.22
22:58
(1)

Нюансы
1) Не знаю откуда берется 7 --  у меня это некий максимум
2) Если в первой строке вместо 2 будет 8, то считает неправильно, но мне уже лень
3) Наверняка можно проще, но я не знаю как :-)

Скриншот
https://pastenow.ru/09f8ee62c3c0a407e21c88b11bf47277

Статья
https://infostart.ru/1c/articles/1101676/

Обработка
https://dropmefiles.com/ioJqk
3 al_zzz
 
14.10.22
06:27
(2) Спасибо большое! Мысль понял. Дальше докручу, как нужно.
4 toypaul
 
гуру
14.10.22
08:17
Сумма(Количество) * ВычислитьВыражение("Сумма(Остаток)/Сумма(Количество)","Склад")
5 al_zzz
 
14.10.22
08:59
(4) Не, не. Мне не надо пропорционально делить.
6 toypaul
 
гуру
14.10.22
09:31
(5) ой. понял
7 toypaul
 
гуру
14.10.22
09:35
Тогда так

ВЫБОР
КОГДА ВычислитьВыражение("Сумма(Количество)",,"Начало","Предыдущая") < ВычислитьВыражение("Сумма(Остаток)","Склад") ТОГДА 0
КОГДА ВычислитьВыражение("Сумма(Количество)",,"Начало","Текущая") < ВычислитьВыражение("Сумма(Остаток)","Склад") ТОГДА Сумма(Количество)
ИНАЧЕ ВычислитьВыражение("Сумма(Количество)",,"Начало","Текущая") - ВычислитьВыражение("Сумма(Остаток)","Склад")
КОНЕЦ
Независимо от того, куда вы едете — это в гору и против ветра!