diff --git a/addons/import_sugarcrm/__openerp__.py b/addons/import_sugarcrm/__openerp__.py
index 01abb7133bf..36d58ddb46c 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': ['crm', 'hr', 'project', 'project_timesheet'],
+ 'depends': ['project_timesheet', 'project_issue'],
'init_xml': [],
'update_xml': ["wizard/sugarcrm_login_view.xml",
"wizard/import_message_view.xml",
diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py
index 13a830c4e45..6804d92d2b3 100644
--- a/addons/import_sugarcrm/import_sugarcrm.py
+++ b/addons/import_sugarcrm/import_sugarcrm.py
@@ -90,17 +90,18 @@ def import_partner_address(sugar_obj, cr, uid, context=None):
'street': 'primary_address_street',
'zip': 'primary_address_postalcode',
'city': 'primary_address_city',
- 'country_id/.id': 'country_id/.id',
- 'state_id/.id': 'state_id/id'
+ 'country_id.id': 'country_id.id',
+ 'state_id.id': 'state_id.id'
}
address_obj = sugar_obj.pool.get('res.partner.address')
PortType, sessionid = sugar.login(context.get('username', ''), context.get('password', ''), context.get('url',''))
sugar_data = sugar.search(PortType, sessionid, 'Contacts')
for val in sugar_data:
- country_id = get_all_countries(sugar_obj, cr, uid, val.get('primary_address_country'), context)
- state = get_all_states(sugar_obj,cr, uid, val.get('primary_address_state'), country_id, context)
- val['country_id/.id'] = country_id
- val['state_id/.id'] = state
+ if val.get('primary_address_country'):
+ country_id = get_all_countries(sugar_obj, cr, uid, val.get('primary_address_country'), context)
+ state = get_all_states(sugar_obj,cr, uid, val.get('primary_address_state'), country_id, context)
+ val['country_id.id'] = country_id
+ val['state_id.id'] = state
fields, datas = sugarcrm_fields_mapping.sugarcrm_fields_mapp(val, map_partner_address)
address_obj.import_data(cr, uid, fields, [datas], mode='update', current_module='sugarcrm_import', noupdate=True, context=context)
return True
@@ -211,10 +212,11 @@ def get_user_address(sugar_obj, cr, uid, val, context=None):
'zip': 'address_postalcode',
}
address_ids = address_obj.search(cr, uid, [('name', 'like', val.get('first_name') +' '+ val.get('last_name'))])
- country_id = get_all_countries(sugar_obj, cr, uid, val.get('address_country'), context)
- state_id = get_all_states(sugar_obj, cr, uid, val.get('address_state'), country_id, context)
- val['country_id'] = country_id
- val['state_id'] = state_id
+ if val.get('address_country'):
+ country_id = get_all_countries(sugar_obj, cr, uid, val.get('address_country'), context)
+ state_id = get_all_states(sugar_obj, cr, uid, val.get('address_state'), country_id, context)
+ val['country_id'] = country_id
+ val['state_id'] = state_id
fields, datas = sugarcrm_fields_mapping.sugarcrm_fields_mapp(val, map_user_address)
dict_val = dict(zip(fields,datas))
if address_ids:
@@ -240,10 +242,11 @@ def get_address_type(sugar_obj, cr, uid, val, map_partner_address, type, context
'type': 'type',
})
val['type'] = type
- country_id = get_all_countries(sugar_obj, cr, uid, val.get(type_address +'_address_country'), context)
- state = get_all_states(sugar_obj, cr, uid, val.get(type_address +'_address_state'), country_id, context)
- val['country_id'] = country_id
- val['state_id'] = state
+ if val.get(type_address +'_address_country'):
+ country_id = get_all_countries(sugar_obj, cr, uid, val.get(type_address +'_address_country'), context)
+ state = get_all_states(sugar_obj, cr, uid, val.get(type_address +'_address_state'), country_id, context)
+ val['country_id'] = country_id
+ val['state_id'] = state
fields, datas = sugarcrm_fields_mapping.sugarcrm_fields_mapp(val, map_partner_address)
#Convert To list into Dictionary(Key, val). value pair.
dict_val = dict(zip(fields,datas))
@@ -705,7 +708,7 @@ def get_contact_title(sugar_obj, cr, uid, salutation, domain, context=None):
def import_emails(sugar_obj, cr, uid, context=None):
if not context:
- context=None
+ context= {}
map_emails = {'id': 'id',
'name':'name',
'date':'date_sent',
@@ -839,7 +842,6 @@ def import_leads(sugar_obj, cr, uid, context=None):
val['state'] = get_lead_state(sugar_obj, cr, uid, val,context)
fields, datas = sugarcrm_fields_mapping.sugarcrm_fields_mapp(val, map_lead)
lead_obj.import_data(cr, uid, fields, [datas], mode='update', current_module='sugarcrm_import', noupdate=True, context=context)
- import_history(sugar_obj, cr, uid, val.get('id'), 'crm.lead', context)
return True
def get_opportunity_contact(sugar_obj,cr,uid, PortType, sessionid, val, partner_xml_id, context=None):
@@ -897,7 +899,6 @@ def import_opportunities(sugar_obj, cr, uid, context=None):
val['stage_id.id'] = stage_id
fields, datas = sugarcrm_fields_mapping.sugarcrm_fields_mapp(val, map_opportunity)
lead_obj.import_data(cr, uid, fields, [datas], mode='update', current_module='sugarcrm_import', noupdate=True, context=context)
- import_history(sugar_obj, cr, uid, val.get('id'), 'crm.lead', context)
return True
MAP_FIELDS = {'Opportunities': #Object Mapping name
diff --git a/addons/import_sugarcrm/import_sugarcrm_view.xml b/addons/import_sugarcrm/import_sugarcrm_view.xml
index 9c62c413ea9..8fb7be8c408 100644
--- a/addons/import_sugarcrm/import_sugarcrm_view.xml
+++ b/addons/import_sugarcrm/import_sugarcrm_view.xml
@@ -9,20 +9,22 @@
form