[6.1]import_sugarcrm column 'name' column too short

Bug #1080842 reported by Étienne Beaudry Auger
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Odoo Addons (MOVED TO GITHUB)
New
Undecided
Étienne Beaudry Auger

Bug Description

--LOG--
2012-11-19 18:41:30,880 18841 INFO ? import_sugarcrm: Importing Users into res.users
2012-11-19 19:06:54,367 18841 INFO ? import_sugarcrm: Importing Accounts into res.partner
2012-11-19 19:07:30,956 18841 ERROR ? openerp.sql_db: bad query: insert into "res_partner_address" (id,"city","fax","name","zip","type","company_id","phone","street","active","location_id",create_uid,create_date) values (1234,'Québec','888 888 8888','XXXXXXXXXX XXXXX Faculté d''aménagement, d''architecture et des arts visuels','G1G 1G1','invoice',1,'888 888 8888','Édifice du vieux séminaire local 1234','True',1998,1,(now() at time zone 'UTC'))
Traceback (most recent call last):
  File "/home/etienne/projects/sfl/openerp/server/openerp/sql_db.py", line 212, in execute
    res = self._obj.execute(query, params)
DataError: value too long for type character varying(64)

2012-11-19 19:07:30,974 18841 ERROR ? openerp.sql_db: bad query: SELECT "res_partner_address".id FROM "res_partner_address" WHERE ((res_partner_address."active" = 'True') AND res_partner_address.id = 0) ORDER BY type, name
Traceback (most recent call last):
  File "/home/etienne/projects/sfl/openerp/server/openerp/sql_db.py", line 212, in execute
    res = self._obj.execute(query, params)
InternalError: current transaction is aborted, commands ignored until end of transaction block

Traceback (most recent call last):
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 384, in run
    res = self._resolve_dependencies(self.get_mapping()[table].get('dependencies', []), imported)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 416, in _resolve_dependencies
    r = self._import_table(dependency)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 155, in _import_table
    return self._save_data(model, dict(map), final_data, table)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 185, in _save_data
    fields, values = self._fields_mapp(data, mapping, table)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 242, in _fields_mapp
    value = val(dict(dict_sugar))
  File "/home/etienne/projects/sfl/openerp/addons/import_sugarcrm/import_sugarcrm.py", line 792, in get_partner_address
    id = self.get_address_type(val, type_value)
  File "/home/etienne/projects/sfl/openerp/addons/import_sugarcrm/import_sugarcrm.py", line 785, in get_address_type
    return self.import_object_mapping(map_partner_address, val, 'res.partner.address', self.TABLE_CONTACT, val['id_new'], self.DO_NOT_FIND_DOMAIN)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 304, in import_object_mapping
    return self.import_object(fields, datas, model, table, name, domain_search)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 330, in import_object
    xml_ref = self.mapped_id_if_exist(model, domain_search, table, name)
  File "/home/etienne/projects/sfl/openerp/addons/import_base/import_framework.py", line 348, in mapped_id_if_exist
    ids = obj.search(self.cr, self.uid, domain, context=self.context)
  File "/home/etienne/projects/sfl/openerp/server/openerp/osv/orm.py", line 2245, in search
    return self._search(cr, user, args, offset=offset, limit=limit, order=order, context=context, count=count)
  File "/home/etienne/projects/sfl/openerp/server/openerp/osv/orm.py", line 4588, in _search
    cr.execute('SELECT "%s".id FROM ' % self._table + from_clause + where_str + order_by + limit_str + offset_str, where_clause_params)
  File "/home/etienne/projects/sfl/openerp/server/openerp/sql_db.py", line 152, in wrapper
    return f(self, *args, **kwargs)
  File "/home/etienne/projects/sfl/openerp/server/openerp/sql_db.py", line 212, in execute
    res = self._obj.execute(query, params)
InternalError: current transaction is aborted, commands ignored until end of transaction block
--LOG--
if you can seee 'Faculté d''aménagement, d''architecture et des arts visuels' is too long for 'name' column in res_partner_adress

Hi,

I try a full import from SugarCRM Version 6.3.0 (build 7004) to OpenERP 6.1.

The original column size in 'res_partner_adress':

  name character varying(64), -- Contact Name

Should be in SQL:

  name character varying(128), -- Contact Name

I don't know if others columns can be affected by this error during the importation process.

A code review would be revelant.

description: updated
summary: - import_sugarcrm column 'name' column too short
+ [6.1]import_sugarcrm column 'name' column too short
Changed in openobject-addons:
assignee: nobody → Étienne Beaudry Auger (etienne-bauger)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.