</para>
</td>
<td>
- <para style="terp_default_Right_9"><font>[[ a['level']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(abs(a['balance'])) ]] [[ company.currency_id.symbol ]]</font></para>
+ <para style="terp_default_Right_9"><font>[[ a['level']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(a['balance']) ]] [[ company.currency_id.symbol ]]</font></para>
</td>
<td>
<para style="terp_default_9">
</para>
</td>
<td>
- <para style="terp_default_Right_9"><font>[[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[(a['code1'] and a['name1']) and formatLang(abs(a['balance1'])) or removeParentNode('font') ]] [[ company.currency_id.symbol ]]</font></para>
+ <para style="terp_default_Right_9"><font>[[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[(a['code1'] and a['name1']) and formatLang(-a['balance1']) or removeParentNode('font') ]] [[ company.currency_id.symbol ]]</font></para>
</td>
</tr>
</blockTable>
<para style="terp_default_Bold_9"></para>
</td>
<td>
- <para style="terp_default_Bold_9">[[ final_result()['type'] == get_trans('Net Profit') and translate(final_result()['type']) or '' ]]</para>
+ <para style="terp_default_Bold_9">[[ final_result()['code'] == 'net_profit' and final_result()['type'] or '' ]]</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == get_trans('Net Profit') and formatLang(abs(final_result()['balance'])) ]] [[ company.currency_id.symbol ]]</para>
+ <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['code'] == 'net_profit' and formatLang(final_result()['balance']) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Bold_9"></para>
</td>
<td>
- <para style="terp_default_Bold_9">[[ final_result()['type'] == get_trans('Net Loss') and translate(final_result()['type']) or '' ]]</para>
+ <para style="terp_default_Bold_9">[[ final_result()['code'] == 'net_loss' and final_result()['type'] or '' ]]</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == get_trans('Net Loss') and formatLang(abs(final_result()['balance'])) ]] [[ final_result()['balance'] and final_result()['type'] == get_trans('Net Loss') and company.currency_id.symbol ]]</para>
+ <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['code'] == 'net_loss' and formatLang(final_result()['balance']) ]] [[ final_result()['balance'] and final_result()['code'] == 'net_loss' and company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) ]] [[ company.currency_id.symbol ]]</u></para>
+ <para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr()) ]] [[ company.currency_id.symbol ]]</u></para>
</td>
<td>
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) ]] [[ company.currency_id.symbol ]]</u></para>
+ <para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr()) ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
return self.res_pl
def sum_dr(self):
- if self.res_pl['type'] == _('Net Profit'):
+ if self.res_pl['code'] == 'net_profit':
self.result_sum_dr += self.res_pl['balance']
return self.result_sum_dr
def sum_cr(self):
- if self.res_pl['type'] == _('Net Loss'):
+ if self.res_pl['code'] == 'net_loss':
self.result_sum_cr += self.res_pl['balance']
return self.result_sum_cr
def _get_trans(self, source):
return _(source)
-
+
def get_data(self, data):
cr, uid = self.cr, self.uid
db_pool = pooler.get_pool(self.cr.dbname)
elif data['form']['filter'] == 'filter_date':
ctx['date_from'] = data['form'].get('date_from', False)
ctx['date_to'] = data['form'].get('date_to', False)
+ ctx['state'] = data['form'].get('target_move', 'all')
cal_list = {}
account_id = data['form'].get('chart_account_id', False)
if (account.user_type.report_type) and (account.user_type.report_type == typ):
currency = account.currency_id and account.currency_id or account.company_id.currency_id
if typ == 'expense' and account.type <> 'view' and (account.debit <> account.credit):
- self.result_sum_dr += abs(account.debit - account.credit)
+ self.result_sum_dr += account.debit - account.credit
if typ == 'income' and account.type <> 'view' and (account.debit <> account.credit):
- self.result_sum_cr += abs(account.debit - account.credit)
+ self.result_sum_cr += account.credit - account.debit
if data['form']['display_account'] == 'bal_movement':
if (not currency_pool.is_zero(self.cr, self.uid, currency, account.credit)) or (not currency_pool.is_zero(self.cr, self.uid, currency, account.debit)) or (not currency_pool.is_zero(self.cr, self.uid, currency, account.balance)):
accounts_temp.append(account)
else:
accounts_temp.append(account)
if self.result_sum_dr > self.result_sum_cr:
+ self.res_pl['code'] = 'net_loss'
self.res_pl['type'] = _('Net Loss')
self.res_pl['balance'] = (self.result_sum_dr - self.result_sum_cr)
else:
+ self.res_pl['code'] = 'net_profit'
self.res_pl['type'] = _('Net Profit')
self.res_pl['balance'] = (self.result_sum_cr - self.result_sum_dr)
self.result[typ] = accounts_temp
</para>
</td>
<td>
- <para style="terp_default_Right_9"><font>[[ a.level<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(abs(a.balance)) ]] [[ company.currency_id.symbol ]]</font></para>
+ <para style="terp_default_Right_9"><font>[[ a.level<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(a.balance) ]] [[ company.currency_id.symbol ]]</font></para>
</td>
</tr>
</blockTable>
<para style="terp_default_Bold_9"></para>
</td>
<td>
- <para style="terp_default_Bold_9">[[ final_result()['type'] == get_trans('Net Profit') and translate(final_result()['type']) or removeParentNode('blockTable') ]]</para>
+ <para style="terp_default_Bold_9">[[ final_result()['code'] == 'net_profit' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == get_trans('Net Profit') and formatLang(abs(final_result()['balance'])) ]] [[ final_result()['balance'] and final_result()['type'] == get_trans('Net Profit') and company.currency_id.symbol ]]</para>
+ <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['code'] == 'net_profit' and formatLang(final_result()['balance']) ]] [[ final_result()['balance'] and final_result()['code'] == 'net_profit' and company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) ]] [[ company.currency_id.symbol ]]</u></para>
+ <para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_dr()) ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
</para>
</td>
<td>
- <para style="terp_default_Right_9"><font>[[ a.level<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(abs(a.balance)) ]] [[ company.currency_id.symbol ]]</font></para>
+ <para style="terp_default_Right_9"><font>[[ a.level<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]</font><font>[[ formatLang(-a.balance) ]] [[ company.currency_id.symbol ]]</font></para>
</td>
</tr>
</blockTable>
<para style="terp_default_Bold_9"></para>
</td>
<td>
- <para style="terp_default_Bold_9">[[ final_result()['type'] == get_trans('Net Loss') and translate(final_result()['type']) or removeParentNode('blockTable') ]]</para>
+ <para style="terp_default_Bold_9">[[ final_result()['code'] == 'net_loss' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == get_trans('Net Loss') and formatLang(abs(final_result()['balance'])) ]] [[ final_result()['balance'] and final_result()['type'] == get_trans('Net Loss') and company.currency_id.symbol ]]</para>
+ <para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['code'] == 'net_loss' and formatLang(final_result()['balance']) ]] [[ final_result()['balance'] and final_result()['code'] == 'net_loss' and company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
- <para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) ]] [[ company.currency_id.symbol ]]</u></para>
+ <para style="terp_default_Right_9_Bold"><u>[[ formatLang(sum_cr()) ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
_defaults = {
'display_type': True,
'journal_ids': [],
- 'target_move': False
}
def _print_report(self, cr, uid, ids, data, context=None):
<field name="inherit_id" ref="account.account_common_report_view" />
<field name="arch" type="xml">
<data>
- <xpath expr="//field[@name='target_move']" position="replace">
- <field name="target_move" required="0" readonly="1"/>
- </xpath>
<xpath expr="//field[@name='journal_ids']" position="replace">
<field name="journal_ids" required="0" colspan="4" nolabel="1" readonly="1"/>
</xpath>
<separator string="Profit And Loss" colspan="4"/>
<label nolabel="1" colspan="4" string="The Profit and Loss report gives you an overview of your company profit and loss in a single document"/>
</xpath>
- <xpath expr="//field[@name='fiscalyear_id']" position="after">
+ <xpath expr="//field[@name='target_move']" position="after">
<field name="display_account"/>
<field name="display_type"/>
</xpath>