-
+
@@ -36,19 +35,16 @@
+ options="{'no_create': True}"/>
diff --git a/account_financial_report/wizard/journal_ledger_wizard.py b/account_financial_report/wizard/journal_ledger_wizard.py
index bc70430b..3bbfb407 100644
--- a/account_financial_report/wizard/journal_ledger_wizard.py
+++ b/account_financial_report/wizard/journal_ledger_wizard.py
@@ -16,15 +16,12 @@ class JournalLedgerReportWizard(models.TransientModel):
comodel_name='res.company',
default=lambda self: self.env.user.company_id,
string='Company',
- required=True,
+ required=False,
ondelete='cascade',
)
date_range_id = fields.Many2one(
comodel_name='date.range',
string='Date range',
- domain="['|', "
- "('company_id', '=', False),"
- "('company_id', '=', company_id)]",
)
date_from = fields.Date(
string="Start date",
@@ -37,7 +34,6 @@ class JournalLedgerReportWizard(models.TransientModel):
journal_ids = fields.Many2many(
comodel_name='account.journal',
string="Journals",
- domain="[('company_id', '=', company_id)]",
required=False,
)
move_target = fields.Selection(
@@ -89,6 +85,23 @@ class JournalLedgerReportWizard(models.TransientModel):
self.date_from = self.date_range_id.date_start
self.date_to = self.date_range_id.date_end
+ @api.onchange('company_id')
+ def onchange_company_id(self):
+ """Handle company change."""
+ if self.company_id and self.date_range_id.company_id and \
+ self.date_range_id.company_id != self.company_id:
+ self.date_range_id = False
+ if self.company_id and self.journal_ids:
+ self.journal_ids = self.journal_ids.filtered(
+ lambda p: p.company_id == self.company_id or not p.company_id)
+ res = {'domain': {'journal_ids': []}}
+ if not self.company_id:
+ return res
+ else:
+ res['domain']['journal_ids'] += [
+ ('company_id', '=', self.company_id.id)]
+ return res
+
@api.multi
def button_export_html(self):
self.ensure_one()
diff --git a/account_financial_report/wizard/open_items_wizard.py b/account_financial_report/wizard/open_items_wizard.py
index 804a8efe..02b89433 100644
--- a/account_financial_report/wizard/open_items_wizard.py
+++ b/account_financial_report/wizard/open_items_wizard.py
@@ -17,7 +17,7 @@ class OpenItemsReportWizard(models.TransientModel):
company_id = fields.Many2one(
comodel_name='res.company',
default=lambda self: self.env.user.company_id,
- required=True,
+ required=False,
string='Company'
)
date_at = fields.Date(required=True,
@@ -60,8 +60,22 @@ class OpenItemsReportWizard(models.TransientModel):
lambda p: p.company_id == self.company_id or
not p.company_id)
if self.company_id and self.account_ids:
- self.account_ids = self.account_ids.filtered(
- lambda a: a.company_id == self.company_id)
+ if self.receivable_accounts_only or self.payable_accounts_only:
+ self.onchange_type_accounts_only()
+ else:
+ self.account_ids = self.account_ids.filtered(
+ lambda a: a.company_id == self.company_id)
+ res = {'domain': {'account_ids': [],
+ 'partner_ids': []}}
+ if not self.company_id:
+ return res
+ else:
+ res['domain']['account_ids'] += [
+ ('company_id', '=', self.company_id.id)]
+ res['domain']['partner_ids'] += [
+ '|', ('company_id', '=', self.company_id.id),
+ ('company_id', '=', False)]
+ return res
@api.onchange('receivable_accounts_only', 'payable_accounts_only')
def onchange_type_accounts_only(self):
diff --git a/account_financial_report/wizard/open_items_wizard_view.xml b/account_financial_report/wizard/open_items_wizard_view.xml
index 1366799b..f5df881b 100644
--- a/account_financial_report/wizard/open_items_wizard_view.xml
+++ b/account_financial_report/wizard/open_items_wizard_view.xml
@@ -24,7 +24,6 @@
@@ -34,7 +33,6 @@
diff --git a/account_financial_report/wizard/trial_balance_wizard.py b/account_financial_report/wizard/trial_balance_wizard.py
index cd8cabe6..655d4a1f 100644
--- a/account_financial_report/wizard/trial_balance_wizard.py
+++ b/account_financial_report/wizard/trial_balance_wizard.py
@@ -19,7 +19,7 @@ class TrialBalanceReportWizard(models.TransientModel):
company_id = fields.Many2one(
comodel_name='res.company',
default=lambda self: self.env.user.company_id,
- required=True,
+ required=False,
string='Company'
)
date_range_id = fields.Many2one(
@@ -115,9 +115,35 @@ class TrialBalanceReportWizard(models.TransientModel):
self.partner_ids = self.partner_ids.filtered(
lambda p: p.company_id == self.company_id or
not p.company_id)
- if self.company_id and self.account_ids:
- self.account_ids = self.account_ids.filtered(
+ if self.company_id and self.journal_ids:
+ self.journal_ids = self.journal_ids.filtered(
lambda a: a.company_id == self.company_id)
+ if self.company_id and self.account_ids:
+ if self.receivable_accounts_only or self.payable_accounts_only:
+ self.onchange_type_accounts_only()
+ else:
+ self.account_ids = self.account_ids.filtered(
+ lambda a: a.company_id == self.company_id)
+ res = {'domain': {'account_ids': [],
+ 'partner_ids': [],
+ 'date_range_id': [],
+ 'journal_ids': [],
+ }
+ }
+ if not self.company_id:
+ return res
+ else:
+ res['domain']['account_ids'] += [
+ ('company_id', '=', self.company_id.id)]
+ res['domain']['partner_ids'] += [
+ '|', ('company_id', '=', self.company_id.id),
+ ('company_id', '=', False)]
+ res['domain']['date_range_id'] += [
+ '|', ('company_id', '=', self.company_id.id),
+ ('company_id', '=', False)]
+ res['domain']['journal_ids'] += [
+ ('company_id', '=', self.company_id.id)]
+ return res
@api.onchange('date_range_id')
def onchange_date_range_id(self):
diff --git a/account_financial_report/wizard/trial_balance_wizard_view.xml b/account_financial_report/wizard/trial_balance_wizard_view.xml
index efc763ad..a95d2acd 100644
--- a/account_financial_report/wizard/trial_balance_wizard_view.xml
+++ b/account_financial_report/wizard/trial_balance_wizard_view.xml
@@ -13,7 +13,7 @@
-
+
@@ -32,14 +32,12 @@
@@ -52,7 +50,6 @@
diff --git a/account_financial_report/wizard/vat_report_wizard.py b/account_financial_report/wizard/vat_report_wizard.py
index 0878bba4..2f78525b 100644
--- a/account_financial_report/wizard/vat_report_wizard.py
+++ b/account_financial_report/wizard/vat_report_wizard.py
@@ -13,7 +13,7 @@ class VATReportWizard(models.TransientModel):
company_id = fields.Many2one(
comodel_name='res.company',
default=lambda self: self.env.user.company_id,
- required=True,
+ required=False,
string='Company'
)
date_range_id = fields.Many2one(
@@ -34,6 +34,16 @@ class VATReportWizard(models.TransientModel):
if self.company_id and self.date_range_id.company_id and \
self.date_range_id.company_id != self.company_id:
self.date_range_id = False
+ res = {'domain': {'date_range_id': [],
+ }
+ }
+ if not self.company_id:
+ return res
+ else:
+ res['domain']['date_range_id'] += [
+ '|', ('company_id', '=', self.company_id.id),
+ ('company_id', '=', False)]
+ return res
@api.onchange('date_range_id')
def onchange_date_range_id(self):
diff --git a/account_financial_report/wizard/vat_report_wizard_view.xml b/account_financial_report/wizard/vat_report_wizard_view.xml
index 6e716c46..0b360fa3 100755
--- a/account_financial_report/wizard/vat_report_wizard_view.xml
+++ b/account_financial_report/wizard/vat_report_wizard_view.xml
@@ -11,7 +11,7 @@
-
+