|
Запр = Новый Запрос;
Запр.Текст = "ВЫБРАТЬ
| ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
| ЦеныНоменклатурыСрезПоследних.Валюта,
| ЦеныНоменклатурыСрезПоследних.Номенклатура.Код КАК Код,
| ЦеныНоменклатурыСрезПоследних.Номенклатура.Артикул КАК Артикул,
| ЦеныНоменклатурыСрезПоследних.Номенклатура.ЕдиницаХраненияОстатков КАК Ед,
| СкидкиНаценкиНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура1,
| СкидкиНаценкиНоменклатурыСрезПоследних.ПолучательСкидки КАК ПолучательСкидки1,
| СкидкиНаценкиНоменклатурыСрезПоследних.ПроцентСкидкиНаценки,
| ВЫБОР
| КОГДА ЕСТЬNULL(СкидкиНаценкиНоменклатурыСрезПоследних.ДатаОкончания, &ТекДата) > &ТекДата
| ТОГДА ЦеныНоменклатурыСрезПоследних.Цена - ЦеныНоменклатурыСрезПоследних.Цена * ЕСТЬNULL(СкидкиНаценкиНоменклатурыСрезПоследних.ПроцентСкидкиНаценки, 0) / 100
| ИНАЧЕ ЦеныНоменклатурыСрезПоследних.Цена
| КОНЕЦ КАК ЦенаНов,
| ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура2,
| ТоварыНаСкладахОстатки.Склад КАК Склад,
| ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК Остаток
|ИЗ
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
| &ТекДата,
| ТипЦен = &ТипЦен
| И Номенклатура.ПопадаетВПрайсЛист) КАК ЦеныНоменклатурыСрезПоследних
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СкидкиНаценкиНоменклатуры.СрезПоследних(&ТекДата, ПолучательСкидки = &ПолучательСкидки) КАК СкидкиНаценкиНоменклатурыСрезПоследних
| ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = СкидкиНаценкиНоменклатурыСрезПоследних.Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ТекДата, Склад = &Склад) КАК ТоварыНаСкладахОстатки
| ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура
|
|СГРУППИРОВАТЬ ПО
| ЦеныНоменклатурыСрезПоследних.Номенклатура,
| ЦеныНоменклатурыСрезПоследних.Валюта,
| ЦеныНоменклатурыСрезПоследних.Номенклатура.Код,
| ЦеныНоменклатурыСрезПоследних.Номенклатура.Артикул,
| ЦеныНоменклатурыСрезПоследних.Номенклатура.ЕдиницаХраненияОстатков,
| СкидкиНаценкиНоменклатурыСрезПоследних.Номенклатура,
| СкидкиНаценкиНоменклатурыСрезПоследних.ПолучательСкидки,
| СкидкиНаценкиНоменклатурыСрезПоследних.ПроцентСкидкиНаценки,
| ТоварыНаСкладахОстатки.Номенклатура,
| ТоварыНаСкладахОстатки.Склад,
| ВЫБОР
| КОГДА ЕСТЬNULL(СкидкиНаценкиНоменклатурыСрезПоследних.ДатаОкончания, &ТекДата) > &ТекДата
| ТОГДА ЦеныНоменклатурыСрезПоследних.Цена - ЦеныНоменклатурыСрезПоследних.Цена * ЕСТЬNULL(СкидкиНаценкиНоменклатурыСрезПоследних.ПроцентСкидкиНаценки, 0) / 100
| ИНАЧЕ ЦеныНоменклатурыСрезПоследних.Цена
| КОНЕЦ,
| ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)
|
|УПОРЯДОЧИТЬ ПО
| Номенклатура
|ИТОГИ ПО
| Номенклатура ИЕРАРХИЯ";
ОснДогТипЦен = Контрагент.ОсновнойДоговорКонтрагента.ТипЦен;
Запр.Параметры.Вставить("ТипЦен", ОснДогТипЦен);
//Запр.Параметры.Вставить("ТипЦенНеПустой", Не ОснДогТипЦен.Пустая());
Запр.Параметры.Вставить("ПолучательСкидки",Контрагент);
Запр.Параметры.Вставить("Склад",Склад);
Запр.Параметры.Вставить("ТекДата",ТекущаяДата());
Запр.Параметры.Вставить("набор",Справочники.ВидыНоменклатуры.НайтиПоКоду("000000003"));
ТБЗ = Запр.Выполнить().Выгрузить();
ТБЗ.ВыбратьСтроку();
Выборка = Запр.Выполнить().Выбрать(ОбходРезультатаЗапроса.Прямой);
Почему возникает ошибка в значении Не ОснДогТипЦен.Пустая() ? |
|