How to change the date in tally through SOAP

Discussion in 'Tally Integration' started by Noor Hussain Ladkhan, Sep 27, 2012.

    

  1. Hi All,
    I am using this below SOAP code to create Purchase Invoice. But the date is creating a problem. How to change the date of Tally from Soap while creating the invoice.
    Code:
    <ENVELOPE>
    <HEADER>
    <TALLYREQUEST>Import Data</TALLYREQUEST>
    </HEADER>
    <BODY>
    <IMPORTDATA>
    <REQUESTDESC>
    <REPORTNAME>All Masters</REPORTNAME>
    </REQUESTDESC>
    <REQUESTDATA>
    <TALLYMESSAGE xmlns:UDF="TallyUDF">
    <VOUCHER REMOTEID="7811598w-849g-790n-221j-562536936384-00000072" VCHTYPE="Purchase" ACTION="Create">
    <ISOPTIONAL>No</ISOPTIONAL>
    <USEFORGAINLOSS>No</USEFORGAINLOSS>
    <USEFORCOMPOUND>No</USEFORCOMPOUND>
    <VOUCHERTYPENAME>Purchase</VOUCHERTYPENAME>
    <DATE>20120401</DATE>
    <EFFECTIVEDATE>20120401</EFFECTIVEDATE>
    <ISCANCELLED>No</ISCANCELLED>
    <USETRACKINGNUMBER>No</USETRACKINGNUMBER>
    <ISPOSTDATED>No</ISPOSTDATED>
    <ISINVOICE>Yes</ISINVOICE>
    <DIFFACTUALQTY>No</DIFFACTUALQTY>
    <NARRATION />
    <ASPAYSLIP>No</ASPAYSLIP>
    <GUID>7811598w-849g-790n-221j-562536936384-00000001</GUID>
    <REFERENCE>1</REFERENCE>
    <PARTYLEDGERNAME>Movers and Packers</PARTYLEDGERNAME>
    <LEDGERENTRIES.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <TAXCLASSIFICATIONNAME />
    <LEDGERNAME>Movers and Packers</LEDGERNAME>
    <AMOUNT>1283.6</AMOUNT>
    </LEDGERENTRIES.LIST>
    <ALLINVENTORYENTRIES.LIST>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <STOCKITEMNAME>up02</STOCKITEMNAME>
    <AMOUNT>-1000.000000</AMOUNT>
    <ACTUALQTY>1.000000</ACTUALQTY>
    <BILLEDQTY>1.000000</BILLEDQTY>
    <RATE>1000.000000</RATE>
    <ACCOUNTINGALLOCATIONS.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <TAXCLASSIFICATIONNAME />
    <LEDGERNAME>Purchase</LEDGERNAME>
    <AMOUNT>-1000.000000</AMOUNT>
    </ACCOUNTINGALLOCATIONS.LIST>
    <BATCHALLOCATIONS.LIST>
    <TRACKINGNUMBER />
    <BATCHNAME>Primary Batch</BATCHNAME>
    <GODOWNNAME>Main Location</GODOWNNAME>
    <MFDON>20070401</MFDON><EXPIRYPERIOD />
    <AMOUNT>1000.000000</AMOUNT>
    <ACTUALQTY>1.000000</ACTUALQTY>
    <BILLEDQTY>1.000000</BILLEDQTY>
    <ORDERNO />
    </BATCHALLOCATIONS.LIST>
    </ALLINVENTORYENTRIES.LIST>
    <ALLINVENTORYENTRIES.LIST>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <STOCKITEMNAME>up01</STOCKITEMNAME>
    <AMOUNT>-120.000000</AMOUNT>
    <ACTUALQTY>1.000000</ACTUALQTY>
    <BILLEDQTY>1.000000</BILLEDQTY>
    <RATE>120.000000</RATE>
    <ACCOUNTINGALLOCATIONS.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <TAXCLASSIFICATIONNAME/>
    <LEDGERNAME>Sales</LEDGERNAME>
    <AMOUNT>-120.000000</AMOUNT>
    </ACCOUNTINGALLOCATIONS.LIST>
    <BATCHALLOCATIONS.LIST>
    <TRACKINGNUMBER />
    <BATCHNAME>Primary Batch</BATCHNAME>
    <GODOWNNAME>Main Location</GODOWNNAME>
    <MFDON>20070401</MFDON><EXPIRYPERIOD />
    <AMOUNT>120.000000</AMOUNT>
    <ACTUALQTY>1.000000</ACTUALQTY>
    <BILLEDQTY>1.000000</BILLEDQTY>
    <ORDERNO />
    </BATCHALLOCATIONS.LIST>
    </ALLINVENTORYENTRIES.LIST>
    <LEDGERENTRIES.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <LEDGERNAME>Basic Excisable Duty</LEDGERNAME>
    <TAXCLASSIFICATIONNAME>Sales @ 5%</TAXCLASSIFICATIONNAME>
    <RATEOFINVOICETAX>12.000000</RATEOFINVOICETAX>
    <AMOUNT>-134.4</AMOUNT>
    </LEDGERENTRIES.LIST>
    <LEDGERENTRIES.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <LEDGERNAME>Cess</LEDGERNAME>
    <TAXCLASSIFICATIONNAME>Sales @ 5%</TAXCLASSIFICATIONNAME>
    <RATEOFINVOICETAX>2.000000</RATEOFINVOICETAX>
    <AMOUNT>-2.69</AMOUNT></LEDGERENTRIES.LIST>
    <LEDGERENTRIES.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <LEDGERNAME>Higher Secondary Cess</LEDGERNAME>
    <TAXCLASSIFICATIONNAME>Sales @ 5%</TAXCLASSIFICATIONNAME>
    <RATEOFINVOICETAX>1.000000</RATEOFINVOICETAX>
    <AMOUNT>-1.34</AMOUNT>
    </LEDGERENTRIES.LIST>
    <LEDGERENTRIES.LIST>
    <REMOVEZEROENTRIES>No</REMOVEZEROENTRIES>
    <ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>
    <LEDGERFROMITEM>No</LEDGERFROMITEM>
    <LEDGERNAME>M.VAT8%</LEDGERNAME>
    <TAXCLASSIFICATIONNAME>Sales @ 5%</TAXCLASSIFICATIONNAME>
    <RATEOFINVOICETAX>2.000000</RATEOFINVOICETAX>
    <AMOUNT>-25.17</AMOUNT></LEDGERENTRIES.LIST>
    </VOUCHER>
    </TALLYMESSAGE>
    </REQUESTDATA>
    </IMPORTDATA>
    </BODY>
    </ENVELOPE>
    Please help me in solving this problem

    Thanks and Regards,
    Noor Hussain
     


  2. admin

    admin Administrator Staff Member


    Can you send us the error messages what you are getting?
     



  3. Thanks a lot for your time. It was my mistake. I was working in Education Mode so Tally was unable to change date. as it allows entry for 1 and 2 day of months.

    Noor
     


  4. Vijaya Kumar

    Vijaya Kumar New Member


    HI,

    I create a vb program as follows for creating receipt voucher thru SOAP, But am receiving an error "Unknown Request, cannot be Processed" .
    REGARDS
    Vijayakumar


    Private Sub Command1_Click()
    Dim XMLHttpRequest, CHILDNODE

    Dim ComboString1 As String
    Dim ComboString2 As String
    Dim ComboString3 As String
    Dim ComboString11 As String
    Dim ComboString21 As String
    Dim ComboString31 As String
    Dim Cramt As String
    ComboString11 = Combo1.Text
    ComboString21 = Combo2.Text
    ComboString31 = Text5.Text
    ComboString1 = Combo1.Text
    ComboString2 = Combo2.Text
    ComboString3 = Text5.Text
    If Combo1.Text = "" Or Combo2.Text = "" _
    Or Text1.Text = "" Or Text4.Text = "" Then
    MsgBox "Enters All The information", "Integration Using XML Interface 50", vbApplicationModal, "Voucher Creation"
    Else
    date2 = Text1.Text

    If InStrRev(ComboString11, "&") Then
    ComboString1 = Replace(ComboString11, "&", "" & "")
    End If
    If InStrRev(ComboString21, "&") Then
    ComboString2 = Replace(ComboString21, "&", "" & "")
    End If
    If InStrRev(ComboString31, "&") Then
    ComboString3 = Replace(ComboString31, "&", "" & "")
    End If
    Text3.Text = Format(Text3.Text, "###########0.00")
    Cramt = Format((0 - Val(Text3.Text)), "###########0.00")

    'xmlstc = "<ENVELOPE>" + vbCrLf & "<HEADER>" + vbCrLf & "<VERSION>1</VERSION>" + vbCrLf & "<TALLYREQUEST>Import</TALLYREQUEST>" + vbCrLf
    ' xmlstc = xmlstc + "<TYPE>Data</TYPE>" + vbCrLf & "<ID>Vouchers</ID>" + vbCrLf & "<STATICVARIABLES>" + vbCrLf & "<SVCURRENTCOMPANY>A</SVCURRENTCOMPANY>" + vbCrLf & "</STATICVARIABLES>" + vbCrLf & "</HEADER>" + vbCrLf & "<BODY>" + vbCrLf & "<DESC>" + vbCrLf & "</DESC>" + vbCrLf & "<DATA>" + vbCrLf & "<TALLYMESSAGE xmlns:UDF=TallyUDF>"
    'xmlstc = xmlstc + vbCrLf & "<VOUCHER VCHTYPE=""Receipt"" ACTION=""Create"">" + vbCrLf & "<DATE>" + date2 + "</DATE>" + vbCrLf & "<NARRATION>" + ComboString3 + "</NARRATION>" + vbCrLf
    'xmlstc = xmlstc + "<VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>" + vbCrLf & "<EFFECTIVEDATE>" + date2 + "</EFFECTIVEDATE>" + vbCrLf & "<PARTYLEDGERNAME>" + ComboString2 + "</PARTYLEDGERNAME>" + vbCrLf
    'xmlstc = xmlstc + "<FBTPAYMENTTYPE>Default</FBTPAYMENTTYPE>" + vbCrLf
    'xmlstc = xmlstc + "<LEDGERNAME>" + ComboString2 + "</LEDGERNAME>" + vbCrLf & "<AMOUNT>" + Text3.Text + "</AMOUNT>" + vbCrLf & "<ISPARTYLEDGER>Yes</ISPARTYLEDGER>" + vbCrLf & "<DIFFACTUALQTY>No</DIFFACTUALQTY>" + vbCrLf & "</ALLLEDGERENTRIES.LIST>" + vbCrLf & "<ALLLEDGERENTRIES.LIST>" + vbCrLf
    'xmlstc = xmlstc + "<LEDGERNAME>" + ComboString1 + "</LEDGERNAME>" + vbCrLf & "<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>" + vbCrLf & "<AMOUNT>" & Cramt & "</AMOUNT>" + vbCrLf & "</ALLLEDGERENTRIES.LIST>" + vbCrLf
    'xmlstc = xmlstc + "</TALLYMESSAGE>" + vbCrLf & "</DATA>" + vbCrLf & "</BODY>" + vbCrLf & "</ENVELOPE>"
    'MsgBox xmlstc

    xmlstc = "<ENVELOPE>" + vbCrLf & "<HEADER>" + vbCrLf & "<TALLYREQUEST>Import</TALLYREQUEST>" + vbCrLf & "</HEADER>" + vbCrLf & "<BODY>" + vbCrLf & "<IMPORTDATA>" + vbCrLf & "<REQUESTDESC>" + vbCrLf & "<REPORTNAME>Vouchers</REPORTNAME>" + vbCrLf & "<STATICVARIABLES>" + vbCrLf & "<SVCURRENTCOMPANY>A</SVCURRENTCOMPANY>" + vbCrLf & "</STATICVARIABLES>" & "</REQUESTDESC>" + vbCrLf & "<REQUESTDATA>" + vbCrLf & "<TALLYMESSAGE xmlns:UDF=""TallyUDF"">" + vbCrLf & "<VOUCHER VCHTYPE=""Receipt"" ACTION=""Create"" OBJVIEW=""Accounting Voucher View"">" + vbCrLf & "<DATE>" + date2 + "</DATE>" + vbCrLf & "<NARRATION>" + ComboString3 + "</NARRATION>" + vbCrLf & "<VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>" + vbCrLf & "<PARTYLEDGERNAME>" + ComboString2 + "</PARTYLEDGERNAME>" + vbCrLf
    xmlstc = xmlstc + "<EFFECTIVEDATE>" + date2 + "</EFFECTIVEDATE>" + vbCrLf & "<ALLLEDGERENTRIES.LIST>" + vbCrLf & "<LEDGERNAME>" + ComboString2 + "</LEDGERNAME>" + vbCrLf & "<AMOUNT>" + Text3.Text + "</AMOUNT>" + vbCrLf & "</ALLLEDGERENTRIES.LIST>" + vbCrLf & "<ALLLEDGERENTRIES.LIST>" + vbCrLf & "<LEDGERNAME>" + ComboString1 + "</LEDGERNAME>" + vbCrLf & "<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>" + vbCrLf & "<AMOUNT>" + Cramt + "</AMOUNT>" + vbCrLf & "</ALLLEDGERENTRIES.LIST>" + vbCrLf & "</VOUCHER>" + vbCrLf & "</TALLYMESSAGE>" + vbCrLf & "</REQUESTDATA>" + vbCrLf & "</IMPORTDATA>" + vbCrLf & "</BODY>" + vbCrLf & "</ENVELOPE>"

    'MsgBox xmlstc






    Set XMLHttpRequest = New MSXML2.XMLHTTP40
    With XMLHttpRequest

    .open "Post", "http://192.168.2.15:9000?strXMLRequest=" & xmlstc, False
    .setRequestHeader "Content-type", "text/xml"
    .setRequestHeader "HTTPpost", "http://192.168.2.15:9000?"
    .send xmlstc
    End With
    responsstr = XMLHttpRequest.responseText
    newstring = InStrRev(responsstr, "<LINEERROR>")
    If newstring = 0 Then
    ' XMLHttpRequest.loadXML (responsstr)
    MsgBox "Response String " + responsstr
    ' Set CHILDNODE = XMLHttpRequest.selectNodes("ENVELOPE/BODY/DATA/IMPORTRESULT/LASTVCHID")
    ' MsgBox "Voucher Created with MASTER ID " + CHILDNODE(0).Text, , "Voucher Creation"
    Else
    MsgBox "Failed to POST"
    End If



    Text4.Text = ""
    Text5.Text = ""
    End If
    End
    End Sub
    Private Sub Command2_Click()
    End
    End Sub
     


Share This Page