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

Автор Тема: Как прописать условие по документу регистратору при запросе из регистра.  (Прочитано 1200 раз)

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

Оффлайн Александр_Ярославль

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-24
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте, Люди добрые. Помогите советом. С помощью конструктора запроса делаю выборку по расходу товара из регистра ТоварыНаСкладахОбороты. Но нужно что бы в выборку попадали только товары, которые проданы, а не перемещены на другой склад. Т.е. хочу сделать отбор по регистратору. Регистраторы РеализацияТоваровУслуг и ОтчетОРозничныхПродажах. Как можно прописать это условие? И Где (в конструкторе)?


Оффлайн cast

  • *
  • Сообщений: 49
  • РЕПУТАЦИЯ: 4
  • КПД: 8%
  • Регистрация: 2015-05-09
  • Сайт: 
Отчёт->СКД->Конструктор запроса-> Условия. Наложи условия на нужное поле.

Оффлайн Александр_Ярославль

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-24
  • Сайт: 
  • Профессия: Ученик 1С
Отчёт->СКД->Конструктор запроса-> Условия. Наложи условия на нужное поле.

А Как само условие должно выглядеть?

Оффлайн alex0402

  • *****
  • Сообщений: 898
  • РЕПУТАЦИЯ: 125
  • КПД: 14%
  • Регистрация: 2010-09-10
  • Сайт: 
телепатирую :)
Где Регистратор = &Регистратор
Помощь в л/с $10

Оффлайн Luzer1C

  • ****
  • Сообщений: 411
  • РЕПУТАЦИЯ: 41
  • КПД: 10%
  • Регистрация: 2014-02-17
  • Сайт: 
  • Профессия: Программист 1С
ГДЕ 
ТоварыНаСкладахОбороты.Регистратор Ссылка Документ.РеализацияТоваровУслуг Или
ТоварыНаСкладахОбороты.Регистратор Ссылка Документ.ОтчетОРозничныхПродажах
Только в свойствах виртуальной таблицы нужно поставить свойство периодичности "Регистратор".
Помочь мне очень сложно. Но можно.
Помогаю просто так...
Матёрый разработчик УПП + Бит Финанс

Оффлайн Александр_Ярославль

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-24
  • Сайт: 
  • Профессия: Ученик 1С
ГДЕ 
ТоварыНаСкладахОбороты.Регистратор Ссылка Документ.РеализацияТоваровУслуг Или
ТоварыНаСкладахОбороты.Регистратор Ссылка Документ.ОтчетОРозничныхПродажах
Только в свойствах виртуальной таблицы нужно поставить свойство периодичности "Регистратор".

А это на конкретное поле выборки нужно поставить условие или на весь запрос? Просто на весь запрос я пробовал ставить там мало данных выборки оставалось. У меня там ведь ещё много таблиц присоединяется..
Добавлено: 09 Сен 2016, 11:10

Попробовал прописать это условие на весь запрос из данных осталась одна строчка. Буду пробовать в поле выборки ставить. Правда там почему-то слово ГДЕ на принимается..

Оффлайн alex0402

  • *****
  • Сообщений: 898
  • РЕПУТАЦИЯ: 125
  • КПД: 14%
  • Регистрация: 2010-09-10
  • Сайт: 
Помощь в л/с $10

Оффлайн Александр_Ярославль

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-24
  • Сайт: 
  • Профессия: Ученик 1С
Кажется уже вплотную приблизился к разгадке. В самом поле выборки прописал подсказанное условие

ВЫБОР
   КОГДА РасходОсновной.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
         ИЛИ РасходОсновной.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах
      ТОГДА РасходОсновной.КоличествоРасход
   ИНАЧЕ 0
КОНЕЦ

Но почему то теперь нужная мне позиция номенклатуры раздваивается на ту которая прошла по документам реализации а следующая строчка с нулём. Как бы этого избежать?
Добавлено: 09 Сен 2016, 11:36

опубликуйте запрос.

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

СГРУППИРОВАТЬ ПО
   ОстаткиОпт.Номенклатура

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
   ОстатокСох.Номенклатура

ИНДЕКСИРОВАТЬ ПО
   Номенклатура
