[FIX] Schedule jobs even if their next time has passed.
[odoo/odoo.git] / addons / mrp_repair / mrp_repair_workflow.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4         <record id="wkf_repair" model="workflow">
5             <field name="name">mrp.repair.basic</field>
6             <field name="osv">mrp.repair</field>
7             <field name="on_create">True</field>
8         </record>
9         
10         <!-- Activity -->
11         <record id="act_draft" model="workflow.activity">
12             <field name="wkf_id" ref="wkf_repair"/>
13             <field name="flow_start">True</field>
14             <field name="name">draft</field>
15         </record>
16
17         <record id="act_confirm" model="workflow.activity">
18             <field name="wkf_id" ref="wkf_repair"/>
19             <field name="name">confirm</field>
20             <field name="kind">function</field>
21             <field name="action">action_confirm()</field>
22             <field name="split_mode">OR</field>
23         </record>
24         <record id="act_wait_invoice" model="workflow.activity">
25             <field name="wkf_id" ref="wkf_repair"/>
26             <field name="name">wait_invoice</field>
27         </record>
28         <record id="act_wait_repair" model="workflow.activity">
29             <field name="wkf_id" ref="wkf_repair"/>
30             <field name="name">wait_repair</field>
31         </record>
32         <record id="act_repair_ready" model="workflow.activity">
33             <field name="wkf_id" ref="wkf_repair"/>
34             <field name="name">Ready Repair</field>
35             <field name="kind">function</field>            
36             <field name="action">action_repair_ready()</field>
37         </record>
38         <record id="act_cancel3" model="workflow.activity">
39             <field name="wkf_id" ref="wkf_repair"/>
40             <field name="name">cancel3</field>
41             <field name="flow_stop">True</field>
42             <field name="kind">stopall</field>
43             <field name="action">action_cancel()</field>
44         </record>
45         <record id="act_done" model="workflow.activity">
46             <field name="wkf_id" ref="wkf_repair"/>
47             <field name="name">done</field>
48             <field name="flow_stop">True</field>
49             <field name="kind">function</field>
50             <field name="action">wkf_repair_done()</field>
51             <field name="join_mode">XOR</field>
52         </record>
53        <!-- <record id="act_invoice" model="workflow.activity">
54             <field name="wkf_id" ref="wkf_repair"/>
55             <field name="name">invoice</field>
56             <field name="kind">subflow</field>
57             <field name="subflow_id" search="[('name','=','account.invoice.basic')]"/>
58             <field name="action">action_invoice_create()</field>
59         </record> -->
60         <record id="act_repair_start" model="workflow.activity">
61             <field name="wkf_id" ref="wkf_repair"/>
62             <field name="name">Start Repair</field>
63             <field name="kind">function</field>            
64             <field name="action">action_repair_start()</field>
65         </record>  
66         <record id="act_invoice_end" model="workflow.activity">
67             <field name="wkf_id" ref="wkf_repair"/>
68             <field name="name">invoice_end</field>
69             <field name="kind">function</field>
70             <field name="action">wkf_invoice_create()</field>
71         </record>
72         <record id="act_repair_end" model="workflow.activity">
73             <field name="wkf_id" ref="wkf_repair"/>
74             <field name="name">repair_end</field>
75             <field name="kind">function</field>
76             <field name="action">action_repair_end()</field>
77         </record>
78
79         <!-- <record id="act_invoice_cancel" model="workflow.activity">
80             <field name="wkf_id" ref="wkf_repair"/>
81             <field name="name">invoice_cancel</field>
82             <field name="flow_stop">True</field>
83             <field name="kind">stopall</field>
84             <field name="action">action_cancel()</field>
85         </record>
86         <record id="act_invoice_except" model="workflow.activity">
87             <field name="wkf_id" ref="wkf_repair"/>
88             <field name="name">invoice_except</field>
89             <field name="kind">function</field>
90             <field name="action">action_invoice_cancel()</field>
91         </record>       -->    
92         
93         <record id="act_cancel" model="workflow.activity">
94             <field name="wkf_id" ref="wkf_repair"/>
95             <field name="name">cancel</field>
96             <field name="flow_stop">True</field>
97             <field name="kind">stopall</field>
98             <field name="action">action_cancel()</field>
99         </record>
100         <record id="act_cancel2" model="workflow.activity">
101             <field name="wkf_id" ref="wkf_repair"/>
102             <field name="name">cancel2</field>
103             <field name="flow_stop">True</field>
104             <field name="kind">stopall</field>
105             <field name="action">action_cancel()</field>
106         </record>
107
108
109         <!-- Transistion -->        
110         
111         
112         <record id="trans_draft_confirm" model="workflow.transition">
113             <field name="act_from" ref="act_draft"/>
114             <field name="act_to" ref="act_confirm"/>
115             <field name="signal">repair_confirm</field>
116         </record>
117         
118         <record id="trans_draft_cancel" model="workflow.transition">
119             <field name="act_from" ref="act_draft"/>
120             <field name="act_to" ref="act_cancel"/>
121             <field name="signal">cancel</field>
122         </record>
123         
124         <record id="trans_confirm_wait_invoice" model="workflow.transition">
125             <field name="act_from" ref="act_confirm"/>
126             <field name="act_to" ref="act_wait_invoice"/>
127             <field name="condition">invoice_method=='b4repair'</field>                        
128         </record>
129
130         <record id="trans_confirm_wait_ship" model="workflow.transition">
131             <field name="act_from" ref="act_confirm"/>
132             <field name="act_to" ref="act_wait_repair"/>
133             <field name="condition">(invoice_method=='after_repair' or invoice_method=='none')</field>
134         </record>
135
136         <!-- <record id="trans_confirm_wait_invoice_shipping" model="workflow.transition">
137             <field name="act_from" ref="act_wait_invoice"/>
138             <field name="act_to" ref="act_invoice_end"/>
139             <field name="condition">(invoice_method=='none')</field>
140         </record> -->
141
142         <record id="trans_wait_invoice_invoice" model="workflow.transition">
143             <field name="act_from" ref="act_wait_invoice"/>
144             <field name="act_to" ref="act_invoice_end"/>
145             <field name="signal">action_invoice_create</field>
146         </record> 
147
148         <record id="trans_invoice_start_repair" model="workflow.transition">
149             <field name="act_from" ref="act_invoice_end"/>
150             <field name="act_to" ref="act_repair_ready"/>
151             <field name="condition">invoice_method=='b4repair'</field>
152         </record>
153
154         <record id="trans_wait_invoice_cancel2" model="workflow.transition">
155             <field name="act_from" ref="act_wait_invoice"/>
156             <field name="act_to" ref="act_cancel2"/>
157             <field name="signal">cancel</field>
158         </record>
159
160         <record id="trans_invoice_end_done" model="workflow.transition">
161             <field name="act_from" ref="act_invoice_end"/>
162             <field name="act_to" ref="act_done"/>
163             <field name="condition">invoice_method=='after_repair'</field>
164         </record>
165
166         <record id="trans_wait_repair_start" model="workflow.transition">
167             <field name="act_from" ref="act_wait_repair"/>
168             <field name="act_to" ref="act_repair_start"/>
169             <field name="signal">repair_ready</field>
170         </record>
171
172         <record id="trans_ready_repair_start" model="workflow.transition">
173             <field name="act_from" ref="act_repair_ready"/>
174             <field name="act_to" ref="act_repair_start"/>
175             <field name="signal">action_repair_start</field>
176         </record>
177
178        <record id="trans_repair_repair_end" model="workflow.transition">
179             <field name="act_from" ref="act_repair_start"/>
180             <field name="act_to" ref="act_repair_end"/>  
181             <field name="signal">action_repair_end</field>           
182         </record>
183
184         <record id="trans_reapir_end_done" model="workflow.transition">
185             <field name="act_from" ref="act_repair_end"/>
186             <field name="act_to" ref="act_done"/>
187             <field name="condition">invoice_method=='none' or invoice_method=='b4repair'</field>
188         </record>
189
190         <record id="trans_reapir_end_invoice" model="workflow.transition">
191             <field name="act_from" ref="act_repair_end"/>
192             <field name="act_to" ref="act_wait_invoice"/>
193             <field name="condition">invoice_method=='after_repair'</field>
194         </record>
195         <record id="trans_wait_repair_cancel3" model="workflow.transition">
196             <field name="act_from" ref="act_wait_repair"/>
197             <field name="act_to" ref="act_cancel3"/>
198             <field name="signal">cancel</field>
199         </record>
200
201     </data>
202 </openerp>