[MERGE] forward port branch saas-12.2 up to 78b3b650b0

This commit is contained in:
Christophe Simonis
2019-05-06 12:27:51 +02:00
195 changed files with 4772 additions and 677 deletions
+2
View File
@@ -45,6 +45,8 @@ def _auto_install_l10n(cr, registry):
'PL', 'PT', 'RO', 'SI', 'TR', 'UK', 'VE', 'VN'
]:
module_list.append('base_vat')
if country_code == 'MX':
module_list.append('l10n_mx_edi')
# European countries will be using SEPA
europe = env.ref('base.europe', raise_if_not_found=False)
+16 -6
View File
@@ -70,6 +70,12 @@ class AccountInvoice(models.Model):
self.amount_total_signed = self.amount_total * sign
self.amount_untaxed_signed = amount_untaxed_signed * sign
def _compute_sign_taxes(self):
for invoice in self:
sign = invoice.type in ['in_refund', 'out_refund'] and -1 or 1
invoice.amount_untaxed_invoice_signed = invoice.amount_untaxed * sign
invoice.amount_tax_signed = invoice.amount_tax * sign
@api.onchange('amount_total')
def _onchange_amount_total(self):
for inv in self:
@@ -347,8 +353,12 @@ class AccountInvoice(models.Model):
store=True, readonly=True, compute='_compute_amount', tracking=True)
amount_untaxed_signed = fields.Monetary(string='Untaxed Amount in Company Currency', currency_field='company_currency_id',
store=True, readonly=True, compute='_compute_amount')
amount_untaxed_invoice_signed = fields.Monetary(string='Untaxed Amount in Invoice Currency', currency_field='currency_id',
readonly=True, compute='_compute_sign_taxes')
amount_tax = fields.Monetary(string='Tax',
store=True, readonly=True, compute='_compute_amount')
amount_tax_signed = fields.Monetary(string='Tax in Invoice Currency', currency_field='currency_id',
readonly=True, compute='_compute_sign_taxes')
amount_total = fields.Monetary(string='Total',
store=True, readonly=True, compute='_compute_amount')
amount_total_signed = fields.Monetary(string='Total in Invoice Currency', currency_field='currency_id',
@@ -785,7 +795,7 @@ class AccountInvoice(models.Model):
# Subscribe internal users on the newly created bill
partners = self.env['res.partner'].browse(seen_partner_ids)
is_internal = lambda p: (p.user_ids and
all(p.user_ids.mapped(lambda u: u.user_has_groups('base.group_user'))))
all(p.user_ids.mapped(lambda u: u.has_group('base.group_user'))))
partners_to_subscribe = partners.filtered(is_internal)
if partners_to_subscribe:
invoice.message_subscribe([p.id for p in partners_to_subscribe])
@@ -1840,14 +1850,14 @@ class AccountInvoiceLine(models.Model):
def _set_taxes(self):
""" Used in on_change to set taxes and price"""
self.ensure_one()
if self.invoice_id.type in ('out_invoice', 'out_refund'):
taxes = self.product_id.taxes_id or self.account_id.tax_ids or self.invoice_id.company_id.account_sale_tax_id
else:
taxes = self.product_id.supplier_taxes_id or self.account_id.tax_ids or self.invoice_id.company_id.account_purchase_tax_id
# Keep only taxes of the company
company_id = self.company_id or self.env.user.company_id
taxes = taxes.filtered(lambda r: r.company_id == company_id)
if self.invoice_id.type in ('out_invoice', 'out_refund'):
taxes = self.product_id.taxes_id.filtered(lambda r: r.company_id == company_id) or self.account_id.tax_ids or self.invoice_id.company_id.account_sale_tax_id
else:
taxes = self.product_id.supplier_taxes_id.filtered(lambda r: r.company_id == company_id) or self.account_id.tax_ids or self.invoice_id.company_id.account_purchase_tax_id
self.invoice_line_tax_ids = fp_taxes = self.invoice_id.fiscal_position_id.map_tax(taxes, self.product_id, self.invoice_id.partner_id)
+1 -1
View File
@@ -1060,7 +1060,7 @@ class AccountMoveLine(models.Model):
partner_id = self.env['res.partner']._find_accounting_partner(self[0].partner_id).id
company_currency = self[0].account_id.company_id.currency_id
writeoff_currency = self[0].currency_id or company_currency
writeoff_currency = self[0].account_id.currency_id or company_currency
line_to_reconcile = self.env['account.move.line']
# Iterate and create one writeoff by journal
writeoff_moves = self.env['account.move']
+24
View File
@@ -108,6 +108,16 @@ class account_payment(models.Model):
# Check all invoices are open
if any(invoice.state != 'open' for invoice in invoices):
raise UserError(_("You can only register payments for open invoices"))
# Check if, in batch payments, there are not negative invoices and positive invoices
dtype = invoices[0].type
for inv in invoices[1:]:
if inv.type != dtype:
if ((dtype == 'in_refund' and inv.type == 'in_invoice') or
(dtype == 'in_invoice' and inv.type == 'in_refund')):
raise UserError(_("You cannot register payments for vendor bills and supplier refunds at the same time."))
if ((dtype == 'out_refund' and inv.type == 'out_invoice') or
(dtype == 'out_invoice' and inv.type == 'out_refund')):
raise UserError(_("You cannot register payments for customer invoices and credit notes at the same time."))
amount = self._compute_payment_amount(invoices, invoices[0].currency_id)
rec.update({
@@ -660,6 +670,20 @@ class account_payment(models.Model):
return vals
def _get_invoice_payment_amount(self, inv):
"""
Computes the amount covered by the current payment in the given invoice.
:param inv: an invoice object
:returns: the amount covered by the payment in the invoice
"""
self.ensure_one()
return sum([
data['amount']
for data in inv._get_payments_vals()
if data['account_payment_id'] == self.id
])
class payment_register(models.TransientModel):
_name = 'account.payment.register'
+2 -2
View File
@@ -14,8 +14,8 @@ class Users(models.Model):
super(Users, self)._check_one_user_type()
users_with_both_groups = self.filtered(lambda user:
user.user_has_groups('account.group_show_line_subtotals_tax_included') and
user.user_has_groups('account.group_show_line_subtotals_tax_excluded')
user.has_group('account.group_show_line_subtotals_tax_included') and
user.has_group('account.group_show_line_subtotals_tax_excluded')
)
if users_with_both_groups:
names = ", ".join(users_with_both_groups.mapped('name'))
@@ -64,6 +64,17 @@
<field name="category_id" ref="base.module_category_hidden"/>
</record>
<record id="account_analytic_line_rule_billing_user" model="ir.rule">
<field name="name">account.analytic.line.billing.user</field>
<field name="model_id" ref="analytic.model_account_analytic_line"/>
<field name="domain_force">[(1, '=', 1)]</field>
<field name="groups" eval="[(4, ref('account.group_account_invoice'))]"/>
<field name="perm_create" eval="1"/>
<field name="perm_write" eval="1"/>
<field name="perm_unlink" eval="1"/>
<field name="perm_read" eval="0"/>
</record>
</data>
@@ -277,6 +277,7 @@ var LineRenderer = Widget.extend(FieldManagerMixin, {
'field_changed': '_onFieldChanged',
}),
_avoidFieldUpdate: {},
MV_LINE_DEBOUNCE: 200,
/**
* create partner_id field in editable mode
@@ -289,6 +290,11 @@ var LineRenderer = Widget.extend(FieldManagerMixin, {
this.model = model;
this._initialState = state;
if (this.MV_LINE_DEBOUNCE) {
this._onSelectMoveLine = _.debounce(this._onSelectMoveLine, this.MV_LINE_DEBOUNCE, true);
} else {
this._onSelectMoveLine = this._onSelectMoveLine;
}
},
/**
* @override
@@ -41,6 +41,15 @@
@include o-position-absolute($bottom: 25%, $right: 0);
z-index: 1;
}
.o_kanban_group {
&:not(.o_column_folded) {
width: 450px + 2*$o-kanban-group-padding;
@include media-breakpoint-down(sm) {
width: 100%;
}
}
}
}
// Style for the widget "dashboard_graph"
@@ -585,6 +585,7 @@ odoo.define('account.reconciliation_tests', function (require) {
"use strict";
var ReconciliationClientAction = require('account.ReconciliationClientAction');
var ReconciliationRenderer = require('account.ReconciliationRenderer');
var demoData = require('account.reconciliation_tests.data');
var testUtils = require('web.test_utils');
@@ -592,7 +593,13 @@ var testUtils = require('web.test_utils');
QUnit.module('account', {
beforeEach: function () {
this.params = demoData.getParams();
}
testUtils.patch(ReconciliationRenderer.LineRenderer, {
MV_LINE_DEBOUNCE: 0,
});
},
afterEach: function () {
testUtils.unpatch(ReconciliationRenderer.LineRenderer);
},
}, function () {
QUnit.module('Reconciliation');
@@ -165,8 +165,8 @@
<field name="user_id"/>
<field name="date_due"/>
<field name="origin"/>
<field name="amount_untaxed" string="Tax Excluded" sum="Total"/>
<field name="amount_tax" sum="Total"/>
<field name="amount_untaxed_invoice_signed" string="Tax Excluded" sum="Total"/>
<field name="amount_tax_signed" string="Tax" sum="Total"/>
<field name="amount_total_signed" string="Total" sum="Total"/>
<field name="residual_signed" string="Amount Due" sum="Amount Due"/>
<field name="currency_id" invisible="1"/>
@@ -83,7 +83,7 @@
<div class="row mt16 o_portal_invoice_sidebar">
<!-- Sidebar -->
<t t-call="portal.portal_record_sidebar">
<t t-set="classes" t-value="'col-12 col-lg flex-lg-grow-0 d-print-none'"/>
<t t-set="classes" t-value="'col-lg-auto d-print-none'"/>
<t t-set="title">
<h2 class="mb-0">
<b t-if="invoice.residual > 0" t-field="invoice.residual"/>
@@ -46,7 +46,7 @@
<td><span t-field="inv.date_invoice"/></td>
<td><span t-field="inv.number"/></td>
<td class="text-right"><span t-field="inv.amount_total"/></td>
<td class="text-right"><span t-esc="inv.amount_total - inv.residual" t-options="{'widget': 'monetary', 'display_currency': inv.currency_id}"/></td>
<td class="text-right"><span t-esc="o._get_invoice_payment_amount(inv)" t-options="{'widget': 'monetary', 'display_currency': inv.currency_id}"/></td>
<td class="text-right"><span t-field="inv.residual"/></td>
</tr>
</tbody>
@@ -17,7 +17,7 @@
<field name="inherit_id" ref="account.invoice_form"/>
<field name="arch" type="xml">
<xpath expr="//button[@name='action_invoice_draft']" position="before">
<button name="action_invoice_cancel" type="object" states="draft,open,paid" string="Cancel" groups="account.group_account_invoice"/>
<button name="action_invoice_cancel" type="object" states="draft,open,in_payment,paid" string="Cancel" groups="account.group_account_invoice"/>
</xpath>
</field>
</record>
@@ -28,7 +28,7 @@
<field name="inherit_id" ref="account.invoice_supplier_form"/>
<field name="arch" type="xml">
<xpath expr="//button[@name='action_invoice_draft']" position="before">
<button name="action_invoice_cancel" type="object" states="draft,open,paid" string="Cancel" groups="account.group_account_invoice"/>
<button name="action_invoice_cancel" type="object" states="draft,open,in_payment,paid" string="Cancel" groups="account.group_account_invoice"/>
</xpath>
</field>
</record>
+2 -2
View File
@@ -44,7 +44,7 @@ class AuthSignupHome(Home):
lang=user_sudo.lang,
auth_login=werkzeug.url_encode({'auth_login': user_sudo.email}),
).send_mail(user_sudo.id, force_send=True)
return super(AuthSignupHome, self).web_login(*args, **kw)
return self.web_login(*args, **kw)
except UserError as e:
qcontext['error'] = e.name or e.value
except (SignupError, AssertionError) as e:
@@ -69,7 +69,7 @@ class AuthSignupHome(Home):
try:
if qcontext.get('token'):
self.do_signup(qcontext)
return super(AuthSignupHome, self).web_login(*args, **kw)
return self.web_login(*args, **kw)
else:
login = qcontext.get('login')
assert login, _("No login provided.")
@@ -38,6 +38,8 @@ class IrModule(models.Model):
installed_mods = [m.name for m in known_mods if m.state == 'installed']
terp = load_information_from_description_file(module, mod_path=path)
if not terp:
return False
values = self.get_values_from_terp(terp)
if 'version' in terp:
values['latest_version'] = terp['version']
@@ -133,8 +135,8 @@ class IrModule(models.Model):
try:
# assert mod_name.startswith('theme_')
path = opj(module_dir, mod_name)
self._import_module(mod_name, path, force=force)
success.append(mod_name)
if self._import_module(mod_name, path, force=force):
success.append(mod_name)
except Exception as e:
_logger.exception('Error while importing module')
errors[mod_name] = exception_to_unicode(e)
+1 -1
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record model="ir.config_parameter" id="show_effect">
<record model="ir.config_parameter" id="show_effect" forcecreate="False">
<field name="key">base_setup.show_effect</field>
<field name="value">True</field>
</record>
@@ -86,12 +86,18 @@ var AddToBoardMenu = Widget.extend({
var context = new Context(this.action.context);
context.add(searchQuery.context);
context.add({
group_by: pyUtils.eval('groupbys', searchQuery.groupBys || [])
group_by: searchQuery.groupBy,
orderedBy: searchQuery.orderedBy,
});
this.trigger_up('get_controller_query_params', {
callback: function (controllerContext) {
context.add(controllerContext);
callback: function (controllerQueryParams) {
var queryContext = controllerQueryParams.context;
var allContext = _.extend(
_.omit(controllerQueryParams, ['context']),
queryContext
);
context.add(allContext);
}
});
+2 -1
View File
@@ -272,7 +272,8 @@ var BoardRenderer = FormRenderer.extend({
searchQuery: {
context: context,
domain: domain,
groupBy: context.group_by || [],
groupBy: typeof context.group_by === 'string' && context.group_by ? [context.group_by] : context.group_by || [],
orderedBy: context.orderedBy || [],
},
withControlPanel: false,
});
+79 -3
View File
@@ -109,7 +109,7 @@ QUnit.test('display the no content helper', async function (assert) {
});
QUnit.test('basic functionality, with one sub action', async function (assert) {
assert.expect(25);
assert.expect(26);
var form = await createView({
View: BoardView,
@@ -118,7 +118,7 @@ QUnit.test('basic functionality, with one sub action', async function (assert) {
arch: '<form string="My Dashboard">' +
'<board style="2-1">' +
'<column>' +
'<action context="{}" view_mode="list" string="ABC" name="51" domain="[[\'foo\', \'!=\', \'False\']]"></action>' +
'<action context="{&quot;orderedBy&quot;: [{&quot;name&quot;: &quot;foo&quot;, &quot;asc&quot;: True}]}" view_mode="list" string="ABC" name="51" domain="[[\'foo\', \'!=\', \'False\']]"></action>' +
'</column>' +
'</board>' +
'</form>',
@@ -132,6 +132,12 @@ QUnit.test('basic functionality, with one sub action', async function (assert) {
}
if (route === '/web/dataset/search_read') {
assert.deepEqual(args.domain, [['foo', '!=', 'False']], "the domain should be passed");
assert.deepEqual(args.context.orderedBy, [{
'name': 'foo',
'asc': true,
}],
'orderedBy is present in the search read when specified on the custom action'
);
}
if (route === '/web/view/edit_custom') {
assert.step('edit custom');
@@ -687,7 +693,19 @@ QUnit.test('dashboard intercepts custom events triggered by sub controllers', as
});
QUnit.test('save actions to dashboard', async function (assert) {
assert.expect(3);
assert.expect(6);
testUtils.patch(ListController, {
getOwnedQueryParams: function () {
var result = this._super.apply(this, arguments);
result.context = {
'fire': 'on the bayou',
}
return result;
}
});
this.data['partner'].fields.foo.sortable = true;
var actionManager = await createActionManager({
data: this.data,
@@ -697,6 +715,16 @@ QUnit.test('save actions to dashboard', async function (assert) {
},
mockRPC: function (route, args) {
if (route === '/board/add_to_dashboard') {
assert.deepEqual(args.context_to_save.group_by, ['foo'],
'The group_by should have been saved');
assert.deepEqual(args.context_to_save.orderedBy,
[{
name: 'foo',
asc: true,
}],
'The orderedBy should have been saved');
assert.strictEqual(args.context_to_save.fire, 'on the bayou',
'The context of a controller should be passed and flattened');
assert.strictEqual(args.action_id, 1,
"should save the correct action");
assert.strictEqual(args.view_mode, 'list',
@@ -717,12 +745,22 @@ QUnit.test('save actions to dashboard', async function (assert) {
assert.containsOnce(actionManager, '.o_list_view',
"should display the list view");
// Sort the list
await testUtils.dom.click($('.o_column_sortable'));
// Group It
await testUtils.dom.click($('.o_search_options .o_dropdown button:contains(Group By)'));
await testUtils.dom.click($('.o_search_options .o_group_by_menu button'));
await testUtils.dom.click($('.o_search_options .o_group_by_menu button.o_apply_group'));
// add this action to dashboard
await testUtils.dom.click($('.o_search_options .o_dropdown button:contains(Favorites)'));
await testUtils.dom.click($('.o_add_to_board.o_menu_header'));
testUtils.fields.editInput($('input.o_add_to_board_input'), 'a name');
await testUtils.dom.click($('.o_add_to_board_confirm_button'));
testUtils.unpatch(ListController);
actionManager.destroy();
});
@@ -887,6 +925,44 @@ QUnit.test("Dashboard should use correct groupby", async function (assert) {
'</column>' +
'</board>' +
'</form>',
mockRPC: function (route, args) {
if (args.method === 'read_group') {
assert.deepEqual(args.kwargs.groupby, ['bar'],
'user defined groupby should have precedence on action groupby');
}
if (route === '/web/action/load') {
return Promise.resolve({
res_model: 'partner',
context: {
group_by: 'some_field',
},
views: [[4, 'list']],
});
}
return this._super.apply(this, arguments);
},
archs: {
'partner,4,list':
'<list string="Partner"><field name="foo"/></list>',
},
});
form.destroy();
});
QUnit.test("Dashboard should use correct groupby when defined as a string of one field", function (assert) {
assert.expect(1);
var form = createView({
View: BoardView,
model: 'board',
data: this.data,
arch: '<form string="My Dashboard">' +
'<board style="2-1">' +
'<column>' +
'<action context="{\'group_by\': \'bar\'}" string="ABC" name="51"></action>' +
'</column>' +
'</board>' +
'</form>',
mockRPC: function (route, args) {
if (args.method === 'web_read_group') {
assert.deepEqual(args.kwargs.groupby, ['bar'],
+3
View File
@@ -8,6 +8,7 @@
<field name="email_from">${object.event_id.user_id.email or ''}</field>
<field name="email_to" >${('' if object.partner_id and object.partner_id.email and object.partner_id.email==object.email else object.email|safe)}</field>
<field name="partner_to">${object.partner_id and object.partner_id.email and object.partner_id.email==object.email and object.partner_id.id or False }</field>
<field name="lang">${object.partner_id.lang}</field>
<field name="body_html" type="html">
<div>
% set colors = {'needsAction': 'grey', 'accepted': 'green', 'tentative': '#FFFF00', 'declined': 'red'}
@@ -91,6 +92,7 @@
<field name="email_from">${object.event_id.user_id.email or ''}</field>
<field name="email_to" >${('' if object.partner_id and object.partner_id.email and object.partner_id.email==object.email else object.email|safe)}</field>
<field name="partner_to">${object.partner_id and object.partner_id.email and object.partner_id.email==object.email and object.partner_id.id or False }</field>
<field name="lang">${object.partner_id.lang}</field>
<field name="body_html" type="html">
<div>
% set colors = {'needsAction': 'grey', 'accepted': 'green', 'tentative': '#FFFF00', 'declined': 'red'}
@@ -174,6 +176,7 @@
<field name="email_from">${object.event_id.user_id.email or ''}</field>
<field name="email_to" >${('' if object.partner_id and object.partner_id.email and object.partner_id.email==object.email else object.email|safe)}</field>
<field name="partner_to">${object.partner_id and object.partner_id.email and object.partner_id.email==object.email and object.partner_id.id or False }</field>
<field name="lang">${object.partner_id.lang}</field>
<field name="body_html" type="html">
<div>
% set colors = {'needsAction': 'grey', 'accepted': 'green', 'tentative': '#FFFF00', 'declined': 'red'}
+2 -3
View File
@@ -406,9 +406,8 @@ class AlarmManager(models.AbstractModel):
all_meetings = self.get_next_potential_limit_alarm('notification', partner_id=partner.id)
time_limit = 3600 * 24 # return alarms of the next 24 hours
for event_id in all_meetings:
max_delta = all_meetings[event_id]['max_duration']
meeting = self.env['calendar.event'].browse(event_id)
for meeting in self.env['calendar.event'].search([('id', 'in', list(all_meetings))]): # cannot browse
max_delta = all_meetings[meeting.id]['max_duration']
if meeting.recurrency:
b_found = False
last_found = False
+2 -1
View File
@@ -26,6 +26,7 @@ class Message(models.Model):
def _find_allowed_model_wise(self, doc_model, doc_dict):
if doc_model == 'calendar.event':
order = self._context.get('order', self.env[doc_model]._order)
for virtual_id in self.env[doc_model].browse(doc_dict).get_recurrent_ids([], order=order):
records = self.env[doc_model].search([('id', 'in', list(doc_dict))])
for virtual_id in records.get_recurrent_ids([], order=order):
doc_dict.setdefault(virtual_id, doc_dict[get_real_ids(virtual_id)])
return super(Message, self)._find_allowed_model_wise(doc_model, doc_dict)
+3 -3
View File
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="sales_team.salesteam_website_sales" model="crm.team">
<record id="sales_team.salesteam_website_sales" model="crm.team" forcecreate="False">
<field name="use_opportunities" eval="False"/>
</record>
<record id="sales_team.pos_sales_team" model="crm.team">
<record id="sales_team.pos_sales_team" model="crm.team" forcecreate="False">
<field name="use_opportunities" eval="False"/>
</record>
<record id="sales_team.ebay_sales_team" model="crm.team">
<record id="sales_team.ebay_sales_team" model="crm.team" forcecreate="False">
<field name="use_opportunities" eval="False"/>
</record>
+1 -1
View File
@@ -5,7 +5,7 @@
<field name="groups_id" eval="[(4,ref('sales_team.group_sale_salesman'))]"/>
</record>
<record id="sales_team.team_sales_department" model="crm.team">
<record id="sales_team.team_sales_department" model="crm.team" forcecreate="False">
<field name="alias_name">sales</field>
<field name="alias_user_id" ref="base.user_admin"/>
<field name="company_id" eval="False"/>
+7 -1
View File
@@ -92,9 +92,15 @@ class SaleOrder(models.Model):
taxes_ids = self.fiscal_position_id.map_tax(taxes, carrier.product_id, self.partner_id).ids
# Create the sales order line
carrier_with_partner_lang = carrier.with_context(lang=self.partner_id.lang)
if carrier_with_partner_lang.product_id.description_sale:
so_description = '%s: %s' % (carrier_with_partner_lang.name,
carrier_with_partner_lang.product_id.description_sale)
else:
so_description = carrier_with_partner_lang.name
values = {
'order_id': self.id,
'name': carrier.with_context(lang=self.partner_id.lang).name,
'name': so_description,
'product_uom_qty': 1,
'product_uom': carrier.product_id.uom_id.id,
'product_id': carrier.product_id.id,
+1 -1
View File
@@ -94,7 +94,7 @@
<label for="free_over"/>
</div>
<field nolabel="1" name="amount" attrs="{'required':[('free_over','!=', False)], 'invisible':[('free_over','=', False)]}"/>
<field name="product_id" context="{'default_type': 'service', 'sale_ok': False, 'purchase_ok': False}" />
<field name="product_id" context="{'default_type': 'service', 'default_sale_ok': False, 'default_purchase_ok': False}" />
<field name="company_id" groups="base.group_multi_company"/>
<field name="can_generate_return" invisible="1"/>
<field name="return_label_on_delivery" attrs="{'invisible': [('can_generate_return', '=', False)]}"/>
@@ -53,7 +53,7 @@ class ChooseDeliveryCarrier(models.TransientModel):
def _compute_available_carrier(self):
carriers = self.env['delivery.carrier'].search([])
for rec in self:
rec.available_carrier_ids = carriers.available_carriers(rec.partner_id) if rec.partner_id else carriers
rec.available_carrier_ids = carriers.available_carriers(rec.order_id.partner_shipping_id) if rec.partner_id else carriers
def update_price(self):
vals = self.carrier_id.rate_shipment(self.order_id)
+1 -1
View File
@@ -9,7 +9,7 @@ from odoo.http import Controller, request, route, content_disposition
class EventController(Controller):
@route(['''/event/<model("event.event", "[('state', 'in', ('confirm', 'done'))]"):event>/ics'''], type='http', auth="public")
def event_ics_file(self, event):
def event_ics_file(self, event, **kwargs):
if not event or not event.registration_ids:
return request.not_found()
files = event._get_ics_file()
+2 -2
View File
@@ -42,11 +42,11 @@ class SaleOrderLine(models.Model):
registrations linked to this line. This method update existing registrations
and create new one for missing one. """
Registration = self.env['event.registration'].sudo()
registrations = Registration.search([('sale_order_line_id', 'in', self.ids), ('state', '!=', 'cancel')])
registrations = Registration.search([('sale_order_line_id', 'in', self.ids)])
for so_line in self.filtered('event_id'):
existing_registrations = registrations.filtered(lambda self: self.sale_order_line_id.id == so_line.id)
if confirm:
existing_registrations.filtered(lambda self: self.state != 'open').confirm_registration()
existing_registrations.filtered(lambda self: self.state not in ['open', 'cancel']).confirm_registration()
if cancel_to_draft:
existing_registrations.filtered(lambda self: self.state == 'cancel').do_draft()
+7
View File
@@ -304,6 +304,13 @@
<filter string="Archived" name="inactive" domain="[('active','=',False)]"/>
<separator/>
<filter string="Unread Messages" name="message_needaction" domain="[('message_needaction', '=', True)]"/>
<separator/>
<filter string="Late Activities" name="activities_overdue"
domain="[('activity_ids.date_deadline', '&lt;', context_today().strftime('%Y-%m-%d'))]"/>
<filter string="Today Activities" name="activities_today"
domain="[('activity_ids.date_deadline', '=', context_today().strftime('%Y-%m-%d'))]"/>
<filter string="Future Activities" name="activities_upcoming_all"
domain="[('activity_ids.date_deadline', '&gt;', context_today().strftime('%Y-%m-%d'))]"/>
<group expand="0" string="Group By">
<filter name="group_manager" string="Manager" domain="[]" context="{'group_by':'parent_id'}"/>
<filter name="group_coach" string="Coach" domain="[]" context="{'group_by':'coach_id'}"/>
+1 -1
View File
@@ -369,7 +369,7 @@ class HrExpense(models.Model):
# get move line values
move_line_values = move_line_values_by_expense.get(expense.id)
move_line_dst = move_line_values[-1]
total_amount = abs(move_line_dst['debit'])
total_amount = move_line_dst['debit'] or -move_line_dst['credit']
total_amount_currency = move_line_dst['amount_currency']
# create one more move line, a counterline for the total on payable account
+9 -6
View File
@@ -335,19 +335,22 @@ class HolidaysRequest(models.Model):
@api.onchange('holiday_type')
def _onchange_type(self):
if self.holiday_type == 'employee' and not self.employee_id:
self.employee_id = self.env.user.employee_ids[:1].id
if self.holiday_type == 'employee':
if not self.employee_id:
self.employee_id = self.env.user.employee_ids[:1].id
self.mode_company_id = False
self.category_id = False
elif self.holiday_type == 'company' and not self.mode_company_id:
elif self.holiday_type == 'company':
self.employee_id = False
self.mode_company_id = self.env.user.company_id.id
if not self.mode_company_id:
self.mode_company_id = self.env.user.company_id.id
self.category_id = False
elif self.holiday_type == 'department' and not self.department_id:
elif self.holiday_type == 'department':
self.employee_id = False
self.mode_company_id = False
self.department_id = self.env.user.employee_ids[:1].department_id.id
self.category_id = False
if not self.department_id:
self.department_id = self.env.user.employee_ids[:1].department_id.id
elif self.holiday_type == 'category':
self.employee_id = False
self.mode_company_id = False
@@ -244,16 +244,26 @@ class HolidaysAllocation(models.Model):
@api.onchange('holiday_type')
def _onchange_type(self):
if self.holiday_type == 'employee' and not self.employee_id:
if self.env.user.employee_ids:
self.employee_id = self.env.user.employee_ids[0]
if self.holiday_type == 'employee':
if not self.employee_id:
self.employee_id = self.env.user.employee_ids[:1].id
self.mode_company_id = False
self.category_id = False
elif self.holiday_type == 'company':
self.employee_id = False
if not self.mode_company_id:
self.mode_company_id = self.env.user.company_id.id
self.category_id = False
elif self.holiday_type == 'department':
if self.env.user.employee_ids:
self.department_id = self.department_id or self.env.user.employee_ids[0].department_id
self.employee_id = None
else:
self.employee_id = None
self.department_id = None
self.employee_id = False
self.mode_company_id = False
self.category_id = False
if not self.department_id:
self.department_id = self.env.user.employee_ids[:1].department_id.id
elif self.holiday_type == 'category':
self.employee_id = False
self.mode_company_id = False
self.department_id = False
@api.onchange('employee_id')
def _onchange_employee(self):
@@ -6,6 +6,7 @@ from dateutil.relativedelta import relativedelta
from odoo import fields
from odoo.exceptions import ValidationError
from odoo.tools import mute_logger
from odoo.tests.common import Form
from odoo.addons.hr_holidays.tests.common import TestHrHolidaysBase
@@ -150,3 +151,25 @@ class TestLeaveRequests(TestHrHolidaysBase):
'date_to': fields.Datetime.from_string('2017-07-11 19:00:00'),
'number_of_days': 1,
})
@mute_logger('odoo.models.unlink', 'odoo.addons.mail.models.mail_mail')
def test_department_leave(self):
""" Create a department leave """
self.employee_hrmanager.write({'department_id': self.hr_dept.id})
self.assertFalse(self.env['hr.leave'].search([('employee_id', 'in', self.hr_dept.member_ids.ids)]))
leave_form = Form(self.env['hr.leave'].sudo(self.user_hrmanager))
leave_form.holiday_status_id = self.holidays_type_1
leave_form.holiday_type = 'department'
leave_form.department_id = self.hr_dept
leave = leave_form.save()
leave.action_approve()
member_ids = self.hr_dept.member_ids.ids
self.assertEqual(self.env['hr.leave'].search_count([('employee_id', 'in', member_ids)]), len(member_ids), "Leave should be created for members of department")
@mute_logger('odoo.models.unlink', 'odoo.addons.mail.models.mail_mail')
def test_allocation_request(self):
""" Create an allocation request """
# employee should be set to current user
allocation_form = Form(self.env['hr.leave.allocation'].sudo(self.user_employee))
allocation_form.holiday_status_id = self.holidays_type_1
allocation = allocation_form.save()
@@ -64,7 +64,7 @@
</field>
</record>
<record id="hr_employee_view_kanban" model="ir.ui.view">
<record id="hr_employee_view_kanban_inherit" model="ir.ui.view">
<field name="name">hr.employee</field>
<field name="model">hr.employee</field>
<field name="inherit_id" ref="hr.hr_kanban_view_employees"/>
+7 -4
View File
@@ -9,7 +9,7 @@
function longpolling() {
$.ajax({
type: 'POST',
url: 'http://'+window.location.host+'/point_of_sale/get_serialized_order',
url: window.location.origin+'/point_of_sale/get_serialized_order',
dataType: 'json',
beforeSend: function(xhr){xhr.setRequestHeader('Content-Type', 'application/json');},
data: JSON.stringify({jsonrpc: '2.0'}),
@@ -47,14 +47,17 @@
foreign_js();
}
}
},
complete: function(jqXHR,err) {
if (!stop_longpolling) {
longpolling();
}
},
error: function (jqXHR, status, err) {
if (!stop_longpolling) {
setTimeout(longpolling, 5000);
}
},
timeout: 30000,
});
};
+1 -1
View File
@@ -112,7 +112,7 @@
<field name="type_tax_use">sale</field>
<field name="amount">100</field>
<field name="amount_type">group</field>
<field name="children_tax_ids" eval="[(6,0,[ref('pst_bc_sale_en')])]"/>
<field name="children_tax_ids" eval="[(6,0,[ref('pst_bc_sale_en'), ref('gstpst_sale_bc_gst_en')])]"/>
<field name="tag_ids" eval="[(6,0,[ref('tag_gstpst_bc_sale')])]"/>
<field name="tax_group_id" ref="tax_group_fix"/>
</record>
+5 -2
View File
@@ -36,6 +36,9 @@ class MailTemplate(models.Model):
pdf = self.env.ref('l10n_ch.l10n_ch_isr_report').render_qweb_pdf([res_id])[0]
pdf = base64.b64encode(pdf)
attachments_list = multi_mode and rslt[res_id]['attachments'] or rslt['attachments']
attachments_list.append((report_name, pdf))
attachments_list = multi_mode and rslt[res_id].get('attachments', False) or rslt.get('attachments', False)
if attachments_list:
attachments_list.append((report_name, pdf))
else:
rslt[res_id]['attachments'] = [(report_name, pdf)]
return rslt
@@ -510,7 +510,7 @@
"account_1784","1784","USt EG-Erwerb Neufahrzeuge ohne UStID","l10n_de.tag_de_asset_bs_B_II_4","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
"account_1785","1785","Umsatzsteuer nach § 13b UStG","l10n_de.tag_de_asset_bs_B_II_4","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
"account_1787","1787","Umsatzsteuer nach § 13b UStG 19%","l10n_de.tag_de_asset_bs_B_II_4","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
"account_1788","1788","Aufgeschobene Einfuhr-Umsatzsteuer","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
"account_1788","1788","Aufgeschobene Einfuhr-Umsatzsteuer","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","True"
"account_1789","1789","Umsatzsteuer laufendes Jahr","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
"account_1790","1790","Umsatzsteuer Vorjahr","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
"account_1791","1791","Umsatzsteuer frühere Jahre","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr03.l10n_de_chart_template","False"
@@ -845,9 +845,10 @@
"account_3505","3505","Wareneingang 5,5% Vorsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3540","3540","Wareneingang 10,7% Vorsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3550","3550","Steuerfreier EG-Erwerb","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3551","3551","Wareneingang, im Drittland steuerbar","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3551","3551","Wareneingang, im Drittland steuerbar (19%)","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3552","3552","Erwerb 1. Abnehmer im Dreiecksgeschäft","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3553","3553","Erwerb Waren als letzter Abnehmer innerhalb Dreiecksgeschäft 19% Vorsteuer und 19% Umsatzsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3557","3557","Wareneingang, im Drittland steuerbar (7%)","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3558","3558","Wareneingang, im anderen EG-Land stb.","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3559","3559","Steuerfreie Einfuhren","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
"account_3560","3560","Waren aus USt-Lager 7% Vorsteuer, 7% USt","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr03.l10n_de_chart_template","False"
@@ -1214,7 +1215,7 @@
"account_8730","8730","Gewährte Skonti","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8731","8731","Gewährte Skonti 7% USt","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8736","8736","Gewährte Skonti 19% USt","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8738","8738","Gewährte Skonti aus Lieferungen von Mobilfunkgeräten/Schaltkreisen, für die der Leistungsempfänger die Umsatzsteuer nach § 13b UStG schuldet","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8738","8738","Gewährte Skonti aus Lieferungen von Mobilfunkgeräten/Schaltkreisen, für die der Leistungsempfänger die Umsatzsteuer nach § 13b Abs. 2 Nr. 10 UStG schuldet","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8741","8741","Gewährte Skonti Leistungen §13b UStG","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8742","8742","Gewährte Skonti aus Erlöse aus im anderen EU-Land steuerpflichtigen sonstigen Leistungen, für die der Leistungsempfänger die Umsatzsteuer schuldet","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
"account_8743","8743","Gewährte Skonti stfr. EG-Lieferung","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr03.l10n_de_chart_template","False"
@@ -1280,4 +1281,5 @@
"account_9001","9001","Saldenvorträge","","account.data_account_type_other_income","l10n_de_skr03.l10n_de_chart_template","False"
"account_9008","9008","Saldenvorträge Debitoren","","account.data_account_type_other_income","l10n_de_skr03.l10n_de_chart_template","False"
"account_9009","9009","Saldenvorträge Kreditoren","","account.data_account_type_other_income","l10n_de_skr03.l10n_de_chart_template","False"
"account_9090","9090","Summenvortragskonto","","account.data_account_type_other_income","l10n_de_skr03.l10n_de_chart_template","False"
"account_9089","9089","Offene Posten aus 2019","","account.data_account_type_other_income","l10n_de_skr03.l10n_de_chart_template","False"
"account_9090","9090","Summenvortragskonto","","account.data_account_type_other_income","l10n_de_skr03.l10n_de_chart_template","False"
1 id code name tag_ids/id user_type_id/id chart_template_id/id reconcile
510 account_1784 1784 USt EG-Erwerb Neufahrzeuge ohne UStID l10n_de.tag_de_asset_bs_B_II_4 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False
511 account_1785 1785 Umsatzsteuer nach § 13b UStG l10n_de.tag_de_asset_bs_B_II_4 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False
512 account_1787 1787 Umsatzsteuer nach § 13b UStG 19% l10n_de.tag_de_asset_bs_B_II_4 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False
513 account_1788 1788 Aufgeschobene Einfuhr-Umsatzsteuer l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False True
514 account_1789 1789 Umsatzsteuer laufendes Jahr l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False
515 account_1790 1790 Umsatzsteuer Vorjahr l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False
516 account_1791 1791 Umsatzsteuer frühere Jahre l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr03.l10n_de_chart_template False
845 account_3505 3505 Wareneingang 5,5% Vorsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
846 account_3540 3540 Wareneingang 10,7% Vorsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
847 account_3550 3550 Steuerfreier EG-Erwerb l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
848 account_3551 3551 Wareneingang, im Drittland steuerbar Wareneingang, im Drittland steuerbar (19%) l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
849 account_3552 3552 Erwerb 1. Abnehmer im Dreiecksgeschäft l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
850 account_3553 3553 Erwerb Waren als letzter Abnehmer innerhalb Dreiecksgeschäft 19% Vorsteuer und 19% Umsatzsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
851 account_3557 3557 Wareneingang, im Drittland steuerbar (7%) l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
852 account_3558 3558 Wareneingang, im anderen EG-Land stb. l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
853 account_3559 3559 Steuerfreie Einfuhren l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
854 account_3560 3560 Waren aus USt-Lager 7% Vorsteuer, 7% USt l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr03.l10n_de_chart_template False
1215 account_8730 8730 Gewährte Skonti l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1216 account_8731 8731 Gewährte Skonti 7% USt l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1217 account_8736 8736 Gewährte Skonti 19% USt l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1218 account_8738 8738 Gewährte Skonti aus Lieferungen von Mobilfunkgeräten/Schaltkreisen, für die der Leistungsempfänger die Umsatzsteuer nach § 13b UStG schuldet Gewährte Skonti aus Lieferungen von Mobilfunkgeräten/Schaltkreisen, für die der Leistungsempfänger die Umsatzsteuer nach § 13b Abs. 2 Nr. 10 UStG schuldet l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1219 account_8741 8741 Gewährte Skonti Leistungen §13b UStG l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1220 account_8742 8742 Gewährte Skonti aus Erlöse aus im anderen EU-Land steuerpflichtigen sonstigen Leistungen, für die der Leistungsempfänger die Umsatzsteuer schuldet l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1221 account_8743 8743 Gewährte Skonti stfr. EG-Lieferung l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr03.l10n_de_chart_template False
1281 account_9001 9001 Saldenvorträge account.data_account_type_other_income l10n_de_skr03.l10n_de_chart_template False
1282 account_9008 9008 Saldenvorträge Debitoren account.data_account_type_other_income l10n_de_skr03.l10n_de_chart_template False
1283 account_9009 9009 Saldenvorträge Kreditoren account.data_account_type_other_income l10n_de_skr03.l10n_de_chart_template False
1284 account_9090 account_9089 9090 9089 Summenvortragskonto Offene Posten aus 2019 account.data_account_type_other_income l10n_de_skr03.l10n_de_chart_template False
1285 account_9090 9090 Summenvortragskonto account.data_account_type_other_income l10n_de_skr03.l10n_de_chart_template False
@@ -77,7 +77,74 @@
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_93')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="tax_eu_19_purchase_ust_no_vst_skr03" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">19% Umsatzsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">19% USt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">-19</field>
<field name="refund_account_id" ref="account_1779"/>
<field name="account_id" ref="account_1779"/>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_89')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_eu_19_purchase_vst_no_vst_skr03" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">19% Vorsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">19% VSt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">19</field>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_eu_19_purchase_no_vst_skr03" model="account.tax.template">
<field name="sequence">20</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Innergem. Erwerb 19%USt/0%VSt</field>
<field name="description">innergem. Erwerb 19% - 0% Vorsteuer</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_eu_19_purchase_ust_no_vst_skr03'), ref('tax_eu_19_purchase_vst_no_vst_skr03')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_eu_7_purchase_ust_no_vst_skr03" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">7% Umsatzsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">7% USt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">-7</field>
<field name="refund_account_id" ref="account_1779"/>
<field name="account_id" ref="account_1779"/>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_93')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_7_purchase_vst_no_vst_skr03" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">7% Vorsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">7% VSt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">7</field>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_7_purchase_no_vst_skr03" model="account.tax.template">
<field name="sequence">20</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Innergem. Erwerb 7%USt/0%VSt</field>
<field name="description">innergem. Erwerb 7% - 0% Vorsteuer</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_eu_7_purchase_ust_no_vst_skr03'), ref('tax_eu_7_purchase_vst_no_vst_skr03')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_car_purchase_ust_skr03" model="account.tax.template">
<field name="sequence">99</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
@@ -163,29 +230,75 @@
<record id="tax_import_19_skr03" model="account.tax.template">
<field name="sequence">20</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">19% Einfuhrumsatzsteuer</field>
<field name="name">19% Einfuhrumsatzsteuer (abzugsf. Vorsteuer)</field>
<field name="description">19% EUSt</field>
<field name="amount_type">percent</field>
<field name="amount">19</field>
<field name="refund_account_id" ref="account_1588"/>
<field name="account_id" ref="account_1588"/>
<field name="type_tax_use">purchase</field>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_62')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_import_7_skr03" model="account.tax.template">
<record id="tax_import_19_payable_skr03" model="account.tax.template">
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">19% Einfuhrumsatzsteuer (zu bezahlender Aufschub)</field>
<field name="description">19% EUSt (zu bezahlender Aufschub)</field>
<field name="amount_type">percent</field>
<field name="amount">-19</field>
<field name="refund_account_id" ref="account_1788"/>
<field name="account_id" ref="account_1788"/>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_import_19_and_payable_skr03" model="account.tax.template">
<field name="sequence">21</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">7% Einfuhrumsatzsteuer</field>
<field name="description">7% EUSt</field>
<field name="name">19% Einfuhrumsatzsteuer (§21 Abs.3 UstG)</field>
<field name="description">Einfuhrumsatzsteuer 19%</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_import_19_skr03'), ref('tax_import_19_payable_skr03')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_import_7_skr03" model="account.tax.template">
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">7% Einfuhrumsatzsteuer (abzugsf. Vorsteuer)</field>
<field name="description">7% EUSt (abzugsf. Vorsteuer)</field>
<field name="amount_type">percent</field>
<field name="amount">7</field>
<field name="refund_account_id" ref="account_1588"/>
<field name="account_id" ref="account_1588"/>
<field name="type_tax_use">purchase</field>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_62')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_import_7_payable_skr03" model="account.tax.template">
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">7% Einfuhrumsatzsteuer (zu bezahlender Aufschub)</field>
<field name="description">7% EUSt (zu bezahlender Aufschub)</field>
<field name="amount_type">percent</field>
<field name="amount">-7</field>
<field name="refund_account_id" ref="account_1788"/>
<field name="account_id" ref="account_1788"/>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_import_7_and_payable_skr03" model="account.tax.template">
<field name="sequence">21</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">7% Einfuhrumsatzsteuer (§21 Abs.3 UstG)</field>
<field name="description">Einfuhrumsatzsteuer 7%</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_import_7_skr03'), ref('tax_import_7_payable_skr03')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_purchase_tax_free_skr03" model="account.tax.template">
<field name="sequence">22</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
@@ -816,7 +929,6 @@
<field name="children_tax_ids" eval="[(6,0,[ref('tax_ust_19_purchase_3eck_last_skr03'), ref('tax_vst_19_purchase_3eck_last_skr03')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="tax_ust_19_purchase_13b_werk_ausland_skr03" model="account.tax.template">
<field name="sequence">105</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
@@ -969,23 +1081,38 @@
<field name="children_tax_ids" eval="[(6,0,[ref('tax_ust_7_purchase_13a_auslagerung_skr03'), ref('tax_vst_7_purchase_13a_auslagerung_skr03')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="fiscal_position_non_eu_partner_service_skr03" model="account.fiscal.position.template">
<record id="fiscal_position_domestic_skr03" model="account.fiscal.position.template">
<field name="sequence">1</field>
<field name="name">Geschäftspartner Inland</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Dienstleister Ausland</field>
<field name="auto_apply" eval="True" />
<field name="country_id" ref="base.de"></field>
</record>
<record id="fiscal_position_non_eu_partner_service_skr03" model="account.fiscal.position.template">
<field name="sequence">6</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Dienstleister Ausland (Nicht-EU)</field>
</record>
<record id="fiscal_position_non_eu_partner_skr03" model="account.fiscal.position.template">
<field name="sequence">5</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Geschäftspartner Ausland</field>
<field name="name">Geschäftspartner Ausland (Nicht-EU)</field>
</record>
<record id="fiscal_position_eu_vat_id_partner_skr03" model="account.fiscal.position.template">
<field name="sequence">2</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Geschäftspartner EU (mit USt-ID)</field>
<field name="auto_apply" eval="True" />
<field name="country_group_id" ref="base.europe"></field>
</record>
<record id="fiscal_position_eu_vat_id_partner_service_skr03" model="account.fiscal.position.template">
<field name="sequence">3</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Dienstleister EU (mit USt-ID)</field>
<field name="vat_required" eval="True" />
</record>
<record id="fiscal_position_eu_no_id_partner_skr03" model="account.fiscal.position.template">
<field name="sequence">4</field>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
<field name="name">Geschäftspartner EU (ohne USt-ID)</field>
</record>
@@ -1021,12 +1148,12 @@
</record>
<record id="account_fiscal_position_tax_eu_no_id_purchase_19_skr03" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_eu_no_id_partner_skr03"/>
<field name="tax_dest_id" ref="tax_import_19_skr03"/>
<field name="tax_dest_id" ref="tax_eu_19_purchase_no_vst_skr03"/>
<field name="tax_src_id" ref="tax_vst_19_skr03"/>
</record>
<record id="account_fiscal_position_tax_eu_no_id_purchase_7_skr03" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_eu_no_id_partner_skr03"/>
<field name="tax_dest_id" ref="tax_import_7_skr03"/>
<field name="tax_dest_id" ref="tax_eu_7_purchase_no_vst_skr03"/>
<field name="tax_src_id" ref="tax_vst_7_skr03"/>
</record>
<record id="account_fiscal_position_tax_eu_no_id_sale_19_skr03" model="account.fiscal.position.tax.template">
@@ -1056,7 +1183,7 @@
</record>
<record id="account_fiscal_position_tax_non_eu_purchase_19_skr03" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr03"/>
<field name="tax_dest_id" ref="tax_import_19_skr03"/>
<field name="tax_dest_id" ref="tax_import_19_and_payable_skr03"/>
<field name="tax_src_id" ref="tax_vst_19_skr03"/>
</record>
<record id="account_fiscal_position_tax_non_eu_purchase_services_19_skr03" model="account.fiscal.position.tax.template">
@@ -1066,7 +1193,7 @@
</record>
<record id="account_fiscal_position_tax_non_eu_purchase_7_skr03" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr03"/>
<field name="tax_dest_id" ref="tax_import_7_skr03"/>
<field name="tax_dest_id" ref="tax_import_7_and_payable_skr03"/>
<field name="tax_src_id" ref="tax_vst_7_skr03"/>
</record>
@@ -1138,7 +1265,7 @@
<record id="account_fiscal_position_account_non_eu_purchase_19_skr03" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr03"/>
<field name="account_src_id" ref="account_3400" />
<field name="account_dest_id" ref="account_3435" />
<field name="account_dest_id" ref="account_3551" />
</record>
<record id="account_fiscal_position_acc_non_eu_purchase_services_19_skr03" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_service_skr03"/>
@@ -1148,7 +1275,7 @@
<record id="account_fiscal_position_account_non_eu_purchase_7_skr03" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr03"/>
<field name="account_src_id" ref="account_3300" />
<field name="account_dest_id" ref="account_3430" />
<field name="account_dest_id" ref="account_3557" />
</record>
<record id="account_fiscal_position_account_eu_no_id_sale_19_skr03" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_eu_no_id_partner_skr03"/>
@@ -1239,11 +1366,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3066" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_no_vst_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3067" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_no_vst_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3070" model="account.account.template">
@@ -1359,11 +1486,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3430" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_7_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_no_vst_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3435" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_no_vst_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3440" model="account.account.template">
@@ -1379,17 +1506,21 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3550" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_purchase_tax_free_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3551" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_import_19_and_payable_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3553" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_3eck_last_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3557" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_import_7_and_payable_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_3560" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_7_purchase_13a_auslagerung_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
@@ -1546,12 +1677,16 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_sale_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8130" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_3eck_first_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8135" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_newcar_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8140" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_ohne_vst')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8150" model="account.account.template">
@@ -1567,7 +1702,7 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8194" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8195" model="account.account.template">
@@ -1583,23 +1718,27 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8310" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_ust_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8315" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8331" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_goods_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8335" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_free_mobil_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8336" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_not_taxable_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8337" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_goods_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_free_bau_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8338" model="account.account.template">
@@ -1619,11 +1758,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8514" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8515" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8516" model="account.account.template">
@@ -1635,11 +1774,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8574" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8575" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8576" model="account.account.template">
@@ -1658,6 +1797,10 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8609" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8611" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
@@ -1674,6 +1817,22 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8701" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8702" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8703" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8704" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr03_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8705" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_export_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
@@ -1691,11 +1850,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8725" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_ust_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8726" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8731" model="account.account.template">
@@ -1706,8 +1865,12 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8738" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_13b_mobil_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8741" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_goods_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_free_mobil_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8742" model="account.account.template">
@@ -1715,11 +1878,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8746" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_ust_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8748" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8750" model="account.account.template">
@@ -1747,7 +1910,7 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8808" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_sale_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8819" model="account.account.template">
@@ -1759,11 +1922,11 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8827" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_third_country_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_export_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8828" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_sale_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8850" model="account.account.template">
@@ -1799,7 +1962,7 @@
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8919" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr03')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_not_taxable_skr03')])]"/>
<field name="chart_template_id" ref="l10n_de_chart_template"/>
</record>
<record id="account_8920" model="account.account.template">
@@ -548,7 +548,7 @@
"chart_skr04_3840","3840","USt laufendes Jahr","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_3841","3841","USt Vorjahr","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_non_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_3845","3845","USt frühere Jahre","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_non_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_3850","3850","Aufgeschobene Einfuhrumsatzsteuer","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_3850","3850","Aufgeschobene Einfuhrumsatzsteuer","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04","True"
"chart_skr04_3851","3851","Unrichtig oder unberechtigt ausgewiesene Umsatzsteuer","l10n_de.tag_de_asset_bs_B_II_4","account.data_account_type_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_3854","3854","Steuerzahlungen an andere Länder ","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_3860","3860","Verbindlichkeiten aus Umsatzsteuer","l10n_de.tag_de_liabilities_bs_D_8","account.data_account_type_current_liabilities","l10n_de_skr04.l10n_chart_de_skr04",""
@@ -588,6 +588,7 @@
"chart_skr04_4510","4510","Erlöse Abfallverwertung","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_4520","4520","Erlöse Leergut","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_4560","4560","Provisionsumsätze","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_4564","4564","Provisionsumsätze (§4Nr.8ff.UStG)","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_4566","4566","Provisionsumsätze 7 % USt","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_4569","4569","Provisionsumsätze 19 % USt","l10n_de.tag_de_pl_01","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_4570","4570","Sonstige Erträge aus Provisionen, Lizenzen und Patenten","l10n_de.tag_de_pl_04","account.data_account_type_revenue","l10n_de_skr04.l10n_chart_de_skr04",""
@@ -726,6 +727,8 @@
"chart_skr04_5130","5130","Einkauf - Roh-, Hilfs- und Betriebsstoffe 19% Vorsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5160","5160","Einkauf - Roh-, Hilfs- und Betriebsstoffe, innergem. Erwerb 7% VSt und 7% USt","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5162","5162","Einkauf - Roh-, Hilfs- und Betriebsstoffe, innergem. Erwerb 19% VSt und 19% USt","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5166","5166","Einkauf Roh-, Hilfs- und Betriebsstoffe, innergemeinschaftlicher Erwerb ohne Vorsteuer und 7 % Umsatzsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5167","5167","Einkauf Roh-, Hilfs- und Betriebsstoffe, innergemeinschaftlicher Erwerb ohne Vorsteuer und 19 % Umsatzsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5189","5189","Erwerb Roh-, Hilfs- und Betriebsstoffe letzter Abnehmer Dreiecksgeschäft","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5190","5190","Energiestoffe ( Fertigung )","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5191","5191","Energiestoffe (Fertigung) 7% Vorsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
@@ -739,7 +742,11 @@
"chart_skr04_5430","5430","Innergemeinschaftlicher Erwerb ohne Vorsteuerabzug und 7% Umsatzsteuer","","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5435","5435","Innergemeinschaftlicher Erwerb ohne Vorsteuerabzug und 19% Umsatzsteuer","","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5440","5440","innergem. Erwerb Neufahrz. o. UStID 19 % VSt und 19 % USt","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5550","5550","Steuerfreier EG-Erwerb","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5551","5551","Wareneingang, im Drittland steuerbar (19%)","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5552","5552","Erwerb 1. Abnehmer im Dreiecksgeschäft","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5553","5553","Erwerb Waren als letzter Abnehmer innerhalb Dreiecksgeschäft","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5557","5557","Wareneingang, im Drittland steuerbar (7%)","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5559","5559","Steuerfreie Einfuhren","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5600","5600","Nicht abziehbare Vorsteuer","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
"chart_skr04_5610","5610","Nicht abziehbare Vorsteuer 7 %","l10n_de.tag_de_pl_05","account.data_account_type_expenses","l10n_de_skr04.l10n_chart_de_skr04",""
1 id code name tag_ids/id user_type_id/id chart_template_id/id reconcile
548 chart_skr04_3840 3840 USt laufendes Jahr l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr04.l10n_chart_de_skr04
549 chart_skr04_3841 3841 USt Vorjahr l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_non_current_liabilities l10n_de_skr04.l10n_chart_de_skr04
550 chart_skr04_3845 3845 USt frühere Jahre l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_non_current_liabilities l10n_de_skr04.l10n_chart_de_skr04
551 chart_skr04_3850 3850 Aufgeschobene Einfuhrumsatzsteuer l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr04.l10n_chart_de_skr04 True
552 chart_skr04_3851 3851 Unrichtig oder unberechtigt ausgewiesene Umsatzsteuer l10n_de.tag_de_asset_bs_B_II_4 account.data_account_type_current_liabilities l10n_de_skr04.l10n_chart_de_skr04
553 chart_skr04_3854 3854 Steuerzahlungen an andere Länder l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr04.l10n_chart_de_skr04
554 chart_skr04_3860 3860 Verbindlichkeiten aus Umsatzsteuer l10n_de.tag_de_liabilities_bs_D_8 account.data_account_type_current_liabilities l10n_de_skr04.l10n_chart_de_skr04
588 chart_skr04_4510 4510 Erlöse Abfallverwertung l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
589 chart_skr04_4520 4520 Erlöse Leergut l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
590 chart_skr04_4560 4560 Provisionsumsätze l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
591 chart_skr04_4564 4564 Provisionsumsätze (§4Nr.8ff.UStG) l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
592 chart_skr04_4566 4566 Provisionsumsätze 7 % USt l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
593 chart_skr04_4569 4569 Provisionsumsätze 19 % USt l10n_de.tag_de_pl_01 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
594 chart_skr04_4570 4570 Sonstige Erträge aus Provisionen, Lizenzen und Patenten l10n_de.tag_de_pl_04 account.data_account_type_revenue l10n_de_skr04.l10n_chart_de_skr04
727 chart_skr04_5130 5130 Einkauf - Roh-, Hilfs- und Betriebsstoffe 19% Vorsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
728 chart_skr04_5160 5160 Einkauf - Roh-, Hilfs- und Betriebsstoffe, innergem. Erwerb 7% VSt und 7% USt l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
729 chart_skr04_5162 5162 Einkauf - Roh-, Hilfs- und Betriebsstoffe, innergem. Erwerb 19% VSt und 19% USt l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
730 chart_skr04_5166 5166 Einkauf Roh-, Hilfs- und Betriebsstoffe, innergemeinschaftlicher Erwerb ohne Vorsteuer und 7 % Umsatzsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
731 chart_skr04_5167 5167 Einkauf Roh-, Hilfs- und Betriebsstoffe, innergemeinschaftlicher Erwerb ohne Vorsteuer und 19 % Umsatzsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
732 chart_skr04_5189 5189 Erwerb Roh-, Hilfs- und Betriebsstoffe letzter Abnehmer Dreiecksgeschäft l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
733 chart_skr04_5190 5190 Energiestoffe ( Fertigung ) l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
734 chart_skr04_5191 5191 Energiestoffe (Fertigung) 7% Vorsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
742 chart_skr04_5430 5430 Innergemeinschaftlicher Erwerb ohne Vorsteuerabzug und 7% Umsatzsteuer account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
743 chart_skr04_5435 5435 Innergemeinschaftlicher Erwerb ohne Vorsteuerabzug und 19% Umsatzsteuer account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
744 chart_skr04_5440 5440 innergem. Erwerb Neufahrz. o. UStID 19 % VSt und 19 % USt l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
745 chart_skr04_5550 5550 Steuerfreier EG-Erwerb l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
746 chart_skr04_5551 5551 Wareneingang, im Drittland steuerbar (19%) l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
747 chart_skr04_5552 5552 Erwerb 1. Abnehmer im Dreiecksgeschäft l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
748 chart_skr04_5553 5553 Erwerb Waren als letzter Abnehmer innerhalb Dreiecksgeschäft l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
749 chart_skr04_5557 5557 Wareneingang, im Drittland steuerbar (7%) l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
750 chart_skr04_5559 5559 Steuerfreie Einfuhren l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
751 chart_skr04_5600 5600 Nicht abziehbare Vorsteuer l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
752 chart_skr04_5610 5610 Nicht abziehbare Vorsteuer 7 % l10n_de.tag_de_pl_05 account.data_account_type_expenses l10n_de_skr04.l10n_chart_de_skr04
@@ -77,7 +77,74 @@
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_93')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="tax_eu_19_purchase_ust_no_vst_skr04" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">19% Umsatzsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">19% USt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">-19</field>
<field name="refund_account_id" ref="chart_skr04_3809"/>
<field name="account_id" ref="chart_skr04_3809"/>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_89')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_eu_19_purchase_vst_no_vst_skr04" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">19% Vorsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">19% VSt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">19</field>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_eu_19_purchase_no_vst_skr04" model="account.tax.template">
<field name="sequence">20</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Innergem. Erwerb 19%USt/0%VSt</field>
<field name="description">innergem. Erwerb 19% - 0% Vorsteuer</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_eu_19_purchase_ust_no_vst_skr04'), ref('tax_eu_19_purchase_vst_no_vst_skr04')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_eu_7_purchase_ust_no_vst_skr04" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">7% Umsatzsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">7% USt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">-7</field>
<field name="refund_account_id" ref="chart_skr04_3809"/>
<field name="account_id" ref="chart_skr04_3809"/>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_93')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_7_purchase_vst_no_vst_skr04" model="account.tax.template">
<field name="sequence">97</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">7% Vorsteuer aus innergem. Erwerb (kein Vorsteuerabzug)</field>
<field name="description">7% VSt innerg. Erw. - 0% Vorsteuer</field>
<field name="amount_type">percent</field>
<field name="amount">7</field>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_7_purchase_no_vst_skr04" model="account.tax.template">
<field name="sequence">20</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Innergem. Erwerb 7%USt/0%VSt</field>
<field name="description">innergem. Erwerb 7% - 0% Vorsteuer</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_eu_7_purchase_ust_no_vst_skr04'), ref('tax_eu_7_purchase_vst_no_vst_skr04')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_car_purchase_ust_skr04" model="account.tax.template">
<field name="sequence">99</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -161,31 +228,77 @@
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="tax_import_19_skr04" model="account.tax.template">
<field name="sequence">20</field>
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">19% Einfuhrumsatzsteuer</field>
<field name="description">19% EUSt</field>
<field name="name">19% Einfuhrumsatzsteuer (abzugsf. Vorsteuer)</field>
<field name="description">19% EUSt (abzugsf. Vorsteuer)</field>
<field name="amount_type">percent</field>
<field name="amount">19</field>
<field name="refund_account_id" ref="chart_skr04_1433"/>
<field name="account_id" ref="chart_skr04_1433"/>
<field name="type_tax_use">purchase</field>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_62')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_import_7_skr04" model="account.tax.template">
<record id="tax_import_19_payable_skr04" model="account.tax.template">
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">19% Einfuhrumsatzsteuer (zu bezahlender Aufschub)</field>
<field name="description">19% EUSt (zu bezahlender Aufschub)</field>
<field name="amount_type">percent</field>
<field name="amount">-19</field>
<field name="refund_account_id" ref="chart_skr04_3850"/>
<field name="account_id" ref="chart_skr04_3850"/>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_import_19_and_payable_skr04" model="account.tax.template">
<field name="sequence">21</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">7% Einfuhrumsatzsteuer</field>
<field name="description">7% EUSt</field>
<field name="name">19% Einfuhrumsatzsteuer (§21 Abs.3 UstG)</field>
<field name="description">Einfuhrumsatzsteuer 19%</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_import_19_skr04'), ref('tax_import_19_payable_skr04')])]"/>
<field name="tax_group_id" ref="tax_group_19"/>
</record>
<record id="tax_import_7_skr04" model="account.tax.template">
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">7% Einfuhrumsatzsteuer (abzugsf. Vorsteuer)</field>
<field name="description">7% EUSt (abzugsf. Vorsteuer)</field>
<field name="amount_type">percent</field>
<field name="amount">7</field>
<field name="refund_account_id" ref="chart_skr04_1433"/>
<field name="account_id" ref="chart_skr04_1433"/>
<field name="type_tax_use">purchase</field>
<field name="type_tax_use">none</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_62')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_import_7_payable_skr04" model="account.tax.template">
<field name="sequence">98</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">7% Einfuhrumsatzsteuer (zu bezahlender Aufschub)</field>
<field name="description">7% EUSt (zu bezahlender Aufschub)</field>
<field name="amount_type">percent</field>
<field name="amount">-7</field>
<field name="refund_account_id" ref="chart_skr04_3850"/>
<field name="account_id" ref="chart_skr04_3850"/>
<field name="type_tax_use">none</field>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_import_7_and_payable_skr04" model="account.tax.template">
<field name="sequence">21</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">7% Einfuhrumsatzsteuer (§21 Abs.3 UstG)</field>
<field name="description">Einfuhrumsatzsteuer 7%</field>
<field name="amount_type">group</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="children_tax_ids" eval="[(6,0,[ref('tax_import_7_skr04'), ref('tax_import_7_payable_skr04')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_eu_purchase_tax_free_skr04" model="account.tax.template">
<field name="sequence">22</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -348,7 +461,7 @@
<field name="account_id" ref="chart_skr04_1401"/>
<field name="type_tax_use">purchase</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_66')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="tax_vst_no_ustpflicht_skr04" model="account.tax.template">
<field name="sequence">16</field>
@@ -386,7 +499,7 @@
<field name="type_tax_use">purchase</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_66')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
<field name="price_include" eval="True"/>
<field name="price_include" eval="True"/>
</record>
<record id="tax_vst_55_farmer_skr04" model="account.tax.template">
<field name="sequence">26</field>
@@ -399,7 +512,7 @@
<field name="account_id" ref="chart_skr04_1400"/>
<field name="type_tax_use">purchase</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_66')])]"/>
<field name="tax_group_id" ref="tax_group_55"/>
<field name="tax_group_id" ref="tax_group_55"/>
</record>
<record id="tax_vst_107_farmer_skr04" model="account.tax.template">
<field name="sequence">27</field>
@@ -412,7 +525,7 @@
<field name="account_id" ref="chart_skr04_1400"/>
<field name="type_tax_use">purchase</field>
<field name="tag_ids" eval="[(6,0,[ref('l10n_de.tag_de_66')])]"/>
<field name="tax_group_id" ref="tax_group_107"/>
<field name="tax_group_id" ref="tax_group_107"/>
</record>
<record id="tax_ust_19_eu_skr04" model="account.tax.template">
<field name="sequence">21</field>
@@ -965,23 +1078,37 @@
<field name="children_tax_ids" eval="[(6,0,[ref('tax_ust_7_purchase_13a_auslagerung_skr04'), ref('tax_vst_7_purchase_13a_auslagerung_skr04')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="fiscal_position_non_eu_partner_service_skr04" model="account.fiscal.position.template">
<record id="fiscal_position_domestic_skr04" model="account.fiscal.position.template">
<field name="sequence">1</field>
<field name="name">Geschäftspartner Inland</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Dienstleister Ausland</field>
<field name="auto_apply" eval="True" />
<field name="country_id" ref="base.de"></field>
</record>
<record id="fiscal_position_non_eu_partner_service_skr04" model="account.fiscal.position.template">
<field name="sequence">6</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Dienstleister Ausland (Nicht-EU)</field>
</record>
<record id="fiscal_position_non_eu_partner_skr04" model="account.fiscal.position.template">
<field name="sequence">5</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Geschäftspartner Ausland</field>
<field name="name">Geschäftspartner Ausland (Nicht-EU)</field>
</record>
<record id="fiscal_position_eu_vat_id_partner_skr04" model="account.fiscal.position.template">
<field name="sequence">2</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Geschäftspartner EU (mit USt-ID)</field>
<field name="auto_apply" eval="True" />
<field name="country_group_id" ref="base.europe"></field>
</record>
<record id="fiscal_position_eu_vat_id_partner_service_skr04" model="account.fiscal.position.template">
<field name="sequence">3</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Dienstleister EU (mit USt-ID)</field>
</record>
<record id="fiscal_position_eu_no_id_partner_skr04" model="account.fiscal.position.template">
<field name="sequence">4</field>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
<field name="name">Geschäftspartner EU (ohne USt-ID)</field>
</record>
@@ -1017,12 +1144,12 @@
</record>
<record id="chart_skr04_fiscal_position_tax_eu_no_id_purchase_19_skr04" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_eu_no_id_partner_skr04"/>
<field name="tax_dest_id" ref="tax_import_19_skr04"/>
<field name="tax_dest_id" ref="tax_eu_19_purchase_no_vst_skr04"/>
<field name="tax_src_id" ref="tax_vst_19_skr04"/>
</record>
<record id="chart_skr04_fiscal_position_tax_eu_no_id_purchase_7_skr04" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_eu_no_id_partner_skr04"/>
<field name="tax_dest_id" ref="tax_import_7_skr04"/>
<field name="tax_dest_id" ref="tax_eu_7_purchase_no_vst_skr04"/>
<field name="tax_src_id" ref="tax_vst_7_skr04"/>
</record>
<record id="chart_skr04_fiscal_position_tax_eu_no_id_sale_19_skr04" model="account.fiscal.position.tax.template">
@@ -1052,7 +1179,7 @@
</record>
<record id="chart_skr04_fiscal_position_tax_non_eu_purchase_19_skr04" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr04"/>
<field name="tax_dest_id" ref="tax_import_19_skr04"/>
<field name="tax_dest_id" ref="tax_import_19_and_payable_skr04"/>
<field name="tax_src_id" ref="tax_vst_19_skr04"/>
</record>
<record id="chart_skr04_fiscal_position_tax_non_eu_purchase_services_19_skr04" model="account.fiscal.position.tax.template">
@@ -1062,7 +1189,7 @@
</record>
<record id="chart_skr04_fiscal_position_tax_non_eu_purchase_7_skr04" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr04"/>
<field name="tax_dest_id" ref="tax_import_7_skr04"/>
<field name="tax_dest_id" ref="tax_import_7_and_payable_skr04"/>
<field name="tax_src_id" ref="tax_vst_7_skr04"/>
</record>
@@ -1134,7 +1261,7 @@
<record id="chart_skr04_fiscal_position_account_non_eu_purchase_19_skr04" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr04"/>
<field name="account_src_id" ref="chart_skr04_5400" />
<field name="account_dest_id" ref="chart_skr04_5435" />
<field name="account_dest_id" ref="chart_skr04_5551" />
</record>
<record id="chart_skr04_fiscal_position_acc_non_eu_purchase_services_19_skr04" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_service_skr04"/>
@@ -1144,7 +1271,7 @@
<record id="chart_skr04_fiscal_position_account_non_eu_purchase_7_skr04" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_non_eu_partner_skr04"/>
<field name="account_src_id" ref="chart_skr04_5300" />
<field name="account_dest_id" ref="chart_skr04_5430" />
<field name="account_dest_id" ref="chart_skr04_5557" />
</record>
<record id="chart_skr04_fiscal_position_account_eu_no_id_sale_19_skr04" model="account.fiscal.position.account.template">
<field name="position_id" ref="fiscal_position_eu_no_id_partner_skr04"/>
@@ -1201,17 +1328,21 @@
<record id="chart_skr04_4125" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_sale_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_4130" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_3eck_first_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4135" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_newcar_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_4139" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4140" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_ohne_vst')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4150" model="account.account.template">
@@ -1225,7 +1356,7 @@
<record id="chart_skr04_4165" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_4185" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1243,11 +1374,15 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4310" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_ust_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4315" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4331" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4336" model="account.account.template">
@@ -1255,7 +1390,7 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4337" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_goods_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_free_bau_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4338" model="account.account.template">
@@ -1278,6 +1413,10 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4564" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4566" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1291,11 +1430,11 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4574" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4575" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4576" model="account.account.template">
@@ -1323,7 +1462,7 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4630" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_7_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_not_taxable_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4639" model="account.account.template">
@@ -1378,6 +1517,14 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_not_taxable_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4702" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4704" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_mit_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4705" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_export_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1395,11 +1542,11 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4725" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_ust_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4726" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4731" model="account.account.template">
@@ -1411,7 +1558,7 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4741" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_ust_goods_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_free_mobil_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4742" model="account.account.template">
@@ -1419,11 +1566,11 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4746" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_ust_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4748" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4750" model="account.account.template">
@@ -1433,7 +1580,7 @@
<record id="chart_skr04_4760" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_4780" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1441,7 +1588,7 @@
<record id="chart_skr04_4790" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_4836" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1455,7 +1602,7 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4844" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_third_country_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_export_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4845" model="account.account.template">
@@ -1463,7 +1610,7 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4848" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_sale_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_4852" model="account.account.template">
@@ -1510,10 +1657,18 @@
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5166" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_no_vst_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5167" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_no_vst_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5189" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_3eck_last_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5191" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1521,11 +1676,11 @@
<record id="chart_skr04_5192" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5300" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5400" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1539,17 +1694,25 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5430" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_7_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_no_vst_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5435" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_no_vst_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5440" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_car_purchase_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5550" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_purchase_tax_free_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5551" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_import_19_and_payable_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_5553" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_3eck_last_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1585,11 +1748,11 @@
<record id="chart_skr04_5725" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_19_purchase_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5731" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5734" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1609,11 +1772,11 @@
<record id="chart_skr04_5743" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_7_purchase_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5750" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5754" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1625,11 +1788,11 @@
<record id="chart_skr04_5760" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_19_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5780" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5784" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1649,7 +1812,7 @@
<record id="chart_skr04_5792" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_3eck_last_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5794" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_55_farmer_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1669,7 +1832,7 @@
<record id="chart_skr04_5908" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5910" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_vst_7_purchase_13b_bau_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1693,7 +1856,7 @@
<record id="chart_skr04_5925" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_13b_werk_ausland_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_5951" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_vst_ust_19_purchase_13b_werk_ausland_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1721,13 +1884,13 @@
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_6888" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_eu_skr04')])]"/>
<field name="tax_ids" eval="[(6, 0, [ref('tax_eu_sale_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
<record id="chart_skr04_6892" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_free_skr04_ohne_vst')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
<record id="chart_skr04_6931" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_7_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
@@ -1747,5 +1910,5 @@
<record id="chart_skr04_6938" model="account.account.template">
<field name="tax_ids" eval="[(6, 0, [ref('tax_ust_19_eu_skr04')])]"/>
<field name="chart_template_id" ref="l10n_chart_de_skr04"/>
</record>
</record>
</odoo>
@@ -1,5 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import account_bank_statement
from . import account_fiscal_position
from . import res_company
from . import pos
@@ -0,0 +1,19 @@
# -*- coding: utf-8 -*-
from odoo import _, models
from odoo.exceptions import UserError
class AccountFiscalPosition(models.Model):
_inherit = "account.fiscal.position"
def write(self, vals):
if "tax_ids" in vals:
if self.env["pos.order"].sudo().search_count([("fiscal_position_id", "in", self.ids)]):
raise UserError(
_(
"You cannot modify a fiscal position used in a POS order. "
+ "You should archive it and create a new one."
)
)
return super(AccountFiscalPosition, self).write(vals)
+3
View File
@@ -0,0 +1,3 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
# Copyright (C) 2019 Bohdan Lisnenko <bohdan.lisnenko@erp.co.ua>, ERP Ukraine
+25
View File
@@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
# Copyright (C) 2019 Bohdan Lisnenko <bohdan.lisnenko@erp.co.ua>, ERP Ukraine
{
'name': 'Ukraine - Accounting',
'author': 'ERP Ukraine',
'website': 'https://erp.co.ua',
'version': '1.3',
'description': """
Ukraine - Chart of accounts.
============================
""",
'category': 'Localization',
'depends': ['account'],
'data': [
'data/account_chart_template.xml',
'data/account.account.template.csv',
'data/account_account_tag_data.xml',
'data/account_tax_tag_data.xml',
'data/account_tax_group_data.xml',
'data/account_tax_template.xml',
'data/account_chart_template_config.xml',
],
}
@@ -0,0 +1,406 @@
"id","code","name","user_type_id:id","reconcile","chart_template_id:id"
"ua_psbp_100",100,"Інвестиційна нерухомість","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_101",101,"Земельні ділянки","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_102",102,"Капітальні витрати на поліпшення земель","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_103",103,"Будинки та споруди","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_104",104,"Машини та обладнання","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_105",105,"Транспортні засоби","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_106",106,"Інструменти, прилади та інвентар","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_107",107,"Тварини","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_108",108,"Багаторічні насадження","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1091",1091,"Інші основні засоби","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1092",1092,"Основні засоби призначені для продажу","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_111",111,"Бібліотечні фонди","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_112",112,"Малоцінні необоротні матеріальні активи","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_113",113,"Тимчасові (нетитульні) споруди","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_114",114,"Природні ресурси","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_115",115,"Інвентарна тара","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_116",116,"Предмети прокату","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1171",1171,"Інші необоротні матеріальні активи","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1172",1172,"Необоротні матеріальні активи призначені для продажу","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_121",121,"Права користування природними ресурсами","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_122",122,"Права користування майном","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_123",123,"Права на комерційні позначення","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_124",124,"Права на об’єкти промислової власності","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_125",125,"Авторське право та суміжні з ним права","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_127",127,"Інші нематеріальні активи","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_131",131,"Знос основних засобів","account.data_account_type_depreciation",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_132",132,"Знос інших необоротних матеріальних активів","account.data_account_type_depreciation",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_133",133,"Накопичена амортизацiя нематеріальних активів","account.data_account_type_depreciation",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_134",134,"Накопичена амортизація довгострокових біологічних активів","account.data_account_type_depreciation",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_135",135,"Знос інвестиційної нерухомості","account.data_account_type_depreciation",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_141",141,"Інвестиції пов’язаним сторонам за методом обліку участі в капіталі","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_142",142,"Інші інвестиції пов’язаним сторонам","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_143",143,"Інвестиції непов’язаним сторонам","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_151",151,"Капітальне будівництво","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1521",1521,"Придбання основних засобів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1522",1522,"Виготовлення та модернізація основних засобів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1531",1531,"Придбання інших необоротних матеріальних активів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1532",1532,"Виготовлення та модернізація інших необоротних матеріальних активів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1541",1541,"Придбання нематеріальних активів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_1542",1542,"Виготовлення нематеріальних активів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_155",155,"Придбання (вирощування) довгострокових біологічних активів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_161",161,"Довгострокові біологічні активи рослинництва, які оцінені за справедливою вартістю","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_162",162,"Довгострокові біологічні активи рослинництва, які оцінені за первісною вартістю","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_163",163,"Довгострокові біологічні активи тваринництва, які оцінені за справедливою вартістю","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_164",164,"Довгострокові біологічні активи тваринництва, які оцінені за первісною вартістю","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_165",165,"Незрілі довгострокові біологічні активи, які оцінюються за справедливою вартістю","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_166",166,"Незрілі довгострокові біологічні активи, які оцінюються за первісною вартістю","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_17",17,"Відстрочені податкові активи","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_181",181,"Заборгованість за майно, що передано у фінансову оренду","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_182",182,"Довгострокові векселі одержані","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_183",183,"Інша дебіторська заборгованість","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_184",184,"Інші необоротні активи","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_191",191,"Гудвіл при придбаннi","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_192",192,"Негативный гудвил","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_193",193,"Гудвіл при приватизації (корпоратизації)","account.data_account_type_fixed_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_200",200,"Транспортно-заготівельні витрати (матеріали)","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_201",201,"Сировина й матеріали","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_202",202,"Купівельні напівфабрикати та комплектуючі вироби","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_203",203,"Паливо","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_204",204,"Тара й тарні матеріали","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_205",205,"Будівельні матеріали","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_206",206,"Матеріали, передані в переробку","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_207",207,"Запасні частини","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_208",208,"Матеріали сільськогосподарського призначення","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_209",209,"Інші матеріали","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_211",211,"Поточні біологічні активи рослинництва, які оцінені за справедливою вартістю","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_212",212,"Поточні біологічні активи тваринництва, які оцінені за справедливою вартістю","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_213",213,"Поточні біологічні активи тваринництва, які оцінені за первісною вартістю","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_22",22,"Малоцінні та швидкозношувані предмети","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_231",231,"Основне виробництво","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_232",232,"Допоміжні виробництва","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_233",233,"Обслуговуючі виробництва","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_234",234,"Давальницьке виробництво","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_235",235,"Обслуговування і ремонт необоротних активів","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_238",238,"Незавершені будівельні контракти","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_239",239,"Проміжні рахунки","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_24",24,"Брак у виробництві","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_25",25,"Напівфабрикати","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_26",26,"Готова продукція","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_27",27,"Продукція сільськогосподарського виробництва","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_280",280,"Транспортно-заготівельні витрати","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_281",281,"Товари на складі","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_2811",2811,"Товари відвантажені зі складу","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_2812",2812,"Товари отримані на склад","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_282",282,"Товари в торгівлі (за продажною вартістю)","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_283",283,"Товари на комісії","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_284",284,"Тара під товарами","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_285",285,"Торгова націнка","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_286",286,"Необоротні активи та групи вибуття, утримувані для продажу","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_289",289,"Товари в торгівлі (за покупною вартістю)","account.data_account_type_current_assets",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_311",311,"Поточні рахунки в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_312",312,"Поточні рахунки в іноземній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_313",313,"Інші рахунки в банку в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_314",314,"Інші рахунки в банку в іноземній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_315",315,"Спеціальні рахунки в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_316",316,"Спеціальні рахунки в іноземній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_331",331,"Грошові документи в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_332",332,"Грошові документи в іноземній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_333",333,"Грошові кошти в дорозі в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_334",334,"Грошові кошти в дорозі в іноземній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_335",335,"Електронні гроші, номіновані в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_341",341,"Короткострокові векселі, одержані в національній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_342",342,"Короткострокові векселі, одержані в іноземній валюті","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_3511",3511,"Еквіваленти грошових коштів (у національній валюті)","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_3512",3512,"Еквіваленти грошових коштів (в іноземній валюті)","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_352",352,"Інші поточні фінансові інвестиції","account.data_account_type_liquidity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_361",361,"Розрахунки з вітчизняними покупцями","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_362",362,"Розрахунки з іноземними покупцями","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_363",363,"Розрахунки з учасниками ПФГ","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_364",364,"Розрахунки по гарантійному забезпеченню","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_365",365,"Розрахунки з роздрібними покупцями","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3711",3711,"Розрахунки за виданими авансами (в національній валюті)","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3712",3712,"Розрахунки за виданими авансами (в іноземній валюті)","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3721",3721,"Розрахунки з підзвітними особами в національній валюті","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3722",3722,"Розрахунки з підзвітними особами в іноземній валюті","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_373",373,"Розрахунки за нарахованими доходами","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_374",374,"Розрахунки за претензіями","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_375",375,"Розрахунки за відшкодуванням завданих збитків","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_376",376,"Розрахунки за позиками членам кредитних спілок","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3771",3771,"Розрахунки з іншими дебіторами (в національній валюті)","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3772",3772,"Розрахунки з іншими дебіторами (в іноземній валюті)","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_3773",3773,"Розрахунки з робітниками та службовцями по інших операціях","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_378",378,"Розрахунки з державними цільовими фондами","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_379",379,"Розрахунки по операціям з дериватимами","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_381",381,"По заборгованості за товари, роботи, послуги","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_382",382,"По заборгованості за розрахунки з бюджетом","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_383",383,"По заборгованості за розрахунки за виданими авансами","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_384",384,"По заборгованості за розрахунки за нарахованими доходами","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_385",385,"По заборгованості за внутрішні розрахунки","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_386",386,"По іншій дебіторській заборгованості","account.data_account_type_receivable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_39",39,"Витрати майбутніх періодів","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_401",401,"Статутний капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_402",402,"Пайовий капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_403",403,"Інший зареєстрований капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_404",404,"Внески до незареєстрованого статутного капіталу","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_411",411,"Дооцінка (уцінка) основних засобів","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_412",412,"Дооцінка (уцінка) нематеріальних активів","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_413",413,"Дооцінка (уцінка) фінансових інструментів","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_414",414,"Інший капітал у дооцінках","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_421",421,"Емісійний дохід","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_422",422,"Інший вкладений капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_423",423,"Накопичені курсові різниці","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_424",424,"Безоплатно одержані необоротні активи","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_425",425,"Інший додатковий капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_43",43,"Резервний капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_441",441,"Прибуток нерозподілений","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_442",442,"Непокриті збитки","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_443",443,"Прибуток, використаний у звітному періоді","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_451",451,"Вилучені акції","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_452",452,"Вилучені вклади й паї","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_453",453,"Інший вилучений капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_46",46,"Неоплачений капітал","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_471",471,"Забезпечення виплат відпусток","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_472",472,"Додаткове пенсійне забезпечення","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_473",473,"Забезпечення гарантійних зобов’язань","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_474",474,"Забезпечення інших витрат і платежів","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_475",475,"Забезпечення, пов'язане з інвестиційною діяльністю","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_476",476,"Забезпечення, пов'язане з фінансовою діяльністю","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_477",477,"Забезпечення матеріального заохочення","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_478",478,"Забезпечення відновлення земельних ділянок","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_481",481,"Кошти, що вилучено з під оподаткування","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_482",482,"Кошти з бюджету та державних цільових фондів","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_483",483,"Бланодійна допомога","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_484",484,"Інші кошти цільового фінансування","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_491",491,"Технічні резерви","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_492",492,"Резерви із страхування життя","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_493",493,"Частка перестраховиків у технічних резервах","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_494",494,"Частка перестраховиків у резервах із страхування життя","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_495",495,"Результат зміни технічних резервів","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_496",496,"Результат зміни резервів із страхування життя","account.data_account_type_equity",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_501",501,"Довгострокові кредити банків у національній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_502",502,"Довгострокові кредити банків в іноземній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_503",503,"Відстрочені довгострокові кредити банків у національній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_504",504,"Відстрочені довгострокові кредити банків в іноземній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_505",505,"Інші довгострокові позики в національній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_506",506,"Інші довгострокові позики в іноземній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_511",511,"Довгострокові векселі, видані в національній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_512",512,"Довгострокові векселі, видані в іноземній валюті","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_521",521,"Зобов’язання за облігаціями","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_522",522,"Премія за випущеними облігаціями","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_523",523,"Дисконт за випущеними облігаціями","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_531",531,"Зобов’язання з фінансової оренди","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_532",532,"Зобов’язання з оренди цілісних майнових комплексів","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_54",54,"Відстрочені податкові зобов’язання","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_55",55,"Інші довгострокові зобов’язання","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_601",601,"Короткострокові кредити банків у національній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_602",602,"Короткострокові кредити банків в іноземній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_603",603,"Відстрочені короткострокові кредити банків у національній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_604",604,"Відстрочені короткострокові кредити банків в іноземній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_605",605,"Прострочені позики в національній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_606",606,"Прострочені позики в іноземній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_611",611,"Поточна заборгованість за довгостроковими зобов’язаннями в національній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_612",612,"Поточна заборгованість за довгостроковими зобов’язаннями в іноземній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_621",621,"Короткострокові векселі, видані в національній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_622",622,"Короткострокові векселі, видані в іноземній валюті","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_631",631,"Розрахунки з вітчизняними постачальниками","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_632",632,"Розрахунки з іноземними постачальниками","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_633",633,"Розрахунки з учасниками ПФГ","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6411",6411,"Розрахунки за ПДФО","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6412",6412,"Розрахунки за ПДВ","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_64121",64121,"Розрахунки за ПДВ в системі ЕА ПДВ","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_64122",64122,"Залишок на лицьовомцу рахунку з ПДВ після 01.02.2015 року","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_64123",64123,"Від’ємний залишок з ПДВ до 01.02.2015 року","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6413",6413,"Розрахунки за податком на прибуток","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6414",6414,"Розрахунки по єдиному податку","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6415",6415,"Розрахунки по військовому збору","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6416",6416,"Розрахунки за акцизом","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_642",642,"Розрахунки по обов’язкових платежах","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6431",6431,"Податкові зобов’язання","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6432",6432,"Податкові зобов’язання непідтверджені","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6433",6433,"Коригування податкових зобов’язань","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6434",6434,"Податкові зобов’язання (роздріб)","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6435",6435,"Умовний продаж","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6441",6441,"Податковий кредит","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6442",6442,"Податковий кредит непідтверджений","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_6443",6443,"Коригування податкового кредиту","account.data_account_type_current_liabilities",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_651",651,"За розрахунками із загальнообов'язкового державного соціального страхування","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_652",652,"За соціальним страхуванням","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_653",653,"За страхуванням на випадок безробіття (не використовується)","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_654",654,"За індивідуальним страхуванням","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_655",655,"За страхуванням майна","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_656",656,"За страхуванням від нещасних випадків","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_661",661,"Розрахунки за заробітною платою","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_662",662,"Розрахунки з депонентами","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_663",663,"Розрахунки за іншими виплатами","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_671",671,"Розрахунки за нарахованими дивідендами","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_672",672,"Розрахунки за іншими виплатами","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_680",680,"Розрахунки, пов'язані з необоротними активами та групами вибуття, утримуваними для продажу","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6811",6811,"Розрахунки за авансами одержаними в національній валюті","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6812",6812,"Розрахунки за авансами одержаними в іноземній валюті","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_682",682,"Внутрішні розрахунки","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_683",683,"Внутрішньогосподарські розрахунки","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_684",684,"Розрахунки за нарахованими відсотками","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6851",6851,"Розрахунки з іншими кредиторами (в національній валюті)","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6852",6852,"Розрахунки з іншими кредиторами (в іноземній валюті)","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_6853",6853,"Розрахунки по виконавчих листах","account.data_account_type_payable",TRUE,"l10n_ua_psbo_chart_template"
"ua_psbp_69",69,"Доходи майбутніх періодів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_701",701,"Дохід від реалізації готової продукції","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_702",702,"Дохід від реалізації товарів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_703",703,"Дохід від реалізації робіт і послуг","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_704",704,"Вирахування з доходу","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_705",705,"Перестрахування","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_7091",7091,"Дохід від роздрібного продажу","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_7092",7092,"Вирахування з доходу від роздрібного продажу","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_710",710,"Дохід від первісного визнання та від зміни вартості активів, які обліковуються за справедливою вартістю","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_711",711,"Дохід від купівлі-продажу іноземної валюти","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_712",712,"Дохід від реалізації інших оборотних активів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_713",713,"Дохід від операційної оренди активів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_714",714,"Дохід від операційної курсової різниці","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_715",715,"Одержані штрафи, пені, неустойки","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_716",716,"Відшкодування раніше списаних активів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_717",717,"Дохід від списання кредиторської заборгованості","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_718",718,"Дохiд вiд безоплатно одержаних оборотних активiв","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_719",719,"Інші доходи від операційної діяльності","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_721",721,"Дохід від інвестицій в асоційовані підприємства","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_722",722,"Дохід від спільної діяльності","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_723",723,"Дохід від інвестицій в дочірні підприємства","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_731",731,"Дивіденди одержані","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_732",732,"Відсотки одержані","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_733",733,"Інші доходи від фінансових операцій","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_740",740,"Дохід від зміни вартості фінансових інструментів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_741",741,"Дохід від реалізації фінансових інвестицій","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_742",742,"Дохід від відновлення корисності активів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_743",743,"Доход от реализации имущественных комплексов","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_744",744,"Дохід від неопераційної курсової різниці","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_745",745,"Дохід від безоплатно одержаних активів","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_746",746,"Інші доходи","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_751",751,"Відшкодування збитків від надзвичайних подій","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_752",752,"Інші надзвичайні доходи","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_76",76,"Страхові платежі","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_791",791,"Результат операцiйної діяльності","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_792",792,"Результат фінансових операцій","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_793",793,"Результат іншої звичайної діяльності","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_794",794,"(не використовується) Результат надзвичайних подій","account.data_account_type_revenue",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_801",801,"Витрати сировини й матеріалів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_802",802,"Витрати купівельних напівфабрикатів та комплектуючих виробів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_803",803,"Витрати палива й енергії","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_804",804,"Витрати тари й тарних матеріалів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_805",805,"Витрати будівельних матеріалів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_806",806,"Витрати запасних частин","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_807",807,"Витрати матеріалів сільськогосподарського призначення","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_808",808,"Витрати товарів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_809",809,"Інші матеріальні витрати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_811",811,"Виплати за окладами й тарифами","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_812",812,"Премії та заохочення","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_813",813,"Компенсаційні виплати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_814",814,"Оплата відпусток","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_815",815,"Оплата іншого невідпрацьованого часу","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_816",816,"Інші витрати на оплату праці","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_821",821,"Відрахування на загальнообов'язкове державне соціальне страхування","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_822",822,"Відрахування на соціальне страхування (не використовується)","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_823",823,"Страхування на випадок безробіття (не використовується)","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_824",824,"Відрахування на індивідуальне страхування","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_831",831,"Амортизація основних засобів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_832",832,"Амортизація інших необоротних матеріальних активів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_833",833,"Амортизація нематеріальних активів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_84",84,"Інші операційні витрати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_851",851,"Інші затрати за елементами, податок на прибуток","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_852",852,"(не використовується) Інші затрати за елементами, надзвичайні затрати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_901",901,"Собівартість реалізованої готової продукції","account.data_account_type_direct_costs",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_902",902,"Собівартість реалізованих товарів","account.data_account_type_direct_costs",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_903",903,"Собівартість реалізованих робіт і послуг","account.data_account_type_direct_costs",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_904",904,"Страховi виплати","account.data_account_type_direct_costs",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_91",91,"Загальновиробничі витрати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_92",92,"Адміністративні витрати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_93",93,"Витрати на збут","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_940",940,"Витрати від первісного визнання та від зміни вартості активів, які обліковуються за справедливою вартістю","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_941",941,"Витрати на дослідження і розробки","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_942",942,"Витрати на купівлю-продаж іноземної валюти","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_943",943,"Собівартість реалізованих виробничих запасів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_944",944,"Сумнівні та безнадійні борги","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_945",945,"Втрати від операційної курсової різниці","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_946",946,"Втрати від знецінення запасів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_947",947,"Нестачі і втрати від псування цінностей","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_948",948,"Визнані штрафи, пені, неустойки","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_949",949,"Інші витрати операційної діяльності","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_951",951,"Відсотки за кредит","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_952",952,"Інші фінансові витрати","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_961",961,"Втрати від інвестицій в асоційовані підприємства","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_962",962,"Втрати від спільної діяльності","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_963",963,"Втрати від інвестицій в дочірні підприємства","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_970",970,"Витрати від зміни вартості фінансових інструментів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_971",971,"Собівартість реалізованих фінансових інвестицій","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_972",972,"Втрати від зменшення корисності активів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_973",973,"Себестоимость реализованных имущественных комплексов","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_974",974,"Втрати від неопераційних курсових різниць","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_975",975,"Уцінка необоротних активів і фінансових інвестицій","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_976",976,"Списання необоротних активів","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_977",977,"Інші витрати діяльності","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_psbp_981",981,"Податок на прибуток від усіх видів діяльності","account.data_account_type_expenses",FALSE,"l10n_ua_psbo_chart_template"
"ua_ias_1000",1000,"Назви брендів","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1001",1001,"Заголовки та назви видань","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1002",1002,"Комп’ютерне програмне забезпечення","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1003",1003,"Ліцензії та привілеї","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1004",1004,"Авторські права, патенти, та інші права","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1005",1005,"Нематеріальні активи на етапі розробки","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1009",1009,"Амортизація нематеріальних активів","account.data_account_type_depreciation",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1010",1010,"Земля","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1011",1011,"Будівлі","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1012",1012,"Машини та обладнання","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1013",1013,"Автомобілі","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1014",1014,"Меблі та приладдя","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1015",1015,"Офісне обладнання","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1019",1019,"Амортизація основних засобів","account.data_account_type_depreciation",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1020",1020,"Гудвіл","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1030",1030,"Біологічні активи","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1040",1040,"Інвестиції","account.data_account_type_fixed_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1100",1100,"Запаси (Склад)","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1101",1101,"Незавершене виробництво","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1102",1102,"Готова продукція","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1120",1120,"Дебіторська заборгованість за товари та послуги","account.data_account_type_receivable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1121",1121,"Відвантажено зі складу без рахунку-фактури","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1130",1130,"Аванси партнерам","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1131",1131,"Інші оборотні активи","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1140",1140,"Податковий кредит по ПДВ","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1141",1141,"Аванс по податку на прибуток","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1142",1142,"Кошти на СЕА ПДВ","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1143",1143,"Переплата по лицьовому рахунку з ПДВ","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1144",1144,"Аванс по ЄСВ","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1150",1150,"Короткострокові фінансові інвестиції","account.data_account_type_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1160",1160,"Довгострокові інвестиції","account.data_account_type_non_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1170",1170,"Довгострокова дебіторська заборгованість","account.data_account_type_non_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1180",1180,"Відстрочені податкові активи","account.data_account_type_non_current_assets",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1200",1200,"Кредиторська заборгованість за товари та послуги","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1201",1201,"Отримано на склад без рахунку-фактури","account.data_account_type_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1202",1202,"Податок на прибуток","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1203",1203,"ПДВ","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1204",1204,"Податкові зобов’язання по ПДВ","account.data_account_type_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1205",1205,"ПДФО","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_12051",12051,"Військовий збір","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1206",1206,"ЄСВ","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1207",1207,"Інші податки","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1208",1208,"Заробітна плата та винагороди","account.data_account_type_payable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1210",1210,"Аванси одержані від покупців та замовників","account.data_account_type_receivable",TRUE,"l10n_ua_ias_chart_template"
"ua_ias_1220",1220,"Інші короткострокові зобов’язання","account.data_account_type_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1230",1230,"Короткострокові позики","account.data_account_type_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1240",1240,"Короткострокова частка за довгострокові позики","account.data_account_type_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1300",1300,"Довгострокові позики","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1301",1301,"Довгострокові кредити","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1302",1302,"Іпотека","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1310",1310,"Відстрочені податкові зобов’язання","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1320",1320,"Витрати майбутніх періодів","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1330",1330,"Інші довгострокові зобов’язання","account.data_account_type_non_current_liabilities",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1400",1400,"Статутний капітал","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1401",1401,"Емісійний фонд","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1402",1402,"Вилучений капітал","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1403",1403,"Додатковий оплачений капітал","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1404",1404,"Резерв переоцінки","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1405",1405,"Неоплачений капітал","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1406",1406,"Нерозподілений прибуток (непокритий збиток)","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1407",1407,"Частка меншості","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_1408",1408,"Ефект курсових різниць","account.data_account_type_equity",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2000",2000,"Дохід від продажу (категорія № 1)","account.data_account_type_revenue",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2001",2001,"Дохід від продажу (категорія № 2)","account.data_account_type_revenue",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2002",2002,"Дохід від продажу (категорія № 3)","account.data_account_type_revenue",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2003",2003,"Дохід від продажу (категорія № 4)","account.data_account_type_revenue",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2100",2100,"Фінансовий результат","account.data_unaffected_earnings",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2200",2200,"Собівартість продажу (категорія № 1)","account.data_account_type_direct_costs",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2201",2201,"Собівартість продажу (категорія № 2)","account.data_account_type_direct_costs",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2202",2202,"Собівартість продажу (категорія № 3)","account.data_account_type_direct_costs",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2203",2203,"Собівартість продажу (категорія № 4)","account.data_account_type_direct_costs",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2300",2300,"Адміністративні витрати","account.data_account_type_expenses",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2400",2400,"Витрати на збут","account.data_account_type_expenses",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2500",2500,"Інші витрати","account.data_account_type_expenses",FALSE,"l10n_ua_ias_chart_template"
"ua_ias_2600",2600,"Податок на прибуток","account.data_account_type_expenses",FALSE,"l10n_ua_ias_chart_template"
1 id code name user_type_id:id reconcile chart_template_id:id
2 ua_psbp_100 100 Інвестиційна нерухомість account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
3 ua_psbp_101 101 Земельні ділянки account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
4 ua_psbp_102 102 Капітальні витрати на поліпшення земель account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
5 ua_psbp_103 103 Будинки та споруди account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
6 ua_psbp_104 104 Машини та обладнання account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
7 ua_psbp_105 105 Транспортні засоби account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
8 ua_psbp_106 106 Інструменти, прилади та інвентар account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
9 ua_psbp_107 107 Тварини account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
10 ua_psbp_108 108 Багаторічні насадження account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
11 ua_psbp_1091 1091 Інші основні засоби account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
12 ua_psbp_1092 1092 Основні засоби призначені для продажу account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
13 ua_psbp_111 111 Бібліотечні фонди account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
14 ua_psbp_112 112 Малоцінні необоротні матеріальні активи account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
15 ua_psbp_113 113 Тимчасові (нетитульні) споруди account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
16 ua_psbp_114 114 Природні ресурси account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
17 ua_psbp_115 115 Інвентарна тара account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
18 ua_psbp_116 116 Предмети прокату account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
19 ua_psbp_1171 1171 Інші необоротні матеріальні активи account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
20 ua_psbp_1172 1172 Необоротні матеріальні активи призначені для продажу account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
21 ua_psbp_121 121 Права користування природними ресурсами account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
22 ua_psbp_122 122 Права користування майном account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
23 ua_psbp_123 123 Права на комерційні позначення account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
24 ua_psbp_124 124 Права на об’єкти промислової власності account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
25 ua_psbp_125 125 Авторське право та суміжні з ним права account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
26 ua_psbp_127 127 Інші нематеріальні активи account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
27 ua_psbp_131 131 Знос основних засобів account.data_account_type_depreciation FALSE l10n_ua_psbo_chart_template
28 ua_psbp_132 132 Знос інших необоротних матеріальних активів account.data_account_type_depreciation FALSE l10n_ua_psbo_chart_template
29 ua_psbp_133 133 Накопичена амортизацiя нематеріальних активів account.data_account_type_depreciation FALSE l10n_ua_psbo_chart_template
30 ua_psbp_134 134 Накопичена амортизація довгострокових біологічних активів account.data_account_type_depreciation FALSE l10n_ua_psbo_chart_template
31 ua_psbp_135 135 Знос інвестиційної нерухомості account.data_account_type_depreciation FALSE l10n_ua_psbo_chart_template
32 ua_psbp_141 141 Інвестиції пов’язаним сторонам за методом обліку участі в капіталі account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
33 ua_psbp_142 142 Інші інвестиції пов’язаним сторонам account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
34 ua_psbp_143 143 Інвестиції непов’язаним сторонам account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
35 ua_psbp_151 151 Капітальне будівництво account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
36 ua_psbp_1521 1521 Придбання основних засобів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
37 ua_psbp_1522 1522 Виготовлення та модернізація основних засобів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
38 ua_psbp_1531 1531 Придбання інших необоротних матеріальних активів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
39 ua_psbp_1532 1532 Виготовлення та модернізація інших необоротних матеріальних активів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
40 ua_psbp_1541 1541 Придбання нематеріальних активів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
41 ua_psbp_1542 1542 Виготовлення нематеріальних активів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
42 ua_psbp_155 155 Придбання (вирощування) довгострокових біологічних активів account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
43 ua_psbp_161 161 Довгострокові біологічні активи рослинництва, які оцінені за справедливою вартістю account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
44 ua_psbp_162 162 Довгострокові біологічні активи рослинництва, які оцінені за первісною вартістю account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
45 ua_psbp_163 163 Довгострокові біологічні активи тваринництва, які оцінені за справедливою вартістю account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
46 ua_psbp_164 164 Довгострокові біологічні активи тваринництва, які оцінені за первісною вартістю account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
47 ua_psbp_165 165 Незрілі довгострокові біологічні активи, які оцінюються за справедливою вартістю account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
48 ua_psbp_166 166 Незрілі довгострокові біологічні активи, які оцінюються за первісною вартістю account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
49 ua_psbp_17 17 Відстрочені податкові активи account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
50 ua_psbp_181 181 Заборгованість за майно, що передано у фінансову оренду account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
51 ua_psbp_182 182 Довгострокові векселі одержані account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
52 ua_psbp_183 183 Інша дебіторська заборгованість account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
53 ua_psbp_184 184 Інші необоротні активи account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
54 ua_psbp_191 191 Гудвіл при придбаннi account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
55 ua_psbp_192 192 Негативный гудвил account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
56 ua_psbp_193 193 Гудвіл при приватизації (корпоратизації) account.data_account_type_fixed_assets FALSE l10n_ua_psbo_chart_template
57 ua_psbp_200 200 Транспортно-заготівельні витрати (матеріали) account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
58 ua_psbp_201 201 Сировина й матеріали account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
59 ua_psbp_202 202 Купівельні напівфабрикати та комплектуючі вироби account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
60 ua_psbp_203 203 Паливо account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
61 ua_psbp_204 204 Тара й тарні матеріали account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
62 ua_psbp_205 205 Будівельні матеріали account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
63 ua_psbp_206 206 Матеріали, передані в переробку account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
64 ua_psbp_207 207 Запасні частини account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
65 ua_psbp_208 208 Матеріали сільськогосподарського призначення account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
66 ua_psbp_209 209 Інші матеріали account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
67 ua_psbp_211 211 Поточні біологічні активи рослинництва, які оцінені за справедливою вартістю account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
68 ua_psbp_212 212 Поточні біологічні активи тваринництва, які оцінені за справедливою вартістю account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
69 ua_psbp_213 213 Поточні біологічні активи тваринництва, які оцінені за первісною вартістю account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
70 ua_psbp_22 22 Малоцінні та швидкозношувані предмети account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
71 ua_psbp_231 231 Основне виробництво account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
72 ua_psbp_232 232 Допоміжні виробництва account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
73 ua_psbp_233 233 Обслуговуючі виробництва account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
74 ua_psbp_234 234 Давальницьке виробництво account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
75 ua_psbp_235 235 Обслуговування і ремонт необоротних активів account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
76 ua_psbp_238 238 Незавершені будівельні контракти account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
77 ua_psbp_239 239 Проміжні рахунки account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
78 ua_psbp_24 24 Брак у виробництві account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
79 ua_psbp_25 25 Напівфабрикати account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
80 ua_psbp_26 26 Готова продукція account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
81 ua_psbp_27 27 Продукція сільськогосподарського виробництва account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
82 ua_psbp_280 280 Транспортно-заготівельні витрати account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
83 ua_psbp_281 281 Товари на складі account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
84 ua_psbp_2811 2811 Товари відвантажені зі складу account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
85 ua_psbp_2812 2812 Товари отримані на склад account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
86 ua_psbp_282 282 Товари в торгівлі (за продажною вартістю) account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
87 ua_psbp_283 283 Товари на комісії account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
88 ua_psbp_284 284 Тара під товарами account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
89 ua_psbp_285 285 Торгова націнка account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
90 ua_psbp_286 286 Необоротні активи та групи вибуття, утримувані для продажу account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
91 ua_psbp_289 289 Товари в торгівлі (за покупною вартістю) account.data_account_type_current_assets FALSE l10n_ua_psbo_chart_template
92 ua_psbp_311 311 Поточні рахунки в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
93 ua_psbp_312 312 Поточні рахунки в іноземній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
94 ua_psbp_313 313 Інші рахунки в банку в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
95 ua_psbp_314 314 Інші рахунки в банку в іноземній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
96 ua_psbp_315 315 Спеціальні рахунки в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
97 ua_psbp_316 316 Спеціальні рахунки в іноземній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
98 ua_psbp_331 331 Грошові документи в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
99 ua_psbp_332 332 Грошові документи в іноземній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
100 ua_psbp_333 333 Грошові кошти в дорозі в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
101 ua_psbp_334 334 Грошові кошти в дорозі в іноземній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
102 ua_psbp_335 335 Електронні гроші, номіновані в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
103 ua_psbp_341 341 Короткострокові векселі, одержані в національній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
104 ua_psbp_342 342 Короткострокові векселі, одержані в іноземній валюті account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
105 ua_psbp_3511 3511 Еквіваленти грошових коштів (у національній валюті) account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
106 ua_psbp_3512 3512 Еквіваленти грошових коштів (в іноземній валюті) account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
107 ua_psbp_352 352 Інші поточні фінансові інвестиції account.data_account_type_liquidity FALSE l10n_ua_psbo_chart_template
108 ua_psbp_361 361 Розрахунки з вітчизняними покупцями account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
109 ua_psbp_362 362 Розрахунки з іноземними покупцями account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
110 ua_psbp_363 363 Розрахунки з учасниками ПФГ account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
111 ua_psbp_364 364 Розрахунки по гарантійному забезпеченню account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
112 ua_psbp_365 365 Розрахунки з роздрібними покупцями account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
113 ua_psbp_3711 3711 Розрахунки за виданими авансами (в національній валюті) account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
114 ua_psbp_3712 3712 Розрахунки за виданими авансами (в іноземній валюті) account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
115 ua_psbp_3721 3721 Розрахунки з підзвітними особами в національній валюті account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
116 ua_psbp_3722 3722 Розрахунки з підзвітними особами в іноземній валюті account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
117 ua_psbp_373 373 Розрахунки за нарахованими доходами account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
118 ua_psbp_374 374 Розрахунки за претензіями account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
119 ua_psbp_375 375 Розрахунки за відшкодуванням завданих збитків account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
120 ua_psbp_376 376 Розрахунки за позиками членам кредитних спілок account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
121 ua_psbp_3771 3771 Розрахунки з іншими дебіторами (в національній валюті) account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
122 ua_psbp_3772 3772 Розрахунки з іншими дебіторами (в іноземній валюті) account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
123 ua_psbp_3773 3773 Розрахунки з робітниками та службовцями по інших операціях account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
124 ua_psbp_378 378 Розрахунки з державними цільовими фондами account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
125 ua_psbp_379 379 Розрахунки по операціям з дериватимами account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
126 ua_psbp_381 381 По заборгованості за товари, роботи, послуги account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
127 ua_psbp_382 382 По заборгованості за розрахунки з бюджетом account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
128 ua_psbp_383 383 По заборгованості за розрахунки за виданими авансами account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
129 ua_psbp_384 384 По заборгованості за розрахунки за нарахованими доходами account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
130 ua_psbp_385 385 По заборгованості за внутрішні розрахунки account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
131 ua_psbp_386 386 По іншій дебіторській заборгованості account.data_account_type_receivable TRUE l10n_ua_psbo_chart_template
132 ua_psbp_39 39 Витрати майбутніх періодів account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
133 ua_psbp_401 401 Статутний капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
134 ua_psbp_402 402 Пайовий капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
135 ua_psbp_403 403 Інший зареєстрований капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
136 ua_psbp_404 404 Внески до незареєстрованого статутного капіталу account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
137 ua_psbp_411 411 Дооцінка (уцінка) основних засобів account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
138 ua_psbp_412 412 Дооцінка (уцінка) нематеріальних активів account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
139 ua_psbp_413 413 Дооцінка (уцінка) фінансових інструментів account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
140 ua_psbp_414 414 Інший капітал у дооцінках account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
141 ua_psbp_421 421 Емісійний дохід account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
142 ua_psbp_422 422 Інший вкладений капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
143 ua_psbp_423 423 Накопичені курсові різниці account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
144 ua_psbp_424 424 Безоплатно одержані необоротні активи account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
145 ua_psbp_425 425 Інший додатковий капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
146 ua_psbp_43 43 Резервний капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
147 ua_psbp_441 441 Прибуток нерозподілений account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
148 ua_psbp_442 442 Непокриті збитки account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
149 ua_psbp_443 443 Прибуток, використаний у звітному періоді account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
150 ua_psbp_451 451 Вилучені акції account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
151 ua_psbp_452 452 Вилучені вклади й паї account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
152 ua_psbp_453 453 Інший вилучений капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
153 ua_psbp_46 46 Неоплачений капітал account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
154 ua_psbp_471 471 Забезпечення виплат відпусток account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
155 ua_psbp_472 472 Додаткове пенсійне забезпечення account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
156 ua_psbp_473 473 Забезпечення гарантійних зобов’язань account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
157 ua_psbp_474 474 Забезпечення інших витрат і платежів account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
158 ua_psbp_475 475 Забезпечення, пов'язане з інвестиційною діяльністю account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
159 ua_psbp_476 476 Забезпечення, пов'язане з фінансовою діяльністю account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
160 ua_psbp_477 477 Забезпечення матеріального заохочення account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
161 ua_psbp_478 478 Забезпечення відновлення земельних ділянок account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
162 ua_psbp_481 481 Кошти, що вилучено з під оподаткування account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
163 ua_psbp_482 482 Кошти з бюджету та державних цільових фондів account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
164 ua_psbp_483 483 Бланодійна допомога account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
165 ua_psbp_484 484 Інші кошти цільового фінансування account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
166 ua_psbp_491 491 Технічні резерви account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
167 ua_psbp_492 492 Резерви із страхування життя account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
168 ua_psbp_493 493 Частка перестраховиків у технічних резервах account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
169 ua_psbp_494 494 Частка перестраховиків у резервах із страхування життя account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
170 ua_psbp_495 495 Результат зміни технічних резервів account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
171 ua_psbp_496 496 Результат зміни резервів із страхування життя account.data_account_type_equity FALSE l10n_ua_psbo_chart_template
172 ua_psbp_501 501 Довгострокові кредити банків у національній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
173 ua_psbp_502 502 Довгострокові кредити банків в іноземній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
174 ua_psbp_503 503 Відстрочені довгострокові кредити банків у національній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
175 ua_psbp_504 504 Відстрочені довгострокові кредити банків в іноземній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
176 ua_psbp_505 505 Інші довгострокові позики в національній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
177 ua_psbp_506 506 Інші довгострокові позики в іноземній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
178 ua_psbp_511 511 Довгострокові векселі, видані в національній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
179 ua_psbp_512 512 Довгострокові векселі, видані в іноземній валюті account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
180 ua_psbp_521 521 Зобов’язання за облігаціями account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
181 ua_psbp_522 522 Премія за випущеними облігаціями account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
182 ua_psbp_523 523 Дисконт за випущеними облігаціями account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
183 ua_psbp_531 531 Зобов’язання з фінансової оренди account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
184 ua_psbp_532 532 Зобов’язання з оренди цілісних майнових комплексів account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
185 ua_psbp_54 54 Відстрочені податкові зобов’язання account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
186 ua_psbp_55 55 Інші довгострокові зобов’язання account.data_account_type_non_current_liabilities FALSE l10n_ua_psbo_chart_template
187 ua_psbp_601 601 Короткострокові кредити банків у національній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
188 ua_psbp_602 602 Короткострокові кредити банків в іноземній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
189 ua_psbp_603 603 Відстрочені короткострокові кредити банків у національній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
190 ua_psbp_604 604 Відстрочені короткострокові кредити банків в іноземній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
191 ua_psbp_605 605 Прострочені позики в національній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
192 ua_psbp_606 606 Прострочені позики в іноземній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
193 ua_psbp_611 611 Поточна заборгованість за довгостроковими зобов’язаннями в національній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
194 ua_psbp_612 612 Поточна заборгованість за довгостроковими зобов’язаннями в іноземній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
195 ua_psbp_621 621 Короткострокові векселі, видані в національній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
196 ua_psbp_622 622 Короткострокові векселі, видані в іноземній валюті account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
197 ua_psbp_631 631 Розрахунки з вітчизняними постачальниками account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
198 ua_psbp_632 632 Розрахунки з іноземними постачальниками account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
199 ua_psbp_633 633 Розрахунки з учасниками ПФГ account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
200 ua_psbp_6411 6411 Розрахунки за ПДФО account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
201 ua_psbp_6412 6412 Розрахунки за ПДВ account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
202 ua_psbp_64121 64121 Розрахунки за ПДВ в системі ЕА ПДВ account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
203 ua_psbp_64122 64122 Залишок на лицьовомцу рахунку з ПДВ після 01.02.2015 року account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
204 ua_psbp_64123 64123 Від’ємний залишок з ПДВ до 01.02.2015 року account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
205 ua_psbp_6413 6413 Розрахунки за податком на прибуток account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
206 ua_psbp_6414 6414 Розрахунки по єдиному податку account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
207 ua_psbp_6415 6415 Розрахунки по військовому збору account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
208 ua_psbp_6416 6416 Розрахунки за акцизом account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
209 ua_psbp_642 642 Розрахунки по обов’язкових платежах account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
210 ua_psbp_6431 6431 Податкові зобов’язання account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
211 ua_psbp_6432 6432 Податкові зобов’язання непідтверджені account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
212 ua_psbp_6433 6433 Коригування податкових зобов’язань account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
213 ua_psbp_6434 6434 Податкові зобов’язання (роздріб) account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
214 ua_psbp_6435 6435 Умовний продаж account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
215 ua_psbp_6441 6441 Податковий кредит account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
216 ua_psbp_6442 6442 Податковий кредит непідтверджений account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
217 ua_psbp_6443 6443 Коригування податкового кредиту account.data_account_type_current_liabilities FALSE l10n_ua_psbo_chart_template
218 ua_psbp_651 651 За розрахунками із загальнообов'язкового державного соціального страхування account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
219 ua_psbp_652 652 За соціальним страхуванням account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
220 ua_psbp_653 653 За страхуванням на випадок безробіття (не використовується) account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
221 ua_psbp_654 654 За індивідуальним страхуванням account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
222 ua_psbp_655 655 За страхуванням майна account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
223 ua_psbp_656 656 За страхуванням від нещасних випадків account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
224 ua_psbp_661 661 Розрахунки за заробітною платою account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
225 ua_psbp_662 662 Розрахунки з депонентами account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
226 ua_psbp_663 663 Розрахунки за іншими виплатами account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
227 ua_psbp_671 671 Розрахунки за нарахованими дивідендами account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
228 ua_psbp_672 672 Розрахунки за іншими виплатами account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
229 ua_psbp_680 680 Розрахунки, пов'язані з необоротними активами та групами вибуття, утримуваними для продажу account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
230 ua_psbp_6811 6811 Розрахунки за авансами одержаними в національній валюті account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
231 ua_psbp_6812 6812 Розрахунки за авансами одержаними в іноземній валюті account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
232 ua_psbp_682 682 Внутрішні розрахунки account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
233 ua_psbp_683 683 Внутрішньогосподарські розрахунки account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
234 ua_psbp_684 684 Розрахунки за нарахованими відсотками account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
235 ua_psbp_6851 6851 Розрахунки з іншими кредиторами (в національній валюті) account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
236 ua_psbp_6852 6852 Розрахунки з іншими кредиторами (в іноземній валюті) account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
237 ua_psbp_6853 6853 Розрахунки по виконавчих листах account.data_account_type_payable TRUE l10n_ua_psbo_chart_template
238 ua_psbp_69 69 Доходи майбутніх періодів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
239 ua_psbp_701 701 Дохід від реалізації готової продукції account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
240 ua_psbp_702 702 Дохід від реалізації товарів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
241 ua_psbp_703 703 Дохід від реалізації робіт і послуг account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
242 ua_psbp_704 704 Вирахування з доходу account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
243 ua_psbp_705 705 Перестрахування account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
244 ua_psbp_7091 7091 Дохід від роздрібного продажу account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
245 ua_psbp_7092 7092 Вирахування з доходу від роздрібного продажу account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
246 ua_psbp_710 710 Дохід від первісного визнання та від зміни вартості активів, які обліковуються за справедливою вартістю account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
247 ua_psbp_711 711 Дохід від купівлі-продажу іноземної валюти account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
248 ua_psbp_712 712 Дохід від реалізації інших оборотних активів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
249 ua_psbp_713 713 Дохід від операційної оренди активів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
250 ua_psbp_714 714 Дохід від операційної курсової різниці account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
251 ua_psbp_715 715 Одержані штрафи, пені, неустойки account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
252 ua_psbp_716 716 Відшкодування раніше списаних активів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
253 ua_psbp_717 717 Дохід від списання кредиторської заборгованості account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
254 ua_psbp_718 718 Дохiд вiд безоплатно одержаних оборотних активiв account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
255 ua_psbp_719 719 Інші доходи від операційної діяльності account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
256 ua_psbp_721 721 Дохід від інвестицій в асоційовані підприємства account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
257 ua_psbp_722 722 Дохід від спільної діяльності account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
258 ua_psbp_723 723 Дохід від інвестицій в дочірні підприємства account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
259 ua_psbp_731 731 Дивіденди одержані account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
260 ua_psbp_732 732 Відсотки одержані account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
261 ua_psbp_733 733 Інші доходи від фінансових операцій account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
262 ua_psbp_740 740 Дохід від зміни вартості фінансових інструментів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
263 ua_psbp_741 741 Дохід від реалізації фінансових інвестицій account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
264 ua_psbp_742 742 Дохід від відновлення корисності активів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
265 ua_psbp_743 743 Доход от реализации имущественных комплексов account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
266 ua_psbp_744 744 Дохід від неопераційної курсової різниці account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
267 ua_psbp_745 745 Дохід від безоплатно одержаних активів account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
268 ua_psbp_746 746 Інші доходи account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
269 ua_psbp_751 751 Відшкодування збитків від надзвичайних подій account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
270 ua_psbp_752 752 Інші надзвичайні доходи account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
271 ua_psbp_76 76 Страхові платежі account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
272 ua_psbp_791 791 Результат операцiйної діяльності account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
273 ua_psbp_792 792 Результат фінансових операцій account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
274 ua_psbp_793 793 Результат іншої звичайної діяльності account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
275 ua_psbp_794 794 (не використовується) Результат надзвичайних подій account.data_account_type_revenue FALSE l10n_ua_psbo_chart_template
276 ua_psbp_801 801 Витрати сировини й матеріалів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
277 ua_psbp_802 802 Витрати купівельних напівфабрикатів та комплектуючих виробів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
278 ua_psbp_803 803 Витрати палива й енергії account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
279 ua_psbp_804 804 Витрати тари й тарних матеріалів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
280 ua_psbp_805 805 Витрати будівельних матеріалів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
281 ua_psbp_806 806 Витрати запасних частин account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
282 ua_psbp_807 807 Витрати матеріалів сільськогосподарського призначення account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
283 ua_psbp_808 808 Витрати товарів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
284 ua_psbp_809 809 Інші матеріальні витрати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
285 ua_psbp_811 811 Виплати за окладами й тарифами account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
286 ua_psbp_812 812 Премії та заохочення account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
287 ua_psbp_813 813 Компенсаційні виплати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
288 ua_psbp_814 814 Оплата відпусток account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
289 ua_psbp_815 815 Оплата іншого невідпрацьованого часу account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
290 ua_psbp_816 816 Інші витрати на оплату праці account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
291 ua_psbp_821 821 Відрахування на загальнообов'язкове державне соціальне страхування account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
292 ua_psbp_822 822 Відрахування на соціальне страхування (не використовується) account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
293 ua_psbp_823 823 Страхування на випадок безробіття (не використовується) account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
294 ua_psbp_824 824 Відрахування на індивідуальне страхування account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
295 ua_psbp_831 831 Амортизація основних засобів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
296 ua_psbp_832 832 Амортизація інших необоротних матеріальних активів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
297 ua_psbp_833 833 Амортизація нематеріальних активів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
298 ua_psbp_84 84 Інші операційні витрати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
299 ua_psbp_851 851 Інші затрати за елементами, податок на прибуток account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
300 ua_psbp_852 852 (не використовується) Інші затрати за елементами, надзвичайні затрати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
301 ua_psbp_901 901 Собівартість реалізованої готової продукції account.data_account_type_direct_costs FALSE l10n_ua_psbo_chart_template
302 ua_psbp_902 902 Собівартість реалізованих товарів account.data_account_type_direct_costs FALSE l10n_ua_psbo_chart_template
303 ua_psbp_903 903 Собівартість реалізованих робіт і послуг account.data_account_type_direct_costs FALSE l10n_ua_psbo_chart_template
304 ua_psbp_904 904 Страховi виплати account.data_account_type_direct_costs FALSE l10n_ua_psbo_chart_template
305 ua_psbp_91 91 Загальновиробничі витрати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
306 ua_psbp_92 92 Адміністративні витрати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
307 ua_psbp_93 93 Витрати на збут account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
308 ua_psbp_940 940 Витрати від первісного визнання та від зміни вартості активів, які обліковуються за справедливою вартістю account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
309 ua_psbp_941 941 Витрати на дослідження і розробки account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
310 ua_psbp_942 942 Витрати на купівлю-продаж іноземної валюти account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
311 ua_psbp_943 943 Собівартість реалізованих виробничих запасів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
312 ua_psbp_944 944 Сумнівні та безнадійні борги account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
313 ua_psbp_945 945 Втрати від операційної курсової різниці account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
314 ua_psbp_946 946 Втрати від знецінення запасів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
315 ua_psbp_947 947 Нестачі і втрати від псування цінностей account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
316 ua_psbp_948 948 Визнані штрафи, пені, неустойки account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
317 ua_psbp_949 949 Інші витрати операційної діяльності account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
318 ua_psbp_951 951 Відсотки за кредит account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
319 ua_psbp_952 952 Інші фінансові витрати account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
320 ua_psbp_961 961 Втрати від інвестицій в асоційовані підприємства account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
321 ua_psbp_962 962 Втрати від спільної діяльності account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
322 ua_psbp_963 963 Втрати від інвестицій в дочірні підприємства account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
323 ua_psbp_970 970 Витрати від зміни вартості фінансових інструментів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
324 ua_psbp_971 971 Собівартість реалізованих фінансових інвестицій account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
325 ua_psbp_972 972 Втрати від зменшення корисності активів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
326 ua_psbp_973 973 Себестоимость реализованных имущественных комплексов account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
327 ua_psbp_974 974 Втрати від неопераційних курсових різниць account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
328 ua_psbp_975 975 Уцінка необоротних активів і фінансових інвестицій account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
329 ua_psbp_976 976 Списання необоротних активів account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
330 ua_psbp_977 977 Інші витрати діяльності account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
331 ua_psbp_981 981 Податок на прибуток від усіх видів діяльності account.data_account_type_expenses FALSE l10n_ua_psbo_chart_template
332 ua_ias_1000 1000 Назви брендів account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
333 ua_ias_1001 1001 Заголовки та назви видань account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
334 ua_ias_1002 1002 Комп’ютерне програмне забезпечення account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
335 ua_ias_1003 1003 Ліцензії та привілеї account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
336 ua_ias_1004 1004 Авторські права, патенти, та інші права account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
337 ua_ias_1005 1005 Нематеріальні активи на етапі розробки account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
338 ua_ias_1009 1009 Амортизація нематеріальних активів account.data_account_type_depreciation FALSE l10n_ua_ias_chart_template
339 ua_ias_1010 1010 Земля account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
340 ua_ias_1011 1011 Будівлі account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
341 ua_ias_1012 1012 Машини та обладнання account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
342 ua_ias_1013 1013 Автомобілі account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
343 ua_ias_1014 1014 Меблі та приладдя account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
344 ua_ias_1015 1015 Офісне обладнання account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
345 ua_ias_1019 1019 Амортизація основних засобів account.data_account_type_depreciation FALSE l10n_ua_ias_chart_template
346 ua_ias_1020 1020 Гудвіл account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
347 ua_ias_1030 1030 Біологічні активи account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
348 ua_ias_1040 1040 Інвестиції account.data_account_type_fixed_assets FALSE l10n_ua_ias_chart_template
349 ua_ias_1100 1100 Запаси (Склад) account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
350 ua_ias_1101 1101 Незавершене виробництво account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
351 ua_ias_1102 1102 Готова продукція account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
352 ua_ias_1120 1120 Дебіторська заборгованість за товари та послуги account.data_account_type_receivable TRUE l10n_ua_ias_chart_template
353 ua_ias_1121 1121 Відвантажено зі складу без рахунку-фактури account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
354 ua_ias_1130 1130 Аванси партнерам account.data_account_type_payable TRUE l10n_ua_ias_chart_template
355 ua_ias_1131 1131 Інші оборотні активи account.data_account_type_payable TRUE l10n_ua_ias_chart_template
356 ua_ias_1140 1140 Податковий кредит по ПДВ account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
357 ua_ias_1141 1141 Аванс по податку на прибуток account.data_account_type_payable TRUE l10n_ua_ias_chart_template
358 ua_ias_1142 1142 Кошти на СЕА ПДВ account.data_account_type_payable TRUE l10n_ua_ias_chart_template
359 ua_ias_1143 1143 Переплата по лицьовому рахунку з ПДВ account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
360 ua_ias_1144 1144 Аванс по ЄСВ account.data_account_type_payable TRUE l10n_ua_ias_chart_template
361 ua_ias_1150 1150 Короткострокові фінансові інвестиції account.data_account_type_current_assets FALSE l10n_ua_ias_chart_template
362 ua_ias_1160 1160 Довгострокові інвестиції account.data_account_type_non_current_assets FALSE l10n_ua_ias_chart_template
363 ua_ias_1170 1170 Довгострокова дебіторська заборгованість account.data_account_type_non_current_assets FALSE l10n_ua_ias_chart_template
364 ua_ias_1180 1180 Відстрочені податкові активи account.data_account_type_non_current_assets FALSE l10n_ua_ias_chart_template
365 ua_ias_1200 1200 Кредиторська заборгованість за товари та послуги account.data_account_type_payable TRUE l10n_ua_ias_chart_template
366 ua_ias_1201 1201 Отримано на склад без рахунку-фактури account.data_account_type_current_liabilities FALSE l10n_ua_ias_chart_template
367 ua_ias_1202 1202 Податок на прибуток account.data_account_type_payable TRUE l10n_ua_ias_chart_template
368 ua_ias_1203 1203 ПДВ account.data_account_type_payable TRUE l10n_ua_ias_chart_template
369 ua_ias_1204 1204 Податкові зобов’язання по ПДВ account.data_account_type_current_liabilities FALSE l10n_ua_ias_chart_template
370 ua_ias_1205 1205 ПДФО account.data_account_type_payable TRUE l10n_ua_ias_chart_template
371 ua_ias_12051 12051 Військовий збір account.data_account_type_payable TRUE l10n_ua_ias_chart_template
372 ua_ias_1206 1206 ЄСВ account.data_account_type_payable TRUE l10n_ua_ias_chart_template
373 ua_ias_1207 1207 Інші податки account.data_account_type_payable TRUE l10n_ua_ias_chart_template
374 ua_ias_1208 1208 Заробітна плата та винагороди account.data_account_type_payable TRUE l10n_ua_ias_chart_template
375 ua_ias_1210 1210 Аванси одержані від покупців та замовників account.data_account_type_receivable TRUE l10n_ua_ias_chart_template
376 ua_ias_1220 1220 Інші короткострокові зобов’язання account.data_account_type_current_liabilities FALSE l10n_ua_ias_chart_template
377 ua_ias_1230 1230 Короткострокові позики account.data_account_type_current_liabilities FALSE l10n_ua_ias_chart_template
378 ua_ias_1240 1240 Короткострокова частка за довгострокові позики account.data_account_type_current_liabilities FALSE l10n_ua_ias_chart_template
379 ua_ias_1300 1300 Довгострокові позики account.data_account_type_non_current_liabilities FALSE l10n_ua_ias_chart_template
380 ua_ias_1301 1301 Довгострокові кредити account.data_account_type_non_current_liabilities FALSE l10n_ua_ias_chart_template
381 ua_ias_1302 1302 Іпотека account.data_account_type_non_current_liabilities FALSE l10n_ua_ias_chart_template
382 ua_ias_1310 1310 Відстрочені податкові зобов’язання account.data_account_type_non_current_liabilities FALSE l10n_ua_ias_chart_template
383 ua_ias_1320 1320 Витрати майбутніх періодів account.data_account_type_non_current_liabilities FALSE l10n_ua_ias_chart_template
384 ua_ias_1330 1330 Інші довгострокові зобов’язання account.data_account_type_non_current_liabilities FALSE l10n_ua_ias_chart_template
385 ua_ias_1400 1400 Статутний капітал account.data_account_type_equity FALSE l10n_ua_ias_chart_template
386 ua_ias_1401 1401 Емісійний фонд account.data_account_type_equity FALSE l10n_ua_ias_chart_template
387 ua_ias_1402 1402 Вилучений капітал account.data_account_type_equity FALSE l10n_ua_ias_chart_template
388 ua_ias_1403 1403 Додатковий оплачений капітал account.data_account_type_equity FALSE l10n_ua_ias_chart_template
389 ua_ias_1404 1404 Резерв переоцінки account.data_account_type_equity FALSE l10n_ua_ias_chart_template
390 ua_ias_1405 1405 Неоплачений капітал account.data_account_type_equity FALSE l10n_ua_ias_chart_template
391 ua_ias_1406 1406 Нерозподілений прибуток (непокритий збиток) account.data_account_type_equity FALSE l10n_ua_ias_chart_template
392 ua_ias_1407 1407 Частка меншості account.data_account_type_equity FALSE l10n_ua_ias_chart_template
393 ua_ias_1408 1408 Ефект курсових різниць account.data_account_type_equity FALSE l10n_ua_ias_chart_template
394 ua_ias_2000 2000 Дохід від продажу (категорія № 1) account.data_account_type_revenue FALSE l10n_ua_ias_chart_template
395 ua_ias_2001 2001 Дохід від продажу (категорія № 2) account.data_account_type_revenue FALSE l10n_ua_ias_chart_template
396 ua_ias_2002 2002 Дохід від продажу (категорія № 3) account.data_account_type_revenue FALSE l10n_ua_ias_chart_template
397 ua_ias_2003 2003 Дохід від продажу (категорія № 4) account.data_account_type_revenue FALSE l10n_ua_ias_chart_template
398 ua_ias_2100 2100 Фінансовий результат account.data_unaffected_earnings FALSE l10n_ua_ias_chart_template
399 ua_ias_2200 2200 Собівартість продажу (категорія № 1) account.data_account_type_direct_costs FALSE l10n_ua_ias_chart_template
400 ua_ias_2201 2201 Собівартість продажу (категорія № 2) account.data_account_type_direct_costs FALSE l10n_ua_ias_chart_template
401 ua_ias_2202 2202 Собівартість продажу (категорія № 3) account.data_account_type_direct_costs FALSE l10n_ua_ias_chart_template
402 ua_ias_2203 2203 Собівартість продажу (категорія № 4) account.data_account_type_direct_costs FALSE l10n_ua_ias_chart_template
403 ua_ias_2300 2300 Адміністративні витрати account.data_account_type_expenses FALSE l10n_ua_ias_chart_template
404 ua_ias_2400 2400 Витрати на збут account.data_account_type_expenses FALSE l10n_ua_ias_chart_template
405 ua_ias_2500 2500 Інші витрати account.data_account_type_expenses FALSE l10n_ua_ias_chart_template
406 ua_ias_2600 2600 Податок на прибуток account.data_account_type_expenses FALSE l10n_ua_ias_chart_template
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="acc_tag_vat" model="account.account.tag">
<field name="name">ПДВ</field>
<field name="applicability">accounts</field>
</record>
</data>
</odoo>
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<record id="l10n_ua_psbo_chart_template" model="account.chart.template">
<field name="name">План рахунків ПСБО</field>
<field name="cash_account_code_prefix">301</field>
<field name="bank_account_code_prefix">311</field>
<field name="transfer_account_code_prefix">333</field>
<field name="code_digits">6</field>
<field name="currency_id" ref="base.UAH"/>
</record>
<record id="l10n_ua_ias_chart_template" model="account.chart.template">
<field name="name">План рахунків МСФЗ</field>
<field name="bank_account_code_prefix">1112</field>
<field name="cash_account_code_prefix">1111</field>
<field name="transfer_account_code_prefix">1119</field>
<field name="code_digits">6</field>
<field name="currency_id" ref="base.UAH"/>
</record>
</odoo>
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data noupdate="1">
<record id="l10n_ua_psbo_chart_template" model="account.chart.template">
<field name="property_account_receivable_id" ref="ua_psbp_361"/>
<field name="property_account_payable_id" ref="ua_psbp_631"/>
<field name="property_account_expense_categ_id" ref="ua_psbp_901"/>
<field name="property_account_income_categ_id" ref="ua_psbp_701"/>
<field name="complete_tax_set" eval="True"/>
<field name="use_anglo_saxon" eval="True"/>
<field name="property_stock_account_input_categ_id" ref="ua_psbp_2812"/>
<field name="property_stock_account_output_categ_id" ref="ua_psbp_2811"/>
<field name="property_stock_valuation_account_id" ref="ua_psbp_281"/>
<field name="income_currency_exchange_account_id" ref="ua_psbp_711"/>
<field name="expense_currency_exchange_account_id" ref="ua_psbp_942"/>
</record>
<record id="l10n_ua_ias_chart_template" model="account.chart.template">
<field name="property_account_receivable_id" ref="ua_ias_1120"/>
<field name="property_account_payable_id" ref="ua_ias_1200"/>
<field name="property_account_expense_categ_id" ref="ua_ias_2200"/>
<field name="property_account_income_categ_id" ref="ua_ias_2000"/>
<field name="complete_tax_set" eval="True"/>
<field name="use_anglo_saxon" eval="True"/>
<field name="property_stock_account_input_categ_id" ref="ua_ias_1201"/>
<field name="property_stock_account_output_categ_id" ref="ua_ias_1121"/>
<field name="property_stock_valuation_account_id" ref="ua_ias_1100"/>
<field name="income_currency_exchange_account_id" ref="ua_ias_2100"/>
<field name="expense_currency_exchange_account_id" ref="ua_ias_2500"/>
</record>
<function model="account.chart.template" name="try_loading_for_current_company">
<value eval="[ref('l10n_ua.l10n_ua_psbo_chart_template')]"/>
</function>
</data>
</odoo>
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="tax_group_vat20" model="account.tax.group">
<field name="name">ПДВ 20%</field>
</record>
<record id="tax_group_vat7" model="account.tax.group">
<field name="name">ПДВ 7%</field>
</record>
<record id="tax_group_vat0" model="account.tax.group">
<field name="name">ПДВ 0%</field>
</record>
<record id="tax_group_vat_free" model="account.tax.group">
<field name="name">Звільнено від ПДВ</field>
</record>
<record id="tax_group_not_vat" model="account.tax.group">
<field name="name">Не є ПДВ</field>
</record>
</data>
</odoo>
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="tax_tag_vat20" model="account.account.tag">
<field name="name">ПДВ 20%</field>
<field name="applicability">taxes</field>
</record>
<record id="tax_tag_vat7" model="account.account.tag">
<field name="name">ПДВ 7%</field>
<field name="applicability">taxes</field>
</record>
<record id="tax_tag_vat0" model="account.account.tag">
<field name="name">ПДВ 0%</field>
<field name="applicability">taxes</field>
</record>
<record id="tax_tag_vat_free" model="account.account.tag">
<field name="name">Звільнено від ПДВ</field>
<field name="applicability">taxes</field>
</record>
<record id="tax_tag_vat_not" model="account.account.tag">
<field name="name">Не є об'єктом ПДВ</field>
<field name="applicability">taxes</field>
</record>
</data>
</odoo>
@@ -0,0 +1,485 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data noupdate="0">
<record id="ua_psbp_6412" model="account.account.template">
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.acc_tag_vat')])]"/>
</record>
<!-- Tax template for VAT -->
<record id="sale_tax_template_vat20_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">10</field>
<field name="name">Реалізація ПДВ 20%</field>
<field name="description">+ ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="sale_tax_template_vat20incl_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">10</field>
<field name="name">Реалізація в т. ч. ПДВ 20%</field>
<field name="description">в т. ч. ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">sale</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="sale_tax_template_vat7_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">11</field>
<field name="name">Реалізація ПДВ 7%</field>
<field name="description">+ ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="sale_tax_template_vat7incl_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">11</field>
<field name="name">Реалізація в т. ч. ПДВ 7%</field>
<field name="description">в т .ч. ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">sale</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="sale_tax_template_vat0_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">12</field>
<field name="name">Реалізація ПДВ 0%</field>
<field name="description">ПДВ 0%</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat0')])]"/>
</record>
<record id="sale_tax_template_vat_free_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">13</field>
<field name="name">Реалізація звільнена від ПДВ</field>
<field name="description">Звільнено від ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_free')])]"/>
</record>
<record id="sale_tax_template_vat_not_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">14</field>
<field name="name">Реалізація Не є об'єктом ПДВ</field>
<field name="description">Не є об'єктом ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_psbp_6431"/>
<field name="refund_account_id" ref="ua_psbp_6431"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_not')])]"/>
</record>
<record id="purchase_tax_template_vat20_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">20</field>
<field name="name">Придбання ПДВ 20%</field>
<field name="description">+ ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="purchase_tax_template_vat20incl_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">20</field>
<field name="name">Придбання в т. ч. ПДВ 20%</field>
<field name="description">в т. ч. ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">purchase</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="purchase_tax_template_vat7_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">21</field>
<field name="name">Придбання ПДВ 7%</field>
<field name="description">+ ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="purchase_tax_template_vat7incl_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">21</field>
<field name="name">Придбання в т. ч. ПДВ 7%</field>
<field name="description">в т. ч. ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">purchase</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="purchase_tax_template_vat0_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">22</field>
<field name="name">Придбання ПДВ 0%</field>
<field name="description">ПДВ 0%</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat0')])]"/>
</record>
<record id="purchase_tax_template_vat_free_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">23</field>
<field name="name">Придбання звільнене від ПДВ</field>
<field name="description">Звільнено від ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_free')])]"/>
</record>
<record id="purchase_tax_template_vat_not_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">24</field>
<field name="name">Придбання Не є об'єктом ПДВ</field>
<field name="description">Не є об'єктом ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_psbp_6441"/>
<field name="refund_account_id" ref="ua_psbp_6441"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_not')])]"/>
</record>
<!-- Simplified tax system -->
<!-- Sale taxes -->
<record id="simple_tax_sale_product_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">30</field>
<field name="name">Дохід від продажу товарів</field>
<field name="description">Дохід від продажу товарів</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<record id="simple_tax_sale_gift_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">31</field>
<field name="name">Дохід від безоплатно отриманих товарів</field>
<field name="description">Дохід від безоплатно отриманих товарів</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<record id="simple_tax_sale_old_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">32</field>
<field name="name">Дохід від заборгованності за якою минув строк позивної давності</field>
<field name="description">Дохід від заборгованності, за якою минув строк позивної давності</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<record id="simple_tax_sale_15_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">33</field>
<field name="name">Дохід, за ставкою 15%</field>
<field name="description">Дохід за ставкою 15%</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<!-- Purchase taxes -->
<record id="simple_tax_purchase_product_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">40</field>
<field name="name">Витрати від продажу товарів</field>
<field name="description">Витрати від продажу товарів</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<record id="simple_tax_purchase_salary_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">41</field>
<field name="name">Витрати на оплату праці</field>
<field name="description">Витрати на оплату праці найманих працівників</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<record id="simple_tax_purchase_esv_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">42</field>
<field name="name">Витрати ЄСВ</field>
<field name="description">Витрати на ЄСВ</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<record id="simple_tax_purchase_other_psbo" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_psbo_chart_template"/>
<field name="sequence">43</field>
<field name="name">Витрати інші</field>
<field name="description">Витрати інші</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<!-- IAS -->
<record id="ua_ias_1203" model="account.account.template">
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.acc_tag_vat')])]"/>
</record>
<!-- Tax template for VAT -->
<record id="sale_tax_template_vat20" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">10</field>
<field name="name">Реалізація з ПДВ 20%</field>
<field name="description">+ ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="sale_tax_template_vat20incl" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">10</field>
<field name="name">Реалізація в т. ч. ПДВ 20%</field>
<field name="description">в т. ч. ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">sale</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="sale_tax_template_vat7" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">11</field>
<field name="name">Реалізація з ПДВ 7%</field>
<field name="description">+ ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="sale_tax_template_vat7incl" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">11</field>
<field name="name">Реалізація в т. ч. ПДВ 7%</field>
<field name="description">в т .ч. ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">sale</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="sale_tax_template_vat0" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">12</field>
<field name="name">Реалізація з ПДВ 0%</field>
<field name="description">ПДВ 0%</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat0')])]"/>
</record>
<record id="sale_tax_template_vat_free" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">13</field>
<field name="name">Реалізація звільнена від ПДВ</field>
<field name="description">Звільнено від ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_free')])]"/>
</record>
<record id="sale_tax_template_vat_not" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">14</field>
<field name="name">Реалізація не є об'єктом ПДВ</field>
<field name="description">Не є об'єктом ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="ua_ias_1204"/>
<field name="refund_account_id" ref="ua_ias_1204"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_not')])]"/>
</record>
<record id="purchase_tax_template_vat20" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">20</field>
<field name="name">Придбання з ПДВ 20%</field>
<field name="description">+ ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="purchase_tax_template_vat20incl" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">20</field>
<field name="name">Придбання в т. ч. ПДВ 20%</field>
<field name="description">в т. ч. ПДВ 20%</field>
<field name="amount">20</field>
<field name="type_tax_use">purchase</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat20')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat20"/>
</record>
<record id="purchase_tax_template_vat7" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">21</field>
<field name="name">Придбання з ПДВ 7%</field>
<field name="description">+ ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="purchase_tax_template_vat7incl" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">21</field>
<field name="name">Придбання в т. ч. ПДВ 7%</field>
<field name="description">в т. ч. ПДВ 7%</field>
<field name="amount">7</field>
<field name="type_tax_use">purchase</field>
<field name="price_include" eval="1"/>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat7')])]"/>
<field name="tax_group_id" ref="l10n_ua.tax_group_vat7"/>
</record>
<record id="purchase_tax_template_vat0" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">22</field>
<field name="name">Придбання з ПДВ 0%</field>
<field name="description">ПДВ 0%</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat0')])]"/>
</record>
<record id="purchase_tax_template_vat_free" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">23</field>
<field name="name">Придбання звільнене від ПДВ</field>
<field name="description">Звільнено від ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_free')])]"/>
</record>
<record id="purchase_tax_template_vat_not" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">24</field>
<field name="name">Придбання не є об'єктом ПДВ</field>
<field name="description">Не є об'єктом ПДВ</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
<field name="account_id" ref="ua_ias_1140"/>
<field name="refund_account_id" ref="ua_ias_1140"/>
<field name="tag_ids" eval="[(6,0,[ref('l10n_ua.tax_tag_vat_not')])]"/>
</record>
<!-- Simplified tax system -->
<!-- Sale taxes -->
<record id="simple_tax_sale_product" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">30</field>
<field name="name">Дохід від продажу товарів</field>
<field name="description">Дохід від продажу товарів</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<record id="simple_tax_sale_gift" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">31</field>
<field name="name">Дохід від безоплатно отриманих товарів</field>
<field name="description">Дохід від безоплатно отриманих товарів</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<record id="simple_tax_sale_old" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">32</field>
<field name="name">Дохід від заборгованності, за якою минув строк позивної давності</field>
<field name="description">Дохід від заборгованності, за якою минув строк позивної давності</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<record id="simple_tax_sale_15" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">33</field>
<field name="name">Дохід, що оподатковується за ставкою 15%</field>
<field name="description">Дохід за ставкою 15%</field>
<field name="amount">0</field>
<field name="type_tax_use">sale</field>
</record>
<!-- Purchase taxes -->
<record id="simple_tax_purchase_product" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">40</field>
<field name="name">Витрати від продажу товарів</field>
<field name="description">Витрати від продажу товарів</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<record id="simple_tax_purchase_salary" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">41</field>
<field name="name">Витрати на оплату праці найманих працівників</field>
<field name="description">Витрати на оплату праці найманих працівників</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<record id="simple_tax_purchase_esv" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">42</field>
<field name="name">Витрати на ЄСВ</field>
<field name="description">Витрати на ЄСВ</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
<record id="simple_tax_purchase_other" model="account.tax.template">
<field name="chart_template_id" ref="l10n_ua_ias_chart_template"/>
<field name="sequence">43</field>
<field name="name">Витрати інші</field>
<field name="description">Витрати інші</field>
<field name="amount">0</field>
<field name="type_tax_use">purchase</field>
</record>
</data>
</odoo>
Binary file not shown.

After

Width:  |  Height:  |  Size: 628 B

+3 -1
View File
@@ -81,11 +81,13 @@ class LunchProductReport(models.Model):
users.id AS user_id,
fav.user_id IS NOT NULL AS is_favorite,
product.new_until >= current_date AS is_new,
(SELECT date FROM lunch_order WHERE product_id = product.id AND user_id = users.id AND date <= current_date ORDER BY date DESC LIMIT 1) AS last_order_date
max(l_order.date) AS last_order_date
FROM lunch_product product
RIGHT JOIN res_users users ON users.company_id = product.company_id -- multi company
LEFT JOIN lunch_product_favorite_user_rel fav ON fav.product_id = product.id AND fav.user_id = users.id
JOIN res_groups_users_rel groups ON groups.uid = users.id -- only generate for internal users
JOIN lunch_order l_order ON l_order.product_id = product.id AND l_order.user_id = users.id AND l_order.date <= current_date
WHERE users.active AND product.active AND groups.gid = %%s --only take into account active products and users
GROUP BY product.id, product.name, product.category_id, product.description, product.price, product.supplier_id, product.company_id, product.active, users.id, is_favorite, is_new
);
""" % self._table, (self.env.ref('base.group_user').id,))
+2
View File
@@ -20,6 +20,8 @@ class IrAttachment(models.Model):
attached to.
"""
self.ensure_one()
if not self.res_model:
return
related_record = self.env[self.res_model].browse(self.res_id)
# message_main_attachment_id field can be empty, that's why we compare to False;
# we are just checking that it exists on the model before writing it
+14 -4
View File
@@ -28,13 +28,23 @@ class IrModel(models.Model):
query = "DELETE FROM mail_message WHERE model in %s"
self.env.cr.execute(query, [models])
# Get files attached solely by the models
query = """
DELETE FROM ir_attachment
WHERE res_model in %s
RETURNING store_fname
SELECT DISTINCT store_fname
FROM ir_attachment
WHERE res_model IN %s
EXCEPT
SELECT store_fname
FROM ir_attachment
WHERE res_model not IN %s;
"""
self.env.cr.execute(query, [models, models])
fnames = self.env.cr.fetchall()
query = """DELETE FROM ir_attachment WHERE res_model in %s"""
self.env.cr.execute(query, [models])
for (fname,) in self.env.cr.fetchall():
for (fname,) in fnames:
self.env['ir.attachment']._file_delete(fname)
return super(IrModel, self).unlink()
+1 -1
View File
@@ -616,7 +616,7 @@ class Channel(models.Model):
if channel.channel_type == 'chat':
# direct_partner should be removed from channel info since we can find it from members and channel_type
# we keep it know to avoid change tests and javascript
direct_partner = direct_channel_partners.filtered(lambda pc: pc.partner_id.id != self.env.user.partner_id.id)
direct_partner = channel_partners.filtered(lambda pc: pc.partner_id.id != self.env.user.partner_id.id)
info['direct_partner'] = [partner_infos[direct_partner[0].partner_id.id]]
# add needaction and unread counter, since the user is logged
info['message_needaction_counter'] = channel.message_needaction_counter
+7 -3
View File
@@ -476,9 +476,13 @@ class MailTemplate(models.Model):
report = template.report_template
report_service = report.report_name
if report.report_type not in ['qweb-html', 'qweb-pdf']:
raise UserError(_('Unsupported report type %s found.') % report.report_type)
result, format = report.render_qweb_pdf([res_id])
if report.report_type in ['qweb-html', 'qweb-pdf']:
result, format = report.render_qweb_pdf([res_id])
else:
res = report.render([res_id])
if not res:
raise UserError(_('Unsupported report type %s found.') % report.report_type)
result, format = res
# TODO in trunk, change return format to binary to match message_post expected format
result = base64.b64encode(result)
+3
View File
@@ -353,6 +353,9 @@ class MrpWorkorder(models.Model):
self.button_finish()
return True
def _get_byproduct_move_to_update(self):
return self.production_id.move_finished_ids.filtered(lambda x: (x.product_id.id != self.production_id.product_id.id) and (x.state not in ('done', 'cancel')))
def _create_or_update_finished_line(self):
"""
1. Check that the final lot and the quantity producing is valid regarding
+10 -1
View File
@@ -26,4 +26,13 @@ class ResConfigSettings(models.TransientModel):
@api.onchange('group_mrp_routings')
def _onchange_group_mrp_routings(self):
self.module_mrp_workorder = self.group_mrp_routings
# If we activate 'MRP Work Orders', it means that we need to install 'mrp_workorder'.
# The opposite is not always true: other modules (such as 'quality_mrp_workorder') may
# depend on 'mrp_workorder', so we should not automatically uninstall the module if 'MRP
# Work Orders' is deactivated.
# Long story short: if 'mrp_workorder' is already installed, we don't uninstall it based on
# group_mrp_routings
if self.group_mrp_routings:
self.module_mrp_workorder = True
elif not self.env['ir.module.module'].search([('name', '=', 'mrp_workorder'), ('state', '=', 'installed')]):
self.module_mrp_workorder = False
+6
View File
@@ -6,6 +6,7 @@ from dateutil.relativedelta import relativedelta
from odoo import api, fields, models, _
from odoo.exceptions import UserError
from odoo.osv import expression
class StockRule(models.Model):
@@ -132,3 +133,8 @@ class ProcurementGroup(models.Model):
else:
procurements_without_kit.append(procurement)
return super(ProcurementGroup, self).run(procurements_without_kit)
def _get_moves_to_assign_domain(self):
domain = super(ProcurementGroup, self)._get_moves_to_assign_domain()
domain = expression.AND([domain, [('production_id', '=', False)]])
return domain
+3 -2
View File
@@ -170,18 +170,19 @@ class StockWarehouse(models.Model):
manufacture_steps = vals.get('manufacture_steps', def_values['manufacture_steps'])
code = vals.get('code') or code
code = code.replace(' ', '').upper()
company_id = vals.get('company_id', self.company_id.id)
values.update({
'pbm_loc_id': {
'name': _('Pre-Production'),
'active': manufacture_steps in ('pbm', 'pbm_sam'),
'usage': 'internal',
'barcode': code + '-PREPRODUCTION'
'barcode': self._valid_barcode(code + '-PREPRODUCTION', company_id)
},
'sam_loc_id': {
'name': _('Post-Production'),
'active': manufacture_steps == 'pbm_sam',
'usage': 'internal',
'barcode': code + '-POSTPRODUCTION'
'barcode': self._valid_barcode(code + '-POSTPRODUCTION', company_id)
},
})
return values
+4 -4
View File
@@ -55,14 +55,14 @@ class AuthorizeController(http.Controller):
except ValidationError as e:
message = e.args[0]
if isinstance(message, dict) and 'missing_fields' in message:
msg = _("The transaction cannot be processed because some contact details are missing or invalid: ")
message = msg + ', '.join(message['missing_fields']) + '. '
if request.env.user._is_public():
message += _("Please sign in to complete your profile.")
message = _("Please sign in to complete the payment.")
# update message if portal mode = b2b
if request.env['ir.config_parameter'].sudo().get_param('auth_signup.allow_uninvited', 'False').lower() == 'false':
message += _("If you don't have any account, please ask your salesperson to update your profile. ")
message += _(" If you don't have any account, ask your salesperson to grant you a portal access. ")
else:
msg = _("The transaction cannot be processed because some contact details are missing or invalid: ")
message = msg + ', '.join(message['missing_fields']) + '. '
message += _("Please complete your profile. ")
return {
+4 -4
View File
@@ -48,13 +48,13 @@ class PaymentAcquirerPayulatam(models.Model):
# payulatam will not allow any payment twise even if payment was failed last time.
# so, replace reference code if payment is not done or pending.
if tx.state not in ['done', 'pending']:
tx.acquirer_reference = str(uuid.uuid4())
tx.reference = str(uuid.uuid4())
payulatam_values = dict(
values,
merchantId=self.payulatam_merchant_id,
accountId=self.payulatam_account_id,
description=values.get('reference'),
referenceCode=tx.acquirer_reference,
referenceCode=tx.reference,
amount=values['amount'],
tax='0', # This is the transaction VAT. If VAT zero is sent the system, 19% will be applied automatically. It can contain two decimals. Eg 19000.00. In the where you do not charge VAT, it should should be set as 0.
taxReturnBase='0',
@@ -101,8 +101,8 @@ class PaymentTransactionPayulatam(models.Model):
def _payulatam_form_get_invalid_parameters(self, data):
invalid_parameters = []
if self.acquirer_reference and data.get('referenceCode') != self.acquirer_reference:
invalid_parameters.append(('Reference code', data.get('referenceCode'), self.acquirer_reference))
if self.acquirer_reference and data.get('transactionId') != self.acquirer_reference:
invalid_parameters.append(('Reference code', data.get('transactionId'), self.acquirer_reference))
if float_compare(float(data.get('TX_VALUE', '0.0')), self.amount, 2) != 0:
invalid_parameters.append(('Amount', data.get('TX_VALUE'), '%.2f' % self.amount))
if data.get('merchantId') != self.acquirer_id.payulatam_merchant_id:
@@ -1,13 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="0">
<data noupdate="1">
<record id="seq_picking_type_posout" model="ir.sequence">
<field name="name">Picking POS</field>
<field name="prefix">POS</field>
<field name="padding">5</field>
<field name="company_id" eval="False"/>
</record>
</data>
<data noupdate="0">
<record id="picking_type_posout" model="stock.picking.type">
<field name="name">PoS Orders</field>
<field name="sequence_id" ref="seq_picking_type_posout"/>
+4 -5
View File
@@ -363,7 +363,7 @@ class PosOrder(models.Model):
account_analytic=account_analytic)
if res:
line1, line2 = res
line1 = Product._convert_prepared_anglosaxon_line(line1, order.partner_id)
line1 = Product._convert_prepared_anglosaxon_line(line1, line['partner_id'])
insert_data('counter_part', {
'name': line1['name'],
'account_id': line1['account_id'],
@@ -373,7 +373,7 @@ class PosOrder(models.Model):
})
line2 = Product._convert_prepared_anglosaxon_line(line2, order.partner_id)
line2 = Product._convert_prepared_anglosaxon_line(line2, line['partner_id'])
insert_data('counter_part', {
'name': line2['name'],
'account_id': line2['account_id'],
@@ -400,7 +400,6 @@ class PosOrder(models.Model):
def insert_data(data_type, values):
# if have_to_group_by:
values.update({
'partner_id': partner_id,
'move_id': move.id,
})
@@ -755,7 +754,7 @@ class PosOrder(models.Model):
try:
pos_order.action_pos_order_paid()
except psycopg2.OperationalError:
except psycopg2.DatabaseError:
# do not hide transactional errors, the order(s) won't be saved!
raise
except Exception as e:
@@ -763,7 +762,7 @@ class PosOrder(models.Model):
if to_invoice:
pos_order.action_pos_order_invoice()
pos_order.invoice_id.sudo().action_invoice_open()
pos_order.invoice_id.sudo().with_context(force_company=self.env.user.company_id.id).action_invoice_open()
pos_order.account_move = pos_order.invoice_id.move_id
return order_ids
+1 -1
View File
@@ -2697,7 +2697,7 @@ exports.NumpadState = Backbone.Model.extend({
this.set({
buffer: "-" + newChar
});
} else {
} else if (!(newChar === '.') || oldBuffer.indexOf('.') === -1) {
this.set({
buffer: (this.get('buffer')) + newChar
});
+82 -40
View File
@@ -151,6 +151,61 @@ var ScreenWidget = PosBaseWidget.extend({
}
}
},
/**
* Handles the error response from the server when we push
* an invoiceable order
* Displays appropriates warnings and errors and
* proposes subsequent actions
*
* @private
* @param {PosModel} order: the order to consider, defaults to current order
* @param {Boolean} refresh_screens: whether or not displayed screens should refresh
* @param {Object} error: the error provided by Ajax
*/
_handleFailedPushForInvoice: function (order, refresh_screen, error) {
var self = this;
order = order || this.pos.get_order();
this.invoicing = false;
order.finalized = false;
if (error.message === 'Missing Customer') {
this.gui.show_popup('confirm',{
'title': _t('Please select the Customer'),
'body': _t('You need to select the customer before you can invoice an order.'),
confirm: function(){
self.gui.show_screen('clientlist', null, refresh_screen);
},
});
} else if (error.message === 'Backend Invoice') {
this.gui.show_popup('confirm',{
'title': _t('Please print the invoice from the backend'),
'body': _t('The order has been synchronized earlier. Please make the invoice from the backend for the order: ') + error.data.order.name,
confirm: function () {
this.gui.show_screen('receipt', null, refresh_screen);
},
cancel: function () {
this.gui.show_screen('receipt', null, refresh_screen);
},
});
} else if (error.code < 0) { // XmlHttpRequest Errors
this.gui.show_popup('error',{
'title': _t('The order could not be sent'),
'body': _t('Check your internet connection and try again.'),
cancel: function () {
this.gui.show_screen('receipt', {button_print_invoice: true}, refresh_screen); // refresh if necessary
},
});
} else if (error.code === 200) { // OpenERP Server Errors
this.gui.show_popup('error-traceback',{
'title': error.data.message || _t("Server Error"),
'body': error.data.debug || _t('The server encountered an error while receiving your order.'),
});
} else { // ???
this.gui.show_popup('error',{
'title': _t("Unknown Error"),
'body': _t("The order could not be sent to the server due to an unknown error"),
});
}
},
});
/*--------------------------------------*\
@@ -1553,7 +1608,9 @@ var ReceiptScreenWidget = ScreenWidget.extend({
return this.pos.config.iface_print_auto && !this.pos.get_order()._printed;
},
should_close_immediately: function() {
return this.pos.config.iface_print_via_proxy && this.pos.config.iface_print_skip_screen;
var order = this.pos.get_order();
var invoiced_finalized = order.is_to_invoice() ? order.finalized : true;
return this.pos.config.iface_print_via_proxy && this.pos.config.iface_print_skip_screen && invoiced_finalized;
},
lock_screen: function(locked) {
this._locked = locked;
@@ -1657,9 +1714,32 @@ var ReceiptScreenWidget = ScreenWidget.extend({
self.print();
}
});
var button_print_invoice = this.$('.button.print_invoice');
button_print_invoice.click(function () {
var order = self.pos.get_order();
var invoiced = self.pos.push_and_invoice_order(order);
self.invoicing = true;
invoiced.fail(self._handleFailedPushForInvoice.bind(self, order, true)); // refresh
invoiced.then(function(){
self.invoicing = false;
self.gui.show_screen('receipt', {button_print_invoice: false}, true); // refresh
});
});
},
render_change: function() {
var self = this;
this.$('.change-value').html(this.format_currency(this.pos.get_order().get_change()));
var order = this.pos.get_order();
var order_screen_params = order.get_screen_data('params');
var button_print_invoice = this.$('.button.print_invoice');
if (order_screen_params && order_screen_params.button_print_invoice) {
button_print_invoice.show();
} else {
button_print_invoice.hide();
}
},
render_receipt: function() {
this.$('.pos-receipt-container').html(QWeb.render('PosTicket', this.get_receipt_render_env()));
@@ -2084,45 +2164,7 @@ var PaymentScreenWidget = ScreenWidget.extend({
var invoiced = this.pos.push_and_invoice_order(order);
this.invoicing = true;
invoiced.catch(function (error) {
self.invoicing = false;
order.finalized = false;
if (error.message === 'Missing Customer') {
self.gui.show_popup('confirm',{
'title': _t('Please select the Customer'),
'body': _t('You need to select the customer before you can invoice an order.'),
confirm: function(){
self.gui.show_screen('clientlist');
},
});
} else if (error.message === 'Backend Invoice') {
self.gui.show_popup('confirm',{
'title': _t('Please print the invoice from the backend'),
'body': _t('The order has been synchronized earlier. Please make the invoice from the backend for the order: ') + error.data.order.name,
confirm: function () {
this.gui.show_screen('receipt');
},
cancel: function () {
this.gui.show_screen('receipt');
},
});
} else if (error.code < 0) { // XmlHttpRequest Errors
self.gui.show_popup('error',{
'title': _t('The order could not be sent'),
'body': _t('Check your internet connection and try again.'),
});
} else if (error.code === 200) { // OpenERP Server Errors
self.gui.show_popup('error-traceback',{
'title': error.data.message || _t("Server Error"),
'body': error.data.debug || _t('The server encountered an error while receiving your order.'),
});
} else { // ???
self.gui.show_popup('error',{
'title': _t("Unknown Error"),
'body': _t("The order could not be sent to the server due to an unknown error"),
});
}
});
invoiced.catch(this._handleFailedPushForInvoice.bind(this, order, false));
invoiced.then(function () {
self.invoicing = false;
+4 -1
View File
@@ -719,6 +719,9 @@
</span>
</div>
<div class="centered-content touch-scrollable">
<div class="button print_invoice">
<i class='fa fa-print'></i> Print Invoice
</div>
<div class="button print">
<i class='fa fa-print'></i> Print Receipt
</div>
@@ -805,7 +808,7 @@
</left>
</line>
</t>
<t t-else='line.discount !== 0'>
<t t-elif='line.discount !== 0'>
<line indent='1'>
<left>
<value t-att-value-decimals='pos.dp["Product Price"]'>
@@ -5,8 +5,7 @@
<field name="res_model">account.journal</field>
<field name="view_type">form</field>
<field name="view_mode">tree,kanban,form</field>
<field name="context" eval="{'default_journal_user': 1, 'default_type': 'cash'}"/>
<field name="domain">[('journal_user','=', 1)]</field>
<field name="context" eval="{'search_default_available_in_pos': True, 'default_journal_user': True, 'default_type': 'cash'}"/>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Add a new payment method
+1 -1
View File
@@ -137,7 +137,7 @@ class PortalChatter(http.Controller):
raise Forbidden()
# Non-employee see only messages with not internal subtype (aka, no internal logs)
if not request.env['res.users'].has_group('base.group_user'):
domain = expression.AND([['&', ('subtype_id', '!=', False), ('subtype_id.internal', '=', False)], domain])
domain = expression.AND([['&', '&', ('subtype_id', '!=', False), ('subtype_id.internal', '=', False), ('website_published', '=', True)], domain])
Message = request.env['mail.message'].sudo()
return {
'messages': Message.search(domain, limit=limit, offset=offset).portal_message_format(),
+3 -3
View File
@@ -24,7 +24,7 @@
<t t-set="direction" t-value="request.env['res.lang'].search([('code', '=', request.env.lang)]).direction"/>
<div id="wrapwrap" t-attf-class="#{pageName or ''} #{direction == 'rtl' and 'o_rtl' or ''} #{'o_portal' if is_portal else ''}">
<header id="top" data-anchor="true">
<header id="top" data-anchor="true" t-if="not hide_header">
<nav class="navbar navbar-expand-md navbar-light bg-light">
<div class="container">
<a href="/" class="navbar-brand logo">
@@ -55,7 +55,7 @@
<main>
<t t-raw="0"/>
</main>
<footer id="bottom" data-anchor="true" class="bg-light o_footer">
<footer id="bottom" data-anchor="true" class="bg-light o_footer" t-if="not hide_footer">
<div class="container mt16 mb16" id="footer">
<div class="float-right mb16" t-ignore="true" t-if="not editable">
Powered by <a target="_blank" href="http://www.odoo.com?utm_source=db&amp;utm_medium=portal">Odoo</a>
@@ -174,7 +174,7 @@
</template>
<template id="portal_record_sidebar" name="My Portal Record Sidebar">
<div t-attf-class="col-12 col-lg flex-lg-grow-0 #{classes}">
<div t-attf-class="#{classes}">
<div class="card bg-white mb-4" id="sidebar_content">
<div t-if="title" class="card-body text-center pb-2 pt-3">
<t t-raw="title"/>
@@ -367,6 +367,9 @@ class ProductTemplate(models.Model):
related_vals['volume'] = vals['volume']
if vals.get('weight'):
related_vals['weight'] = vals['weight']
# Please do forward port
if vals.get('packaging_ids'):
related_vals['packaging_ids'] = vals['packaging_ids']
if related_vals:
template.write(related_vals)
+2 -2
View File
@@ -458,7 +458,6 @@ class Task(models.Model):
date_assign = fields.Datetime(string='Assigning Date', index=True, copy=False, readonly=True)
date_deadline = fields.Date(string='Deadline', index=True, copy=False, tracking=True)
date_last_stage_update = fields.Datetime(string='Last Stage Update',
default=fields.Datetime.now,
index=True,
copy=False,
readonly=True)
@@ -669,9 +668,10 @@ class Task(models.Model):
# user_id change: update date_assign
if vals.get('user_id'):
vals['date_assign'] = fields.Datetime.now()
# Stage change: Update date_end if folded stage
# Stage change: Update date_end if folded stage and date_last_stage_update
if vals.get('stage_id'):
vals.update(self.update_date_end(vals['stage_id']))
vals['date_last_stage_update'] = fields.Datetime.now()
task = super(Task, self.with_context(context)).create(vals)
return task
+11 -4
View File
@@ -25,10 +25,6 @@ class AccountInvoice(models.Model):
return {}
self.purchase_id = self.vendor_bill_purchase_id.purchase_order_id
self.vendor_bill_id = self.vendor_bill_purchase_id.vendor_bill_id
vendor_ref = self.vendor_bill_purchase_id.purchase_order_id.partner_ref
if vendor_ref:
self.reference = ", ".join([self.reference, vendor_ref]) if (
self.reference and vendor_ref not in self.reference) else vendor_ref
self.vendor_bill_purchase_id = False
return {}
@@ -98,9 +94,20 @@ class AccountInvoice(models.Model):
if not self.partner_id:
self.partner_id = self.purchase_id.partner_id.id
vendor_ref = self.purchase_id.partner_ref
if vendor_ref:
self.reference = ", ".join([self.reference, vendor_ref]) if (
self.reference and vendor_ref not in self.reference) else vendor_ref
if not self.invoice_line_ids:
#as there's no invoice line yet, we keep the currency of the PO
self.currency_id = self.purchase_id.currency_id
vendor_ref = self.purchase_id.partner_ref
if vendor_ref:
self.reference = ", ".join([self.reference, vendor_ref]) if (
self.reference and vendor_ref not in self.reference) else vendor_ref
new_lines = self.env['account.invoice.line']
for line in self.purchase_id.order_line - self.invoice_line_ids.mapped('purchase_line_id'):
data = self._prepare_invoice_line_from_po_line(line)
+1 -1
View File
@@ -37,7 +37,7 @@ class PurchaseBillUnion(models.Model):
NULL as vendor_bill_id, id as purchase_order_id
FROM purchase_order
WHERE
state = 'purchase' AND
state in ('purchase', 'done') AND
invoice_status in ('to invoice', 'no')
)""")
+2 -2
View File
@@ -138,12 +138,12 @@
<button name="print_quotation" string="Print RFQ" type="object" states="draft" class="oe_highlight" groups="base.group_user"/>
<button name="button_confirm" type="object" states="sent" string="Confirm Order" class="oe_highlight" id="bid_confirm"/>
<button name="button_approve" type="object" states='to approve' string="Approve Order" class="oe_highlight" groups="purchase.group_purchase_manager"/>
<button name="action_view_invoice" string="Create Bill" type="object" class="oe_highlight" context="{'create_bill':True}" attrs="{'invisible': ['|', ('state', 'not in', ('purchase')), ('invoice_status', 'in', ('no', 'invoiced'))]}"/>
<button name="action_view_invoice" string="Create Bill" type="object" class="oe_highlight" context="{'create_bill':True}" attrs="{'invisible': ['|', ('state', 'not in', ('purchase', 'done')), ('invoice_status', 'in', ('no', 'invoiced'))]}"/>
<button name="action_rfq_send" states="sent" string="Re-Send by Email" type="object" context="{'send_rfq':True}"/>
<button name="print_quotation" string="Print RFQ" type="object" states="sent" groups="base.group_user"/>
<button name="button_confirm" type="object" states="draft" string="Confirm Order" id="draft_confirm"/>
<button name="action_rfq_send" states="purchase" string="Send PO by Email" type="object" context="{'send_rfq':False}"/>
<button name="action_view_invoice" string="Create Bill" type="object" context="{'create_bill':True}" attrs="{'invisible': ['|', '|', ('state', 'not in', ('purchase')), ('invoice_status', 'not in', ('no', 'invoiced')), ('order_line', '=', [])]}"/>
<button name="action_view_invoice" string="Create Bill" type="object" context="{'create_bill':True}" attrs="{'invisible': ['|', '|', ('state', 'not in', ('purchase', 'done')), ('invoice_status', 'not in', ('no', 'invoiced')), ('order_line', '=', [])]}"/>
<button name="button_draft" states="cancel" string="Set to Draft" type="object" />
<button name="button_cancel" states="draft,to approve,sent,purchase" string="Cancel" type="object" />
<button name="button_done" type="object" string="Lock" states="purchase"/>
@@ -48,7 +48,6 @@ class AccountInvoice(models.Model):
inv.currency_id,
company=inv.company_id, date=fields.Date.today(), round=False,
)
line_quantity = line['quantity']
if i_line.product_id.cost_method != 'standard' and i_line.purchase_line_id:
po_currency = i_line.purchase_id.currency_id
@@ -75,16 +74,17 @@ class AccountInvoice(models.Model):
for val_stock_move in valuation_stock_move:
# In case val_stock_move is a return move, its valuation entries have been made with the
# currency rate corresponding to the original stock move
valuation_date = val_stock_move.origin_returned_move_id.date or val_stock_move.date_expected
valuation_date = val_stock_move.origin_returned_move_id.date or val_stock_move.date
valuation_price_unit_total += company_currency._convert(
abs(val_stock_move.price_unit) * val_stock_move.product_qty,
inv.currency_id,
company=inv.company_id, date=valuation_date, round=False,
)
valuation_total_qty += val_stock_move.product_qty
# in Stock Move, price unit is in company_currency
valuation_price_unit = valuation_price_unit_total / valuation_total_qty
valuation_price_unit = i_line.product_id.uom_id._compute_price(valuation_price_unit, i_line.uom_id)
line_quantity = valuation_total_qty
elif i_line.product_id.cost_method == 'fifo':
# In this condition, we have a real price-valuated product which has not yet been received
@@ -93,7 +93,7 @@ class AccountInvoice(models.Model):
company=po_company, date=inv.date or inv.date_invoice, round=False,
)
interim_account_price = valuation_price_unit * line_quantity
interim_account_price = valuation_price_unit * line['quantity']
invoice_cur_prec = inv.currency_id.decimal_places
if float_compare(valuation_price_unit, i_line.price_unit, precision_digits=invoice_cur_prec) != 0 and float_compare(line['price_unit'], i_line.price_unit, precision_digits=invoice_cur_prec) == 0:
@@ -124,7 +124,7 @@ class AccountInvoice(models.Model):
'type': 'src',
'name': i_line.name[:64],
'price_unit': price_unit_val_dif,
'quantity': line_quantity,
'quantity': line['quantity'],
'price': inv.currency_id.round(price_val_dif),
'account_id': acc,
'product_id': line['product_id'],
+7 -1
View File
@@ -59,7 +59,13 @@ class StockMove(models.Model):
if self.purchase_line_id:
purchase_currency = self.purchase_line_id.currency_id
if purchase_currency != self.company_id.currency_id:
purchase_price_unit = self.purchase_line_id.price_unit
# Do not use price_unit since we want the price tax excluded. And by the way, qty
# is in the UOM of the product, not the UOM of the PO line.
purchase_price_unit = (
self.purchase_line_id.price_subtotal / self.purchase_line_id.product_uom_qty
if self.purchase_line_id.product_uom_qty
else self.purchase_line_id.price_unit
)
currency_move_valuation = purchase_currency.round(purchase_price_unit * abs(qty))
rslt['credit_line_vals']['amount_currency'] = rslt['credit_line_vals']['credit'] and -currency_move_valuation or currency_move_valuation
rslt['credit_line_vals']['currency_id'] = purchase_currency.id
@@ -62,8 +62,10 @@ class TestValuationReconciliation(ValuationReconciliationTestCase):
""" Tests the case into which we receive the goods first, and then make the invoice.
"""
test_product = self.test_product_delivery
purchase_order = self._create_purchase(test_product, '2018-01-01')
self._process_pickings(purchase_order.picking_ids)
date_po_and_delivery = '2018-01-01'
purchase_order = self._create_purchase(test_product, date_po_and_delivery)
self._process_pickings(purchase_order.picking_ids, date=date_po_and_delivery)
invoice = self._create_invoice_for_po(purchase_order, '2018-02-02')
self.env['res.currency.rate'].create({
@@ -151,8 +153,9 @@ class TestValuationReconciliation(ValuationReconciliationTestCase):
""" Tests the case into which we receive part of the goods first, then 2 invoices at different rates, and finally the remaining quantities
"""
test_product = self.test_product_delivery
purchase_order = self._create_purchase(test_product, '2017-01-01', quantity=5.0)
self._process_pickings(purchase_order.picking_ids, quantity=2.0)
date_po_and_delivery0 = '2017-01-01'
purchase_order = self._create_purchase(test_product, date_po_and_delivery0, quantity=5.0)
self._process_pickings(purchase_order.picking_ids, quantity=2.0, date=date_po_and_delivery0)
picking = self.env['stock.picking'].search([('purchase_id', '=', purchase_order.id)], order="id asc", limit=1)
invoice = self._create_invoice_for_po(purchase_order, '2017-01-15')
@@ -185,6 +188,8 @@ class TestValuationReconciliation(ValuationReconciliationTestCase):
'rate': 12.195747002,
'name': '2017-04-01',
})
# We don't need to make the date of processing explicit since the very last rate
# will be taken
self._process_pickings(purchase_order.picking_ids.filtered(lambda x: x.state != 'done'), quantity=3.0)
picking = self.env['stock.picking'].search([('purchase_id', '=', purchase_order.id)], order='id desc', limit=1)
self.check_reconciliation(invoice2, picking)
@@ -3,6 +3,7 @@
import time
from datetime import datetime
from unittest.mock import patch
from odoo import fields
from odoo.tests import Form
@@ -144,6 +145,7 @@ class TestStockValuation(TransactionCase):
the currency rate, validate the receipt and then check that the value of the received goods
is set according to the last currency rate.
"""
self.env['res.currency.rate'].search([]).unlink()
usd_currency = self.env.ref('base.USD')
self.env.user.company_id.currency_id = usd_currency.id
@@ -290,6 +292,9 @@ class TestStockValuationWithCOA(AccountingTestCase):
self.partner_id = self.env.ref('base.res_partner_1')
self.product1 = self.env.ref('product.product_product_8')
Account = self.env['account.account']
self.usd_currency = self.env.ref('base.USD')
self.eur_currency = self.env.ref('base.EUR')
self.stock_input_account = Account.create({
'name': 'Stock Input',
'code': 'StockIn',
@@ -307,6 +312,11 @@ class TestStockValuationWithCOA(AccountingTestCase):
'code': 'Stock Valuation',
'user_type_id': self.env.ref('account.data_account_type_current_assets').id,
})
self.price_diff_account = Account.create({
'name': 'price diff account',
'code': 'price diff account',
'user_type_id': self.env.ref('account.data_account_type_current_assets').id,
})
self.stock_journal = self.env['account.journal'].create({
'name': 'Stock Journal',
'code': 'STJTEST',
@@ -324,12 +334,7 @@ class TestStockValuationWithCOA(AccountingTestCase):
self.product1.product_tmpl_id.categ_id.property_cost_method = 'fifo'
self.product1.product_tmpl_id.categ_id.property_valuation = 'real_time'
self.product1.product_tmpl_id.invoice_policy = 'delivery'
price_diff_account = self.env['account.account'].create({
'name': 'price diff account',
'code': 'price diff account',
'user_type_id': self.env.ref('account.data_account_type_current_assets').id,
})
self.product1.property_account_creditor_price_difference = price_diff_account
self.product1.property_account_creditor_price_difference = self.price_diff_account
# Receive 10@10 ; create the vendor bill
po1 = self.env['purchase.order'].create({
@@ -417,7 +422,7 @@ class TestStockValuationWithCOA(AccountingTestCase):
creditnote_po2.action_invoice_open()
# check the anglo saxon entries
price_diff_entry = self.env['account.move.line'].search([('account_id', '=', price_diff_account.id)])
price_diff_entry = self.env['account.move.line'].search([('account_id', '=', self.price_diff_account.id)])
self.assertEqual(price_diff_entry.credit, 100)
def test_anglosaxon_valuation(self):
@@ -425,12 +430,7 @@ class TestStockValuationWithCOA(AccountingTestCase):
self.product1.product_tmpl_id.categ_id.property_cost_method = 'fifo'
self.product1.product_tmpl_id.categ_id.property_valuation = 'real_time'
self.product1.product_tmpl_id.invoice_policy = 'delivery'
price_diff_account = self.env['account.account'].create({
'name': 'price diff account',
'code': 'price diff account',
'user_type_id': self.env.ref('account.data_account_type_current_assets').id,
})
self.product1.property_account_creditor_price_difference = price_diff_account
self.product1.property_account_creditor_price_difference = self.price_diff_account
# Create PO
po_form = Form(self.env['purchase.order'])
@@ -459,12 +459,12 @@ class TestStockValuationWithCOA(AccountingTestCase):
invoice.action_invoice_open()
# Check what was posted in the price difference account
price_diff_aml = self.env['account.move.line'].search([('account_id','=',price_diff_account.id)])
price_diff_aml = self.env['account.move.line'].search([('account_id','=', self.price_diff_account.id)])
self.assertEquals(len(price_diff_aml), 1, "Only one line should have been generated in the price difference account.")
self.assertAlmostEquals(price_diff_aml.debit, 5, "Price difference should be equal to 5 (15-10)")
# Check what was posted in stock input account
input_aml = self.env['account.move.line'].search([('account_id','=',self.stock_input_account.id)])
input_aml = self.env['account.move.line'].search([('account_id','=', self.stock_input_account.id)])
self.assertEquals(len(input_aml), 2, "Only two lines should have been generated in stock input account: one when receiving the product, one when making the invoice.")
self.assertAlmostEquals(sum(input_aml.mapped('debit')), 10, "Total debit value on stock input account should be equal to the original PO price of the product.")
self.assertAlmostEquals(sum(input_aml.mapped('credit')), 10, "Total credit value on stock input account should be equal to the original PO price of the product.")
@@ -507,3 +507,661 @@ class TestStockValuationWithCOA(AccountingTestCase):
# valuation of product1 should be 15 as the tax with no account set
# has gone to the stock account, and must be reflected in inventory valuation
self.assertEqual(self.product1.stock_value, 150)
def test_average_realtime_anglo_saxon_valuation_multicurrency_same_date(self):
"""
The PO and invoice are in the same foreign currency.
The PO is invoiced on the same date as its creation.
This shouldn't create a price difference entry.
"""
company = self.env.user.company_id
company.anglo_saxon_accounting = True
date_po = '2019-01-01'
# SetUp product
self.product1.product_tmpl_id.cost_method = 'average'
self.product1.product_tmpl_id.valuation = 'real_time'
self.product1.product_tmpl_id.invoice_policy = 'order'
self.product1.product_tmpl_id.purchase_method = 'purchase'
self.product1.property_account_creditor_price_difference = self.price_diff_account
# SetUp currency and rates
self.cr.execute("UPDATE res_company SET currency_id = %s WHERE id = %s", (self.usd_currency.id, company.id))
self.env['res.currency.rate'].search([]).unlink()
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.0,
'currency_id': self.usd_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.5,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
# Proceed
po = self.env['purchase.order'].create({
'currency_id': self.eur_currency.id,
'partner_id': self.partner_id.id,
'order_line': [
(0, 0, {
'name': self.product1.name,
'product_id': self.product1.id,
'product_qty': 1.0,
'product_uom': self.product1.uom_po_id.id,
'price_unit': 100.0,
'date_planned': date_po,
}),
],
})
po.button_confirm()
inv = self.env['account.invoice'].create({
'type': 'in_invoice',
'date_invoice': date_po,
'currency_id': self.eur_currency.id,
'purchase_id': po.id,
'partner_id': self.partner_id.id,
'invoice_line_ids': [(0, 0, {
'name': 'Test',
'price_subtotal': 100.0,
'price_unit': 100.0,
'product_id': self.product1.id,
'purchase_id': po.id,
'purchase_line_id': po.order_line.id,
'quantity': 1.0,
'account_id': self.stock_input_account.id,
})]
})
inv.action_invoice_open()
move_lines = inv.move_id.line_ids
self.assertEqual(len(move_lines), 2)
payable_line = move_lines.filtered(lambda l: l.account_id.internal_type == 'payable')
self.assertEqual(payable_line.amount_currency, -100.0)
self.assertAlmostEqual(payable_line.balance, -66.67)
stock_line = move_lines.filtered(lambda l: l.account_id == self.stock_input_account)
self.assertEqual(stock_line.amount_currency, 100.0)
self.assertAlmostEqual(stock_line.balance, 66.67)
def test_realtime_anglo_saxon_valuation_multicurrency_different_dates(self):
"""
The PO and invoice are in the same foreign currency.
The PO is invoiced at a later date than its creation.
This should create a price difference entry for standard cost method
Not for average cost method though, since the PO and invoice have the same currency
"""
company = self.env.user.company_id
company.anglo_saxon_accounting = True
self.product1.product_tmpl_id.categ_id.property_cost_method = 'average'
self.product1.product_tmpl_id.categ_id.property_valuation = 'real_time'
date_po = '2019-01-01'
date_invoice = '2019-01-16'
# SetUp product Average
self.product1.product_tmpl_id.write({
'purchase_method': 'purchase',
'property_account_creditor_price_difference': self.price_diff_account.id,
})
self.product1.invoice_policy = 'order'
# SetUp product Standard
# should have bought at 60 USD
# actually invoiced at 70 EUR > 35 USD
product_categ_standard = self.product1.product_tmpl_id.categ_id.copy({
'property_cost_method': 'standard',
'property_stock_account_input_categ_id': self.stock_input_account.id,
'property_stock_account_output_categ_id': self.stock_output_account.id,
'property_stock_valuation_account_id': self.stock_valuation_account.id,
'property_stock_journal': self.stock_journal.id,
})
product_standard = self.product1.product_tmpl_id.copy({
'categ_id': product_categ_standard.id,
'name': 'Standard Val',
'standard_price': 60,
'property_account_creditor_price_difference': self.price_diff_account.id
}).product_variant_id
# SetUp currency and rates
self.cr.execute("UPDATE res_company SET currency_id = %s WHERE id = %s", (self.usd_currency.id, company.id))
self.env['res.currency.rate'].search([]).unlink()
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.0,
'currency_id': self.usd_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.5,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_invoice,
'rate': 2,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
# To allow testing validation of PO
def _today(*args, **kwargs):
return date_po
patchers = [
patch('odoo.fields.Date.context_today', _today),
]
for p in patchers:
p.start()
# Proceed
po = self.env['purchase.order'].create({
'currency_id': self.eur_currency.id,
'partner_id': self.partner_id.id,
'order_line': [
(0, 0, {
'name': self.product1.name,
'product_id': self.product1.id,
'product_qty': 1.0,
'product_uom': self.product1.uom_po_id.id,
'price_unit': 100.0,
'date_planned': date_po,
}),
(0, 0, {
'name': product_standard.name,
'product_id': product_standard.id,
'product_qty': 1.0,
'product_uom': product_standard.uom_po_id.id,
'price_unit': 40.0,
'date_planned': date_po,
}),
],
})
po.button_confirm()
line_product_average = po.order_line.filtered(lambda l: l.product_id == self.product1)
line_product_standard = po.order_line.filtered(lambda l: l.product_id == product_standard)
inv = self.env['account.invoice'].create({
'type': 'in_invoice',
'date_invoice': date_invoice,
'currency_id': self.eur_currency.id,
'purchase_id': po.id,
'partner_id': self.partner_id.id,
'invoice_line_ids': [
(0, 0, {
'name': self.product1.name,
'price_subtotal': 100.0,
'price_unit': 100.0,
'product_id': self.product1.id,
'purchase_id': po.id,
'purchase_line_id': line_product_average.id,
'quantity': 1.0,
'account_id': self.stock_input_account.id,
}),
(0, 0, {
'name': product_standard.name,
'price_subtotal': 70.0,
'price_unit': 70.0,
'product_id': product_standard.id,
'purchase_id': po.id,
'purchase_line_id': line_product_standard.id,
'quantity': 1.0,
'account_id': self.stock_input_account.id,
})
]
})
inv.action_invoice_open()
for p in patchers:
p.stop()
move_lines = inv.move_id.line_ids
self.assertEqual(len(move_lines), 4)
# Ensure no exchange difference move has been created
self.assertTrue(all([not l.reconciled for l in move_lines]))
# PAYABLE CHECK
payable_line = move_lines.filtered(lambda l: l.account_id.internal_type == 'payable')
self.assertEqual(payable_line.amount_currency, -170.0)
self.assertAlmostEqual(payable_line.balance, -85.00)
# PRODUCTS CHECKS
# NO EXCHANGE DIFFERENCE (average)
# We ordered for a value of 100 EUR
# But by the time we are invoiced for it
# the foreign currency appreciated from 1.5 to 2.0
# We still have to pay 100 EUR, which now values at 50 USD
product_lines = move_lines.filtered(lambda l: l.product_id == self.product1)
# Stock-wise, we have been invoiced 100 EUR, and we ordered 100 EUR
# there is no price difference
# However, 100 EUR should be converted at the time of the invoice
stock_line = product_lines.filtered(lambda l: l.account_id == self.stock_input_account)
self.assertEqual(stock_line.amount_currency, 100.00)
self.assertAlmostEqual(stock_line.balance, 50.00)
# PRICE DIFFERENCE (STANDARD)
# We ordered a product that should have cost 60 USD (120 EUR)
# However, we effectively got invoiced 70 EUR (35 USD)
product_lines = move_lines.filtered(lambda l: l.product_id == product_standard)
stock_line = product_lines.filtered(lambda l: l.account_id == self.stock_input_account)
self.assertEqual(stock_line.amount_currency, 120.00)
self.assertAlmostEqual(stock_line.balance, 60.00)
price_diff_line = product_lines.filtered(lambda l: l.account_id == self.price_diff_account)
self.assertEqual(price_diff_line.amount_currency, -50.00)
self.assertAlmostEqual(price_diff_line.balance, -25.00)
def test_average_realtime_with_delivery_anglo_saxon_valuation_multicurrency_different_dates(self):
"""
The PO and invoice are in the same foreign currency.
The delivery occurs in between PO validation and invoicing
The invoice is created at an even different date
This should create a price difference entry.
"""
company = self.env.user.company_id
company.anglo_saxon_accounting = True
self.product1.product_tmpl_id.categ_id.property_cost_method = 'average'
self.product1.product_tmpl_id.categ_id.property_valuation = 'real_time'
date_po = '2019-01-01'
date_delivery = '2019-01-08'
date_invoice = '2019-01-16'
product_avg = self.product1.product_tmpl_id.copy({
'purchase_method': 'purchase',
'name': 'AVG',
'standard_price': 60,
'property_account_creditor_price_difference': self.price_diff_account.id
}).product_variant_id
product_avg.invoice_policy = 'order'
# SetUp currency and rates
self.cr.execute("UPDATE res_company SET currency_id = %s WHERE id = %s", (self.usd_currency.id, company.id))
self.env['res.currency.rate'].search([]).unlink()
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.0,
'currency_id': self.usd_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.5,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_delivery,
'rate': 0.7,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_invoice,
'rate': 2,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
# To allow testing validation of PO
def _today(*args, **kwargs):
return date_po
# To allow testing validation of Delivery
def _now(*args, **kwargs):
return date_delivery + ' 01:00:00'
patchers = [
patch('odoo.fields.Date.context_today', _today),
patch('odoo.fields.Datetime.now', _now),
]
for p in patchers:
p.start()
# Proceed
po = self.env['purchase.order'].create({
'currency_id': self.eur_currency.id,
'partner_id': self.partner_id.id,
'order_line': [
(0, 0, {
'name': product_avg.name,
'product_id': product_avg.id,
'product_qty': 1.0,
'product_uom': product_avg.uom_po_id.id,
'price_unit': 30.0,
'date_planned': date_po,
})
],
})
po.button_confirm()
line_product_avg = po.order_line.filtered(lambda l: l.product_id == product_avg)
picking = po.picking_ids
(picking.move_lines
.filtered(lambda l: l.purchase_line_id == line_product_avg)
.write({'quantity_done': 1.0}))
picking.button_validate()
inv = self.env['account.invoice'].create({
'type': 'in_invoice',
'date_invoice': date_invoice,
'currency_id': self.eur_currency.id,
'purchase_id': po.id,
'partner_id': self.partner_id.id,
'invoice_line_ids': [
(0, 0, {
'name': product_avg.name,
'price_subtotal': 30.0,
'price_unit': 30.0,
'product_id': product_avg.id,
'purchase_id': po.id,
'purchase_line_id': line_product_avg.id,
'quantity': 1.0,
'account_id': self.stock_input_account.id,
})
]
})
inv.action_invoice_open()
for p in patchers:
p.stop()
move_lines = inv.move_id.line_ids
self.assertEqual(len(move_lines), 2)
# PAYABLE CHECK
payable_line = move_lines.filtered(lambda l: l.account_id.internal_type == 'payable')
self.assertEqual(payable_line.amount_currency, -30.0)
self.assertAlmostEqual(payable_line.balance, -15.00)
# PRODUCTS CHECKS
# DELIVERY DIFFERENCE (AVERAGE)
# We ordered a product at 30 EUR valued at 20 USD
# We received it when the exchange rate has appreciated
# So, the actualized 20 USD are now 20*1.5/0.7 = 42.86 USD
product_lines = move_lines.filtered(lambda l: l.product_id == product_avg)
# Although those 42.86 USD are just due to the exchange difference
stock_line = product_lines.filtered(lambda l: l.account_id == self.stock_input_account)
self.assertEqual(stock_line.journal_id, inv.journal_id)
self.assertEqual(stock_line.amount_currency, 30.00)
self.assertAlmostEqual(stock_line.balance, 15.00)
full_reconcile = stock_line.full_reconcile_id
self.assertTrue(full_reconcile.exists())
reconciled_lines = full_reconcile.reconciled_line_ids - stock_line
self.assertEqual(len(reconciled_lines), 2)
stock_journal_line = reconciled_lines.filtered(lambda l: l.journal_id == self.stock_journal)
self.assertEqual(stock_journal_line.amount_currency, -30.00)
self.assertAlmostEqual(stock_journal_line.balance, -42.86)
exhange_diff_journal = company.currency_exchange_journal_id.exists()
exchange_stock_line = reconciled_lines.filtered(lambda l: l.journal_id == exhange_diff_journal)
self.assertEqual(exchange_stock_line.amount_currency, 0.00)
self.assertAlmostEqual(exchange_stock_line.balance, 27.86)
def test_average_realtime_with_two_delivery_anglo_saxon_valuation_multicurrency_different_dates(self):
"""
The PO and invoice are in the same foreign currency.
The deliveries occur at different times and rates
The invoice is created at an even different date
This should create a price difference entry.
"""
company = self.env.user.company_id
company.anglo_saxon_accounting = True
date_po = '2019-01-01'
date_delivery = '2019-01-08'
date_delivery1 = '2019-01-10'
date_invoice = '2019-01-16'
date_invoice1 = '2019-01-20'
self.product1.categ_id.property_valuation = 'real_time'
self.product1.categ_id.property_cost_method = 'average'
product_avg = self.product1.product_tmpl_id.copy({
'purchase_method': 'purchase',
'name': 'AVG',
'standard_price': 60,
'property_account_creditor_price_difference': self.price_diff_account.id
}).product_variant_id
product_avg.invoice_policy = 'order'
# SetUp currency and rates
self.cr.execute("UPDATE res_company SET currency_id = %s WHERE id = %s", (self.usd_currency.id, company.id))
self.env['res.currency.rate'].search([]).unlink()
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.0,
'currency_id': self.usd_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_po,
'rate': 1.5,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_delivery,
'rate': 0.7,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_delivery1,
'rate': 0.8,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_invoice,
'rate': 2,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
self.env['res.currency.rate'].create({
'name': date_invoice1,
'rate': 2.2,
'currency_id': self.eur_currency.id,
'company_id': company.id,
})
# To allow testing validation of PO
def _today(*args, **kwargs):
return date_po
# To allow testing validation of Delivery
delivery_now = date_delivery
def _now(*args, **kwargs):
return delivery_now + ' 01:00:00'
patchers = [
patch('odoo.fields.Date.context_today', _today),
patch('odoo.fields.Datetime.now', _now),
]
for p in patchers:
p.start()
# Proceed
po = self.env['purchase.order'].create({
'currency_id': self.eur_currency.id,
'partner_id': self.partner_id.id,
'date_order': date_po,
'order_line': [
(0, 0, {
'name': product_avg.name,
'product_id': product_avg.id,
'product_qty': 10.0,
'product_uom': product_avg.uom_po_id.id,
'price_unit': 30.0,
'date_planned': date_po,
})
],
})
po.button_confirm()
line_product_avg = po.order_line.filtered(lambda l: l.product_id == product_avg)
picking = po.picking_ids
(picking.move_lines
.filtered(lambda l: l.purchase_line_id == line_product_avg)
.write({'quantity_done': 5.0}))
picking.button_validate()
picking.action_done() # Create Backorder
inv = self.env['account.invoice'].create({
'type': 'in_invoice',
'date_invoice': date_invoice,
'currency_id': self.eur_currency.id,
'purchase_id': po.id,
'partner_id': self.partner_id.id,
'invoice_line_ids': [
(0, 0, {
'name': product_avg.name,
'price_subtotal': 100.0,
'price_unit': 20.0,
'product_id': product_avg.id,
'purchase_id': po.id,
'purchase_line_id': line_product_avg.id,
'quantity': 5.0,
'account_id': self.stock_input_account.id,
})
]
})
inv.action_invoice_open()
backorder_picking = self.env['stock.picking'].search([('backorder_id', '=', picking.id)])
delivery_now = date_delivery1
(backorder_picking.move_lines
.filtered(lambda l: l.purchase_line_id == line_product_avg)
.write({'quantity_done': 5.0}))
backorder_picking.button_validate()
inv1 = self.env['account.invoice'].create({
'type': 'in_invoice',
'date_invoice': date_invoice1,
'currency_id': self.eur_currency.id,
'purchase_id': po.id,
'partner_id': self.partner_id.id,
'invoice_line_ids': [
(0, 0, {
'name': product_avg.name,
'price_subtotal': 200.0,
'price_unit': 40.0,
'product_id': product_avg.id,
'purchase_id': po.id,
'purchase_line_id': line_product_avg.id,
'quantity': 5.0,
'account_id': self.stock_input_account.id,
})
]
})
inv1.action_invoice_open()
for p in patchers:
p.stop()
##########################
# Invoice 0 #
##########################
move_lines = inv.move_id.line_ids
self.assertEqual(len(move_lines), 3)
# PAYABLE CHECK
payable_line = move_lines.filtered(lambda l: l.account_id.internal_type == 'payable')
self.assertEqual(payable_line.amount_currency, -100.0)
self.assertAlmostEqual(payable_line.balance, -50.00)
# # PRODUCTS CHECKS
# DELIVERY DIFFERENCE (AVERAGE)
stock_line = move_lines.filtered(lambda l: l.account_id == self.stock_input_account)
self.assertEqual(stock_line.journal_id, inv.journal_id)
self.assertEqual(stock_line.amount_currency, 150.00)
self.assertAlmostEqual(stock_line.balance, 75.00)
price_diff_line = move_lines.filtered(lambda l: l.account_id == self.price_diff_account)
self.assertEqual(price_diff_line.amount_currency, -50.00)
self.assertAlmostEqual(price_diff_line.balance, -25.00)
full_reconcile = stock_line.full_reconcile_id
self.assertTrue(full_reconcile.exists())
reconciled_lines = full_reconcile.reconciled_line_ids - stock_line
self.assertEqual(len(reconciled_lines), 2)
stock_journal_line = reconciled_lines.filtered(lambda l: l.journal_id == self.stock_journal)
self.assertEqual(stock_journal_line.amount_currency, -150)
self.assertAlmostEqual(stock_journal_line.balance, -214.29)
exhange_diff_journal = company.currency_exchange_journal_id.exists()
exchange_stock_line = reconciled_lines.filtered(lambda l: l.journal_id == exhange_diff_journal)
self.assertEqual(exchange_stock_line.amount_currency, 0.00)
self.assertAlmostEqual(exchange_stock_line.balance, 139.29)
##########################
# Invoice 1 #
##########################
move_lines = inv1.move_id.line_ids
self.assertEqual(len(move_lines), 3)
# PAYABLE CHECK
payable_line = move_lines.filtered(lambda l: l.account_id.internal_type == 'payable')
self.assertEqual(payable_line.amount_currency, -200.0)
self.assertAlmostEqual(payable_line.balance, -90.91)
# # PRODUCTS CHECKS
# DELIVERY DIFFERENCE (AVERAGE)
stock_line = move_lines.filtered(lambda l: l.account_id == self.stock_input_account)
self.assertEqual(stock_line.journal_id, inv.journal_id)
self.assertEqual(stock_line.amount_currency, 150.00)
self.assertAlmostEqual(stock_line.balance, 68.18)
price_diff_line = move_lines.filtered(lambda l: l.account_id == self.price_diff_account)
self.assertEqual(price_diff_line.amount_currency, 50.00)
self.assertAlmostEqual(price_diff_line.balance, 22.73)
full_reconcile = stock_line.full_reconcile_id
self.assertTrue(full_reconcile.exists())
reconciled_lines = full_reconcile.reconciled_line_ids - stock_line
self.assertEqual(len(reconciled_lines), 2)
stock_journal_line = reconciled_lines.filtered(lambda l: l.journal_id == self.stock_journal)
self.assertEqual(stock_journal_line.amount_currency, -150)
self.assertAlmostEqual(stock_journal_line.balance, -187.5)
exhange_diff_journal = company.currency_exchange_journal_id.exists()
exchange_stock_line = reconciled_lines.filtered(lambda l: l.journal_id == exhange_diff_journal)
self.assertEqual(exchange_stock_line.amount_currency, 0.00)
self.assertAlmostEqual(exchange_stock_line.balance, 119.32)
@@ -19,5 +19,13 @@
<field name="domain_force">[('resource_id.user_id', '=', user.id)]</field>
<field name="perm_read" eval="False"/>
</record>
<record model="ir.rule" id="resource_calendar_leaves_rule_group_admin_modify">
<field name="name">resource.calendar.leaves: admin modifies global</field>
<field name="model_id" ref="model_resource_calendar_leaves"/>
<field name="groups" eval="[(4, ref('base.group_erp_manager'))]"/>
<field name="domain_force">[('resource_id', '=', False)]</field>
<field name="perm_read" eval="False"/>
</record>
</data>
</odoo>
-1
View File
@@ -41,7 +41,6 @@ This module contains all the common features of Sales Management and eCommerce.
'qweb': [
"static/src/xml/account_reconciliation.xml",
],
'uninstall_hook': "uninstall_hook",
'installable': True,
'auto_install': False
}
+9 -6
View File
@@ -571,7 +571,9 @@ class SaleOrder(models.Model):
invoice.compute_taxes()
# Idem for partner
so_payment_term_id = invoice.payment_term_id.id
fp_invoice = invoice.fiscal_position_id
invoice._onchange_partner_id()
invoice.fiscal_position_id = fp_invoice
# To keep the payment terms set on the SO
invoice.payment_term_id = so_payment_term_id
invoice.message_post_with_view('mail.message_origin_link',
@@ -650,10 +652,11 @@ class SaleOrder(models.Model):
@api.multi
def action_done(self):
tx = self.sudo().transaction_ids.get_last_transaction()
if tx and tx.state == 'pending' and tx.acquirer_id.provider == 'transfer':
tx._set_transaction_done()
tx.write({'is_processed': True})
for order in self:
tx = order.sudo().transaction_ids.get_last_transaction()
if tx and tx.state == 'pending' and tx.acquirer_id.provider == 'transfer':
tx._set_transaction_done()
tx.write({'is_processed': True})
return self.write({'state': 'done'})
@api.multi
@@ -1098,7 +1101,7 @@ class SaleOrderLine(models.Model):
result = super(SaleOrderLine, self).write(values)
return result
order_id = fields.Many2one('sale.order', string='Order Reference', required=True, ondelete='cascade', index=True, copy=False, readonly=True)
order_id = fields.Many2one('sale.order', string='Order Reference', required=True, ondelete='cascade', index=True, copy=False)
name = fields.Text(string='Description', required=True)
sequence = fields.Integer(string='Sequence', default=10)
@@ -1558,7 +1561,7 @@ class SaleOrderLine(models.Model):
if currency_id.id == product_currency.id:
cur_factor = 1.0
else:
cur_factor = currency_id._get_conversion_rate(product_currency, currency_id, self.company_id, self.order_id.date_order)
cur_factor = currency_id._get_conversion_rate(product_currency, currency_id, self.company_id or self.env.user.company_id, self.order_id.date_order or fields.Date.today())
product_uom = self.env.context.get('uom') or product.uom_id.id
if uom and uom.id != product_uom:
+55 -10
View File
@@ -124,10 +124,10 @@
<div class="row mt16 o_portal_sale_sidebar">
<!-- Sidebar -->
<t t-call="portal.portal_record_sidebar">
<t t-set="classes" t-value="'col-12 col-lg flex-lg-grow-0 d-print-none'"/>
<t t-set="classes" t-value="'col-lg-auto d-print-none'"/>
<t t-set="title">
<h2 class="mb-0"><b t-field="sale_order.amount_total"/> </h2>
<h2 class="mb-0"><b t-field="sale_order.amount_total" data-id="total_amount"/> </h2>
</t>
<t t-set="entries">
<ul class="list-group list-group-flush flex-wrap flex-row flex-lg-column">
@@ -167,14 +167,15 @@
<b t-field="sale_order.amount_undiscounted"
t-options='{"widget": "monetary", "display_currency": sale_order.pricelist_id.currency_id}'
style="text-decoration: line-through"
class="d-block mt-1"/>
class="d-block mt-1"
data-id="amount_undiscounted" />
</small>
<t t-if="sale_order.amount_untaxed == sale_order.amount_total">
<h4 t-field="sale_order.amount_total" class="text-success"/>
<h4 t-field="sale_order.amount_total" class="text-success" data-id="total_amount"/>
</t>
<t t-else="">
<h4 t-field="sale_order.amount_untaxed" class="text-success mb-0"/>
<small>(<span t-field="sale_order.amount_total"/> Incl. tax)</small>
<h4 t-field="sale_order.amount_untaxed" class="text-success mb-0" data-id="total_untaxed"/>
<small>(<span t-field="sale_order.amount_total" data-id="total_amount"/> Incl. tax)</small>
</t>
</li>
</t>
@@ -374,7 +375,7 @@
</t>
</div>
<div class="mb-3">
<strong>Date:</strong> <span t-field="sale_order.create_date" t-options='{"widget": "date"}'/>
<strong>Date:</strong> <span t-field="sale_order.date_order" t-options='{"widget": "date"}'/>
</div>
<div class="mb-3" t-if="sale_order.validity_date">
<strong>Expiration Date:</strong> <span t-field="sale_order.validity_date" t-options='{"widget": "date"}'/>
@@ -480,8 +481,8 @@
<span t-esc="', '.join(map(lambda x: (x.description or x.name), line.tax_id))"/>
</td>
<td class="text-right">
<span t-field="line.price_subtotal" groups="account.group_show_line_subtotals_tax_excluded"/>
<span t-field="line.price_total" groups="account.group_show_line_subtotals_tax_included"/>
<span class="oe_order_line_price_subtotal" t-field="line.price_subtotal" groups="account.group_show_line_subtotals_tax_excluded"/>
<span class="oe_order_line_price_total" t-field="line.price_total" groups="account.group_show_line_subtotals_tax_included"/>
</td>
</t>
<t t-if="line.display_type == 'line_section'">
@@ -515,12 +516,13 @@
<div id="total" class="row" name="total" style="page-break-inside: avoid;">
<div t-attf-class="#{'col-4' if report_type != 'html' else 'col-sm-7 col-md-5'} ml-auto">
<!-- Should be replaced in master by t-call="sale.sale_order_portal_content_totals_table" -->
<table class="table table-sm">
<tr class="border-black" style="border-bottom:1px solid #dddddd;">
<td><strong>Subtotal</strong></td>
<td class="text-right">
<span
data-id="total_amount"
data-id="total_untaxed"
t-field="sale_order.amount_untaxed"
t-options='{"widget": "monetary","display_currency": sale_order.pricelist_id.currency_id}'
/>
@@ -578,4 +580,47 @@
</div>
</template>
<template id="sale_order_portal_content_totals_table">
<table class="table table-sm">
<tr class="border-black">
<td><strong>Subtotal</strong></td>
<td class="text-right">
<span
data-id="total_untaxed"
t-field="sale_order.amount_untaxed"
t-options='{"widget": "monetary","display_currency": sale_order.pricelist_id.currency_id}'
/>
</td>
</tr>
<t t-foreach="sale_order.amount_by_group" t-as="amount_by_group">
<tr>
<t t-if="amount_by_group[3] == 1 and sale_order.amount_untaxed == amount_by_group[2]">
<td>
<span t-esc="amount_by_group[0]"/>
<span>&amp;nbsp;<span>on</span>&amp;nbsp;<t t-esc="amount_by_group[2]" t-options='{"widget": "monetary", "display_currency": sale_order.pricelist_id.currency_id}'/></span>
</td>
<td class="text-right">
<span t-esc="amount_by_group[1]"
t-options='{"widget": "monetary", "display_currency": sale_order.pricelist_id.currency_id}'/>
</td>
</t>
<t t-else ="">
<td>
<span t-esc="amount_by_group[0]"/>
</td>
<td class="text-right">
<span t-esc="amount_by_group[1]"
t-options='{"widget": "monetary", "display_currency": sale_order.pricelist_id.currency_id}'/>
</td>
</t>
</tr>
</t>
<tr class="border-black">
<td><strong>Total</strong></td>
<td class="text-right">
<span data-id="total_amount" t-field="sale_order.amount_total" t-options='{"widget": "monetary", "display_currency": sale_order.pricelist_id.currency_id}'/>
</td>
</tr>
</table>
</template>
</odoo>
+1 -1
View File
@@ -895,7 +895,7 @@
</div>
<group>
<group>
<field name="order_id"/>
<field name="order_id" readonly="1"/>
<field name="product_id" readonly="1"/>
<field name="name" readonly="1"/>
<field name="product_uom_qty" readonly="1"/>
+37 -3
View File
@@ -1,7 +1,10 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from functools import partial
from odoo import http
from odoo.tools import formatLang
from odoo.exceptions import AccessError, MissingError
from odoo.http import request
from odoo.addons.sale.controllers.portal import CustomerPortal
@@ -11,6 +14,13 @@ class CustomerPortal(CustomerPortal):
@http.route(['/my/orders/<int:order_id>/update_line'], type='json', auth="public", website=True)
def update(self, line_id, remove=False, unlink=False, order_id=None, access_token=None, **post):
values = self.update_line_dict(line_id, remove, unlink, order_id, access_token, **post)
if values:
return [values['order_line_product_uom_qty'], values['order_amount_total']]
return values
@http.route(['/my/orders/<int:order_id>/update_line_dict'], type='json', auth="public", website=True)
def update_line_dict(self, line_id, remove=False, unlink=False, order_id=None, access_token=None, input_quantity=False, **kwargs):
try:
order_sudo = self._document_check_access('sale.order', order_id, access_token=access_token)
except (AccessError, MissingError):
@@ -24,10 +34,34 @@ class CustomerPortal(CustomerPortal):
if unlink:
order_line.unlink()
return False # return False to reload the page, the line must move back to options and the JS doesn't handle it
number = -1 if remove else 1
quantity = order_line.product_uom_qty + number
if input_quantity is not False:
quantity = input_quantity
else:
number = -1 if remove else 1
quantity = order_line.product_uom_qty + number
if quantity < 0:
quantity = 0.0
order_line.write({'product_uom_qty': quantity})
return [str(quantity), str(order_sudo.amount_total)]
currency = order_sudo.currency_id
format_price = partial(formatLang, request.env, digits=currency.decimal_places)
results = {
'order_line_product_uom_qty': str(quantity),
'order_line_price_total': format_price(order_line.price_total),
'order_line_price_subtotal': format_price(order_line.price_subtotal),
'order_amount_total': format_price(order_sudo.amount_total),
'order_amount_untaxed': format_price(order_sudo.amount_untaxed),
'order_amount_tax': format_price(order_sudo.amount_tax),
'order_amount_undiscounted': format_price(order_sudo.amount_undiscounted),
}
try:
results['order_totals_table'] = request.env['ir.ui.view'].render_template('sale.sale_order_portal_content_totals_table', {'sale_order': order_sudo})
except ValueError:
pass
return results
@http.route(["/my/orders/<int:order_id>/add_option/<int:option_id>"], type='http', auth="public", website=True)
def add(self, order_id, option_id, access_token=None, **post):
@@ -8,40 +8,149 @@ publicWidget.registry.SaleUpdateLineButton = publicWidget.Widget.extend({
events: {
'click': '_onClick',
},
//--------------------------------------------------------------------------
// Handlers
//--------------------------------------------------------------------------
/**
* @private
* @override
*/
_onClick: function (ev) {
ev.preventDefault();
start: function () {
var self = this;
return this._super.apply(this, arguments).then(function () {
self.elems = self._getUpdatableElements();
self.elems.$lineQuantity.change(function (ev) {
var quantity = parseInt(this.value);
self._onChangeQuantity(quantity);
});
});
},
/**
* Process the change in line quantity
*
* @private
* @param {Int} quantity, the new quantity of the line
* If not present it will increment/decrement the existing quantity
*/
_onChangeQuantity: function (quantity) {
var href = this.$el.attr("href");
var orderID = href.match(/my\/orders\/([0-9]+)/);
var lineID = href.match(/update_line\/([0-9]+)/);
var params = {
'line_id': lineID[1],
'remove': self.$el.is('[href*="remove"]'),
'unlink': self.$el.is('[href*="unlink"]'),
'line_id': parseInt(lineID[1]),
'remove': this.$el.is('[href*="remove"]'),
'unlink': this.$el.is('[href*="unlink"]'),
'input_quantity': quantity >= 0 ? quantity : false,
};
var token = href.match(/token=(.*)/);
var token = href.match(/token=([\w\d-]*)/)[1];
if (token) {
params['access_token'] = token;
}
var url = "/my/orders/" + parseInt(orderID[1]) + "/update_line";
this._rpc({
orderID = parseInt(orderID[1]);
this._callUpdateLineRoute(orderID, params).then(this._updateOrderValues.bind(this));
},
/**
* Reacts to the click on the -/+ buttons
*
* @param {Event} ev
*/
_onClick: function (ev) {
ev.preventDefault();
return this._onChangeQuantity();
},
/**
* Calls the route to get updated values of the line and order
* when the quantity of a product has changed
*
* @private
* @param {integer} order_id
* @param {Object} params
* @return {Deferred}
*/
_callUpdateLineRoute: function (order_id, params) {
var url = "/my/orders/" + order_id + "/update_line_dict";
return this._rpc({
route: url,
params: params,
}).then(function (data) {
if (!data) {
window.location.reload();
}
self.$el.closest('.input-group').find('.js_quantity').val(data[0]);
$('[data-id="total_amount"] > span').html(data[1]);
});
},
/**
* Processes data from the server to update the UI
*
* @private
* @param {Object} data: contains order and line updated values
*/
_updateOrderValues: function (data) {
if (!data) {
window.location.reload();
}
var orderAmountTotal = data.order_amount_total;
var orderAmountUntaxed = data.order_amount_untaxed;
var orderAmountTax = data.order_amount_tax;
var orderAmountUndiscounted = data.order_amount_undiscounted;
var orderTotalsTable = $(data.order_totals_table);
var lineProductUomQty = data.order_line_product_uom_qty;
var linePriceTotal = data.order_line_price_total;
var linePriceSubTotal = data.order_line_price_subtotal;
this.elems.$lineQuantity.val(lineProductUomQty);
if (this.elems.$linePriceTotal.length && linePriceTotal !== undefined) {
this.elems.$linePriceTotal.text(linePriceTotal);
}
if (this.elems.$linePriceSubTotal.length && linePriceSubTotal !== undefined) {
this.elems.$linePriceSubTotal.text(linePriceSubTotal);
}
if (orderAmountUntaxed !== undefined) {
this.elems.$orderAmountUntaxed.text(orderAmountUntaxed);
}
if (orderAmountTotal !== undefined) {
this.elems.$orderAmountTotal.text(orderAmountTotal);
}
if (orderAmountUndiscounted !== undefined) {
this.elems.$orderAmountUndiscounted.text(orderAmountUndiscounted);
}
if (orderTotalsTable) {
this.elems.$orderTotalsTable.find('table').replaceWith(orderTotalsTable);
}
},
/**
* Locate in the DOM the elements to update
* Mostly for compatibility, when the module has not been upgraded
* In that case, we need to fall back to some other elements
*
* @private
* @return {Object}: Jquery elements to update
*/
_getUpdatableElements: function () {
var $parentTr = this.$el.parents('tr:first');
var $linePriceTotal = $parentTr.find('.oe_order_line_price_total .oe_currency_value');
var $linePriceSubTotal = $parentTr.find('.oe_order_line_price_subtotal .oe_currency_value');
if (!$linePriceTotal.length && !$linePriceSubTotal.length) {
$linePriceTotal = $linePriceSubTotal = $parentTr.find('.oe_currency_value').last();
}
var $orderAmountUntaxed = $('[data-id="total_untaxed"]').find('span, b');
var $orderAmountTotal = $('[data-id="total_amount"]').find('span, b');
var $orderAmountUndiscounted = $('[data-id="amount_undiscounted"]').find('span, b');
if (!$orderAmountUntaxed.length) {
$orderAmountUntaxed = $orderAmountTotal.eq(1);
$orderAmountTotal = $orderAmountTotal.eq(0).add($orderAmountTotal.eq(2));
}
return {
$lineQuantity: this.$el.closest('.input-group').find('.js_quantity'),
$linePriceSubTotal: $linePriceSubTotal,
$linePriceTotal: $linePriceTotal,
$orderAmountUntaxed: $orderAmountUntaxed,
$orderAmountTotal: $orderAmountTotal,
$orderTotalsTable: $('#total'),
$orderAmountUndiscounted: $orderAmountUndiscounted,
};
}
});
});
@@ -7,3 +7,5 @@ class TestUi(odoo.tests.HttpCase):
def test_01_sale_tour(self):
self.phantom_js("/web", "odoo.__DEBUG__.services['web_tour.tour'].run('sale_tour')", "odoo.__DEBUG__.services['web_tour.tour'].tours.sale_tour.ready", login="admin")
self.env.ref('account.group_show_line_subtotals_tax_included').users |= admin
@@ -7,6 +7,13 @@
<field name="inherit_id" ref="sale_management.sale_order_form_quote"/>
<field name="arch" type="xml">
<xpath expr="//page/field[@name='order_line']/tree/field[@name='name']" position="after">
<field name="website_description" invisible="1" readonly="1"/>
</xpath>
<xpath expr="//page/field[@name='order_line']/form/field[@name='name']" position="after">
<field name="website_description" invisible="1" readonly="1"/>
</xpath>
<xpath expr="//button[@name='button_add_to_order']" position="after">
<field name="website_description" invisible="1"/>
</xpath>
+6 -2
View File
@@ -57,11 +57,15 @@ class AccountAnalyticLine(models.Model):
@api.multi
def write(self, values):
# prevent to update invoiced timesheets if one line is of type delivery
self._check_can_write(values)
result = super(AccountAnalyticLine, self).write(values)
return result
@api.multi
def _check_can_write(self, values):
if self.sudo().filtered(lambda aal: aal.so_line.product_id.invoice_policy == "delivery") and self.filtered(lambda timesheet: timesheet.timesheet_invoice_id):
if any([field_name in values for field_name in ['unit_amount', 'employee_id', 'project_id', 'task_id', 'so_line', 'amount', 'date']]):
raise UserError(_('You can not modify already invoiced timesheets (linked to a Sales order items invoiced on Time and material).'))
result = super(AccountAnalyticLine, self).write(values)
return result
@api.model
def _timesheet_preprocess(self, values):
@@ -68,7 +68,7 @@ class ProfitabilityAnalysis(models.Model):
ELSE 0.0
END AS amount_untaxed_to_invoice,
CASE
WHEN SOL.qty_delivered_method IN ('timesheet', 'manual') THEN (SOL.untaxed_amount_invoiced / CASE COALESCE(S.currency_rate, 0) WHEN 0 THEN 1.0 ELSE S.currency_rate END)
WHEN SOL.qty_delivered_method IN ('timesheet', 'manual') THEN (COALESCE(SOL.untaxed_amount_invoiced, COST_SUMMARY.downpayment_invoiced) / CASE COALESCE(S.currency_rate, 0) WHEN 0 THEN 1.0 ELSE S.currency_rate END)
ELSE 0.0
END AS amount_untaxed_invoiced,
COST_SUMMARY.timesheet_unit_amount AS timesheet_unit_amount,
@@ -83,7 +83,8 @@ class ProfitabilityAnalysis(models.Model):
sale_line_id,
SUM(timesheet_unit_amount) AS timesheet_unit_amount,
SUM(timesheet_cost) AS timesheet_cost,
SUM(expense_cost) AS expense_cost
SUM(expense_cost) AS expense_cost,
SUM(downpayment_invoiced) AS downpayment_invoiced
FROM (
SELECT
P.id AS project_id,
@@ -91,7 +92,8 @@ class ProfitabilityAnalysis(models.Model):
TS.so_line AS sale_line_id,
SUM(TS.unit_amount) AS timesheet_unit_amount,
SUM(TS.amount) AS timesheet_cost,
0.0 AS expense_cost
0.0 AS expense_cost,
0.0 AS downpayment_invoiced
FROM account_analytic_line TS, project_project P
WHERE TS.project_id IS NOT NULL AND P.id = TS.project_id AND P.active = 't' AND P.allow_timesheets = 't'
GROUP BY P.id, TS.so_line
@@ -104,7 +106,8 @@ class ProfitabilityAnalysis(models.Model):
AAL.so_line AS sale_line_id,
0.0 AS timesheet_unit_amount,
0.0 AS timesheet_cost,
SUM(AAL.amount) AS expense_cost
SUM(AAL.amount) AS expense_cost,
0.0 AS downpayment_invoiced
FROM project_project P
LEFT JOIN account_analytic_account AA ON P.analytic_account_id = AA.id
LEFT JOIN account_analytic_line AAL ON AAL.account_id = AA.id
@@ -113,13 +116,50 @@ class ProfitabilityAnalysis(models.Model):
UNION
SELECT
P.id AS project_id,
P.analytic_account_id AS analytic_account_id,
MY_SOLS.id AS sale_line_id,
0.0 AS timesheet_unit_amount,
0.0 AS timesheet_cost,
0.0 AS expense_cost,
CASE WHEN MY_SOLS.invoice_status = 'invoiced' THEN MY_SOLS.price_reduce ELSE 0.0 END AS downpayment_invoiced
FROM project_project P
LEFT JOIN sale_order_line MY_SOL ON P.sale_line_id = MY_SOL.id
LEFT JOIN sale_order MY_S ON MY_SOL.order_id = MY_S.id
LEFT JOIN sale_order_line MY_SOLS ON MY_SOLS.order_id = MY_S.id
WHERE MY_SOLS.is_downpayment = 't'
GROUP BY P.id, MY_SOLS.id
UNION
SELECT
P.id AS project_id,
P.analytic_account_id AS analytic_account_id,
OLIS.id AS sale_line_id,
0.0 AS timesheet_unit_amount,
0.0 AS timesheet_cost,
OLIS.price_reduce AS expense_cost,
0.0 AS downpayment_invoiced
FROM project_project P
LEFT JOIN account_analytic_account ANAC ON P.analytic_account_id = ANAC.id
LEFT JOIN account_analytic_line ANLI ON ANAC.id = ANLI.account_id
LEFT JOIN sale_order_line OLI ON P.sale_line_id = OLI.id
LEFT JOIN sale_order ORD ON OLI.order_id = ORD.id
LEFT JOIN sale_order_line OLIS ON ORD.id = OLIS.order_id
WHERE OLIS.product_id = ANLI.product_id AND OLIS.is_downpayment = 't' AND ANLI.amount < 0.0 AND ANLI.project_id IS NULL AND P.active = 't' AND P.allow_timesheets = 't'
GROUP BY P.id, OLIS.id
UNION
SELECT
P.id AS project_id,
P.analytic_account_id AS analytic_account_id,
SOL.id AS sale_line_id,
0.0 AS timesheet_unit_amount,
0.0 AS timesheet_cost,
0.0 AS expense_cost
0.0 AS expense_cost,
0.0 AS downpayment_invoiced
FROM sale_order_line SOL
INNER JOIN project_project P ON SOL.project_id = P.id
WHERE P.active = 't' AND P.allow_timesheets = 't'
@@ -132,7 +172,8 @@ class ProfitabilityAnalysis(models.Model):
SOL.id AS sale_line_id,
0.0 AS timesheet_unit_amount,
0.0 AS timesheet_cost,
0.0 AS expense_cost
0.0 AS expense_cost,
0.0 AS downpayment_invoiced
FROM sale_order_line SOL
INNER JOIN project_task T ON SOL.task_id = T.id
INNER JOIN project_project P ON P.id = T.project_id
@@ -3,17 +3,6 @@
<data noupdate="1">
<record id="account_analytic_line_rule_billing_user" model="ir.rule">
<field name="name">account.analytic.line.billing.user</field>
<field name="model_id" ref="analytic.model_account_analytic_line"/>
<field name="domain_force">[(1, '=', 1)]</field>
<field name="groups" eval="[(4, ref('account.group_account_invoice'))]"/>
<field name="perm_create" eval="1"/>
<field name="perm_write" eval="1"/>
<field name="perm_unlink" eval="1"/>
<field name="perm_read" eval="0"/>
</record>
<record id="sale_order_line_rule_project_manager" model="ir.rule">
<field name="name">Project Manager Sales Orders Line</field>
<field name="model_id" ref="sale.model_sale_order_line"/>
+12 -7
View File
@@ -908,8 +908,13 @@ class StockMove(models.Model):
"""
assigned_moves = self.env['stock.move']
partially_available_moves = self.env['stock.move']
# Read the `reserved_availability` field of the moves out of the loop to prevent unwanted
# cache invalidation when actually reserving the move.
reserved_availability = {move: move.reserved_availability for move in self}
roundings = {move: move.product_id.uom_id.rounding for move in self}
for move in self.filtered(lambda m: m.state in ['confirmed', 'waiting', 'partially_available']):
missing_reserved_uom_quantity = move.product_uom_qty - move.reserved_availability
rounding = roundings[move]
missing_reserved_uom_quantity = move.product_uom_qty - reserved_availability[move]
missing_reserved_quantity = move.product_uom._compute_quantity(missing_reserved_uom_quantity, move.product_id.uom_id, rounding_method='HALF-UP')
if move.location_id.should_bypass_reservation()\
or move.product_id.type == 'consu':
@@ -936,7 +941,7 @@ class StockMove(models.Model):
continue
# If we don't need any quantity, consider the move assigned.
need = missing_reserved_quantity
if float_is_zero(need, precision_rounding=move.product_id.uom_id.rounding):
if float_is_zero(need, precision_rounding=rounding):
assigned_moves |= move
continue
# Reserve new quants and create move lines accordingly.
@@ -945,9 +950,9 @@ class StockMove(models.Model):
if available_quantity <= 0:
continue
taken_quantity = move._update_reserved_quantity(need, available_quantity, move.location_id, package_id=forced_package_id, strict=False)
if float_is_zero(taken_quantity, precision_rounding=move.product_id.uom_id.rounding):
if float_is_zero(taken_quantity, precision_rounding=rounding):
continue
if need == taken_quantity:
if float_compare(need, taken_quantity, precision_rounding=rounding) == 0:
assigned_moves |= move
else:
partially_available_moves |= move
@@ -1010,12 +1015,12 @@ class StockMove(models.Model):
# this case `quantity` is directly the quantity on the quants themselves.
available_quantity = self.env['stock.quant']._get_available_quantity(
move.product_id, location_id, lot_id=lot_id, package_id=package_id, owner_id=owner_id, strict=True)
if float_is_zero(available_quantity, precision_rounding=move.product_id.uom_id.rounding):
if float_is_zero(available_quantity, precision_rounding=rounding):
continue
taken_quantity = move._update_reserved_quantity(need, min(quantity, available_quantity), location_id, lot_id, package_id, owner_id)
if float_is_zero(taken_quantity, precision_rounding=move.product_id.uom_id.rounding):
if float_is_zero(taken_quantity, precision_rounding=rounding):
continue
if need - taken_quantity == 0.0:
if float_is_zero(need - taken_quantity, precision_rounding=rounding):
assigned_moves |= move
break
partially_available_moves |= move
+2 -8
View File
@@ -16,12 +16,12 @@ class StockMoveLine(models.Model):
_order = "result_package_id desc, id"
picking_id = fields.Many2one(
'stock.picking', 'Stock Picking',
'stock.picking', 'Stock Picking', auto_join=True,
help='The stock operation where the packing has been made')
move_id = fields.Many2one(
'stock.move', 'Stock Move',
help="Change to a better name", index=True)
company_id = fields.Many2one('res.company', string='Company', default=lambda self: self.env['res.users']._get_company(), readonly=True)
company_id = fields.Many2one('res.company', string='Company', related='move_id.company_id', store=True, readonly=True)
product_id = fields.Many2one('product.product', 'Product', ondelete="cascade")
product_uom_id = fields.Many2one('uom.uom', 'Unit of Measure', required=True)
product_qty = fields.Float(
@@ -75,12 +75,6 @@ class StockMoveLine(models.Model):
if line.lot_id and line.product_id != line.lot_id.product_id:
raise ValidationError(_('This lot %s is incompatible with this product %s' % (line.lot_id.name, line.product_id.display_name)))
@api.constrains('company_id', 'move_id')
def _check_same_company_id(self):
for line in self:
if line.move_id and line.move_id.company_id != line.company_id:
raise ValidationError(_('The move line a a different company than its move'))
@api.one
def _set_product_qty(self):
""" The meaning of product_qty field changed lately and is now a functional field computing the quantity
+9
View File
@@ -1132,3 +1132,12 @@ class Picking(models.Model):
action['domain'] = [('id', 'in', packages.ids)]
action['context'] = {'picking_id': self.id}
return action
def action_picking_move_tree(self):
action = self.env.ref('stock.stock_move_action').read()[0]
action['views'] = [
(self.env.ref('stock.view_picking_move_tree').id, 'tree'),
]
action['context'] = self.env.context
action['domain'] = [('picking_id', 'in', self.ids)]
return action
+10 -3
View File
@@ -375,15 +375,22 @@ class ProcurementGroup(models.Model):
('picking_id.backorder_id', '=', False),
('product_id', '=', values['product_id'].id)]
@api.model
def _get_moves_to_assign_domain(self):
return expression.AND([
[('state', 'in', ['confirmed', 'partially_available'])],
[('product_uom_qty', '!=', 0.0)]
])
@api.model
def _run_scheduler_tasks(self, use_new_cursor=False, company_id=False):
# Minimum stock rules
self.sudo()._procure_orderpoint_confirm(use_new_cursor=use_new_cursor, company_id=company_id)
# Search all confirmed stock_moves and try to assign them
moves_to_assign = self.env['stock.move'].search([
('state', 'in', ['confirmed', 'partially_available']), ('product_uom_qty', '!=', 0.0)
], limit=None, order='priority desc, date_expected asc')
domain = self._get_moves_to_assign_domain()
moves_to_assign = self.env['stock.move'].search(domain, limit=None,
order='priority desc, date_expected asc')
for moves_chunk in split_every(100, moves_to_assign.ids):
self.env['stock.move'].browse(moves_chunk)._action_assign()
if use_new_cursor:
+4 -3
View File
@@ -21,7 +21,7 @@ class MrpStockReport(models.TransientModel):
_description = 'Traceability Report'
@api.model
def _get_move_lines(self, move_lines):
def _get_move_lines(self, move_lines, line_id=None):
lines_seen = move_lines
lines_todo = list(move_lines)
while lines_todo:
@@ -43,7 +43,8 @@ class MrpStockReport(models.TransientModel):
])
else:
continue
lines_todo += list(lines)
if line_id is None or line_id in lines.ids:
lines_todo += list(lines)
lines_seen |= lines
return lines_seen - move_lines
@@ -178,7 +179,7 @@ class MrpStockReport(models.TransientModel):
lines = move_lines
else:
# Traceability in case of consumed in.
lines = self._get_move_lines(move_line)
lines = self._get_move_lines(move_line, line_id=line_id)
for line in lines:
unfoldable = False
if line.consume_line_ids or ( line.lot_id and self._get_move_lines(line) and model != "stock.production.lot"):
+13 -5
View File
@@ -499,40 +499,48 @@ class Warehouse(models.Model):
delivery_steps = vals.get('delivery_steps', def_values['delivery_steps'])
code = vals.get('code') or code
code = code.replace(' ', '').upper()
company_id = vals.get('company_id', self.company_id.id)
sub_locations = {
'lot_stock_id': {
'name': _('Stock'),
'active': True,
'usage': 'internal',
'barcode': code + '-STOCK'
'barcode': self._valid_barcode(code + '-STOCK', company_id)
},
'wh_input_stock_loc_id': {
'name': _('Input'),
'active': reception_steps != 'one_step',
'usage': 'internal',
'barcode': code + '-INPUT'
'barcode': self._valid_barcode(code + '-INPUT', company_id)
},
'wh_qc_stock_loc_id': {
'name': _('Quality Control'),
'active': reception_steps == 'three_steps',
'usage': 'internal',
'barcode': code + '-QUALITY'
'barcode': self._valid_barcode(code + '-QUALITY', company_id)
},
'wh_output_stock_loc_id': {
'name': _('Output'),
'active': delivery_steps != 'ship_only',
'usage': 'internal',
'barcode': code + '-OUTPUT'
'barcode': self._valid_barcode(code + '-OUTPUT', company_id)
},
'wh_pack_stock_loc_id': {
'name': _('Packing Zone'),
'active': delivery_steps == 'pick_pack_ship',
'usage': 'internal',
'barcode': code + '-PACKING'
'barcode': self._valid_barcode(code + '-PACKING', company_id)
},
}
return sub_locations
def _valid_barcode(self, barcode, company_id):
location = self.env['stock.location'].with_context(active_test=False).search([
('barcode', '=', barcode),
('company_id', '=', company_id)
])
return not location and barcode
def _create_missing_locations(self, vals):
""" It could happen that the user delete a mandatory location or a
module with new locations was installed after some warehouses creation.

Some files were not shown because too many files have changed in this diff Show More