Как использовать «если условие» в RML-Odoo v8 - PullRequest
0 голосов
/ 26 апреля 2018

Я хочу использовать условие для печати определенных условий в соответствии с установленным значением.

Например, существует 10 «Условий» для оплаты.Скорость по умолчанию - «rate1», но если выбран «rate2», условия № 3 и 4 должны быть заменены на что-то другое.

Если установлен «rate1»,

1. This is condition for both (1 or 2)
2. This is condition for both (1 or 2)
3. This is condition for rate 1
4. This is condition for rate 1
.
.
.
9. This is condition for both (1 or 2)
10. This is condition for both (1 or 2)

Если установлено значение «rate2», то

1. This is condition for both (1 or 2)
2. This is condition for both (1 or 2)
3. This is condition for rate 2
4. This is condition for rate 2
.
.
.
9. This is condition for both (1 or 2)
10. This is condition for both (1 or 2)

Условия и положения являются «статическими» и не сохраняются в объекте.

Мой RML выглядит так:

<tr>
    <td><para>1</para></td>
    <td><para>This is condition for both (1 or 2)</para></td>
</tr>
<tr>
    <td><para>2</para></td>
    <td><para>This is condition for both (1 or 2)</para></td>
</tr>
<tr>
    <td><para>3</para></td>
    <td><para>This is condition for rate 1</para></td>
</tr>

Есть ли способ, которым я могу использовать «условие» в строке 3.

Спасибо заранее.

1 Ответ

0 голосов
/ 26 апреля 2018

Я не уверен, есть ли в RML именно такие условия "если еще".

Но в моем случае мне удалось решить следующим образом, и это может быть полезно для кого-то вроде меня.

[[ r.rate2 != '']]
[['3. Condition for Rate 2 '']]
[[ r.rate1 != '']]
[['3. Condition for Rate 1 '']]

ИЛИ

[[(r.rate1 == 0 and ' ') or '3. Condition for Rate 1']]
[[(r.rate2 == 0 and ' ') or '3. Condition for Rate 2']]

Это не кажется хорошим способом, но решило проблему.

Если найдется лучший способ, всегда будет оценен.

...