diff --git a/addons/account/account.py b/addons/account/account.py
index dbff7730fc9..e7304065b8d 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -562,6 +562,17 @@ class account_period(osv.osv):
if not ids:
raise osv.except_osv(_('Error !'), _('No period defined for this date !\nPlease create a fiscal year.'))
return ids
+
+ def action_draft(self, cr, uid, ids, *args):
+ users_roles = self.pool.get('res.users').browse(cr, uid, uid).roles_id
+ for role in users_roles:
+ if role.name=='Period':
+ mode = 'draft'
+ for id in ids:
+ cr.execute('update account_journal_period set state=%s where period_id=%d', (mode, id))
+ cr.execute('update account_period set state=%s where id=%d', (mode, id))
+ return True
+
account_period()
class account_journal_period(osv.osv):
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 6b793707cb4..31b6c73d179 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -60,6 +60,9 @@
+
+
+
account.period.form
@@ -74,6 +77,7 @@
+