diff options
| author | tfr@openerp.com <> | 2011-07-01 11:42:50 +0200 |
|---|---|---|
| committer | tfr@openerp.com <> | 2011-07-01 11:42:50 +0200 |
| commit | f9b1a4ebeab78ad8dc9bc38e9c77ff724250bf6e (patch) | |
| tree | 0cfcf5fc5a4dbe73bd5709ae8f537fd10a28f8d3 /addons/import_base/mapper.py | |
| parent | a843faf44cc8fada36fb483de831569fb961d33f (diff) | |
[MERGE] All modification from all import_project
bzr revid: tfr@openerp.com-20110701094250-ce3wn9pjku3l3blq
Diffstat (limited to 'addons/import_base/mapper.py')
| -rw-r--r-- | addons/import_base/mapper.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/addons/import_base/mapper.py b/addons/import_base/mapper.py index 582a45ee4fb..4f34712f7ae 100644 --- a/addons/import_base/mapper.py +++ b/addons/import_base/mapper.py @@ -57,7 +57,7 @@ class concat(mapper): self.delimiter = delimiter and delimiter.get('delimiter', ' ') or ' ' def __call__(self, external_values): - return self.delimiter.join(map(lambda x : external_values.get(x,''), self.arg)) + return self.delimiter.join(map(lambda x : str(external_values.get(x,'')), self.arg)) class ppconcat(mapper): """ @@ -71,7 +71,7 @@ class ppconcat(mapper): self.delimiter = delimiter and delimiter.get('delimiter', ' ') or '\n\n' def __call__(self, external_values): - return self.delimiter.join(map(lambda x : x + ": " + external_values.get(x,''), self.arg)) + return self.delimiter.join(map(lambda x : x + ": " + str(external_values.get(x,'')), self.arg)) class const(mapper): """ @@ -94,12 +94,16 @@ class value(mapper): and don't care about the name of the field call(self.method, value('field1')) """ - def __init__(self, val, default=''): + def __init__(self, val, default='', fallback=False): self.val = val self.default = default + self.fallback = fallback def __call__(self, external_values): - return external_values.get(self.val, self.default) + val = external_values.get(self.val, self.default) + if self.fallback and (not val or val == self.default): + val = external_values.get(self.fallback, self.default) + return val class map_val(mapper): """ @@ -163,5 +167,3 @@ class call(mapper): else: args.append(arg) return self.fun(external_values, *args) - -
\ No newline at end of file |
