Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Обрабатывать НеПомеченныеНаУдаление;";
Если (Режим="Розничный") ИЛИ (Режим="РознКорп") тогда
ТекстЗапроса=ТекстЗапроса+"
|Товар = Регистр.Остатки.Товар;
|Код = Регистр.Остатки.Товар.Код;
|Цена = Регистр.Остатки.Товар.РозничнаяЦена;
|ОстатокТовара = Регистр.Остатки.ОстатокТовара;
|Фирма = Регистр.Остатки.Фирма;
|Склад = Регистр.Остатки.Склад;
|Функция КонОст = КонОст(ОстатокТовара);";
ИначеЕсли (Режим="Оптовый") ИЛИ (Режим="ОптКОпт") тогда
ТекстЗапроса=ТекстЗапроса+"
|Товар = Справочник.Номенклатура.ТекущийЭлемент;
|Код = Справочник.Номенклатура.Код;
|ОптоваяЦена = Справочник.Номенклатура.ОптоваяЦена;
|МОптЦена = Справочник.Номенклатура.МелкооптоваяЦена;
|КОптЦена = Справочник.Номенклатура.КонтрактнаяЦена;";
ИначеЕсли Режим="КорпМОпт" тогда
ТекстЗапроса=ТекстЗапроса+"
|Товар = Справочник.Номенклатура.ТекущийЭлемент;
|Код = Справочник.Номенклатура.Код;
|Цена = Справочник.Номенклатура.РозничнаяЦена;
|МОптЦена = Справочник.Номенклатура.МелкооптоваяЦена;";
КонецЕсли;
Если Режим="Розничный" тогда
ТекстЗапроса=ТекстЗапроса+"
|ВключатьВПрайс = Регистр.Остатки.Товар.ВключатьВПрайс;
|ДоступВСчетах = Регистр.Остатки.Товар.ДоступноВСчетах;";
Иначе
ТекстЗапроса=ТекстЗапроса+"
|ВключатьВПрайс = Справочник.Номенклатура.ВключатьВПрайс;
|ДоступВСчетах = Справочник.Номенклатура.ДоступноВСчетах;";
КонецЕсли;
ТекстЗапроса=ТекстЗапроса+"
|Группировка Товар;
|Условие(ВключатьВПрайс=Перечисление.Булево.Да);
|Условие(ДоступВСчетах=Перечисление.Булево.Да);";
Если Режим="Розничный" тогда
ТекстЗапроса=ТекстЗапроса+"
|Условие(Фирма = ПустаяФирма);
|Условие(Склад = Константа.ОсновнойСклад);
|Условие(ОстатокТовара > 0);
|Условие(ПустоеЗначение(Цена)=0);";
ИначеЕсли Режим="РознКорп" тогда
ТекстЗапроса=ТекстЗапроса+"
|Условие(Фирма = ПустаяФирма);
|Условие(Склад = Константа.ОсновнойСклад);
|Условие(ПустоеЗначение(Цена)=0);";
ИначеЕсли (Режим="Оптовый") ИЛИ (Режим="ОптКОпт") тогда
ТекстЗапроса=ТекстЗапроса+"
|Условие((ПустоеЗначение(ОптоваяЦена)=0) ИЛИ (ПустоеЗначение(МОптЦена)=0) ИЛИ (ПустоеЗначение(КОптЦена)=0));";
ИначеЕсли Режим="КорпМОпт" тогда
ТекстЗапроса=ТекстЗапроса+"
|Условие((ПустоеЗначение(Цена)=0) ИЛИ (ПустоеЗначение(МОптЦена)=0));";
КонецЕсли;
ТекстЗапроса=ТекстЗапроса+"
|"//}}ЗАПРОС
Вот такой запрос формируется в нестандартной конфигурации для распечатки прайса. Вроде всё правильно, но эта гадина не хочет выполняь условие |Условие(Склад = Константа.ОсновнойСклад); и выгружает номенклатуру со всех складов, в т.ч. ремонта и брак.
Константа.ОсновнойСклад в конфигурации присутсвует.
Вопрос: куда её стукнуть или как можно проконтролировать что получается вместо Регистр.Остатки.Склад? Может просто расхождения в написании?
__________________
собираем клики- пиксели -на уникальный домик imho.ws
imho.ws/showthread.php?t=113817
|