| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/19.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Supply Chain/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo S.A. |
| MAINTAINERS | |
| MAINTAINERS | Odoo S.A. |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Thibault Delavallée, Aaron Bohy, Arnold Moyaux, Julien Castiaux, William Henrotin, Tiffany Chang (tic), Gorash, Mathieu Duckerts-Antoine, Renaud Thiry, Victor Piryns (pivi), Djamel Touati, Dylan Kiss (dyki), Arnaud Sibille, Quentin Wolfs, kcv-odoo, nihp-odoo, Stéphane Diez, dhha-odoo, Mohammad Abdulmoneim (abdu), djameltouati, Michaël Mattiello, Corentin Heinix (cohe), chha-odoo, Krzysztof Magusiak (krma), rare-odoo, Lulu Grimalkin (lugr), Lancelot Semal, srap-odoo, saurabh, jodh-odoo, msho-odoo, Youssef |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:51:46 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - onboarding - product - bus - web_tour - html_editor - uom - analytic - portal - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_line_compare_tree |
purchase.order.line.compare.list | purchase.order.line | list | New |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | field | Inherits purchase.view_purchase_order_filter |
purchase_requisition_alternative_warning_form |
Alternative Warning | purchase.requisition.alternative.warning | form | New |
purchase_requisition_create_alternative_form |
Create Alternative | purchase.requisition.create.alternative | form | New |
report_purchaserequisition_document |
report_purchaserequisition_document | ir.ui.view | qweb | New |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form_purchase_requisition |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | xpath | Inherits purchase.res_config_settings_view_form_purchase |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.list | purchase.requisition | list | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
index='btree_not_null'
args: 'purchase.requisition.line'
No public methods.
alternative_po_ids
One2many → purchase.order
check_company=True
domain="[('id', '!=', id), ('state', 'in', ['draft', 'sent', 'to approve'])]"
help='Other potential purchase orders for purchasing products'
readonly=False
related='purchase_group_id.order_ids'
string='Alternative POs'
args: 'purchase.order'
purchase_group_id
Many2one → purchase.order.group
index='btree_not_null'
args: 'purchase.order.group'
requisition_id
Many2one → purchase.requisition
copy=False
index='btree_not_null'
string='Agreement'
args: 'purchase.requisition'
requisition_type
Selection
related='requisition_id.requisition_type'
action_compare_alternative_lines(self)
action_create_alternative(self)
button_confirm(self)
create(self, vals_list)
get_tender_best_lines(self)
write(self, vals)
order_ids
One2many → purchase.order
write(self, vals)
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
price_total_cc
Monetary
compute='_compute_price_total_cc'
currency_field='company_currency_id'
store=True
string='Company Subtotal'
action_choose(self)
action_clear_quantities(self)
active
Boolean
default=True
args: 'Active'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
compute='_compute_currency_id'
precompute=True
readonly=False
required=True
store=True
args: 'res.currency', 'Currency'
date_end
Date
string='End Date'
tracking=True
date_start
Date
string='Start Date'
tracking=True
description
Html
line_ids
One2many → purchase.requisition.line
copy=True
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default=<expr>
readonly=True
required=True
string='Agreement'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
product_id
Many2one → product.product
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
reference
Char
string='Reference'
requisition_type
Selection
default='blanket_order'
required=True
string='Agreement Type'
args: [('blanket_order', 'Blanket Order'), ('purchase_template', 'Purchase Template')]
state
Selection
copy=False
default='draft'
required=True
selection=[('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Closed'), ('cancel', 'Cancelled')]
string='Status'
tracking=True
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
check_company=True
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_confirm(self)
action_done(self)
action_draft(self)
create(self, vals_list)
unlink(self)
write(self, vals)
alternative_po_ids
Many2many → purchase.order
string='Alternative POs'
args: 'purchase.order', 'warning_purchase_order_alternative_rel'
po_ids
Many2many → purchase.order
string='POs to Confirm'
args: 'purchase.order', 'warning_purchase_order_rel'
action_cancel_alternatives(self)
action_keep_alternatives(self)
copy_products
Boolean
default=True
help='If this is checked, the product quantities of the original PO will be copied'
args: 'Copy Products'
origin_po_id
Many2one → purchase.order
help='The original PO that this alternative PO is being created for.'
args: 'purchase.order'
partner_ids
Many2many → res.partner
help='Choose a vendor for alternative PO'
required=True
string='Vendor'
args: 'res.partner'
purchase_warn_msg
Text
compute='_compute_purchase_warn_msg'
groups='purchase.group_warning_purchase'
args: 'Warning Messages'
action_create_alternative(self)
company_id
Many2one → res.company
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
compute='_compute_price_unit'
default=0.0
min_display_digits='Product Price'
readonly=False
store=True
string='Unit Price'
product_description_variants
Char
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit'
string='Quantity'
product_uom_id
Many2one → uom.uom
compute='_compute_product_uom_id'
precompute=True
readonly=False
store=True
args: 'uom.uom', 'Unit'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered'
requisition_id
Many2one → purchase.requisition
index=True
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals_list)
unlink(self)
write(self, vals)
group_purchase_alternatives
Boolean
implied_group='purchase_requisition.group_purchase_alternatives'
args: 'Purchase Alternatives'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/18.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Inventory/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Christophe Simonis, Aaron Bohy, Yannick Tivisse, Odoo Online, Arnold Moyaux, William Henrotin, Prakash Prajapati, Tiffany Chang (tic), Gorash, Louis Wicket (wil), Walid, Maximilien (malb), Djamel Touati, Pieter Claeys (clpi), Dylan Kiss (dyki), kir-odoo, Arnaud Sibille, omra-odoo, Mathieu (mcou), lase@odoo.com, Maryam Kia, Louis (wil), mano-odoo, dhha-odoo, Pierre Pulinckx (pipu), Corentin Heinix (cohe), rare-odoo |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:25:59 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - onboarding - product - bus - web_tour - html_editor - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_kpis_tree_inherit_purchase_requisition |
purchase.order.kpis.list.inherit.purchase.requisition | purchase.order | field | Inherits purchase.purchase_order_kpis_tree |
purchase_order_line_compare_tree |
purchase.order.line.compare.list | purchase.order.line | list | New |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
purchase_order_tree_inherit_purchase_requisition |
purchase.order.list.inherit.purchase.requisition | purchase.order | field | Inherits purchase.purchase_order_tree |
purchase_requisition_alternative_warning_form |
Alternative Warning | purchase.requisition.alternative.warning | form | New |
purchase_requisition_create_alternative_form |
Create Alternative | purchase.requisition.create.alternative | form | New |
report_purchaserequisition_document |
report_purchaserequisition_document | ir.ui.view | qweb | New |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form_purchase_requisition |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | xpath | Inherits purchase.res_config_settings_view_form_purchase |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.list | purchase.requisition | list | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
alternative_po_ids
One2many → purchase.order
check_company=True
domain="[('id', '!=', id), ('state', 'in', ['draft', 'sent', 'to approve'])]"
help='Other potential purchase orders for purchasing products'
readonly=False
related='purchase_group_id.order_ids'
string='Alternative POs'
args: 'purchase.order'
has_alternatives
Boolean
compute='_compute_has_alternatives'
help='Whether or not this purchase order is linked to another purchase order as an alternative.'
args: 'Has Alternatives'
purchase_group_id
Many2one → purchase.order.group
requisition_id
Many2one → purchase.requisition
copy=False
string='Agreement'
args: 'purchase.requisition'
requisition_type
Selection
related='requisition_id.requisition_type'
action_compare_alternative_lines(self)
action_create_alternative(self)
button_confirm(self)
create(self, vals_list)
get_tender_best_lines(self)
write(self, vals)
order_ids
One2many → purchase.order
write(self, vals)
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
price_total_cc
Monetary
compute='_compute_price_total_cc'
currency_field='company_currency_id'
store=True
string='Company Subtotal'
action_choose(self)
action_clear_quantities(self)
active
Boolean
default=True
args: 'Active'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
compute='_compute_currency_id'
precompute=True
readonly=False
required=True
store=True
args: 'res.currency', 'Currency'
date_end
Date
string='End Date'
tracking=True
date_start
Date
string='Start Date'
tracking=True
description
Html
line_ids
One2many → purchase.requisition.line
copy=True
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default=<expr>
readonly=True
required=True
string='Agreement'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
product_id
Many2one → product.product
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
reference
Char
string='Reference'
requisition_type
Selection
default='blanket_order'
required=True
string='Agreement Type'
args: [('blanket_order', 'Blanket Order'), ('purchase_template', 'Purchase Template')]
state
Selection
copy=False
default='draft'
required=True
selection=[('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Closed'), ('cancel', 'Cancelled')]
string='Status'
tracking=True
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
check_company=True
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_confirm(self)
action_done(self)
action_draft(self)
create(self, vals_list)
unlink(self)
write(self, vals)
alternative_po_ids
Many2many → purchase.order
string='Alternative POs'
args: 'purchase.order', 'warning_purchase_order_alternative_rel'
po_ids
Many2many → purchase.order
string='POs to Confirm'
args: 'purchase.order', 'warning_purchase_order_rel'
action_cancel_alternatives(self)
action_keep_alternatives(self)
copy_products
Boolean
default=True
help='If this is checked, the product quantities of the original PO will be copied'
args: 'Copy Products'
creation_blocked
Boolean
compute='_compute_purchase_warn'
groups='purchase.group_warning_purchase'
help='If the chosen vendor or if any of the products in the original PO have a blocking warning then we prevent creation of alternative PO. This is because normally these fields are cleared w/warning message within form view, but we cannot recreate that in this case.'
origin_po_id
Many2one → purchase.order
help='The original PO that this alternative PO is being created for.'
args: 'purchase.order'
partner_id
Many2one → res.partner
help='Choose a vendor for alternative PO'
required=True
string='Vendor'
args: 'res.partner'
purchase_warn_msg
Text
compute='_compute_purchase_warn'
groups='purchase.group_warning_purchase'
args: 'Warning Messages'
action_create_alternative(self)
company_id
Many2one → res.company
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
compute='_compute_price_unit'
default=0.0
min_display_digits='Product Price'
readonly=False
store=True
string='Unit Price'
product_description_variants
Char
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit of Measure'
string='Quantity'
product_uom_category_id
Many2one
related='product_id.uom_id.category_id'
product_uom_id
Many2one → uom.uom
compute='_compute_product_uom_id'
domain="[('category_id', '=', product_uom_category_id)]"
precompute=True
readonly=False
store=True
args: 'uom.uom', 'Product Unit of Measure'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals_list)
unlink(self)
write(self, vals)
group_purchase_alternatives
Boolean
implied_group='purchase_requisition.group_purchase_alternatives'
args: 'Purchase Alternatives'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/17.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Inventory/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Thibault Delavallée, Christophe Simonis, Aaron Bohy, Yannick Tivisse, Odoo Online, Jorge Pinna Puissant, Arnold Moyaux, Victor Feyens, William Henrotin, Julien Mougenot, svs-odoo, Samuel Degueldre, Touati Djamel (otd), Prakash Prajapati, Tiffany Chang (tic), Gorash, Pierre Paridans, Hubert Van de Walle (huvw), JF Aubert, gawa-odoo, niyasraphy, Louis Wicket (wil), Walid, clesgow, Djamel Touati, Valentin Vallaeys (vava), Dylan Kiss (dyki), Hansun (hale), FrancoisGe, Michael (mcm), stcc-odoo, Xavier Bol (xbo), Paweł Fertyk, Mahdi Cheikh Rouhou (macr), Mathieu (mcou), lase@odoo.com, Saran440, higo-odoo, Louis (wil) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:02:10 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - onboarding - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_kpis_tree_inherit_purchase_requisition |
purchase.order.kpis.tree.inherit.purchase.requisition | purchase.order | field | Inherits purchase.purchase_order_kpis_tree |
purchase_order_line_compare_tree |
purchase.order.line.compare.tree | purchase.order.line | tree | New |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
purchase_order_tree_inherit_purchase_requisition |
purchase.order.tree.inherit.purchase.requisition | purchase.order | field | Inherits purchase.purchase_order_tree |
purchase_requisition_alternative_warning_form |
Alternative Warning | purchase.requisition.alternative.warning | form | New |
purchase_requisition_create_alternative_form |
Create Alternative | purchase.requisition.create.alternative | form | New |
report_purchaserequisition_document |
report_purchaserequisition_document | ir.ui.view | qweb | New |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_search |
purchase.requisition.type.search | purchase.requisition.type | search | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
alternative_po_ids
One2many → purchase.order
check_company=True
domain="[('id', '!=', id), ('state', 'in', ['draft', 'sent', 'to approve'])]"
help='Other potential purchase orders for purchasing products'
readonly=False
related='purchase_group_id.order_ids'
string='Alternative POs'
args: 'purchase.order'
has_alternatives
Boolean
compute='_compute_has_alternatives'
help='Whether or not this purchase order is linked to another purchase order as an alternative.'
args: 'Has Alternatives'
is_quantity_copy
Selection
readonly=False
related='requisition_id.is_quantity_copy'
purchase_group_id
Many2one → purchase.order.group
requisition_id
Many2one → purchase.requisition
copy=False
string='Blanket Order'
args: 'purchase.requisition'
action_compare_alternative_lines(self)
action_create_alternative(self)
button_confirm(self)
create(self, vals_list)
get_tender_best_lines(self)
write(self, vals)
order_ids
One2many → purchase.order
write(self, vals)
No new fields.
Public methods (2)action_choose(self)
action_clear_quantities(self)
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
default=<expr>
required=True
args: 'res.currency', 'Currency'
date_end
Datetime
string='Agreement Deadline'
tracking=True
description
Html
is_quantity_copy
Selection
readonly=True
related='type_id.quantity_copy'
line_ids
One2many → purchase.requisition.line
copy=True
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default='New'
readonly=True
required=True
string='Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
tracking=True
origin
Char
string='Source Document'
product_id
Many2one → product.product
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
tracking=True
state
Selection
copy=False
default='draft'
required=True
tracking=True
args: PURCHASE_REQUISITION_STATES, 'Status'
state_blanket_order
Selection
compute='_set_state'
args: PURCHASE_REQUISITION_STATES
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
check_company=True
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
unlink(self)
alternative_po_ids
Many2many → purchase.order
string='Alternative POs'
args: 'purchase.order', 'warning_purchase_order_alternative_rel'
po_ids
Many2many → purchase.order
string='POs to Confirm'
args: 'purchase.order', 'warning_purchase_order_rel'
action_cancel_alternatives(self)
action_keep_alternatives(self)
copy_products
Boolean
default=True
help='If this is checked, the product quantities of the original PO will be copied'
args: 'Copy Products'
creation_blocked
Boolean
compute='_compute_purchase_warn'
groups='purchase.group_warning_purchase'
help='If the chosen vendor or if any of the products in the original PO have a blocking warning then we prevent creation of alternative PO. This is because normally these fields are cleared w/warning message within form view, but we cannot recreate that in this case.'
origin_po_id
Many2one → purchase.order
help='The original PO that this alternative PO is being created for.'
args: 'purchase.order'
partner_id
Many2one → res.partner
help='Choose a vendor for alternative PO'
required=True
string='Vendor'
args: 'res.partner'
purchase_warn_msg
Text
compute='_compute_purchase_warn'
groups='purchase.group_warning_purchase'
args: 'Warning Messages'
action_create_alternative(self)
company_id
Many2one → res.company
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
digits='Product Price'
string='Unit Price'
product_description_variants
Char
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit of Measure'
string='Quantity'
product_uom_category_id
Many2one
related='product_id.uom_id.category_id'
product_uom_id
Many2one → uom.uom
compute='_compute_product_uom_id'
domain="[('category_id', '=', product_uom_category_id)]"
precompute=True
readonly=False
store=True
args: 'uom.uom', 'Product Unit of Measure'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals_list)
create_supplier_info(self)
unlink(self)
write(self, vals)
active
Boolean
default=True
help='Set active to false to hide the Purchase Agreement Types without removing it.'
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ (non-exclusive): allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ (non-exclusive)')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/16.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Inventory/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Thibault Delavallée, Denis Ledoux, Christophe Simonis, Yannick Tivisse, Arnold Moyaux, Romeo Fragomeli, Victor Feyens, William Henrotin, Julien Mougenot, svs-odoo, Touati Djamel (otd), Tiffany Chang (tic), Gorash, roen-odoo, Hubert Van de Walle (huvw), MerlinGuillaume, william, gawa-odoo, niyasraphy, Louis Wicket (wil), Walid, clesgow, Djamel Touati, Hansun (hale), Sébastien Geelen (sge), Leloup Loïc (lole), stcc-odoo, Mahdi Cheikh Rouhou (macr), lase@odoo.com, Saran440, higo-odoo, Martin Trigaux (mat) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:40:54 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_kpis_tree_inherit_purchase_requisition |
purchase.order.kpis.tree.inherit.purchase.requisition | purchase.order | field | Inherits purchase.purchase_order_kpis_tree |
purchase_order_line_compare_tree |
purchase.order.line.compare.tree | purchase.order.line | tree | New |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
purchase_order_tree_inherit_purchase_requisition |
purchase.order.tree.inherit.purchase.requisition | purchase.order | field | Inherits purchase.purchase_order_tree |
purchase_requisition_alternative_warning_form |
Alternative Warning | purchase.requisition.alternative.warning | form | New |
purchase_requisition_create_alternative_form |
Create Alternative | purchase.requisition.create.alternative | form | New |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_search |
purchase.requisition.type.search | purchase.requisition.type | search | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
alternative_po_ids
One2many → purchase.order
check_company=True
domain="[('id', '!=', id), ('state', 'in', ['draft', 'sent', 'to approve'])]"
help='Other potential purchase orders for purchasing products'
readonly=False
related='purchase_group_id.order_ids'
string='Alternative POs'
args: 'purchase.order'
has_alternatives
Boolean
compute='_compute_has_alternatives'
help='Whether or not this purchase order is linked to another purchase order as an alternative.'
args: 'Has Alternatives'
is_quantity_copy
Selection
readonly=False
related='requisition_id.is_quantity_copy'
purchase_group_id
Many2one → purchase.order.group
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
action_compare_alternative_lines(self)
action_create_alternative(self)
button_confirm(self)
create(self, vals_list)
get_tender_best_lines(self)
write(self, vals)
order_ids
One2many → purchase.order
write(self, vals)
No new fields.
Public methods (2)action_choose(self)
action_clear_quantities(self)
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
default=<expr>
required=True
args: 'res.currency', 'Currency'
date_end
Datetime
string='Agreement Deadline'
tracking=True
description
Html
is_quantity_copy
Selection
readonly=True
related='type_id.quantity_copy'
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default='New'
readonly=True
required=True
string='Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
tracking=True
origin
Char
string='Source Document'
product_id
Many2one → product.product
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
tracking=True
state
Selection
copy=False
default='draft'
required=True
tracking=True
args: PURCHASE_REQUISITION_STATES, 'Status'
state_blanket_order
Selection
compute='_set_state'
args: PURCHASE_REQUISITION_STATES
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
unlink(self)
alternative_po_count
Integer
compute='_compute_alternative_po_count'
alternative_po_ids
Many2many → purchase.order
string='Alternative POs'
args: 'purchase.order', 'warning_purchase_order_alternative_rel'
po_ids
Many2many → purchase.order
string='POs to Confirm'
args: 'purchase.order', 'warning_purchase_order_rel'
action_cancel_alternatives(self)
action_keep_alternatives(self)
copy_products
Boolean
default=True
help='If this is checked, the product quantities of the original PO will be copied'
args: 'Copy Products'
creation_blocked
Boolean
compute='_compute_purchase_warn'
groups='purchase.group_warning_purchase'
help='If the chosen vendor or if any of the products in the original PO have a blocking warning then we prevent creation of alternative PO. This is because normally these fields are cleared w/warning message within form view, but we cannot recreate that in this case.'
origin_po_id
Many2one → purchase.order
help='The original PO that this alternative PO is being created for.'
args: 'purchase.order'
partner_id
Many2one → res.partner
help='Choose a vendor for alternative PO'
required=True
string='Vendor'
args: 'res.partner'
purchase_warn_msg
Text
compute='_compute_purchase_warn'
groups='purchase.group_warning_purchase'
args: 'Warning Messages'
action_create_alternative(self)
company_id
Many2one → res.company
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
digits='Product Price'
string='Unit Price'
product_description_variants
Char
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit of Measure'
string='Quantity'
product_uom_category_id
Many2one
related='product_id.uom_id.category_id'
product_uom_id
Many2one → uom.uom
domain="[('category_id', '=', product_uom_category_id)]"
string='Product Unit of Measure'
args: 'uom.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals_list)
create_supplier_info(self)
unlink(self)
write(self, vals)
active
Boolean
default=True
help='Set active to false to hide the Purchase Agreement Types without removing it.'
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ (non-exclusive): allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ (non-exclusive)')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/15.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Inventory/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Thibault Delavallée, Christophe Simonis, Goffin Simon, Arnold Moyaux, Julien Castiaux, Xavier-Do, Anh Thao Pham (pta), Touati Djamel (otd), Tiffany Chang (tic), Rémy Voet (ryv), roen-odoo, Aurelien van Delft (avd), Michael Mattiello (mcm), Louis Wicket (wil), Walid, clesgow, Djamel Touati, Hansun (hale), Sébastien Geelen (sge), newtratip, Saran440, higo-odoo |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:25:30 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | group | Inherits purchase.view_product_supplier_inherit |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | div | Inherits purchase.res_config_settings_view_form_purchase |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_search |
purchase.requisition.type.search | purchase.requisition.type | search | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
purchase_requisition
Selection
default='rfq'
help="Create a draft purchase order: Based on your product configuration, the system will create a draft purchase order.Propose a call for tender : If the 'purchase_requisition' module is installed and this option is selected, the system will create a draft call for tender."
string='Procurement'
args: [('rfq', 'Create a draft purchase order'), ('tenders', 'Propose a call for tenders')]
No public methods.
is_quantity_copy
Selection
readonly=False
related='requisition_id.is_quantity_copy'
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
button_confirm(self)
create(self, vals)
write(self, vals)
No new fields.
Public methods (0)No public methods.
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
default=<expr>
required=True
args: 'res.currency', 'Currency'
date_end
Datetime
string='Agreement Deadline'
tracking=True
description
Html
is_quantity_copy
Selection
readonly=True
related='type_id.quantity_copy'
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default='New'
readonly=True
required=True
string='Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
tracking=True
origin
Char
string='Source Document'
product_id
Many2one → product.product
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
tracking=True
state
Selection
copy=False
default='draft'
required=True
tracking=True
args: PURCHASE_REQUISITION_STATES, 'Status'
state_blanket_order
Selection
compute='_set_state'
args: PURCHASE_REQUISITION_STATES
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
unlink(self)
account_analytic_id
Many2one → account.analytic.account
compute='_compute_account_analytic_id'
readonly=False
store=True
string='Analytic Account'
args: 'account.analytic.account'
analytic_tag_ids
Many2many → account.analytic.tag
compute='_compute_analytic_tag_ids'
readonly=False
store=True
string='Analytic Tags'
args: 'account.analytic.tag'
company_id
Many2one → res.company
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
digits='Product Price'
string='Unit Price'
product_description_variants
Char
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit of Measure'
string='Quantity'
product_uom_category_id
Many2one
related='product_id.uom_id.category_id'
product_uom_id
Many2one → uom.uom
domain="[('category_id', '=', product_uom_category_id)]"
string='Product Unit of Measure'
args: 'uom.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals)
create_supplier_info(self)
unlink(self)
write(self, vals)
active
Boolean
default=True
help='Set active to false to hide the Purchase Agreement Types without removing it.'
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ (non-exclusive): allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ (non-exclusive)')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/14.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Inventory/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Olivier Dony, Thibault Delavallée, Denis Ledoux, Christophe Simonis, Xavier Morel, Goffin Simon, Simon Lejeune, Aaron Bohy, Barad Mahendra, Yannick Tivisse, Arnold Moyaux, Xavier-Do, jerome hanke (jhk), Victor Feyens, William Henrotin, Sébastien Theys, fw-bot, Anh Thao Pham (pta), Touati Djamel (otd), Swapnesh Shah, Pratima Gupta, roen-odoo, Aurelien van Delft (avd), Hansun (hale) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:14:31 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | group | Inherits purchase.view_product_supplier_inherit |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | div | Inherits purchase.res_config_settings_view_form_purchase |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
readonly=False
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
purchase_requisition
Selection
default='rfq'
help="Create a draft purchase order: Based on your product configuration, the system will create a draft purchase order.Propose a call for tender : If the 'purchase_requisition' module is installed and this option is selected, the system will create a draft call for tender."
string='Procurement'
args: [('rfq', 'Create a draft purchase order'), ('tenders', 'Propose a call for tenders')]
No public methods.
is_quantity_copy
Selection
readonly=False
related='requisition_id.is_quantity_copy'
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
button_confirm(self)
create(self, vals)
write(self, vals)
No new fields.
Public methods (0)No public methods.
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
default=<expr>
required=True
args: 'res.currency', 'Currency'
date_end
Datetime
string='Agreement Deadline'
tracking=True
description
Text
is_quantity_copy
Selection
readonly=True
related='type_id.quantity_copy'
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default='New'
readonly=True
required=True
string='Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
tracking=True
origin
Char
string='Source Document'
product_id
Many2one → product.product
readonly=False
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
tracking=True
state
Selection
copy=False
default='draft'
required=True
tracking=True
args: PURCHASE_REQUISITION_STATES, 'Status'
state_blanket_order
Selection
compute='_set_state'
args: PURCHASE_REQUISITION_STATES
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
unlink(self)
account_analytic_id
Many2one → account.analytic.account
compute='_compute_account_analytic_id'
readonly=False
store=True
string='Analytic Account'
args: 'account.analytic.account'
analytic_tag_ids
Many2many → account.analytic.tag
compute='_compute_analytic_tag_ids'
readonly=False
store=True
string='Analytic Tags'
args: 'account.analytic.tag'
company_id
Many2one → res.company
default=<expr>
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
digits='Product Price'
string='Unit Price'
product_description_variants
Char
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit of Measure'
string='Quantity'
product_uom_category_id
Many2one
related='product_id.uom_id.category_id'
product_uom_id
Many2one → uom.uom
domain="[('category_id', '=', product_uom_category_id)]"
string='Product Unit of Measure'
args: 'uom.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals)
create_supplier_info(self)
unlink(self)
write(self, vals)
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ (non-exclusive): allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ (non-exclusive)')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/13.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Operations/Purchase |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Thibault Delavallée, Denis Ledoux, Christophe Simonis, David Monjoie, Xavier Morel, Goffin Simon, Simon Lejeune, Nicolas Martinelli, GitHub, Damien Bouvy, Yannick Tivisse, Martin Geubelle, Odoo Online, jem-odoo, Jorge Pinna Puissant, Alexandre Kühn, Arnold Moyaux, Adrian Torres, XavierDo, Xavier-Do, jerome hanke (jhk), Victor Feyens, William Henrotin, Sébastien Theys, fw-bot, Anh Thao Pham (pta), svs-odoo, Prakash Prajapati, Swapnesh Shah, Jinal Patel, roen-odoo, asa-odoo, Haresh Shyara |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:06:44 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | group | Inherits purchase.view_product_supplier_inherit |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | div | Inherits purchase.res_config_settings_view_form_purchase |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
readonly=False
related='purchase_requisition_line_id.requisition_id'
string='Agreement'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
purchase_requisition
Selection
default='rfq'
help="Create a draft purchase order: Based on your product configuration, the system will create a draft purchase order.Propose a call for tender : If the 'purchase_requisition' module is installed and this option is selected, the system will create a draft call for tender."
string='Procurement'
args: [('rfq', 'Create a draft purchase order'), ('tenders', 'Propose a call for tenders')]
No public methods.
is_quantity_copy
Selection
readonly=False
related='requisition_id.is_quantity_copy'
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
button_confirm(self)
create(self, vals)
write(self, vals)
No new fields.
Public methods (0)No public methods.
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
default=<expr>
required=True
args: 'res.currency', 'Currency'
date_end
Datetime
string='Agreement Deadline'
tracking=True
description
Text
is_quantity_copy
Selection
readonly=True
related='type_id.quantity_copy'
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default='New'
readonly=True
required=True
string='Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
tracking=True
origin
Char
string='Source Document'
product_id
Many2one → product.product
readonly=False
related='line_ids.product_id'
string='Product'
args: 'product.product'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
tracking=True
state
Selection
copy=False
default='draft'
required=True
tracking=True
args: PURCHASE_REQUISITION_STATES, 'Status'
state_blanket_order
Selection
compute='_set_state'
args: PURCHASE_REQUISITION_STATES
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
check_company=True
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]"
string='Vendor'
args: 'res.partner'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
unlink(self)
account_analytic_id
Many2one → account.analytic.account
string='Analytic Account'
args: 'account.analytic.account'
analytic_tag_ids
Many2many → account.analytic.tag
string='Analytic Tags'
args: 'account.analytic.tag'
company_id
Many2one → res.company
default=<expr>
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
digits='Product Price'
string='Unit Price'
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits='Product Unit of Measure'
string='Quantity'
product_uom_category_id
Many2one
related='product_id.uom_id.category_id'
product_uom_id
Many2one → uom.uom
domain="[('category_id', '=', product_uom_category_id)]"
string='Product Unit of Measure'
args: 'uom.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals)
create_supplier_info(self)
unlink(self)
write(self, vals)
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ: allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/12.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchases |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Fabien Pinckaers, Thibault Delavallée, Denis Ledoux, Christophe Simonis, Xavier Morel, Goffin Simon, Simon Lejeune, Nicolas Martinelli, qdp-odoo, Géry Debongnie, GitHub, Yannick Tivisse, Alexandre Kühn, qsm-odoo, Pierre Masereel, jem-odoo, Arnold Moyaux, Adrian Torres, XavierDo, Xavier-Do, William Henrotin, alt-odoo, oco-odoo, Anh Thao Pham (pta) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:57:02 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase_stock - stock_account - stock - product - base - decimal_precision - base_setup - web - bus - web_tour - uom - barcodes - account - analytic - portal - http_routing - digest - purchase |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_supplierinfo_tree_view_inherit |
product.template.product.form.inherit | product.supplierinfo | xpath | Inherits product.product_supplierinfo_tree_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | group | Inherits purchase.view_product_supplier_inherit |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | div | Inherits purchase_stock.res_config_settings_view_form_purchase |
supplier_info_form_inherit |
product.supplierinfo.requisition.view | product.supplierinfo | field | Inherits product.product_supplierinfo_form_view |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
purchase_requisition_id
Many2one → purchase.requisition
readonly=False
related='purchase_requisition_line_id.requisition_id'
string='Blanket order'
args: 'purchase.requisition'
purchase_requisition_line_id
Many2one → purchase.requisition.line
No public methods.
purchase_requisition
Selection
default='rfq'
help="Create a draft purchase order: Based on your product configuration, the system will create a draft purchase order.Propose a call for tender : If the 'purchase_requisition' module is installed and this option is selected, the system will create a draft call for tender."
string='Procurement'
args: [('rfq', 'Create a draft purchase order'), ('tenders', 'Propose a call for tenders')]
No public methods.
is_quantity_copy
Selection
readonly=False
related='requisition_id.is_quantity_copy'
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
button_approve(self, force=False)
create(self, vals)
write(self, vals)
No new fields.
Public methods (0)No public methods.
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
currency_id
Many2one → res.currency
default=<expr>
required=True
args: 'res.currency', 'Currency'
date_end
Datetime
string='Agreement Deadline'
track_visibility='onchange'
description
Text
is_quantity_copy
Selection
readonly=True
related='type_id.quantity_copy'
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default='New'
readonly=True
required=True
string='Agreement Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
track_visibility='onchange'
origin
Char
string='Source Document'
picking_type_id
Many2one → stock.picking.type
default=_get_picking_in
required=True
args: 'stock.picking.type', 'Operation Type'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
track_visibility='onchange'
state
Selection
copy=False
default='draft'
required=True
track_visibility='onchange'
args: PURCHASE_REQUISITION_STATES, 'Status'
state_blanket_order
Selection
compute='_set_state'
args: PURCHASE_REQUISITION_STATES
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
default=<expr>
string='Purchase Representative'
args: 'res.users'
vendor_id
Many2one → res.partner
string='Vendor'
args: 'res.partner'
warehouse_id
Many2one → stock.warehouse
string='Warehouse'
args: 'stock.warehouse'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
unlink(self)
account_analytic_id
Many2one → account.analytic.account
string='Analytic Account'
args: 'account.analytic.account'
analytic_tag_ids
Many2many → account.analytic.tag
string='Analytic Tags'
args: 'account.analytic.tag'
company_id
Many2one → res.company
default=<expr>
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
move_dest_id
Many2one → stock.move
price_unit
Float
digits=dp.get_precision('Product Price')
string='Unit Price'
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits=dp.get_precision('Product Unit of Measure')
string='Quantity'
product_uom_id
Many2one → uom.uom
string='Product Unit of Measure'
args: 'uom.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
required=True
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
supplier_info_ids
One2many → product.supplierinfo
create(self, vals)
create_supplier_info(self)
unlink(self)
write(self, vals)
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ: allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
requistion_line_ids
One2many → purchase.requisition.line
No public methods.
requisition_line_ids
One2many → purchase.requisition.line
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/11.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchases |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Olivier Dony, Thibault Delavallée, Christophe Simonis, Xavier Morel, Goffin Simon, Simon Lejeune, Jérome Maes, GitHub, David Arnold, Yannick Tivisse, qsm-odoo, Martin Geubelle, Odoo Online, Laurent Smet, Adrien Dieudonne, amoyaux, Arnold Moyaux |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/purchase |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:53:44 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - stock_account - stock - product - base - decimal_precision - base_setup - web - bus - web_tour - barcodes - web_planner - account - analytic - portal - http_routing |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Agreements. =========================================================== Manage calls for tenders and blanket orders. Calls for tenders are used to get competing offers from different vendors and select the best ones. Blanket orders are agreements you have with vendors to benefit from a predetermined pricing. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_form_view_inherit |
product.template.form.inherit | product.template | group | Inherits purchase.view_product_supplier_inherit |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.purchase.requisition | res.config.settings | div | Inherits purchase.res_config_settings_view_form_purchase |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_kanban |
purchase.requisition.kanban | purchase.requisition | kanban | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_kanban |
purchase.requisition.type.kanban | purchase.requisition.type | kanban | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
purchase_requisition
Selection
default='rfq'
string='Procurement'
args: [('rfq', 'Create a draft purchase order'), ('tenders', 'Propose a call for tenders')]
No public methods.
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
button_approve(self, force=False)
create(self, vals)
write(self, vals)
No new fields.
Public methods (0)No public methods.
account_analytic_id
Many2one → account.analytic.account
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
date_end
Datetime
string='Agreement Deadline'
description
Text
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default=<expr>
required=True
string='Agreement Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
origin
Char
string='Source Document'
picking_type_id
Many2one → stock.picking.type
default=_get_picking_in
required=True
args: 'stock.picking.type', 'Operation Type'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
state
Selection
copy=False
default='draft'
required=True
track_visibility='onchange'
args: [('draft', 'Draft'), ('in_progress', 'Confirmed'), ('open', 'Bid Selection'), ('done', 'Done'), ('cancel', 'Cancelled')], 'Status'
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
default=<expr>
string='Responsible'
args: 'res.users'
vendor_id
Many2one → res.partner
string='Vendor'
args: 'res.partner'
warehouse_id
Many2one → stock.warehouse
string='Warehouse'
args: 'stock.warehouse'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
account_analytic_id
Many2one → account.analytic.account
string='Analytic Account'
args: 'account.analytic.account'
company_id
Many2one → res.company
default=<expr>
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
move_dest_id
Many2one → stock.move
price_unit
Float
digits=dp.get_precision('Product Price')
string='Unit Price'
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits=dp.get_precision('Product Unit of Measure')
string='Quantity'
product_uom_id
Many2one → product.uom
string='Product Unit of Measure'
args: 'product.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
No public methods.
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ: allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
requistion_line_ids
One2many → purchase.requisition.line
No public methods.
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/10.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchases |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Olivier Dony, Thibault Delavallée, Denis Ledoux, Christophe Simonis, Goffin Simon, Nicolas Martinelli, Julien Legros, Richard Mathot, qdp-odoo, Yannick Tivisse, Denis Vermylen (dve), Tanguy Charlier |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/purchase |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:50:49 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - stock_account - stock - product - base - decimal_precision - base_setup - web_kanban - web - bus - web_tour - report - procurement - barcodes - web_planner - account - analytic |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Requisition. =========================================================== When a purchase order is created, you now have the opportunity to save the related requisition. This new object will regroup and will allow you to easily keep track and order all your purchase orders. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
procurement_normal_form_view_inherit |
procurement.form.inherit | procurement.order | xpath | Inherits procurement.procurement_form_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | field | Inherits stock.view_template_property_form |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
view_purchase_requisition_type_form |
purchase.requisition.type.form | purchase.requisition.type | form | New |
view_purchase_requisition_type_tree |
purchase.requisition.type.tree | purchase.requisition.type | tree | New |
requisition_id
Many2one → purchase.requisition
string='Latest Requisition'
args: 'purchase.requisition'
make_po(self)
purchase_requisition
Selection
default='rfq'
string='Procurement'
args: [('rfq', 'Create a draft purchase order'), ('tenders', 'Propose a call for tenders')]
No public methods.
requisition_id
Many2one → purchase.requisition
copy=False
string='Purchase Agreement'
args: 'purchase.requisition'
button_confirm(self)
create(self, vals)
write(self, vals)
No new fields.
Public methods (0)No public methods.
account_analytic_id
Many2one → account.analytic.account
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
date_end
Datetime
string='Agreement Deadline'
description
Text
line_ids
One2many → purchase.requisition.line
copy=True
states={'done': [('readonly', True)]}
string='Products to Purchase'
args: 'purchase.requisition.line', 'requisition_id'
name
Char
copy=False
default=<expr>
required=True
string='Agreement Reference'
order_count
Integer
compute='_compute_orders_number'
string='Number of Orders'
ordering_date
Date
string='Ordering Date'
origin
Char
string='Source Document'
picking_type_id
Many2one → stock.picking.type
default=_get_picking_in
required=True
args: 'stock.picking.type', 'Picking Type'
procurement_id
Many2one → procurement.order
copy=False
ondelete='set null'
string='Procurement'
args: 'procurement.order'
purchase_ids
One2many → purchase.order
states={'done': [('readonly', True)]}
string='Purchase Orders'
args: 'purchase.order', 'requisition_id'
schedule_date
Date
help='The expected and scheduled delivery date where all the products are received'
index=True
string='Delivery Date'
state
Selection
copy=False
default='draft'
required=True
track_visibility='onchange'
args: [('draft', 'Draft'), ('in_progress', 'Confirmed'), ('open', 'Bid Selection'), ('done', 'Done'), ('cancel', 'Cancelled')], 'Status'
type_id
Many2one → purchase.requisition.type
default=_get_type_id
required=True
string='Agreement Type'
args: 'purchase.requisition.type'
user_id
Many2one → res.users
default=<expr>
string='Responsible'
args: 'res.users'
vendor_id
Many2one → res.partner
string='Vendor'
args: 'res.partner'
warehouse_id
Many2one → stock.warehouse
string='Warehouse'
args: 'stock.warehouse'
action_cancel(self)
action_done(self)
action_draft(self)
action_in_progress(self)
action_open(self)
account_analytic_id
Many2one → account.analytic.account
string='Analytic Account'
args: 'account.analytic.account'
company_id
Many2one → res.company
default=<expr>
readonly=True
related='requisition_id.company_id'
store=True
string='Company'
args: 'res.company'
price_unit
Float
digits=dp.get_precision('Product Price')
string='Unit Price'
product_id
Many2one → product.product
domain=[('purchase_ok', '=', True)]
required=True
string='Product'
args: 'product.product'
product_qty
Float
digits=dp.get_precision('Product Unit of Measure')
string='Quantity'
product_uom_id
Many2one → product.uom
string='Product Unit of Measure'
args: 'product.uom'
qty_ordered
Float
compute='_compute_ordered_qty'
string='Ordered Quantities'
requisition_id
Many2one → purchase.requisition
ondelete='cascade'
string='Purchase Agreement'
args: 'purchase.requisition'
schedule_date
Date
string='Scheduled Date'
No public methods.
exclusive
Selection
default='multiple'
help='Select only one RFQ (exclusive): when a purchase order is confirmed, cancel the remaining purchase order.\n\n Select multiple RFQ: allows multiple purchase orders. On confirmation of a purchase order it does not cancel the remaining orders'
required=True
string='Agreement Selection Type'
args: [('exclusive', 'Select only one RFQ (exclusive)'), ('multiple', 'Select multiple RFQ')]
line_copy
Selection
default='copy'
required=True
string='Lines'
args: [('copy', 'Use lines of agreement'), ('none', 'Do not create RfQ lines automatically')]
name
Char
required=True
string='Agreement Type'
translate=True
quantity_copy
Selection
default='none'
required=True
string='Quantities'
args: [('copy', 'Use quantities of agreement'), ('none', 'Set quantities manually')]
sequence
Integer
default=1
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/9.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchases |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Christophe Matthieu, Martin Trigaux, Fabien Pinckaers, Olivier Dony, Thibault Delavallée, Josse Colpaert, Denis Ledoux, Christophe Simonis, Cedric Snauwaert, Nicolas Martinelli, Nicolas Lempereur, Jérome Maes, Richard Mathot, qdp-odoo, Géry Debongnie, Aaron Bohy, Yannick Tivisse, qsm-odoo |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/purchase |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:48:31 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - stock_account - stock - product - base - decimal_precision - base_setup - web_kanban - web - bus - report - procurement - barcodes - web_planner - account - analytic - web_tip |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Requisition. =========================================================== When a purchase order is created, you now have the opportunity to save the related requisition. This new object will regroup and will allow you to easily keep track and order all your purchase orders. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
purchase requisition assets | ir.ui.view | qweb | Inherits web.assets_backend |
procurement_normal_form_view_inherit |
procurement.form.inherit | procurement.order | xpath | Inherits procurement.procurement_form_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | field | Inherits stock.view_template_property_form |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_line_tree_tender |
purchase.order.line.tree.tender | purchase.order.line | tree | New |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
view_bid_line_qty |
Quantity to Purchase | bid.line.qty | form | New |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_partner |
Choose Vendor | purchase.requisition.partner | form | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
No models found for this module.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/8.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchase Management |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | OpenERP SA |
| MAINTAINERS | |
| MAINTAINERS | OpenERP SA |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Randhir Mayatra (OpenERP), Odoo Translation Bot, Christophe Matthieu, Martin Trigaux, Ajay Chauhan (OpenERP), Foram Katharotiya (OpenERP), Fabien Pinckaers, Antony Lesuisse, Olivier Dony, Thibault Delavallée, Vo Minh Thu, Josse Colpaert, Arnaud Pineux, Launchpad Translations on behalf of openerp, Quentin (OpenERP), Denis Ledoux, Fabien Meghazi, Christophe Simonis, Xavier Morel, Goffin Simon, Bhumi Thakkar (Open ERP), Cedric Snauwaert, Simon Lejeune, Guewen Baconnier, Nicolas Lempereur, Anand Patel (OpenERP), Richard Mathot, qdp-odoo, Géry Debongnie, Darshan Kalola (OpenERP Trainee), Aaron Bohy, Bharat R. Devnani (OpenERP), Richard Mathot (OpenERP), ged-odoo, openerp-sle, sgo@tinyerp.com, Rakesh Sindhav (OpenERP), Jacques-Etienne Baudoux |
| WEBSITE | |
| WEBSITE | https://www.odoo.com/page/purchase |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:45:40 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - stock_account - stock - product - base - decimal_precision - base_setup - web_kanban - web - report - procurement - board - web_kanban_gauge - web_kanban_sparkline - account - analytic - edi - email_template |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Requisition. =========================================================== When a purchase order is created, you now have the opportunity to save the related requisition. This new object will regroup and will allow you to easily keep track and order all your purchase orders. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
purchase requisition assets | ir.ui.view | qweb | Inherits web.assets_backend |
procurement_normal_form_view_inherit |
procurement.form.inherit | procurement.order | xpath | Inherits procurement.procurement_form_view |
product_template_form_view_inherit |
product.template.form.inherit | product.template | field | Inherits stock.view_template_property_form |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_line_tree_tender |
purchase.order.line.tree.tender | purchase.order.line | tree | New |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
report_purchaserequisitions |
report_purchaserequisitions | ir.ui.view | qweb | New |
view_bid_line_qty |
Quantity to Purchase | bid.line.qty | form | New |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_partner |
Choose Supplier | purchase.requisition.partner | form | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
No models found for this module.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/7.0/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchase Management |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | OpenERP SA |
| MAINTAINERS | |
| MAINTAINERS | OpenERP SA |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Jagdish Panchal (Open ERP), Twinkle Christian (OpenERP), Cecile Tonglet, Rucha (Open ERP), Atul Patel (OpenERP), Jalpesh Patel (OpenERP), Randhir Mayatra (OpenERP), Stephane Wirtel, Odoo Translation Bot, Turkesh Patel (Open ERP), Numerigraphe - Lionel Sausin, Christophe Matthieu, DBR (OpenERP), Antonin Bourguignon, Martin Trigaux, Ajay Chauhan (OpenERP), Foram Katharotiya (OpenERP), Bhumika (OpenERP), Purnendu Singh (OpenERP), Saurang Suthar (OpenERP), Fabien Pinckaers, Antony Lesuisse, Bharat Devnani (OpenERP), Saurang Suthar, Olivier Dony, Twinkle (OpenERP), Divyesh Makwana (Open ERP), Thibault Delavallée, Vo Minh Thu, Hardik, pso (OpenERP), Sbh (Openerp), Amit Patel (OpenERP), Launchpad Translations on behalf of openerp, vta vta@openerp.com, Quentin (OpenERP), Kuldeep Joshi (OpenERP), Nimesh (Open ERP), Denis Ledoux, Mayur Maheshwari (OpenERP), Jigar Amin - OpenERP, Sanjay Gohel (Open ERP), Alexis de Lattre, Christophe Simonis, Dharti Ratani (OpenERP), Frédéric van der Essen, Phil Frost, Dharti Ratani (Open ERP) |
| WEBSITE | |
| WEBSITE | http://www.openerp.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:43:11 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - stock - product - base - process - web - decimal_precision - base_setup - web_kanban - account - analytic - board - edi - email_template - procurement |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Requisition. =========================================================== When a purchase order is created, you now have the opportunity to save the related requisition. This new object will regroup and will allow you to easily keep track and order all your purchase orders. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
procurement_normal_form_view_inherit |
procurement.form.inherit | procurement.order | xpath | Inherits procurement.procurement_form_view |
product_normal_form_view_inherit |
product.form.inherit | product.product | field | Inherits procurement.product_form_view_procurement_button |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_partner |
Purchase Requisition | purchase.requisition.partner | form | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
No models found for this module.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/6.1/purchase_requisition |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Purchase Management |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | OpenERP SA |
| MAINTAINERS | |
| MAINTAINERS | OpenERP SA |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Rucha (Open ERP), Stephane Wirtel, DBR (OpenERP), Harry (OpenERP), Fabien Pinckaers, Antony Lesuisse, Olivier Dony, Vo Minh Thu, Launchpad Translations on behalf of openerp, Quentin (OpenERP), Kuldeep Joshi (OpenERP), Mayur Maheshwari (OpenERP), vro, niv-openerp, Xavier ALT, Xavier Morel, Carlos Vásquez, Bogdan Stanciu, ksa (Open ERP), Els Van Vossel, Israel Fermin Montilla, Hardik Ansodariy (OpenERP), rch-openerp, aag (OpenERP), ron@tinyerp.com, Kirti Savalia (OpenERP), Atik Agewan (OpenERP) |
| WEBSITE | |
| WEBSITE | http://www.openerp.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-05 23:41:35 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - purchase - stock - product - base - process - decimal_precision - account - base_setup - analytic - board - edi - email_template - base_tools - procurement - mrp - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module allows you to manage your Purchase Requisition. =========================================================== When a purchase order is created, you now have the opportunity to save the related requisition. This new object will regroup and will allow you to easily keep track and order all your purchase orders. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
procurement_normal_form_view_inherit |
procurement.form.inherit | procurement.order | xpath | Inherits procurement.procurement_form_view |
product_normal_form_view_inherit |
product.form.inherit | product.product | field | Inherits product.product_normal_form_view |
purchase_order_form_inherit |
purchase.order.form.inherit | purchase.order | field | Inherits purchase.purchase_order_form |
purchase_order_search_inherit |
purchase.order.list.select.inherit | purchase.order | xpath | Inherits purchase.view_purchase_order_filter |
request_for_quotation_inherit |
request.for.quotation.select.inherit | purchase.order | xpath | Inherits purchase.view_request_for_quotation_filter |
view_purchase_requisition_filter |
purchase.requisition.list.select | purchase.requisition | search | New |
view_purchase_requisition_form |
purchase.requisition.form | purchase.requisition | form | New |
view_purchase_requisition_partner |
Purchase Requisition | purchase.requisition.partner | form | New |
view_purchase_requisition_tree |
purchase.requisition.tree | purchase.requisition | tree | New |
No models found for this module.