Вход | Регистрация
 

Отчет СКД. Чудеса с ресурсами

Отчет СКД. Чудеса с ресурсами
Я
   Zombi
 
25.04.19 - 11:33
Делаю отчет на СКД. В ресурсах есть вот такие поля:

https://yadi.sk/i/HcDU2ca6z0YMnA

Отчет формируется, все правильно считает, кроме итогов по полю "Оборачиваемость".

Пишу в ресурсах:

https://yadi.sk/i/XPsD_F4vBc3ytQ

После этого у меня изменяется поле "Конечный остаток". Сравнил в экселе данные по обоим вариантам отчета, есть несколько позиций номенклатуры, где меняется конечный остаток. В одном варианте 8 в другом 18, например. Не пойму, как ресурс может влиять на это?
 
 
   Zombi
 
1 - 25.04.19 - 11:50
Сейчас поэкспериментировал. Что угодно выбираю в ресурсе "Оборачиваемость", хоть сумма, хоть среднее, хоть количестворазличных, выводит конечный остаток правильный. Как только пишу туда что то руками, хоть просто "1", выводит неправильно.
   Tonik992
 
2 - 25.04.19 - 11:58
Пару скриншотиков ДО и ПОСЛЕ покажите.
+ скриншот структуры отчета.

Мне кажется вы неправильно формулу ресурса "Оборачиваемость" делаете.
   Rr1
 
3 - 25.04.19 - 12:00
попробуй посмотреть итоговый запрос СКД. СКД иногда меняет текст запроса.

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    
    Настройки = КомпоновщикНастроек.ПолучитьНастройки();
    
    КомпоновщикМакета         = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновкиДанных     = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки);
    
    Если МакетКомпоновкиДанных.НаборыДанных.Количество() > 0 Тогда
        Сообщить(МакетКомпоновкиДанных.НаборыДанных[0].Запрос);      // Итиоговый текст запроса

    КонецЕсли;
    
КонецПроцедуры// ПриКомпоновкеРезультата()
   Zombi
 
4 - 25.04.19 - 12:08
Вот тут в ресурсах поставил у оборачиваемости просто 1:

https://yadi.sk/i/QlTTsRTgXtx_Rg
   Zombi
 
5 - 25.04.19 - 12:10
Сейчас в оборачиваемости стоит "Среднее":

https://yadi.sk/i/hc4RMyKU98Wzhg
   Zombi
 
6 - 25.04.19 - 12:11
Скриншот структуры:

https://yadi.sk/i/LSLfk3Vedlgxhg
   Zombi
 
7 - 25.04.19 - 12:22
(3) Сравнил. Он действительно убирает из запроса поле "Оборачиваемость". Я его в запросе считаю.
   Zombi
 
8 - 25.04.19 - 12:24
////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
    МАКСИМУМ(вт_ОстаткиПериодами.КоличествоКонечныйОстаток) КАК КонечныйОстаток,
    СУММА(ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот) КАК КоличествоОборот,
    ВыручкаИСебестоимостьПродажОбороты.Период КАК Период,
    МАКСИМУМ(вт_ОстаткиПериодами.СтоимостьКонечныйОстаток) КАК СтоимостьКонечныйОстаток,
    ВыручкаИСебестоимостьПродажОбороты.Склад КАК Склад
ПОМЕСТИТЬ вт_Остатки
ИЗ
    РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&П, &П2, Месяц, ) КАК ВыручкаИСебестоимостьПродажОбороты
        ЛЕВОЕ СОЕДИНЕНИЕ вт_ОстаткиПериодами КАК вт_ОстаткиПериодами
        ПО ВыручкаИСебестоимостьПродажОбороты.Период = вт_ОстаткиПериодами.Период
            И ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура = вт_ОстаткиПериодами.АналитикаУчетаНоменклатурыНоменклатура
            И ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Склад = вт_ОстаткиПериодами.АналитикаУчетаНоменклатурыСклад

СГРУППИРОВАТЬ ПО
    ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура,
    ВыручкаИСебестоимостьПродажОбороты.Период,
    ВыручкаИСебестоимостьПродажОбороты.Склад
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    вт_Остатки.Номенклатура КАК Номенклатура,
    вт_Остатки.СтоимостьКонечныйОстаток КАК СтоимостьКонечныйОстаток,
    вт_Остатки.КонечныйОстаток КАК КонечныйОстаток,
    вт_Остатки.КонечныйОстаток / (вт_Остатки.КоличествоОборот / (РАЗНОСТЬДАТ(вт_Остатки.Период, КОНЕЦПЕРИОДА(вт_Остатки.Период, МЕСЯЦ), ДЕНЬ) + 1)) КАК Оборачиваемость,
    вт_Остатки.Период КАК Период,
    вт_Остатки.Склад КАК Склад
ПОМЕСТИТЬ вт_ОстаткиРент
ИЗ
    вт_Остатки КАК вт_Остатки

ИНДЕКСИРОВАТЬ ПО
    Номенклатура,
    Период,
    Склад
;



Это когда выбрано "Среднее"
   Zombi
 
9 - 25.04.19 - 12:25
////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
    МАКСИМУМ(вт_ОстаткиПериодами.КоличествоКонечныйОстаток) КАК КонечныйОстаток,
    ВыручкаИСебестоимостьПродажОбороты.Период КАК Период,
    МАКСИМУМ(вт_ОстаткиПериодами.СтоимостьКонечныйОстаток) КАК СтоимостьКонечныйОстаток,
    ВыручкаИСебестоимостьПродажОбороты.Склад КАК Склад
ПОМЕСТИТЬ вт_Остатки
ИЗ
    РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&П, &П2, Месяц, ) КАК ВыручкаИСебестоимостьПродажОбороты
        ЛЕВОЕ СОЕДИНЕНИЕ вт_ОстаткиПериодами КАК вт_ОстаткиПериодами
        ПО ВыручкаИСебестоимостьПродажОбороты.Период = вт_ОстаткиПериодами.Период
            И ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура = вт_ОстаткиПериодами.АналитикаУчетаНоменклатурыНоменклатура
            И ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Склад = вт_ОстаткиПериодами.АналитикаУчетаНоменклатурыСклад

СГРУППИРОВАТЬ ПО
    ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура,
    ВыручкаИСебестоимостьПродажОбороты.Период,
    ВыручкаИСебестоимостьПродажОбороты.Склад
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    вт_Остатки.Номенклатура КАК Номенклатура,
    вт_Остатки.СтоимостьКонечныйОстаток КАК СтоимостьКонечныйОстаток,
    вт_Остатки.КонечныйОстаток КАК КонечныйОстаток,
    вт_Остатки.Период КАК Период,
    вт_Остатки.Склад КАК Склад
ПОМЕСТИТЬ вт_ОстаткиРент
ИЗ
    вт_Остатки КАК вт_Остатки

ИНДЕКСИРОВАТЬ ПО
    Номенклатура,
    Период,
    Склад
;


Это когда в ресурсах "1"
   Tonik992
 
10 - 25.04.19 - 12:32
Увидел, что кроме этого убирается ресурс "КоличествоОборот". Сделайте его обязательным в полях.
+ можете для анализа добавить в структуру отчета группировку по детальным записям и сравнить, какие выводятся детальные записи в первом и во втором случаях.
   Zombi
 
11 - 25.04.19 - 12:53
(10) Да, сделал поле обязательным и все заработало как надо. Спасибо!
(3) Вам тоже спасибо за подсказку.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.