tally-xml-tdl 1.15.2 → 1.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/package.json +2 -2
  2. package/src/index.js +3 -2
  3. package/src/v16/body.xml +25 -0
  4. package/src/{v15 → v16}/core/execute/executeXmlAndClean.js +1 -1
  5. package/src/v16/masters/body.xml +25 -0
  6. package/src/{v15/masters.js → v16/masters/index.js} +6 -6
  7. package/src/v16/masters/masters.json +86 -0
  8. package/src/v16/vouchers/body.xml +25 -0
  9. package/src/v16/vouchers/index.js +40 -0
  10. package/src/{v15/masters.json → v16/vouchers/info.json} +8 -1
  11. /package/src/{v15/body.xml → v16/body copy.xml} +0 -0
  12. /package/src/{v15 → v16}/body.json +0 -0
  13. /package/src/{v15 → v16}/company.js +0 -0
  14. /package/src/{v15 → v16}/core/buildXml.js +0 -0
  15. /package/src/{v15 → v16}/core/changeType/v1/changeTypeString.js +0 -0
  16. /package/src/{v15 → v16}/core/changeType/v2/changeTypeString.js +0 -0
  17. /package/src/{v15 → v16}/core/changeType/v3/alterLeaf.js +0 -0
  18. /package/src/{v15 → v16}/core/changeType/v3/changeTypeString.js +0 -0
  19. /package/src/{v15 → v16}/core/changeType/v3/forArray/v1/index.js +0 -0
  20. /package/src/{v15 → v16}/core/changeType/v3/forObject/v1/index.js +0 -0
  21. /package/src/{v15 → v16}/core/changeType/v3/guards.js +0 -0
  22. /package/src/{v15 → v16}/core/changeType/v3/traverse.js +0 -0
  23. /package/src/{v15 → v16}/core/cleanTallyResponse.js +0 -0
  24. /package/src/{v15 → v16}/core/execute/executeBody.js +0 -0
  25. /package/src/{v15 → v16}/core/execute/executeXml.js +0 -0
  26. /package/src/{v15 → v16}/core/execute/index.js +0 -0
  27. /package/src/{v15 → v16}/core/index.js +0 -0
  28. /package/src/{v15 → v16}/core/request/envelope.js +0 -0
  29. /package/src/{v15 → v16}/core/request/index.js +0 -0
  30. /package/src/{v15 → v16}/core/request/jsonToXml.js +0 -0
  31. /package/src/{v15 → v16}/core/response/index.js +0 -0
  32. /package/src/{v15 → v16}/core/response/xmlToJson.js +0 -0
  33. /package/src/{v15 → v16}/core/transport/http.js +0 -0
  34. /package/src/{v15 → v16}/core/transport/index.js +0 -0
  35. /package/src/{v15 → v16}/daybook/body copy.xml +0 -0
  36. /package/src/{v15 → v16}/daybook/body.xml +0 -0
  37. /package/src/{v15 → v16}/fromJson.js +0 -0
  38. /package/src/{v15 → v16}/fromXml.js +0 -0
  39. /package/src/{v15 → v16}/index.d.ts +0 -0
  40. /package/src/{v15 → v16}/index.js +0 -0
  41. /package/src/{v15 → v16}/main.d.ts +0 -0
  42. /package/src/{v15 → v16}/main.js +0 -0
  43. /package/src/{v15 → v16}/purc/body.json +0 -0
  44. /package/src/{v15 → v16}/purc/body.xml +0 -0
  45. /package/src/{v15 → v16}/purchases/v1.xml +0 -0
  46. /package/src/{v15 → v16}/purchases.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tally-xml-tdl",
3
- "version": "1.15.2",
3
+ "version": "1.16.1",
4
4
  "description": "Simple, clean TDL and XML extraction and manipulation tools for Tally",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -15,7 +15,7 @@
15
15
  }
16
16
  },
