定义和更新用户定义属性 (UDA)
用户定义的属性 (UDA) 是您可以为模型或图纸中的对象设置的属性。您可以将 UDA 用于多种用途,例如用在过滤、图纸、报告、输出、输入、制造、安装以及修订操作中。
属性窗体和许多对话框都包含各种对象(包括梁、柱、螺栓和图纸)的用户定义的属性 (UDA)。单击属性窗体中的更多按钮或相应对话框中的用户定义的属性按钮时,Tekla Structures 会显示这些字段。
当您定义新的用户定义的属性时
您可以根据需要,在贵公司中或者为特定工程创建自己的用户定义属性。
用户定义的属性可以是数字、文本、选项列表或日期。它们可以设置为对某个对象唯一或者允许进行复制。它们也可以通过编号加以忽略,或者影响编号。
在 objects.inp 文件中管理用户定义的属性。要定义新的用户定义的属性,请在模型、工程或公司文件夹中创建您自己的 objects.inp 文件。
有关 objects.inp 文件的内容的更多信息,请参见 objects.inp 文件的属性。
有关可在 objects.inp 文件中修改的可用对象类型的信息,请参阅 objects.inp 的所有可用对象类型列表。
不要在 ..\environments\common\inp\ 文件夹中复制全局 objects.inp 文件。复制该文件会创建不必要的副本,随后由 Tekla Structures 进行的 objects.inp 更新可能会丢失。
有关用户定义的属性名称的最佳实践
有关用户定义的属性名称,请遵循以下最佳实践。
-
用户定义的属性名称必须具有唯一性。确保全局 objects.inp 文件尚未使用相同的属性名称。
-
对于特定于项目的用户定义的属性,请在用户定义的属性名称之前添加前缀 P_。例如,P_RESP_DESIGNER。
-
用户定义的属性名称的最大长度为 19 个字符。Tekla Structures 仅查找前 19 个字符。例如,Tekla Structures 不认为 TEST_ATTRIBUTE_OBJECT 和 TEST_ATTRIBUTE_OBJECX 不同。
-
用户定义的属性名称区分大小写。
-
不要在属性的名称中使用空格或保留字符。
有关用户定义的属性定义的最佳实践
有关用户定义的属性定义,请遵循以下最佳实践。
-
用户定义的属性定义必须具有唯一性。对于不同的对象类型(如梁和柱),用户定义的属性不能具有不同的定义。
-
在添加您自己的用户定义的属性后,请运行校核和更改属性定义命令以更新模型中的定义。
有关用户定义的属性翻译的最佳实践
对于要翻译的用户定义的属性,请在 objects.inp 文件中的标签文本前添加前缀 j_
。
示例:
attribute("releases", "j_MomentConnection", label, "%s", no, none, "0.0", "0.0", 30, 310)
将要翻译的字符串添加到相关 .ail 消息文件中。有关更多信息,请参见自定义消息文件中的用户界面文本。
objects.inp 文件的搜索顺序
在 objects.inp 文件中定义用户定义的属性。在 Tekla Structures 文件夹设置之后,这些文件会位于不同的文件夹内,并且在启动期间系统会将其合并在一起。
objects.inp 文件将按顺序从下面所列示的文件夹中读取用户定义的属性,从模型文件夹开始:
由高级选项定义的文件夹 | 高级选项 |
---|---|
模型 | 当前模型文件夹 |
工程 | XS_PROJECT (您定义的工程文件夹) |
公司 | XS_FIRM (您定义的公司文件夹) |
系统 | XS_SYSTEM (您定义的系统文件夹) |
inp | XS_INP (您定义的 inp 文件夹) |
系统会将这些文件合并在一起,这样,如果任何文件中存在用户定义的属性,便会显示在用户界面中。Tekla Structures 将合并文件,以移除重复的属性。如果 Tekla Structures 在不同的 objects.inp 文件中遇到相同的属性名称,则会使用第一个 objects.inp 读取文件中的属性。
如果您需要同一个文件夹有多个 objects.inp 文件,则必须在文件名中使用后缀才能使用所有文件。这样您就可以在同一文件夹中放置多个 objects_<suffix>.inp 文件。例如,带有后缀的文件名可以是 objects_precast.inp。
如果需要更改现有的用户定义的属性定义
如果需要更改现有的用户定义的属性(例如更改 value_type
),请创建一个新的用户定义的属性,而不是修改 objects.inp 文件中的当前属性。例如,如果将 value_type
从 string
更改为 option
,则对于具有使用旧值类型指定的属性的零件,其值无法更改,并且该值在报告中或查询对象时显示不正确。
当高级选项 XS_DIAGNOZE_AND_REPAIR_WRONG_UDA_TYPE 设置为 TRUE
时,可以使用 ,通过将值类型恢复为默认值来检测和修正不正确的 UDA 值类型。该命令会检查在 objects.inp 文件中定义的 UDA 值类型(例如 string
或 option
)是否与其在 environment.db 中定义的值相匹配。如果在分配 UDA 值后更改值类型,可能会造成不匹配。
在模型中更新用户定义属性 (UDA) 的定义
通过修改 objects.inp 文件更改某个用户定义属性的定义后,在模型中更新定义。
环境数据库文件
为了确保不同角色使用同一模型时该模型具有一致的行为,环境数据库文件 (environment.db) 中包含了模型中所使用的用户定义属性 (UDA) 的定义。
当您创建新模型时,Tekla Structures 会将 objects.inp 文件中的定义合并到 environment.db 文件中。之后,如果您将新的用户定义属性添加到 objects.inp 文件中,当您打开模型时,这些定义将保存在 environment.db 中。
您可以在 objects.inp 文件中修改用户定义的属性,但更改后的定义不会自动应用。如果 objects.inp 文件中的定义与 environment.db 文件中的定义存在冲突,则使用 environment.db 中的定义。要查看冲突,请运行校核和更改属性定义命令,然后选择要在 objects.inp 文件中更新的属性定义。