Страница 1 из 1

Динамически обновляемые 2-х уровневые SQL запросы

Добавлено: 26 июн 2020, 15:35
aminakin
Добрый день. Имеем следующую ситуацию.
Есть сущности X, Y и Z. X это потомок Y. Y и Z связаны по одному полю. В сущности X представлены некоторые данные. В сущности Y 2 поля - динамические SQL запросы, суммирующие некоторые поля из X по определённым условиям. Далее в Z мне нужна сумма нескольких строк из Y как раз по этим динамически вычисляемым столбцам. Получается динамический SQL запрос, который суммирует данные динамических SQL запросов. Не спрашивайте, зачем это надо ) Пока вопрос в том, возможно ли это или нет? Насколько я понял, результат динамического запроса не записывается в базу данных, но отображается на клиенте и может участвовать в расчётах в соседних столбцах одной сущности. С одной стороны, логично предположить, что если мы запрашиваем эти данные из другой сущности, то увидим эти самые пустые строки в базе данных. Когда я городил всё это пару месяцев назад, вроде бы оно работало. Знающие люди, подскажите, пожалуйста, либо это я не правильно помню, либо это поломалось при обновлении. Базы данных и crm - не мой профиль, но начальство настойчиво пытается наделить данную систему функциями, для которых она не предназначена. Бесплатно же ) Я бы с радостью убрал галочку с поля "Выполнять динамически", но тогда теряется весь смысл. Всё должно работать на лету.

Re: Динамически обновляемые 2-х уровневые SQL запросы

Добавлено: 26 июн 2020, 17:57
support
Да, просто так, данные из динамический запросов вы не получите. Но, можно в поле mysql запрос просто продублировать эти запросы, сделав вычисления вложенными под-запросами. Собственно это происходит автоматически, когда вы используете функции в формулах например.

Re: Динамически обновляемые 2-х уровневые SQL запросы

Добавлено: 02 июл 2020, 12:33
aminakin
А можно как-то заставить поля с Ajax запросами обновляться раз в сутки? Мне надо реализовать ежедневный прирост арендных платежей по незакрытым договорам. Сделать это с помощью sql формул не получилось, т.к. для расчёта необходимо выполнить несколько раз один и тот же запрос к дочерней сущности, но с разными ID родительской. Т.е. нам надо пробежаться по циклу и на каждой итерации сделать расчёт и суммировать результат. Как реализовать цикл на чистом sql в поле slq-формула, я не знаю. С помощью ajax запроса это можно сделать легко, но такие поля не обновляются при просмотре записи. Есть у кого-нибудь опыт или мысли по этому поводу?