隐含的共享创建

默认情况下,不会在 Essbase 21c 中启用隐含共享。如果需要,可以使用 IMPLIED_SHARE_ON_CREATE 配置设置启用它。

如果启用了隐式共享,则父代成员共享其单个子代成员(或其唯一的合并子代成员)的值,除非父代成员具有公式或设置为“从不共享”。

语法

IMPLIED_SHARE_ON_CREATE [app_name] TRUE | FALSE
  • app_name - 可选。如果提供,则该设置仅适用于指定的应用程序;否则,该设置将应用于 Essbase Server

    特定于应用程序的设置优先于服务器级别的设置。

  • TRUE - 当父级只有一个子级时或子级只有一个合并到该父级的子级时,该父级将被视为隐式共享。

  • FALSE - 永远不要使用隐式共享。这是默认行为。

关于隐含共享

共享成员通常用于计算多个父代的相同成员;例如,计算可乐和饮食父母中的饮食可乐成员。

与共享成员关联的数据值来自具有相同名称(称为原型成员)的另一个成员。共享成员存储指向原型成员中包含的数据的指针,并且数据仅存储一次。可以使用共享成员属性显式定义共享数据关系。

隐含的共享成员充当共享成员,即使您未将其显式设置为共享成员也是如此。

如果应用程序依赖于使用隐式共享,则可以将此配置设置为 TRUE。

隐含共享的迁移准则

IMPLIED_SHARE_ON_CREATE 配置设置定义 Essbase 应用程序首次在 Essbase 21c 中创建(或迁移到)时的默认隐式共享行为。

Essbase 11g On-Premise 中,可以使用 IMPLIED_SHARE 设置更改应用程序的隐含共享设置。在 Essbase 21c 及更高版本中,在创建应用程序时只能设置一次隐式共享行为。

如果将应用程序从 Essbase 11g 内部部署迁移到 Essbase 21c ,并且 essbase.cfg 具有为 IMPLIED_SHARE 配置设置的值,则该设置将保留在 Essbase 21c 中的 IMPLIED_SHARE_ON_CREATE 中。换言之,配置为 IMPLIED_SHARE TRUE 的 Essbase 11g On-Premise 应用程序将作为 IMPLIED_SHARE_ON_CREATE TRUE 迁移到 Essbase 21c

如果将应用程序从 Essbase 19c 迁移到 Essbase 21c ,并且为 IMPLIED_SHARE 配置设置了应用程序级值,则该设置将保留在 Essbase 21c 中的 IMPLIED_SHARE_ON_CREATE 中。

更改 IMPLIED_SHARE_ON_CREATE 设置不会影响任何现有应用程序或多维数据集。无法为现有应用程序切换此设置。如果在服务器级别 essbase.cfg 更改此设置,则只会影响新创建的应用程序。

如果仅需要更改一个现有 Essbase 21c 应用程序的隐式共享设置,则必须使用以下工作流重新创建该设置:

  1. 重新创建应用程序,但不重新创建多维数据集。

  2. 将新选择的值为 TRUE 或 FALSE 的 IMPLIED_SHARE_ON_CREATE 设置添加到应用程序配置中。

  3. 创建多维数据集并重建大纲。将设置应用于多维数据集后,该设置将保留在 .otl 文件中。

  4. 重新加载数据。

  5. 运行聚合或计算脚本。

如果需要更改多个应用程序的隐式共享设置,

  1. Essbase Server 配置文件 essbase.cfg 中,添加具有首选值 TRUE 或 FALSE 的 IMPLIED_SHARE_ON_CREATE

  2. 保存文件并重新启动 Essbase Server

  3. 重新创建每个应用程序(不含多维数据集)。如果您需要与 essbase.cfg 中全局定义的应用程序不同的“隐含共享”设置,请将首选值为 TRUE 或 FALSE 的 IMPLIED_SHARE_ON_CREATE 设置添加到该应用程序的配置中。

  4. 从源大纲中重建多维数据集。

  5. 重新加载数据。

  6. 运行聚合或计算脚本。

范例

IMPLIED_SHARE_ON_CREATE Sample TRUE

对应用程序示例使用隐式共享。

另请参见

了解隐含共享