17
17
  "files": [
18
- "src/v15",
18
+ "src/v16",
19
19
  "src/index.js",
20
20
  "index.js",
21
21
  "index.d.ts",
package/src/index.js CHANGED
@@ -1,2 +1,3 @@
1
- export * from "./v15/main.js";
2
- export * as masters from "./v15/masters.js";
1
+ export * from "./v16/main.js";
2
+ export * as masters from "./v16/masters/index.js";
3
+ export * as vouchers from "./v16/vouchers/index.js";
@@ -0,0 +1,25 @@
1
+ <ENVELOPE>
2
+ <HEADER>
3
+ <VERSION>1</VERSION>
4
+ <TALLYREQUEST>Export</TALLYREQUEST>
5
+ <TYPE>Collection</TYPE>
6
+ <ID>TDLID</ID>
7
+ </HEADER>
8
+
9
+ <BODY>
10
+ <DESC>
11
+ <STATICVARIABLES>
12
+ <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
13
+ {{STATICVARIABLES}}
14
+ </STATICVARIABLES>
15
+
16
+ <TDL>
17
+ <TDLMESSAGE>
18
+ <COLLECTION NAME="TDLID">
19
+ {{TDLMESSAGE}}
20
+ </COLLECTION>
21
+ </TDLMESSAGE>
22
+ </TDL>
23
+ </DESC>
24
+ </BODY>
25
+ </ENVELOPE>
@@ -1,5 +1,5 @@
1
1
  // src/v13/core/execute/executeXml.js
2
- import cleanTallyResponse from "../../core/cleanTallyResponse.js";
2
+ import cleanTallyResponse from "../cleanTallyResponse.js";
3
3
  import { sendXml } from "../transport/http.js";
4
4
  import { xmlToJson } from "../response/xmlToJson.js";
5
5
 
@@ -0,0 +1,25 @@
1
+ <ENVELOPE>
2
+ <HEADER>
3
+ <VERSION>1</VERSION>
4
+ <TALLYREQUEST>Export</TALLYREQUEST>
5
+ <TYPE>Collection</TYPE>
6
+ <ID>TDLID</ID>
7
+ </HEADER>
8
+
9
+ <BODY>
10
+ <DESC>
11
+ <STATICVARIABLES>
12
+ <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
13
+ {{STATICVARIABLES}}
14
+ </STATICVARIABLES>
15
+
16
+ <TDL>
17
+ <TDLMESSAGE>
18
+ <COLLECTION NAME="TDLID">
19
+ {{TDLMESSAGE}}
20
+ </COLLECTION>
21
+ </TDLMESSAGE>
22
+ </TDL>
23
+ </DESC>
24
+ </BODY>
25
+ </ENVELOPE>
@@ -2,8 +2,8 @@ import fs from "fs";
2
2
  import path from "path";
3
3
  import { fileURLToPath } from "url";
4
4
 
5
- import { executeXml, executeXmlAndClean } from "./core/index.js";
6
- import { buildXml } from "./core/buildXml.js";
5
+ import { executeXml, executeXmlAndClean } from "../core/index.js";
6
+ import { buildXml } from "../core/buildXml.js";
7
7
  import bodyJson from "./masters.json" with {type: "json"};
8
8
 
9
9
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
@@ -23,15 +23,15 @@ const get = (company, jsonId) => {
23
23
  };
24
24
 
25
25
  const clean = (company, jsonId) => {
26
- const { tdlMessage } = bodyJson[jsonId];
26
+ const { tdlMessage, staticVariables } = bodyJson[jsonId];
27
27
 
28
- const staticVariables = `<SVCURRENTCOMPANY>${company}</SVCURRENTCOMPANY>`;
28
+ const companyFilter = `<SVCURRENTCOMPANY>${company}</SVCURRENTCOMPANY>${staticVariables}`;
29
29
 
30
30
  const xml = buildXml(body, {
31
- staticVariables,
31
+ staticVariables: companyFilter,
32
32
  tdlMessage
33
33
  });
34
-
34
+ // console.log("xml : ", staticVariables, xml);
35
35
  return executeXmlAndClean(xml);
36
36
  };
37
37
 
@@ -0,0 +1,86 @@
1
+ {
2
+ "company": {
3
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
4
+ "tdlMessage": "<TYPE>Company</TYPE><FETCH>$$Alias:Name</FETCH>"
5
+ },
6
+ "allPurchases": {
7
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
8
+ "tdlMessage": "<TYPE>Vouchers</TYPE><FETCH>Date</FETCH>"
9
+ },
10
+ "purchasesPeriod": {
11
+ "staticVariables": "<SVFROMDATE TYPE=\"Date\">1-Apr-2026</SVFROMDATE><SVTODATE TYPE=\"Date\">30-Apr-2026</SVTODATE>",
12
+ "tdlMessage": "<TYPE>Vouchers</TYPE><FETCH>Date</FETCH>"
13
+ },
14
+ "uom": {
15
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
16
+ "tdlMessage": "<TYPE>Unit</TYPE><FETCH>$$Alias:Name</FETCH>"
17
+ },
18
+ "stockItems": {
19
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
20
+ "tdlMessage": "<TYPE>StockItem</TYPE><FETCH>$$Alias:Name</FETCH>"
21
+ },
22
+ "stockItemsWithBaseUnits": {
23
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
24
+ "tdlMessage": "<TYPE>StockItem</TYPE><FETCH>$$Alias:Name</FETCH><FETCH>BaseUnits</FETCH>"
25
+ },
26
+ "ledgerNames": {
27
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
28
+ "tdlMessage": "<TYPE>Ledger</TYPE><FETCH>$$Alias:Name</FETCH>"
29
+ },
30
+ "ledgerNamesWithDetails": {
31
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
32
+ "tdlMessage": "<TYPE>Ledger</TYPE><FETCH>$$Alias:Name</FETCH><FETCH>GSTRegistrationType</FETCH><FETCH>GSTIN</FETCH>"
33
+ },
34
+ "ledgerNamesMoreDetails": {
35
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
36
+ "tdlMessage": "<TYPE>Ledger</TYPE><FETCH>$$Alias:Name</FETCH><FETCH>LEDGSTREGDETAILS.LIST</FETCH>"
37
+ },
38
+ "stockGroups": {
39
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
40
+ "tdlMessage": "<TYPE>StockGroup</TYPE><FETCH>$$Alias:Name</FETCH>"
41
+ },
42
+ "stockGroupsAndParent": {
43
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
44
+ "tdlMessage": "<TYPE>StockGroup</TYPE><FETCH>$$Alias:Name</FETCH><FETCH>Parent</FETCH>"
45
+ },
46
+ "purchases1": {
47
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>30-Apr-2026</SVTODATE>",
48
+ "tdlMessage": "<TYPE>Voucher</TYPE><FILTER>$$IsPurchase:$VoucherTypeName</FILTER><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH><FETCH>PartyLedgerName</FETCH><FETCH>Amount</FETCH>"
49
+ },
50
+ "purchases2": {
51
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>30-Apr-2026</SVTODATE>",
52
+ "tdlMessage": "<TYPE>Vouchers:VoucherType</TYPE><CHILDOF>$$VchTypePurchase</CHILDOF><BELONGSTO>Yes</BELONGSTO><FETCH>Date, VoucherNumber, VoucherTypeName, PartyLedgerName, AllInventoryEntries</FETCH>"
53
+ },
54
+ "purchases3": {
55
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>1-Apr-2026</SVTODATE>",
56
+ "tdlMessage": "<TYPE>Voucher</TYPE><SYSTEM TYPE=\"Formulae\" NAME=\"DateFilter\">$Date &gt;= ##SVFROMDATE AND $Date &lt;= ##SVTODATE</SYSTEM><FILTER>DateFilter</FILTER><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH><FETCH>PartyLedgerName</FETCH><FETCH>AllInventoryEntries</FETCH>"
57
+ },
58
+ "purchases4": {
59
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>1-Apr-2026</SVTODATE>",
60
+ "tdlMessage": "<SYSTEM TYPE=\"Formula\" NAME=\"DateFilter\">$Date &gt;= ##SVFROMDATE AND $Date &lt;= ##SVTODATE</SYSTEM><COLLECTION NAME=\"KeshavPurchases\"><TYPE>Voucher</TYPE><FILTER>DateFilter</FILTER><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH><FETCH>PartyLedgerName</FETCH><FETCH>AllInventoryEntries</FETCH></COLLECTION>"
61
+ },
62
+ "purchases5": {
63
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>1-Apr-2026</SVTODATE>",
64
+ "tdlMessage": "<SYSTEM TYPE=\"Formulae\" NAME=\"DateFilter\">$Date &gt;= ##SVFROMDATE AND $Date &lt;= ##SVTODATE</SYSTEM><COLLECTION NAME=\"KeshavPurchases\"><TYPE>Voucher</TYPE><FILTER>DateFilter</FILTER><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH><FETCH>PartyLedgerName</FETCH><FETCH>AllInventoryEntries</FETCH></COLLECTION>"
65
+ },
66
+ "purchases6": {
67
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>1-Apr-2026</SVTODATE>",
68
+ "tdlMessage": "<COLLECTION NAME=\"KeshavPurchases\"><TYPE>Voucher</TYPE><FILTERS>DateFilter</FILTERS><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH><FETCH>PartyLedgerName</FETCH><FETCH>AllInventoryEntries</FETCH></COLLECTION><SYSTEM TYPE=\"Formulae\" NAME=\"DateFilter\">$Date &gt;= ##SVFROMDATE AND $Date &lt;= ##SVTODATE</SYSTEM>"
69
+ },
70
+ "purchases7": {
71
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE>1-Apr-2026</SVFROMDATE><SVTODATE>1-Apr-2026</SVTODATE>",
72
+ "tdlMessage": "<COLLECTION NAME=\"KeshavPurchases\"><TYPE>Voucher</TYPE><FILTERS>DateFilter</FILTERS><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH><FETCH>PartyLedgerName</FETCH><FETCH>AllInventoryEntries</FETCH></COLLECTION><SYSTEM TYPE=\"Formulae\" NAME=\"DateFilter\">$Date &gt;= ##SVFROMDATE AND $Date &lt;= ##SVTODATE</SYSTEM>"
73
+ },
74
+ "purchases8": {
75
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
76
+ "tdlMessage": "<COLLECTION NAME=\"KeshavPurchases\"><TYPE>Voucher</TYPE><FETCH>Date</FETCH><FETCH>VoucherNumber</FETCH><FETCH>VoucherTypeName</FETCH></COLLECTION>"
77
+ },
78
+ "purchases9": {
79
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
80
+ "tdlMessage": "<COLLECTION NAME=\"KeshavPurchaseInventory\"><TYPE>Vouchers:VoucherType</TYPE><CHILDOF>$$VchTypePurchase</CHILDOF><BELONGSTO>Yes</BELONGSTO><FETCH>Date, VoucherNumber, VoucherTypeName, PartyLedgerName, AllInventoryEntries</FETCH></COLLECTION>"
81
+ },
82
+ "purchases10": {
83
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE TYPE=\"Date\">4-Sep-2026</SVFROMDATE><SVTODATE TYPE=\"Date\">4-Sep-2026</SVTODATE>",
84
+ "tdlMessage": "<TYPE>Vouchers:VoucherType</TYPE><CHILDOF>$$VchTypePurchase</CHILDOF><BELONGSTO>Yes</BELONGSTO><FETCH>AllInventoryEntries</FETCH><FETCH>Date</FETCH>"
85
+ }
86
+ }
@@ -0,0 +1,25 @@
1
+ <ENVELOPE>
2
+ <HEADER>
3
+ <VERSION>1</VERSION>
4
+ <TALLYREQUEST>Export</TALLYREQUEST>
5
+ <TYPE>Collection</TYPE>
6
+ <ID>TDLID</ID>
7
+ </HEADER>
8
+
9
+ <BODY>
10
+ <DESC>
11
+ <STATICVARIABLES>
12
+ <SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>
13
+ {{STATICVARIABLES}}
14
+ </STATICVARIABLES>
15
+
16
+ <TDL>
17
+ <TDLMESSAGE>
18
+ <COLLECTION NAME="TDLID">
19
+ {{TDLMESSAGE}}
20
+ </COLLECTION>
21
+ </TDLMESSAGE>
22
+ </TDL>
23
+ </DESC>
24
+ </BODY>
25
+ </ENVELOPE>
@@ -0,0 +1,40 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import { fileURLToPath } from "url";
4
+
5
+ import { executeXml, executeXmlAndClean } from "../core/index.js";
6
+ import { buildXml } from "../core/buildXml.js";
7
+ import infoJson from "./info.json" with {type: "json"};
8
+
9
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
10
+ const body = fs.readFileSync(path.join(__dirname, "body.xml"), "utf8");
11
+
12
+ const get = (company, fromDate, ToDate, jsonId) => {
13
+ const { tdlMessage } = infoJson[jsonId];
14
+
15
+ const staticVariables = `<SVCURRENTCOMPANY>${company}</SVCURRENTCOMPANY>
16
+ <SVFROMDATE TYPE="Date">${fromDate}</SVFROMDATE><SVTODATE TYPE="Date">${ToDate}</SVTODATE>`;
17
+
18
+ const xml = buildXml(body, {
19
+ staticVariables,
20
+ tdlMessage
21
+ });
22
+
23
+ return executeXml(xml);
24
+ };
25
+
26
+ const clean = (company, fromDate, ToDate, jsonId) => {
27
+ const { tdlMessage } = infoJson[jsonId];
28
+
29
+ const staticVariables = `<SVCURRENTCOMPANY>${company}</SVCURRENTCOMPANY>
30
+ <SVFROMDATE TYPE="Date">${fromDate}</SVFROMDATE><SVTODATE TYPE="Date">${ToDate}</SVTODATE>`;
31
+
32
+ const xml = buildXml(body, {
33
+ staticVariables,
34
+ tdlMessage
35
+ });
36
+
37
+ return executeXmlAndClean(xml);
38
+ };
39
+
40
+ export { get, clean };
@@ -3,6 +3,13 @@
3
3
  "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
4
4
  "tdlMessage": "<TYPE>Company</TYPE><FETCH>$$Alias:Name</FETCH>"
5
5
  },
