RML - получить максимальное значение

Мне нужно получить максимальное значение из списка (который, я думаю, должен быть каким-то образом создан первым).

Существует sale.order класс/объект, из которого генерируется RML-отчет. Он имеет отношение one2many с sale.order.line, у которого есть поле (или столбец) delay. Поэтому мне нужно проверить каждую строку в этом заказе и вернуть максимальное значение delay, которое будет указывать время доставки (например, если все продукты будут доставлены одновременно).

Так, например, чтобы получить первое значение delay из первой строки, я могу исправить что-то вроде этого:

<para>[[ o.order_line[0].delay ]]</para>

Или я могу вывести все значения следующим образом:

<para>[[ repeatIn(o.order_line,'l') ]]</para>

А затем попробуйте что-то вроде:

<para>[[ max(l.delay) ]]</para>

Но я получаю сообщение об ошибке, что число с плавающей запятой не может быть повторено (потому что здесь нужно использовать список). Что я могу сделать, чтобы создать список из этих значений, а затем получить максимальное значение? Или, может быть, есть другой способ получить максимальное значение в RML?


person Andrius    schedule 06.02.2014    source источник


Ответы (1)


Попробуйте [[ max([ln.delay для ln в o.order_line ]) ]]

person OmaL    schedule 07.02.2014