Odoo возможность отслеживать изменения на вычислительном поле - PullRequest
0 голосов
/ 16 мая 2018

У меня есть модель A с полем вычисления b (зависит от значений поля c и поля d).

b = fields.Float(compute='_compute_field')

Моя задача - каждый месяц сравнивать значения поля b прошлого и текущего месяца и получатьразличия .Например, я хочу сравнить значение поля 2018-04-01 со значением поля 2018-05-01.Во-первых, я думал сохранить вычислительную стоимость в базе данных.Но проблема в том, что я не могу этого сделать (store = True), потому что если я сохраняю значение поля b в базе данных, я всегда получаю значение 0 в поле b.

Какие могут быть другие альтернативы для отслеживанияили сохраните значения вычислительного поля , чтобы я мог сравнить различия в зависимости от времени (даты).

1 Ответ

0 голосов
/ 16 мая 2018

Если вы хотите сравнивать значения месяц за месяцем, я бы запускал автоматическое (запланированное) задание каждый месяц. Затем я бы создал новую запись с новым значением для поля b в методе задачи. Таким образом, вы будете иметь историю значений таким образом, по одному в месяц.

Поэтому я рекомендую вам создать нормальное поле без атрибута compute:

b = fields.Float()
...