如何导出Tally每月Ledger期初及期末余额?带认证XML请求问题
解决Tally导出每月Ledger期初/期末余额的XML配置问题
原XML请求的核心问题
你的XML请求存在两个关键错误:
- 请求类型错误:
<TALLYREQUEST>设为Import Data,但你是要导出报表数据,应改为Export Data或Get Report - 缺少必要参数:未指定每月的日期范围,且
SVBANKNAME并非导出Ledger余额的通用必填参数(仅筛选银行类Ledger时才需添加)
带身份验证的正确XML请求示例
以下是适配需求的完整XML,包含用户名密码验证、月度日期范围、余额字段强制返回配置:
<ENVELOPE> <HEADER> <TALLYREQUEST>Export Data</TALLYREQUEST> <!-- Tally启用用户验证时必填 --> <USERNAME>{你的Tally用户名}</USERNAME> <PASSWORD>{你的Tally密码}</PASSWORD> </HEADER> <BODY> <EXPORTDATA> <REQUESTDESC> <REPORTNAME>Ledger</REPORTNAME> <STATICVARIABLES> <SVCURRENTCOMPANY>{公司名称}</SVCURRENTCOMPANY> <!-- 替换为目标月份的起止日期,格式需匹配Tally系统设置(通常为DD/MM/YYYY) --> <SVFROMDATE>01/01/2024</SVFROMDATE> <SVTODATE>31/01/2024</SVTODATE> <!-- 指定导出格式为XML,确保字段可解析 --> <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT> <!-- 强制返回期初余额 --> <SHOWOPENING>BOTH</SHOWOPENING> <!-- 强制返回期末余额 --> <SHOWCLOSING>YES</SHOWCLOSING> </STATICVARIABLES> </REQUESTDESC> </EXPORTDATA> </BODY> </ENVELOPE>
参数与请求说明
<USERNAME>/<PASSWORD>:需填写Tally系统中拥有报表访问权限的账号密码,无验证时可删除这两行<SVFROMDATE>/<SVTODATE>:按月份替换日期,若需批量导出所有月份,需循环修改该参数发送请求- 请求发送方式:通过POST请求发送到Tally远程访问端口(默认9000,URL示例:
http://你的Tally服务器IP:9000),请求头需设置Content-Type: application/xml - 前置检查:确保Tally已开启「远程访问」权限(路径:配置>网络配置)
内容的提问来源于stack exchange,提问作者user20032870
相关产品推荐
相关产品推荐

