improve
[odoo/odoo.git] / addons / sale / process / sale_process.xml
1 <?xml version="1.0" ?>
2 <openerp>
3     <data>
4     
5         <!--        
6             Process
7         -->
8     
9         <record id="process_process_salesworkflow0" model="process.process">
10             <field eval="1" name="active"/>
11             <field eval="'From the quotation to the delivery and invoices.'" name="note"/>
12             <field eval="'Sales Workflow'" name="name"/>
13         </record>
14         
15         <!--        
16             Process Node 
17         -->
18         
19         <record id="process_node_order0" model="process.node">
20             <field name="menu_id" ref="sale.menu_sale_order"/>
21             <field name="model_id" ref="sale.model_sale_order"/>
22             <field eval="'subflow'" name="kind"/>
23             <field eval="'Order'" name="name"/>
24             <field eval="'After confirming order, Create the invoice.'" name="note"/>
25             <field name="process_id" ref="account.process_process_invoiceworkflow0"/>
26             <field name="subflow_id" ref="process_process_salesworkflow0"/>
27             <field name="model_states">object.state=='draft'</field>
28             <field eval="1" name="flow_start"/>
29         </record>
30         
31         <record id="process_node_saleorderprocurement0" model="process.node">
32             <field name="menu_id" ref="sale.menu_sale_order"/>
33             <field name="model_id" ref="sale.model_sale_order"/>
34             <field eval="'subflow'" name="kind"/>
35             <field eval="'Sale Order Procurement'" name="name"/>
36             <field eval="'Procurement for each line'" name="note"/>
37             <field name="process_id" ref="mrp.process_process_procurementworkflow0"/>
38             <field name="subflow_id" ref="process_process_salesworkflow0"/>
39             <field name="model_states">object.state in ('draft','waiting_date','manual','progress','shipping_except','invoice_except','done','cancel')</field>
40             <field eval="1" name="flow_start"/>
41         </record>
42
43         <record id="process_node_quotation0" model="process.node">
44             <field name="menu_id" ref="sale.menu_action_order_tree10"/>
45             <field name="model_id" ref="sale.model_sale_order"/>
46             <field eval="'state'" name="kind"/>
47             <field eval="'Quotation'" name="name"/>
48             <field eval="'Quotations are sales order in draft state.'" name="note"/>
49             <field name="process_id" ref="process_process_salesworkflow0"/>
50             <field name="model_states">object.state=='draft'</field>
51             <field eval="1" name="flow_start"/>
52         </record>
53
54         <record id="process_node_saleorder0" model="process.node">
55             <field name="menu_id" ref="sale.menu_action_order_tree9"/>
56             <field name="model_id" ref="sale.model_sale_order"/>
57             <field eval="'Sale Order'" name="name"/>
58             <field eval="'Confirmed by the customer.'" name="note"/>
59             <field name="process_id" ref="process_process_salesworkflow0"/>
60             <field name="model_states">object.state in ('waiting_date','manual','progress')</field>
61         </record>
62         
63         <record id="process_node_saleprocurement0" model="process.node">
64             <field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
65             <field name="model_id" ref="mrp.model_mrp_procurement"/>
66             <field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
67             <field eval="&quot;&quot;&quot;Procurement&quot;&quot;&quot;" name="name"/>
68             <field eval="&quot;&quot;&quot;One procurement for each product.&quot;&quot;&quot;" name="note"/>
69             <field name="process_id" ref="process_process_salesworkflow0"/>
70             <field eval="&quot;&quot;&quot;object.state=='confirmed'&quot;&quot;&quot;" name="model_states"/>
71             <field eval="1" name="flow_start"/>
72         </record>
73
74         <record id="process_node_packinglist0" model="process.node">
75             <field name="menu_id" ref="stock.menu_picking_waiting"/>
76             <field name="model_id" ref="stock.model_stock_picking"/>
77             <field eval="'Packing List'" name="name"/>
78             <field eval="'The worker have to pack the requested products.'" name="note"/>
79             <field name="process_id" ref="process_process_salesworkflow0"/>
80             <field name="model_states">object.state in ('assigned', 'confirmed')</field>
81         </record>
82
83         <record id="process_node_deliveryorder0" model="process.node">
84             <field name="menu_id" ref="stock.menu_picking_waiting_delivery"/>
85             <field name="model_id" ref="stock.model_stock_picking"/>
86             <field eval="'state'" name="kind"/>
87             <field eval="'Delivery Order'" name="name"/>
88             <field eval="'The delivery order document, when boxes leaves the warehouse.'" name="note"/>
89             <field name="process_id" ref="process_process_salesworkflow0"/>
90             <field name="model_states">object.state in ('done')</field>
91         </record>
92
93         <record id="process_node_invoice0" model="process.node">
94             <field name="menu_id" ref="account.menu_invoice_draft"/>
95             <field name="model_id" ref="account.model_account_invoice"/>
96             <field eval="'subflow'" name="kind"/>
97             <field eval="'Invoice'" name="name"/>
98             <field eval="'Invoice based on the sale order.'" name="note"/>
99             <field name="process_id" ref="process_process_salesworkflow0"/>
100             <field name="subflow_id" ref="account.process_process_invoiceworkflow0"/>
101         </record>
102
103         <record id="process_node_invoiceafterdelivery0" model="process.node">
104             <field name="menu_id" ref="account.menu_invoice_draft"/>
105             <field name="model_id" ref="account.model_account_invoice"/>
106             <field eval="'subflow'" name="kind"/>
107             <field eval="'Invoice on Packing'" name="name"/>
108             <field eval="'In case you invoice based on packings'" name="note"/>
109             <field name="process_id" ref="process_process_salesworkflow0"/>
110             <field name="subflow_id" ref="account.process_process_invoiceworkflow0"/>
111             <field eval="0" name="flow_start"/>
112         </record>
113         
114         <!--        
115             Process Condition
116         -->
117
118         <record id="process_condition_conditionafterdelivery0" model="process.condition">
119             <field name="model_id" ref="sale.model_sale_order"/>
120             <field name="node_id" ref="process_node_invoiceafterdelivery0"/>
121             <field name="model_states">object.order_policy=='postpaid'</field>
122             <field eval="'condition_after_delivery'" name="name"/>
123         </record>
124         
125         <!--        
126             Process Transition
127         -->
128         
129         <record id="res_roles_salesman0" model="res.roles">
130             <field eval="'Salesman'" name="name"/>
131         </record>
132     
133         <record id="sale.trans_draft_router" model="workflow.transition">
134             <field name="role_id" ref="res_roles_salesman0"/>
135         </record>
136     
137         <record id="sale.trans_wait_invoice_invoice_manual" model="workflow.transition">
138             <field name="role_id" ref="res_roles_salesman0"/>
139         </record>
140     
141         <record id="process_transition_confirmquotation0" model="process.transition">
142             <field eval="[(6,0,[])]" name="transition_ids"/>
143             <field eval="'Confirm Quotation'" name="name"/>
144             <field eval="'Whenever confirm button is clicked, the draft state is moved to manual. that is, quotation is moved to  sale order.'" name="note"/>
145             <field model="process.node" name="target_node_id" ref="process_node_saleorder0"/>
146             <field model="process.node" name="source_node_id" ref="process_node_quotation0"/>
147             <field eval="[(6,0,[ref('sale.trans_draft_router')])]" name="transition_ids"/>
148         </record>
149         
150         <record id="process_transition_saleprocurement0" model="process.transition">
151             <field eval="[(6,0,[])]" name="transition_ids"/>
152             <field eval="&quot;&quot;&quot;Sale Procurement&quot;&quot;&quot;" name="name"/>
153             <field eval="&quot;&quot;&quot;Procurement is created after confirmation of sale order.&quot;&quot;&quot;" name="note"/>
154             <field model="process.node" name="target_node_id" ref="process_node_saleprocurement0"/>
155             <field model="process.node" name="source_node_id" ref="process_node_saleorder0"/>
156         </record>
157
158         <record id="process_transition_packing0" model="process.transition">
159             <field eval="[(6,0,[])]" name="transition_ids"/>
160             <field eval="'Packing'" name="name"/>
161             <field eval="'Packing list is created when the Assign button is being clicked after confirming the sale order. This transaction moves the sale order to packing list.'" name="note"/>
162             <field model="process.node" name="target_node_id" ref="process_node_packinglist0"/>
163             <field model="process.node" name="source_node_id" ref="process_node_saleprocurement0"/>
164         </record>
165         
166         <record id="process_transition_deliver0" model="process.transition">
167             <field eval="[(6,0,[])]" name="transition_ids"/>
168             <field eval="'Deliver'" name="name"/>
169             <field eval="'Confirming the packing list moves them to delivery order. This can be done by clicking on the Validate button.'" name="note"/>
170             <field model="process.node" name="target_node_id" ref="process_node_deliveryorder0"/>
171             <field model="process.node" name="source_node_id" ref="process_node_packinglist0"/>
172         </record>
173
174         <record id="process_transition_invoice0" model="process.transition">
175             <field eval="[(6,0,[])]" name="transition_ids"/>
176             <field eval="'Invoice'" name="name"/>
177             <field eval="'Invoice is created when Create Invoice is being clicked after confirming the sale order. This transaction moves the sale order to invoices.'" name="note"/>
178             <field model="process.node" name="target_node_id" ref="process_node_invoice0"/>
179             <field model="process.node" name="source_node_id" ref="process_node_saleorder0"/>
180             <field eval="[(6,0,[ref('sale.trans_wait_invoice_invoice_manual')])]" name="transition_ids"/>
181         </record>
182
183         <record id="process_transition_invoiceafterdelivery0" model="process.transition">
184             <field eval="[(6,0,[])]" name="transition_ids"/>
185             <field eval="'Invoice after delivery'" name="name"/>
186             <field eval="'When you select Shipping Ploicy = Automatic Invoice after delivery , it will automatic create after delivery.'" name="note"/>
187             <field model="process.node" name="target_node_id" ref="process_node_invoiceafterdelivery0"/>
188             <field model="process.node" name="source_node_id" ref="process_node_packinglist0"/>
189         </record>
190     
191         <record id="process_transition_saleorderprocurement0" model="process.transition">
192             <field eval="[(6,0,[])]" name="role_ids"/>
193             <field eval="[(6,0,[])]" name="transition_ids"/>
194             <field eval="'Sale Procurement'" name="name"/>
195             <field eval="'In sale order , procuerement for each line and it comes into the procurement order'" name="note"/>
196             <field model="process.node" name="target_node_id" ref="mrp.process_node_procureproducts0"/>
197             <field model="process.node" name="source_node_id" ref="process_node_saleorderprocurement0"/>
198         </record>
199         
200         <record id="process_transition_saleinvoice0" model="process.transition">
201             <field eval="[(6,0,[])]" name="role_ids"/>
202             <field eval="[(6,0,[])]" name="transition_ids"/>
203             <field eval="'Sale Invoice'" name="name"/>
204             <field eval="'Confirm sale order and Create invoice.'" name="note"/>
205             <field model="process.node" name="target_node_id" ref="account.process_node_draftinvoices0"/>
206             <field model="process.node" name="source_node_id" ref="process_node_order0"/>
207         </record>
208         
209         <!--        
210             Process Action
211         -->
212         
213         <record id="process_transition_action_confirm0" model="process.transition.action">
214             <field eval="'action_wait'" name="action"/>
215             <field eval="'object'" name="state"/>
216             <field eval="'Confirm'" name="name"/>
217             <field name="transition_id" ref="process_transition_confirmquotation0"/>
218         </record>
219
220         <record id="process_transition_action_cancel0" model="process.transition.action">
221             <field eval="'action_cancel'" name="action"/>
222             <field eval="'object'" name="state"/>
223             <field eval="'Cancel'" name="name"/>
224             <field name="transition_id" ref="process_transition_confirmquotation0"/>
225         </record>
226         
227         <record id="process_transition_action_assign0" model="process.transition.action">
228             <field eval="'action_assign'" name="action"/>
229             <field eval="'object'" name="state"/>
230             <field eval="'Assign'" name="name"/>
231             <field name="transition_id" ref="process_transition_packing0"/>
232         </record>
233
234         <record id="process_transition_action_forceassignation0" model="process.transition.action">
235             <field eval="'force_assign'" name="action"/>
236             <field eval="'object'" name="state"/>
237             <field eval="'Force Assignation'" name="name"/>
238             <field name="transition_id" ref="process_transition_packing0"/>
239         </record>
240
241         <record id="process_transition_action_cancel1" model="process.transition.action">
242             <field eval="'action_cancel'" name="action"/>
243             <field eval="'object'" name="state"/>
244             <field eval="'Cancel'" name="name"/>
245             <field name="transition_id" ref="process_transition_packing0"/>
246         </record>
247         
248         <record id="process_transition_action_cancelassignation0" model="process.transition.action">
249             <field eval="'cancel_assign'" name="action"/>
250             <field eval="'object'" name="state"/>
251             <field eval="'Cancel Assignation'" name="name"/>
252             <field name="transition_id" ref="process_transition_deliver0"/>
253         </record>
254
255         <record id="process_transition_action_validate0" model="process.transition.action">
256             <field eval="'test_finnished'" name="action"/>
257             <field eval="'object'" name="state"/>
258             <field eval="'Validate'" name="name"/>
259             <field name="transition_id" ref="process_transition_deliver0"/>
260         </record>
261
262         <record id="process_transition_action_cancel2" model="process.transition.action">
263             <field eval="'action_cancel'" name="action"/>
264             <field eval="'object'" name="state"/>
265             <field eval="'Cancel'" name="name"/>
266             <field name="transition_id" ref="process_transition_deliver0"/>
267         </record>
268         
269         <record id="process_transition_action_createinvoice0" model="process.transition.action">
270             <field eval="'action_invoice_create'" name="action"/>
271             <field eval="'object'" name="state"/>
272             <field eval="'Create Invoice'" name="name"/>
273             <field name="transition_id" ref="process_transition_invoice0"/>
274         </record>
275     
276         <record id="process_transition_action_cancelorder0" model="process.transition.action">
277             <field eval="'action_cancel'" name="action"/>
278             <field eval="'object'" name="state"/>
279             <field eval="'Cancel Order'" name="name"/>
280             <field name="transition_id" ref="process_transition_invoice0"/>
281         </record>
282     
283     </data>
284 </openerp>