Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Объединить две таблицы с условием по количеству.

Объединить две таблицы с условием по количеству.
Я
   vadium
 
28.11.18 - 15:45
Есть две таблицы с колонками "Количество", соединяемые по некоторым ключевым полям, но может возникнуть ситуация, когда в обеих таблицах есть дублирующиеся строки, соответственно соединение даст комбинацию в 4 строки, а нужно сделать так чтобы присоединяемая таблица передала количество, меньшее чем первая.
Пример:
Таблица1
y  K  13
z  R  15
x  A   1
x  B   2

Таблица2
z  H  14
y  M  11
x  C   2
x  D   1

Итогом является результирующая Таблица3
y  KH  13
z  RM  11
                  и 4 комбинации
x  AC  1
x  AD  1
x  BC  2
x  BD  1

Хотелось бы чтобы при объединении по x получилась такая (или похожая) картинка:
x  AC 1
x  BC 1
x  BD 1
Такое реально? Какое-то условие с итогом по ключевым полям?
 
 
   mikecool
 
1 - 28.11.18 - 15:47
Где Количество1 < Количество2
Имеющие Количество1 < Количество2
   vadium
 
2 - 28.11.18 - 15:56
нет, в каждой строке результирующее количество меньше другого, так что условие как бы и так выполняется.
   vadium
 
3 - 29.11.18 - 09:01
неужели это невозможно сделать в запросе?
   exwill
 
4 - 29.11.18 - 09:09
(3) Запросом можно сделать все. Если, конечно, это  T-SQL. 1С-овским запросом можно сделать все, кроме того, что делается запросом в цикле.
Ты пишешь не понятно. Никто не понимает - в чем твоя проблема.
   rs_trade
 
5 - 29.11.18 - 09:21
выбор когда в селекте, потом группировать?
   seevkik
 
6 - 29.11.18 - 09:52
Выбор
Когда Таблица1.Количество > Таблица2.Количество
Тогда Таблица2.Количество
Иначе Таблица1.Количество
Конец
или я чего-то не понимаю?)
   vadium
 
7 - 29.11.18 - 11:01
Наверное я был не прав что не показал что есть.
Запрос (сильно упрощённый) такой:

ВЫБРАТЬ
    РасходнаяТовары.Товар,
    РасходнаяТовары.Серия,
    РасходнаяТовары.ЦенаБезНДС,
    СУММА(РасходнаяТовары.Кво) КАК Кво,
    СУММА(РасходнаяТовары.СуммаСНДС) КАК СуммаСНДС,
    СУММА(Парт.Колво) КАК Колво,
    СУММА(Парт.Сумма) КАК Сумма,
    Парт.Партия
ИЗ
    Документ.Расходная.Товары КАК РасходнаяТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Партия КАК Парт
        ПО РасходнаяТовары.Ссылка = Парт.Регистратор
            И РасходнаяТовары.Серия = Парт.Серия
ГДЕ
    РасходнаяТовары.Ссылка = &Ссылка
    И РасходнаяТовары.Товар = &Товар

СГРУППИРОВАТЬ ПО
    РасходнаяТовары.Товар,
    РасходнаяТовары.Серия,
    РасходнаяТовары.ЦенаБезНДС,
    Парт.Партия

В исходных данных в Расходной:

Товар                    Серия    КвоР    ЦенаБНДС    СуммаСНДС
полыни н-ка 25мл стекло    050918    2,0    6        14,4
полыни н-ка 25мл стекло    050918    1,0    7        8,4

и соответственно Партии:

Товар                    Серия    КвоП    СуммаП    Партия
полыни н-ка 25мл стекло        050918    1,0    5    Приходная накладная ЗЮ-123
полыни н-ка 25мл стекло    050918    2,0    14    Приходная накладная МЮ-321

Итог работы данного запроса:
Товар            Серия    КвоР    КвоП    ЦенаБНДС    СуммаСНДС    СуммаП    Партия
полыни н-ка 25мл стекло    050918    2    1    5,06    10,83    4,8    Приходная накладная ЗЮ-123
полыни н-ка 25мл стекло    050918    2    2    5,06    10,83    9,56    Приходная накладная МЮ-321
полыни н-ка 25мл стекло    050918    1    1    5,23    5,6    4,8    Приходная накладная ЗЮ-123
полыни н-ка 25мл стекло    050918    1    2    5,23    5,6    9,56    Приходная накладная МЮ-321

Объединять по количествам нельзя, в общем случае эти строки независимы и пересекающиеся количества - совпадения.
Итогом должна служить таблица вида:

Товар            Серия    КвоР    КвоП    ЦенаБНДС    СуммаСНДС    СуммаП    Партия
полыни н-ка 25мл стекло    50918    1    1    6    7,2    5    Приходная накладная ЗЮ-123
полыни н-ка 25мл стекло    50918    1    1    6    7,2    7    Приходная накладная МЮ-321
полыни н-ка 25мл стекло    50918    1    1    7    8,4    7    Приходная накладная МЮ-321

Реально ли такого добиться?
   rs_trade
 
8 - 29.11.18 - 11:34
выбор когда в селекте, потом группировать?
   Вафель
 
9 - 29.11.18 - 11:37
ты партионный учет в запросе чтоли делаешь?
   seevkik
 
10 - 29.11.18 - 13:16
Ну и?)

Сумма(Выбор 
 Когда Парт.Колво > РасходнаяТовары.Количество
  Тогда Парт.Колво
 Иначе РасходнаяТовары.Количество
Конец) КАК Колво
   seevkik
 
11 - 29.11.18 - 13:17
ну или знак в другую сторону
   rs_trade
 
12 - 29.11.18 - 13:34
(10) до него все никак не дойдет видимо этот вариант
   Buster007
 
13 - 29.11.18 - 14:13
что-то мне подсказывает, что предложенные варианты решения не подойдут, т.к. ему похоже требуется (9)

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