派生和存储属性

派生和存储属性是指以下这种属性:在请求期间根据您定义的表达式计算其默认值,然后在请求完成时将该值存储在节点上。

对于派生和存储默认属性值,会为其编制索引,以便可以在查询视点时引用它们。请参阅“查询视点”。您还可以使用它们为层次视点中的属性派生值,然后在列表视点中访问该属性的存储值。

Note:

对于默认类型为“派生和存储”的属性,只能在为该属性定义或派生值并将此值存储在节点上后,才能对其进行查询。即使使用 AND 语句将派生和存储查询筛选器与已编制索引的属性查询筛选器联接也是如此。请参阅“查询视点”。

注意事项

  • 只能为节点级别属性派生和存储默认值。
  • 您可以为 Core.Description 属性派生和存储值,但无法为 Core 或 CoreStats 命名空间中的任何其他属性派生和存储值。
  • 您无法为数据类型为“序列”的属性派生和存储值。
  • 可以在属性检查器中在应用程序和节点类型级别设置“派生和存储”默认类型。请参阅“编辑属性参数”。
  • 派生和存储属性值是在请求、导入期间或加载视点时处理的。

    Note:

    将属性的默认类型更改为“派生和存储”不会自动使用存储的值填充现有节点。请按照以下步骤操作,以使用派生和存储的值填充现有节点:
    1. 将属性默认类型更改为“派生和存储”。
    2. 下载一个视点,其中包含为该属性派生值所需的所有信息(例如,如果派生值表达式包含位置信息,则下载一个层次视点)。请参阅“下载视点”。
    3. 建议:删除下载文件中您不打算更新的列。
    4. 在“替换”模式下使用下载的文件执行视点加载(请参阅“使用视点加载”)。
  • 您可以清除派生和存储默认值的当前值,以便重新派生和存储值:
    • 对于交互式请求,在要清除并再次派生的属性中,单击操作 “操作”按钮,然后选择清除
    • 在请求文件上传中,使用关键字 <clear>。请参阅“请求加载文件格式”。

定义派生和存储属性

  1. 检查使用布尔、日期、浮点、整数、列表、节点、数字字符串或字符串数据类型的属性定义。请参阅“检查属性”。

  2. 选择应用程序或节点类型,然后单击编辑

  3. 默认类型中,选择派生和存储

  4. 单击默认值文本框中的“表达式”图标。

  5. 定义用来计算属性的表达式,然后单击应用。有关如何定义表达式的信息,请参阅“使用表达式定义自定义业务逻辑”。

    Note:

    如果将“默认类型”从“派生”更改为“派生和存储”(或相反),不必重新输入表达式来计算属性值。
  6. (可选)选择更新时重新派生,以指定在直接对请求中的节点执行请求操作时,应重新计算并存储属性的值。重新计算的值在请求完成并关闭时存储。

    Note:

    仅当对节点本身执行请求操作时,才会重新计算属性的值。如果计算逻辑中包含节点外部的元素(例如节点的祖先),并且这些元素发生了变化,则不会自动重新计算节点值。必须对节点执行清除操作,才能重新计算并存储新值。

    如果为属性启用了最终提交时锁定,也不会为属性重新计算并存储值。请参阅“了解属性数据类型参数”。

  7. 单击保存