Имя: Пароль:
1C
1С v8
СКД Полное соединение наборов данных
, ,
0 rosveta
 
09.07.15
10:13
Добрый день. Столкнулась с проблемой при написании отчета.
Есть отчет на СКД. Там сейчас три набора данных (дальше будет больше). Эти наборы должны в отчет входить полностью, те мне нужно полное соединение, но в скд есть только левое. Объединение мне тоже не подходит из-за группировок. Можно ли как-то обмануть скд и сделать полную связь наборов данных?
1 Гёдза
 
09.07.15
10:15
нельзя
2 Andrey2C
 
09.07.15
10:18
(0) По моему можно начиная с версии 8.3 если я не ошибаюсь.
3 rosveta
 
09.07.15
10:20
(2), у меня 8.3. Не могу найти такого((
4 Cube
 
09.07.15
10:23
(0) Можно сделать главную таблицу, к которой потом прицеплять левым соединением все остальные.
5 rosveta
 
09.07.15
10:27
(4), Все три таблицы содержат различные данные, т. е. ни одна из них не может быть главной. Пыталась сделать еще одну доп таблицу , например выбрать  всех клиентов и к ней присоединять все свои три таблицы, но скд ругается, пишет, что нельзя использовать несвязанные наборы данных.  связь выглядела вот так
http://clip2net.com/s/3ktQ3ip
6 Cube
 
09.07.15
10:33
(5) А почему бы, тогда, в запросе не собрать эти таблицы в одну большую таблицу, которую скормить СКД?
7 rosveta
 
09.07.15
10:38
(6), можно, просто думала обойтись меньшими усилиями. Таблиц будет в итоге не три а восемь.
8 bootini
 
09.07.15
10:44
(7) Скорее можно и в одном запросе все эти данные получить не использую наборы.
9 rosveta
 
09.07.15
10:53
(7) Можно. Но только этот отчет содержит в себе 8 отчетов, где многие отчеты состоят уже из 15 пакетов. Будет очень-очень громоздкий запрос, который будет сложно отлаживать
10 samozvanec
 
09.07.15
10:55
(5) у этих таблиц есть что-то общее, вот это что-то можно вынести в отдельную таблицу, и использовать ее как главную
11 rosveta
 
09.07.15
10:57
(10), есть. Например партнер. Я взяла и вынесла ее как главную, на скриншоте пример. Но скд ругается в таком случае на несвязанные наборы данннх
12 rosveta
 
09.07.15
10:57
(10), точнее там сейчас Организация, но она тоже общая для всех таблиц
13 samozvanec
 
09.07.15
11:36
(11) где-то мухлюешь, давай скрин по-больше, чтоб все видно было
14 bootini
 
09.07.15
12:02
(12) Тогда, то запрос из набора организация надо вставить во все запросы наборов и вязать их последовательно по организации
15 rosveta
 
09.07.15
12:04
http://c2n.me/3kubpwQ
вот скриншот с настройками. Ошибки не возникает. Но если я отчет формирую с группировкой по Основному менеджеру, то он работает , как будто ты бы левое соединение к таблице партнер, то есть не все данные из дебеторки и суд попадают туда, но все данные из клиентов, если же я убираю группировку оп основному менеджеру, то работает правильно
16 rosveta
 
09.07.15
12:06
может быть надо делать еще связь по основному менджеру?
17 Mitriy
 
09.07.15
12:07
(0) добавить везде одинаковое поле с Null и по нему связать?
18 samozvanec
 
09.07.15
12:13
(16) я бы грешил на оптимизатор СКД. попробуй все наборы переделать в объекты.
19 fisher
 
09.07.15
12:27
(9) Ээээ... А нафига это всё в один отчет пихать?
ЗЫ. Давным-давно на собственных шишках убедился, что наборы данных стоит использовать только когда иначе никак (внешние источники, доп-иерархия и т.п.). В противном случае, несмотря на соблазнительность "оптимизации" рано или поздно упираешься в какие-нибудь ограничения.
20 fisher
 
09.07.15
12:30
Одна из самых древних и ужасных фич - отбор в связанном наборе превращает левое соединение во внутреннее.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.