;

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

Оффлайн Luzer1C

  • ****
  • Сообщений: 411
  • РЕПУТАЦИЯ: 41
  • КПД: 10%
  • Регистрация: 2014-02-17
  • Сайт: 
  • Профессия: Программист 1С
В самом конце:
ГДЕ
   (РасходОсновной.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
         ИЛИ РасходОсновной.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах)
Помочь мне очень сложно. Но можно.
Помогаю просто так...
Матёрый разработчик УПП + Бит Финанс

Оффлайн Александр_Ярославль

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-24
  • Сайт: 
  • Профессия: Ученик 1С
В самом конце:
ГДЕ
   (РасходОсновной.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
         ИЛИ РасходОсновной.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах)

Я уже попробовал поставить это условие в конце. Тогда в отчет выводится одна строка с одной позицией номенклатуры. Дело в том что запрос сначала должен из двух складов взять номенклатуру и потом к ней присоединять остатки, движения по разным складам и цены. Но когда такое условие ставится в конце  то выводится только позиция по которой случилось движение по этому документу в данный промежуток времени, а нужно что бы выводились товары которые есть в наличии на основном складе и по этой номенклатуре уже показывать наличия, движения и цены.
Добавлено: 09 Сен 2016, 13:52

Вроде получилось

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

СГРУППИРОВАТЬ ПО
   ОстаткиОпт.Номенклатура

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
   ОстатокСох.Номенклатура

ИНДЕКСИРОВАТЬ ПО
   Номенклатура
;

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

ИНДЕКСИРОВАТЬ ПО
   Код
;

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ТаблицаОстаткиЦены.Код,
   ТаблицаОстаткиЦены.Наименование,
   ТаблицаОстаткиЦены.Артикул,
   ТаблицаОстаткиЦены.Брэнд,
   ТаблицаОстаткиЦены.Родитель,
   ТаблицаОстаткиЦены.ОстатокОсновной,
   Движения.КоличествоРасход,
   ТаблицаОстаткиЦены.ОстатокСох,
   ТаблицаОстаткиЦены.ОстатокЗаволга,
   ТаблицаОстаткиЦены.ОстатокМосковский,
   ТаблицаОстаткиЦены.ОстатокОмега,
   ТаблицаОстаткиЦены.ЦенаЗакупочная,
   ТаблицаОстаткиЦены.ЦенаРозничная,
   Движения.Номенклатура
ИЗ
   ТаблицаОстаткиЦены КАК ТаблицаОстаткиЦены
      ЛЕВОЕ СОЕДИНЕНИЕ Движения КАК Движения
      ПО ТаблицаОстаткиЦены.Наименование = Движения.Номенклатура

Последний раз редактировалось: Александр_Ярославль; 09 Сен 2016, 13:52. Причина: Объединение сообщений


Теги:
 

Получить номер недели в месяце в запросе [номер недели]

Автор MuI_I_IkaРаздел Алгоритмы

Ответов: 0
Просмотров: 3384
Последний ответ 15 Июл 2015, 18:24
от MuI_I_Ika
РС "СостояниеОСОрганизаций" в запросе

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

Ответов: 1
Просмотров: 973
Последний ответ 07 Янв 2015, 05:33
от ILLUMI
Как исправить при обновлении ИБ: Ошибка в запросе набора данных по причине: {(58, 2)}: Несовместимые типы "ВЫБОР" <<?>>ВЫБОР

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

Ответов: 1
Просмотров: 1724
Последний ответ 01 Янв 2017, 20:27
от Геннадий ОбьГЭС
Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

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

Ответов: 14
Просмотров: 8243
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz
"Поле не найдено" в запросе, но оно есть.

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

Ответов: 3
Просмотров: 2061
Последний ответ 27 Окт 2015, 10:29
от vitasw

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

oleg-x
105 Сообщений
alex0402
93 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
65 Сообщений
Golickoff Golickoff
49 Сообщений
ilyay ilyay
49 Сообщений
AIFrame
47 Сообщений
ab30ru
38 Сообщений
wise wise
34 Сообщений
Амал
30 Сообщений
LexaK
22 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal