Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
2 Risposte
8761 Visualizzazioni

I found this old thread discussing the same question:

https://www.odoo.com/forum/help-1/question/hide-discounts-on-order-lines-on-quotations-invoices-16510

However, the solution suggested is outdated and doesn't apply to the new QWeb-based reporting engine. I just wondered, if there is a better/easier solution by now to automatically determine, whether the "discount" column should be displayed or not. Also, it would be nice to hide the discount in an invoice line, if there is none given or it is negative.

Avatar
Abbandona
Risposta migliore

Modifications in Qweb report:


..... 
<t t-set="is_discount" t-value="0"/>
<t t-foreach="o.invoice_line" t-as="l">
<t t-if="l.discount"><t t-set="is_discount" t-value="1"/></t>
</t>
<t t-if="is_discount">
<th class="text-right" groups="sale.group_discount_per_so_line">Discount (%)</th>
</t>
.....
<t t-if="is_discount">
<td class="text-right" groups="sale.group_discount_per_so_line"><span t-field="l.discount"/></td>
</t>

Avatar
Abbandona
Autore Risposta migliore

Sorry for the wait, I didn't have time until now to test the propsed solution.

With the answer of zbik pointing me in the direction, but the proposed solution not working, i had to modify it in two places to get it working:

<t t-set="is_discount" t-value="False"/>
<!-- This is important, otherwise is_discount will only be visible inside the foreach-loop and be undefined thereafter -->

<t t-foreach="o.order_line" t-as="l">
<t t-if="l.discount"><t t-set="is_discount" t-value="True"/></t>
</t>

<!-- Table headers -->
<t t-if="is_discount">
<th class="text-right">Discount</th>
</t>


<!-- Actual table row -->
<t t-if="is_discount"> <!-- Instead of l.discount, otherwise there is a cell missing and following columns will be shifted -->
<td class="text-right" groups="sale.group_discount_per_so_line"><t t-if="l.discount"><span t-field="l.discount"/>&#160;%</t></td>
</t>

Which works very well altogether now.

PS: Sorry for posting this as answer, my karma doesn't allow me to comment yet :(

Avatar
Abbandona

Yes you are right,

Post correlati Risposte Visualizzazioni Attività
2
dic 24
7480
1
gen 23
8668
1
ott 22
4200
1
feb 22
4743
3
lug 19
5864