19.0 vanilla

This commit is contained in:
Ernad Husremovic 2026-03-09 09:30:07 +01:00
parent ba20ce7443
commit 768b70e05e
2357 changed files with 1057103 additions and 712486 deletions

View file

@ -3,22 +3,22 @@
<data>
<record id="view_account_journal_tree" model="ir.ui.view">
<field name="name">account.journal.tree</field>
<field name="name">account.journal.list</field>
<field name="model">account.journal</field>
<field name="priority">1</field>
<field name="arch" type="xml">
<tree string="Account Journal">
<list string="Account Journal">
<field name='sequence' widget='handle'/>
<field name="name"/>
<field name="type"/>
<field name="journal_group_ids" widget="many2many_tags" readonly="1" optional="show"/>
<field name="journal_group_ids" widget="many2many_tags" readonly="1" optional="hide"/>
<field name="currency_id" groups="base.group_multi_currency" optional="hide"/>
<field name="code" optional="show"/>
<field name="default_account_id" optional="show"/>
<field name="active" optional="hide"/>
<field name="company_id" groups="base.group_multi_company" optional="hide"/>
<field name="company_id" groups="!base.group_multi_company" invisible="1"/>
</tree>
<field name="company_id" groups="!base.group_multi_company" column_invisible="True"/>
</list>
</field>
</record>
@ -33,18 +33,24 @@
<sheet>
<div name="button_box" class="oe_button_box">
<button class="oe_stat_button" type="action"
name="%(action_account_moves_all_a)d" icon="fa-book" string="Journal Entries"
context="{'search_default_journal_id':active_id}"/>
name="%(action_account_moves_all_a)d" icon="fa-book"
context="{'search_default_journal_id':id}">
<div class="o_stat_info">
<span class="o_stat_text">Journal Entries</span>
</div>
</button>
</div>
<widget name="web_ribbon" title="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}"/>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. Customer Invoices"/></h1>
<field name="name_placeholder" invisible="1" force_save="1"/>
<h1><field name="name" options="{'placeholder_field': 'name_placeholder'}" required="not type"/></h1>
</div>
<group>
<group>
<field name="active" invisible="1"/>
<field name="type"/>
<field name="code" placeholder="e.g. INV"/>
</group>
<group>
<field name="company_id" options="{'no_create': True}" groups="base.group_multi_company"/>
@ -54,120 +60,134 @@
<notebook>
<page name="bank_account" string="Journal Entries">
<group>
<group string="Accounting Information">
<group>
<field name="default_account_type" invisible="1"/>
<label for="default_account_id" string="Bank Account"
attrs="{'invisible': [('type', '!=', 'bank')]}" groups="account.group_account_readonly"/>
invisible="type != 'bank'" groups="account.group_account_readonly"/>
<label for="default_account_id" string="Journal Account"
invisible="type != 'credit'" groups="account.group_account_readonly"/>
<label for="default_account_id" string="Cash Account"
attrs="{'invisible': [('type', '!=', 'cash')]}" groups="account.group_account_readonly"/>
invisible="type != 'cash'" groups="account.group_account_readonly"/>
<label for="default_account_id" string="Default Income Account"
attrs="{'invisible': [('type', '!=', 'sale')]}" groups="account.group_account_readonly"/>
invisible="type != 'sale'" groups="account.group_account_readonly"/>
<label for="default_account_id" string="Default Expense Account"
attrs="{'invisible': [('type', '!=', 'purchase')]}" groups="account.group_account_readonly"/>
invisible="type != 'purchase'" groups="account.group_account_readonly"/>
<label for="default_account_id" string="Default Account"
help="If set, this account is used to automatically balance entries."
invisible="type != 'general'" groups="account.group_account_readonly"/>
<field name="default_account_id" nolabel="1"
attrs="{'required': ['|', '&amp;', ('id', '!=', False), ('type', 'in', ('bank', 'cash')), ('type', 'in', ('sale', 'purchase'))],
'invisible': [('type', 'in', (False, 'general'))]}"
placeholder="Create new account"
invisible="not type or type in ('sale', 'purchase', 'general')"
required="(id and type in ('bank', 'cash', 'credit'))"
options="{'no_quick_create': True}"
groups="account.group_account_readonly"/>
<field name="default_account_id" nolabel="1"
invisible="type not in ('sale', 'purchase', 'general')"
required="type in ('sale', 'purchase')"
options="{'no_quick_create': True}"
groups="account.group_account_readonly"/>
<field name="suspense_account_id"
attrs="{'required': [('type', 'in', ('bank', 'cash'))], 'invisible': [('type', 'not in', ('bank', 'cash'))]}"
invisible="type not in ('bank', 'cash', 'credit')"
required="type in ('bank', 'cash', 'credit')"
options="{'no_quick_create': True}"
groups="account.group_account_readonly"/>
<field name="profit_account_id" attrs="{'invisible': ['!', ('type', 'in', ('cash', 'bank'))]}"/>
<field name="loss_account_id" attrs="{'invisible': ['!', ('type', 'in', ('cash', 'bank'))]}"/>
<field name="refund_sequence" attrs="{'invisible': [('type', 'not in', ['sale', 'purchase'])]}"/>
<field name="payment_sequence" attrs="{'invisible': [('type', 'not in', ('bank', 'cash'))]}"/>
<field name="code" placeholder="e.g. INV"/>
<field name="non_deductible_account_id"
invisible="type != 'purchase'"
options="{'no_quick_create': True}"
groups="account.group_account_readonly"/>
<field name="profit_account_id" invisible="type not in ('cash', 'bank')" groups="account.group_account_readonly"/>
<field name="loss_account_id" invisible="type not in ('cash', 'bank')" groups="account.group_account_readonly"/>
<field name="refund_sequence" invisible="type not in ['sale', 'purchase']"/>
<field name="payment_sequence" invisible="type not in ('bank', 'cash', 'credit')"/>
<field name="invoice_template_pdf_report_id"
invisible="not display_invoice_template_pdf_report_id"
options="{'no_create': True, 'no_edit': True}"/>
<field name="currency_id" options="{'no_create': True}" groups="base.group_multi_currency"/>
</group>
<group name="bank_account_number" string="Bank Account Number" attrs="{'invisible': [('type', '!=', 'bank')]}">
<group name="bank_account_number" invisible="type != 'bank'">
<field name="company_partner_id" invisible="1"/>
<field name="bank_account_id" string="Account Number" context="{'default_partner_id': company_partner_id}"/>
<field name="bank_id" attrs="{'invisible': [('bank_account_id', '=', False)]}"/>
<field name="bank_statements_source" widget="radio" attrs="{'required': [('type', '=', 'bank')]}" groups="account.group_account_readonly"/>
<field name="bank_account_id" string="Bank Account Number" context="{'default_partner_id': company_partner_id}"/>
<field name="bank_id" invisible="not bank_account_id"/>
<field name="bank_statements_source" widget="radio" required="type == 'bank'" groups="account.group_account_basic"/>
</group>
<group name="bank_source" invisible="type != 'credit'">
<label for="bank_statements_source" string="Transaction Feeds" invisible="type != 'credit'" groups="account.group_account_readonly"/>
<field name="bank_statements_source" nolabel="1" widget="radio" required="type == 'credit'" groups="account.group_account_basic"/>
</group>
</group>
</page>
<page id="inbound_payment_settings" string="Incoming Payments" attrs="{'invisible': [('type', 'not in', ['cash', 'bank'])]}">
<page id="inbound_payment_settings" string="Incoming Payments" name="page_incoming_payments" invisible="type not in ['cash', 'bank', 'credit']">
<field name="available_payment_method_ids" invisible="1"/>
<field name="inbound_payment_method_line_ids" nolabel="1" context="{'default_payment_type': 'inbound'}">
<tree string="Payment Methods" editable="bottom">
<field name="available_payment_method_ids" invisible="1"/>
<field name="payment_type" invisible="1"/>
<field name="company_id" invisible="1"/>
<list string="Payment Methods" editable="bottom">
<field name="available_payment_method_ids" column_invisible="True"/>
<field name="payment_type" column_invisible="True"/>
<field name="company_id" column_invisible="True"/>
<field name="sequence" widget="handle"/>
<field name="payment_method_id" options="{'no_create': True, 'no_open': True}"/>
<field name="name"/>
<field name="payment_account_id"
placeholder="Leave empty to use the default outstanding account"
placeholder="No payment journal entries"
string="Outstanding Receipts accounts"
optional="hide"
options="{'no_quick_create': True}"
groups="account.group_account_readonly"/>
</tree>
</list>
</field>
</page>
<page id="outbound_payment_settings" string="Outgoing Payments" attrs="{'invisible': [('type', 'not in', ['cash', 'bank'])]}">
<page id="outbound_payment_settings" string="Outgoing Payments" name="page_outgoing_payments" invisible="type not in ['cash', 'bank', 'credit']">
<field name="outbound_payment_method_line_ids" nolabel="1" context="{'default_payment_type': 'outbound'}">
<tree string="Payment Methods" editable="bottom" nolabel="1">
<field name="available_payment_method_ids" invisible="1"/>
<field name="payment_type" invisible="1"/>
<field name="company_id" invisible="1"/>
<list string="Payment Methods" editable="bottom">
<field name="available_payment_method_ids" column_invisible="True"/>
<field name="payment_type" column_invisible="True"/>
<field name="company_id" column_invisible="True"/>
<field name="sequence" widget="handle"/>
<field name="payment_method_id" options="{'no_create': True, 'no_open': True}"/>
<field name="name"/>
<field name="payment_account_id"
placeholder="Leave empty to use the default outstanding account"
placeholder="No payment journal entries"
string="Outstanding Payments accounts"
optional="hide"
options="{'no_quick_create': True}"
groups="account.group_account_readonly"/>
</tree>
</list>
</field>
<field name="selected_payment_method_codes" invisible="1"/>
<group name="outgoing_payment" />
</page>
<page name="advanced_settings" string="Advanced Settings">
<group>
<group string="Control-Access" groups="account.group_account_manager">
<div class="text-muted" colspan="2">Keep empty for no control</div>
<field name="account_control_ids" widget="many2many_tags" options="{'no_create_edit': True}"/>
<field name="restrict_mode_hash_table" groups="account.group_account_readonly" attrs="{'invisible': [('type', 'in', ['bank', 'cash'])]}"/>
<group string="Automation" groups="account.group_account_manager">
<field name="restrict_mode_hash_table" groups="account.group_account_readonly" invisible="type not in ['sale', 'purchase', 'general']"
/>
<field name="is_self_billing" invisible="type != 'purchase'"/>
</group>
<!-- email alias -->
<group class="oe_read_only" name="group_alias_ro" string="Create Invoices upon Emails" attrs="{'invisible': ['|', ('type', 'not in', ('sale' ,'purchase')), ('alias_domain', '=', False)]}">
<field name="alias_id"/>
</group>
<group name="group_alias_no_domain" string="Create Invoices upon Emails" attrs="{'invisible': ['|', ('type', 'not in', ('sale' ,'purchase')), ('alias_domain', '!=', False)]}">
<div class="content-group" colspan="2">
<a type='action' name='%(action_open_settings)d' class="btn btn-link" role="button"><i class="fa fa-fw o_button_icon fa-arrow-right"/> Configure Email Servers</a>
<group string="Emails" name="group_email_alias"
invisible="type not in ('general', 'sale', 'purchase')">
<field name="display_alias_fields" invisible="1"/>
<div class="o_row" colspan="2" invisible="display_alias_fields">
<a type='action' name='%(action_open_settings)d' class="btn btn-link" role="button">
<i class="oi oi-fw o_button_icon oi-arrow-right"/> Configure Alias Domain
</a>
</div>
</group>
<group class="oe_edit_only" name="group_alias_edit" string="Create Invoices upon Emails" attrs="{'invisible': ['|', ('type', 'not in', ('sale' ,'purchase')), ('alias_domain', '=', False)]}">
<label string="Email Alias" for="alias_name"/>
<div class="oe_inline" name="edit_alias" style="display: inline;" dir="ltr">
<field name="alias_name" class="oe_inline"/>@<field name="alias_domain" class="oe_inline" readonly="1"/>
<div class="o_row" colspan="2" dir="ltr" invisible="not display_alias_fields">
<label string="Email Alias" for="alias_name"/>
<field name="alias_name" placeholder="alias"/>@
<field name="alias_domain_id" placeholder="e.g. mycompany.com" options="{'no_create': True, 'no_open': True}"/>
</div>
<field name="incoming_einvoice_notification_email"
placeholder="e.g. finance@example.com; accountant@example.com"
class="w-100"/>
</group>
<!-- email alias end -->
<group string="Payment Communications" attrs="{'invisible': [('type', '!=', 'sale')]}">
<!-- edi -->
<group name="group_edi_config" string="Electronic Data Interchange" invisible="1"/>
<group string="Payment Communications" invisible="type != 'sale'">
<field name="invoice_reference_type"/>
<field name="invoice_reference_model" attrs="{'invisible': [('invoice_reference_type', '=', 'none')]}"/>
</group>
<group string="Follow Customer Payments" attrs="{'invisible': [('type', '!=', 'sale')]}">
<field name="sale_activity_type_id" options="{'no_quick_create': True}"/>
<field name="sale_activity_user_id" attrs="{'invisible': [('sale_activity_type_id', '=', False)]}" options="{'no_quick_create': True}"/>
<field name="sale_activity_note" placeholder="e.g. Give a phone call, check with others , ..." attrs="{'invisible': [('sale_activity_type_id', '=', False)]}"/>
<field name="invoice_reference_model" invisible="invoice_reference_type == 'none'"/>
</group>
</group>
</page>
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids"/>
<field name="activity_ids"/>
<field name="message_ids"/>
</div>
<chatter/>
</form>
</field>
</record>
@ -179,16 +199,12 @@
<field name="arch" type="xml">
<kanban class="o_kanban_mobile">
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_content oe_kanban_global_click">
<div class="row">
<div class="col-6">
<strong><field name="name"/></strong>
</div>
<div class="col-6">
<span class="float-end"><field name="type"/></span>
</div>
</div>
<t t-name="card" class="row g-0">
<div class="col-6">
<field class="fw-bolder" name="name"/>
</div>
<div class="col-6 ">
<field class="float-end" name="type"/>
</div>
</t>
</templates>
@ -203,12 +219,14 @@
<field name="arch" type="xml">
<search string="Search Account Journal">
<field name="name" string="Journal" filter_domain="['|', ('name', 'ilike', self), ('code', 'ilike', self)]"/>
<field name="activity_user_id" string="Activities of"/>
<field name="activity_type_id" string="Activity type"/>
<filter name="dashboard" string="Favorites" domain="[('show_on_dashboard', '=', True)]"/>
<separator/>
<filter name="sales" string="Sales" domain="[('type', '=', 'sale')]"/>
<filter name="purchases" string="Purchases" domain="[('type', '=', 'purchase')]"/>
<filter name="liquidity" string="Liquidity" domain="['|', ('type', '=', 'cash'), ('type', '=', 'bank')]"/>
<filter name="miscellaneous" string="Miscellaneous" domain="[('type', 'not in', ['sale', 'purchase', 'cash', 'bank'])]"/>
<filter name="liquidity" string="Liquidity" domain="[('type', 'in', ('cash', 'bank', 'credit'))]"/>
<filter name="miscellaneous" string="Miscellaneous" domain="[('type', 'not in', ['sale', 'purchase', 'cash', 'bank', 'credit'])]"/>
<separator/>
<filter name="inactive" string="Archived" domain="[('active', '=', False)]"/>
</search>
@ -218,9 +236,9 @@
<record id="action_account_journal_form" model="ir.actions.act_window">
<field name="name">Journals</field>
<field name="res_model">account.journal</field>
<field name="view_mode">tree,kanban,form</field>
<field name="view_mode">list,kanban,form</field>
<field name="view_ids" eval="[(5, 0, 0),
(0, 0, {'view_mode': 'tree', 'view_id': ref('view_account_journal_tree')}),
(0, 0, {'view_mode': 'list', 'view_id': ref('view_account_journal_tree')}),
(0, 0, {'view_mode': 'kanban', 'view_id': ref('account_journal_view_kanban')}),
(0, 0, {'view_mode': 'form', 'view_id': ref('view_account_journal_form')})]"/>
<field name="help" type="html">
@ -234,17 +252,19 @@
</record>
<record id="view_account_journal_group_tree" model="ir.ui.view">
<field name="name">account.journal.group.tree</field>
<field name="name">account.journal.group.list</field>
<field name="model">account.journal.group</field>
<field name="priority">1</field>
<field name="arch" type="xml">
<tree editable="bottom">
<field name="company_id" invisible="1"/>
<list editable="bottom">
<field name="company_id" column_invisible="True"/>
<field name="sequence" widget="handle"/>
<field name="name"/>
<field name="excluded_journal_ids" widget="many2many_tags" options="{'no_create': True}"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
<field name="name" placeholder="e.g. GAAP, IFRS, ..."/>
<field name="excluded_journal_ids"
widget="many2many_tags_journals"
options="{'no_create': True}"/>
<field name="company_id" groups="base.group_multi_company" placeholder="Visible to all" options="{'no_create': True}"/>
</list>
</field>
</record>
@ -253,12 +273,14 @@
<field name="model">account.journal.group</field>
<field name="priority">1</field>
<field name="arch" type="xml">
<form string="Journal Groups">
<form string="Multi-ledger">
<sheet>
<group>
<field name="company_id" invisible="1"/>
<field name="name" placeholder="e.g. GAAP, IFRS, ..."/>
<field name="excluded_journal_ids" widget="many2many_tags" options="{'no_create': True}"/>
<field name="excluded_journal_ids"
widget="many2many_tags_journals"
options="{'no_create': True}"/>
<field name="sequence" groups="base.group_no_one"/>
<field name="company_id" groups="base.group_multi_company"/>
</group>
@ -268,14 +290,16 @@
</record>
<record id="action_account_journal_group_list" model="ir.actions.act_window">
<field name="name">Journal Groups</field>
<field name="name">Multi-ledger</field>
<field name="res_model">account.journal.group</field>
<field name="path">multi-ledger</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Add a journal group
</p><p>
Journal group are used in reporting to display relevant data together.
</p>
<p class="o_view_nocontent_multi_ledger"/>
<h2 class="d-md-block">Ledger group allows managing multiple accounting standards.</h2>
<p>
Create as many ledger groups as needed to maintain separate ledgers for local GAAP, IFRS, or fiscal
adjustments, ensuring compliance with diverse regulations.
</p>
</field>
</record>