Attribute Importer

Last updated May 14, 2019 by Precast Extensions

Software version: 
Not version-specific
Not environment-specific

Attribute Importer


Purpose and description
Installing Attribute Importer
Using Attribute Importer
Attribute Importer settings
Customizing Attribute Importer
Additional information

Purpose and description

This applicationpart of Tekla Structures functionality that is developed in order to extend the capability of Tekla Structures but that is not included in the Tekla Structures installation

assigns user defined attributes to any model objectobject that is represented in a model

A model object is either created in a model or imported into it.

base on filters and rules.  This works regardless of how the objects were created (E.g. custom components, system components, etc...)  This application can also set the numberingprocess of assigning position numbers to parts, cast units, assemblies, or reinforcement

In Tekla Structures, the position numbers assigned in the numbering are shown in marks and templates, for example.

prefix, start numberfirst number of a numbering series

and other object propertiesproperties associated with an object type

Usually a single object property includes a default value that the user can modify.

if entered.

Installing Attribute Importer

To install the extension:

  1. Download the extension.
  2. Install the extension using the 'Tekla Structures extension manager'

Using Attribute Importer

To run the extension, follow these steps

  1. Open the page 'Applications & Components' in the side pane.
  2. Search the Attribute Importer tool in the side pane view.
  3. Double click the tool icon or name
  4. There will then soon be a progress bar to show the program is working (It may take a few moments to load)

Please note that to get the extension application to make anything useful you need to have some attribute files containing the filter settings, attribute rules and setters. Please see the paragraph Attribute Importer settings how to create these attribute files.

Basic functionality

Assigning of properties and user defined attributes is based on one or more set of rules. One rule set consists of:

  • One standard Tekla Structures selection filterfilter used for defining which object types can be selected

    Selection filter chooses model objects or objects in drawings according to object properties.

    Selection filters can be standard or user-defined.

    For example, selection filters can be used to select parts for drawings or analysis.

    . This is the ‘main’ filter.
  • Zero or more custom filters. Custom filter is based on report or user defined attribute values.
  • One or more property or user defined attribute setters

The functionality is fairly straight forward as follows:

  • For each rule setmaster drawing that contains model selection filters and where the properties and drawing settings vary based on the selected model objects

    the application will first select all objects matching with the ‘main’ filter
  • Then the application will enumerate each selected object and check if all custom filters in current rule set are matching, if yes then the application assigns the properties and/or user defined attributes given in the current rule set to the object.

Attribute Importer settings

The application can read both ASCII/text files or Excel based files.  In your model folderfolder that is used for storing files associated with a model

Tekla Structures stores all files associated with a model in a folder it creates with the same name as the model database (.db1).

In multi-user mode all users access the same model folder.

you need to create a new folder called "AttributeImport".  In this folder any file with  *.xls, *.xlsr, or *.atr will be used as import files and read each time the tool is launched.

The application reads in each import files and creates a rule set for each row encountered in the file.  Each row is independent and can vary as needed.  The columns in excel separate the settings from each other, it is important to follow proper syntax in the columns and separate the various settings.  The text files use a semi colon ";" to separate the different settings instead.

You can download sample settings for both .xlsx and .atr file types at the Tekla Warehouse page.

1.  You must first have a Tekla Structures model filter specified.

  • This must start with the string "filter_select:"
  • The string after the ":" must match an existing Tekla Structures model filter from the XS_SYSTEM path.
  • Example filter_select:HTA

2.  Next you can choose to set the numbering prefix and start numbers

  • The numbering prefix must start with the string "prefix:"
  • The numbering start number must start with the string "startno:"
  • You can choose to have Tekla Structures automatically number the objects by using a positive integer value, E.g. 1, 2, 3
  • You can use a - for the start number to manually set the numbering, E.g. -6
  • Example prefix:E147
  • Example startno:-6
  • Example result mark = E1476
  • Please note that setters "prefix:" and "startno:" will set the part and assembly numbering seriesset of identifiers defined by the user, based on which Tekla Structures compares parts, assemblies, cast units, or reinforcement with each other during the numbering and gives position numbers

    Numbering series is defined by a prefix and a start number.

    The user can, for example, allocate separate numbering series to different phases or part types.

    to be same. If you need to get the part and assembly series values different you can use the property setters as shown below.

