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

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

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

Оффлайн Golickoff

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

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

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

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>


Оффлайн Rasty

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

Оффлайн vitasw

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

Оффлайн Golickoff

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

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

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

Оффлайн vitasw

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

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

Оффлайн Golickoff

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

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

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


 

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

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

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

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

Ответов: 8
Просмотров: 1304
Последний ответ 11 Май 2016, 15:29
от LexaK
Ошибка при выполнении запроса - "неоднозначное поле"

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

Ответов: 14
Просмотров: 9968
Последний ответ 21 Апр 2011, 16:00
от Marta_Li
"Зависание" запроса после обращения к регистру бухгалтерии

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

Ответов: 4
Просмотров: 3490
Последний ответ 03 Ноя 2011, 14:06
от Shkerin
Результат простого запроса "Ошибка чтения значения"

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

Ответов: 9
Просмотров: 7924
Последний ответ 28 Май 2014, 10:41
от 2Casp

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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
163 Сообщений
alex0402
74 Сообщений
alexandr_ll
37 Сообщений
LexaK
32 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
crow1983
31 Сообщений
sertak sertak
26 Сообщений
BuhRust
19 Сообщений
дфтын дфтын
17 Сообщений
Vzonder
17 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal