Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
21 Сен 2017, 13:34
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Связь таблиц запроса по периоду  (Прочитано 1217 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Онлайн Golickoff

  • ****
  • Сообщений: 294
  • РЕПУТАЦИЯ: 24
  • КПД: 8%
  • Регистрация: 2015-02-05
  • Сайт: 
  • Профессия: Ученик 1С
Всем привет.

Нужно получить цену последнего прихода на определённый товар и курс валюты на дату этого прихода. Я думал поставить связь по периоду между регистрами сведений, но что-то не получается. Уже много вариантов перепробовал и это заметно по запросу. Подскажите где исправлять.

"ВЫБРАТЬ
               | ЦеныНоменклатурыПоставщиковСрезПоследних.Цена,
               | ЦеныНоменклатурыПоставщиковСрезПоследних.Валюта,
               | ЦеныНоменклатурыПоставщиковСрезПоследних.Период,
               | КурсыВалютСрезПервых.Курс,
               | КурсыВалютСрезПервых.Кратность
               |ИЗ
               | РегистрСведений.КурсыВалют КАК КурсыВалютСрезПервых
               | ПРАВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатурыПоставщиков.СрезПоследних КАК ЦеныНоменклатурыПоставщиковСрезПоследних
               | ПО КурсыВалютСрезПервых.Валюта = ЦеныНоменклатурыПоставщиковСрезПоследних.Валюта
               | И КурсыВалютСрезПервых.Период = ЦеныНоменклатурыПоставщиковСрезПоследних.Период
               |ГДЕ
               | ЦеныНоменклатурыПоставщиковСрезПоследних.Номенклатура = &Номенклатура"
В результате имею всё, кроме курса и кратности.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.


Оффлайн Rasty

  • *****
  • Сообщений: 976
  • РЕПУТАЦИЯ: 138
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
попробуйте левое соединение и кстати период задается немного по другому
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
По валютам тоже нужен срез, а не физическая таблица

Онлайн Golickoff

  • ****
  • Сообщений: 294
  • РЕПУТАЦИЯ: 24
  • КПД: 8%
  • Регистрация: 2015-02-05
  • Сайт: 
  • Профессия: Ученик 1С
попробуйте левое соединение и кстати период задается немного по другому

Но мне нужен не конкретный период. Изначально мне нужна цена последнего поступления и если она не в рублях, мне нужен курс за дату поступления. Я же не могу указать в параметрах виртуальной таблице параметр типа ЦеныНоменклатурыПоставщиковСрезПоследних.Период. Если я использую левое соединение, то результат вообще окажется пустым. Запрос не найдёт курс и отсеет правую часть за неимением левой.

Цитировать
По валютам тоже нужен срез, а не физическая таблица
Это я уже экспериментировал всё подряд. Со срезами тоже то одно, то другое. Мой пример исключительно для наглядности и упрощения понимания.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Мой пример исключительно для наглядности и упрощения понимания.

Тогда вы очень упростили. Верните все взад, так как вы считаете, что наиболее вам подходит - подправим.
А во вторых - по валюте, это опять классическая задача на срез последних на каждую дату. Посмотрите тут: http://kb.mista.ru/article.php?id=92
достаточно доступно написано.

Онлайн Golickoff

  • ****
  • Сообщений: 294
  • РЕПУТАЦИЯ: 24
  • КПД: 8%
  • Регистрация: 2015-02-05
  • Сайт: 
  • Профессия: Ученик 1С
Верните все взад
:D Я сейчас в дороге. Спасибо за ссылку. Гляну дома и отпишусь о результатах.
Добавлено: 02 Мар 2016, 05:00

Всё получилось.
"ВЫБРАТЬ
               | Приход.Номенклатура,
               | Приход.ДатаПрихода,
               | Приход.ВалютаПрихода,
               | КурсПрихода.Курс
               |ИЗ
               | (ВЫБРАТЬ
               | ЦеныНоменклатурыПоставщиков.Номенклатура КАК Номенклатура,
               | ЦеныНоменклатурыПоставщиков.Период КАК ДатаПрихода,
               | ЦеныНоменклатурыПоставщиков.Валюта КАК ВалютаПрихода,
               | МАКСИМУМ(Валюты.Период) КАК ПериодПрихода
               | ИЗ
               | РегистрСведений.ЦеныНоменклатурыПоставщиков.СрезПоследних КАК ЦеныНоменклатурыПоставщиков
               | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК Валюты
               | ПО (Валюты.Период <= ЦеныНоменклатурыПоставщиков.Период)
               | И (Валюты.Валюта = ЦеныНоменклатурыПоставщиков.Валюта)
               |
               | СГРУППИРОВАТЬ ПО
               | ЦеныНоменклатурыПоставщиков.Номенклатура,
               | ЦеныНоменклатурыПоставщиков.Период,
               | ЦеныНоменклатурыПоставщиков.Валюта) КАК Приход
               | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК КурсПрихода
               | ПО Приход.ДатаПрихода = КурсПрихода.Период
               | И Приход.ВалютаПрихода = КурсПрихода.Валюта
               |ГДЕ
               | Приход.Номенклатура = &Номенклатура"
Ещё раз спасибо за ссылку.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

Последний раз редактировалось: Golickoff; 02 Мар 2016, 05:00. Причина: Объединение сообщений


 

Из запроса не выводятся значения полей - выводятся пустые значения

Автор Alex1111Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 24
Просмотров: 11291
Последний ответ 14 Июн 2012, 17:44
от Alex1111
"ПОДОБНО" в условие связи запроса

Автор Станиславъ ЗверевъРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 8
Просмотров: 2613
Последний ответ 11 Май 2016, 15:29
от LexaK
"Таблица значений" в результате запроса - 1С

Автор mvk843Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 8
Просмотров: 472
Последний ответ 15 Июн 2017, 07:53
от mvk843
Возможно ли языком запросов без конкатенации текста запроса и без СКД преобразовать строки таблицы в столбцы (колонки) выходной таблицы?

Автор acces969Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 320
Последний ответ 29 Май 2017, 15:29
от alex0402
Ошибка при выполнении запроса - "неоднозначное поле"

Автор Marta_LiРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 11398
Последний ответ 21 Апр 2011, 16:00
от Marta_Li

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

oleg-x
165 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
88 Сообщений
alex0402
87 Сообщений
Golickoff Golickoff
32 Сообщений
ilyay ilyay
30 Сообщений
Kironten
29 Сообщений
AIFrame
26 Сообщений
AsadRoman
26 Сообщений
BuhRust
26 Сообщений
Варвар
20 Сообщений

* Кто онлайн

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal