WhatsApp Support

TDL Programming Basics — Report, Form, Part, Line, Field और Collection (Beginners)

TDL (Tally Definition Language) में हर चीज़ एक “definition” है — और TallyPrime की हर screen Report → Form → Part → Line → Field की chain से बनती है, जबकि data Collection से आता है। यह guide सीखने वालों के लिए है: छोटे, सही examples से समझिए कि TDL code कैसा दिखता है। नीचे का code learning के लिए है — इसे हमेशा test company पर चलाएँ।

TDL की 5 मूल बातें

Screen की chain: Report से Field तक

Definition क्या है आसान तुलना
Report सबसे ऊपर — क्या दिखेगा, कैसे काम करेगा पूरी किताब
Form Report का layout पन्ना
Part Form का एक हिस्सा पन्ने का paragraph block
Line Part की एक row एक पंक्ति
Field जहाँ value दिखती या भरी जाती है एक शब्द / खाना
Menu Items की list (जैसे Gateway of Tally); Report की तरह अकेला रह सकता है किताबों की सूची
Collection Data का group — ledgers, vouchers, stock items data की टोकरी

Form, Part, Line और Field अकेले नहीं चलते — वे हमेशा किसी Report के अंदर इस्तेमाल होते हैं। Report और Menu स्वतंत्र हैं।

Example 1: Hello TDL (learning के लिए)

यह Gateway of Tally में एक नया item जोड़ता है, जो एक छोटी report खोलकर एक line दिखाता है:

;; Learning example - Gateway of Tally mein naya item
[#Menu: Gateway of Tally]
    Add : Item : Hello TDL : Display : Hello TDL

[Report: Hello TDL]
    Form : Hello TDL

[Form: Hello TDL]
    Part : Hello TDL

[Part: Hello TDL]
    Line : Hello TDL

[Line: Hello TDL]
    Field : Hello TDL

[Field: Hello TDL]
    Set As     : "Namaste! Yeh meri pehli TDL hai"
    Full Width : Yes

ध्यान दें: पहली definition में # है, यानी TallyPrime की अपनी Gateway of Tally menu बदली जा रही है। Display : Hello TDL का मतलब है item चुनने पर “Hello TDL” report display mode में खुलेगी। बाकी हर definition अगली को नाम से बुलाती है — यही chain है।

Example 2: Collection से ledgers की list

अब data लाते हैं। Collection सभी ledgers इकट्ठा करता है और Part उसकी हर ledger के लिए Line दोहराता है:

[Collection: AT Ledgers]
    Type  : Ledger
    Fetch : Name, Parent

[Part: AT Ledger List]
    Line   : AT Ledger Line
    Repeat : AT Ledger Line : AT Ledgers
    Scroll : Vertical

[Line: AT Ledger Line]
    Field : AT Ledger Name

[Field: AT Ledger Name]
    Set As     : $Name
    Full Width : Yes

Repeat line को collection की हर entry के लिए दोहराता है और $Name हर ledger का नाम देता है। इस Part को किसी Form में लगाकर report बनाई जा सकती है — ऊपर वाले Hello TDL जैसा।

Code को चलाएँ कैसे

  1. Code को Notepad में .txt या .tdl file के रूप में save करें (या Tally Developer में)।
  2. Test company खोलें, F1 → TDLs & Add-Ons → F4 से file load करें — पूरे steps।
  3. Ctrl+Alt+T से देखें कि TDL loaded है; error हो तो message पढ़ें (अक्सर spelling या missing definition)।
  4. सीखने के लिए Tally की official Developer Reference (help.tallysolutions.com) सबसे अच्छा source है।
✕

# भूल जाना या ज़्यादा लगा देना

[Menu: Gateway of Tally] (बिना #) लिखने पर TallyPrime इसे नई definition मानेगा और error/गलत behaviour आएगा। Default definition बदलनी हो तो # ज़रूर लगाएँ; अपनी नई definition पर नहीं।

✕

नाम में spelling mismatch

Form : Hello TDL लिखा और definition [Form: Hello-TDL] बनाई — chain टूट जाएगी। हर नाम exactly वही लिखें जो definition में है।

✕

Practice code live company पर चलाना

Display वाली TDL से नुकसान कम है, पर data लिखने वाली गलत TDL entries बिगाड़ सकती है। सीखते समय हमेशा test company और backup।

FAQ

TDL programming kaise seekhein?
पहले definitions और Report-Form-Part-Line-Field की chain समझें, फिर Tally की Developer Reference (help.tallysolutions.com) पढ़ें और Tally Developer या किसी plain text editor में छोटे examples लिखकर test company पर load करें।
Is TDL hard to learn?
Basics आसान हैं, क्योंकि TDL में हर चीज़ definition और attribute है। मुश्किल हिस्सा TallyPrime के default code को समझना है, जिसमें समय और practice लगती है।
TDL लिखने के लिए कौन-सा software चाहिए?
TDL किसी भी plain text editor में .txt या .tdl file के रूप में लिखी जा सकती है। Tally का अपना Tally Developer tool editing, compile करके .tcp बनाने और errors पकड़ने में मदद करता है।
TDL में # का क्या मतलब है?
# definition modifier है। [#Menu: Gateway of Tally] का मतलब है कि नई menu बनाने के बजाय TallyPrime की मौजूदा Gateway of Tally menu को बदला जा रहा है।
Kya main seekhkar khud business ki TDL bana sakta hoon?
छोटे reports और fields हाँ। पर live data पर चलने वाली TDL — खासकर जो data save या import करती है — पहले test company पर अच्छी तरह जाँचें, या अनुभवी developer से review करवाएँ।

सीख रहे हैं और कहीं अटक गए, या business के लिए production-ready TDL चाहिए — हम source-code level पर TDL लिखते हैं। WhatsApp करें।

WhatsApp पर पूछें

Related: TDL Customization Services · TDL क्या है · TDL Errors Fix

💬 WhatsApp Help 🔍 Ledger Database