TIP: You can type at any time to perform a new search.

Security findings

Repository
odoo/odoo · module folder
Module version
0.1.0
Category
Sales/Sales
Folder size
0.52 MB
License
LGPL-3
Application
No
Auto-installable
Yes
Website
None
Last tracking update
2026-09-28 18:31:20
Authors
Odoo S.A.
Maintainers
Odoo S.A.
Committers
Thibault Delavallée, Odoo Translation Bot, Christophe Matthieu, Victor Feyens, Tiffany Chang (tic), Gorash, Dylan Kiss (dyki), Harsh Shah, Stéphane Diez, djameltouati, Krzysztof Magusiak (krma), Lancelot Semal, Julien Launois (jula), Quentin Colla (qucol), Nisarg (nipl), Ai Lin Zuccarello (aizu), hapt-odoo, Antonio Pimentel, jeanschoenlaub
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
purchase_alternative_sale, sale_purchase_project, sale_purchase_stock
Description
Allows the outsourcing of services. This module allows one to sell services provided
by external providers and will automatically generate purchase orders directed to the service seller.
    

Code Analysis info_outline

Views touched (6)
XML IDNameModelTypeStatus
exception_purchase_on_sale_cancellation Message: Alert on purchase orders when sales orders are cancelled ir.ui.view qweb New
exception_purchase_on_sale_quantity_decreased Message: Alert on purchase orders when ordered quantity decreased on Sales Orders ir.ui.view qweb New
exception_sale_on_purchase_cancellation Message: Alert on sale orders when purchase orders are cancelled ir.ui.view qweb New
product_template_form_view product.template.view.form.inherit.sale.purchase product.template form Inherits product.product_template_form_view
purchase_order_inherited_form_sale purchase.order.inherited.form.sale purchase.order form Inherits purchase.purchase_order_form
sale_order_inherited_form_purchase sale.order.inherited.form.purchase sale.order form Inherits sale.view_order_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (5)

New fields (1)
  • service_tracking Selection
    ondelete={'subcontract': 'set default'} selection_add=[('subcontract', 'Subcontracting RFQ')]
Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, vals)

New fields (2)
  • has_sale_order Boolean
    compute='_compute_sale_order_count' groups='sales_team.group_sale_salesman' args: 'Technical field for whether the purchase order has associated sale orders'
  • sale_order_count Integer
    compute='_compute_sale_order_count' groups='sales_team.group_sale_salesman' args: 'Number of Source Sale'
Public methods (2)
  • action_view_sale_orders(self)
  • button_cancel(self)

New fields (2)
  • sale_line_id Many2one → sale.order.line
    copy=False index='btree_not_null' string='Origin Sale Item' args: 'sale.order.line'
  • sale_order_id Many2one
    related='sale_line_id.order_id' string='Sale Order'
Public methods (0)

No public methods.

New fields (1)
  • purchase_order_count Integer
    compute='_compute_purchase_order_count' groups='purchase.group_purchase_user' args: 'Number of Purchase Order Generated'
Public methods (1)
  • action_view_purchase_orders(self)

New fields (2)
  • purchase_line_count Integer
    compute='_compute_purchase_count' args: 'Number of generated purchase items'
  • purchase_line_ids One2many → purchase.order.line
    help='Purchase line generated by this Sales item on order confirmation, or when the quantity was increased.' readonly=True string='Generated Purchase Lines' args: 'purchase.order.line', 'sale_line_id'
Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, vals)

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…