A blog on Tally Integration, to import and export data from Tally.ERP programmatically using VB6, VB.NET,C#,ASP.NET etc

Friday, March 21, 2008

Tally 9 Release 2.1 - Error: No Valid Names!

Before we look into the cause and solution for the aforesaid Tally Error message, let's revisit Tally 9 Release 2.1 as there has been a major change in the XML tags which was discussed in my previous post also.

Here's what we are referring to:-

"When we export Vouchers or Masters data from Tally 9 Release 2.1, the XML tags that get generated are in proper-case whereas in the previous versions/releases the XML tags generated were in upper-case".

As XML tags are case-sensitive, the tags generated by Tally 9 Release 2.1 which are in proper-case like <Voucher> are not same as that generated by the previous versions of Tally which were in upper-case <VOUCHER>.

Given the above situation, we were trying to write XML tags that would work with all version of Tally. i.e. Tally 9 Release 2.1 and the older versions too.

We started with the Task of pushing (importing) data into Tally and choose Ledger Master to begin with. And here are the XML tags that we had written based on the Tally 9 Release 2.1 format.

XML tags for Ledger Master (Proper-case)

<ENVELOPE>
<HEADER>
<TALLYREQUEST<Import Data</TALLYREQUEST>
</HEADER>
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME<All Masters</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA xmlns:UDF="TallyUDF">

<TALLYMESSAGE>
<Ledger NAME="ABC">
<Name.LIST>
<Name>ABC</Name>
</Name.LIST>
<Parent>Sundry Debtors</Parent>
</Ledger>
</TALLYMESSAGE>

</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>

Remarks:-
1) Notice that the XML tags within the <TALLYMESSAGE> are in proper-case whereas the other tags are in upper-case. We have written it this way as Tally 9 Release 2.1 generates tags in this style.
2) We had not included the <LanguageName.LIST> as this was not supported by Tally 7.2

Next, we used the above XML tags with different versions of Tally to create Ledger Master. And here's what we found.

Case 1: Using XML tags (written in proper-case) with Tally 9 Release 2.1
When we used the aforesaid XML tags (having proper-case) with Tally 9 Release 2.1, an error message was generated by Tally and no master-record was created in Tally. The error message was "No Valid Names!"

Case 2: Using XML tags (written in proper-case) with Tally 7.2
When we used the aforesaid XML tags (having proper-case) with Tally 7.2 Release 3.12, it worked fine and the Ledger master was created.

Next, we tried XML tags written in upper-case and here are our findings.

XML tags for Ledger Master (upper-case)

<ENVELOPE>
<HEADER>
<TALLYREQUEST<Import Data</TALLYREQUEST>
</HEADER>
<BODY>
<IMPORTDATA>
<REQUESTDESC>
<REPORTNAME<All Masters</REPORTNAME>
</REQUESTDESC>
<REQUESTDATA xmlns:UDF="TallyUDF">

<TALLYMESSAGE>
<LEDGER NAME="ABC">
<NAME.LIST>
<NAME>ABC</NAME>
</NAME.LIST>
<PARENT>Sundry Debtors</PARENT>
</LEDGER>
</TALLYMESSAGE>

</REQUESTDATA>
</IMPORTDATA>
</BODY>
</ENVELOPE>

We used the above XML tags (written in upper-case) with different versions of Tally to create Ledger Master. And here's what we found.

Case 1: Using XML tags (written in upper-case) with Tally 9 Release 2.1
It worked fine and Ledger master is created.

Case 2: Using XML tags (written in upper-case) with Tally 7.2 Release 3.12
It worked fine and Ledger master is created.

Surprising, though Tally 9 Release 2.1 generates XML tags in proper-case, but when we tried pushing data using XML tags written in same style (i.e. proper-case) it did not work. However, when we changed the XML tags to upper-case, it worked fine.

CONCLUSION

The test-experiments that we have done so far, suggest that we use XML tags in UPPER-CASE for pushing data into Tally, as this works with all the Tally versions including the latest Tally 9 Release 2.1

A BIG-RELIEF for those who have written programs for Tally Integration as these programs are likely NOT to be affected due to change in the Tally 9 Release 2.1 XML format. Also, note that all sample XML tags given at our site are in upper-case and hence will work with all versions of Tally software including Tally 9 Release 2.1

Of-course data conversion modules will (or may) be affected and may not function properly with Tally 9 Release 2.1 as mentioned in my previous post.


1 comment:

Charles said...

Is there any possible to fetch XML tags of a particular voucher using the guid ?