Делаю запрос в обработке и в консоли запросов.Текст один и тот же.
ВЫБРАТЬ
ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот КАК СуммаВыручкиОборот,
ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиБезНДСОборот КАК СуммаВыручкиБезНДСОборот
ИЗ
РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&ДатаНач, &ДатаКон, Авто, АналитикаУчетаНоменклатуры.Номенклатура В ИЕРАРХИИ (&ГруппаНоменклатуры)) КАК ВыручкаИСебестоимостьПродажОбороты
В обработке возвращает пустой результат запроса, в консоли запросов выводит данные.
Кто нибудь сталкивался с подобной магией?
ВЫБРАТЬ
ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот КАК СуммаВыручкиОборот,
ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиБезНДСОборот КАК СуммаВыручкиБезНДСОборот
ИЗ
РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&ДатаНач, &ДатаКон, Авто, АналитикаУчетаНоменклатуры.Номенклатура В ИЕРАРХИИ (&ГруппаНоменклатуры)) КАК ВыручкаИСебестоимостьПродажОбороты
В обработке возвращает пустой результат запроса, в консоли запросов выводит данные.
Кто нибудь сталкивался с подобной магией?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Запрос.УстановитьПараметр("ДатаКон", ПериодРасчета.ДатаОкончания);
Запрос.УстановитьПараметр("ДатаНач", ПериодРасчета.ДатаНачала);
Запрос.УстановитьПараметр("ГруппаНоменклатуры", ГруппаНоменклатуры);
Запрос.УстановитьПараметр("ДатаНач", ПериодРасчета.ДатаНачала);
Запрос.УстановитьПараметр("ГруппаНоменклатуры", ГруппаНоменклатуры);
Прикрепленные файлы:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот КАК СуммаВыручкиОборот,
| ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиБезНДСОборот КАК СуммаВыручкиБезНДСОборот
|ИЗ
| РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&ДатаНач, &ДатаКон, Авто, АналитикаУчетаНоменклатуры.Номенклатура В ИЕРАРХИИ (&ГруппаНоменклатуры)) КАК ВыручкаИСебестоимостьПродажОбороты";
ГруппаТовары = Справочники.Номенклатура.НайтиПоКоду("00000000001");
Запрос.УстановитьПараметр("ДатаКон", ПериодРасчета.ДатаОкончания);
Запрос.УстановитьПараметр("ДатаНач", ПериодРасчета.ДатаНачала);
Для каждого Стр из РасчетПремии Цикл
ГруппаНоменклатуры = ГруппаТовары;
Если ЗначениеЗаполнено(Стр.ГруппаНоменклатуры) тогда
ГруппаНоменклатуры = новый СписокЗначений;
Для каждого СтрНом из Стр.ГруппаНоменклатуры.Товары Цикл
Если ЗначениеЗаполнено(СтрНом.Номенклатура) тогда
ГруппаНоменклатуры.Добавить(СтрНом.Номенклатура);
Иначе
ГруппаНоменклатуры.Добавить(ГруппаТовары);
КонецЕсли;
КонецЦикла;
КонецЕсли;
Запрос.УстановитьПараметр("ГруппаНоменклатуры", ГруппаНоменклатуры);
Результат = Запрос.Выполнить();
ВыборкаДанных = Результат.Выбрать();
Пока ВыборкаДанных.Следующий() Цикл
Стр.ОборотСНДС = ВыборкаДанных.СуммаВыручкиОборот;
Стр.ОборотБезНДС = ВыборкаДанных.СуммаВыручкиБезНДСОборот;
Если Стр.СуммаКРасчету > 0 тогда
Если Стр.ОборотБезНДС = 0 тогда
Стр.РасчетныйПроцент = 0;
Иначе
Стр.РасчетныйПроцент = Окр(Стр.СуммаКРасчету*100/Стр.ОборотБезНДС,2);
КонецЕсли;
Стр.ПремияКВыплате = Окр(Стр.ОборотБезНДС*Стр.РасчетныйПроцент/100,2);
ИначеЕсли Стр.ПроцентОтОборота > 0 тогда
Стр.ПремияКВыплате = Окр(Стр.ОборотБезНДС*Стр.ПроцентОтОборота/100,2);
КонецЕсли;
КонецЦикла;
КонецЦикла;
Запрос.Текст =
"ВЫБРАТЬ
| ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот КАК СуммаВыручкиОборот,
| ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиБезНДСОборот КАК СуммаВыручкиБезНДСОборот
|ИЗ
| РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&ДатаНач, &ДатаКон, Авто, АналитикаУчетаНоменклатуры.Номенклатура В ИЕРАРХИИ (&ГруппаНоменклатуры)) КАК ВыручкаИСебестоимостьПродажОбороты";
ГруппаТовары = Справочники.Номенклатура.НайтиПоКоду("00000000001");
Запрос.УстановитьПараметр("ДатаКон", ПериодРасчета.ДатаОкончания);
Запрос.УстановитьПараметр("ДатаНач", ПериодРасчета.ДатаНачала);
Для каждого Стр из РасчетПремии Цикл
ГруппаНоменклатуры = ГруппаТовары;
Если ЗначениеЗаполнено(Стр.ГруппаНоменклатуры) тогда
ГруппаНоменклатуры = новый СписокЗначений;
Для каждого СтрНом из Стр.ГруппаНоменклатуры.Товары Цикл
Если ЗначениеЗаполнено(СтрНом.Номенклатура) тогда
ГруппаНоменклатуры.Добавить(СтрНом.Номенклатура);
Иначе
ГруппаНоменклатуры.Добавить(ГруппаТовары);
КонецЕсли;
КонецЦикла;
КонецЕсли;
Запрос.УстановитьПараметр("ГруппаНоменклатуры", ГруппаНоменклатуры);
Результат = Запрос.Выполнить();
ВыборкаДанных = Результат.Выбрать();
Пока ВыборкаДанных.Следующий() Цикл
Стр.ОборотСНДС = ВыборкаДанных.СуммаВыручкиОборот;
Стр.ОборотБезНДС = ВыборкаДанных.СуммаВыручкиБезНДСОборот;
Если Стр.СуммаКРасчету > 0 тогда
Если Стр.ОборотБезНДС = 0 тогда
Стр.РасчетныйПроцент = 0;
Иначе
Стр.РасчетныйПроцент = Окр(Стр.СуммаКРасчету*100/Стр.ОборотБезНДС,2);
КонецЕсли;
Стр.ПремияКВыплате = Окр(Стр.ОборотБезНДС*Стр.РасчетныйПроцент/100,2);
ИначеЕсли Стр.ПроцентОтОборота > 0 тогда
Стр.ПремияКВыплате = Окр(Стр.ОборотБезНДС*Стр.ПроцентОтОборота/100,2);
КонецЕсли;
КонецЦикла;
КонецЦикла;
(15) Состав списка значений, Карл. Что у вас оказывается в списке перед Запрос.Выполнить(). Значения остальных параметров тоже из Запрос надо смотреть.
Плюс к тому - вам правильно пишут - если в ТЧ Товары все строки имеют заполненную номенклатуру, то группа в список не попадёт.
Плюс к тому - вам правильно пишут - если в ТЧ Товары все строки имеют заполненную номенклатуру, то группа в список не попадёт.
(22)УТ нет под рукой. Но.
Это регистр в конце месяца/квартала случайно не закрывается?
Может поэтому в консоли когда дата окончания не 23.59.59, а начало дня, в нем обороты видны, а в запросе, когда конец дня, попадают обороты закрытия и ничего нет.
Для проверки можно в обработке указать в дате окончания начало дня, а не конец.
Это регистр в конце месяца/квартала случайно не закрывается?
Может поэтому в консоли когда дата окончания не 23.59.59, а начало дня, в нем обороты видны, а в запросе, когда конец дня, попадают обороты закрытия и ничего нет.
Для проверки можно в обработке указать в дате окончания начало дня, а не конец.
Автор, всё, что можно, тебе сказали и показали. Имеющий хоть один глаз и полуха - увидит и услышит.
зы Меня убило то, что каким-то неведомым образом у тебя после вот этого куска:
Запрос.Параметры.ГруппаНоменклатуры каким-то волшебным образом ниразу не СписокЗначений... ;)) Ну неужели тут ещё что-то нужно объяснять?
зы Меня убило то, что каким-то неведомым образом у тебя после вот этого куска:
ГруппаНоменклатуры = новый СписокЗначений;
Для каждого СтрНом из Стр.ГруппаНоменклатуры.Товары Цикл
Если ЗначениеЗаполнено(СтрНом.Номенклатура) тогда
ГруппаНоменклатуры.Добавить(СтрНом.Номенклатура);
Иначе
ГруппаНоменклатуры.Добавить(ГруппаТовары);
КонецЕсли;
КонецЦикла;
ПоказатьЗапрос.Параметры.ГруппаНоменклатуры каким-то волшебным образом ниразу не СписокЗначений... ;)) Ну неужели тут ещё что-то нужно объяснять?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот