Please help me to get party name and gstin number either creditors or debtors from tally through xml http request
Code: <ENVELOPE> <HEADER> <VERSION>1</VERSION> <TALLYREQUEST>EXPORT</TALLYREQUEST> <TYPE>DATA</TYPE> <ID>LISTOFLEDGER</ID> </HEADER> <BODY> <DESC> <TDL> <TDLMESSAGE> <REPORT ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="LISTOFLEDGER"> <FORMS>LISTOFLEDGER</FORMS> </REPORT> <FORM ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="LISTOFLEDGER"> <TOPPARTS>LISTOFLEDGER</TOPPARTS> <XMLTAG>LISTOFLEDGER</XMLTAG> </FORM> <PART ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="LISTOFLEDGER"> <TOPLINES>LISTOFLEDGER</TOPLINES> <REPEAT>LISTOFLEDGER : CUSTOM_LEDGERCOLL</REPEAT> <SCROLLED>Vertical</SCROLLED> </PART> <LINE ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="LISTOFLEDGER"> <FIELDS>NAME,GSTIN</FIELDS> <XMLTAG>LEDGER</XMLTAG> </LINE> <FIELD ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="NAME"> <SET>$NAME</SET> <XMLTAG>NAME</XMLTAG> </FIELD> <FIELD ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="GSTIN"> <SET>$PARTYGSTIN</SET> <XMLTAG>GSTIN</XMLTAG> </FIELD> <COLLECTION ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="CUSTOM_LEDGERCOLL"> <TYPE>LEDGER</TYPE> <NATIVEMETHOD>Name,PARTYGSTIN</NATIVEMETHOD> </COLLECTION> </TDLMESSAGE> </TDL> </DESC> </BODY> </ENVELOPE>
"I'm experiencing an issue with the code mentioned above in Tally Prime version 3.0. It seems that the code is not able to fetch GSTINs. If it's possible, could someone kindly assist me in updating the code? Your help would be greatly appreciated. Thank you in advance.
This works in Tally prime 3.0, if and only ledger is created in old version of Tally, If ledger is created in new version its using LedGSTRegDetails , so it's better to use $LedGSTRegDetails[last].GSTIN to support all clients.
use $LedGSTRegDetails[last].GSTIN to get latest details. there's a chance that client may have different taxability during period, last will fetch the latest GSTIN.
you can childof inside collection and mention name of group you want to filter. if you want nested childs then add <Belongsto>Yes</Belongsto> also Code: <COLLECTION ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="CUSTOM_LEDGERCOLL"> <TYPE>LEDGER</TYPE> <CHILDOF>SundryDebtors</CHILDOF> <Belongsto>Yes</Belongsto> <NATIVEMETHOD>Name,LedGSTRegDetails.*</NATIVEMETHOD> </COLLECTION> To filter out empty you can add filter to collection Code: </TDLMESSAGE> <COLLECTION ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No" NAME="CUSTOM_LEDGERCOLL"> <TYPE>LEDGER</TYPE> <CHILDOF>SundryDebtors</CHILDOF> <Belongsto>Yes</Belongsto> <NATIVEMETHOD>Name,LedGSTRegDetails.*</NATIVEMETHOD> <FILTERS> ISContainsGST</FILTERS> </COLLECTION> <SYSTEM TYPE="Formulae" NAME="ISContainsGST">NOT $$ISEMPTY:$LedGSTRegDetails[last].GSTIN</SYSTEM> </TDLMESSAGE>