|
Нужна помощь по СКД |
☑ |
0
WSvetlana13
21.05.14
✎
01:34
|
Доброго времени суток, уважаемый ALL!
Прошу подсказки-каким образом организовать в СКД следующее: есть два внешних набора данных-ТаблицыЗначений. Таблица1 имеет поля (Товар, Диапазон, Количество, Сумма, Норма), Таблица2 имеет поля (Товар,Диапазон,Партия,Количество,Сумма). Наборы связываются Таблица1 join Таблица2 по Товар, Диапазон. Нужно вывести отчет в виде "шахматки":
| Диапазон1 | Диапазон2 |
| ----------------------|-----------------------|
Товар(иерархия) |<итоги по иерархии> | <итоги по иерархии> |
|-----------------------|-----------------------|
Товар1 |Кол-во1| Сумма1 |Норма1|Кол-во2| Сумма2 |Норма2|
партия1 |Кол-во11|Сумма11 |0 |Кол-во21|Сумма21 | 0 |
партия2 |Кол-во12|Сумма12 |0 |Кол-во22|Сумма22 | 0 |
Т.е. нужно для партий брать данные из Таблицы2, а для товаров-из Таблицы1. Можно ли получить такой отчет с помощью СКД? Заранее, спасибо за ответы.
|
|
1
ИсчадиеADO
21.05.14
✎
01:51
|
в первой таблице партии нет, как расчитывается сумма1?
|
|
2
ИсчадиеADO
21.05.14
✎
02:56
|
как вариант копать в сторону функций компоновки данных.
ВЫБОР КОГДА Уровень() > 1 И (НомерПоПорядкуВГруппировке() = 1 ИЛИ ВЫЧИСЛИТЬВЫРАЖЕНИЕ("Уровень()","","Группировка","Предыдущая","Предыдущая")) = Уровень() ТОГДА Таб1.Поле ИНАЧЕ Таб2.Поле КОНЕЦ
только у меня не получилось сейчас вот это ВЫЧИСЛИТЬВЫРАЖЕНИЕ("Уровень()","","Группировка","Предыдущая","Предыдущая"))
хотя ВЫЧИСЛИТЬВЫРАЖЕНИЕ("Уровень()") работает
|
|
3
toys
21.05.14
✎
06:19
|
(1) ну походу из первой же таблицы и берется
|
|
4
toys
21.05.14
✎
06:20
|
(0) группировка товар, группировка партия - и все должно быть красиво
|
|
5
WSvetlana13
21.05.14
✎
08:00
|
Спасибо за ответы, я так и подозревала, что никак не получится срастить.
(2) С функциями СКД не получилось-итоги считаются бог весть как...может быть в выводе списком и можно, а с шахматкой не получается.
|
|
6
ИсчадиеADO
21.05.14
✎
08:00
|
(4) у нее похоже основная проблема, как 1 ресурс расчитать из неск. таблиц, в зависимости от группировки
|
|
7
ИсчадиеADO
21.05.14
✎
08:02
|
(5) пробуй, создай неск. ресурсов, где просто выводи уровень() и НомерПоПорядкуВГруппировке(), нужнодобитьс чтобы что-то типо того работало ВЫЧИСЛИТЬВЫРАЖЕНИЕ("Уровень()","","Группировка","Предыдущая","Предыдущая"))
|
|
8
ИсчадиеADO
21.05.14
✎
08:02
|
там видимо с параметрами нужно поэкспериментировать
|
|
9
ИсчадиеADO
21.05.14
✎
08:02
|
ну может кто еще что подскажет
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший