Hi friends:
I solved it in the following way:
I wanted to increase a column in trial balance, this column show before account balance to period or date chosen by the user in the wizard of trial balance.
First Inherit template of tria balance:
<template id="report_trialbalance_saldo_anterior" inherit_id="account.report_trialbalance">
<xpath expr="//table[@class='table table-condensed']" position="replace">
<table class="table table-condensed">
<thead>
<tr>
<th>Code</th>
<th>Account</th>
<th>Saldo Anterior</th>
<th class="text-right">Debit</th>
<th class="text-right">Credit</th>
<th class="text-right">Balance</th>
</tr>
</thead>
<tbody>
<tr t-foreach="lines_comprobacion(data['form'])" t-as="childrenaccount">
<t t-if="childrenaccount['type'] == 'view'">
<t t-set="style" t-value="'font-weight:bold;'"/>
</t>
<t t-if="childrenaccount['type'] != 'view'">
<t t-set="style" t-value="'font-weight:normal;'"/>
</t>
<td>
<span t-att-style="style" t-esc="childrenaccount['code']"/>
</td>
<td>
<span style="color: white;" t-esc="'.' * (childrenaccount['level'] - 1)"/>
<span t-att-style="style" t-esc="childrenaccount['name']"/>
</td>
<td class="text-right">
<span t-att-style="style" t-esc="childrenaccount['sal_ant']" />
</td>
<td class="text-right">
<span t-att-style="style" t-esc="childrenaccount['debit']"/>
</td>
<td class="text-right">
<span t-att-style="style" t-esc="childrenaccount['credit']"/>
</td>
<td class="text-right">
<span t-att-style="style" t-esc="formatLang(childrenaccount['balance'], currency_obj=res_company.currency_id)"/>
</td>
</tr>
</tbody>
</table>
</xpath>
</template>
And the .py in my module is:
import time
from openerp.osv import osv from openerp.report import report_sxw from openerp.addons.account.report.common_report_header import common_report_header from openerp.addons.account.report.account_balance import account_balance from datetime import datetime, timedelta
class account_balance_comprobacion(report_sxw.rml_parse, common_report_header):
def __init__(self, cr, uid, name, context=None):
super(account_balance_comprobacion, self).__init__(cr, uid, name, context=context)
self.sum_debit = 0.00
self.sum_credit = 0.00
self.date_lst = []
self.date_lst_string = ''
self.result_acc = []
self.localcontext.update({
'time': time,
'lines_comprobacion': self.lines_comprobacion,
'sum_debit': self._sum_debit,
'sum_credit': self._sum_credit,
'get_fiscalyear':self._get_fiscalyear,
'get_filter': self._get_filter,
'get_start_period': self.get_start_period,
'get_end_period': self.get_end_period ,
'get_account': self._get_account,
'get_journal': self._get_journal,
'get_start_date':self._get_start_date,
'get_end_date':self._get_end_date,
'get_target_move': self._get_target_move,
})
self.context = context
def lines_comprobacion(self, form, ids=None, done=None):
#NEW METHOD THAT INCREASES FUNCTIONALITY
class report_trialbalance_comprobacion(osv.AbstractModel):
_name = 'report.account.report_trialbalance'
_inherit = 'report.abstract_report'
_template = 'account.report_trialbalance'
_wrapped_report_class = account_balance_comprobacion
That was all i hope it helps
Regards.
Hi, I've you solved your issue?
No
I'm also stuck with this. Just trying to reuse the parser for a new qweb report and it doesn't seems to be possible...
I also got stuck and had to pause the task , if you get solution please post the answer it will help me and others. I have to start that task again in 3-4 days.
i've maybe go a solution for my case... and I think that for your case you will need to override payslip_report instead of report_sxw.rml_parse with something like : class payslip_report(payslip_report): and importing previously the payslip_report with someting like import addons.hr_payroll.report.report_payslip hope this help
try this, https://www.odoo.com/forum/help-1/question/how-output-a-odoo-8-datetime-field-without-time-on-a-qweb-report-67948#answer-67995
Did you solve this post? I have the same.