[ADD] analytic for write-off on mass reconcile

This commit is contained in:
vrenaville
2017-07-06 15:36:27 +02:00
parent ad4fec3148
commit 213d1e1e3a
5 changed files with 39 additions and 4 deletions

View File

@@ -600,3 +600,16 @@ msgstr "mass.reconcile.advanced"
#: model:ir.model,name:account_mass_reconcile.model_mass_reconcile_advanced_ref
msgid "mass.reconcile.advanced.ref"
msgstr "mass.reconcile.advanced.ref"
#. module: account_mass_reconcile
#: model:ir.model.fields,field_description:account_mass_reconcile.field_account_mass_reconcile_method_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_advanced_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_advanced_ref_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_base_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_options_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_name_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_partner_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_reference_analytic_account_id
msgid "Analytic account for write-off"
msgstr ""

View File

@@ -679,3 +679,16 @@ msgstr ""
#: model:ir.model,name:account_mass_reconcile.model_account_mass_reconcile_method
msgid "reconcile method for account_mass_reconcile"
msgstr "Méthode de lettrage"
#. module: account_mass_reconcile
#: model:ir.model.fields,field_description:account_mass_reconcile.field_account_mass_reconcile_method_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_advanced_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_advanced_ref_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_base_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_options_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_name_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_partner_analytic_account_id
#: model:ir.model.fields,field_description:account_mass_reconcile.field_mass_reconcile_simple_reference_analytic_account_id
msgid "Analytic account for write-off"
msgstr "Compte analytique pour les écritures d'écart"

View File

@@ -159,10 +159,14 @@ class MassReconcileBase(models.AbstractModel):
else:
writeoff_account = self.account_lost_id
line_rs = ml_obj.browse(line_ids)
line_rs.reconcile(
writeoff_acc_id=writeoff_account,
writeoff_journal_id=self.journal_id
)
ctx = dict(self._context)
if self.analytic_account_id:
ctx.update(
{'analytic_id': self.analytic_account_id.id})
line_rs.with_context(ctx).reconcile(
writeoff_acc_id=writeoff_account,
writeoff_journal_id=self.journal_id
)
return True, True
elif allow_partial:
# We need to give a writeoff_acc_id

View File

@@ -48,6 +48,8 @@ class MassReconcileOptions(models.AbstractModel):
expense_exchange_account_id = fields.Many2one('account.account',
string='Loss Exchange '
'Rate Account')
analytic_account_id = fields.Many2one(
'account.analytic.account', string='Analytic account for write-off')
class AccountMassReconcileMethod(models.Model):
@@ -149,6 +151,8 @@ class AccountMassReconcile(models.Model):
'write_off': rec_method.write_off,
'account_lost_id': (rec_method.account_lost_id.id),
'account_profit_id': (rec_method.account_profit_id.id),
'analytic_account_id': (
rec_method.analytic_account_id.id),
'income_exchange_account_id':
(rec_method.income_exchange_account_id.id),
'expense_exchange_account_id':

View File

@@ -127,6 +127,7 @@ The lines should have the partner, the credit entry ref. is matched vs the debit
<field name="income_exchange_account_id" groups="base.group_multi_currency"/>
<field name="expense_exchange_account_id" groups="base.group_multi_currency"/>
<field name="journal_id" attrs="{'required':[('write_off','>',0)]}"/>
<field name="analytic_account_id" attrs="{'required':[('write_off','>',0)]}"/>
<field name="date_base_on"/>
</tree>
</field>