Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python OpenERP:通过XML-RPC进行应答模块配置_Python_Xml Rpc_Openerp - Fatal编程技术网

Python OpenERP:通过XML-RPC进行应答模块配置

Python OpenERP:通过XML-RPC进行应答模块配置,python,xml-rpc,openerp,Python,Xml Rpc,Openerp,我可以使用Python脚本中的XML-RPC轻松地在v6.1中安装新模块: response = sock.execute(db, uid, pwd, 'ir.module.module', 'button_immediate_install', module_ids) 有时响应只是False(例如edimodule),有时只是指示刷新web客户端(例如productmodule)。那很容易,我没事可做 但有时新安装的模块会要求客户端进行一些配置(例如,销售模块或其依赖项之一要求选择要导入的科

我可以使用Python脚本中的XML-RPC轻松地在v6.1中安装新模块:

response = sock.execute(db, uid, pwd, 'ir.module.module', 'button_immediate_install', module_ids)
有时响应只是
False
(例如
edi
module),有时只是指示刷新web客户端(例如
product
module)。那很容易,我没事可做


但有时新安装的模块会要求客户端进行一些配置(例如,
销售
模块或其依赖项之一要求选择要导入的科目表模板)。当这种情况发生时,响应是一个大字典,我可以猜测它询问我的值以及这些值的多个选项,但是我如何通过XML-RPC进行响应?

如果您想查看RPC请求和响应的详细内容,您可以在调试模式下运行服务器,并在
调度\u RPC()中设置断点
服务器/openerp/netsvc.py
中的函数,或者您可以将此行添加到配置文件中:

log_level = debug_rpc_answer
设置好后,您可以使用客户端安装模块,并查看它发送的值

值得一看您的日志记录选项。您可以在
netsvc.py
中的
init\u logger()
函数中看到它们。您可以使用
log\u level
选择几个预设选项,也可以使用
log\u handler
指定自己的选项


如果您正在编写OpenERP脚本,您可能会发现我们的。它读取一个配置文件,并负责为您连接和发送消息。

如果您想查看RPC请求和响应的详细内容,可以在调试模式下运行服务器,并在
server/openerp/netsvc.py
中的
dispatch\u RPC()
函数中设置断点,或者,您可以将此行添加到配置文件中:

log_level = debug_rpc_answer
设置好后,您可以使用客户端安装模块,并查看它发送的值

值得一看您的日志记录选项。您可以在
netsvc.py
中的
init\u logger()
函数中看到它们。您可以使用
log\u level
选择几个预设选项,也可以使用
log\u handler
指定自己的选项


如果您正在编写OpenERP脚本,您可能会发现我们的。它读取一个配置文件,并负责为您连接和发送消息。

如果其他人发现了这一点,我花了很长时间研究如何通过XML-RPC成功安装模块

以下是我的结论:

# A list of module ids to install:
module_ids = (
    59, #account_accountant
    104, # account_asset
    7, # account_voucher
    47, # crm
    23, # crm_todo
    119, # hr
    115, # hr_timesheet_sheet
    14, # knowledge
    191, # purchase
    175, # stock
)

#send request to server
response = sock.execute(dbname, uid, pwd, 'ir.module.module', 'button_immediate_install', module_ids)

如果其他人发现了这一点,我花了很长时间研究如何通过XML-RPC成功安装模块

以下是我的结论:

# A list of module ids to install:
module_ids = (
    59, #account_accountant
    104, # account_asset
    7, # account_voucher
    47, # crm
    23, # crm_todo
    119, # hr
    115, # hr_timesheet_sheet
    14, # knowledge
    191, # purchase
    175, # stock
)

#send request to server
response = sock.execute(dbname, uid, pwd, 'ir.module.module', 'button_immediate_install', module_ids)