我们有一个OpenERP 7实例,我正在使用一个Odoo 8实例。这两个实例分别工作,但我想做一个Odoo模块,以便能够连接到OpenERP中的特定表/对象,并在需要时检索数据。它类似于迁移,但它不会是唯一必须执行的时间,因此,它必须是一个可执行代码。
有可能吗?你能给我一个关于这个解决方案的示例代码吗?
发布于 2016-10-22 00:31:10
如果您熟悉sql,可以在单独的游标对象上创建到数据库的连接并执行查询。您可以使用python库psycopg2
有一些odoo客户端库,比如erppeek,可以用来通过python环境与odoo交互。所以它可能是理想的。您可以通过创建一个erppeek客户端对象来创建到其他OpenERP实例的连接,然后可以使用与原生odoo非常相似的语法来查询数据库。下面是一个例子。
import erppeek
import logging
_logger = logging.getLogger(__name__)
password = "your_password"
server = "http://localhost:8069"
user = "your_user"
db = "your_db"
Client = erppeek.Client(server,db,user,password)
if Client:
Client.login(user,password)
partners = Client.browse([])
for partner in partners:
_logger.info("FOUND PARTNER: {}".format(partner.name))现在,您可以访问这些记录,并可以在odoo实例上随心所欲地处理它们。
还有在erppeek库中使用的xmlrpc。关于xmlrpc/jsonrpc的文档可以在Odoo的网站上找到。
https://stackoverflow.com/questions/40180797
复制相似问题