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

Автор Тема: Кунструкция в запросе.  (Прочитано 1623 раз)

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

Оффлайн ferrari314

  • ***
  • Сообщений: 174
  • РЕПУТАЦИЯ: 6
  • КПД: 3%
  • Главное - не есть желтый снег.
  • Регистрация: 2015-02-09
  • Сайт: 
Приветствую всех.
Появилась необходимость посчитать количество элементов в запросе со схожими параметрами.
Простой пример:
Есть отчет который выводит все элементы справочника номенклатура.
Нам необходимо добавить колонку, в которой будет отражено количество  элементов номенклатуры, у которых реквизит (к примеру вид) равен реквезиту (вид)  текущего.
Результатом должна быть таблица типа

Номенклатура......Вид...........Схожие
Кирпич............Огнеупорный......2
Камень............Резной.................4

Исходя из которой ясно, что разновидностей огнеупорной номенклатуры у нас 2, а резной 4.
Как реализовать запрос - на этом простом примере?


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Посчитать количество "Огнеупорный" - не проблема. Непонятно, что выводить в колонке номенклатура... Если оставлять группировку по номенклатуре то получится... см. скрин

Оффлайн ferrari314

  • ***
  • Сообщений: 174
  • РЕПУТАЦИЯ: 6
  • КПД: 3%
  • Главное - не есть желтый снег.
  • Регистрация: 2015-02-09
  • Сайт: 
КОЛИЧЕСТВО применить - это ясно дело. Применение РАЗЛИЧНЫЕ - тут не дает то что надо (может надо как то иначе применить).
Должно выводиться количество "схожих" элементов.
схожих - значит у которых реквизит равен реквизиту текущего элемента ( в строке которого и пишем количество.

Объяснение по другому:
У нас есть элемент с реквизитом Вид = огнеупорный.
Нужно посчитать все элементы с реквизитом вид = огнеупорный и вывести в колонке количество этих элементов. Для следующего элемента взять все элементы с видом "резной" и вывести в  количество и т. д.


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Еще раз повторяю: как посчитать количество элементов с одинаковым видом - не проблема. Проблема с колонкой "номенклатура". Что там должно отображаться?

Оффлайн ferrari314

  • ***
  • Сообщений: 174
  • РЕПУТАЦИЯ: 6
  • КПД: 3%
  • Главное - не есть желтый снег.
  • Регистрация: 2015-02-09
  • Сайт: 
это изначальный элемент.
Мы берем например номенклатуру, добавляем колонку количество схожих.
В колонке номенклатура изначальный список номенклатуры.
Как реализовать в запросе подсчет схожих (равных по параметру)?

Оффлайн vitasw

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

Оффлайн Kironten

  • *****
  • Сообщений: 879
  • РЕПУТАЦИЯ: 183
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
Почему бы так не сделать?
ВЫБРАТЬ
Номенклатура.Ссылка,
Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры
ПОМЕСТИТЬ ВТНоменклатура
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
НЕ Номенклатура.ЭтоГруппа
И НЕ Номенклатура.ПометкаУдаления

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТНоменклатура.ВидНоменклатуры КАК ВидНоменклатуры,
КОЛИЧЕСТВО(ВТНоменклатура.ВидНоменклатуры) КАК Количество
ПОМЕСТИТЬ ВТКоличество
ИЗ
ВТНоменклатура КАК ВТНоменклатура

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

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТНоменклатура.Ссылка,
ВТНоменклатура.ВидНоменклатуры,
ВТКоличество.Количество
ИЗ
ВТНоменклатура КАК ВТНоменклатура
ЛЕВОЕ СОЕДИНЕНИЕ ВТКоличество КАК ВТКоличество
ПО ВТНоменклатура.ВидНоменклатуры = ВТКоличество.ВидНоменклатуры

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Почему бы так не сделать?
Сделать то можно и как один из вариантов реализации применим. Проблема в том, что лично мне, по ТС непонятно, формирование колонки "Номенклатура". У ТС в этой колонке одно и то же значение во всех "схожих" строках, на рабочей базе используя ваш запрос такого в результате точно не будет. И это вызывает у меня предположение, что в качестве номенклатуры, возможно, нужно какое-то обобщенное наименование.

Оффлайн Kironten

  • *****
  • Сообщений: 879
  • РЕПУТАЦИЯ: 183
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
У ТС в этой колонке одно и то же значение во всех "схожих" строках
Так ну и что? Коды то разные.
Добавить лишнюю колонку с кодами и различай на здоровье.

Либо, как обычно, мы с вами о разных вещах предполагаем ).

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
:dfbsdfbsdf: Я начинаю сомневаться в своих способностях выражаться русским языком.
Смотрите в справочнике есть 2 элемента с наименованиями: "Кирпич красный", "Кирпич облицовочный". - с одним и тем же видом номенклатуры "Огнеупорный". Используя ваш запрос в результате получим 2 строки:
"Кирпич красный"  "Огнеупорный"  2
"Кирпич облицовочный"  "Огнеупорный"  2

Тогда как ТС, возможно, подчеркиваю возможно, хочет получить одну строку вида
"Кирпич"  "Огнеупорный"  2

Как правило в упр. учете нужно видеть одну строку, а не две. Вот я так нудно и настойчиво пытаюсь определить что же ТСу нужно.


Теги:
 

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

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

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

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

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

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

Ответов: 1
Просмотров: 1980
Последний ответ 01 Янв 2017, 20:27
от Геннадий ОбьГЭС
"Поле не найдено" в запросе, но оно есть.

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

Ответов: 3
Просмотров: 2449
Последний ответ 27 Окт 2015, 10:29
от vitasw
Временная таблица во вложенном запросе+Группировка VS Таблица значений + Свернуть

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

Ответов: 6
Просмотров: 474
Последний ответ 14 Июл 2017, 23:10
от Tsaiger

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

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

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


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

* Реклама

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

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

oleg-x
90 Сообщений
alex0402
54 Сообщений
AIFrame
43 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
38 Сообщений
Oldman06
31 Сообщений
Golickoff Golickoff
30 Сообщений
vitasw
29 Сообщений
MuI_I_Ika MuI_I_Ika
19 Сообщений
DmitriyF DmitriyF
14 Сообщений
BuhRust
14 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal