Не получается в СКД связать три набора данных и получить нужный результат #653166


#0 by eeyore
Самостоятельно разбираюсь с возможностями СКД, хочу связать три набора данных и вывести из них значения в виде детальных записей. Создал тестовую конфигурацию, она состоит из: - регистр сведений "ЦеныНоменклатуры", измерение "Номенклатура" - тип СправочникСсылка.Номенклатура и ресурс "Цена" - тип "Число" - регистр сведений "ЗапасыНоменклатуры", измерение "Номенклатура" - тип СправочникСсылка.Номенклатура и ресурс "Запас" - тип "Число" Создаю "Отчет1", настраиваю СКД: На закладке "Наборы данных" описываю три набора данных - запрос: 1.  "ВсяНоменклатура" ВЫБРАТЬ    Номенклатура.Ссылка КАК Номенклатура ИЗ ИЗ ИЗ    РегистрСведений.ЗапасыНоменклатуры КАК ЗапасыНоменклатуры На закладке "Связи наборов данных" задаю связи: Источник связи  | Приемник связи     | Выражение источник | Выражение приемник ВсяНоменклатура | ЦеныНоменклатуры   | Номенклатура       | Номенклатура ВсяНоменклатура | ЗапасыНоменклатуры | Номенклатура       | Номенклатура На закладке "Настройки" добавляю группировку "Детальные записи" и в "Выбранные поля" указываю "Номенклатура", "Цена", "Запас". Формирую отчет - вылетает ошибка "Использование полей из не связанных наборов данных не допустимо". Конфигурацию можно скачать по этой ссылке: Я не понимаю, о каких не связанных наборах данных идет речь? Я вроде все связал. Помогите, пожалуйста, разобраться!
#1 by milan
Забей, вяжи все в одном запросе
#2 by Волчара2010
Юзай набор данных объединение
#3 by Волчара2010
> Конфигурацию можно скачать по этой ссылке: Для начала надо обсудить стоимость работ и условия оплаты :)
#4 by Budy
Наименование полей вроде должно быть разное номенклатура в одном наборе номенклатура2 в другом и т.д.
#5 by eeyore
Я хочу разобраться именно с тем как связывать наборы данных в СКД, так что вариант связывать в запросе мне не подходит.
#6 by Волчара2010
через объединение делай
#7 by Valadis
Нужно связывать каждый с каждым
#8 by eeyore
Если я связываю два а не три набора данных, то наименование поля связи в разных наборах данных может быть одинаковым
#9 by eeyore
Это как? Связать ВсяНоменклатура и ЦеныНоменклатуры а потом ЦеныНоменклатуры и ЗапасыНоменклатуры так что-ли?
#10 by Valadis
То есть для наборов А,Б,С нужно связать: Б с С; посмотри какой-нибудь типовой отчет в ЗУПе (типа списки работников, там есть подобное)
#11 by milan
СКД в принципе вещь довольно логичная и понятная, но вот со связями наборов данных как-то не очень понятен ход мысли
#12 by Paul_Nevada
- только что сделал именно таким обращом - отчет заработал.
#13 by Valadis
Почему именно так не отвечу, но 1.уже сталкивался с подобным, помогла именна связь каждый с каждым. 2. смотрим типовые отчеты, там такие схемы тоже встречаются.
#14 by Armando
В наборах Цены и Запасы поставь все флаги для номенклатуры в ограничении поля и реквизитов
#15 by Armando
тоже все логично
#16 by eeyore
У меня сейчас нет ЗУПа под рукой. Попробовал связать как ты говоришь, отчет при этом заработал, НО в него выводятся не все данные, а именно при связи Б с С попадаю все данные из Б и только те данные из С, которые совпадают с Б по номенклатуре. И наоборот если связываю С с Б, то попадают все из С и только те из Б, которые совпадают с С по Номенклатуре. А как сделать чтобы выводились все данные и из Б и из С?
#17 by lxndr
отборы есть в настройках?
#18 by eeyore
А данные у тебя все вывелись? Посмотри внимательно, там данные в ЦеныНоменклатуры и ЗапасыНоменклатуры по номенклатуре не совпадают
#19 by eeyore
нет
#20 by Valadis
насколько я помню в СКД реализовано только левое соединение (имею ввиду вкладку "Связи наборов данных")
#21 by eeyore
Поставил - не помогает
#22 by eeyore
Именно так
#23 by eeyore
Поэтому я и связываю оба набора с А, т.к. только в нем есть все данные по Номенклатуре, в остальных наборах их нет.
#24 by Valadis
+ флаг "необязательная связь" или типа того попробуй
#25 by milan
Поделись знанием.
#26 by eeyore
Попробовал снимать флаг "Обязательная связь" - не помогает, отчет на него ни как не реагирует.
#27 by Valadis
Снять для связи Б с C
#28 by eeyore
Да я его пробовал снимать для связи Б с С - не помогает. И для всех связей его снимал - такой же результат.
#29 by eeyore
Через объединение работает, я связал ЦеныНоменклатуры и ЗапасыНоменклатуры через объединение, а полученный результат связал с ВсяНоменклатура через связи наборов данных. Но это не проясняет для меня почему не работает связь между тремя наборами данных?
#30 by ssh2006
из документации: "В одной группировке не могут быть использованы поля из не связанных друг с другом наборов данных. При этом наборы данных, имеющие общие родительские наборы данных, связанными не считаются. Исключение сделано для полей-итогов, которые могут быть использованы в любой группировке." Отчет будет работать, если цену и запас сделать ресурсами
#31 by vmlspb
Все наборы данных должны быть связаны. Свяжи оставшиеся по ИСТИНА (можно в запросе эти поля добавить)
#32 by Armando
Не понял в чем проблема. Отчет формируется. Ошибка не появляется
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С