Имя: Пароль:
1C
 
СКД: связь таблиц
0 cons74
 
15.06.15
12:54
Имеется отчет: http://savepic.net/6951334.htm
Здесь использовано 2 регистра накопления. Один - обороты. Из него удобно получать Отправителя и Получателя, т.е. в отчете видим приход и расход с текущего (выбранного в параметрах) склада на перечисленные в колонках.
Однако появилась потребность видеть и остатки по текущему складу. Т.к. исходный регистр -только обороты, - добавил запрос к другому регистру ОстаткиИОбороты, сделал соединение в СКД (закладка СвязиНаборовДанных) по номенклатуре.
И тут проблемы: если сделать как написал выше - не выходят строки где остаток есть, а оборотов не было (т.к. номенклатура в отчет берется из первого набора-запроса).
Если же я делаю соединение этих 2х запросов в один (в конструкторе запросов) - тогда перестает работать расшифровка: СКД при двойном щелчке на ячейке с оборотом накладывает отбор на склад - а он для ОстаткиИОбороты уже есть - это текущий склад (остатки для него получали). И тогда СКД пишет "Склад=&П1 и Склад=&П2" - конечно результат пустой.
1 MadHead
 
15.06.15
13:04
В связях есть галочка Обязательной связи (не помню точно), еще можно попробовать сделать объединение через СКД или вручную обработать расшифровку
2 fisher
 
15.06.15
13:09
1) про наборы данных забыть полностью. Вспоминать, когда без них принципиально никак (например, с ТЗ соединить надо).
2) открыть для себя магию фигурных скобок и правила автозаполнения настроек
3 cons74
 
15.06.15
14:38
(2) и где про эту магию пишут?
4 cons74
 
16.06.15
08:51
Решил. Один запрос.
1) isnull(ОстаткиИОбороты.номенклатура,Обороты.Номенклатура) как номенклатура
2) переписать текст запроса:
...
выбрать
isnull(ОстаткиИОбороты.номенклатура,Обороты.Номенклатура) как номенклатура
...
из
Обороты полное соединение ОстаткиИОбороты //тут было наоборот: ОстаткиИОбороты полное соединение Обороты
3) теперь можно пометить вторую таблицу (ОстаткиИОбороты) как не обязательную - закладка КомпоновкаДанных в конструкторе запроса
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс