Есть спрравочник Номенклатура в нем есть реквизит цена продажи
нужно вывести запросом перечнь из пяти самхы дорогих товаров
Пошел от просто вывел все и отсортировал по цене
"Выбрать
Наименование,
ЦенаПродажи как Цена
ИЗ
Справочник.Номенклатура
где не
Справочник.Номенклатура.ЭтоГруппа
Упорядочить По ЦенаПродажи Убыв"
А как ограничить список только пятью элементами то ?
Ну вот еще одна заморочка. никкак не могу осилисть вот такую задачку
Есть Справочник.Контрагенты
Есть Документ.Приходная
В документе реквизит "Контрагент".
Табличная часть "Товары", в ней реквизиты "Цена", "Количество" и "Сумма".
Надо :
Написать текст запроса по резлуьтатам которого можно будет увидет суммы закупок по группам справочника "Контрагенты" и по отдельным поставщикам (элементам справочника "Контрагенты")
Мой вариант вот такой
"Выбрать
ССылка.Контрагент,Сумма
ИЗ
Документ.Приходная.Товары
Итоги
Сумма(Сумма)
По Ссылка.Контрагент Иерархия"
Вот только не знаю правильно ли это ?
Вообщем помогите запросом, советом и тд....
ВЫБРАТЬ
ПоступлениеТоваровУслуг.СуммаДокумента КАК СуммаДокумента,
ПоступлениеТоваровУслуг.Контрагент КАК Контрагент
ИЗ
Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
ИТОГИ
СУММА(СуммаДокумента)
ПО
ОБЩИЕ,
Контрагент Иерархия
Mitriy Написал:
-------------------------------------------------------
> ВЫБРАТЬ
> ПоступлениеТоваровУслуг.СуммаДокумента КАК
> СуммаДокумента,
> ПоступлениеТоваровУслуг.Контрагент КАК
> Контрагент
> ИЗ
> Документ.ПоступлениеТоваровУслуг КАК
> ПоступлениеТоваровУслуг
> ИТОГИ
> СУММА(СуммаДокумента)
> ПО
> ОБЩИЕ,
> Контрагент Иерархия
А как сделать,чтоб ещё была колонка СуммаДокументаСнаценкой, т.е. сумма будет состоять из розничных цен, которые получили установкой цен с помощью наценки на цены в поступлении?
У меня тут есть наброски но это немного не то, что тут можно исправить,а вернее нужно:
"ВЫБРАТЬ
| ПоступлениеТоваровУслугТовары.НомерСтроки КАК НомерСтроки,
| ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура,
| ПоступлениеТоваровУслугТовары.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
| ПоступлениеТоваровУслугТовары.Количество,
| ПоступлениеТоваровУслугТовары.Цена КАК Цена,
| ВложенныйЗапрос.Цена КАК ЦенаСнаценкой,
| ВложенныйЗапрос.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
| ВложенныйЗапрос.Цена * ПоступлениеТоваровУслугТовары.Количество КАК СуммаСНаценкой,
| ПоступлениеТоваровУслугТовары.Сумма КАК Сумма
|ИЗ
| Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
| ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
| ЦеныНоменклатурыСрезПоследних.Цена КАК Цена,
| ЦеныНоменклатурыСрезПоследних.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки
| ИЗ
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Период, ) КАК ЦеныНоменклатурыСрезПоследних
| ГДЕ
| ЦеныНоменклатурыСрезПоследних.ТипЦен = &Розничная) КАК ВложенныйЗапрос
| ПО ПоступлениеТоваровУслугТовары.Номенклатура = ВложенныйЗапрос.Номенклатура
| И ПоступлениеТоваровУслугТовары.ХарактеристикаНоменклатуры = ВложенныйЗапрос.ХарактеристикаНоменклатуры
|ГДЕ
| ПоступлениеТоваровУслугТовары.Ссылка = &Ссылка
|ИТОГИ
| СУММА(СуммаСНаценкой),
| СУММА(Сумма)
|ПО
| ОБЩИЕ";
Хочу предупредить относительно запросов - не стоит злоупотреблять. Такой пример: перебор всего справочника номенклатуры и выборка штрих кодов из подчиненного, если этих штрихов больше 1. Так вот сначала делал выборку из подчиненного запросом, чтобы сразу получить количество записей в запросе. Потом - сделал тупой перебор подчиненного с занесением в ТЗ. Не поверишь - разность в скорости чуть ли не на порядок. Так что каждому овощу - свой огород.
И снова подниму тему:
Подскажите как добавить програмно к тексту запроса добавить новый "кусок" текста?
У меня в зависимости от выполнения условия меняеться кусок текста запроса.
вот и парюсь никак не могу его прикрепить...
Лучше комменты по тексту запроса поставить и менять их в зависимости от задач. Тогда запрос более читаемым получается, но конструктор комменты удаляет =((.
Вот еще несколько приемов
http://www.kb.mista.ru/article.php?id=269
Как в запросе поствить вот такое условие не разбивая текста запроса или чем можно заменить деление на 0?
?(Док.Количество = 0, 0, Док.Сумма / Док.Количество)
немного изменим формулирвоаку вопроса. передо мной стоит задача:
Есть документ «ТестовыйДокумент» с табличной частью «Спецификация». В табличной части два реквизита: «Y» и «Z». Реквизит «Y» - ссылка на справочник «Y», реквизит «Z» - ссылка на справочник «Z». Справочники «Y» и «Z» - независимые.
Есть регистр накопления (остатки) с измерениями «Y» и «Z» и ресурсом «S». Реквизит «Y» - ссылка на справочник «Y», реквизит «Z» - ссылка на справочник «Z».
Создать запрос, который на документ «ТестовыйДокумент» получает только те остатки, которые определяются строками документа в табличной части «Спецификация» – по «Y» и «Z». Все строки документа – уникальны. Остатки всегда есть. Строк в документе немного.
Запрос создать оптимально для V80 и для V81 – два варианта. Для обеих версий платформ имеются только по одному оптимальному варианту решения (небольшие вариации есть, но непринципиальные)
ЗАпрос я написал вот такой :
Выбрать
*
ИЗ
(Выбрать
*
ИЗ
РегистрНакопления.ТестовыйРегистр.Остатки(&Момент, Z В (ВЫбрать Различные
Док.Z
ИЗ
Документ.ТестовыйДокумент.Спецификация Как Док
Где
Док.Ссылка=&ТекДок ) ))Как ТАб1
Где Y В (ВЫбрать Различные
Док.Y
ИЗ
Документ.ТестовыйДокумент.Спецификация Как Док
Где
Док.Ссылка=&ТекДок
)
по результатам запроса я нужную мне информацию. получаю, но к сожалению не знаю оптимально ли данное решение и уж точно пока не знаю в чем могут различаться запро написанныей в 8.0 и 8.1
ПОдскажите плиз.
"ВЫБРАТЬ
ТестовыйРегистрОстатки.Z.Ссылка КАК Z,
ТестовыйРегистрОстатки.Y.Ссылка КАК Y,
ТестовыйРегистрОстатки.SОстаток КАК S
ИЗ
РегистрНакопления.ТестовыйРегистр.Остатки КАК ТестовыйРегистрОстатки
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ТестовыйДокумент.Спецификация КАК ТестовыйДокументСпецификация
ПО ТестовыйРегистрОстатки.Y = ТестовыйДокументСпецификация.Y
И ТестовыйРегистрОстатки.Z = ТестовыйДокументСпецификация.Z
ГДЕ
ТестовыйДокументСпецификация.Ссылка.Ссылка = &ТекДок"
Вопрос в догонку
Нужно написать запрос:
Получить остатки (количество и сумму) по регистру бухгалтерии только по тем счетам, у которых имеются субконто «Номенклатура» и «Склады».
Остальные условия – непринципиальны.