The architecture of Tally.Developer 9 is in layers.
The Layer structure is used to make the programmer’s life easy. The powerful features embedded in it makes TD 9 a clean, straightforward and fairly simple development tool, which makes work more fun.
3 layers of Tally.ERP9 Architecture
- The Application/Tally.ERP 9 Layer
- The TDL Language and TDL Interpreter
- The Platform Layer/Engine
1. The Application Layer
All the product functionalities are accessed via the Application (eg: Tally.ERP 9), and all the customizations made are applied to the Application. The user interacts with the Application to utilize the product functionalities and the customization.
2. Tally Definition Language
TDL, the language of Tally, is a powerful instrument in the hands of a TDL programmer. It is used to build additional functionality into the product. The foundation of TDL is built on C language and is open source. A few capabilities TDL provides are Rapid Development, Rendering, Data Management and Integration. Also, the user interface is built using TDL.
FEATURES OF TALLY DEFINITION LANGUAGE
Domain Specific Language: TDL is a definition language, providing users with ‘named definitions’.
Action Driven Language with Procedural Capabilities: TDL is action driven. The procedural elements incorporated into the language are used for flow control, looping, conditional computation etc.
Completely Object Oriented: TDL is object oriented. An object can be fixed with additional properties while retaining its existing ones for rapid development and deployment.
Since, TDL works in an interpreted environment, the TDL Interpreter acts like the bridge between the Platform layer and TDL layer. When the user executes a particular segment of code, the Interpreter examines each line of code and executes them.
3. Platform Layer
The Platform Layer is the brain of TD 9. It is the lowermost layer of the architecture, which interacts with the OS and the file system. The capabilities TDL has to offer are fully attributed to the Platform Layer, which comprises of:
- Database Engine – (Object Oriented Database Management System)
- ODBC Engine/Driver
- Language Parser
- Output/ Rendering Engine
- Function Library
- User Interface and Business Logic
- Memory Management
Tally Development Environment
The Tally Development Environment provides the technology support for creating solutions and integrations for Tally.ERP 9.
The environment comprises of:
- Tally Definition Language (TDL) integrated with the Tally.ERP 9 Platform
- Tally.Developer 9 (TD 9)
- Set of Tools – Integrated with the TD 9
- Associated Support – for TDL and TD 9
FEATURES OF TALLY.DEVELOPER 9
TD 9 comes with a long list of unique features:
- Syntax colouring, tagging and navigation of code, auto completion and more.
- Ease of debugging with error listing and diagnosis.
- Build, compile, validate and execute code from within the product
- Authorization techniques for TCP (Tally Compliant product) ensuring IP protection, control license usage etc.
- Easy customer serial management.
- Access to the Complete Tally source code as a reference.
- Instant references to TDL Language API’s such as Schema, Definition and Attributes, Functions, Actions etc.
- Ability to extend multilingual support to the product, customization, modules in localized languages with the powerful dictionary manager tool.
- Access to the support centre / Knowledge Bank.