From ca329871ea1b87e307dcc749cc32eb87a038a027 Mon Sep 17 00:00:00 2001
From: "Sanjay Gohel (Open ERP)" <>
Date: Wed, 6 Jul 2011 18:22:33 +0530
Subject: [PATCH 1/5] [IMP]:add error messege and change wizard string
bzr revid: sanjay_gohel_open_erp-20110706125233-yb3wkb047u78elwg
---
addons/import_sugarcrm/__openerp__.py | 2 +-
addons/import_sugarcrm/import_sugarcrm.py | 85 +++++++++++++------
.../import_sugarcrm/import_sugarcrm_view.xml | 4 +-
.../wizard/import_message_view.xml | 2 +-
4 files changed, 65 insertions(+), 28 deletions(-)
diff --git a/addons/import_sugarcrm/__openerp__.py b/addons/import_sugarcrm/__openerp__.py
index 3d264facd0c..38d7875d43a 100644
--- a/addons/import_sugarcrm/__openerp__.py
+++ b/addons/import_sugarcrm/__openerp__.py
@@ -27,7 +27,7 @@
"Contacts", "Employees", Meetings, Phonecalls, Emails, and Project, Project Tasks Data into OpenERP Module.""",
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
- 'depends': ['import_base', 'crm_claim', 'project', 'project_issue', 'hr', 'document'],
+ 'depends': ['import_base'],
'init_xml': [],
'update_xml': ["wizard/import_message_view.xml",
"import_sugarcrm_view.xml"],
diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py
index 2fd5b5acbbe..9a64dbd21de 100644
--- a/addons/import_sugarcrm/import_sugarcrm.py
+++ b/addons/import_sugarcrm/import_sugarcrm.py
@@ -157,6 +157,7 @@ class sugar_import(import_framework):
def import_document(self, val):
File,Filename = sugar.get_document_revision_search(self.context.get('port'), self.context.get('session_id'), val.get('document_revision_id'))
+ File = base64.encodestring(File)
res_id, res_model = self.import_related_document(val)
val['res_id'] = res_id
val['res_model'] = res_model
@@ -170,7 +171,8 @@ class sugar_import(import_framework):
'model' : 'ir.attachment',
'dependencies' : [self.TABLE_USER, self.TABLE_ACCOUNT,self.TABLE_CONTACT, self.TABLE_OPPORTUNITY, self.TABLE_CASE, self.TABLE_BUG],
'hook' : self.import_document,
- 'map' : {'name':'document_name',
+ 'map' : {
+ 'name':'document_name',
'description': ppconcat('description'),
'datas': 'datas',
'datas_fname': 'datas_fname',
@@ -948,26 +950,27 @@ class import_sugarcrm(osv.osv):
}
def _get_email_id(self, cr, uid, context=None):
- return self.pool.get('res.users').browse(cr, uid, uid, context=context).user_email
+ return self.pool.get('res.users').browse(cr, uid, uid, context=context).user_email
+
_defaults = {#to be set to true, but easier for debugging
- 'opportunity': True,
+ 'opportunity': False,
'contact' : True,
'account' : True,
'employee' : False,
- 'meeting' : True,
- 'call' : True,
- 'claim' : True,
- 'email_history' : True,
- 'project' : True,
- 'project_task': True,
- 'bug': True,
+ 'meeting' : False,
+ 'call' : False,
+ 'claim' : False,
+ 'email_history' : False,
+ 'project' : False,
+ 'project_task': False,
+ 'bug': False,
'document': False,
'instance_name': 'sugarcrm',
'email_from': _get_email_id,
- 'username' : 'tfr',
- 'password' : 'a',
- 'url': "http://localhost/sugarcrm/soap.php"
+ 'username' : 'admin',
+ 'password' : '',
+ 'url': "http://sugarcrm.example.com/soap.php"
}
def check_url(self, url, context):
@@ -987,8 +990,6 @@ class import_sugarcrm(osv.osv):
if not context:
context = {}
url = context.get('url')
-
-
url_split = str(url).split('/')
while len(url_split) >= 3:
#3 case, soap.php is already at the end of url should be valid
@@ -1011,35 +1012,57 @@ class import_sugarcrm(osv.osv):
if not context:
context = {}
key_list = []
+ list = []
for current in self.browse(cr, uid, ids, context):
context.update({'username': current.username, 'password': current.password, 'url': current.url, 'email_user': current.email_from or False, 'instance_name': current.instance_name or False})
- if current.opportunity:
- key_list.append('Leads')
- key_list.append('Opportunities')
+
if current.contact:
key_list.append('Contacts')
if current.account:
- key_list.append('Accounts')
+ key_list.append('Accounts')
+ if current.opportunity:
+ key_list.append('Leads')
+ key_list.append('Opportunities')
+ list.append('crm')
+ list.append('hr')
if current.employee:
- key_list.append('Employees')
+ key_list.append('Employees')
+ list.append('hr')
if current.meeting:
key_list.append('Meetings')
+ list.append('crm')
+ list.append('hr')
if current.call:
key_list.append('Calls')
+ list.append('crm')
+ list.append('hr')
if current.claim:
- key_list.append('Cases')
+ key_list.append('Cases')
+ list.append('crm')
+ list.append('crm_claim')
+ list.append('hr')
if current.email_history:
key_list.append('Emails')
key_list.append('Notes')
+ list.append('crm')
+ list.append('project')
+ list.append('hr')
if current.project:
key_list.append('Project')
+ list.append('project')
if current.project_task:
key_list.append('ProjectTask')
+ list.append('project')
if current.bug:
key_list.append('Bugs')
+ list.append('project_issue')
if current.document:
key_list.append('Documents')
- return key_list
+ list.append('crm')
+ list.append('crm_claim')
+ list.append('project_issue')
+ list.append('project')
+ return key_list,list
def do_import_all(self, cr, uid, *args):
@@ -1054,6 +1077,7 @@ class import_sugarcrm(osv.osv):
def import_from_scheduler_all(self, cr, uid, ids, context=None):
keys = self.get_key(cr, uid, ids, context)
+
if not keys:
raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
cron_obj = self.pool.get('ir.cron')
@@ -1073,13 +1097,25 @@ class import_sugarcrm(osv.osv):
def import_all(self, cr, uid, ids, context=None):
# """Import all sugarcrm data into openerp module"""
- keys = self.get_key(cr, uid, ids, context)
+ keys, module_list = self.get_key(cr, uid, ids, context)
+ set_list = set(module_list)
+ model = list(set_list)
+ if not keys:
+ raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
+ obj_module = self.pool.get('ir.module.module')
+ module_id = obj_module.search(cr, uid, [('name', 'in', model)])
+ if module_id:
+ for id in module_id:
+ module_state = obj_module.browse(cr, uid, id).state
+ if module_state == 'uninstalled':
+ keys = ', '.join(keys)
+ module = ', '.join(model)
+ raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, please install %s module") %(keys,module,module))
url = self.parse_valid_url(context)
context.update({'url': url})
imp = sugar_import(self, cr, uid, context.get('instance_name'), "import_sugarcrm", [context.get('email_user')], context)
imp.set_table_list(keys)
imp.start()
-
obj_model = self.pool.get('ir.model.data')
model_data_ids = obj_model.search(cr,uid,[('model','=','ir.ui.view'),('name','=','import.message.form')])
resource_id = obj_model.read(cr, uid, model_data_ids, fields=['res_id'])
@@ -1092,4 +1128,5 @@ class import_sugarcrm(osv.osv):
'target': 'new',
}
+
import_sugarcrm()
diff --git a/addons/import_sugarcrm/import_sugarcrm_view.xml b/addons/import_sugarcrm/import_sugarcrm_view.xml
index 350b35a128d..f94101872bb 100644
--- a/addons/import_sugarcrm/import_sugarcrm_view.xml
+++ b/addons/import_sugarcrm/import_sugarcrm_view.xml
@@ -74,8 +74,8 @@
-
+
diff --git a/addons/import_sugarcrm/wizard/import_message_view.xml b/addons/import_sugarcrm/wizard/import_message_view.xml
index ecc5d5d7af0..b21d1440862 100644
--- a/addons/import_sugarcrm/wizard/import_message_view.xml
+++ b/addons/import_sugarcrm/wizard/import_message_view.xml
@@ -9,7 +9,7 @@
form
From 60dd4801525c7db0b9b825070dfabe7995724bd0 Mon Sep 17 00:00:00 2001
From: "Sanjay Gohel (Open ERP)" <>
Date: Fri, 8 Jul 2011 12:46:11 +0530
Subject: [PATCH 2/5] [imp]:finilise correction
bzr revid: sanjay_gohel_open_erp-20110708071611-mwrga9ntd4c15f0o
---
addons/import_sugarcrm/__openerp__.py | 2 +-
addons/import_sugarcrm/import_sugarcrm.py | 67 ++++++++++++-----------
2 files changed, 37 insertions(+), 32 deletions(-)
diff --git a/addons/import_sugarcrm/__openerp__.py b/addons/import_sugarcrm/__openerp__.py
index 38d7875d43a..ad6f9755b1e 100644
--- a/addons/import_sugarcrm/__openerp__.py
+++ b/addons/import_sugarcrm/__openerp__.py
@@ -27,7 +27,7 @@
"Contacts", "Employees", Meetings, Phonecalls, Emails, and Project, Project Tasks Data into OpenERP Module.""",
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
- 'depends': ['import_base'],
+ 'depends': ['import_base','crm','hr'],
'init_xml': [],
'update_xml': ["wizard/import_message_view.xml",
"import_sugarcrm_view.xml"],
diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py
index 9a64dbd21de..3e39f34bfeb 100644
--- a/addons/import_sugarcrm/import_sugarcrm.py
+++ b/addons/import_sugarcrm/import_sugarcrm.py
@@ -169,7 +169,7 @@ class sugar_import(import_framework):
def get_document_mapping(self):
return {
'model' : 'ir.attachment',
- 'dependencies' : [self.TABLE_USER, self.TABLE_ACCOUNT,self.TABLE_CONTACT, self.TABLE_OPPORTUNITY, self.TABLE_CASE, self.TABLE_BUG],
+ 'dependencies' : [self.TABLE_USER],
'hook' : self.import_document,
'map' : {
'name':'document_name',
@@ -205,7 +205,7 @@ class sugar_import(import_framework):
def get_email_mapping(self):
return {
'model' : 'mailgate.message',
- 'dependencies' : [self.TABLE_USER, self.TABLE_PROJECT, self.TABLE_PROJECT_TASK, self.TABLE_ACCOUNT, self.TABLE_CONTACT, self.TABLE_LEAD, self.TABLE_OPPORTUNITY, self.TABLE_MEETING, self.TABLE_CALL],
+ 'dependencies' : [self.TABLE_USER, self.TABLE_ACCOUNT, self.TABLE_CONTACT, self.TABLE_LEAD, self.TABLE_OPPORTUNITY, self.TABLE_MEETING, self.TABLE_CALL],
'hook' : self.import_email,
'map' : {'name':'name',
'history' : const("1"),
@@ -951,21 +951,41 @@ class import_sugarcrm(osv.osv):
def _get_email_id(self, cr, uid, context=None):
return self.pool.get('res.users').browse(cr, uid, uid, context=context).user_email
-
+
+ def get_all(self, cr, uid,model, context=None):
+ obj_module = self.pool.get('ir.module.module')
+ module_id = obj_module.search(cr, uid, [('name', '=', model)])
+ if module_id:
+ for id in module_id:
+ module_state = obj_module.browse(cr, uid, id).state
+ if module_state == 'installed':
+ return True
+ else:
+ return False
+ return True
+
+ def _get_project(self, cr, uid, context=None):
+ return self.get_all(cr,uid,'project',context=context)
+
+ def _get_crm_claim(self, cr, uid, context=None):
+ return self.get_all(cr,uid,'crm_claim',context=context)
+
+ def _get_project_issue(self, cr, uid, context=None):
+ return self.get_all(cr,uid,'project_issue',context=context)
_defaults = {#to be set to true, but easier for debugging
- 'opportunity': False,
+ 'opportunity': True,
'contact' : True,
'account' : True,
- 'employee' : False,
- 'meeting' : False,
- 'call' : False,
- 'claim' : False,
- 'email_history' : False,
- 'project' : False,
- 'project_task': False,
- 'bug': False,
- 'document': False,
+ 'employee' : True,
+ 'meeting' : True,
+ 'call' : True,
+ 'claim' : _get_crm_claim,
+ 'email_history' : True,
+ 'project' : _get_project,
+ 'project_task': _get_project,
+ 'bug': _get_project_issue,
+ 'document': True,
'instance_name': 'sugarcrm',
'email_from': _get_email_id,
'username' : 'admin',
@@ -1015,7 +1035,6 @@ class import_sugarcrm(osv.osv):
list = []
for current in self.browse(cr, uid, ids, context):
context.update({'username': current.username, 'password': current.password, 'url': current.url, 'email_user': current.email_from or False, 'instance_name': current.instance_name or False})
-
if current.contact:
key_list.append('Contacts')
if current.account:
@@ -1023,30 +1042,19 @@ class import_sugarcrm(osv.osv):
if current.opportunity:
key_list.append('Leads')
key_list.append('Opportunities')
- list.append('crm')
- list.append('hr')
if current.employee:
key_list.append('Employees')
- list.append('hr')
if current.meeting:
key_list.append('Meetings')
- list.append('crm')
- list.append('hr')
if current.call:
key_list.append('Calls')
- list.append('crm')
- list.append('hr')
if current.claim:
key_list.append('Cases')
- list.append('crm')
list.append('crm_claim')
- list.append('hr')
if current.email_history:
key_list.append('Emails')
key_list.append('Notes')
- list.append('crm')
list.append('project')
- list.append('hr')
if current.project:
key_list.append('Project')
list.append('project')
@@ -1058,10 +1066,6 @@ class import_sugarcrm(osv.osv):
list.append('project_issue')
if current.document:
key_list.append('Documents')
- list.append('crm')
- list.append('crm_claim')
- list.append('project_issue')
- list.append('project')
return key_list,list
@@ -1092,8 +1096,7 @@ class import_sugarcrm(osv.osv):
'res_id': new_create_id,
'type': 'ir.actions.act_window',
}
-
-
+
def import_all(self, cr, uid, ids, context=None):
# """Import all sugarcrm data into openerp module"""
@@ -1106,8 +1109,10 @@ class import_sugarcrm(osv.osv):
module_id = obj_module.search(cr, uid, [('name', 'in', model)])
if module_id:
for id in module_id:
+ k = obj_module.read(cr, uid, id)
module_state = obj_module.browse(cr, uid, id).state
if module_state == 'uninstalled':
+ k = obj_module.read(cr, uid, id)
keys = ', '.join(keys)
module = ', '.join(model)
raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, please install %s module") %(keys,module,module))
From a8137d5f7f7e3e9c814611599d8479df27557096 Mon Sep 17 00:00:00 2001
From: "Sanjay Gohel (Open ERP)" <>
Date: Fri, 8 Jul 2011 15:08:48 +0530
Subject: [PATCH 3/5] [imp]:minor changes
bzr revid: sanjay_gohel_open_erp-20110708093848-c6xcpqeqkzv1b0g8
---
addons/import_sugarcrm/import_sugarcrm.py | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py
index 3e39f34bfeb..b84fd590b65 100644
--- a/addons/import_sugarcrm/import_sugarcrm.py
+++ b/addons/import_sugarcrm/import_sugarcrm.py
@@ -1080,10 +1080,21 @@ class import_sugarcrm(osv.osv):
return True
def import_from_scheduler_all(self, cr, uid, ids, context=None):
- keys = self.get_key(cr, uid, ids, context)
-
+ keys, module_list = self.get_key(cr, uid, ids, context)
+ set_list = set(module_list)
+ model = list(set_list)
if not keys:
raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
+ obj_module = self.pool.get('ir.module.module')
+ module_id = obj_module.search(cr, uid, [('name', 'in', model)])
+ if module_id:
+ for id in module_id:
+ module_state = obj_module.browse(cr, uid, id).state
+ if module_state == 'uninstalled':
+ keys = ', '.join(keys)
+ module = ', '.join(model)
+ raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, please install %s module") %(keys,module,module))
+
cron_obj = self.pool.get('ir.cron')
url = self.parse_valid_url(context)
args = (keys,context.get('email_user'), context.get('instance_name'), url, context.get('username'), context.get('password') )
@@ -1109,10 +1120,8 @@ class import_sugarcrm(osv.osv):
module_id = obj_module.search(cr, uid, [('name', 'in', model)])
if module_id:
for id in module_id:
- k = obj_module.read(cr, uid, id)
module_state = obj_module.browse(cr, uid, id).state
if module_state == 'uninstalled':
- k = obj_module.read(cr, uid, id)
keys = ', '.join(keys)
module = ', '.join(model)
raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, please install %s module") %(keys,module,module))
From aa02e089f4ef72b52151f20cdf68b4c2dedf0411 Mon Sep 17 00:00:00 2001
From: "Sanjay Gohel (Open ERP)"
Date: Tue, 12 Jul 2011 12:40:15 +0530
Subject: [PATCH 4/5] [imp]:make correction
bzr revid: sgo@tinyerp.com-20110712071015-sl4aaygkirn6p3yh
---
addons/import_sugarcrm/import_sugarcrm.py | 37 +++++++++--------------
1 file changed, 14 insertions(+), 23 deletions(-)
diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py
index b84fd590b65..f49e6082dfe 100644
--- a/addons/import_sugarcrm/import_sugarcrm.py
+++ b/addons/import_sugarcrm/import_sugarcrm.py
@@ -955,14 +955,15 @@ class import_sugarcrm(osv.osv):
def get_all(self, cr, uid,model, context=None):
obj_module = self.pool.get('ir.module.module')
module_id = obj_module.search(cr, uid, [('name', '=', model)])
+ flag = False
if module_id:
for id in module_id:
module_state = obj_module.browse(cr, uid, id).state
if module_state == 'installed':
- return True
+ flag = True
else:
- return False
- return True
+ flag = False
+ return flag
def _get_project(self, cr, uid, context=None):
return self.get_all(cr,uid,'project',context=context)
@@ -1085,16 +1086,11 @@ class import_sugarcrm(osv.osv):
model = list(set_list)
if not keys:
raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
- obj_module = self.pool.get('ir.module.module')
- module_id = obj_module.search(cr, uid, [('name', 'in', model)])
- if module_id:
- for id in module_id:
- module_state = obj_module.browse(cr, uid, id).state
- if module_state == 'uninstalled':
- keys = ', '.join(keys)
- module = ', '.join(model)
- raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, please install %s module") %(keys,module,module))
-
+ for module in model:
+ state = self.get_all(cr,uid,module,context=context)
+ if state == False:
+ keys = ', '.join(keys)
+ raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, Please install %s module") %(keys,module,module))
cron_obj = self.pool.get('ir.cron')
url = self.parse_valid_url(context)
args = (keys,context.get('email_user'), context.get('instance_name'), url, context.get('username'), context.get('password') )
@@ -1116,15 +1112,11 @@ class import_sugarcrm(osv.osv):
model = list(set_list)
if not keys:
raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
- obj_module = self.pool.get('ir.module.module')
- module_id = obj_module.search(cr, uid, [('name', 'in', model)])
- if module_id:
- for id in module_id:
- module_state = obj_module.browse(cr, uid, id).state
- if module_state == 'uninstalled':
- keys = ', '.join(keys)
- module = ', '.join(model)
- raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, please install %s module") %(keys,module,module))
+ for module in model:
+ state = self.get_all(cr,uid,module,context=context)
+ if state == False:
+ keys = ', '.join(keys)
+ raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, Please install %s module") %(keys,module,module))
url = self.parse_valid_url(context)
context.update({'url': url})
imp = sugar_import(self, cr, uid, context.get('instance_name'), "import_sugarcrm", [context.get('email_user')], context)
@@ -1142,5 +1134,4 @@ class import_sugarcrm(osv.osv):
'target': 'new',
}
-
import_sugarcrm()
From 23b3ecc1984f189eb0a4ec07d1f9b78da485bb01 Mon Sep 17 00:00:00 2001
From: "Sanjay Gohel (Open ERP)"
Date: Tue, 12 Jul 2011 17:31:19 +0530
Subject: [PATCH 5/5] [IMP]:make changes
bzr revid: sgo@tinyerp.com-20110712120119-4ajyu753ewkfpheq
---
addons/import_sugarcrm/import_sugarcrm.py | 32 +++++++++++------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py
index f49e6082dfe..bf008ed9c00 100644
--- a/addons/import_sugarcrm/import_sugarcrm.py
+++ b/addons/import_sugarcrm/import_sugarcrm.py
@@ -982,7 +982,7 @@ class import_sugarcrm(osv.osv):
'meeting' : True,
'call' : True,
'claim' : _get_crm_claim,
- 'email_history' : True,
+ 'email_history' : _get_project,
'project' : _get_project,
'project_task': _get_project,
'bug': _get_project_issue,
@@ -1033,7 +1033,7 @@ class import_sugarcrm(osv.osv):
if not context:
context = {}
key_list = []
- list = []
+ module = {}
for current in self.browse(cr, uid, ids, context):
context.update({'username': current.username, 'password': current.password, 'url': current.url, 'email_user': current.email_from or False, 'instance_name': current.instance_name or False})
if current.contact:
@@ -1051,23 +1051,23 @@ class import_sugarcrm(osv.osv):
key_list.append('Calls')
if current.claim:
key_list.append('Cases')
- list.append('crm_claim')
+ module.update({'Cases':'crm_claim'})
if current.email_history:
key_list.append('Emails')
key_list.append('Notes')
- list.append('project')
+ module.update({'Email and Note':'project'})
if current.project:
key_list.append('Project')
- list.append('project')
+ module.update({'Project':'project'})
if current.project_task:
key_list.append('ProjectTask')
- list.append('project')
+ module.update({'ProjectTask':'project'})
if current.bug:
key_list.append('Bugs')
- list.append('project_issue')
+ module.update({'Bugs':'project_issue'})
if current.document:
key_list.append('Documents')
- return key_list,list
+ return key_list,module
def do_import_all(self, cr, uid, *args):
@@ -1082,14 +1082,14 @@ class import_sugarcrm(osv.osv):
def import_from_scheduler_all(self, cr, uid, ids, context=None):
keys, module_list = self.get_key(cr, uid, ids, context)
- set_list = set(module_list)
- model = list(set_list)
if not keys:
raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
- for module in model:
+ key_list = module_list.keys()
+ for module in key_list :
+ module = module_list[module]
state = self.get_all(cr,uid,module,context=context)
if state == False:
- keys = ', '.join(keys)
+ keys = ', '.join(key_list)
raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, Please install %s module") %(keys,module,module))
cron_obj = self.pool.get('ir.cron')
url = self.parse_valid_url(context)
@@ -1108,14 +1108,14 @@ class import_sugarcrm(osv.osv):
# """Import all sugarcrm data into openerp module"""
keys, module_list = self.get_key(cr, uid, ids, context)
- set_list = set(module_list)
- model = list(set_list)
if not keys:
raise osv.except_osv(_('Warning !'), _('Select Module to Import.'))
- for module in model:
+ key_list = module_list.keys()
+ for module in key_list :
+ module = module_list[module]
state = self.get_all(cr,uid,module,context=context)
if state == False:
- keys = ', '.join(keys)
+ keys = ', '.join(key_list)
raise osv.except_osv(_('Error !!'), _("%s data required %s Module to be installed, Please install %s module") %(keys,module,module))
url = self.parse_valid_url(context)
context.update({'url': url})