我在数据透视表中的总计总数错误。我需要帮助来解决这个问题。
“收盘数量”列显示正确的值,但“最后销售”和“ ABC零售价值”列显示错误的总计,如以下屏幕快照所示。 wrong Grand Total in Pivot table
LASTSALE列的实际值为1995 + 1195 + 2099 + 2099 = 7788,而不是2099。
和ABC零售价值列5985 + 1195 + 6297 + 4198 = 17675,而不是18891。
我正在使用以下提到的脚本:-
CREATE MEMBER CURRENTCUBE.[Measures].[Qty - Closing Stock]
AS 0,
FORMAT_STRING = "#,##0.00;-#,##0.00",
FORE_COLOR = iif([Measures].currentmember < 0, 255 /*Red*/,0),
VISIBLE = 1 , DISPLAY_FOLDER = 'Units',
ASSOCIATED_MEASURE_GROUP = 'Item Movement With Value';
FORMAT_STRING ( This ) = "#,#";
Scope([Measures].[Qty - Closing Stock]);
This = sum((
null:[Time].[Year].CurrentMember *
null:[Time].[Quarter].CurrentMember *
null:[Time].[Month Name].CurrentMember *
null:[Time].[Month].CurrentMember *
null:[Time].[date].CurrentMember )
,[Measures].[Qty - Movement]);
End Scope;
CREATE MEMBER CURRENTCUBE.[Measures].DAYSTODATE AS
COUNT(NULL:[Time].[Date].CURRENTMEMBER)-1
, VISIBLE = True;
CREATE MEMBER CURRENTCUBE.[Measures].HADSALE AS
IIF([Measures].[Price]=0, NULL, [Measures].DAYSTODATE)
, VISIBLE = True;
SCOPE([Measures].MAXDATE, [Time].[Time].[Date].MEMBERS);
THIS = MAX(NULL:[Time].[Date].CURRENTMEMBER, [Measures].HADSALE);
END SCOPE;
CREATE MEMBER CURRENTCUBE.[Measures].LAS TSALE AS
IIF(ISEMPTY([Measures].MAXDATE), NULL,
(
([Measures].[Price]) ,
[Time].[Date].[Date].MEMBERS.ITEM([Measures].MAXDATE))),
VISIBLE = True;
CREATE MEMBER CURRENTCUBE.[Measures].[ABC Retail Value]
AS
sum(
([Time].[date].CurrentMember)
,
[Measures].[Qty - Closing Stock] * [Measures].LAST SALE
) ,
VISIBLE = 1 ;
这些脚本在Expr1(变体级别)上运行良好,如下面的屏幕截图所示。
hese scripts are working fine on Expr1 (Variant Level)
如果我从过滤器结果中删除Exr1是不同的。
if i remove the Exr1 from filter result is different
尽管10300302项目的实际最后销售价格是2099,但屏幕上方的空白显示18891。
如果我们看到此项的详细信息。
我的基本要求是我要计算项目级别,地点级别或变体级别的期末存货价值。使用公式。
收盘价*日期/期间水平的最后成交价。
简单地说,我想在mdx脚本中转换我的ssms查询,如下所示:-