Расчет значений группировок в строке СКД
1С:Комплексная автоматизация 1.х
1С:Управление производственным предприятием
1С:Управление торговлей 10
Система компоновки данных
Доброго времени суток.
Помогите, братцы, чет ни получается у меня.
Приведу пример:
Допустим, есть отчетик (приложил примерчик для УТ10,3, или КА 1,1 или УПП 1,3), состоящий из набора данных – «объединение», который в свою очередь состоит из двух наборов типа «Запрос», оба запроса к остаточно – оборотным регистрам ЗаказыПокупателей, и ЗаказыПоставщикам.
В запросах выбираю по шесть полей:
По два измерения: Номенклатура, и Заказ, и по четыре Ресурса: начальный остаток, приход, расход, конечный остаток (как того требует СКД)
Делаю два ресурса в СКД: Приход из запроса ЗаказыПокупателей, и Приход из ЗаказыПоставщикам
Допустим, получаю вот такой результат (Рис. 1):
Понятно, что зеленые строки получены из регистра ЗаказыПокупателей, а красная строка из регистра ЗаказыПоставщикам. Все это объединилось и чудесненько сгруппировалось по полю номенклатура, т.к. значение у этого поля общее для обеих регистров.
Собственно вопрос:
Как получить вот такой результат (Рис. 2):
Трех часовые потуги типа
ВычислитьВыражение("ЗаказыПокупателейКоличествоПриход - ЗаказыПоставщикамКоличествоПриход ", "Номенклатура")
Ни в вычисляемых полях, ни на вкладке ресурсы результатов не дали.
Вот чую что это как то несложно должно быть, но вот как то никак...
Отчетик приложил.
Помогите, братцы, чет ни получается у меня.
Приведу пример:
Допустим, есть отчетик (приложил примерчик для УТ10,3, или КА 1,1 или УПП 1,3), состоящий из набора данных – «объединение», который в свою очередь состоит из двух наборов типа «Запрос», оба запроса к остаточно – оборотным регистрам ЗаказыПокупателей, и ЗаказыПоставщикам.
В запросах выбираю по шесть полей:
По два измерения: Номенклатура, и Заказ, и по четыре Ресурса: начальный остаток, приход, расход, конечный остаток (как того требует СКД)
Делаю два ресурса в СКД: Приход из запроса ЗаказыПокупателей, и Приход из ЗаказыПоставщикам
Допустим, получаю вот такой результат (Рис. 1):
Понятно, что зеленые строки получены из регистра ЗаказыПокупателей, а красная строка из регистра ЗаказыПоставщикам. Все это объединилось и чудесненько сгруппировалось по полю номенклатура, т.к. значение у этого поля общее для обеих регистров.
Собственно вопрос:
Как получить вот такой результат (Рис. 2):
Трех часовые потуги типа
ВычислитьВыражение("ЗаказыПокупателейКоличествоПриход - ЗаказыПоставщикамКоличествоПриход ", "Номенклатура")
Ни в вычисляемых полях, ни на вкладке ресурсы результатов не дали.
Вот чую что это как то несложно должно быть, но вот как то никак...
Отчетик приложил.
Прикрепленные файлы:
Отчетик.erf


По теме из базы знаний
- Приемы работы с СКД: делаем за 5 минут то, на что у других уйдет час
- Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив
- Отчеты по расчетам с контрагентами для 1С:Бухгалтерии
- СКД на JavaScript в 1С
- Пример программной работы с отчетом на основе СКД. Запуск типового перестроенного программно отчета по событию формы
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(4)
Спасибо тебе! Спасибо! Это то что нужно!
Блин, ну вот не пойму в чем принципиальная разница между
и
???
мне кажется что тут надо в ресурсах вычислять по номенклатуре
Спасибо тебе! Спасибо! Это то что нужно!
Блин, ну вот не пойму в чем принципиальная разница между
Сумма(ВычислитьВыражение("ЗаказыПокупателейКоличествоПриход - ЗаказыПоставщикамКоличествоПриход"))
и
Сумма(естьnull(ЗаказыПокупателейКоличествоПриход, 0)) - Сумма(естьnull(ЗаказыПоставщикамКоличествоПриход, 0))
???
(6)
Да, согласен...
Просто мне всегда считал, что расчет вычисляемых полей происходит построчно, в том числе в строках группировок...
Из сравнения в (5) стало понятно, что в случае и с вычисляемыми полями расчет происходит построчно только по полям, не являющимися группировками, а в группировках происходит агрегатирование какой либо функцией (Сумма, Мин, Макс и тд), указанной на вкладке Ресурсы СКД.
В моем случае суть одна и та же: ЗаказыПокупателейКоличествоПриход - ЗаказыПоставщикамКоличествоПриход, но поскольку в строках из разных выборок одно поле число, а другое - null, то и результат вычитания то же null. Соответственно агрегатная функция группировки, какая б она не была дает null по группировке.
Да, согласен...
Просто мне всегда считал, что расчет вычисляемых полей происходит построчно, в том числе в строках группировок...
Из сравнения в (5) стало понятно, что в случае и с вычисляемыми полями расчет происходит построчно только по полям, не являющимися группировками, а в группировках происходит агрегатирование какой либо функцией (Сумма, Мин, Макс и тд), указанной на вкладке Ресурсы СКД.
В моем случае суть одна и та же: ЗаказыПокупателейКоличествоПриход - ЗаказыПоставщикамКоличествоПриход, но поскольку в строках из разных выборок одно поле число, а другое - null, то и результат вычитания то же null. Соответственно агрегатная функция группировки, какая б она не была дает null по группировке.
А вот тогда еще вопрос, гулять так гулять :)
"Детальная запись" - это то что не является группировкой в конкретной настройке (ну т.е самое нижнее поле в структуре отчета), или это поле в ресурсах, ресурсом не являющееся?
Или и то и другое?
В смысле есть ли в отчете детальные записи, если в структуре отчета, в качестве последнего поля группировок не указано пустое поле (<Детальные записи>) ?
"Детальная запись" - это то что не является группировкой в конкретной настройке (ну т.е самое нижнее поле в структуре отчета), или это поле в ресурсах, ресурсом не являющееся?
Или и то и другое?
В смысле есть ли в отчете детальные записи, если в структуре отчета, в качестве последнего поля группировок не указано пустое поле (<Детальные записи>) ?
Ну про запрос эт понятно, я в контексте СКД спрашиваю, т.е.
Применимо ли понятие "детальные записи" к записям результата отчета на СКД, находящимся на последнем уровне, если в структуре отчета, в качестве последнего поля группировок не указано пустое поле (<Детальные записи>)
Применимо ли понятие "детальные записи" к записям результата отчета на СКД, находящимся на последнем уровне, если в структуре отчета, в качестве последнего поля группировок не указано пустое поле (<Детальные записи>)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот