OpenERP 的XML-RPC的实例+many2many,one2many,many2one...
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
每当夏秋之交,我们都有展会,展会完后,都有很多的新的潜在客户要添加,我们收了一大堆名片,想入openERP还是需要一定时间的,而且名片的图片导入没有什么简洁的方法,所以我就想写个script来进行导入这些名片以及相关的客户信息。
XML-RPC是一个远程过程调用(remote procedure call,RPC)的分布式计算协议,通过XML将调用函数封装,并使用HTTP协议作为传送机制。
需求是这样的,想通过一个script来将一个excel表格的partner连同他们的联系人一起导入
sock.execute(DB, uid, USERPASS, ´res.partner´,´create´,value)
这句是向res.partner执行create的方法,value就是对应的参数
因为partner 和address的关系是one2many,在OpenERP的ORM里面可以直接添加,修改这些one2many,many2many和many2one的值有一个特殊的格式。
many2many
(0,0,{values}) 根据values里面的信息新建一个记录。
(1,ID,{values})更新id=ID的记录(写入values里面的数据)
(2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)
(3,ID) 切断主从数据的链接关系但是不删除这个数据
(4,ID) 为id=ID的数据添加主从链接关系。
(5) 删除所有的从数据的链接关系就是向所有的从数据调用(3,ID)
(6,0,[IDs]) 用IDs里面的记录替换原来的记录(就是先执行(5)再执行循环IDs执行(4,ID))
例子[(6, 0, [8, 5, 6, 4])] 设置 many2many to ids [8, 5, 6, 4]
one2many
(0, 0,{ values })根据values里面的信息新建一个记录。
(1,ID,{values}) 更新id=ID的记录(对id=ID的执行write 写入values里面的数据)
(2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)
例子:
[(0,0,{'field_name':field_value_record1,...}),(0,0,{'field_name':field_value_record})]
many2one的字段比较简单,直接填入已经存在的数据的id或者填入False删除原来的记录。
- OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one创建方式
- OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one创建方式
- OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one创建方式
- OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one创建方式
- OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one创建方式
- 在Perl中使用xml-rpc的实例
- 在Perl中使用xml-rpc的实例
- linux 下 rpc python 实例之使用XML-RPC进行远程文件共享
- 在Perl中使用xml-rpc的实例
- Odoo(OpenERP)开发实践:通过XML-RPC接口访问Odoo数据库
- 在Perl中使用xml-rpc的实例
- 使用xml-rpc调试openerp模块中的函数
- 在Perl中使用xml-rpc的实例
- apache的xml-rpc(Demo实例)
- [转]XML-RPC的HelloWorld实例
- 在Perl中使用xml-rpc的实例
- 在Perl中使用xml-rpc的实例
- XML-RPC 之 Apache XML-RPC 实例
- Hibernate中,One2Many和Many2One的双向映射关系的XML实现方式
- OpenERP-Java调用XML-RPC接口示例(Examples for calling XML-RPC interfaces by Java)