[[ repeatIn(objects,'o') ]] [[ setLang(o.partner_id.lang) ]] Maintenance And Support Summary Description: [[ o.name ]] Report Date: [[ formatLang(time.strftime(date_format), date=True) ]] Invoice Date: [[ o.date_invoice and formatLang(o.date_invoice, date=True) or '' ]] Amount bought: [[ (o.type == 'amount' or removeParentNode('para')) and '' ]] Quantity of hours bought: [[ (o.type == 'hours' or removeParentNode('para')) and '' ]] [[ o.amount_hours_block ]] Amount used: [[ (o.type == 'amount' or removeParentNode('para')) and '' ]] Quantity of hours used: [[ (o.type == 'hours' or removeParentNode('para')) and '' ]] [[ round(o.amount_hours_block_done, 2) ]] Remaining amount: [[ (o.type == 'amount' or removeParentNode('para')) and '' ]] Remaining hours: [[ (o.type == 'hours' or removeParentNode('para')) and '' ]] [[ o.amount_hours_block and round(o.amount_hours_block_delta, 2) or '' ]] Date Description Quantity Invoicing Deduced [[ repeatIn(analytic_lines(o), 'l') ]] [[ l.date if formatLang(l.date, date=True) else '' ]] [[ l.name or '' ]] [[ round(l.unit_amount, 2) or '0.0' ]] [[ l.to_invoice.customer_name ]] [[ round((l.unit_amount and l.to_invoice) and (l.unit_amount - (l.unit_amount * l.to_invoice.factor) / 100 ), 2) or '0.0' ]]