You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Tally XML请求中提取Voucher->Invoice->StockItem的GUID

Tally XML提取Voucher、Invoice、StockItem层级GUID的解决方案

问题分析

你当前的XML请求已经包含了Voucher层级的GUID和基础的STOCKITEM.GUID,但缺少Invoice(凭证详情)层级的GUID提取规则,且StockItem的GUID路径不够明确(可能无法准确关联到对应Invoice下的库存项)。

修改后的XML请求

调整TDL的FETCH节点,补充Invoice层级的GUID,并明确StockItem的嵌套路径,确保三个层级的GUID都能被正确导出:

<ENVELOPE>
    <HEADER>
        <VERSION>1</VERSION>
        <TALLYREQUEST>EXPORT</TALLYREQUEST>
        <TYPE>COLLECTION</TYPE>
        <ID>CUSTOMVOUCHERDATA</ID>
    </HEADER>
    <BODY>
        <DESC>
            <SVFROMDATE Type="DATE">20240401</SVFROMDATE>
            <SVTODATE Type="DATE">20240630</SVTODATE>
            <TDL>
                <TDLMESSAGE>
                    <COLLECTION ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="CUSTOMVOUCHERDATA">
                        <TYPE>VOUCHER</TYPE>
                        <FETCH>
                            VOUCHERNUMBER,DATE,ISCANCELLED,PARTYNAME,PARTYLEDGERNAME,PARTYGSTIN,CONSIGNEEGSTIN,
                            LEDGERENTRIES.LIST,ALLLEDGERENTRIES,AMOUNT,VCHSTATUSDATE,EFFECTIVEDATE,ALTERID,
                            MASTERID,VOUCHERKEY,VOUCHERRETAINKEY,GUID,BASICSHIPDOCUMENTNO,BASICFINALDESTINATION,
                            BASICSHIPVESSELNO,EICHECKPOST,BILLOFLADINGNO,BILLOFLADINGDATE,BILLOFLADINGDATE,
                            BASICSHIPPEDBY,IRN,IRNACKDATE,GSTREGISTRATION,VOUCHERTYPENAME,CMPGSTREGISTRATIONTYPE,
                            CMPGSTSTATE,NUMBERINGSTYLE,VCHSTATUSTAXUNIT,GSTNATUREOFRETURN,
                            INVOICE.GUID, INVOICE.STOCKITEMS.LIST.GUID
                        </FETCH>
                    </COLLECTION>
                </TDLMESSAGE>
            </TDL>
        </DESC>
    </BODY>
</ENVELOPE>

提取各层级GUID的规则

请求返回XML后,可通过以下方式定位对应GUID:

  • Voucher层级GUID:直接取Voucher根节点下的<GUID>字段,XPath示例://VOUCHER/GUID
  • Invoice层级GUID:取Voucher节点下嵌套的<INVOICE>节点内的<GUID>字段,XPath示例://VOUCHER/INVOICE/GUID
  • StockItem层级GUID:取Invoice节点下STOCKITEMS集合中每个LIST子节点的<GUID>字段,XPath示例://VOUCHER/INVOICE/STOCKITEMS/LIST/GUID

说明

Tally的XML结构中,Invoice是Voucher的关联对象,StockItem则属于Invoice下的库存条目集合,所以必须通过完整的嵌套路径INVOICE.STOCKITEMS.LIST.GUID才能准确获取每个库存项目对应的GUID,避免出现关联错误。

内容的提问来源于stack exchange,提问作者bjss kiriti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 14:47:20