diff --git a/addons/account_asset/models/account_asset.py b/addons/account_asset/models/account_asset.py
index 2663bff2d00..2dd11c42fa6 100644
--- a/addons/account_asset/models/account_asset.py
+++ b/addons/account_asset/models/account_asset.py
@@ -217,7 +217,14 @@ class AccountAssetAsset(models.Model):
# depreciation_date = 1st of January of purchase year if annual valuation, 1st of
# purchase month in other cases
if self.method_period >= 12:
- asset_date = datetime.strptime(self.date[:4] + '-01-01', DF).date()
+ if self.company_id.fiscalyear_last_month:
+ asset_date = date(year=int(self.date[:4]),
+ month=self.company_id.fiscalyear_last_month,
+ day=self.company_id.fiscalyear_last_day) + \
+ relativedelta(days=1) + \
+ relativedelta(year=int(self.date[:4])) # e.g. 2018-12-31 +1 -> 2019
+ else:
+ asset_date = datetime.strptime(self.date[:4] + '-01-01', DF).date()
else:
asset_date = datetime.strptime(self.date[:7] + '-01', DF).date()
# if we already have some previous validated entries, starting date isn't 1st January but last entry + method period
diff --git a/addons/l10n_be_intrastat/wizard/xml_decl.py b/addons/l10n_be_intrastat/wizard/xml_decl.py
index 80d7d617ef4..aaf67485a11 100644
--- a/addons/l10n_be_intrastat/wizard/xml_decl.py
+++ b/addons/l10n_be_intrastat/wizard/xml_decl.py
@@ -176,7 +176,7 @@ class XmlDeclaration(models.TransientModel):
if inv_line.invoice_id.intrastat_country_id:
excnt = inv_line.invoice_id.intrastat_country_id.code
else:
- excnt = inv_line.invoice_id.partner_id.country_id.code
+ excnt = inv_line.invoice_id.partner_shipping_id.country_id.code or inv_line.invoice_id.partner_id.country_id.code
#Check region
#If purchase, comes from purchase order, linked to a location,
diff --git a/addons/l10n_es/data/account_account_template_data.xml b/addons/l10n_es/data/account_account_template_data.xml
index 455d8132f04..9f4fe8955db 100644
--- a/addons/l10n_es/data/account_account_template_data.xml
+++ b/addons/l10n_es/data/account_account_template_data.xml
@@ -14,413 +14,413 @@
101
Fondo social
-
+
102
Capital
-
+
108
Acciones o participaciones propias en situaciones especiales
-
+
109
Acciones o participaciones propias para reducción de capital
-
+
110
Prima de emisión o asunción
-
+
112
Reserva legal
-
+
113
Reservas voluntarias
-
+
1140
Reservas para acciones o participaciones de la sociedad dominante
-
+
1141
Reservas estatutarias
-
+
1142
Reserva por capital amortizado
-
+
1144
Reservas por acciones propias aceptadas en garantía
-
+
118
Aportaciones de socios o propietarios
-
+
119
Diferencias por ajuste del capital a euros
-
+
131
Donaciones y legados de capital
-
+
1370
Ingresos fiscales por diferencias permanentes a distribuir en varios ejercicios
-
+
1371
Ingresos fiscales por deducciones y bonificaciones a distribuir en varios ejercicios
-
+
141
Provisión para impuestos
-
+
142
Provisión para otras responsabilidades
-
+
143
Provisión por desmantelamiento, retiro o rehabilitación del inmovilizado
-
+
145
Provisión para actuaciones medioambientales
-
+
150
Acciones o participaciones consideradas como pasivos financieros
-
+
1533
Desembolsos no exigidos, empresas del grupo
-
+
1534
Desembolsos no exigidos, empresas asociadas
-
+
1535
Desembolsos no exigidos, otras partes vinculadas
-
+
1536
Otros desembolsos no exigidos
-
+
1543
Aportaciones no dinerarias pendientes, empresas del grupo
-
+
1544
Aportaciones no dinerarias pendientes, empresas asociadas
-
+
1545
Aportaciones no dinerarias pendientes, otras partes vinculadas
-
+
1546
Otras aportaciones no dinerarias pendientes
-
+
1603
Deudas con entidades de crédito vinculadas, empresas del grupo
-
+
1604
Deudas con entidades de crédito vinculadas, empresas asociadas
-
+
1605
Deudas con otras entidades de crédito vinculadas
-
+
1613
Proveedores de inmovilizado, empresas del grupo
-
+
1614
Proveedores de inmovilizado, empresas asociadas
-
+
1615
Proveedores de inmovilizado, otras partes vinculadas
-
+
1623
Acreedores por arrendamiento financiero, empresas de grupo
-
+
1624
Acreedores por arrendamiento financiero, empresas asociadas
-
+
1625
Acreedores por arrendamiento financiero, otras partes vinculadas
-
+
1633
Otras deudas, empresas del grupo
-
+
1634
Otras deudas, empresas asociadas
-
+
1635
Otras deudas, con otras partes vinculadas
-
+
170
Deudas con entidades de crédito
-
+
171
Deudas
-
+
172
Deudas transformables en subvenciones, donaciones y legados
-
+
173
Proveedores de inmovilizado
-
+
174
Acreedores por arrendamiento financiero
-
+
175
Efectos a pagar
-
+
176
Pasivos por derivados financieros
-
+
177
Obligaciones y bonos
-
+
179
Deudas representadas en otros valores negociables
-
+
180
Fianzas recibidas
-
+
181
Anticipos recibidos por ventas o prestaciones de servicios
-
+
185
Depósitos recibidos
-
+
190
Acciones o participaciones emitidas
-
+
192
Suscriptores de acciones
-
+
194
Capital emitido pendiente de inscripción
-
+
195
Acciones o participaciones emitidas consideradas como pasivos financieros
-
+
197
Suscriptores de acciones consideradas como pasivos financieros
-
+
199
Acciones o participaciones emitidas consideradas como pasivos financieros pendientes de inscripción
-
+
@@ -1244,9 +1244,9 @@
401
-
+
Proveedores, efectos comerciales a pagar
-
+
@@ -1286,30 +1286,30 @@
404
-
+
Proveedores, empresas asociadas
-
+
405
-
+
Proveedores, otras partes vinculadas
-
+
406
-
+
Envases y embalajes a devolver a proveedores
-
+
407
-
+
Anticipos a proveedores
-
+
@@ -1398,9 +1398,9 @@
432
-
+
Clientes, operaciones de factoring
-
+
@@ -1454,37 +1454,37 @@
434
-
+
Clientes, empresas asociadas
-
+
435
-
+
Clientes, otras partes vinculadas
-
+
436
-
+
Clientes de dudoso cobro
-
+
437
-
+
Envases y embalajes a devolver por clientes
-
+
438
-
+
Anticipos de clientes
-
+
diff --git a/addons/point_of_sale/models/pos_order.py b/addons/point_of_sale/models/pos_order.py
index dcbb27ad163..507c9a37da3 100644
--- a/addons/point_of_sale/models/pos_order.py
+++ b/addons/point_of_sale/models/pos_order.py
@@ -407,6 +407,12 @@ class PosOrder(models.Model):
# for debugging and support purposes
_logger.exception('Reconciliation did not work for order %s', order.name)
+ def _filtered_for_reconciliation(self):
+ filter_states = ['invoiced', 'done']
+ if self.env['ir.config_parameter'].get_param('point_of_sale.order_reconcile_mode', 'all') == 'partner_only':
+ return self.filtered(lambda order: order.state in filter_states and order.partner_id)
+ return self.filtered(lambda order: order.state in filter_states)
+
def _default_session(self):
return self.env['pos.session'].search([('state', '=', 'opened'), ('user_id', '=', self.env.uid)], limit=1)
diff --git a/addons/point_of_sale/models/pos_session.py b/addons/point_of_sale/models/pos_session.py
index 6f683d23638..ca0710de6ef 100644
--- a/addons/point_of_sale/models/pos_session.py
+++ b/addons/point_of_sale/models/pos_session.py
@@ -31,7 +31,7 @@ class PosSession(models.Model):
if order.state not in ('paid'):
raise UserError(_("You cannot confirm all orders of this session, because they don't have the 'paid' status"))
order.action_pos_order_done()
- orders_to_reconcile = session.order_ids.filtered(lambda order: order.state in ['invoiced', 'done'] and order.partner_id)
+ orders_to_reconcile = session.order_ids._filtered_for_reconciliation()
orders_to_reconcile.sudo()._reconcile_payments()
config_id = fields.Many2one(
diff --git a/addons/report_intrastat/report/report_intrastat_report.py b/addons/report_intrastat/report/report_intrastat_report.py
index 40dd21df0a8..012fd84ea1b 100644
--- a/addons/report_intrastat/report/report_intrastat_report.py
+++ b/addons/report_intrastat/report/report_intrastat_report.py
@@ -66,7 +66,7 @@ class ReportIntrastat(models.Model):
left join report_intrastat_code intrastat on pt.intrastat_id = intrastat.id
left join (res_partner inv_address
left join res_country inv_country on (inv_country.id = inv_address.country_id))
- on (inv_address.id = inv.partner_id)
+ on (inv_address.id = coalesce(inv.partner_shipping_id, inv.partner_id))
where
inv.state in ('open','paid')
and inv_line.product_id is not null