Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

СКД. Как реализовать особенное объединение

СКД. Как  реализовать особенное объединение
Я
   Adept
 
31.10.16 - 10:56
Есть два регистра, оба двигаются одними и теми же документами.
С почти идентичными структурами

1-й
Склад
Номенклатура
Количество

2-й
Партия
Склад
Номенклатура
Количество

В СКД предполагается сделать отчет со следующей структурой групп
Номенклатура->Склад->ДокументДвижения->Партия (Приход Расход Оборот - по  количеству)

Как соединить два запроса что бы на уровне партий в строках были только данные по количеству из регистра партий, а начиная с уровня Документа движения, добавлялись данные по складу
 
 
   Лефмихалыч
 
1 - 31.10.16 - 10:59
и на кой хрен вообще нужен первый регистр в отчете?
   Adept
 
2 - 31.10.16 - 11:04
(1) они не всегда совпадают, точнее иногда может быть движение по одному и не быть по другому
   AceVi
 
3 - 31.10.16 - 11:16
(0) Особого соединения не надо. Тебе надо Объеденить 2 запроса по 2 регистрам. Просто в первом регистре вместо партии будет NULL. в Скд делаешь условие при выводе группировки по партиям не выводить есть партия = NULL. итого у тебя доступны все данные на уровне ДокументДвижения.
   Adept
 
4 - 31.10.16 - 11:19
(3) Объединение на уровне СКД или запроса?
   newbling
 
5 - 31.10.16 - 11:26
Я так понимаю, что может быть ситуация когда в 1 регистре документ оставил запись:

Склад1 Номенклатура1 5

А во 2-м регистре:
Склад1 Номенклатура1 3 Партия1
Склад1 Номенклатура1 2 Партия2
   newbling
 
6 - 31.10.16 - 11:29
Тут тогда надо будет исхищриться и добавить промежуточную таблицу, которая будет сворачивать регистр с партиями по Складу, Номенклатуре, Количеству, таким образом высчитывая количество без учёта партий, потом объединять его с изначальными данными по регистру 2 чтобы получить:

Склад, Ном, Партия, Колво, КолвоБезУчетаПартии

И только потом объединять с первым и уже сравнивать по КолвуБезУчетаПартии
   newbling
 
7 - 31.10.16 - 11:30
В зависимости от того, что надо в итоге получить, можно ещё индексы ввести всякие
   AceVi
 
8 - 31.10.16 - 11:36
(6) Кстати да ТС. напиши какие колонки должны быть в конечном отчете. Что значит " добавлялись данные по складу"? Отдельная колонка где учитываются данные только по 1 регистру?
   AceVi
 
9 - 31.10.16 - 11:41
(8) Тогда можно просто левым соединением Рег2 = Рег1 по складу и номерклатуре будет такое.
                                КолВоПо1Рег
Склад1 Номенклатура1 3 Партия1       5
Склад1 Номенклатура1 2 Партия2       5

Где в колонке КолВоПо1Рег общее кол-во без учета партии.
Затем в СКД где ресурсы считаешь делаешь 2 ресурса с одинаковым именем , 1 ресурс расчитываешь только по Партия и ДокументДвижения, в формуле ставишь макс(сумма)(сумма одна ита же в каждой строке партии все равно), 2 ресурс рассчитываешь по Номенклатура->Склад уже как Сумма(Сумма). и все на уровне документа движения у тебя будет 5, а выше по группировкам уже итоговая сумма.
   Adept
 
10 - 31.10.16 - 12:29
(3) По ходу как надо отработало. Спасибо.
 
 Рекламное место пустует

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует