The TeklaStructures OpenAPI has such thing called as Dynamic Strings. It appeared in the program in the 2016 version. And makes possible to save and store a string data more than 255 chars in ModelObjects or in the ProjectInfo. Such limitation exists for the ordinary string UserProperty (UDA).
We can use Dynamic Strings for 2 possible cases:
- Writing a data into an object and getting it inside reports (*.rpt) and drawing templates (*.tpl)
- Writing a data into the object and export it to the IFC format
The Dynamic String output as a report |
The Dynamic String output as a drawing template |
The Dynamic String output as a property for an IFC object |
In the Lookup 2.1 version, I implemented a possibility for manipulating with existed and new Dynamic Strings.
- From the TeklaStructures db, it's impossible to get the list of all Dynamic Strings for the object. That's why the Lookup needs to know a certain property name for db querying.
- To make easier getting repeated properties, I made a special file where all Dynamic Strings properties which were used in the Lookup are stored. This file is called DynamicStringsProperties.lkp, and stored in the installation folder C:/TeklaStructures/202x.0/Environments/common/Lookup/
- When a user adds new or deleted an existed property from the list - the above described file is updated
- When a user wants to get some info from a Dynamic String for the next object, the DynamicStringsProperties file is read and the Lookup through the OpenAPI does a query to the TeklaStuctures db.
The Dynamic String Property editing tab in the Lookup app |
As a result, I developed an additional option that makes possible to store, change and display large amounts of text in the different places of the TeklaStructures and even export them to the IFC format