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

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

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

Онлайн Golickoff

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

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

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


Оффлайн Rasty

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

Оффлайн vitasw

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

Онлайн Golickoff

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

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

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

Оффлайн vitasw

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

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

Онлайн Golickoff

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

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

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


 

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

oleg-x
122 Сообщений
alex0402
106 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
73 Сообщений
ilyay ilyay
50 Сообщений
Golickoff Golickoff
49 Сообщений
AIFrame
47 Сообщений
ab30ru
38 Сообщений
wise wise
36 Сообщений
Амал
32 Сообщений
Dethmontt Dethmontt
25 Сообщений

* Кто онлайн

  • Точка Гостей: 807
  • Точка Скрытых: 0
  • Точка Пользователей: 16
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal