How can I modify a Tally XML request to obtain the GUID of a stock item in the output?

188 views Asked by At

I want to get a report data with a custom field in it from tally using Xml Request


<ENVELOPE >
  <HEADER>
    <VERSION>1</VERSION>
    <TALLYREQUEST>Export</TALLYREQUEST>
    <TYPE>Data</TYPE>
    <ID>ItemUpload</ID>
  </HEADER>
  <BODY>
    <DESC>
      <TDL>
        <TDLMESSAGE>
          <REPORT NAME="ItemUpload" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <FORMS>ItemUpload</FORMS>
            <SET>SVFromDate : $$MonthStart:##SVCurrentDate</SET>
            <SET>SVToDate :$MonthEnd:##SVCurrentDate</SET>
          </REPORT>
          <FORM NAME="ItemUpload" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <TOPPARTS>ItemUpload</TOPPARTS>
            <HEIGHT>100 % PAge</HEIGHT>
            <WIDTH>100 % PAge</WIDTH>
          </FORM>
          <PART NAME="ItemUpload" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <TOPLINES>ItemUpload</TOPLINES>
            <REPEAT>ItemUpload : testStockcoll</REPEAT>
            <SCROLLED>Vertical</SCROLLED>
            <VERTICAL>Yes</VERTICAL>
          </PART>
          <LINE NAME="ItemUpload" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <LEFTFIELDS>test_StockItem</LEFTFIELDS>
            <RIGHTFIELDS>test_CLBAL, test_SOQTY</RIGHTFIELDS>
            <XMLtag>Itemlist</XMLtag>
          </LINE>
          <FIELD NAME="test_StockItem" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <USE>NameField</USE>
            <SET>$Name</SET>
            <XMLTAG>itemname</XMLTAG>
          </FIELD>
          <FIELD NAME="test_CLBAL" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <USE>Number Field</USE>
            <SET>$$Number:$ClosingBalance</SET>
            <XMLTAG>itemqty</XMLTAG>
          </FIELD>
          <FIELD NAME="test_SOQTY" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <USE>Number Field</USE>
            <SET>$$Number:$sodue</SET>
            <XMLTAG>itemsoqty</XMLTAG>
          </FIELD>
          <COLLECTION NAME="testStockcoll" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <TYPE>StockItem</TYPE>
            <BelongsTo>Yes</BelongsTo>
            <NativeMethod>*.*</NativeMethod>
            <NativeMethod>Name,ClosingBalance,sodue</NativeMethod>
          </COLLECTION>
        </TDLMESSAGE>
      </TDL>
      <STATICVARIABLES>
        <SVCURRENTCOMPANY>MyCompanyName</SVCURRENTCOMPANY>
        <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
      </STATICVARIABLES>
    </DESC>
  </BODY>
</ENVELOPE>

this is a xml request to get a report from tally . it gives output like below :

<ENVELOPE>
    <ITEMLIST>
        <ITEMNAME>10000 - 3LW</ITEMNAME>
        <ITEMQTY>0</ITEMQTY>
        <ITEMSOQTY>0</ITEMSOQTY>
    </ITEMLIST>
    <ITEMLIST>
        <ITEMNAME>10000 ISI</ITEMNAME>
        <ITEMQTY>9</ITEMQTY>
        <ITEMSOQTY>0</ITEMSOQTY>
    </ITEMLIST>
</ENVELOPE>

here I want to get id called Guid of Stock item As ............ How can I modify a Tally XML request to obtain the GUID of a stock item in the output Expected output is

<ITEMLIST>
<GUID>b710994d-3517-4bd2-b235-df5b84310556-00002a89</GUID>
        <ITEMNAME>10000 - 3LW</ITEMNAME>
        <ITEMQTY>0</ITEMQTY>
        <ITEMSOQTY>0</ITEMSOQTY>
    </ITEMLIST>

what change should I make to that request ????

1

There are 1 answers

0
sai vineeth On

Add this Field

<FIELD NAME="test_StockItemGUID" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
        <USE>NameField</USE>
        <SET>$GUID</SET>
        <XMLTAG>GUID</XMLTAG>
      </FIELD>

and Edit line as below

<LINE NAME="ItemUpload" ISMODIFY="No" ISFIXED="No" ISINITIALIZE="No" ISOPTION="No" ISINTERNAL="No">
            <LEFTFIELDS>test_StockItem</LEFTFIELDS>
            <RIGHTFIELDS>test_CLBAL, test_SOQTY,test_StockItemGUID</RIGHTFIELDS>
            <XMLtag>Itemlist</XMLtag>
          </LINE>