Получение данных из двух таблиц одним запросом #443997


#0 by antgrom
Есть два РН. Продажи и Закупки. Интересует : Номенклатура , Регистратор продажи, Количество проданного , Цена продажи ,Регистратор покупки, Кол закупленного , Цена покупки. С группировкой по номенклатуре. В виде : Номенклатура РТиУ №...|<КолПрод>|<ЦенаПрод>| ПТиУ №...|<КолЗакупки>|<ЦенаЗакупки> | РТиУ №...|<КолПрод>|<ЦенаПрод>| Следующаяноменклатура РТиУ №...| <КолПрод>|<ЦенаПрод>|ПТиУ №...|<КолЗакупки>|<ЦенаЗакупки> | Есть отбор за период. Причем для какой-либо номенклатуры количество д-в продажи и покупки может быть не равно. Пробую получить с помощью "Объединить все" , но не устраивает результат. Есть варианты ?
#1 by YES_82
Полное соединение
#2 by YES_82
+ связь
#3 by antgrom
При полном соединении такого вида : При нескольких документах покупки и продажи идет их дублирование
#4 by Живой Ископаемый
2 потому и написали  - +Связь, та, которая будет обеспечивать отсуствие дублирования
#5 by Живой Ископаемый
В РН нет реквизита "Партия"?
#6 by antgrom
И какая связь обеспечит отсутствие дублирования ? Партии в РН Продажи нет. Да и не слишком поможет этот реквизит , т.к. Ппри продаже номенклатура мжет не быть списанной по партии прихода.
#7 by Живой Ископаемый
2 не знаю... ты написал что тебя интересует, но поллностью структуру регистров не привел.. Может и ничего не поможет
#8 by Живой Ископаемый
ну хорошо, давай разбеем.. например номенклатуру "Гвозди" ты получал по ПН№2 и ПН№5, и расходовал их по РН№4, РН№6 и РН№9... Что ты хочешь увидеть в твоем результате по номенклатуре "гвозди"?
#9 by Kaidend
Какая конфигурация и редакция?
#10 by Kaidend
А вообще да, если партии нет, то непонятно, чего пытается автор получить.
#11 by antgrom
Гвозди РН№4| <КолПрод>|<ЦенаПрод>| ПН№2 |<КолЗакупки>|<ЦенаЗакупки> | РН№6| <КолПрод>|<ЦенаПрод>| ПН№5 |<КолЗакупки>|<ЦенаЗакупки> | РН№9| <КолПрод>|<ЦенаПрод>| .... |............|............. | Вместо точек  - пустое место. Документы РТиУ и ПТиУ не связаны друг с другом . Можно сказать что существуют две пристыкованные друг к другу таблицы.
#12 by antgrom
УТ  10.3 Хочу получить с группировкой по номенклатуре , документы РТиУ и ПТиУ в которых есть эта номенклатура , количество продажи , цена продажи , количество закупки , цена закупки. РТиУ и ПТиУ не связаны. Есть РТиУ - сторона РТиУ заполняется. Нет РТиУ - не заполняется. Есть ПТиУ- сторона ПТиУ заполняется. Нет ПТиУ - не заполняется.
#13 by antgrom
к
#14 by Живой Ископаемый
2 ага, я понял, то есть как бы две колонки... Смотри, такой вариант... ты подготавливаешь сначала две ВТ, при чем в них должно быть поле "НомерПП", который ты будешь каким-то образом заполнять... этот номер ты будешь начинать с 1 при каждой новой номенклатуре... И потом ты будетшь строить запрос к обоим ВТ, и соединять строки по номенклатуре и по НомеруПП, тогда дублирования не будет
#15 by Живой Ископаемый
При чем у тебя будет ИЗ ВТРасходов Левое соединение ВТПриходов...
#16 by Живой Ископаемый
а не, не левое, возможна и обратная ситуация.. Да, полное соединение будет
#17 by Kaidend
"который ты будешь каким-то образом заполнять" Каким, интересно? Временные таблицы нельзя редактировать.
#18 by Kaidend
А откуда такая острая необходимость получать данные именно одним запросом? Для СКД, что ли?
#19 by Живой Ископаемый
2 Зато ТЗ, которыми эти ВТ заполнять - можно.
#20 by antgrom
Чесно говоря я уже сделал эту задачу через два запроса, выгрузку в ТЗ и последующий поиск в ТЗ. Но скорость не устраивает. Для себя хочется найти решение для повышения скорости. Это частый вопрос от пользователей - цены продажи и покупки для номенклатуры в одном отчете. Интересует решение одним запросом   )))
#21 by Живой Ископаемый
2 но ведь пользователи не настаивают на соединении несвязанных документов - nuulf почему ты так делаешь?
#22 by hhhh
в Ут посмотри, там это сделано: регистры Продажи и ПродажиСебестоимость.
#23 by antgrom
Постановщик задач сказал - РТиУ и ПТиУ - рядом для наглядности
#24 by Живой Ископаемый
Сразу и одним запросом не получить... Либо Через СКД, либо через пакетный запрос, либо через два запроса, в первом из которых будет подготавливаться две ВТ...
#25 by Живой Ископаемый
При чем как через пакетный запрос - я даже и не знаю, потому что не уверен что можно в запросе организовать поле "счетчик" для какой-то группировки... Но может и можно...
#26 by Рэйв
Зачем тебе вторую таблицу мастрячить справа если нет связи документов?.Делай два отдельных запроса, объединяй их и упорядочивай
#27 by Рэйв
+...упорядочивай по номенклатуре и документу
#28 by Живой Ископаемый
на самом деле нет никакой наглядности.. наоборот, будет создаваться иллюзия что РН4 и ПН2 как-то связаны, чего на самом деле нет...
#29 by antgrom
При превышении количества товар не с пишется с РН ПродажиСебестоимость.Не подходит. ОК. Спасибо. Наверно так и сделаю В том и вопрос темы - как объединить в одном запросе двнные из двух таблиц , чтоб не было дублирования документов. Сложносказать что перевешивает - удобство или возможное недопонимание ...
#30 by Kaidend
Вообще, вариант Рэйв позволит получить желаемый результат без дублирования документов. Просто не надо вообще использовать связи, использовать надо объединение двух запросов и упорядочивание по номенклатуре и виду документа. Свистопляска с ВТ/ТЗ вряд ли хоть как-то увеличит скорость, а уж код читать станет точно сложнее.
#31 by Kaidend
А отчет и правда дурацкий.
#32 by antgrom
Если объединить без связи по номенклатуре , то упорядочивать придется по двум номенклатурам отдельно   )))  Не подходит
#33 by Живой Ископаемый
2 Он наверное имеет в виду - в подзапросе ипсользовать Объединить все, а в самом запросе - выбрать все поля из подзапроса с объединением с группировкой по номенклатуре, и там будут документы идти впремешку, или в хронологическом порядке, или если ты поставишь например еще поле вид документа, и по нему упорядочишь, то будут идти сначала Приходы потом расходы
#34 by Живой Ископаемый
то есть
#35 by antgrom
Полное соединение я сразу сделал , но оно меня не устраивает  )
#36 by Живой Ископаемый
2 нет, не полное соединение, а ОБЪЕДИНИТЬ ВСЕ... да, то что предлагается в - там не будет двух колонок, но и не будет такого как у тебя - сначала весь Приход, потом весь расход...
#37 by Живой Ископаемый
а будет и приход и расход, сгруппированный по номенклатуре, но внутри номенклатуры - да, не будет двух колонок, а просто или все документы независимо от вида будут идти в хронологическом порядке, или погруппированны по виду  - например Приход/расход
#38 by antgrom
Это будет трудно выводить в макет требуемого вида.
#39 by Живой Ископаемый
2 Ну в общем даже невозможно.. :) это они тебе таким образом намекают отказаться от этого макета...
#40 by Kaidend
Почему невозможно? Возможно, но трудно.
#41 by antgrom
Поскольку отчет уже реализован ( правда не оптимально ) , вопрос по выводу рядом двух связанных только по номенклатуре таблиц одним запросом - теоритический.
#42 by Живой Ископаемый
2 интересный, ага...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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