MDXINSERTBUFFERAGGMETHOD
执行 MDX 插入时, Essbase 将在内存中创建输出缓冲区,该缓冲区会累计值,直到插入完成。
通过 MDXINSERTBUFFERAGGMETHOD 配置设置,可以控制缓冲区中冲突的解决方法。使用的方法可能会影响“插入”的结果。默认情况下,重复的单元格值汇总在一起,但您可以将 Essbase 配置为使用上次加载的单元格的值。
语法
MDXINSERTBUFFERAGGMETHOD ADD | LAST-
LAST - 如果在 MDX 插入操作期间,需要将值写入已包含值的输出缓冲区位置,则最新值将覆盖较旧的值。
-
ADD - 如果在 MDX 插入操作期间,需要将值写入已包含值的输出缓冲区位置,则会将最新值与较早值求和。这是默认行为。
说明
执行 MDX 插入查询期间,会在内存中创建输出缓冲区,该缓冲区会累计值,直到查询完成。通过 MDXINSERTBUFFERAGGMETHOD,可以定义在输出缓冲区中聚合值的方法。使用的方法可能会影响 MDX 插入操作的数据结果。
假设在 MDX 插入查询中,两个源元组映射到单个目标元组,如下所示:
INSERT
([Payroll], [Jan]) TO ([Revised Payroll], [Jan])
([Payroll], [Feb]) TO ([Revised Payroll], [Jan])
...假设 ([Payroll],[Jan]) 的值是 100,([Payroll],[Feb]) 的值是 200。
使用缺省缓冲区聚合行为 (ADD),
MDXINSERTBUFFERAGGMETHOD ADD-
([Payroll],[Jan]) 的值写入 ([Revised Payroll],[Jan]) 的输出缓冲区,使其值为 100。
-
([Payroll] 和 [Feb])的值将添加到([Revised Payroll] 和 [Jan] 的相同输出缓冲区中,将其值增加到 300。
如果将缓冲区聚合行为更改为 LAST,
MDXINSERTBUFFERAGGMETHOD LAST-
([Payroll],[Jan]) 的值写入 ([Revised Payroll],[Jan]) 的输出缓冲区,使其值为 100。
-
([Payroll]、[Feb])的值将写入([Revised Payroll]、[Jan])的相同输出缓冲区,覆盖以前的值并将其更改为 200。
另请参见