Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как вычислить значение ресурса для группировки по значениям ресурса нижестоящей группировки          
Отцовский Подменю пользователя
сообщение 22.11.16, 17:03
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 4
Спасибо сказали: 0 раз
Рейтинг: 0

Задача вроде бы простая: надо сделать отчет по взаиморасчетам с покупателями.
Группировки:
Организация
Контрагент
Заказ
Ресурсы:
НашДолгКонтрагенту
ДолгКонтрагентаНам

По каждому конкретному заказу либо нам должны, либо мы. Тут вопросов нет.
Если для вычисления ресурсов группировки "Контрагент" применить функцию СУММА(ДолжныНам) и СУММА(ДолжныМы), то получаются значения, допустим, 200 и 180.
Меня это не устроило и я свернул долг, использовав конструкцию ВЫБОР, в результате получил свёрнутый долг 20 и 0. Всё хорошо. Но вот для вышестоящей группировки "Организация", а также для ОбщихИтогов надо суммировать не развернутые долги по заказам, а свернутые долги по контрагентам, т.е. не 200 и 180 для одного контрагента и, к примеру, 150 и 220 для другого, а 20 и 0 для одного и 0 и 70 для другого, чтобы в итоге по организации было 20 и 70. И вот тут мои знания начинающего СКДшника кончились. Наверняка ж есть какое-то стандартное решение - задача ж типичная. Знаю, что есть функция ВЫЧИСЛИТЬЗНАЧЕНИЕ(), но описание к ней уж больно мудрёное, как её присобачить к моей проблеме - ума не приложу. А может и не её вовсе?

Ребята, буду благодарен за подсказку.

Acid Подменю пользователя
сообщение 22.11.16, 17:22
Сообщение #2

Про1С-ник
Иконка группы
За заслуги на форуме в 2010 году
Группа: Местный
Сообщений: 2104
Из: Занзибар
Спасибо сказали: 377 раз
Рейтинг: 260.7

Группировки выводятся поочередно. Нижестоящую группировку увидеть нельзя, потому что ее "еще нет".

Отцовский Подменю пользователя
сообщение 22.11.16, 17:30
Сообщение #3

Молчаливый
*
Группа: Пользователи
Сообщений: 4
Спасибо сказали: 0 раз
Рейтинг: 0

Acid @ Сегодня, 17:22 * ,
Это понятно, что нижестоящей группировки нет. Но долги то есть, и есть проблема в их суммировании - значит должен быть и способ решения.
Самый простой - отказаться от СКД и за 10 мин. сделать всё самому традиционным способом. Но такой способ мне известен, и он меня не устраивает.

bakalavr Подменю пользователя
сообщение 22.11.16, 22:18
Сообщение #4

Общительный
**
Группа: Пользователи
Сообщений: 26
Из: Запорожье
Спасибо сказали: 8 раз
Рейтинг: 0

Я бы попробовал получить таблицу такого вида:
Организация, Контрагент, Заказ, ДолгКонтрагента, НашДолг, ДолгКонтрагентаРазвернуто, НашДолгРазвернуто
Организация1, Контрагент1, null, 20, 0, 0, 0
Организация1, Контрагент1, Заказ1, 0, 0, 200, 0
Организация1, Контрагент1, Заказ1, 0, 0, 0, 180

Затем на вкладке ресурсов для группировки Заказ рассчитывать развернутые итоги, для остальных группировок свернутые

Спасибо сказали: Отцовский,

Отцовский Подменю пользователя
сообщение 22.11.16, 23:30
Сообщение #5

Молчаливый
*
Группа: Пользователи
Сообщений: 4
Спасибо сказали: 0 раз
Рейтинг: 0

bakalavr @ Сегодня, 22:18 * ,
Спасибо. Именно так я и сделал, пока дожидался подсказки лучшего решения, более элегантного. Как-то не верится, что его нет.

Acid Подменю пользователя
сообщение 22.11.16, 23:45
Сообщение #6

Про1С-ник
Иконка группы
За заслуги на форуме в 2010 году
Группа: Местный
Сообщений: 2104
Из: Занзибар
Спасибо сказали: 377 раз
Рейтинг: 260.7

Задача на самом деле не простая. Потому что есть еще дни просрочки, товарный кредит (аппетит прийдет во время еды)
Решается это все вложенными запросами, объединениями и вспомогательными полями. Вот вспомогательные поля содержат нужную для вычислений инфу (как вы про Выбор написали), и в самой СКД они присутствуют, но в отчет не выводятся.
Приемов реализации масса. Нужно подобрать подходящий.
Например, можно собрать таблицу значений, и уже ее подсунуть СКД.


Signature

Документируйте Код! мать вашу...


Спасибо сказали: Отцовский,

Отцовский Подменю пользователя
сообщение 23.11.16, 9:27
Сообщение #7

Молчаливый
*
Группа: Пользователи
Сообщений: 4
Спасибо сказали: 0 раз
Рейтинг: 0

Acid @ Вчера, 23:45 * ,
Спасибо.

Да, вы правы на счет "аппетита" )))
Задача изначально была не так проста, как я её описал. Трудно себе представить такой примитивный отчет в реально работающей конфигурации. Даже у простого ФОПа и то есть свои заморочки. Но я умею их разморочивать. Я просто постарался максимально упростить описание для выделения именно "камня преткновения". А то что вокруг него ещё целые горы других "камней", так у нас есть для этого богатый набор "альпинистского снаряжения" )))
Справился я и с этим "камнем", но с применением средств языка запросов. А мне так хотелось нагрузить этой проблемой саму СКД, пусть бы она попыхтела ))). А то пишут: "СКД - мощный инструмент разработки отчетов". Мощный то он мощный, да вот выходит: простых задач решать не умеет. Вывод, конечно, провокаторский. Авось кто-то ещё что-то предложит ))).

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 24.04.24, 5:41
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!