Explore Categories



Attribute Enhancements

Attribute Enhancements in Tally.ERP 9 Releases

Release 1.5

New Attribute – Trigger Ex

When a table is displayed from a field, and a new value is to be added to the same table, the attribute Trigger is used. It invokes a report. For example, adding a new number in fields using dynamic tables such as Tracking number, Order No, etc.


Trigger : <Report Name> : <Trigger Condition>


<Report Name> is the name of the report which is invoked if <Trigger Condition> is True. The value entered in the Output field of the <Report Name> is added to the table in the field.


[Field : FieldTrigger]

Use : Name Field

Table : New Number, Not Applicable

Show Table : Always

Trigger : New Number : $$IsSysNameEqual:NewNumber:$$EditData

CommonTable: No

Dynamic : “”

In the field “FieldTrigger”, a report “New Report” is called when the option New Number is selected from the pop-up table. When the value has to be obtained from the complicated flow, a report name does not suffice. To support this functionality, a new attribute Trigger Ex is introduced. This attribute allows adding values to the dynamic table through an expression or user-defined functions.

Attribute – Trigger Ex

The Trigger Ex attribute allows adding values to the dynamic table through an expression or user-defined function.


TriggerEx : <Value-expression> : <Trigger Condition>


<Value Expression> is an expression/function which evaluates to a String if <Trigger Condition> is True. The string value thus obtained is added to the dynamic table.


[Field : FieldTriggerEx]

Use : Name Field

Table : Ledger, New Number, Not Applicable

Show Table : Always

TriggerEx : $$FieldTriggerEx:$$IsSysNameEqual:NotApplicable:$$EditData

CommonTable : No Dynamic : “”

In the field, if the user selects any ledger from the table, the function $$FieldTriggerEx returns the parent, i.e., Group name of the ledger selected, and adds to the table “Ledger”.

[Function : FieldTriggerEx]

01 : RETURN : $Parent : Ledger : $$EditData

Note: Press Backspace in the report to view the additions to the table Ledger.

Release 5.4.9

Attribute – MAX

You can use the attribute MAX at field definition to specify the maximum number of characters that can be entered in the field. It also helps to control the field length with some specific number of characters based on a conditional expression. The expression is evaluated while opening the report.

Alias for this attribute is Maximum . This attribute accepts a number which is less than 972.


MAX : <Numerical Expression/Constant>


< Numerical expression > evaluates to a number.

For example, in Tally.ERP 9, the field PAN/National Identity Number accepts only 10 characters, because India restricts the PAN number with 10 characters. However, by using this attribute enhancement, based on the country selected, we can control the length of the field.


Max :If $$Number:$OpeningBalance:Ledger:”Cash”< 6 then 9 else $OpeningBalance:Ledger:”Cash”

Release 5.5.2

Attribute – Data Source

The collection attribute Data Source is used to populate data to a collection dynamically from a variety of data sources. This attribute accepts the Type and Identity of the data source from where the data is to be retrieved. Directory, File XML, Name Set, and so on, are some of the data sources supported in TDL.

The collection attribute Data Source is enhanced to support Rule Set, Num Set, and Flag Set as new data source types. This attribute helps the developer to gather the data pertaining to Rule Set, Num Set, or Flag Set like other data source types. The information of Num Set and Flag Set give same results except for the value. The value of Num Set is a number and value of Flag Set is logical. These data sources can be used for generating reports using Value and User Description methods. Otherwise, these can act as a debugging aid for the developer.


[Collection: <Collection Name>]

Data Source: <Type>: <Identity>


<Collection Name> is the name of the collection where the data is populated.

<Type> specifies the type of data source. This enhancement includes Rule Set , Num Set and Flag Set as data source types.

<Identity> is the name of the Rule Set/Num Set/Flag Set. It can be an expression which results to the name of Num Set/Flag Set as specified in the corresponding data type.


[Collection: DataSourceFSRepo]

Data Source: Flag Set: #FSDSVariable

The above code snippet helps to populate the collection DataSourceFSRepo with the data from the variable FSDSVariable, which returns a Flag Set name.

Data Source Type




Rule Set

Rule Set

Name of the Rule Set definition

[Collection: DSRepo]

Data Source: Rule Set: DSRuleSet

Flag Set

Flag Set

An expression evaluating to the value of Flag Set data type

[Collection: DSRepo]

Data Source: Flag Set: $FlagSetValue


Data Source:Flag Set: ##FlagSetValue

Num Set

Num Set

An expression evaluating to the value of Num Set data type

[Collection: DSRepo]

Data Source: Num Set: $NumSetValue OR

Data Source:Num Set:##NumSetValue

You can refer the below table to know more about this enhancement:

The list of methods used in Rule Set / Flag Set / Num Set as a data source is listed below:

Method Name


Method Value – Sample


Rule Name which includes the complete dotted notation



Additional Name/Formal Name

Leaf Rule Name




Current Rule Set Name



Value for individual flag or number i.e., Logical for Flag Set and Number for Num Set. It is not applicable for Rule Set.

Logical – Yes

Number – 1

Sort Position

Index of the flag or number within the Flag Set and Num Set


Is Aggregate

IsAggregate flag for Rule Set, Num Set and Flag Set



Level or Depth of Rule Set, Num Set and Flag Set


User Description

Rule Set, Num Set and Flag Set description from corresponding Name Set



Post a Comment

Is this information useful?