6
+ "allPurchases": {
7
+ "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
8
+ "tdlMessage": "<TYPE>Vouchers</TYPE><FETCH>Date</FETCH>"
9
+ },
10
+ "purchasesPeriod": {
11
+ "tdlMessage": "<TYPE>Vouchers</TYPE><FETCH>Date</FETCH>"
12
+ },
6
13
  "uom": {
7
14
  "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
8
15
  "tdlMessage": "<TYPE>Unit</TYPE><FETCH>$$Alias:Name</FETCH>"
@@ -71,7 +78,7 @@
71
78
  "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT>",
72
79
  "tdlMessage": "<COLLECTION NAME=\"KeshavPurchaseInventory\"><TYPE>Vouchers:VoucherType</TYPE><CHILDOF>$$VchTypePurchase</CHILDOF><BELONGSTO>Yes</BELONGSTO><FETCH>Date, VoucherNumber, VoucherTypeName, PartyLedgerName, AllInventoryEntries</FETCH></COLLECTION>"
73
80
  },
74
- "purchases": {
81
+ "purchases10": {
75
82
  "staticVariables": "<SVEXPORTFORMAT>$$SysName:XML</SVEXPORTFORMAT><SVFROMDATE TYPE=\"Date\">4-Sep-2026</SVFROMDATE><SVTODATE TYPE=\"Date\">4-Sep-2026</SVTODATE>",
76
83
  "tdlMessage": "<TYPE>Vouchers:VoucherType</TYPE><CHILDOF>$$VchTypePurchase</CHILDOF><BELONGSTO>Yes</BELONGSTO><FETCH>AllInventoryEntries</FETCH><FETCH>Date</FETCH>"
77
84
  }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes