diff --git a/addons/point_of_sale/point_of_sale.py b/addons/point_of_sale/point_of_sale.py index 60ce7b7bc0c..0810bf459cf 100644 --- a/addons/point_of_sale/point_of_sale.py +++ b/addons/point_of_sale/point_of_sale.py @@ -22,6 +22,7 @@ import time from datetime import datetime from dateutil.relativedelta import relativedelta +import logging import netsvc from osv import fields, osv @@ -29,6 +30,8 @@ from tools.translate import _ from decimal import Decimal import decimal_precision as dp +_logger = logging.getLogger(__name__) + class pos_config_journal(osv.osv): """ Point of Sale journal configuration""" _name = 'pos.config.journal' @@ -46,6 +49,13 @@ class pos_order(osv.osv): _name = "pos.order" _description = "Point of Sale" _order = "id desc" + + def create_from_ui(self, cr, uid, orders, context=None): + #_logger.info("orders: %r", orders) + list = [] + for order in orders: + list.append(self.create(cr, uid, order, context)) + return list def unlink(self, cr, uid, ids, context=None): for rec in self.browse(cr, uid, ids, context=context): diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js index 3a4f7299713..9b46788a02d 100644 --- a/addons/point_of_sale/static/src/js/pos.js +++ b/addons/point_of_sale/static/src/js/pos.js @@ -135,11 +135,10 @@ openerp.point_of_sale = function(db) { if (ops.length === 0) return $.when(); var op = ops[0]; - var dataSet = new db.web.DataSet(this, 'pos.order', null); /* we prevent the default error handler and assume errors * are a normal use case, except we stop the current iteration */ - return dataSet.create(op).fail(function(unused, event) { + return new db.web.Model("pos.order").get_func("create_from_ui")([op]).fail(function(unused, event) { event.preventDefault(); }).pipe(_.bind(function() { console.debug('saved 1 record');