ഇന്ന് 3 ജനുവരി 2013, ഞാന് ബ്ലോഗിങ്ങ് ആരംഭിച്ചു . ഒരു രസത്തിനു വേണ്ടിയാണോ എന്ന് ചോതിച്ചാല് അല്ല , കുറച്ചു കാര്യവും ഉണ്ട്. എന്തിനാണെന്നോ മലയാളത്തില് ഇതു വരെ ഞാന് നപ്രോഗ്രമ്മിങ്ങിനെ പറ്റിയുള്ള ഒരു നല്ല സൈറ്റ് കാണ്ടിട്ടില്ല. അത് കൊണ്ട് അതിനുള്ള ഒരു എളിയശ്രമം നടത്തിനോക്കാം എന്ന് കരുതി ...........
My Page
if passion drives you, let reason hold the rein
Thursday, January 3, 2013
Sample code for Integrating tally 9 with vb.net
''
'' XML input
''
Dim strXmlData As String = "<ENVELOPE>" & _
"<HEADER>" & _
"<TALLYREQUEST>Import Data</TALLYREQUEST>" & _
"<TYPE>DATA</TYPE>" & _
"<ID>Vouchers</ID>" & _
"</HEADER>" & _
"<BODY>" & _
"<IMPORTDATA>" & _
"<REQUESTDESC>" & _
"<REPORTNAME>Vouchers</REPORTNAME>" & _
"<STATICVARIABLES>" & _
"<SVCURRENTCOMPANY>Company</SVCURRENTCOMPANY>" & _
"</STATICVARIABLES>" & _
"</REQUESTDESC>" & _
"<REQUESTDATA>" & _
"<TALLYMESSAGE>" & _
"<VOUCHER VCHTYPE=""Receipt"" ACTION=""Create"">" & _
"<VOUCHERNUMBER>GNL-000000219M</VOUCHERNUMBER>" & _
"<DATE>20121212</DATE>" & _
"<NARRATION></NARRATION>" & _
"<VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>" & _
"<PARTYLEDGERNAME>Consultation</PARTYLEDGERNAME>" & _
"<EFFECTIVEDATE>20121212</EFFECTIVEDATE>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>Consultation</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>200</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>cash</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>-200</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"</VOUCHER>" & _
"<VOUCHER VCHTYPE=""Receipt"" ACTION=""Create"">" & _
"<VOUCHERNUMBER>GNL-000000220M</VOUCHERNUMBER>" & _
"<DATE>20121212</DATE>" & _
"<NARRATION></NARRATION>" & _
"<VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>" & _
"<PARTYLEDGERNAME>Registration</PARTYLEDGERNAME>" & _
"<EFFECTIVEDATE>20121212</EFFECTIVEDATE>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>Registrationd</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>100</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>cash</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>-100</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"</VOUCHER>" & _
"</TALLYMESSAGE>" & _
"</REQUESTDATA>" & _
"</IMPORTDATA>" & _
"</BODY>" & _
"</ENVELOPE>"
''
''Following code creates a web request and using this request we can read/write data from/to tally 9
''
Dim cookies As CookieContainer = New CookieContainer()
Dim HttpWReq As HttpWebRequest = CType(WebRequest.Create("http://localhost:9000"), HttpWebRequest)
With HttpWReq
.KeepAlive = False
.Connection = "localhost:9000"
.Method = "POST"
.ContentType = "text/xml"
.CookieContainer = cookies
.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
.ContentLength = Text.Encoding.UTF8.GetByteCount(strXmlData)
End With
Dim requestWriter As IO.StreamWriter = New IO.StreamWriter(HttpWReq.GetRequestStream())
requestWriter.Write(strXmlData)
requestWriter.Flush()
requestWriter.Close()
Dim responseReader As IO.StreamReader = New IO.StreamReader(HttpWReq.GetResponse().GetResponseStream())
Dim responseData As String = responseReader.ReadToEnd()
responseReader.Close()
HttpWReq.GetResponse().Close()
HttpWReq.Abort()
''
'' XML input
''
Dim strXmlData As String = "<ENVELOPE>" & _
"<HEADER>" & _
"<TALLYREQUEST>Import Data</TALLYREQUEST>" & _
"<TYPE>DATA</TYPE>" & _
"<ID>Vouchers</ID>" & _
"</HEADER>" & _
"<BODY>" & _
"<IMPORTDATA>" & _
"<REQUESTDESC>" & _
"<REPORTNAME>Vouchers</REPORTNAME>" & _
"<STATICVARIABLES>" & _
"<SVCURRENTCOMPANY>Company</SVCURRENTCOMPANY>" & _
"</STATICVARIABLES>" & _
"</REQUESTDESC>" & _
"<REQUESTDATA>" & _
"<TALLYMESSAGE>" & _
"<VOUCHER VCHTYPE=""Receipt"" ACTION=""Create"">" & _
"<VOUCHERNUMBER>GNL-000000219M</VOUCHERNUMBER>" & _
"<DATE>20121212</DATE>" & _
"<NARRATION></NARRATION>" & _
"<VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>" & _
"<PARTYLEDGERNAME>Consultation</PARTYLEDGERNAME>" & _
"<EFFECTIVEDATE>20121212</EFFECTIVEDATE>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>Consultation</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>200</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>cash</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>-200</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"</VOUCHER>" & _
"<VOUCHER VCHTYPE=""Receipt"" ACTION=""Create"">" & _
"<VOUCHERNUMBER>GNL-000000220M</VOUCHERNUMBER>" & _
"<DATE>20121212</DATE>" & _
"<NARRATION></NARRATION>" & _
"<VOUCHERTYPENAME>Receipt</VOUCHERTYPENAME>" & _
"<PARTYLEDGERNAME>Registration</PARTYLEDGERNAME>" & _
"<EFFECTIVEDATE>20121212</EFFECTIVEDATE>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>Registrationd</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>No</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>100</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"<ALLLEDGERENTRIES.LIST>" & _
"<LEDGERNAME>cash</LEDGERNAME>" & _
"<ISDEEMEDPOSITIVE>Yes</ISDEEMEDPOSITIVE>" & _
"<AMOUNT>-100</AMOUNT>" & _
"</ALLLEDGERENTRIES.LIST>" & _
"</VOUCHER>" & _
"</TALLYMESSAGE>" & _
"</REQUESTDATA>" & _
"</IMPORTDATA>" & _
"</BODY>" & _
"</ENVELOPE>"
''
''Following code creates a web request and using this request we can read/write data from/to tally 9
''
Dim cookies As CookieContainer = New CookieContainer()
Dim HttpWReq As HttpWebRequest = CType(WebRequest.Create("http://localhost:9000"), HttpWebRequest)
With HttpWReq
.KeepAlive = False
.Connection = "localhost:9000"
.Method = "POST"
.ContentType = "text/xml"
.CookieContainer = cookies
.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
.ContentLength = Text.Encoding.UTF8.GetByteCount(strXmlData)
End With
Dim requestWriter As IO.StreamWriter = New IO.StreamWriter(HttpWReq.GetRequestStream())
requestWriter.Write(strXmlData)
requestWriter.Flush()
requestWriter.Close()
Dim responseReader As IO.StreamReader = New IO.StreamReader(HttpWReq.GetResponse().GetResponseStream())
Dim responseData As String = responseReader.ReadToEnd()
responseReader.Close()
HttpWReq.GetResponse().Close()
HttpWReq.Abort()
Subscribe to:
Posts (Atom)