|
СКД. Связи наборов данных. Полное соединение вместо левого | ☑ | ||
---|---|---|---|---|
0
CAPITALIST
08.01.19
✎
17:57
|
Итак, заказчик хочет видеть в одной форме несколько отчетов и общие итоги по ним. Так же должна быть возможнось отбора.
Сделал несколько наборов данных типа "Запрос". Поля схожи так, что проблем нет. В связях наборов данных связал эти запросы. Источник - Запрос1, приемник - Запрос2. Связь по Организация - Организация Склад - Склад Номенклатура - Номенклатура УсловияПродажи - УсловияПродажи Все отлично связывается и считается. До тех пор, пока набор измерений одинаковый. Допустим, в Запрос1 нет УсловияПродаж = "Льготные", а в Запрос2 они есть. Так как Запрос1 - источник связи, то Запрос2 сформируется тоже без УсловияПродаж = "Льготные", хотя там должна быть эта строчка. Можно поменять местами Запрос1 и Запрос2, но тогда такая проблема будет в другую сторону. Получается, что связь идет левым соединением. Как сделать полным? |
|||
1
Ник080808
08.01.19
✎
18:01
|
(0) вложенные схемы чем не подходят?
|
|||
2
Ник080808
08.01.19
✎
18:02
|
(0) вместо полное соединение делай объединение
|
|||
3
CAPITALIST
08.01.19
✎
18:19
|
(1) Вложенные схемы делаются на уровне составления запроса. Так же как и Объединение.
Я же делаю на уровне СКД. Один отчет содержит 3 отчета и общие итоги. Все отчеты имеют РАЗНУЮ структуру и несколько общих полей. Итого у меня 4 набора данных, 3 служат для формирования отчетов а 4-ый - суммирует все ресурсы и выводит 4-ю табличку итогов |
|||
4
Ник080808
08.01.19
✎
18:23
|
(3) Так же как и Объединение. - тоже делается на уровне скд. Набор данных объединение
|
|||
5
Ник080808
08.01.19
✎
18:26
|
(3) "Вложенные схемы делаются на уровне составления запроса" - это тоже на уровне скд на уровне настроек, затык только с общими итогами. Их можно отчетом 4 и соединить настройки схем по владельцу. Но это тоже гемморой и объединение таки лучше
|
|||
6
CAPITALIST
08.01.19
✎
18:35
|
(4) тогда значения из первой таблицы, перейдут во вторую и наоборот. Это должны быть 3 независимые отчета.
|
|||
7
Ник080808
08.01.19
✎
18:37
|
(6) делаешь поле текстовое "имя отчета". и группируешь по нему отчет и все
|
|||
8
Ник080808
08.01.19
✎
18:40
|
я так делал управленческие отчеты-велосипеды. Нужно было вывести
Общий Доход Общая Себестоимость Затраты Прибыль. Делал через объединение Поле Статья - текстовое поле "Доход", "Себестоимость", "Затраты" Поле Сумма - итог движения по регистру; |
|||
9
CAPITALIST
08.01.19
✎
20:17
|
(7) Отличная идея!
Но тогда проблема в отборах. Допустим в Запрос1 есть поле ВидОплаты. В Запрос2 его нет. Делаем отбор по этому полю. Вторая табличка выходит пустая. В настройках если поставить отбор не на весь отчет, а только на первую группировку Запрос1, то итоги в 4-й таблице будут считаться без отбора. Если еще и на 4-ю итоговую таблицу поставить такой же отбор, то в форме отчета будет два одинаковых отбора. |
|||
10
palsergeich
08.01.19
✎
23:01
|
(0) Полное соединение это условие связи = ИСТИНА.
В любом мануале СКД объяснено, что по умолчанию связь - левая, если нужно полное - бахаешь -ИСТИНА. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |