[FIX] import/export fully working through web interface
bzr revid: fp@tinyerp.com-20111228205757-vxdw1j6gcsyvjj3m
This commit is contained in:
parent
ae92ec17ea
commit
91cafbee7e
|
@ -1073,18 +1073,7 @@ class BaseModel(object):
|
|||
else:
|
||||
return False
|
||||
|
||||
lines = []
|
||||
data = map(lambda x: '', range(len(fields)))
|
||||
done = []
|
||||
for fpos in range(len(fields)):
|
||||
f = fields[fpos]
|
||||
if f:
|
||||
r = row
|
||||
i = 0
|
||||
while i < len(f):
|
||||
if f[i] == '.id':
|
||||
r = r['id']
|
||||
elif f[i] == 'id':
|
||||
def _get_xml_id(self, cr, uid, r):
|
||||
model_data = self.pool.get('ir.model.data')
|
||||
data_ids = model_data.search(cr, uid, [('model', '=', r._table_name), ('res_id', '=', r['id'])])
|
||||
if len(data_ids):
|
||||
|
@ -1107,10 +1096,25 @@ class BaseModel(object):
|
|||
'module': '__export__',
|
||||
})
|
||||
r = '__export__.'+n
|
||||
return r
|
||||
|
||||
lines = []
|
||||
data = map(lambda x: '', range(len(fields)))
|
||||
done = []
|
||||
for fpos in range(len(fields)):
|
||||
f = fields[fpos]
|
||||
if f:
|
||||
r = row
|
||||
i = 0
|
||||
while i < len(f):
|
||||
cols = False
|
||||
if f[i] == '.id':
|
||||
r = r['id']
|
||||
elif f[i] == 'id':
|
||||
r = _get_xml_id(self, cr, uid, r)
|
||||
else:
|
||||
r = r[f[i]]
|
||||
# To display external name of selection field when its exported
|
||||
cols = False
|
||||
if f[i] in self._columns.keys():
|
||||
cols = self._columns[f[i]]
|
||||
elif f[i] in self._inherit_fields.keys():
|
||||
|
@ -1135,8 +1139,12 @@ class BaseModel(object):
|
|||
if [x for x in fields2 if x]:
|
||||
break
|
||||
done.append(fields2)
|
||||
if cols and cols._type=='many2many' and len(fields[fpos])>(i+1) and (fields[fpos][i+1]=='id'):
|
||||
data[fpos] = ','.join([_get_xml_id(self, cr, uid, x) for x in r])
|
||||
break
|
||||
|
||||
for row2 in r:
|
||||
lines2 = self.__export_row(cr, uid, row2, fields2,
|
||||
lines2 = row2._model.__export_row(cr, uid, row2, fields2,
|
||||
context)
|
||||
if first:
|
||||
for fpos2 in range(len(fields)):
|
||||
|
|
Loading…
Reference in New Issue