Как подсчитать сумму по полю в связанной сущности

Все вопросы/проблемы по установке и использовании.
Ответить
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1198
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Как подсчитать сумму по полю в связанной сущности

Сообщение Fait »

Привет всем!
Суть проблемы такая:
Я не знаю, как посчитать сумму оплат от клиента по связанной записи.
Все записи об оплатах создаются изнутри заказа с созданием связанной записи.
Я написал запрос:
IFNULL((SELECT SUM(app_entity_42.field_497) FROM app_entity_42 WHERE app_entity_42.???=[id] AND app_entity_42.field_501=81),0)
Дословно:
Если значение не пустое, то считаем сумму по полю "Сумма" в таблице денежных операций, КОГДА ??? поле в таблице операций = ID текущего заказа И тип записи = получение оплаты от клиента

Вот, я не пойму, как выбрать из таблицы операций именно то, что связано с текущим заказом.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1198
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Re: Как подсчитать сумму по полю в связанной сущности

Сообщение Fait »

IMG_20210322_082629.jpg
Вот, это скрин заказа со связанной записью.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1198
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Re: Как подсчитать сумму по полю в связанной сущности

Сообщение Fait »

А ещё бывает вот так:
IMG_20210322_082911.jpg
3 записи об оплате, и по ним нужно посчитать сумму, чтобы понимать, есть ли у клиента долг или переплата перед нами.

Долг или переплата = СУММА_ЗАКАЗА - СУММА_ОПЛАТ


Раньше записи об оплатах были во вложенной сущности, и считалось всё прекрасно.
Но потом было решено вести все денежные записи в одной таблице, чтобы правильнее сводить отчёты.
А так у нас деньги в трёх местах заполняются, что не очень удобно.
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Как подсчитать сумму по полю в связанной сущности

Сообщение support »

Перед тем как писать свои запросы смотрите как записи хранятся в базе данных. В Дополнении есть функции, я там предусмотрел возможности расчета по полю "Связанные записи", потому что данные связи хранятся в отдельной таблице типа app_related_items_X_Y (X и Y - id сущностей)
У вас как связь настроена?
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1198
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Re: Как подсчитать сумму по полю в связанной сущности

Сообщение Fait »

support писал(а): 22 мар 2021, 07:22 Перед тем как писать свои запросы смотрите как записи хранятся в базе данных. В Дополнении есть функции, я там предусмотрел возможности расчета по полю "Связанные записи", потому что данные связи хранятся в отдельной таблице типа app_related_items_X_Y (X и Y - id сущностей)
У вас как связь настроена?
Связь настроена путём создания поля "Связанные записи".
В форме заказа имеется кнопка процесса, при которой создаётся запись в связанной таблице.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1198
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Re: Как подсчитать сумму по полю в связанной сущности

Сообщение Fait »

Спасибо!
Я разобрался, теперь всё считается благодаря внедрению функции!
Ответить