3.  Next you can have multiple report and/or udaobject property created by the user in order to widen the range of predefined object properties

User-defined attributes are used when the predefined object properties are not sufficient but more properties are needed. For example, comment, locked, and erection status are user-defined attributes.

type custom secondary filters

  • Report type filters must start with the string "filter_report:"
  • Uda type filters must start with the string "filter_uda:"
  • Example filter_report:LENGTH=500.00
  • Example filter_uda:comment=FVZ

4.  Next you can have multiple setters for user defined attributes

  • This must start with the string "uda:" following the name of the UDA, equal sign and the value.
  • Example uda:PRODUCT_DESCR=HTA500
  • Please make sure the value is compatible with the data type of the UDA. For number type give the number without decimal dot, for float type of UDA give always the value with decimal separator (.). If you need to assign numerical value to a UDA of string type give the value by enclosing the number into quotes. For example PRODUCT_DESCR="100".
5.  Finally you can have multiple setters for any object properties
  • This must start with the string "property:" following the name of the property, equal sign and the value.
  • Property naming follows the Tekla Open APIapplication programming interface that lets third-party applications integrate to and communicate with Tekla Structures

    Tekla Open API enables, for example, customizing Tekla Structures.

    naming, some are given in following examples but for complete specification please take a look on Open API reference.
  • Example property:Finish=Zinc coated
  • Example property:Material.MaterialString=C30/35
  • With property setter you can control the part and assembly numbering series individually. To set the numbering series prefix and/or start numbers please add one ot more of the following property setters (replace the example values below to whatever values you prefer)
    • property:AssemblyNumber.Prefix=HTA
    • property:AssemblyNumber.StartNumber=200
    • property:PartNumber.Prefix=hta
    • property:PartNumber.StartNumber=1000
  • Attribute importer can be used to set the object properties which data type is either a number (int), decimal number (double) , text (string) or an enumerator type.  
  • For enumerator types give the value as a text matching with the naming as it is in Tekla Open API. For example, if you want to set the cast unit typeproperty of a concrete part in a cast unit that defines if the structure type of the part is precast or cast in place

    give the setter as follows, property:CastUnitType=CAST_IN_PLACE (or property:CastUnitType=PRECAST)

Customizing Attribute Importer

Using a text editor you can edit the AttributeImporter.exe.config file to change advanced optionssettings used to customize Tekla Structures for specific companies, standards, users, or user groups

In Tekla Structures, advanced options are settings that are used, for example, in a specific project or geographical area, or by a specific company.

In Tekla Structures, advanced options usually begin with the initials XS and are followed by the name of the function, for example XS_BACKGROUND_COLOR.


  • The setting "showLog" can be set to True or False depending on whether you want to automatically display the log filefile that contains information related to changes, actions, and errors in the model or drawing

    Tekla Structures writes information in log files when the model is saved, numbered or checked for clashes, for example.

    with the import process history.
  • "textFileExtension" can be changed to look at only certain import files based on extension
  • "excelFileExtension" can be changed to look at only certain import files
  • "importFoldername" can be changed to specify a different name of the import folder to use when looking for files to run
  • "logFileName" can be changed to create new/different log files under model importimport of a model from another software to Tekla Structures

    Tekla Structures supports several different formats to import models.


Additional information

Reading the attribute settings from text files is faster compared to reading xls-files.If you have many Excel files you can speed up the process by saving the Excel files as comma separated files and use the text file extension (*.atr).

Quick feedback

The feedback you give here is not visible to other users. We use your comments to improve our content.
We use this to prevent automated spam submissions.
Content rating: 
Average page rating: 3.5 (2 votes)
Refresh page after voting to show updated result.