@ -0,0 +1,41 @@ |
|||||
|
.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg |
||||
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html |
||||
|
:alt: License: AGPL-3 |
||||
|
|
||||
|
Cancel Landed Cost |
||||
|
======================= |
||||
|
This module helps to cancel Landed Costs and allows you to cancel multiple Landed Costs from the tree view. There are three ways in which you can cancel the Landed Costs. |
||||
|
|
||||
|
License |
||||
|
------- |
||||
|
General Public License, Version 3 (AGPL v3). |
||||
|
(https://www.gnu.org/licenses/agpl-3.0-standalone.html) |
||||
|
|
||||
|
Company |
||||
|
------- |
||||
|
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__ |
||||
|
|
||||
|
Credits |
||||
|
------- |
||||
|
Developer: ANFAS FAISAL K, Contact: odoo@cybrosys.com |
||||
|
|
||||
|
Contacts |
||||
|
-------- |
||||
|
* Mail Contact : odoo@cybrosys.com |
||||
|
* Website : https://cybrosys.com |
||||
|
|
||||
|
Bug Tracker |
||||
|
----------- |
||||
|
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. |
||||
|
|
||||
|
Maintainer |
||||
|
========== |
||||
|
.. image:: https://cybrosys.com/images/logo.png |
||||
|
:target: https://cybrosys.com |
||||
|
This module is maintained by Cybrosys Technologies. |
||||
|
|
||||
|
For support and more information, please visit `Our Website <https://cybrosys.com/>`__ |
||||
|
|
||||
|
Further information |
||||
|
=================== |
||||
|
HTML Description: `<static/description/index.html>`__ |
@ -0,0 +1,22 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################ |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
||||
|
# Author: Anfas Faisal K (odoo@cybrosys.info) |
||||
|
# |
||||
|
# You can modify it under the terms of the GNU AFFERO |
||||
|
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
||||
|
# (AGPL v3) along with this program. |
||||
|
# If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################ |
||||
|
from . import models |
@ -0,0 +1,47 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################ |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
||||
|
# Author: Anfas Faisal K (odoo@cybrosys.info) |
||||
|
# |
||||
|
# You can modify it under the terms of the GNU AFFERO |
||||
|
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
||||
|
# (AGPL v3) along with this program. |
||||
|
# If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################ |
||||
|
{ |
||||
|
'name': "Cancel Landed Cost", |
||||
|
'version': "16.0.1.0.0", |
||||
|
'category': 'Purchases,Accounting,Warehouse', |
||||
|
'author': 'Cybrosys Techno Solutions', |
||||
|
'company': 'Cybrosys Techno Solutions', |
||||
|
'summary': 'This module helps to cancel landed costs', |
||||
|
'description': 'This module helps to cancel Landed Costs and allows you ' |
||||
|
'to cancel multiple Landed Costs from the tree view. There ' |
||||
|
'are three ways in which you can cancel the Landed Costs' |
||||
|
'Cancel Only, Cancel and Reset to Draft,Cancel and Delete', |
||||
|
'maintainer': 'Cybrosys Techno Solutions', |
||||
|
'images': ['static/description/banner.png'], |
||||
|
'website': 'https://www.cybrosys.com', |
||||
|
'depends': ['account', 'purchase', 'stock_landed_costs'], |
||||
|
'data': [ |
||||
|
'security/cancel_landed_cost_odoo_groups.xml', |
||||
|
'data/stock_landed_cost_data.xml', |
||||
|
'views/stock_landed_cost_views.xml', |
||||
|
'views/res_config_settings_views.xml', |
||||
|
], |
||||
|
'license': 'AGPL-3', |
||||
|
'installable': True, |
||||
|
'auto_install': False, |
||||
|
'application': False, |
||||
|
} |
@ -0,0 +1,38 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||
|
<odoo> |
||||
|
<!-- Cancel Button inside Action Menu in model Stock Landed Cost--> |
||||
|
<record id="stock_landed_cost_action_cancel" model="ir.actions.server"> |
||||
|
<field name="name">Cancel</field> |
||||
|
<field name="model_id" ref="model_stock_landed_cost"/> |
||||
|
<field name="groups_id" |
||||
|
eval="[(4, ref('cancel_landed_cost_odoo_group_cancel_user'))]"/> |
||||
|
<field name="binding_model_id" ref="model_stock_landed_cost"/> |
||||
|
<field name="binding_view_types">list,form</field> |
||||
|
<field name="state">code</field> |
||||
|
<field name="code">action = records.action_landed_cost_cancel()</field> |
||||
|
</record> |
||||
|
<!-- Cancel and Reset Button inside Action Menu in model Stock Landed Cost--> |
||||
|
<record id="stock_landed_cost_action_cancel_and_reset" model="ir.actions.server"> |
||||
|
<field name="name">Cancel and Reset Draft</field> |
||||
|
<field name="model_id" ref="model_stock_landed_cost"/> |
||||
|
<field name="groups_id" |
||||
|
eval="[(4, ref('cancel_landed_cost_odoo_group_cancel_user'))]"/> |
||||
|
<field name="binding_model_id" ref="model_stock_landed_cost"/> |
||||
|
<field name="binding_view_types">list,form</field> |
||||
|
<field name="state">code</field> |
||||
|
<field name="code">action = records.action_landed_cost_reset_and_cancel() |
||||
|
</field> |
||||
|
</record> |
||||
|
<!-- Cancel and Delete Button inside Action Menu in model Stock Landed Cost--> |
||||
|
<record id="stock_landed_cost_action_cancel_and_delete" model="ir.actions.server"> |
||||
|
<field name="name">Cancel and Delete</field> |
||||
|
<field name="model_id" ref="model_stock_landed_cost"/> |
||||
|
<field name="groups_id" |
||||
|
eval="[(4, ref('cancel_landed_cost_odoo_group_cancel_user'))]"/> |
||||
|
<field name="binding_model_id" ref="model_stock_landed_cost"/> |
||||
|
<field name="binding_view_types">list,form</field> |
||||
|
<field name="state">code</field> |
||||
|
<field name="code">action = records.action_landed_cost_cancel_and_delete() |
||||
|
</field> |
||||
|
</record> |
||||
|
</odoo> |
@ -0,0 +1,7 @@ |
|||||
|
## Module <cancel_landed_cost_odoo> |
||||
|
|
||||
|
#### 15.11.2023 |
||||
|
#### Version 16.0.1.0.0 |
||||
|
#### ADD |
||||
|
|
||||
|
- Initial commit for Cancel Landed Cost |
@ -0,0 +1,23 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################ |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
||||
|
# Author: Anfas Faisal K (odoo@cybrosys.info) |
||||
|
# |
||||
|
# You can modify it under the terms of the GNU AFFERO |
||||
|
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
||||
|
# (AGPL v3) along with this program. |
||||
|
# If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################ |
||||
|
from . import res_config_settings |
||||
|
from . import stock_landed_cost |
@ -0,0 +1,37 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################ |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
||||
|
# Author: Anfas Faisal K (odoo@cybrosys.info) |
||||
|
# |
||||
|
# You can modify it under the terms of the GNU AFFERO |
||||
|
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
||||
|
# (AGPL v3) along with this program. |
||||
|
# If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################ |
||||
|
from odoo import fields, models |
||||
|
|
||||
|
|
||||
|
class ResConfigSettings(models.TransientModel): |
||||
|
"""Model for managing the configuration settings for canceling landed |
||||
|
costs.""" |
||||
|
|
||||
|
_inherit = "res.config.settings" |
||||
|
|
||||
|
land_cost_cancel_modes = fields.Selection([ |
||||
|
('cancel', 'Cancel'), |
||||
|
('cancel_draft', 'Cancel and Reset to Draft'), |
||||
|
('cancel_delete', 'Cancel and Delete'), |
||||
|
], string='Operation Type', default='cancel', |
||||
|
help="Select the operation to perform when canceling a landed cost.", |
||||
|
config_parameter='cancel_landed_cost_odoo.land_cost_cancel_modes') |
@ -0,0 +1,232 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
################################################################################ |
||||
|
# |
||||
|
# Cybrosys Technologies Pvt. Ltd. |
||||
|
# |
||||
|
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
||||
|
# Author: Anfas Faisal K (odoo@cybrosys.info) |
||||
|
# |
||||
|
# You can modify it under the terms of the GNU AFFERO |
||||
|
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
||||
|
# (AGPL v3) along with this program. |
||||
|
# If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
################################################################################ |
||||
|
from odoo import fields, models |
||||
|
|
||||
|
|
||||
|
class StockLandedCost(models.Model): |
||||
|
"""Inherits 'stock.landed.cost' model to add additional functionality |
||||
|
related to cancelling and resetting landed cost records. |
||||
|
|
||||
|
Methods: |
||||
|
action_landed_cost_cancel: Cancels the landed cost record by deleting |
||||
|
its associated accounting entries, stock valuation, and changes state |
||||
|
to 'cancelled. |
||||
|
|
||||
|
action_landed_cost_reset_and_cancel: Resets the landed cost record by |
||||
|
deleting its associated accounting entries and stock valuation. |
||||
|
It changes the state back to 'draft'. |
||||
|
|
||||
|
action_landed_cost_cancel_and_delete: Deletes the landed cost record by |
||||
|
deleting its associated accounting entries and stock valuation. It also |
||||
|
deletes the Landed cost record. |
||||
|
|
||||
|
action_landed_cost_cancel_form: Cancels the landed cost record and |
||||
|
deletes its associated accounting entries and stock valuation. |
||||
|
It also creates two entries to revert back to the original cost price, |
||||
|
which are also deleted in the process. |
||||
|
|
||||
|
""" |
||||
|
_inherit = 'stock.landed.cost' |
||||
|
|
||||
|
is_cancel = fields.Boolean(string='Cancel', default=False, |
||||
|
help='If the user clicks the "Cancel" button' |
||||
|
'once, it will hide the button and make' |
||||
|
'it invisible.') |
||||
|
|
||||
|
def action_landed_cost_cancel(self): |
||||
|
"""Cancels the landed cost record by deleting its associated |
||||
|
accounting entries, stock valuation, and changes state to 'cancelled'. |
||||
|
|
||||
|
Additionally, it reverts the original cost price by creating two |
||||
|
entries, which are also deleted in the process. |
||||
|
""" |
||||
|
for rec in self: |
||||
|
for line in rec.valuation_adjustment_lines.filtered( |
||||
|
lambda line: line.move_id): |
||||
|
product = line.move_id.product_id |
||||
|
if product.cost_method == 'average': |
||||
|
original_price = product.standard_price |
||||
|
new_price = product.standard_price - line.additional_landed_cost |
||||
|
product.write({'standard_price': new_price}) |
||||
|
stock_valuation_layer = self.env['stock.valuation.layer'] \ |
||||
|
.search([('product_id', '=', product.id), |
||||
|
('description', '=', f'Product value manually ' |
||||
|
f'modified (from {original_price} to {new_price})')], |
||||
|
limit=1) |
||||
|
if stock_valuation_layer: |
||||
|
stock_valuation_layer.account_move_id.button_draft() |
||||
|
stock_valuation_layer.account_move_id.sudo().unlink() |
||||
|
stock_valuation_layer.sudo().unlink() |
||||
|
if rec.account_move_id: |
||||
|
account_id = rec.account_move_id |
||||
|
account_move_ids = account_id.line_ids |
||||
|
if account_move_ids: |
||||
|
account_id.sudo().write( |
||||
|
{'state': 'draft', 'name': 'Delete Sequence Number'}) |
||||
|
account_move_ids.sudo().unlink() |
||||
|
account_id.sudo().unlink() |
||||
|
if rec.valuation_adjustment_lines: |
||||
|
rec.valuation_adjustment_lines.unlink() |
||||
|
if rec.stock_valuation_layer_ids: |
||||
|
rec.stock_valuation_layer_ids.sudo().unlink() |
||||
|
rec.write({'state': 'cancel'}) |
||||
|
|
||||
|
def action_landed_cost_reset_and_cancel(self): |
||||
|
"""Resets the landed cost record by deleting its associated accounting |
||||
|
entries and stock valuation. It changes the state back to 'draft'. |
||||
|
|
||||
|
Additionally, it reverts the original cost price by creating two entries, |
||||
|
which are also deleted in the process. |
||||
|
""" |
||||
|
for rec in self: |
||||
|
for line in rec.valuation_adjustment_lines.filtered( |
||||
|
lambda line: line.move_id): |
||||
|
product = line.move_id.product_id |
||||
|
if product.cost_method == 'average': |
||||
|
original_price = product.standard_price |
||||
|
new_price = product.standard_price - line.additional_landed_cost |
||||
|
product.write({'standard_price': new_price}) |
||||
|
stock_valuation_layer = self.env['stock.valuation.layer'] \ |
||||
|
.search([('product_id', '=', product.id), |
||||
|
('description', '=', f'Product value manually ' |
||||
|
f'modified (from {original_price} to {new_price})')], |
||||
|
limit=1) |
||||
|
if stock_valuation_layer: |
||||
|
stock_valuation_layer.account_move_id.button_draft() |
||||
|
stock_valuation_layer.account_move_id.sudo().unlink() |
||||
|
stock_valuation_layer.sudo().unlink() |
||||
|
if rec.account_move_id: |
||||
|
account_id = rec.account_move_id |
||||
|
account_move_ids = account_id.line_ids |
||||
|
if account_move_ids: |
||||
|
account_id.sudo().write( |
||||
|
{'state': 'draft', 'name': 'Delete Sequence Number'}) |
||||
|
account_move_ids.sudo().unlink() |
||||
|
account_id.sudo().unlink() |
||||
|
if rec.valuation_adjustment_lines: |
||||
|
rec.valuation_adjustment_lines.unlink() |
||||
|
if rec.stock_valuation_layer_ids: |
||||
|
rec.sudo().stock_valuation_layer_ids.unlink() |
||||
|
rec.write({'state': 'draft'}) |
||||
|
|
||||
|
def action_landed_cost_cancel_and_delete(self): |
||||
|
"""Deletes the landed cost record by deleting its associated accounting |
||||
|
entries and stock valuation. It also deletes the Landed cost record. |
||||
|
|
||||
|
Additionally, it reverts the original cost price by creating two |
||||
|
entries, which are also deleted in the process. |
||||
|
""" |
||||
|
for rec in self: |
||||
|
for line in rec.valuation_adjustment_lines.filtered( |
||||
|
lambda line: line.move_id): |
||||
|
product = line.move_id.product_id |
||||
|
if product.cost_method == 'average': |
||||
|
original_price = product.standard_price |
||||
|
new_price = product.standard_price - line.additional_landed_cost |
||||
|
product.write({'standard_price': new_price}) |
||||
|
stock_valuation_layer = self.env['stock.valuation.layer'] \ |
||||
|
.search([('product_id', '=', product.id), |
||||
|
('description', '=', f'Product value manually ' |
||||
|
f'modified (from {original_price} to {new_price})')], |
||||
|
limit=1) |
||||
|
if stock_valuation_layer: |
||||
|
stock_valuation_layer.account_move_id.button_draft() |
||||
|
stock_valuation_layer.account_move_id.sudo().unlink() |
||||
|
stock_valuation_layer.sudo().unlink() |
||||
|
if rec.account_move_id: |
||||
|
account_id = rec.account_move_id |
||||
|
account_move_ids = account_id.line_ids |
||||
|
if account_move_ids: |
||||
|
account_id.sudo().write( |
||||
|
{'state': 'draft', 'name': 'Delete Sequence Number'}) |
||||
|
account_move_ids.sudo().unlink() |
||||
|
account_id.sudo().unlink() |
||||
|
if rec.valuation_adjustment_lines: |
||||
|
rec.valuation_adjustment_lines.unlink() |
||||
|
if rec.stock_valuation_layer_ids: |
||||
|
rec.sudo().stock_valuation_layer_ids.unlink() |
||||
|
rec.write({'state': 'cancel'}) |
||||
|
rec.unlink() |
||||
|
|
||||
|
def action_landed_cost_cancel_form(self): |
||||
|
"""Cancels the landed cost record and deletes its associated |
||||
|
accounting entries and stock valuation. It also creates two entries |
||||
|
to revert back to the original cost price, which are also deleted in |
||||
|
the process. |
||||
|
|
||||
|
The specific action performed depends on the value of the |
||||
|
'cancel_landed_cost_odoo.land_cost_cancel_modes' |
||||
|
configuration parameter: |
||||
|
- 'cancel': Changes the landed cost state to 'cancel' and sets |
||||
|
the 'is_cancel' flag to True. |
||||
|
- 'cancel_draft': Changes the landed cost state to 'draft' |
||||
|
and sets the 'is_cancel' flag to False. |
||||
|
- 'cancel_delete': Deletes the landed cost record and returns an |
||||
|
action to open the Landed Cost tree view. |
||||
|
""" |
||||
|
for rec in self: |
||||
|
for line in rec.valuation_adjustment_lines.filtered( |
||||
|
lambda line: line.move_id): |
||||
|
product = line.move_id.product_id |
||||
|
if product.cost_method == 'average': |
||||
|
original_price = product.standard_price |
||||
|
new_price = product.standard_price - line.additional_landed_cost |
||||
|
product.write({'standard_price': new_price}) |
||||
|
stock_valuation_layer = self.env['stock.valuation.layer'] \ |
||||
|
.search([('product_id', '=', product.id), |
||||
|
('description', '=', f'Product value manually ' |
||||
|
f'modified (from {original_price} to {new_price})')], |
||||
|
limit=1) |
||||
|
if stock_valuation_layer: |
||||
|
stock_valuation_layer.account_move_id.button_draft() |
||||
|
stock_valuation_layer.account_move_id.sudo().unlink() |
||||
|
stock_valuation_layer.sudo().unlink() |
||||
|
if self.account_move_id: |
||||
|
account_id = self.account_move_id |
||||
|
account_move_ids = account_id.line_ids |
||||
|
if account_move_ids: |
||||
|
account_id.sudo().write( |
||||
|
{'state': 'draft', 'name': 'Delete Sequence Number'}) |
||||
|
account_move_ids.sudo().unlink() |
||||
|
account_id.sudo().unlink() |
||||
|
if self.valuation_adjustment_lines: |
||||
|
self.valuation_adjustment_lines.unlink() |
||||
|
if self.stock_valuation_layer_ids: |
||||
|
self.sudo().stock_valuation_layer_ids.unlink() |
||||
|
landed_mode = self.env['ir.config_parameter'].sudo().get_param( |
||||
|
'cancel_landed_cost_odoo.land_cost_cancel_modes') |
||||
|
if landed_mode == 'cancel': |
||||
|
self.write({'state': 'cancel'}) |
||||
|
self.is_cancel = True |
||||
|
if landed_mode == 'cancel_draft': |
||||
|
self.write({'state': 'draft'}) |
||||
|
self.is_cancel = False |
||||
|
if landed_mode == 'cancel_delete': |
||||
|
self.write({'state': 'cancel'}) |
||||
|
self.unlink() |
||||
|
return { |
||||
|
'name': 'Landed Cost', |
||||
|
'type': 'ir.actions.act_window', |
||||
|
'res_model': 'stock.landed.cost', |
||||
|
'view_mode': 'tree,form', |
||||
|
'target': 'current' |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||
|
<odoo> |
||||
|
<!-- Added a new group within the res.groups module, which allows you to activate the feature for canceling landed costs.--> |
||||
|
<record id="cancel_landed_cost_odoo_group_cancel_user" model="res.groups"> |
||||
|
<field name="name">Landed Cost Cancel Features</field> |
||||
|
<field name="category_id" ref="base.module_category_hidden"/> |
||||
|
</record> |
||||
|
</odoo> |
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 310 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 576 B |
After Width: | Height: | Size: 733 B |
After Width: | Height: | Size: 911 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 673 B |
After Width: | Height: | Size: 878 B |
After Width: | Height: | Size: 653 B |
After Width: | Height: | Size: 905 B |
After Width: | Height: | Size: 839 B |
After Width: | Height: | Size: 427 B |
After Width: | Height: | Size: 627 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 988 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 589 B |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 967 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 84 KiB |
After Width: | Height: | Size: 82 KiB |
After Width: | Height: | Size: 82 KiB |
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 82 KiB |
After Width: | Height: | Size: 195 KiB |
After Width: | Height: | Size: 135 KiB |
After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 117 KiB |
After Width: | Height: | Size: 137 KiB |
After Width: | Height: | Size: 113 KiB |
After Width: | Height: | Size: 67 KiB |
After Width: | Height: | Size: 118 KiB |
After Width: | Height: | Size: 118 KiB |
After Width: | Height: | Size: 115 KiB |
After Width: | Height: | Size: 135 KiB |
After Width: | Height: | Size: 118 KiB |
After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 117 KiB |
After Width: | Height: | Size: 93 KiB |
After Width: | Height: | Size: 125 KiB |
After Width: | Height: | Size: 115 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 100 KiB |
After Width: | Height: | Size: 210 KiB |
After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 112 KiB |
After Width: | Height: | Size: 63 KiB |
After Width: | Height: | Size: 272 KiB |
After Width: | Height: | Size: 89 KiB |
After Width: | Height: | Size: 16 KiB |
@ -0,0 +1,842 @@ |
|||||
|
<div style="background-color: #714B67; height: 810px; width: 100%; padding: 15px; position: relative;"> |
||||
|
<!-- TITLE BAR --> |
||||
|
<div class="d-flex align-items-center justify-content-between" |
||||
|
style="border-bottom: 1px solid #875A7B; padding: 15px; display: flex; justify-content: space-between; align-items: center;"> |
||||
|
<img src="assets/misc/cybrosys-logo.png" width="42" height="42" |
||||
|
style="width: 42px; height: 42px;"/> |
||||
|
<div> |
||||
|
<div |
||||
|
style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" |
||||
|
class="mr-2"> |
||||
|
<i class="fa fa-check mr-1"></i>Community |
||||
|
</div> |
||||
|
<div |
||||
|
style="color: #875A7B; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" |
||||
|
class="mr-2"> |
||||
|
<i class="fa fa-check mr-1"></i>Enterprise |
||||
|
</div> |
||||
|
<div |
||||
|
style="color: #017E84; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" |
||||
|
class="mr-2"> |
||||
|
<i class="fa fa-check mr-1"></i>Odoo.sh |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<!-- END OF TITLE BAR --> |
||||
|
<div class="container"> |
||||
|
<div class="row"> |
||||
|
<div class="col-sm-12 col-md-12 col-lg-12"> |
||||
|
<!-- APP HERO --> |
||||
|
<h1 style="color: #FFFFFF; font-weight: bolder; font-size: 50px; text-align: center; margin-top: 50px;"> |
||||
|
Cancel Landed Cost |
||||
|
</h1> |
||||
|
<p style="color:#FFFFFF; padding: 8px 15px; text-align: center; font-size: 24px;"> |
||||
|
This Module Allows You To Cancel Multiple Landed Costs From The Tree View And Provides Three Ways In Which You Can Cancel The Landed Costs |
||||
|
</p> |
||||
|
<!-- END OF APP HERO --> |
||||
|
<img src="assets/screenshots/cancel-landed-cost-odoo-gif.gif" |
||||
|
class="img-responsive" |
||||
|
style="width: 100%; margin-left: auto; margin-right: auto;"/> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<!-- NAVIGATION SECTION --> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px; margin-top: 300px;"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/compass.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Explore This |
||||
|
Module</h2> |
||||
|
</div> |
||||
|
<div class="row my-4" style="font-family: 'Montserrat', sans-serif;"> |
||||
|
<div class="col-sm-12 col-md-6 my-3"> |
||||
|
<a href="#overview"> |
||||
|
<div class="d-flex justify-content-between align-items-center" |
||||
|
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
||||
|
<div> |
||||
|
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Overview</span> |
||||
|
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">Learn |
||||
|
more about this |
||||
|
module</span> |
||||
|
</div> |
||||
|
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-sm-12 col-md-6 my-3"> |
||||
|
<a href="#features"> |
||||
|
<div class="d-flex justify-content-between align-items-center" |
||||
|
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
||||
|
<div> |
||||
|
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Features</span> |
||||
|
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View |
||||
|
features of this |
||||
|
module</span> |
||||
|
</div> |
||||
|
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-sm-12 col-md-6 my-3"> |
||||
|
<a href="#screenshots"> |
||||
|
<div class="d-flex justify-content-between align-items-center" |
||||
|
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
||||
|
<div> |
||||
|
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Screenshots</span> |
||||
|
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View |
||||
|
screenshots for this |
||||
|
module</span> |
||||
|
</div> |
||||
|
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
<!-- END OF NAVIGATION SECTION --> |
||||
|
|
||||
|
<!-- OVERVIEW SECTION --> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="overview"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/pie-chart.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Overview |
||||
|
</h2> |
||||
|
</div> |
||||
|
<div class="row" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;"> |
||||
|
<div class="col-sm-12 py-4"> |
||||
|
This module helps to cancel Landed Costs and allows you to cancel |
||||
|
multiple Landed Costs from the tree view. There are three ways in which |
||||
|
you can cancel the Landed Costs. |
||||
|
<ul> |
||||
|
<li> |
||||
|
1) Cancel Only: When you Cancel the Landed cost then the landed |
||||
|
cost is cancelled and the state is changed to Cancelled. |
||||
|
</li> |
||||
|
<li> |
||||
|
2) Cancel and Reset to Draft: When you cancel landed costs, |
||||
|
First Landed Costs is Cancelled and then Reset to the Draft |
||||
|
state. |
||||
|
</li> |
||||
|
<li> |
||||
|
3) Cancel and Delete: When you Cancel the Landed costs then |
||||
|
First Landed Cost is Cancelled and then Landed Cost will be |
||||
|
deleted. |
||||
|
</li> |
||||
|
</ul> |
||||
|
|
||||
|
<!-- END OF OVERVIEW SECTION --> |
||||
|
|
||||
|
<!-- FEATURES SECTION --> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;" |
||||
|
id="features"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/features.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Features |
||||
|
</h2> |
||||
|
</div> |
||||
|
<div class="row" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;"> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="margin-top: 30px; margin-bottom: 30px"> |
||||
|
<img src="assets/misc/check-box.png" class="mr-2"/> |
||||
|
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">This module helps to cancel Landed Costs and allows you to cancel multiple Landed Costs from the tree view. |
||||
|
There are three ways in which you can cancel the Landed Costs. |
||||
|
</span> |
||||
|
</div> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="margin-top: 30px; margin-bottom: 30px"> |
||||
|
<img src="assets/misc/check-box.png" class="mr-2"/> |
||||
|
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> Deleting landed costs entirely can be helpful in cases of error or irrelevance.</span> |
||||
|
</div> |
||||
|
|
||||
|
<div class="d-flex align-items-center" |
||||
|
style="margin-top: 30px; margin-bottom: 30px"> |
||||
|
<img src="assets/misc/check-box.png" class="mr-2"/> |
||||
|
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> Resetting landed costs to draft status enables changes to be made and resubmission for review. |
||||
|
</span> |
||||
|
</div> |
||||
|
|
||||
|
<div class="d-flex align-items-center" |
||||
|
style="margin-top: 30px; margin-bottom: 30px"> |
||||
|
<img src="assets/misc/check-box.png" class="mr-2"/> |
||||
|
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> Canceling landed costs with journal entries ensures accurate accounting record-keeping. |
||||
|
|
||||
|
|
||||
|
|
||||
|
</span> |
||||
|
</div> |
||||
|
|
||||
|
<div class="d-flex align-items-center" |
||||
|
style="margin-top: 30px; margin-bottom: 30px"> |
||||
|
<img src="assets/misc/check-box.png" class="mr-2"/> |
||||
|
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> These features help businesses streamline inventory and expense management. |
||||
|
|
||||
|
|
||||
|
|
||||
|
</span> |
||||
|
</div> |
||||
|
|
||||
|
<div class="d-flex align-items-center" |
||||
|
style="margin-top: 30px; margin-bottom: 30px"> |
||||
|
<img src="assets/misc/check-box.png" class="mr-2"/> |
||||
|
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> Accurate tracking of landed costs can improve inventory management. |
||||
|
|
||||
|
</span> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-sm-12 col-md-6"> |
||||
|
|
||||
|
|
||||
|
</div> |
||||
|
<!-- END OF FEATURES SECTION --> |
||||
|
|
||||
|
<!-- SCREENSHOTS SECTION --> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;" |
||||
|
id="screenshots"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/pictures.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Screenshots |
||||
|
</h2> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div class="row"> |
||||
|
<div class="col-sm-12"> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Tick The "Landed Cost Cancel Features" To Cancel The |
||||
|
Landed cost. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/24.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
To Cancel The Landed Costs, Select Your Preferred Cancellation Method For The Landed Cost Option, And Then Save The Changes. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/2.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Landed Cost Creation(Odoo Standard). |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/3.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Stock Valuation Of Product When Landed Cost Is Created. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/4.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
The Journal Entry Of The Landed Cost(Odoo Standard). |
||||
|
</h3> |
||||
|
|
||||
|
<img src="assets/screenshots/5.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Press The "CANCEL" Button To Cancel Landed Costs. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/7.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
When You Cancel The Landed Costs Then The Landed Cost Is |
||||
|
Cancelled And The State Is Changed To "CANCELLED" And |
||||
|
Valuation Adjustments Lines Are Deleted. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/8.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Corresponding Stock Valuation Is Deleted From The |
||||
|
Records. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/9.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Corresponding Journal Entries Are Deleted. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/10.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
When You Want To Cancel The Landed Costs And Reset To |
||||
|
The Draft State Tick "Cancel and Reset to Draft". |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/11.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Press The "CANCEL" Button To Cancel Landed Costs " . |
||||
|
<img src="assets/screenshots/12.png" |
||||
|
class="img-thumbnail"> |
||||
|
</h3> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
When You Cancel The Landed Costs Then The Landed Cost Is |
||||
|
Reset And The State Is Changed Back To "DRAFT". |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/13.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
When You Want To Cancel & Delete The Landed Costs Then |
||||
|
Choose The "Cancel and Delete" Option. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/14.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Press The "CANCEL" Button To Cancel Landed Costs. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/15.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
After The "CANCEL" The Corresponding Landed Cost Will Be |
||||
|
Deleted. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/16.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
We Can Cancel Multiple Landed Costs From The Tree View. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/17.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Select The Landed Cost You Want To Cancel And Click |
||||
|
"Cancel" Button. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/18.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
All Selected Landed Costs Are Cancelled. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/19.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Select The Landed Cost You Want To Cancel&Reset And |
||||
|
Click "Cancel and Reset Draft" Button. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/20.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
All Selected Landed Costs Changed to Draft State. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/21.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
Select the Landed Cost You Want To Cancel&Delete and |
||||
|
Click "Cancel and Delete" Button. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/22.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
<div style="display: block; margin: 30px auto;"> |
||||
|
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
||||
|
All Landed Costs Will Be Deleted After Cancelled. |
||||
|
</h3> |
||||
|
<img src="assets/screenshots/23.png" class="img-thumbnail"> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
<!-- END OF SCREENSHOTS SECTION --> |
||||
|
|
||||
|
<!-- RELATED PRODUCTS --> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/categories.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Related |
||||
|
Products |
||||
|
</h2> |
||||
|
</div> |
||||
|
<div class="row"> |
||||
|
<div class="col-sm-12"> |
||||
|
<div id="demo1" class="row carousel slide" data-ride="carousel"> |
||||
|
<!-- The slideshow --> |
||||
|
<div class="carousel-inner" style="padding: 30px;"> |
||||
|
<div class="carousel-item" |
||||
|
style="min-height: 198.656px;"> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
||||
|
style="float:left"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/16.0/pos_delete_orderline/" |
||||
|
target="_blank"> |
||||
|
<div style="border-radius:10px"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-radius: 0px;" |
||||
|
src="assets/modules/1.png"> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
||||
|
style="float:left"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/16.0/invoice_multi_approval/#" |
||||
|
target="_blank"> |
||||
|
<div style="border-radius:10px"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-radius: 0px;" |
||||
|
src="assets/modules/2.png"> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
||||
|
style="float:left"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/16.0/pos_numpad_show_hide/#" |
||||
|
target="_blank"> |
||||
|
<div style="border-radius:10px"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-radius: 0px;" |
||||
|
src="assets/modules/3.png"> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="carousel-item active" |
||||
|
style="min-height: 198.656px;"> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
||||
|
style="float:left"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/16.0/website_hide_variants/" |
||||
|
target="_blank"> |
||||
|
<div style="border-radius:10px"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-radius: 0px;" |
||||
|
src="assets/modules/4.png"> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
||||
|
style="float:left"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/16.0/developer_mode/#" |
||||
|
target="_blank"> |
||||
|
<div style="border-radius:10px"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-radius: 0px;" |
||||
|
src="assets/modules/5.png"> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
||||
|
style="float:left"> |
||||
|
<a href="https://apps.odoo.com/apps/modules/16.0/inventory_barcode_scanning/" |
||||
|
target="_blank"> |
||||
|
<div style="border-radius:10px"> |
||||
|
<img class="img img-responsive center-block" |
||||
|
style="border-radius: 0px;" |
||||
|
src="assets/modules/6.png"> |
||||
|
</div> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<!-- Left and right controls --> |
||||
|
<a class="carousel-control-prev" href="#demo1" |
||||
|
data-slide="prev" style="width:35px; color:#000"> <span |
||||
|
class="carousel-control-prev-icon"><i |
||||
|
class="fa fa-chevron-left" |
||||
|
style="font-size:24px"></i></span> |
||||
|
</a> <a class="carousel-control-next" href="#demo1" |
||||
|
data-slide="next" style="width:35px; color:#000"> |
||||
|
<span class="carousel-control-next-icon"><i |
||||
|
class="fa fa-chevron-right" |
||||
|
style="font-size:24px"></i></span> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<!-- END OF RELATED PRODUCTS --> |
||||
|
|
||||
|
<!-- OUR SERVICES --> |
||||
|
|
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/star.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Our Services |
||||
|
</h2> |
||||
|
</div> |
||||
|
|
||||
|
<div class="container my-5"> |
||||
|
<div class="row"> |
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #1dd1a1 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/cogs.png" class="img-responsive" |
||||
|
height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Customization</h6> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #ff6b6b !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/wrench.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Implementation</h6> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #6462CD !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/lifebuoy.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Support</h6> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #ffa801 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/user.png" class="img-responsive" |
||||
|
height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Hire |
||||
|
Odoo |
||||
|
Developer</h6> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #54a0ff !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/puzzle.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Integration</h6> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #6d7680 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/update.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Migration</h6> |
||||
|
</div> |
||||
|
|
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #786fa6 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/consultation.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Consultancy</h6> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #f8a5c2 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/training.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Implementation</h6> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
||||
|
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
||||
|
style="background-color: #e6be26 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
||||
|
<img src="assets/icons/license.png" |
||||
|
class="img-responsive" height="48px" width="48px"> |
||||
|
</div> |
||||
|
<h6 class="text-center" |
||||
|
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
||||
|
Odoo |
||||
|
Licensing Consultancy</h6> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
|
||||
|
<!-- END OF OUR SERVICES --> |
||||
|
|
||||
|
<!-- OUR INDUSTRIES --> |
||||
|
|
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/corporate.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Our |
||||
|
Industries |
||||
|
</h2> |
||||
|
</div> |
||||
|
|
||||
|
<div class="container my-5"> |
||||
|
<div class="row"> |
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/trading-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
Trading |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
Easily procure |
||||
|
and |
||||
|
sell your products</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/pos-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
POS |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
Easy |
||||
|
configuration |
||||
|
and convivial experience</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/education-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
Education |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
A platform for |
||||
|
educational management</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/manufacturing-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
Manufacturing |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
Plan, track and |
||||
|
schedule your operations</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/ecom-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
E-commerce & Website |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
Mobile |
||||
|
friendly, |
||||
|
awe-inspiring product pages</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/service-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
Service Management |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
Keep track of |
||||
|
services and invoice</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/restaurant-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
Restaurant |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
Run your bar or |
||||
|
restaurant methodically</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-lg-3"> |
||||
|
<div class="my-4 d-flex flex-column justify-content-center" |
||||
|
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
||||
|
<img src="assets/icons/hotel-black.png" |
||||
|
class="img-responsive mb-3" height="48px" |
||||
|
width="48px"> |
||||
|
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
||||
|
Hotel Management |
||||
|
</h5> |
||||
|
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
||||
|
An |
||||
|
all-inclusive |
||||
|
hotel management application</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<!-- END OF OUR INDUSTRIES --> |
||||
|
|
||||
|
<!-- SUPPORT --> |
||||
|
<div class="d-flex align-items-center" |
||||
|
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
||||
|
<div class="d-flex justify-content-center align-items-center mr-2" |
||||
|
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
||||
|
<img src="assets/misc/customer-support.png"/> |
||||
|
</div> |
||||
|
<h2 class="mt-2" |
||||
|
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
||||
|
Support |
||||
|
</h2> |
||||
|
</div> |
||||
|
<div class="container mt-5"> |
||||
|
<div class="row"> |
||||
|
<div class="col-sm-12 col-md-6"> |
||||
|
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> |
||||
|
<div class="mr-4 d-flex justify-content-center align-items-center" |
||||
|
style="background-color: #714B67; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;"> |
||||
|
<img src="assets/misc/support.png" height="48" |
||||
|
width="48" style="width: 42px; height: 42px;"/> |
||||
|
</div> |
||||
|
<div> |
||||
|
<h4>Need Help?</h4> |
||||
|
<p style="line-height: 100%;">Got questions or need |
||||
|
help? Get in touch.</p> |
||||
|
<a href="mailto:odoo@cybrosys.com"> |
||||
|
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> |
||||
|
odoo@cybrosys.com</p> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-sm-12 col-md-6"> |
||||
|
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> |
||||
|
<div class="mr-4 d-flex justify-content-center align-items-center" |
||||
|
style="background-color: #2AC44D; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;"> |
||||
|
<img src="assets/misc/whatsapp.png" height="52" |
||||
|
width="52" style="width: 52px; height: 52px;"/> |
||||
|
</div> |
||||
|
<div> |
||||
|
<h4>WhatsApp</h4> |
||||
|
<p style="line-height: 100%;">Say hi to us on |
||||
|
WhatsApp!</p> |
||||
|
<a href="https://api.whatsapp.com/send?phone=918606827707"> |
||||
|
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> |
||||
|
+91 86068 |
||||
|
27707</p> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="row"> |
||||
|
<div class="col-sm-12 my-5 d-flex justify-content-center align-items-center"> |
||||
|
<img src="assets/misc/logo.png" width="144" height="31" |
||||
|
style="width:144px; height: 31px; margin-top: 40px;"/> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<!-- END OF SUPPORT --> |
@ -0,0 +1,37 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||
|
<odoo> |
||||
|
<!-- Inherited the res.config.setting to add the fields--> |
||||
|
<record id="res_config_settings_view_form" model="ir.ui.view"> |
||||
|
<field name="name"> |
||||
|
res.config.settings.view.form.inherit.cancel.landed.cost.odoo |
||||
|
</field> |
||||
|
<field name="model">res.config.settings</field> |
||||
|
<field name="inherit_id" ref="stock.res_config_settings_view_form"/> |
||||
|
<field name="arch" type="xml"> |
||||
|
<xpath expr="//div[@data-key='stock']" position="inside"> |
||||
|
<h2 groups="cancel_landed_cost_odoo.cancel_landed_cost_odoo_group_cancel_user"> |
||||
|
Landed Cost Cancel Configuration |
||||
|
</h2> |
||||
|
<div class="row mt16 o_settings_container" |
||||
|
groups="cancel_landed_cost_odoo.cancel_landed_cost_odoo_group_cancel_user"> |
||||
|
<div class="o_setting_box o_searchable_setting col-12 col-lg-6"> |
||||
|
<div class="o_setting_right_pane"> |
||||
|
<div> |
||||
|
<strong>Operation type:</strong> |
||||
|
<div class="text-muted"> |
||||
|
Options to Cancel Landed Cost |
||||
|
</div> |
||||
|
<div class="content-group"> |
||||
|
<div class="mt16"> |
||||
|
<field name="land_cost_cancel_modes" |
||||
|
widget="radio"/> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</xpath> |
||||
|
</field> |
||||
|
</record> |
||||
|
</odoo> |
@ -0,0 +1,24 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||
|
<odoo> |
||||
|
<!-- Inherited the Landed Cost Form to Add a Cancel Button in the Header--> |
||||
|
<record id="view_stock_landed_cost_form" model="ir.ui.view"> |
||||
|
<field name="name"> |
||||
|
stock.landed.cost.view.form.inherit.cancel.landed.cost.odoo |
||||
|
</field> |
||||
|
<field name="model">stock.landed.cost</field> |
||||
|
<field name="inherit_id" |
||||
|
ref="stock_landed_costs.view_stock_landed_cost_form"/> |
||||
|
<field name="arch" type="xml"> |
||||
|
<xpath expr="//header" position="inside"> |
||||
|
<button name="action_landed_cost_cancel_form" string="Cancel" |
||||
|
type="object" |
||||
|
class="oe_highlight" |
||||
|
groups="cancel_landed_cost_odoo.cancel_landed_cost_odoo_group_cancel_user" |
||||
|
attrs="{'invisible': ['|',('state','!=','done'),('is_cancel','!=',False)]}"/> |
||||
|
</xpath> |
||||
|
<xpath expr="//field[@name='vendor_bill_id']" position="after"> |
||||
|
<field name="is_cancel" invisible="1"/> |
||||
|
</xpath> |
||||
|
</field> |
||||
|
</record> |
||||
|
</odoo> |