Как сделать отчет похожий на ПродажиПоМесяцам из БП 3.0 ? #747359


#0 by itPiligrim
Делаю отчет, похожий на отчет ПродажиПоМесяцам из Бухгалтерии 3.0. Там выводится сумма продаж по месяцам, причем если на дату нет данных, выводится 0. Вроде все и у меня работает, но проблема в том, что когда накладывается отбор по данным  у меня, то даты из внешнего объекта пропадают и выводятся только даты, на которые есть данные. Как решить проблему? В отчете из БП такой проблемы нет, но как она решена не понятно. Вероятно, как-то это сделано на уровне запроса, но к сожалению не могу понять как. Может кто подскажет более простой пример?
#1 by Mifka
Если не ошибаюсь то решают это следующим образом. В параметрах виртуальной таблица задать период=месяц и выводит его. в реквизитах обязательная проверка  isnull
#2 by itPiligrim
В моем случае есть только периодический регистр сведений.
#3 by Фрэнки
с схеме компоновки данных отчета ПродажиПоМесяцам из БП 3.0 Использовано два источника данных с соединением их по месяцам. А затем в ресурсах указана | Сумма | Сумма(Сумма) | Видел? Вот эта функция Сумма возвращает число 0 даже тогда, когда ей приходиться суммировать "пустые" значения вместо чисел. Если в твоем случае в источниках данных таблица только одна, то периоды тебе можно получить только с заполненными значениями - все правильно.
#4 by itPiligrim
Сделать два набора данных, заполнить в наборе данных "Периоды" месяца и года, сделать связь по годам и месяцам между двумя наборами, сделать ресурс - все это я догадался сделать. И оно даже РАБОТАЕТ! Но работает, если не установлен отбор по моему регистру. Не могу понять, почему отбор ломает весь отчет.
#5 by itPiligrim
Сделал пример. Там один отчет. Если в нем убрать отбор "Измерение1 заполнено", то отчет заработает как надо, т.е. появятся пустые месяца. Как сделать так, чтобы отчет работал и с отбором?
#6 by Фрэнки
Вроде бы понял. Как бы это теперь словами описать. Посмотрел я, все правильно отчет работает. Включение в наборы данных второй таблицы с периодами - оно вообще-то носит вспомогательный характер. Когда эта вторая таблица есть, то она дает подстановку строчек вместо чисел. Теперь насчет отбора. Использование отбора оставляет в твоих данных одну единственную запись. Ту самую, которая соответствует условию "заполнено". Причем, обрати внимание, что Отбор устанавливается на моменте вывода готовых данных в печатную форму, а не в выборке: Выбор идет полностью так, как он указан в запросе.
#7 by itPiligrim
Т.е. получается, что сначала объединяются два набора данных (периоды и регистр), потом на все это накладывается отбор. Но как сделать, чтобы было иначе (отбор накладывался только на регистр с последующим объединением с датами)?
#8 by MUXACb
Если СКД то в поле группировки(по периодам) поставьте нужный тип дополнения
#9 by Фрэнки
Ну я попробовал, пока еще не получилось. Пытаюсь сделать через использование параметра. Тем более, что именно параметр можно будет отобразить на форме отчета и сделать его выбираемым. А как вытащить на форму отбор - тем более не знаю.
#10 by Фрэнки
Кстати, отчет по продажам из БП 3 - там вывод в диаграмму, но если выбран только один год в периоде, то отображает не все периоды-месяц этого года. А когда установлены два года - тогда всего года периоды.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С