2

我试图通过 localhost:9000 通过 XML HTTP 从 Tally ERP 9 导出数据。我正在获取带有 ASCII 数据的 XML 文件。这会导致许多带有“?”的符号。像卢比符号和欧元符号。有没有办法以 Unicode 格式导出数据?使用的 POC 是

import httplib
c=httplib.HTTPConnection('localhost:9000')
headers = {"Content-type": "text/xml;charset=UTF-8", "Accept": "text/xml"}
params = """<ENVELOPE>
        <HEADER>
        <TALLYREQUEST>Export Data</TALLYREQUEST>
        </HEADER>
        <BODY>
        <EXPORTDATA>
        <REQUESTDESC>
        <REPORTNAME>List of Accounts</REPORTNAME>
        <STATICVARIABLES>
        <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
        <ACCOUNTTYPE>Ledgers</ACCOUNTTYPE>
        <ENCODINGTYPE>UNICODE</ENCODINGTYPE>
        </STATICVARIABLES>
        </REQUESTDESC>
        </EXPORTDATA>
        </BODY>
        </ENVELOPE>
        """


c.request("POST", "/", params, headers)
r=c.getresponse().read()

fl=file("d:/xtemp.xml","w")
fl.write(r)
fl.close()
4

2 回答 2

1

要从 Tally ERP 9 检索 UNICODE 数据,您必须将以下标头添加到 HTTP POST 请求。

句法

XMLHttpRequest.setRequestHeader(标头,值)

以 UNICODE 格式导出 Tally 数据的 HTTP 标头

XMLHttpRequest.setRequestHeader('UNICODE', 'YES')

XMLHttpRequest.setRequestHeader('Content-Type', 'text/xml; charset=unicode')

知识库:https ://www.rtslink.com

于 2018-11-24T18:01:44.573 回答
0

这似乎更像是您的系统字体而不是 Tally 的问题。

确保您安装了 Rupakara 字体,该字体具有卢比符号的 unicode 翻译。在这里得到它

于 2012-09-27T20:47:20.300 回答