我正在尝试通过API从理货中导出数据。可以说,tally配置了多个公司,我只能使用以下有效负载来获得当前公司的购买凭证。
_ interval
如何通过API获取选择的公司和购买凭证?
答案 0 :(得分:-1)
您缺少一些标签,没有提到您要获取的标签。示例-
<ENVELOPE>
<HEADER>
<VERSION>1</VERSION>
<TALLYREQUEST>EXPORT</TALLYREQUEST>
<TYPE>COLLECTION</TYPE>
<ID>FindParticularVoucher</ID>
</HEADER>
<BODY>
<DESC>
<STATICVARIABLES>
<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
<SVCURRENTCOMPANY>COMPANY NAME</SVCURRENTCOMPANY>
<VCHTYPE>PurchaseVouchers</VCHTYPE>
<SVFROMDATE TYPE="DATE">01-05-2019</SVFROMDATE>
<SVTODATE TYPE="DATE">31-05-2019</SVTODATE>
</STATICVARIABLES>
<TDL>
<TDLMESSAGE>
<COLLECTION NAME="FindParticularVoucher" ISINITIALIZE="YES">
<TYPE>Voucher</TYPE>
<FETCH>ALLLEDGERENTRIES.*</FETCH>
<FETCH>ALLINVENTORYENTRIES.*</FETCH>
<FILTER>GetInvoiceVoucher</FILTER>
</COLLECTION>
<VARIABLE NAME="VCHTYPE">
<TYPE>String</TYPE>
</VARIABLE>
<SYSTEM TYPE="FORMULAE" NAME="GetInvoiceVoucher">$VoucherTypeName = $$String:##VCHTYPE</SYSTEM>
</TDLMESSAGE>
</TDL>
</DESC>
</BODY>
</ENVELOPE>
对于购买凭证,在标签 VCHTYPE 及其结束标记之间-只需插入您购买凭证的名称即可。例如,在我的公司中,我有两种不同类型的购买凭证,其中一个名为 Purchase Interstate 。那就是我要在这些标签之间插入的内容。
现在,如果要获取所有购买凭证类型,可以按以下方式替换 VCHTYPE 标签-
<VCHTYPE1>Purchase Interstate</VCHTYPE1>
<VCHTYPE2>Purchase State</VCHTYPE2>
在XML的末尾,您的公式(在 SYSTEM 标记中)将变为-
<SYSTEM TYPE="FORMULAE" NAME="GetInvoiceVoucher">$VoucherTypeName = $$String:##VCHTYPE1 or $VoucherTypeName = $$String:##VCHTYPE2</SYSTEM>
注意-确保在此XML代码中更改公司名称。请记住,您将获得XML响应,并且需要将其反序列化。这就是理货的方式。