Compare commits
15 Commits
14-add-bom
...
14.0-accou
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a59c2e774a | ||
|
|
f166fe93be | ||
|
|
b8a6cbcfea | ||
|
|
f6b10a7caa | ||
|
|
371229e9e5 | ||
|
|
1dbfd23524 | ||
|
|
9a9459f013 | ||
|
|
5a58ae0d9a | ||
|
|
b162227645 | ||
|
|
3c24e94122 | ||
|
|
400f316c7f | ||
|
|
86af01667a | ||
|
|
8967bf289a | ||
|
|
1fdaf52787 | ||
|
|
df673718e5 |
@@ -242,6 +242,17 @@ class AccountMoveLine(models.Model):
|
|||||||
compute='_compute_reconcile_string', string='Reconcile', store=True)
|
compute='_compute_reconcile_string', string='Reconcile', store=True)
|
||||||
# for optional display in tree view
|
# for optional display in tree view
|
||||||
product_barcode = fields.Char(related='product_id.barcode', string="Product Barcode")
|
product_barcode = fields.Char(related='product_id.barcode', string="Product Barcode")
|
||||||
|
balance = fields.Monetary(
|
||||||
|
string='Balance',
|
||||||
|
default=0.0,
|
||||||
|
currency_field='company_currency_id',
|
||||||
|
compute="_compute_balance",
|
||||||
|
store=True)
|
||||||
|
|
||||||
|
@api.depends("credit", "debit")
|
||||||
|
def _compute_balance(self):
|
||||||
|
for line in self:
|
||||||
|
line.balance = line.debit - line.credit
|
||||||
|
|
||||||
def show_account_move_form(self):
|
def show_account_move_form(self):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
|
|||||||
@@ -70,6 +70,9 @@
|
|||||||
<field name="matching_number" position="after">
|
<field name="matching_number" position="after">
|
||||||
<button title="View Journal Entry Form" type="object" name="show_account_move_form" icon="fa-arrow-right"/>
|
<button title="View Journal Entry Form" type="object" name="show_account_move_form" icon="fa-arrow-right"/>
|
||||||
</field>
|
</field>
|
||||||
|
<field name="credit" position="after">
|
||||||
|
<field name="balance" sum="Balance" />
|
||||||
|
</field>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
|||||||
@@ -29,4 +29,15 @@
|
|||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
<record id="mrp_production_tree_view" model="ir.ui.view">
|
||||||
|
<field name="model">mrp.production</field>
|
||||||
|
<field name="inherit_id" ref="mrp.mrp_production_tree_view"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="reservation_state" position="after">
|
||||||
|
<field name="location_src_id" optional="hide" groups="stock.group_stock_multi_locations"/>
|
||||||
|
<field name="location_dest_id" optional="hide" groups="stock.group_stock_multi_locations"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|||||||
@@ -18,4 +18,25 @@
|
|||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
<record id="view_quotation_tree" model="ir.ui.view">
|
||||||
|
<field name="model">sale.order</field>
|
||||||
|
<field name="inherit_id" ref="sale_stock.view_quotation_tree"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="warehouse_id" position="after">
|
||||||
|
<field name="route_id" optional="hide"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="view_order_tree" model="ir.ui.view">
|
||||||
|
<field name="model">sale.order</field>
|
||||||
|
<field name="inherit_id" ref="sale_stock.view_order_tree"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="warehouse_id" position="after">
|
||||||
|
<field name="route_id" optional="hide"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|||||||
0
shopinvader_usability/__init__.py
Normal file
0
shopinvader_usability/__init__.py
Normal file
18
shopinvader_usability/__manifest__.py
Normal file
18
shopinvader_usability/__manifest__.py
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# Copyright 2021 Akretion
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
{
|
||||||
|
"name": "Shopinvader Usability",
|
||||||
|
"description": """
|
||||||
|
Shopinvader Usability""",
|
||||||
|
"version": "14.0.1.0.0",
|
||||||
|
"license": "AGPL-3",
|
||||||
|
"author": "Akretion",
|
||||||
|
"website": "https://github.com/OCA/odoo-usability",
|
||||||
|
"depends": [
|
||||||
|
"shopinvader",
|
||||||
|
"sale_usability",
|
||||||
|
],
|
||||||
|
"data": ["views/sale_views.xml"],
|
||||||
|
"auto_install": True,
|
||||||
|
}
|
||||||
22
shopinvader_usability/views/sale_views.xml
Normal file
22
shopinvader_usability/views/sale_views.xml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<!-- Copyright 2021 Akretion
|
||||||
|
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
|
||||||
|
<odoo>
|
||||||
|
<record id="sale.action_quotations" model="ir.actions.act_window">
|
||||||
|
<field
|
||||||
|
name="domain"
|
||||||
|
>['&', ('state', 'in', ('draft', 'sent', 'cancel')), ('typology', '=', 'sale')]</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="sale.action_quotations_with_onboarding" model="ir.actions.act_window">
|
||||||
|
<field
|
||||||
|
name="domain"
|
||||||
|
>['&', ('state', 'in', ('draft', 'sent', 'cancel')), ('typology', '=', 'sale')]</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="sale.action_quotations_salesteams" model="ir.actions.act_window">
|
||||||
|
<field
|
||||||
|
name="domain"
|
||||||
|
>['&', ('state', 'in', ('draft', 'sent', 'cancel')), ('typology', '=', 'sale')]</field>
|
||||||
|
</record>
|
||||||
|
</odoo>
|
||||||
@@ -97,7 +97,7 @@ class StockValuationXlsx(models.TransientModel):
|
|||||||
raise UserError(_(
|
raise UserError(_(
|
||||||
"The selected inventory (%s) is not in done state.")
|
"The selected inventory (%s) is not in done state.")
|
||||||
% self.inventory_id.display_name)
|
% self.inventory_id.display_name)
|
||||||
cost_method_real_count = self.env['ir.property'].search([
|
cost_method_real_count = self.env['ir.property'].sudo().search([
|
||||||
('company_id', '=', company_id),
|
('company_id', '=', company_id),
|
||||||
('name', '=', 'property_cost_method'),
|
('name', '=', 'property_cost_method'),
|
||||||
('value_text', '=', 'real'),
|
('value_text', '=', 'real'),
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ class StockVariationXlsx(models.TransientModel):
|
|||||||
else:
|
else:
|
||||||
if self.start_date >= present:
|
if self.start_date >= present:
|
||||||
raise UserError(_("The start date must be in the past."))
|
raise UserError(_("The start date must be in the past."))
|
||||||
cost_method_real_count = self.env['ir.property'].search([
|
cost_method_real_count = self.env['ir.property'].sudo().search([
|
||||||
('company_id', '=', company_id),
|
('company_id', '=', company_id),
|
||||||
('name', '=', 'property_cost_method'),
|
('name', '=', 'property_cost_method'),
|
||||||
('value_text', '=', 'real'),
|
('value_text', '=', 'real'),
|
||||||
|
|||||||
Reference in New Issue
Block a user