【问题标题】:How to get All companies data from tally xml api?如何从tally xml api获取所有公司数据?
【发布时间】:2018-12-29 05:28:30
【问题描述】:

我正在尝试通过 API 从计数中导出数据。假设tally配置了多个公司,我只能使用以下payload来获取当前公司的购买凭证。

<ENVELOPE>  
 <HEADER>  
   <TALLYREQUEST>Export Data</TALLYREQUEST>  
 </HEADER>  
 <BODY>  
   <EXPORTDATA>  
     <REQUESTDESC>  
       <!-- Specify the Report Name here -->  
       <REPORTNAME>PurchaseVouchers</REPORTNAME>
       <STATICVARIABLES>
            <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
           <!--Specify the Period here-->
            <SVFROMDATE>20181001</SVFROMDATE>
            <SVTODATE>20181001</SVTODATE>
       </STATICVARIABLES>
     </REQUESTDESC>  
   </EXPORTDATA>  
 </BODY>  
</ENVELOPE>

如何通过API获取选定公司并获取购买凭证?

【问题讨论】:

    标签: xml integration tally


    【解决方案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 响应,并且您需要反序列化它。这就是计数的工作原理。

    【讨论】:

      猜你喜欢
      • 2014-01-23
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-13
      相关资源
      最近更新 更多