如何导出每月理货账本期初和期末余额

问题描述 投票:0回答:1
    <ENVELOPE>
  <HEADER>
    <TALLYREQUEST>Import Data</TALLYREQUEST>
  </HEADER>
  <BODY>
    <IMPORTDATA>
      <REQUESTDESC>
        <REPORTNAME>Ledger</REPORTNAME>
        <STATICVARIABLES>
          <SVCURRENTCOMPANY>{company name}</SVCURRENTCOMPANY>
          <SVBANKNAME>{bank name}</SVBANKNAME>
         
        </STATICVARIABLES>
      </REQUESTDESC>
      <REQUESTDATA>
      </REQUESTDATA>
    </IMPORTDATA>
  </BODY>
</ENVELOPE>

我使用这个语法,但它不起作用

我的公司有用户名和密码,如何获取??

xml tally
1个回答
0
投票
const { parseString } = require('xml2js');

const url = `http://localhost:9000/`;
const fromDate = '2023-04-01';
const toDate = '2024-03-31';

const getBalanceSheet = async (url, fromDate, toDate) => {
    const xmlRequest = `
    <ENVELOPE>
        <HEADER>
            <VERSION>1</VERSION>
            <TALLYREQUEST>Export</TALLYREQUEST>
            <TYPE>Data</TYPE>
            <ID>BalanceSheet</ID>
        </HEADER>
        <BODY>
            <DESC>
                <STATICVARIABLES>
                    <SVFROMDATE>${fromDate}</SVFROMDATE>
                    <SVTODATE>${toDate}</SVTODATE>
                    <EXPLODEFLAG>Yes</EXPLODEFLAG>
                </STATICVARIABLES>
            </DESC>
        </BODY>
    </ENVELOPE>
    `;
    const response = await axios.post(url, xmlRequest);
    //console.log(response.data)
    return parseXMLResponse(response.data);
};
console.log(getBalanceSheet)
const parseXMLResponse = async (xmlData) => {
    return new Promise((resolve, reject) => {
        parseString(xmlData, (err, result) => {
            if (err) {
                reject(err);
            } else {
                resolve(result);
            }
        });
    });
};


(async () => {
        const balanceSheetJson = await getBalanceSheet(url, fromDate, toDate);
        console.log("Balance Sheet Report");
        console.log(JSON.stringify(balanceSheetJson, null, 2));
})();```  I have  implement this program to extract the balance sheet from tally  <ID>BalanceSheet</ID> based on this id you can extract any thing from tally replace id with what you want eg. profit loss, vouchers, 
© www.soinside.com 2019 - 2024. All rights reserved.