Files
odoo_source/addons/mrp/process/procurement_process.xml
T

332 lines
21 KiB
XML
Executable File

<?xml version="1.0" ?>
<openerp>
<data>
<!--
Process
-->
<record id="process_process_procurementworkflow0" model="process.process">
<field eval="&quot;&quot;&quot;Procurement Workflow&quot;&quot;&quot;" name="name"/>
<field eval="1" name="active"/>
</record>
<!--
Process Node
-->
<record id="process_node_productionorder0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_production_action"/>
<field name="model_id" ref="mrp.model_mrp_production"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Procurement for raw materials.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Production Order&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'picking_except', 'confirmed', 'ready', 'in_production', 'cancel', 'done')&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_minimumstockrule0" model="process.node">
<field name="menu_id" ref="mrp.menu_action_orderpoint_form"/>
<field name="model_id" ref="mrp.model_stock_warehouse_orderpoint"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Procurement is created if the product quantity is lower than the minimum limit.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Minimum Stock Rule&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_procureproducts0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Central document to procure products&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Procure Products&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_stockableproduct0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;For stockable and consumable&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Stockable Product&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_serviceproduct0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;If Product type is service&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Service Product&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_maketostock0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;The system waits for requested products in stock.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Make to Stock&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_stockablestock0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Wait for available products for reservation&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Stockable Stock&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_stockableorder0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;If procurement is make to order&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Stockable Order&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_maketostock1" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;If Procurement is make to stock&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Make to stock&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_requestforquotation1" model="process.node">
<field name="menu_id" ref="purchase.menu_purchase_order_draft"/>
<field name="model_id" ref="purchase.model_purchase_order"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;A Request for Quotation is created and sent to the supplier.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Request For Quotation&quot;&quot;&quot;" name="name"/>
<field name="subflow_id" ref="purchase.process_process_purchaseworkflow0"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_productionorder1" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_production_action"/>
<field name="model_id" ref="mrp.model_mrp_production"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Production orders are created for the product manufacturing.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Production Order&quot;&quot;&quot;" name="name"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state=='confirmed'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_requestforquotation2" model="process.node">
<field name="menu_id" ref="purchase.menu_purchase_form_action"/>
<field name="model_id" ref="purchase.model_purchase_order"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;A purchase order is created for a sub-contracting demand.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Request For Quotation&quot;&quot;&quot;" name="name"/>
<field name="subflow_id" ref="purchase.process_process_purchaseworkflow0"/>
<field name="process_id" ref="process_process_procurementworkflow0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_purchaseprocure0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
<field name="model_id" ref="mrp.model_mrp_procurement"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Procurements&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Procurement orders&quot;&quot;&quot;" name="note"/>
<field name="subflow_id" ref="process_process_procurementworkflow0"/>
<field name="process_id" ref="purchase.process_process_purchaseworkflow0"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_productminimumstockrule0" model="process.node">
<field name="menu_id" ref="mrp.menu_action_orderpoint_form"/>
<field name="model_id" ref="mrp.model_stock_warehouse_orderpoint"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Minimum stock rule&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Create minimum stock rules&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="product.process_process_productworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_routing0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_routing_action"/>
<field name="model_id" ref="mrp.model_mrp_routing"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Routing&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Define a routing to describe the manufacturing steps.&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="product.process_process_productworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<record id="process_node_billofmaterial0" model="process.node">
<field name="menu_id" ref="mrp.menu_mrp_bom_form_action"/>
<field name="model_id" ref="mrp.model_mrp_bom"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Bill of Materials&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Define the product structure, with sub-products and/or components.&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="product.process_process_productworkflow0"/>
<field eval="0" name="flow_start"/>
</record>
<!--
Process Transition
-->
<record id="process_transition_productionprocureproducts0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Production Procure Products&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;When any procuere products, it comes into the prpcurement orders&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_procureproducts0"/>
<field model="process.node" name="source_node_id" ref="process_node_productionorder0"/>
</record>
<record id="process_transition_minimumstockprocure0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Minimum Stock Procure&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;From minimum stock rules, it goes for procure product.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_procureproducts0"/>
<field model="process.node" name="source_node_id" ref="process_node_minimumstockrule0"/>
</record>
<record id="process_transition_procurestockableproduct0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Procure Stockable Product&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;if Product type is Stockable in procurement order&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_stockableproduct0"/>
<field model="process.node" name="source_node_id" ref="process_node_procureproducts0"/>
</record>
<record id="process_transition_procureserviceproduct0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Procure Service Product&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;In procurement order, if product type is service&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_serviceproduct0"/>
<field model="process.node" name="source_node_id" ref="process_node_procureproducts0"/>
</record>
<record id="process_transition_stockablemaketostock0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Stockable Make to Stock&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;If Product type is Stockable and procure method is make to stock&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_maketostock0"/>
<field model="process.node" name="source_node_id" ref="process_node_stockableproduct0"/>
</record>
<record id="process_transition_stockableproductstock0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Stockable Product Stock&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Product type is Stockable and procure method is make to stock&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_stockablestock0"/>
<field model="process.node" name="source_node_id" ref="process_node_stockableproduct0"/>
</record>
<record id="process_transition_serivcestockableorder0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Serivce Stockable Order&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;If product type is service and procure method is Make to order&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_stockableorder0"/>
<field model="process.node" name="source_node_id" ref="process_node_serviceproduct0"/>
</record>
<record id="process_transition_servicemaketostock0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Service Make to Stock&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;If Product type is service and procure method is Make to stock&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_maketostock1"/>
<field model="process.node" name="source_node_id" ref="process_node_serviceproduct0"/>
</record>
<record id="process_transition_stockablerequest0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Stockable Request&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;If Product type is Stockable and procure method is make to stock&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_requestforquotation1"/>
<field model="process.node" name="source_node_id" ref="process_node_stockablestock0"/>
</record>
<record id="process_transition_stockableproductionorder0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Stockable Production Order&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;If Procure method is Make to order and supply method is produce&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_productionorder1"/>
<field model="process.node" name="source_node_id" ref="process_node_stockablestock0"/>
</record>
<record id="process_transition_stockableorderrequest0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Stockable Order Request&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;If Procure method is Make to order and supply method is buy&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_requestforquotation2"/>
<field model="process.node" name="source_node_id" ref="process_node_stockableorder0"/>
</record>
<record id="process_transition_purchaseprocure0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Procurement Purchase&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Procurement convert into the draft purchase order.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="purchase.process_node_draftpurchaseorder0"/>
<field model="process.node" name="source_node_id" ref="process_node_purchaseprocure0"/>
</record>
<record id="process_transition_producttostockrules0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Product to stock rules&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;you can see the minimum stock rules from product&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_productminimumstockrule0"/>
<field model="process.node" name="source_node_id" ref="product.process_node_product0"/>
</record>
<record id="process_transition_billofmaterialrouting0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Material routing&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;An entry is being made from billing material to routing.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_routing0"/>
<field model="process.node" name="source_node_id" ref="process_node_billofmaterial0"/>
</record>
<record id="process_transition_bom0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;BOM&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;You can see its bill of material which are used to make product&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_billofmaterial0"/>
<field model="process.node" name="source_node_id" ref="product.process_node_product0"/>
</record>
</data>
</openerp>