diff --git a/sao/src/common.js b/sao/src/common.js index 06abd23700..cd26b12b19 100644 --- a/sao/src/common.js +++ b/sao/src/common.js @@ -1576,6 +1576,7 @@ 'multiselection': complete_selection, 'reference': complete_reference, 'datetime': complete_datetime, + 'timestamp': complete_datetime, 'date': complete_date, 'time': complete_time }; @@ -1853,8 +1854,10 @@ operator = '='; } } - if (~['integer', 'float', 'numeric', 'datetime', 'date', - 'time'].indexOf(field.type)) { + if (~[ + 'integer', 'float', 'numeric', + 'datetime', 'timestamp', 'date', + 'time'].indexOf(field.type)) { if ((typeof value == 'string') && value.contains('..')) { var values = value.split('..', 2); var lvalue = this.convert_value(field, values[0], this.context); @@ -2086,6 +2089,7 @@ } } }; + converts.timestamp = converts.datetime; var func = converts[field.type]; if (func) { return func(); @@ -2202,6 +2206,7 @@ } } }; + converts.timestamp = converts.datetime; if (value instanceof Array) { return value.map(v => this.format_value(field, v)).join(';'); } else { diff --git a/tryton/tryton/common/domain_parser.py b/tryton/tryton/common/domain_parser.py index 52b729bc82..a29dd5e10a 100644 --- a/tryton/tryton/common/domain_parser.py +++ b/tryton/tryton/common/domain_parser.py @@ -298,6 +298,7 @@ def convert_value(field, value, context=None): 'multiselection': convert_selection, 'reference': convert_selection, 'datetime': convert_datetime, + 'timestamp': convert_datetime, 'date': convert_date, 'time': convert_time, 'timedelta': convert_timedelta, @@ -402,6 +403,7 @@ def format_value(field, value, target=None, context=None): 'multiselection': format_selection, 'reference': format_reference, 'datetime': format_datetime, + 'timestamp': format_datetime, 'date': format_date, 'time': format_time, 'timedelta': format_timedelta, @@ -465,6 +467,7 @@ def complete_value(field, value): 'multiselection': complete_selection, 'reference': complete_reference, 'datetime': complete_datetime, + 'timestamp': complete_datetime, 'date': complete_date, 'time': complete_time, } @@ -852,8 +855,9 @@ class DomainParser(object): operator = '!=' else: operator = '=' - if field['type'] in ('integer', 'float', 'numeric', - 'datetime', 'date', 'time'): + if field['type'] in { + 'integer', 'float', 'numeric', + 'datetime', 'timestamp', 'date', 'time'}: if isinstance(value, str) and '..' in value: lvalue, rvalue = value.split('..', 1) lvalue = convert_value(field, lvalue, self.context)