【问题标题】:OpenERP 7 share XML-file with 3th party applicationOpenERP 7 与第三方应用程序共享 XML 文件
【发布时间】:2018-03-20 08:51:22
【问题描述】:

您好,我想从第三方应用程序接收 XML 文件。我想过使用 REST,但这在 OpenERP 7 中不可用。任何其他解决方案都可以这样做。 XML 文件包含发票数据,当收到一个新的帐户记录时,必须创建发票。

【问题讨论】:

    标签: python rest odoo xml-rpc edi


    【解决方案1】:

    通过 SFTP 共享文件夹

    您的意思是您没有可用的XMLRPC?您可以共享本地服务器文件夹(例如 sftp),第三方应用程序可以将文件暂时保留在那里。当您处理文件时,您已经可以将其删除。

    XMLRPC 的替代方案 >> JSONRPC 和控制器

    你也可以使用controllers,但是这里需要使用JSONRPC。也许您可以将纯 xml 文件包含在一个 JSON 字段中。

    但我认为控制器只是为 OpenERP 内部目的而构建的。检查我遇到的问题:question1, question2

    注意:考虑到使用此解决方案,您只需要在 OpenERP 实例中使用一个数据库。

    处理 XML 文件

    如果您想读取 XML 文件,您可以使用 lxml 库。检查this other answer

    在从 XML 构建元素实例 e 之后,例如与 XML 函数,或者通过类似的东西解析文件

    import xml.etree.ElementTree
    e = xml.etree.ElementTree.parse('thefile.xml').getroot()
    

    ElementTree 中显示的许多其他方式中的任何一种,您只需这样做 类似:

    for atype in e.findall('type'):
        print(atype.get('foobar'))
    

    【讨论】:

    • 是的,我知道这个解决方案,但我觉得这不太吸引人。我想使用 RESTful 服务来传输 XML 数据。我想知道是否有解决方案可以将它与 OpenERP V7 一起使用
    • 好的,我添加了另一个选项。检查它是否对您有帮助
    • 谢谢,我会看看这个
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 2012-09-28
    • 2014-12-19
    • 2016-07-20
    • 1970-01-01
    相关资源
    最近更新 更多