# 介绍 **对象属性** 指代 **对象分类** 在 **常规属性页面** 中可定义的属性 ![image-20240606112908325](../2.0-PDM/assets/image-20240606112908325.png) # 对象属性 想要定义 **对象属性**,需要在 **系统设置** → **参数配置** → **系统参数** → **数据定义相关** → **对象属性定义** 中定义 ==文档或物料所能设置的属性,归由 **对象属性定义** 中的 **文档或物料** 管理== ![image-20240818152224182](assets/image-20240818152224182.png) 双击 **文档或物料** 可以对当前系统中文档或物料的所有相关属性进行设置,对这些对象的常规属性管理 ![image-20240606115956707](../2.0-PDM/assets/image-20240606115956707.png) ## 新增自定义对象属性 如果 **对象属性定义** 中没有所需要的属性,可通过 **新建** 功能创建出新的对象属性 ![img](../2.0-PDM/assets/clip_image002-17229359177821.jpg) 在 **对象属性定义界面** 需要填写 **名称** 与 **显示名**,其中名称必须以“usr_”为前缀,后面输入英文字母,且不能与其他属性同名 ![img](../2.0-PDM/assets/clip_image002-17229359843532.jpg) 显示名可以输入中文,比如仓库。另外字段长度表示用户在输入该属性时的最大长度,显示宽度表示界面中输入框的长度,值类型比较常用的有文本类型、整数类型、小数类型、枚举类型 ![img](../2.0-PDM/assets/clip_image002-17229360105203.jpg) ### 值类型 ### 多属性映射 若有多个 **对象属性** 要同步映射到同一个 **对象属性** 中,则可以在表达式中写上多个 **对象属性名称**,获取的内容会通过分隔符进行分隔 ![image-20241209111918467](assets/image-20241209111918467.png) > 如图,多属性映射情况下,填写两个属性,则按照顺序全部映射,且属性值之间使用分隔符进行分隔 > > ![image-20241209112109008](assets/image-20241209112109008.png) > > 如图,多属性映射情况下,只填写了一个属性,则只映射该属性,且忽略分隔符 > > ![image-20241209112213084](assets/image-20241209112213084.png) ### 属性数值计算 若某一 **对象属性** 需要进行计算,计算后的结果填入到另一 **对象属性** 中,则可以在 **属性数值计算** 中写好算式,系统会将计算后的结果写入到对应的 **对象属性** 中 前提要求是 ==参与计算的对象属性,与接收结果的对象属性 **值类型** 为 **整数类型** 或 **小数类型**== ![image-20241209113959715](assets/image-20241209113959715.png) > 如图,属性数值计算情况下,填写重量后,可以将计算后的结果写入到备注中 > > ![image-20241209113805159](assets/image-20241209113805159.png) #### **说明** 若参与计算的对象属性值为空,则接收结果的对象属性会接收到整个算式,如属性B由属性A+10得出,那么当属性A为空时,属性B的值为+10 在设置 **属性数值计算** 时,请务必检查,不可出现多级计算的情况,即属性B由属性A+10得出,而属性C由属性B-2得出,那么当属性A为空时,属性B的值为+10,属性C的值为+10-2,又因为属性C要求存储整数或小数类型,系统将会出现如下提示 ![image-20250121151417460](assets/image-20250121151417460.png) 相较于 **属性数值计算** 更建议采用 [窗体表单脚本](200.Delphi脚本.md) 来实现属性值的计算 ## 补充 系统内建的 **对象属性** 在多数情况下是不容许修改的,或者说修改无效,例如物料的 **单位**、**生产类型** 都要求存储数值类型,就算在 **对象属性** 中进行修改调整,也无法生效使用