В отчете на СКД и консоли запросов разный результат.
Задача была написать простой отчет, который получит отрицательные начисления в определенных разрезах. Проблема в следующем: Переносим запрос из набора данных в консоль запросов выдаются правильные цифры. В отчете, как только убираем измерение "сотрудник" получаем на выходе пустой результат. Я уже дня 2 пытаюсь понять где собака порылась...
Текст запроса:
ВЫБРАТЬ
БухучетНачисленияУдержанияПоСотрудникамОбороты.Сотрудник КАК Сотрудник,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяРасходов КАК СтатьяРасходов,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяФинансирования КАК СтатьяФинансирования,
СУММА(БухучетНачисленияУдержанияПоСотрудникамОбороты.СуммаОборот) КАК СуммаОборот
ПОМЕСТИТЬ ВТМинус
ИЗ
РегистрНакопления.БухучетНачисленияУдержанияПоСотрудникам.Обороты(&НачПер, &КонПер, Период, ) КАК БухучетНачисленияУдержанияПоСотрудникамОбороты
ГДЕ
(БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание ССЫЛКА ПланВидовРасчета.Начисления
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ДоговорРаботыУслуги)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеПриПостановкеНаУчетВРанниеСрокиБеременности)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеПриРожденииРебенка)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеНаПогребение)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеНаПогребениеСотруднику))
СГРУППИРОВАТЬ ПО
БухучетНачисленияУдержанияПоСотрудникамОбороты.Сотрудник,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяРасходов,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяФинансирования
ИМЕЮЩИЕ СУММА(БухучетНачисленияУдержанияПоСотрудникамОбороты.СуммаОборот) <0 //Пробовал комментарить эту строчку и добавлять ГДЕ во второй подзапрос. Эффект 0.
;
//////////////////////////////////////////////////////////// ////////////////////
//Если сюда добавить сотрудника, и добавить сотрудника в вывод данных, то все будет как в консоли запроса.
// Как только убираем сотрудника (даже если только из полей вывода, то получаем пустой результат.)
ВЫБРАТЬ
СУММА(ВТМинус.СуммаОборот) КАК СуммаОборот,
ВТМинус.СтатьяФинансирования КАК СтатьяФинансирования,
ВТМинус.СтатьяРасходов КАК СтатьяРасходов
ИЗ
ВТМинус КАК ВТМинус
//ГДЕ
// ВТМинус.СуммаОборот < 0
СГРУППИРОВАТЬ ПО
ВТМинус.СтатьяФинансирования,
ВТМинус.СтатьяРасходов
Текст запроса:
ВЫБРАТЬ
БухучетНачисленияУдержанияПоСотрудникамОбороты.Сотрудник КАК Сотрудник,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяРасходов КАК СтатьяРасходов,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяФинансирования КАК СтатьяФинансирования,
СУММА(БухучетНачисленияУдержанияПоСотрудникамОбороты.СуммаОборот) КАК СуммаОборот
ПОМЕСТИТЬ ВТМинус
ИЗ
РегистрНакопления.БухучетНачисленияУдержанияПоСотрудникам.Обороты(&НачПер, &КонПер, Период, ) КАК БухучетНачисленияУдержанияПоСотрудникамОбороты
ГДЕ
(БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание ССЫЛКА ПланВидовРасчета.Начисления
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ДоговорРаботыУслуги)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеПриПостановкеНаУчетВРанниеСрокиБеременности)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеПриРожденииРебенка)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеНаПогребение)
ИЛИ БухучетНачисленияУдержанияПоСотрудникамОбороты.НачислениеУдержание = ЗНАЧЕНИЕ(Перечисление.ВидыОсобыхНачисленийИУдержаний.ПособиеНаПогребениеСотруднику))
СГРУППИРОВАТЬ ПО
БухучетНачисленияУдержанияПоСотрудникамОбороты.Сотрудник,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяРасходов,
БухучетНачисленияУдержанияПоСотрудникамОбороты.СтатьяФинансирования
ИМЕЮЩИЕ СУММА(БухучетНачисленияУдержанияПоСотрудникамОбороты.СуммаОборот) <0 //Пробовал комментарить эту строчку и добавлять ГДЕ во второй подзапрос. Эффект 0.
;
////////////////////////////////////////////////////////////
//Если сюда добавить сотрудника, и добавить сотрудника в вывод данных, то все будет как в консоли запроса.
// Как только убираем сотрудника (даже если только из полей вывода, то получаем пустой результат.)
ВЫБРАТЬ
СУММА(ВТМинус.СуммаОборот) КАК СуммаОборот,
ВТМинус.СтатьяФинансирования КАК СтатьяФинансирования,
ВТМинус.СтатьяРасходов КАК СтатьяРасходов
ИЗ
ВТМинус КАК ВТМинус
//ГДЕ
// ВТМинус.СуммаОборот < 0
СГРУППИРОВАТЬ ПО
ВТМинус.СтатьяФинансирования,
ВТМинус.СтатьяРасходов
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Скорее всего из-за установленной галочки автозаполнение. Запрос в СКД в конечном итоге при формировании отчета может изменяться в зависимости от выводимых полей. Чтобы избежать такой ситуации, можно убрать галочку автозаполнение и в компоновке данных запроса выбрать необходимые поля
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот