diff --git a/frepple/controllers/frepplexml.py b/frepple/controllers/frepplexml.py index b64c6a8d..ad6ff701 100644 --- a/frepple/controllers/frepplexml.py +++ b/frepple/controllers/frepplexml.py @@ -150,6 +150,7 @@ def xml(self, **kwargs): company=company_name, mode=int(kwargs.get("mode", 1)), timezone=kwargs.get("timezone", None), + delta=int(kwargs.get("delta", 999)), singlecompany=kwargs.get("singlecompany", "false").lower() == "true", version=version, diff --git a/frepple/controllers/outbound.py b/frepple/controllers/outbound.py index 3017cb53..7f45f155 100644 --- a/frepple/controllers/outbound.py +++ b/frepple/controllers/outbound.py @@ -61,9 +61,10 @@ def getData(self, model, search=[], order=None, fields=[], ids=None): if ids is not None: return self.env[model].browse(ids).read(fields) if ids else [] if order: - return self.env[model].search(search, order=order).read(fields) + return self.env[model].search_read( + domain=search, order=order, fields=fields) else: - return self.env[model].search(search).read(fields) + return self.env[model].search_read(domain=search, fields=fields) class XMLRPC_generator: @@ -661,7 +662,7 @@ def export_customers(self): first = True for i in self.generator.getData( "res.partner", - search=[("is_company", "=", True)], + search=[("customer_rank", ">", 0)], fields=["name"], ): if first: @@ -685,7 +686,7 @@ def export_suppliers(self): first = True for i in self.generator.getData( "res.partner", - search=[("is_company", "=", True)], + search=[("supplier_rank", ">", "0")], fields=["name"], ): if first: @@ -1594,10 +1595,10 @@ def export_salesorders(self): else "%s %d %d" % (i["order_id"][1], cnt, i["id"]) ), quoteattr(batch), - qty, + odoo.tools.float_round(qty,8) if odoo.tools.float_round(qty,8) > 0 else 0, due, priority, - j["picking_policy"] == "one" and qty or 0.0, + j["picking_policy"] == "one" and (odoo.tools.float_round(qty,8) if odoo.tools.float_round(qty,8) > 0 else 0) or 0.0, status, quoteattr(product["name"]), quoteattr(customer), @@ -1617,10 +1618,10 @@ def export_salesorders(self): ) % ( quoteattr(name), quoteattr(batch), - qty, + odoo.tools.float_round(qty,8) if odoo.tools.float_round(qty,8) > 0 else 0, due, priority, - j["picking_policy"] == "one" and qty or 0.0, + j["picking_policy"] == "one" and (odoo.tools.float_round(qty,8) if odoo.tools.float_round(qty,8) > 0 else 0) or 0.0, status, quoteattr(product["name"]), quoteattr(customer),