0

I spent more than three hours trying to understand how to create an order using Odoo 11 and Python with no luck.

The smallest example I came to is this:

uid = common.authenticate(db, username, password, {})
models = xmlrpclib.ServerProxy('{}/xmlrpc/2/object'.format(url))

order = models.execute_kw(db, uid, password, 'sale.order', 'create', {
     'name': 'new sale order',
})

But I get:

File "./conexion.py", line 29, in <module>
'name': 'new sale order',
File "/usr/lib/python2.7/xmlrpclib.py", line 1243, in __call__
return self.__send(self.__name, args)
File "/usr/lib/python2.7/xmlrpclib.py", line 1602, in __request
verbose=self.__verbose
File "/usr/lib/python2.7/xmlrpclib.py", line 1283, in request
return self.single_request(host, handler, request_body, verbose)
File "/usr/lib/python2.7/xmlrpclib.py", line 1316, in single_request
return self.parse_response(response)
File "/usr/lib/python2.7/xmlrpclib.py", line 1493, in parse_response
return u.close()
File "/usr/lib/python2.7/xmlrpclib.py", line 800, in close
raise Fault(**self._stack[0])
xmlrpclib.Fault: <Fault 2: ''>

What's wrong with my code?.

4

1 回答 1

0

有点晚了,但有人可能有用。要创建订单,您需要具有以下必填字段:

partner_id, pricelist_id and date_order (created by default)

就是这样:

models.execute (dbname, uid, pwd, 'sale.order', 'create', {'partner_id': 1, 'pricelist_id': 1})

这是您在 odoo 论坛中的问题的答案。

我希望这会有所帮助。

于 2018-04-04T15:08:50.227 回答