Рассчитать расход за месяц

Все вопросы/проблемы по установке и использовании.
Ответить
Аватара пользователя
nikorn
Сообщения: 342
Зарегистрирован: 02 апр 2016, 22:26
Имя: Корняков Никита
Откуда: РФ, Ярославль
Организация: Тяжмаштрейд
Контактная информация:

Рассчитать расход за месяц

Сообщение nikorn »

Возникла простая задача - сделать поле "Расход".

В простейшем случае, это разница между текущим значением поля N и значением того же поля, записанном в предыдущей записи, типа

[N:I]-[N:I-1], где N - это ID поля с текущими значениями, а I - это ID текущей записи в поле N.

Но, похоже, простым способом это не сделать, так как в формуле нельзя указать ссылку на ID записи (или уже можно?)

У кого-нибудь есть идея, как решить эту задачу?
Аватара пользователя
Евгений
Сообщения: 454
Зарегистрирован: 11 июл 2016, 13:21
Имя: Евгений
Откуда: Петропавловск-Камчатский

Re: Рассчитать расход за месяц

Сообщение Евгений »

Самый простой способ, который могу предложить - написать хранимую функцию на уровне СУБД. В формульном поле вызывать эту функцию так:

Код: Выделить всё

Rashod(<ИД сущности>, id)
<ИД сущности> - ИД сущности
id - ИД текущей записи

в самой хранимке можно уже свободно делать любые выборки и расчеты. Плюсы такого решения - можно получить любые необходимые данные из любой таблицы базы. Минус - надо внимательно отслеживать все изменения структуры сущностей, которые задействованы в хранимке и параллельно вносить в код хранимки изменения.
Ответить