improvements_view
[odoo/odoo.git] / addons / purchase / process / purchase_process.xml
1 <?xml version="1.0" ?>
2 <openerp>
3     <data>
4
5         <!--
6             Process
7         -->
8
9         <record id="process_process_purchaseprocess0" model="process.process">
10             <field eval="1" name="active"/>
11             <field name="model_id" ref="purchase.model_purchase_order"/>
12             <field eval="&quot;&quot;&quot;Purchase&quot;&quot;&quot;" name="name"/>
13         </record>
14
15         <!--
16             Process Node
17         -->
18
19         <record id="process_node_packinginvoice0" model="process.node">
20 <!--            <field name="menu_id" ref="stock.menu_action_picking_tree"/>-->
21             <field name="model_id" ref="stock.model_stock_picking"/>
22             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
23             <field eval="&quot;&quot;&quot;Outgoing Products&quot;&quot;&quot;" name="name"/>
24             <field eval="&quot;&quot;&quot;Outgoing products to invoice&quot;&quot;&quot;" name="note"/>
25             <field name="process_id" ref="account.process_process_invoiceprocess0"/>
26             <field eval="&quot;&quot;&quot;object.state in ('assigned', 'confirmed')&quot;&quot;&quot;" name="model_states"/>
27             <field eval="1" name="flow_start"/>
28         </record>
29
30         <record id="process_node_purchaseorder0" model="process.node">
31             <field name="menu_id" ref="purchase.menu_purchase_form_action"/>
32             <field name="model_id" ref="purchase.model_purchase_order"/>
33             <field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
34             <field eval="&quot;&quot;&quot;Purchase Order&quot;&quot;&quot;" name="name"/>
35             <field eval="&quot;&quot;&quot;Confirmed purchase order to invoice&quot;&quot;&quot;" name="note"/>
36             <field name="process_id" ref="account.process_process_supplierinvoiceprocess0"/>
37             <field name="subflow_id" ref="process_process_purchaseprocess0"/>
38             <field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
39             <field eval="1" name="flow_start"/>
40         </record>
41
42         <record id="process_node_draftpurchaseorder0" model="process.node">
43             <field name="menu_id" ref="purchase.menu_purchase_form_action"/>
44             <field name="model_id" ref="purchase.model_purchase_order"/>
45             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
46             <field eval="&quot;&quot;&quot;RFQ&quot;&quot;&quot;" name="name"/>
47             <field eval="&quot;&quot;&quot;Request for Quotations.&quot;&quot;&quot;" name="note"/>
48             <field name="process_id" ref="process_process_purchaseprocess0"/>
49             <field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
50             <field eval="0" name="flow_start"/>
51         </record>
52
53         <record id="process_node_draftpurchaseorder1" model="process.node">
54             <field name="menu_id" ref="purchase.menu_purchase_form_action"/>
55             <field name="model_id" ref="purchase.model_purchase_order"/>
56             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
57             <field eval="&quot;&quot;&quot;RFQ&quot;&quot;&quot;" name="name"/>
58             <field eval="&quot;&quot;&quot;Request for Quotations.&quot;&quot;&quot;" name="note"/>
59             <field name="process_id" ref="process_process_purchaseprocess0"/>
60             <field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
61             <field eval="1" name="flow_start"/>
62         </record>
63
64         <record id="process_node_confirmpurchaseorder0" model="process.node">
65             <field name="menu_id" ref="purchase.menu_purchase_form_action"/>
66             <field name="model_id" ref="purchase.model_purchase_order"/>
67             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
68             <field eval="&quot;&quot;&quot;Confirmed&quot;&quot;&quot;" name="name"/>
69             <field eval="&quot;&quot;&quot;State of the Purchase Order.&quot;&quot;&quot;" name="note"/>
70             <field name="process_id" ref="process_process_purchaseprocess0"/>
71             <field eval="&quot;&quot;&quot;object.state=='confirmed'&quot;&quot;&quot;" name="model_states"/>
72             <field eval="0" name="flow_start"/>
73         </record>
74
75         <record id="process_node_approvepurchaseorder0" model="process.node">
76             <field name="menu_id" ref="purchase.menu_purchase_form_action"/>
77             <field name="model_id" ref="purchase.model_purchase_order"/>
78             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
79             <field eval="&quot;&quot;&quot;Approved&quot;&quot;&quot;" name="name"/>
80             <field eval="&quot;&quot;&quot;State of the Purchase Order.&quot;&quot;&quot;" name="note"/>
81             <field name="process_id" ref="process_process_purchaseprocess0"/>
82             <field eval="&quot;&quot;&quot;object.state=='approved'&quot;&quot;&quot;" name="model_states"/>
83             <field eval="0" name="flow_start"/>
84         </record>
85
86         <record id="process_node_invoicecontrol0" model="process.node">
87             <field name="menu_id" ref="account.menu_action_invoice_tree2"/>
88             <field name="model_id" ref="account.model_account_invoice"/>
89             <field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
90             <field eval="&quot;&quot;&quot;Draft Invoice&quot;&quot;&quot;" name="name"/>
91             <field eval="&quot;&quot;&quot;To be reviewed by the accountant.&quot;&quot;&quot;" name="note"/>
92             <field name="process_id" ref="process_process_purchaseprocess0"/>
93             <field name="subflow_id" ref="account.process_process_supplierinvoiceprocess0"/>
94             <field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
95             <field eval="0" name="flow_start"/>
96         </record>
97
98         <record id="process_node_packinglist0" model="process.node">
99             <field name="menu_id" ref="stock.menu_action_picking_tree4"/>
100             <field name="model_id" ref="stock.model_stock_picking"/>
101             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
102             <field eval="&quot;&quot;&quot;Incoming Products&quot;&quot;&quot;" name="name"/>
103             <field eval="&quot;&quot;&quot;List of ordered products.&quot;&quot;&quot;" name="note"/>
104             <field name="process_id" ref="process_process_purchaseprocess0"/>
105             <field eval="&quot;&quot;&quot;object.state=='assigned'&quot;&quot;&quot;" name="model_states"/>
106             <field eval="0" name="flow_start"/>
107         </record>
108
109         <record id="process_node_invoiceafterpacking0" model="process.node">
110             <field name="menu_id" ref="account.menu_finance_receivables"/>
111             <field name="model_id" ref="account.model_account_invoice"/>
112             <field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
113             <field eval="&quot;&quot;&quot;Draft Invoice&quot;&quot;&quot;" name="name"/>
114             <field eval="&quot;&quot;&quot;To be reviewed by the accountant.&quot;&quot;&quot;" name="note"/>
115             <field name="process_id" ref="process_process_purchaseprocess0"/>
116             <field name="subflow_id" ref="account.process_process_supplierinvoiceprocess0"/>
117             <field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
118             <field eval="0" name="flow_start"/>
119         </record>
120
121         <record id="process_node_productrecept0" model="process.node">
122 <!--            <field name="menu_id" ref="stock.menu_action_picking_tree"/>-->
123             <field name="model_id" ref="stock.model_stock_picking"/>
124             <field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
125             <field eval="&quot;&quot;&quot;Incoming Products&quot;&quot;&quot;" name="name"/>
126             <field eval="&quot;&quot;&quot;Incoming products to control&quot;&quot;&quot;" name="note"/>
127             <field name="subflow_id" ref="process_process_purchaseprocess0"/>
128             <field name="process_id" ref="account.process_process_supplierinvoiceprocess0"/>
129             <field eval="&quot;&quot;&quot;object.state in ('draft', 'open', 'pending', 'close')&quot;&quot;&quot;" name="model_states"/>
130             <field eval="1" name="flow_start"/>
131         </record>
132
133         <!--
134             Process Condition
135         -->
136
137         <record id="process_condition_conditionorigin" model="process.condition">
138             <field name="model_id" ref="purchase.model_purchase_order"/>
139             <field name="node_id" ref="process_node_draftpurchaseorder1"/>
140             <field eval="&quot;&quot;&quot;object.origin==''&quot;&quot;&quot;" name="model_states"/>
141             <field eval="&quot;&quot;&quot;condition_origin&quot;&quot;&quot;" name="name"/>
142         </record>
143
144         <record id="process_condition_conditioninvoicemanual" model="process.condition">
145             <field name="model_id" ref="purchase.model_purchase_order"/>
146             <field name="node_id" ref="process_node_invoicecontrol0"/>
147             <field eval="&quot;&quot;&quot;object.invoice_method=='manual'&quot;&quot;&quot;" name="model_states"/>
148             <field eval="&quot;&quot;&quot;condition_invoice_manual&quot;&quot;&quot;" name="name"/>
149         </record>
150
151         <!--
152             Process Transition
153         -->
154
155         <record id="process_transition_productrecept0" model="process.transition">
156             <field eval="[(6,0,[])]" name="transition_ids"/>
157             <field eval="&quot;&quot;&quot;From a Pick list&quot;&quot;&quot;" name="name"/>
158             <field eval="&quot;&quot;&quot;A Pick list generates a supplier invoice. Depending on the Invoicing control of the purchase order, the invoice is based on received or on ordered quantities.&quot;&quot;&quot;" name="note"/>
159             <field model="process.node" name="target_node_id" ref="account.process_node_supplierdraftinvoices0"/>
160             <field model="process.node" name="source_node_id" ref="process_node_productrecept0"/>
161         </record>
162
163         <record id="process_transition_confirmingpurchaseorder0" model="process.transition">
164             <field eval="[(6,0,[])]" name="transition_ids"/>
165             <field eval="&quot;&quot;&quot;Confirmation&quot;&quot;&quot;" name="name"/>
166             <field eval="&quot;&quot;&quot;The buyer has to approve the RFQ before being sent to the supplier. The RFQ becomes a confirmed Purchase Order.&quot;&quot;&quot;" name="note"/>
167             <field model="process.node" name="target_node_id" ref="process_node_confirmpurchaseorder0"/>
168             <field model="process.node" name="source_node_id" ref="process_node_draftpurchaseorder0"/>
169             <field eval="[(6,0,[ref('purchase.trans_draft_confirmed')])]" name="transition_ids"/>
170         </record>
171
172         <record id="process_transition_confirmingpurchaseorder1" model="process.transition">
173             <field eval="[(6,0,[])]" name="transition_ids"/>
174             <field eval="&quot;&quot;&quot;Confirmation&quot;&quot;&quot;" name="name"/>
175             <field eval="&quot;&quot;&quot;In case there is no supplier for this product, the buyer can fill the form manually and confirm it. The RFQ becomes a confirmed Purchase Order.&quot;&quot;&quot;" name="note"/>
176             <field model="process.node" name="target_node_id" ref="process_node_confirmpurchaseorder0"/>
177             <field model="process.node" name="source_node_id" ref="process_node_draftpurchaseorder1"/>
178         </record>
179
180         <record id="process_transition_approvingpurchaseorder0" model="process.transition">
181             <field eval="[(6,0,[])]" name="transition_ids"/>
182             <field eval="&quot;&quot;&quot;Approbation&quot;&quot;&quot;" name="name"/>
183             <field eval="&quot;&quot;&quot;The supplier approves the Purchase Order.&quot;&quot;&quot;" name="note"/>
184             <field model="process.node" name="target_node_id" ref="process_node_approvepurchaseorder0"/>
185             <field model="process.node" name="source_node_id" ref="process_node_confirmpurchaseorder0" />
186         </record>
187
188         <record id="process_transition_invoicefrompurchase0" model="process.transition">
189             <field eval="[(6,0,[])]" name="transition_ids"/>
190             <field eval="&quot;&quot;&quot;Invoice&quot;&quot;&quot;" name="name"/>
191             <field eval="&quot;&quot;&quot;The invoice is created automatically if the Invoice control of the purchase order is 'On order'. The invoice can also be generated manually by the accountant (Invoice control = Manual).&quot;&quot;&quot;" name="note"/>
192             <field model="process.node" name="target_node_id" ref="process_node_invoicecontrol0"/>
193             <field model="process.node" name="source_node_id" ref="process_node_approvepurchaseorder0"/>
194             <field eval="[(6,0,[ref('purchase.trans_router_invoice')])]" name="transition_ids"/>
195         </record>
196
197         <record id="process_transition_createpackinglist0" model="process.transition">
198             <field eval="[(6,0,[])]" name="transition_ids"/>
199             <field eval="&quot;&quot;&quot;Pick list generated&quot;&quot;&quot;" name="name"/>
200             <field eval="&quot;&quot;&quot;A pick list is generated to track the incoming products.&quot;&quot;&quot;" name="note"/>
201             <field model="process.node" name="target_node_id" ref="process_node_packinglist0"/>
202             <field model="process.node" name="source_node_id" ref="process_node_approvepurchaseorder0"/>
203         </record>
204
205         <record id="process_transition_invoicefrompackinglist0" model="process.transition">
206             <field eval="[(6,0,[])]" name="transition_ids"/>
207             <field eval="&quot;&quot;&quot;Invoice&quot;&quot;&quot;" name="name"/>
208             <field eval="&quot;&quot;&quot;The invoice is created automatically if the Invoice control of the purchase order is 'On picking'. The invoice can also be generated manually by the accountant (Invoice control = Manual).&quot;&quot;&quot;" name="note"/>
209             <field model="process.node" name="target_node_id" ref="process_node_invoiceafterpacking0"/>
210             <field model="process.node" name="source_node_id" ref="process_node_packinglist0"/>
211         </record>
212
213         <record id="process_transition_purchaseinvoice0" model="process.transition">
214             <field eval="[(6,0,[])]" name="transition_ids"/>
215             <field eval="&quot;&quot;&quot;From a purchase order&quot;&quot;&quot;" name="name"/>
216             <field eval="&quot;&quot;&quot;A purchase order generates a supplier invoice, as soon as it is confirmed by the buyer. Depending on the Invoicing control of the purchase order, the invoice is based on received or on ordered quantities.&quot;&quot;&quot;" name="note"/>
217             <field model="process.node" name="target_node_id" ref="account.process_node_supplierdraftinvoices0"/>
218             <field model="process.node" name="source_node_id" ref="process_node_purchaseorder0"/>
219         </record>
220
221         <record id="process_transition_packinginvoice0" model="process.transition">
222             <field eval="[(6,0,[])]" name="transition_ids"/>
223             <field eval="&quot;&quot;&quot;From a Pick list&quot;&quot;&quot;" name="name"/>
224             <field eval="&quot;&quot;&quot;A Pick list generates an invoice. Depending on the Invoicing control of the sale order, the invoice is based on delivered or on ordered quantities.&quot;&quot;&quot;" name="note"/>
225             <field model="process.node" name="target_node_id" ref="account.process_node_draftinvoices0"/>
226             <field model="process.node" name="source_node_id" ref="process_node_packinginvoice0"/>
227         </record>
228
229         <!--
230             Process Action
231         -->
232
233         <record id="process_transition_action_confirmpurchaseorder0" model="process.transition.action">
234             <field eval="&quot;&quot;&quot;wkf_confirm_order&quot;&quot;&quot;" name="action"/>
235             <field eval="&quot;&quot;&quot;object&quot;&quot;&quot;" name="state"/>
236             <field eval="&quot;&quot;&quot;Confirm&quot;&quot;&quot;" name="name"/>
237             <field name="transition_id" ref="process_transition_confirmingpurchaseorder0"/>
238         </record>
239
240         <record id="process_transition_action_cancelpurchaseorder0" model="process.transition.action">
241             <field eval="&quot;&quot;&quot;write({'state':'cancel'})&quot;&quot;&quot;" name="action"/>
242             <field eval="&quot;&quot;&quot;object&quot;&quot;&quot;" name="state"/>
243             <field eval="&quot;&quot;&quot;Cancel&quot;&quot;&quot;" name="name"/>
244             <field name="transition_id" ref="process_transition_confirmingpurchaseorder0"/>
245         </record>
246
247         <record id="process_transition_action_approvingpurchaseorder0" model="process.transition.action">
248             <field eval="&quot;&quot;&quot;wkf_approve_order&quot;&quot;&quot;" name="action"/>
249             <field eval="&quot;&quot;&quot;object&quot;&quot;&quot;" name="state"/>
250             <field eval="&quot;&quot;&quot;Approve&quot;&quot;&quot;" name="name"/>
251             <field name="transition_id" ref="process_transition_approvingpurchaseorder0"/>
252         </record>
253
254         <record id="process_transition_action_approvingcancelpurchaseorder0" model="process.transition.action">
255             <field eval="&quot;&quot;&quot;write({'state':'cancel'})&quot;&quot;&quot;" name="action"/>
256             <field eval="&quot;&quot;&quot;object&quot;&quot;&quot;" name="state"/>
257             <field eval="&quot;&quot;&quot;Cancel&quot;&quot;&quot;" name="name"/>
258             <field name="transition_id" ref="process_transition_approvingpurchaseorder0"/>
259         </record>.
260
261         <record id="process_transition_action_invoicefrompurchaseorder0" model="process.transition.action">
262             <field eval="&quot;&quot;&quot;action_invoice_create&quot;&quot;&quot;" name="action"/>
263             <field eval="&quot;&quot;&quot;object&quot;&quot;&quot;" name="state"/>
264             <field eval="&quot;&quot;&quot;Create invoice&quot;&quot;&quot;" name="name"/>
265             <field name="transition_id" ref="process_transition_invoicefrompurchase0"/>
266         </record>
267
268     </data>
269 </openerp>