5 <!-- Workflow definition
6 1. draft->submitted (confirm signal) if can_reset
7 2. submitted->draft (reset signal) if can_reset
8 2. submitted->accepted (validate signal) if not double_validation
9 2. submitted->first_accepted (validate signal) if double_validation
10 2. submitted->refused (refuse signal)
11 3. accepted->refused (refuse signal)
12 4. first_accepted -> accepted (second_validate signal)
13 4. first_accepted -> refused (refuse signal)
14 5. refuse -> draft (reset signal) if can_reset
17 <record model="workflow" id="wkf_holidays">
18 <field name="name">hr.wkf.holidays</field>
19 <field name="osv">hr.holidays</field>
20 <field name="on_create">True</field>
23 <record model="workflow.activity" id="act_draft"> <!-- draft -->
24 <field name="wkf_id" ref="wkf_holidays" />
25 <field name="name">draft</field>
26 <field name="flow_start" eval="False"/>
27 <field name="kind">function</field>
28 <field name="action">holidays_reset()</field>
31 <record model="workflow.activity" id="act_confirm"> <!-- submitted -->
32 <field name="wkf_id" ref="wkf_holidays" />
33 <field name="name">confirm</field>
34 <field name="flow_start" eval="True"/>
35 <field name="kind">function</field>
36 <field name="action">holidays_confirm()</field>
37 <field name="split_mode">OR</field>
40 <record model="workflow.activity" id="act_validate"> <!-- accepted -->
41 <field name="wkf_id" ref="wkf_holidays" />
42 <field name="name">validate</field>
43 <field name="kind">function</field>
44 <field name="action">holidays_validate()</field>
47 <record model="workflow.activity" id="act_validate1"> <!-- first_accepted -->
48 <field name="wkf_id" ref="wkf_holidays" />
49 <field name="name">first_validate</field>
50 <field name="kind">function</field>
51 <field name="action">holidays_first_validate()</field>
52 <field name="split_mode">OR</field>
55 <record model="workflow.activity" id="act_refuse"> <!-- refused -->
56 <field name="wkf_id" ref="wkf_holidays" />
57 <field name="name">refuse</field>
58 <field name="flow_stop" eval="False"/>
59 <field name="kind">function</field>
60 <field name="action">holidays_refuse()</field>
67 <record model="workflow.transition" id="holiday_draft2confirm"> <!-- 1. draft->submitted (confirm signal) -->
68 <field name="act_from" ref="act_draft" />
69 <field name="act_to" ref="act_confirm" />
70 <field name="signal">confirm</field>
71 <field name="condition">can_reset</field>
72 <field name="group_id" ref="base.group_user"/>
75 <record model="workflow.transition" id="holiday_confirm2draft"> <!-- 2. submitted->draft (reset signal) -->
76 <field name="act_from" ref="act_confirm" />
77 <field name="act_to" ref="act_draft" />
78 <field name="signal">reset</field>
79 <field name="condition">can_reset</field>
80 <field name="group_id" ref="base.group_user"/>
83 <record model="workflow.transition" id="holiday_confirm2validate"> <!-- 2. submitted->accepted (validate signal) if not double_validation-->
84 <field name="act_from" ref="act_confirm" />
85 <field name="act_to" ref="act_validate" />
86 <field name="signal">validate</field>
87 <field name="condition">not double_validation</field>
88 <field name="group_id" ref="base.group_hr_user"/>
91 <record model="workflow.transition" id="holiday_confirm2validate1"> <!-- 2. submitted -> first_accepted (validate signal) if double_validation-->
92 <field name="act_from" ref="act_confirm" />
93 <field name="act_to" ref="act_validate1" />
94 <field name="signal">validate</field>
95 <field name="condition">double_validation</field>
96 <field name="group_id" ref="base.group_hr_user"/>
99 <record model="workflow.transition" id="holiday_confirm2refuse"> <!-- 2. submitted->refused (refuse signal) -->
100 <field name="act_from" ref="act_confirm" />
101 <field name="act_to" ref="act_refuse" />
102 <field name="signal">refuse</field>
103 <field name="condition">True</field>
104 <field name="group_id" ref="base.group_hr_user"/>
107 <record model="workflow.transition" id="holiday_validate2refuse"> <!-- 3. accepted->refused (refuse signal) -->
108 <field name="act_from" ref="act_validate" />
109 <field name="act_to" ref="act_refuse" />
110 <field name="signal">refuse</field>
111 <field name="condition">True</field>
112 <field name="group_id" ref="base.group_hr_user"/>
115 <record model="workflow.transition" id="holiday_validate2refuse"> <!-- 3. accepted->refused (refuse signal) -->
116 <field name="act_from" ref="act_validate" />
117 <field name="act_to" ref="act_refuse" />
118 <field name="signal">refuse</field>
119 <field name="condition">True</field>
120 <field name="group_id" ref="base.group_hr_user"/>
123 <record model="workflow.transition" id="holiday_validate1_validate"> <!-- 4. first_accepted -> accepted (second_validate signal) -->
124 <field name="act_from" ref="act_validate1" />
125 <field name="act_to" ref="act_validate" />
126 <field name="condition">True</field>
127 <field name="signal">second_validate</field>
128 <field name="group_id" ref="base.group_hr_user"/>
131 <record model="workflow.transition" id="holiday_validate1_refuse"> <!-- 4. first_accepted->refused (refuse signal) -->
132 <field name="act_from" ref="act_validate1" />
133 <field name="act_to" ref="act_refuse" />
134 <field name="signal">refuse</field>
135 <field name="condition">True</field>
136 <field name="group_id" ref="base.group_hr_user"/>
139 <record model="workflow.transition" id="holiday_refuse2draft"> <!-- 5. refused->draft (reset signal) -->
140 <field name="act_from" ref="act_refuse" />
141 <field name="act_to" ref="act_draft" />
142 <field name="signal">reset</field>
143 <field name="condition">can_reset</field>
144 <field name="group_id" ref="base.group_hr_manager"/>