1

我有一个将xml数据插入到tally的代码,上传时显示上传的susess,bt在我的tally中凭证没有更新,上传时是否需要在tally上打开公司?试过了,没更新

我将我的主要代码放在这段代码中我正在从数据库中获取数据,同时创建 xml 文件并上传到计数正在工作,但是通过 php 不起作用,显示成功,但没有更新计数,因为还有其他在计数或我的系统中执行的步骤或要求

if(isset($_POST['sub']))
{
    $name = $_POST['name'];
    $requestXML = '<TALLYMESSAGE xmlns:UDF="TallyUDF">
                  <VOUCHER REMOTEID="123" VCHTYPE="Receipt" VCHKEY="321" ACTION="Create" OBJVIEW="Accounting Voucher View">
                    <OLDAUDITENTRIES.LIST>    </OLDAUDITENTRIES.LIST>
                    <ACCOUNTAUDITENTRIES.LIST>    </ACCOUNTAUDITENTRIES.LIST>
                    <AUDITENTRIES.LIST>    </AUDITENTRIES.LIST>
                    <OLDAUDITENTRYIDS.LIST TYPE="Number">
                      <OLDAUDITENTRYIDS>-1</OLDAUDITENTRYIDS>
                    </OLDAUDITENTRYIDS.LIST>
                    <DATE>20180801</DATE>
                    <GUID></GUID>
                    <VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>
                    <VOUCHERNUMBER>5</VOUCHERNUMBER>
                    <PARTYLEDGERNAME>'.$name.'</PARTYLEDGERNAME>
                    <CSTFORMISSUETYPE/>
                    <CSTFORMRECVTYPE/>
                    <FBTPAYMENTTYPE>Default</FBTPAYMENTTYPE>
                    <PERSISTEDVIEW>Accounting Voucher View</PERSISTEDVIEW>
                    <VCHGSTCLASS/>
                    <DIFFACTUALQTY>No</DIFFACTUALQTY>
                    <AUDITED>No</AUDITED>
                    <FORJOBCOSTING>No</FORJOBCOSTING>
                    <ISOPTIONAL>No</ISOPTIONAL>
                    <EFFECTIVEDATE>20180801</EFFECTIVEDATE>
                    <ISFORJOBWORKIN>No</ISFORJOBWORKIN>
                    <ALLOWCONSUMPTION>No</ALLOWCONSUMPTION>
                    <USEFORINTEREST>No</USEFORINTEREST>
                    <USEFORGAINLOSS>No</USEFORGAINLOSS>
                    <USEFORGODOWNTRANSFER>No</USEFORGODOWNTRANSFER>
                    <USEFORCOMPOUND>No</USEFORCOMPOUND>
                    <ALTERID>20</ALTERID>
                    <EXCISEOPENING>No</EXCISEOPENING>
                    <USEFORFINALPRODUCTION>No</USEFORFINALPRODUCTION>
                    <ISCANCELLED>No</ISCANCELLED>
                    <HASCASHFLOW>Yes</HASCASHFLOW>
                    <ISPOSTDATED>No</ISPOSTDATED>
                    <USETRACKINGNUMBER>No</USETRACKINGNUMBER>
                    <ISINVOICE>No</ISINVOICE>
                    <MFGJOURNAL>No</MFGJOURNAL>
                    <HASDISCOUNTS>No</HASDISCOUNTS>
                    <ASPAYSLIP>No</ASPAYSLIP>
                    <ISCOSTCENTRE>No</ISCOSTCENTRE>
                    <ISSTXNONREALIZEDVCH>No</ISSTXNONREALIZEDVCH>
                    <ISEXCISEMANUFACTURERON>No</ISEXCISEMANUFACTURERON>
                    <ISBLANKCHEQUE>No</ISBLANKCHEQUE>
                    <ISDELETED>No</ISDELETED>
                    <ASORIGINAL>No</ASORIGINAL>
                    <VCHISFROMSYNC>No</VCHISFROMSYNC>
                    <MASTERID>9</MASTERID>
                    <VOUCHERKEY></VOUCHERKEY>
                    <INVOICEDELNOTES.LIST>    </INVOICEDELNOTES.LIST>
                    <INVOICEORDERLIST.LIST>    </INVOICEORDERLIST.LIST>
                    <INVOICEINDENTLIST.LIST>    </INVOICEINDENTLIST.LIST>
                    <ATTENDANCEENTRIES.LIST>    </ATTENDANCEENTRIES.LIST>
                    <ORIGINVOICEDETAILS.LIST>    </ORIGINVOICEDETAILS.LIST>
                    <INVOICEEXPORTLIST.LIST>    </INVOICEEXPORTLIST.LIST>
                    <ALLLEDGERENTRIES.LIST>
                      <AMOUNT>200000.00</AMOUNT>
                      <OLDAUDITENTRYIDS.LIST TYPE="Number">
                        <OLDAUDITENTRYIDS>-1</OLDAUDITENTRYIDS>
                      </OLDAUDITENTRYIDS.LIST>
                      <LEDGERNAME>'.$name.'</LEDGERNAME>
                      <GSTCLASS/>
                      <ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>
                      <LEDGERFROMITEM>No</LEDGERFROMITEM>
                      <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
                      <ISPARTYLEDGER>Yes</ISPARTYLEDGER>
                      <ISLASTDEEMEDPOSITIVE>No</ISLASTDEEMEDPOSITIVE>
                      <BANKALLOCATIONS.LIST></BANKALLOCATIONS.LIST>
                      <BILLALLOCATIONS.LIST></BILLALLOCATIONS.LIST>
                      <INTERESTCOLLECTION.LIST></INTERESTCOLLECTION.LIST>
                      <OLDAUDITENTRIES.LIST></OLDAUDITENTRIES.LIST>
                      <ACCOUNTAUDITENTRIES.LIST></ACCOUNTAUDITENTRIES.LIST>
                      <AUDITENTRIES.LIST></AUDITENTRIES.LIST>
                      <TAXBILLALLOCATIONS.LIST></TAXBILLALLOCATIONS.LIST>
                      <TAXOBJECTALLOCATIONS.LIST></TAXOBJECTALLOCATIONS.LIST>
                      <TDSEXPENSEALLOCATIONS.LIST></TDSEXPENSEALLOCATIONS.LIST>
                      <VATSTATUTORYDETAILS.LIST></VATSTATUTORYDETAILS.LIST>
                      <COSTTRACKALLOCATIONS.LIST></COSTTRACKALLOCATIONS.LIST>
                    </ALLLEDGERENTRIES.LIST>
                    <ALLLEDGERENTRIES.LIST>
                      <OLDAUDITENTRYIDS.LIST TYPE="Number">
                        <OLDAUDITENTRYIDS>-1</OLDAUDITENTRYIDS>
                      </OLDAUDITENTRYIDS.LIST>
                      <LEDGERNAME>Bank of Maharashtra</LEDGERNAME>
                      <GSTCLASS/>
                      <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
                      <LEDGERFROMITEM>No</LEDGERFROMITEM>
                      <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
                      <ISPARTYLEDGER>Yes</ISPARTYLEDGER>
                      <ISLASTDEEMEDPOSITIVE>Yes</ISLASTDEEMEDPOSITIVE>
                      <AMOUNT>-200000.00</AMOUNT>
                      <BANKALLOCATIONS.LIST>
                        <DATE>20180801</DATE>
                        <INSTRUMENTDATE>20180801</INSTRUMENTDATE>
                        <BANKBRANCHNAME>Warje</BANKBRANCHNAME>
                        <TRANSACTIONTYPE>Cheque/DD</TRANSACTIONTYPE>
                        <BANKNAME>AXIS</BANKNAME>
                        <PAYMENTFAVOURING>'.$name.'</PAYMENTFAVOURING>
                        <INSTRUMENTNUMBER>50026</INSTRUMENTNUMBER>
                        <UNIQUEREFERENCENUMBER>38ROUrdV00QEKOhl</UNIQUEREFERENCENUMBER>
                        <STATUS>No</STATUS>
                        <CHEQUEPRINTED>-1</CHEQUEPRINTED>
                        <AMOUNT>-200000.00</AMOUNT>
                      </BANKALLOCATIONS.LIST>
                      <BILLALLOCATIONS.LIST></BILLALLOCATIONS.LIST>
                      <INTERESTCOLLECTION.LIST></INTERESTCOLLECTION.LIST>
                      <OLDAUDITENTRIES.LIST></OLDAUDITENTRIES.LIST>
                      <ACCOUNTAUDITENTRIES.LIST></ACCOUNTAUDITENTRIES.LIST>
                      <AUDITENTRIES.LIST></AUDITENTRIES.LIST>
                      <TAXBILLALLOCATIONS.LIST></TAXBILLALLOCATIONS.LIST>
                      <TAXOBJECTALLOCATIONS.LIST></TAXOBJECTALLOCATIONS.LIST>
                      <TDSEXPENSEALLOCATIONS.LIST></TDSEXPENSEALLOCATIONS.LIST>
                      <VATSTATUTORYDETAILS.LIST> </VATSTATUTORYDETAILS.LIST>
                      <COSTTRACKALLOCATIONS.LIST> </COSTTRACKALLOCATIONS.LIST>
                    </ALLLEDGERENTRIES.LIST>
                    <ATTDRECORDS.LIST> </ATTDRECORDS.LIST>
                  </VOUCHER>
                </TALLYMESSAGE>';
    
    $server = 'http://server:9999';
    $headers = array( "Content-type: text/xml" ,"Content-length: ".strlen($requestXML) ,"Connection: close" );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $server);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 100);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $requestXML);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    $data = curl_exec($ch);
    
    if(curl_errno($ch))
    {
        print curl_error($ch);
        echo "  something went wrong..... try later";
    }
    else
    {
        echo " request accepted";
        print $data;
        curl_close($ch);
    }
}

4

1 回答 1

1

插入凭证时应打开特定公司。如果加载了多个公司,那么您可以使用“SvCurrentCompany”来设置特定的公司名称。

于 2018-12-22T11:06:49.147 回答