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

Автор Тема: Сгруппировать запрос  (Прочитано 1477 раз)

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

Оффлайн freez1301

  • ***
  • Сообщений: 130
  • РЕПУТАЦИЯ: 8
  • КПД: 6%
  • Регистрация: 2014-04-25
  • Сайт: 
  • Профессия: Ученик 1С
есть некий запрос по доп реквизитам номенклатуры. реквизита 2. если у номенклатуры оба реквизита заполнены, то в ТЗ попадает две строки. К примеру есть Товар1 с реквизитами Модель - модель1, Бренд - бренд1. Результат будет таким:
Товар1 модель1
Товар1               бренд1

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

Да, и вариант манипуляций с ТЗ не катит, т.к. запрос динамический для формы списка в УФ.

Вопрос - как бы так сгруппировать?


Оффлайн sertak

  • ****
  • Сообщений: 323
  • РЕПУТАЦИЯ: 92
  • КПД: 28%
  • Регистрация: 2013-01-16
    • Skype: vitaly_sertakov
  • Сайт: infostart.ru
Как я понял, если оба реквизиты заполнены, то товар пройдет в выборке дважды.
Тогда можно сделать 2 временные таблицы: 1-я для номенклатуры, в которой заполнен 1-й реквизит, 2-я для номенклатуры, в которой заполнен 2-й реквизит, и объединить временные таблицы через полное соединение.
Добавлено: 14 Ноя 2014, 20:53

Не, не так. Дезинформировал.
Объединение просто сделать надо из двух запросов, один будет по моделям, а второй по брендам.
Добавлено: 14 Ноя 2014, 20:54

А если оба реквизита не заполнены, сколько строк выводить надо?

Последний раз редактировалось: sertak; 14 Ноя 2014, 20:54. Причина: Объединение сообщений

Оффлайн freez1301

  • ***
  • Сообщений: 130
  • РЕПУТАЦИЯ: 8
  • КПД: 6%
  • Регистрация: 2014-04-25
  • Сайт: 
  • Профессия: Ученик 1С
два раза соединять вариант, но при незаполненных реквизитах - строка в отбор не попадает, плюс запрос такой довольно долго выполняется (около 10сек открытие формы). не вариант
не могу вспомнить - как добавить параметр к отбору в УФ. как то добавлял, помню что при создании формы его описывать нужно

Оффлайн KKurgan

  • *
  • Сообщений: 13
  • РЕПУТАЦИЯ: 7
  • КПД: 54%
  • Регистрация: 2014-11-17
  • Сайт: 
А если попробовать так:
"ВЫБРАТЬ
| Номенклатура.Ссылка,
| Номенклатура.Код,
| Модель.Значение КАК Модель,
| Бренд.Значение КАК Бренд
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
| НоменклатураДополнительныеРеквизиты.Значение КАК Значение
| ИЗ
| Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
| ГДЕ
| НоменклатураДополнительныеРеквизиты.Свойство.Наименование = ""Модель"") КАК Модель
| ПО Номенклатура.Ссылка = Модель.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
| НоменклатураДополнительныеРеквизиты.Значение КАК Значение
| ИЗ
| Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
| ГДЕ
| НоменклатураДополнительныеРеквизиты.Свойство.Наименование = ""Бренд"") КАК Бренд
| ПО Номенклатура.Ссылка = Бренд.Ссылка"
По крайней мере строки с незаполненными реквизитами никуда не пропадут

Оффлайн freez1301

  • ***
  • Сообщений: 130
  • РЕПУТАЦИЯ: 8
  • КПД: 6%
  • Регистрация: 2014-04-25
  • Сайт: 
  • Профессия: Ученик 1С
А если попробовать так:
"ВЫБРАТЬ
| Номенклатура.Ссылка,
| Номенклатура.Код,
| Модель.Значение КАК Модель,
| Бренд.Значение КАК Бренд
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
| НоменклатураДополнительныеРеквизиты.Значение КАК Значение
| ИЗ
| Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
| ГДЕ
| НоменклатураДополнительныеРеквизиты.Свойство.Наименование = ""Модель"") КАК Модель
| ПО Номенклатура.Ссылка = Модель.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
| НоменклатураДополнительныеРеквизиты.Значение КАК Значение
| ИЗ
| Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
| ГДЕ
| НоменклатураДополнительныеРеквизиты.Свойство.Наименование = ""Бренд"") КАК Бренд
| ПО Номенклатура.Ссылка = Бренд.Ссылка"
По крайней мере строки с незаполненными реквизитами никуда не пропадут

такой запрос был изначально. у меня прикручено к нему еще цена и тек. остаток - для 25000 позиций номенклатуры - долго обрабатывается.

Спасибо за советы


Теги:
 

Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

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

Ответов: 14
Просмотров: 10953
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz
Запрос Параметры для "ИЗ"

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

Ответов: 2
Просмотров: 3358
Последний ответ 15 Май 2013, 23:27
от Березин
Что быстрее: Загрузить табличную часть в запрос и там добавить колонки, или пробежаться циклом по ТЧ и добавить значения в колонки

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

Ответов: 1
Просмотров: 1220
Последний ответ 11 Июл 2016, 09:00
от vitasw
Запрос по обработке "Согласование заявок"

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

Ответов: 0
Просмотров: 920
Последний ответ 29 Сен 2016, 02:39
от DenielAkreed
После "Выборка = Запрос.Выполнить().Выбрать()" строка в выборке автоматически переключается сама

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

Ответов: 2
Просмотров: 205
Последний ответ 30 Мар 2018, 05:05
от Luzer1C

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
152 Сообщений
oleg-x
65 Сообщений
alex0402
63 Сообщений
AIFrame AIFrame
52 Сообщений
wise wise
37 Сообщений
KOI8-R
34 Сообщений
buketov.av buketov.av
34 Сообщений
Alter
24 Сообщений
alexandr_ll
21 Сообщений
BuhRust
21 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal