我正在尝试使用OpenErp的导入-导出工具将订单从外部Pos系统导入到OpenErp 6.1中的Pos-backend。我使用导入兼容模型,所有订单都可以导入,没有任何问题(订单,付款,日记帐,帐户,即完成的订单)。
在POS订单列表中,导入订单的状态为NEW。对于要由系统处理的导入订单并将订单状态更改为已支付,您可以手动删除订单付款,并对每个订单执行MAke付款。导入工具不会自动处理导入的订单。有没有办法批量处理导入的订单?对于这种情况,有什么解决方案吗?
发布于 2013-01-21 13:07:20
您可以创建脚本以将数据从一个数据库导入到另一个数据库。
import xmlrpclib
from osv import osv, fields
#To create connection to the database from where you want to import data
def connect_server(self, cr, uid, ids, context=None):
sock_common = xmlrpclib.ServerProxy ('http://localhost:8070/xmlrpc/common', encoding="UTF-8")
remote_uid = sock_common.login(database_name, user_name, password)
sock = xmlrpclib.ServerProxy('http://localhost:8070/xmlrpc/object', encoding="UTF-8")
return (sock, remote_uid)
#Fetch data from another database
def get_data(cr, uid, ids, context=None):
sock, remote_uid = self.connect_server(cr, uid, ids, context=context)
pos_order_obj = self.pool.get('pos.order')
pos_order_ids = sock.execute(db_name, remote_uid, password, pos_order_obj._name, 'search', [])
for pos in in sock.execute(db_name, remote_uid, password, pos_order_obj._name, 'read', pos_order_ids, []):
#fetch the data and create record in your current database.
new_pos_val = {'name': pos['name'],}
pos_order_obj.create(cr, uid, new_pos_val, context=context)
return True希望它能解决你的问题。
https://stackoverflow.com/questions/14423383
复制相似问题