3984 lines
148 KiB
Plaintext
3984 lines
148 KiB
Plaintext
table 'AIA.Measures'
|
||
lineageTag: d2ff518d-4233-45c2-a0d5-24cf2af78cc3
|
||
|
||
measure 'External.Sales.KPI.Market.AIA' = ```
|
||
|
||
VAR PV = [External.Sales.KPI]
|
||
VAR CV = [External.MKTPack.Count]
|
||
VAR T =
|
||
CALCULATE (
|
||
[External.Sales.KPI],
|
||
ALL ( Dim_PackInfo ),
|
||
ALL ( Dim_Corp ),
|
||
ALL ( Dim_Class ),
|
||
ALL ( Dim_MKTPackMapping[KEY_COMPETITOR] )
|
||
)
|
||
RETURN
|
||
IF( PV = BLANK()&& CV = BLANK() ,BLANK(),T)
|
||
```
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: e2229dc8-8a6f-4f12-8442-e95da53e442d
|
||
|
||
measure 'External.Sales.LY.KPI.Market.AIA' = ```
|
||
|
||
|
||
VAR PV = [External.Sales.LY.KPI.AIA]
|
||
VAR CV = [External.MKTPack.Count]
|
||
VAR T =
|
||
CALCULATE (
|
||
[External.Sales.LY.KPI.AIA],
|
||
ALL ( Dim_PackInfo ),
|
||
ALL ( Dim_Corp ),
|
||
ALL ( Dim_Class ),
|
||
ALL ( Dim_KeyCompetitor )
|
||
)
|
||
RETURN
|
||
IF(PV <> BLANK(), T,IF(CV <> BLANK(),T))
|
||
```
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: 131063ca-c417-45a0-b9e0-2097f7980ebb
|
||
|
||
measure 'External.Sales.LY.KPI.AIA' = ```
|
||
|
||
VAR SalesKPI =
|
||
SWITCH([External.SelectUnit],
|
||
"RMB",[External.Value.LY.MTH],
|
||
"K RMB",DIVIDE([External.Value.LY.MTH],1000),
|
||
"M RMB",DIVIDE([External.Value.LY.MTH],1000000),
|
||
"USD",DIVIDE([External.Value.LY.MTH],[ExchangeRate]),
|
||
"K USD",DIVIDE(DIVIDE([External.Value.LY.MTH],[ExchangeRate]),1000),
|
||
"M USD",DIVIDE(DIVIDE([External.Value.LY.MTH],[ExchangeRate]),1000000),
|
||
"Unit",[External.Unit.LY.MTH],
|
||
"K Unit",DIVIDE([External.Unit.LY.MTH],1000),
|
||
"M Unit",DIVIDE([External.Unit.LY.MTH],1000000),
|
||
"CU",[External.CountingUnit.LY.MTH],
|
||
"K CU",DIVIDE([External.CountingUnit.LY.MTH],1000),
|
||
"M CU",DIVIDE([External.CountingUnit.LY.MTH],1000000),
|
||
"PDOT",[External.PDOT.LY.MTH],
|
||
"K PDOT",DIVIDE([External.PDOT.LY.MTH],1000),
|
||
"M PDOT",DIVIDE([External.PDOT.LY.MTH],1000000),
|
||
"张数", [External.Prescription.LY.MTH]
|
||
// "K Rx", DIVIDE ( [External.Prescription.LY.MTH], 1000 ),
|
||
// "M Rx", DIVIDE ( [External.Prescription.LY.MTH], 1000000 )
|
||
)
|
||
RETURN SalesKPI
|
||
```
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: d433f960-795e-4215-89ff-23ee1cee4a6e
|
||
|
||
measure 'External.Gr%.KPI.Market.AIA' =
|
||
|
||
IF(
|
||
[External.Sales.LY.KPI.Market.AIA] <> BLANK(),
|
||
DIVIDE([External.Sales.KPI.Market.AIA]-[External.Sales.LY.KPI.Market],[External.Sales.LY.KPI.Market.AIA])
|
||
)
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\GR%
|
||
lineageTag: 6e72877a-e8fb-4077-b42d-c292b5337a0a
|
||
|
||
measure 'External.Gr%.KPI.AIA' =
|
||
|
||
VAR CV = [External.Sales.KPI]
|
||
VAR PV = [External.Sales.LY.KPI.AIA]
|
||
RETURN
|
||
IF(CV <> BLANK(),DIVIDE(CV - PV,PV))
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\GR%
|
||
lineageTag: 63dc9119-90be-4b0c-a0ea-325b0ea3a25a
|
||
|
||
measure 'External.MS%.KPI.AIA' =
|
||
|
||
DIVIDE([External.Sales.KPI],[External.Sales.KPI.Market.AIA])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\MS%
|
||
lineageTag: 6effcfd6-f8a0-41e7-ba87-c53aa0816fda
|
||
|
||
measure 'External.△MS%.KPI.AIA' = ```
|
||
|
||
VAR CV = [External.MS%.KPI.AIA]
|
||
VAR PV = [External.MS%.LY.KPI.AIA]
|
||
RETURN
|
||
CV - PV
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\△MS%
|
||
lineageTag: 8c5bc845-b87f-4683-a00a-2fd70aaabd6f
|
||
|
||
measure 'External.Sales.KPI.Mol.AIA' =
|
||
|
||
--取消先选择市场的限定
|
||
IF (
|
||
[External.Sales.KPI.Market] <> 0 || [External.Sales.KPI.Market] <> BLANK(),
|
||
VAR MKT = MAX(Dim_Market[MKT_SOURCE])
|
||
VAR CMPS =
|
||
CALCULATETABLE(VALUES ( Dim_MKTPackMapping[MOLECULE_SOURCE] ),Dim_MKTPackMapping[MKT_SOURCE] = MKT)
|
||
RETURN
|
||
CALCULATE (
|
||
[External.Sales.KPI],
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_COD] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_COD] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_TYPE] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP_C] ),
|
||
REMOVEFILTERS ( Dim_MKTPackMapping[KEY_COMPETITOR] ), --新增
|
||
ALL ( Dim_Corp ),
|
||
ALLEXCEPT (
|
||
Dim_PackInfo,
|
||
Dim_PackInfo[CMPS_DES],
|
||
Dim_PackInfo[CMPS_DES_C],
|
||
Dim_PackInfo[MOLECULE_CODE_DESC]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[Market] <> BLANK () ),
|
||
TREATAS ( CMPS, Fact_Sales[MOLECULE_SOURCE] )
|
||
)
|
||
)
|
||
|
||
// IF (
|
||
// ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_MarketTA )
|
||
// || ISFILTERED ( Dim_BrandDefaultMKT ),
|
||
// IF (
|
||
// [External.Sales.KPI.Market] <> 0,
|
||
// VAR MKT = MAX(Dim_Market[MKT_SOURCE])
|
||
// VAR CMPS =
|
||
// CALCULATETABLE(VALUES ( Dim_MKTPackMapping[MOLECULE_SOURCE] ),Dim_MKTPackMapping[MKT_SOURCE] = MKT)
|
||
// RETURN
|
||
// CALCULATE (
|
||
// [External.Sales.KPI.AIA],
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_COD] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_COD] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_DES] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_DES_C] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_TYPE] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_CORP_C] ),
|
||
// REMOVEFILTERS ( Dim_MKTPackMapping[KEY_COMPETITOR] ), --新增
|
||
// ALL ( Dim_Corp ),
|
||
// ALLEXCEPT (
|
||
// Dim_PackInfo,
|
||
// Dim_PackInfo[CMPS_DES],
|
||
// Dim_PackInfo[CMPS_DES_C],
|
||
// Dim_PackInfo[MOLECULE_CODE_DESC]
|
||
// ),
|
||
// KEEPFILTERS ( Dim_Market[Market] <> BLANK () ),
|
||
// TREATAS ( CMPS, Fact_Sales[MOLECULE_SOURCE] )
|
||
// )
|
||
// )
|
||
// )
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: 30d3ba61-f719-4f50-8399-f7ece1b019c3
|
||
|
||
measure 'External.Sales.LY.KPI.Mol.AIA' =
|
||
|
||
--取消先选择市场的限定
|
||
IF (
|
||
[External.Sales.LY.KPI.Market] <> 0 || [External.Sales.LY.KPI.Market] <> BLANK(),
|
||
CALCULATE (
|
||
[External.Sales.LY.KPI.AIA],
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_COD] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_COD] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[CORP_TYPE] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP_C] ),
|
||
//REMOVEFILTERS ( Dim_MKTPackMapping[KEY_COMPETITOR] ), --新增
|
||
ALL ( Dim_Corp ),
|
||
ALLEXCEPT (
|
||
Dim_PackInfo,
|
||
Dim_PackInfo[CMPS_DES],
|
||
Dim_PackInfo[CMPS_DES_C],
|
||
Dim_PackInfo[MOLECULE_CODE_DESC]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[Market] <> BLANK () )
|
||
//),TREATAS ( CMPS, Fact_Sales[MOLECULE_SOURCE] )
|
||
)
|
||
)
|
||
|
||
// IF (
|
||
// ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_MarketTA )
|
||
// || ISFILTERED ( Dim_BrandDefaultMKT ),
|
||
// IF (
|
||
// [External.Sales.LY.KPI.Market] <> 0,
|
||
// VAR MKT = MAX(Dim_Market[MKT_SOURCE])
|
||
// VAR CMPS =
|
||
// CALCULATETABLE(VALUES ( Dim_MKTPackMapping[MOLECULE_SOURCE] ),Dim_MKTPackMapping[MKT_SOURCE] = MKT)
|
||
// RETURN
|
||
// CALCULATE (
|
||
// [External.Sales.LY.KPI.AIA],
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_COD] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_COD] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_DES] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_DES_C] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[CORP_TYPE] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] ),
|
||
// REMOVEFILTERS ( Dim_PackInfo[PROD_CORP_C] ),
|
||
// REMOVEFILTERS ( Dim_MKTPackMapping[KEY_COMPETITOR] ), --新增
|
||
// ALL ( Dim_Corp ),
|
||
// ALLEXCEPT (
|
||
// Dim_PackInfo,
|
||
// Dim_PackInfo[CMPS_DES],
|
||
// Dim_PackInfo[CMPS_DES_C],
|
||
// Dim_PackInfo[MOLECULE_CODE_DESC]
|
||
// ),
|
||
// KEEPFILTERS ( Dim_Market[Market] <> BLANK () ),
|
||
// TREATAS ( CMPS, Fact_Sales[MOLECULE_SOURCE] )
|
||
// )
|
||
// )
|
||
// )
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: 1978fc8b-f600-48d3-bd19-262f8dbaa833
|
||
|
||
measure 'External.MS%.KPI.Mol.AIA' =
|
||
|
||
DIVIDE([External.Sales.KPI],[External.Sales.KPI.Mol.AIA])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\MS%
|
||
lineageTag: 0798149d-8e52-49a7-aacb-4b024c129ffe
|
||
|
||
measure 'External.△MS%.KPI.Mol.AIA' =
|
||
|
||
VAR CV = [External.MS%.KPI.Mol.AIA]
|
||
VAR PV = [External.MS%.LY.KPI.Mol.AIA]
|
||
RETURN
|
||
CV - PV
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the difference of the percentage of the molecule for the recent two years. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\△MS%
|
||
lineageTag: cfb7283b-4506-46fc-a45d-ed0e3ebdb53b
|
||
|
||
measure 'External.Sales.KPI.Class.AIA' =
|
||
|
||
IF (
|
||
[External.Sales.KPI.Market.AIA] <> 0 || [External.Sales.KPI.Market.AIA] <> BLANK(),
|
||
VAR MKT = MAX(Dim_Market[MKT_SOURCE])
|
||
VAR CLASS =
|
||
CALCULATETABLE(VALUES ( Dim_MKTPackMapping[CLASS_SOURCE] ),Dim_MKTPackMapping[MKT_SOURCE] = MKT)
|
||
RETURN
|
||
CALCULATE (
|
||
[External.Sales.KPI],
|
||
ALL ( Dim_PackInfo ),
|
||
ALL ( Dim_Corp ),
|
||
KEEPFILTERS (
|
||
Dim_Market[Market] <> BLANK ()
|
||
),
|
||
TREATAS ( CLASS, Dim_MKTPackMapping[CLASS_SOURCE] )
|
||
)
|
||
)
|
||
|
||
// IF (
|
||
// ISFILTERED ( Dim_MarketTA ) || ISFILTERED ( Dim_Market )
|
||
// || ISFILTERED ( Dim_BrandDefaultMKT ),
|
||
// IF (
|
||
// [External.Sales.KPI.Market.AIA] <> 0,
|
||
// VAR MKT = MAX(Dim_Market[MKT_SOURCE])
|
||
// VAR CLASS =
|
||
// CALCULATETABLE(VALUES ( Dim_MKTPackMapping[CLASS_SOURCE] ),Dim_MKTPackMapping[MKT_SOURCE] = MKT)
|
||
// RETURN
|
||
// CALCULATE (
|
||
// [External.Sales.KPI.AIA],
|
||
// ALL ( Dim_PackInfo ),
|
||
// ALL ( Dim_Corp ),
|
||
// KEEPFILTERS (
|
||
// Dim_Market[Market] <> BLANK ()
|
||
// ),
|
||
// TREATAS ( CLASS, Dim_MKTPackMapping[CLASS_SOURCE] )
|
||
// )
|
||
// )
|
||
// )
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: 05eee0e4-19c7-49c4-801e-7c69f84cbe57
|
||
|
||
measure 'External.Sales.LY.KPI.Class.AIA' =
|
||
|
||
--取消先选市场的限定
|
||
IF (
|
||
[External.Sales.LY.KPI.Market.AIA] <> 0 || [External.Sales.LY.KPI.Market.AIA] <> BLANK(),
|
||
CALCULATE (
|
||
[External.Sales.LY.KPI.AIA],
|
||
ALL ( Dim_PackInfo ),
|
||
ALL ( Dim_Corp ),
|
||
KEEPFILTERS (
|
||
Dim_Market[Market] <> BLANK ()
|
||
)
|
||
//,
|
||
//TREATAS ( CLASS, Dim_MKTPackMapping[CLASS_SOURCE] )
|
||
)
|
||
)
|
||
|
||
// IF (
|
||
// ISFILTERED ( Dim_MarketTA ) || ISFILTERED ( Dim_Market )
|
||
// || ISFILTERED ( Dim_BrandDefaultMKT ),
|
||
// IF (
|
||
// [External.Sales.LY.KPI.Market.AIA] <> 0,
|
||
// VAR MKT = MAX(Dim_Market[MKT_SOURCE])
|
||
// VAR CLASS =
|
||
// CALCULATETABLE(VALUES ( Dim_MKTPackMapping[CLASS_SOURCE] ),Dim_MKTPackMapping[MKT_SOURCE] = MKT)
|
||
// RETURN
|
||
// CALCULATE (
|
||
// [External.Sales.LY.KPI.AIA],
|
||
// ALL ( Dim_PackInfo ),
|
||
// ALL ( Dim_Corp ),
|
||
// KEEPFILTERS (
|
||
// Dim_Market[Market] <> BLANK ()
|
||
// ),
|
||
// TREATAS ( CLASS, Dim_MKTPackMapping[CLASS_SOURCE] )
|
||
// )
|
||
// )
|
||
// )
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: adf0d140-a210-4b5c-96e4-34496cf43102
|
||
|
||
measure 'External.MS%.KPI.Class.AIA' =
|
||
|
||
DIVIDE([External.Sales.KPI],[External.Sales.KPI.Class.AIA])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\MS%
|
||
lineageTag: 487cb02c-c4fa-4625-b3e1-334e1f163a8e
|
||
|
||
measure 'External.△MS%.KPI.Class.AIA' =
|
||
|
||
VAR CV = [External.MS%.KPI.Class.AIA]
|
||
VAR PV = [External.MS%.LY.KPI.Class.AIA]
|
||
RETURN
|
||
CV - PV
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code calculates the the difference between the percentage of the class for recent two years. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\△MS%
|
||
lineageTag: eb5f0c5d-a7d3-4123-8ae4-93ba0f3a7c78
|
||
|
||
measure 'External.SalesContr%.KPI.AIA' =
|
||
|
||
DIVIDE([External.Sales.KPI.AIA],CALCULATE([External.Sales.KPI.AIA],ALLSELECTED()))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code calculates the contribution rate for the Sales of AIA DATA SOURCE . --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\Contr%
|
||
lineageTag: 746125dc-a96b-4065-8244-78848ad1c649
|
||
|
||
measure 'External.GRSales.KPI.AIA' =
|
||
|
||
[External.Sales.KPI]-[External.Sales.LY.KPI.AIA]
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: 95f4d92f-ea44-4c78-b255-93a4b1326dc1
|
||
|
||
measure 'External.GRSalesContr%.KPI.AIA' = ```
|
||
|
||
DIVIDE( [External.GRSales.KPI.AIA], CALCULATE([External.GRSales.KPI.AIA], ALLSELECTED()))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-11 --
|
||
-- Purpose: This code shows the percentage of the contribution of the sales increamentation for recent two years. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------)
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\Contr%
|
||
lineageTag: aa2e3bc2-b5fe-4734-8a4e-26e103873d8a
|
||
|
||
measure 'External.GRSalesContr%.KPI.AIA.V1' = ```
|
||
|
||
DIVIDE( [External.GRSales.KPI.AIA], CALCULATE( [External.GRSales.KPI.Market.AIA], ALLSELECTED()))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-11 --
|
||
-- Purpose: This code shows the percentage of the contribution of the sales increamentation for recent two years. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\Contr%
|
||
lineageTag: 3fee02c2-de76-4c0a-87ef-4cabc6183ed8
|
||
|
||
measure Inst# =
|
||
|
||
IF (
|
||
NOT ISBLANK ( [External.Sales.KPI.Market] ),
|
||
CALCULATE (
|
||
DISTINCTCOUNTNOBLANK ( Fact_Sales[INST_CODE] ),
|
||
ALL ( Dim_PackInfo ),
|
||
ALL ( Dim_Calendar ),
|
||
KEEPFILTERS (
|
||
TREATAS (
|
||
VALUES ( Dim_Market[MKT_SOURCE] ),
|
||
Dim_RC[MKT_SOURCE]
|
||
)
|
||
)
|
||
)
|
||
)
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code counts the institutions with sales. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 01.General\02.0.Basic\Ins
|
||
lineageTag: bcc106f2-7621-4e87-b107-54b717bb37cb
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.3 PotentialMarket_Default' =
|
||
|
||
VAR MKT = VALUES(Dim_Market[MARKET])
|
||
RETURN CALCULATE(SELECTEDVALUE(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]), Dim_HP_Potential_AIA[IS_DEFAULT_POTENTIAL_MKT] = "1", TREATAS(MKT, Dim_HP_Potential_AIA[MARKET]))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the default potential market. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: 51020722-57c0-4e4b-9f3a-8b366cc42668
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure '4.3 PotentialType_Default' =
|
||
|
||
VAR MKT = VALUES(Dim_Market[MARKET])
|
||
return CALCULATE(SELECTEDVALUE(Dim_HP_Potential_AIA[potential_type_name]), Dim_HP_Potential_AIA[IS_DEFAULT_POTENTIAL_TYPE] = "1", Dim_HP_Potential_AIA[IS_DEFAULT_POTENTIAL_MKT] = "1", TREATAS(MKT, Dim_HP_Potential_AIA[MARKET]))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the default potential type. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: 3ebc66df-8f58-46ac-a351-6865c01d54ff
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure '4.3 PotentialValue_Default' =
|
||
|
||
VAR MKT = VALUES(Dim_Market[MARKET])
|
||
RETURN CALCULATE(SUM(Dim_HP_Potential_AIA[potential_value]), Dim_HP_Potential_AIA[IS_DEFAULT_POTENTIAL_MKT] = "1", TREATAS(MKT, Dim_HP_Potential_AIA[MARKET]))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the default potential value. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: f07a58e3-8433-461c-b532-865b4a47e503
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.3 Potential_Rank' =
|
||
CALCULATE (
|
||
RANK (
|
||
DENSE,
|
||
ALL ( Dim_HP_Potential_AIA ),
|
||
ORDERBY ( Dim_HP_Potential_AIA[POTENTIAL_VALUE], DESC )
|
||
),
|
||
Dim_HP_Potential_AIA[IS_DEFAULT_POTENTIAL_TYPE] = 1,
|
||
Dim_HP_Potential_AIA[IS_DEFAULT_POTENTIAL_MKT] = 1
|
||
)
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code gives the rank number for the defult potential market and defult potential type according its potential value. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
formatString: 0
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: 39b7d91d-6969-4221-942d-a0e7b5cae27e
|
||
|
||
measure 'Hidden Field' = BLANK()
|
||
displayFolder: 03.Others
|
||
lineageTag: cc7488cb-3164-46a8-8035-a1fa6161cab1
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '2.3 show_mkt' =
|
||
|
||
VAR mkt = SELECTEDVALUE('Dim_Market'[MARKET])
|
||
VAR prod_c = SELECTEDVALUE(Dim_PackInfo[PROD_DES_C])
|
||
VAR mkt2 = CONCATENATEX(VALUES(Dim_Market[MARKET]), [MARKET], ", ")
|
||
RETURN IF(NOT ISBLANK(mkt) || NOT ISBLANK(prod_c), "Mkt:" & mkt2)
|
||
displayFolder: 03.Others
|
||
lineageTag: 2c83088b-c779-49b2-b938-2b39c00bb5bd
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'Hidden Measure' = BLANK()
|
||
displayFolder: 03.Others
|
||
lineageTag: c963c188-fff2-4775-9623-fc3e87430aef
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '2.3 show_brand' = ```
|
||
|
||
// VAR prod = SELECTEDVALUE(Dim_PackInfo[PROD_DES])
|
||
// VAR pack = SELECTEDVALUE(Dim_PackInfo[PROD_PACK])
|
||
// VAR prod_c = SELECTEDVALUE(Dim_PackInfo[PROD_DES_C])
|
||
// VAR res = IF(ISBLANK(prod) && ISBLANK(prod_c) && ISBLANK(pack), BLANK(), "Brand: " & prod &" | " & pack & " | " & prod_c)
|
||
|
||
VAR prod_c = SELECTEDVALUE(Dim_PackInfo[PROD_DES_C])
|
||
VAR prod = IF(ISFILTERED(Dim_PackInfo[PROD_DES_C]), CONCATENATEX(VALUES(Dim_PackInfo[PROD_DES]),[PROD_DES], ", "))
|
||
VAR pack = IF(ISFILTERED(Dim_PackInfo[PROD_DES_C]), CONCATENATEX(VALUES(Dim_PackInfo[PROD_PACK]), [PROD_PACK], ", "))
|
||
// VAR res = IF(NOT ISBLANK(prod_c) , "Brand: " & prod_c &" | " & pack & " | " & prod)
|
||
VAR res = IF(NOT ISBLANK(prod_c) , "Brand: " & prod_c &" | " & prod)
|
||
RETURN res
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 7ee80e7f-7bdc-4dfb-a18d-51fe6c4f7bbd
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.1 DECILE_TEXT' = ```
|
||
|
||
SWITCH(TRUE(),
|
||
NOT ISFILTERED(Dim_Market[MARKET]) && (ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]) || ISFILTERED(Dim_HP_Potential_AIA[DECILE]) || ISFILTERED(Dim_HP_Potential_AIA[DECILE_GROUP])),
|
||
"请先选择市场;未选择市场,潜力相关字段无法显示",
|
||
NOT ISFILTERED(Dim_Market[MARKET]),
|
||
"请先选择市场",
|
||
(ISFILTERED(Dim_Market[MARKET]) &&
|
||
(NOT ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME])
|
||
|| (ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]) && (ISFILTERED(Dim_HP_Potential_AIA[DECILE]) || ISFILTERED(Dim_HP_Potential_AIA[DECILE_GROUP])))))
|
||
&& (NOT ISEMPTY (
|
||
INTERSECT ( { 109, 110 }, VALUES ( 'AIA.Fields.Rows'[AIA.Fields.Rows Order] ) ))),
|
||
"Decile相关分析,请先确认所选潜力市场与潜力单位是否符合需求",
|
||
""
|
||
)
|
||
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: e1fd915d-1508-47e0-9be7-7879aaede01a
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.1 MARKET_TEXT' = ```
|
||
|
||
SWITCH(TRUE(),
|
||
NOT ISFILTERED(Dim_Market[MARKET]) && (ISFILTERED(Dim_HP_Potential_AIA[DECILE]) || ISFILTERED(Dim_HP_Potential_AIA[DECILE_GROUP]) ) ,
|
||
"请先选择市场;未选择市场,潜力相关字段无法显示",
|
||
NOT ISFILTERED(Dim_Market[MARKET]), "请先选择市场,不显示decile相关的数据",
|
||
BLANK()
|
||
)
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 78f7358a-f248-4b5f-8db1-9ae9371d6646
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.1 POTENTIAL_TEXT' =
|
||
VAR MKT =
|
||
CALCULATETABLE ( VALUES ( Dim_Market[MARKET] ) )
|
||
RETURN
|
||
IF (
|
||
ISFILTERED ( Dim_Market[MARKET] )
|
||
&& (
|
||
ISFILTERED ( Dim_HP_Potential_AIA[DECILE] )
|
||
|| ISFILTERED ( Dim_HP_Potential_AIA[DECILE_GROUP] )
|
||
|| (
|
||
NOT (
|
||
ISEMPTY (
|
||
INTERSECT ( { 109, 110 }, VALUES ( 'AIA.Fields.Rows'[AIA.Fields.Rows Order] ) )
|
||
)
|
||
)
|
||
&& (
|
||
CALCULATE (
|
||
HASONEVALUE ( Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME] ),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] <> BLANK () ),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] <> "" ),
|
||
KEEPFILTERS (
|
||
TREATAS ( VALUES ( Dim_Market[MARKET] ), 'Dim_HP_Potential_AIA'[MARKET] )
|
||
)
|
||
)
|
||
|| (
|
||
HASONEVALUE ( Dim_Market[MARKET] )
|
||
&& SELECTEDVALUE ( Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG] ) = "Default"
|
||
)
|
||
)
|
||
)
|
||
) //只选择一个potential时才显示字符串
|
||
,
|
||
VAR PMKT =
|
||
CALCULATETABLE (
|
||
VALUES ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] ),
|
||
KEEPFILTERS (
|
||
TREATAS ( VALUES ( Dim_Market[MARKET] ), 'Dim_HP_Potential_AIA'[MARKET] )
|
||
),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] <> BLANK () )
|
||
)
|
||
VAR PT =
|
||
CALCULATETABLE (
|
||
VALUES ( 'Dim_HP_Potential_AIA'[POTENTIAL_TYPE_NAME] ),
|
||
KEEPFILTERS ( TREATAS ( PMKT, 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] ) ),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_TYPE_NAME] <> BLANK () )
|
||
)
|
||
VAR ___x =
|
||
"潜力市场:" & CONCATENATEX ( PMKT, [POTENTIAL_MKT_NAME], "," )
|
||
& UNICHAR ( 10 ) & "单位:"
|
||
& CONCATENATEX ( PT, [POTENTIAL_TYPE_NAME], "," ) --" | "
|
||
RETURN
|
||
___x,
|
||
""
|
||
)
|
||
displayFolder: 03.Others
|
||
lineageTag: e002ada4-ac3b-403d-ba5a-5d1d8eb841f9
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure ComonIns_TEXT = "* 剔除数据异常机构:在滚动两年连续有数机构基础上,剔除价格和市场整体稳定性异常的机构"
|
||
displayFolder: 03.Others
|
||
lineageTag: 9d389868-d33c-4f06-8292-4c624a5f725f
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure MarketAnalysis_URL = "https://rpt-center-uat.astrazeneca.cn/Admin/EmbedReport?Id=LJJdbXqWe1b8AjGyPYYnD5Zo%2B9WR8MQ4a9NGxs7ppgNEOOX%2Fhv9%2BYOD%2BC%2BA7o%2F8297E7bzBTQm4qniKku%2F0ldg%3D%3D"
|
||
displayFolder: 03.Others
|
||
lineageTag: f2292c07-28f0-4ef6-a15e-8cb930514099
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure MaxDataDate =
|
||
|
||
// VAR CurrentMonth =
|
||
// CALCULATE (
|
||
// MAX ( 'Dim_Calendar'[YYYYMM] ),
|
||
// 'Dim_Calendar'[YYYYMM_EXTERNAL_AIA] = "R"
|
||
// )
|
||
// RETURN
|
||
CALCULATE( "AIA(M):"& MAX( Fact_Sales[YYYYMM] ), Fact_Sales[DATA_SOURCE] = "AIA(Monthly)")
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-010 --
|
||
-- Purpose: This code show the current month of data. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 03.Others
|
||
lineageTag: bf76f529-f45a-4ab2-a310-84c26c58236b
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure ProvidedIns_TEXT = ```
|
||
|
||
"* 滚动两年连续有数机构:滚动两年中连续每月(机构整体)销量不为零的机构"
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: e12c91dd-8a4a-4b2d-8ee7-0ac70e61ca59
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'show_filters.AIA' = ```
|
||
|
||
VAR t_ =
|
||
{(IF (
|
||
ISFILTERED(MQY[Period]),
|
||
VAR ___x = "时间范围:"& [time sel] &" | "
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED(Dim_Unit[DW]),
|
||
VAR ___x = "筛选单位:"& CONCATENATEX(VALUES(Dim_Unit[DW]),[DW],",") &" | "
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED('Dim_HPFlag'[AIA_HP_FLAG]),
|
||
VAR ___x = "机构范围: 两年共有机构 | "
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED('Dim_InsSalesType'[AIA_PROVIDED_FLAG]),
|
||
VAR ___x =IF(SELECTEDVALUE('AIA_Calgroup'[AIA_INS_REMOVE],"no")="剔除部分机构" ,"机构范围: 滚动两年连续有数机构&剔除异常数据机构 | " ,"机构范围: 滚动两年连续有数机构 | ")
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
NOT ISFILTERED('Dim_HPFlag'[AIA_HP_FLAG]) && NOT ISFILTERED('Dim_InsSalesType'[AIA_PROVIDED_FLAG]),
|
||
VAR ___x = "机构范围: 所有机构 | "
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED(Dim_Market[Market]),
|
||
VAR ___x = "Market:"& CONCATENATEX(VALUES(Dim_Market[Market]),[Market],",") &" | "
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
VAR ___x = "DefaultMarket:"& CONCATENATEX(VALUES(Dim_BrandDefaultMKT[MARKET]),[MARKET],",") &" | "
|
||
RETURN ___x
|
||
),1)
|
||
// ,(IF (
|
||
// ISFILTERED('Dim_MarketTA'[TA]),
|
||
// VAR ___x = "TA: "& CONCATENATEX(VALUES('Dim_MarketTA'[TA]),[TA],",") &" | "
|
||
// RETURN ___x
|
||
// ),2)
|
||
,(IF (
|
||
ISFILTERED(Dim_Class[CLASS]),
|
||
VAR ___x = "Class: "& CONCATENATEX(VALUES(Dim_Class[CLASS]),[CLASS],",") &" | "
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[MOLECULE_DES_C]),
|
||
VAR ___x = "Molecule:"& CONCATENATEX(VALUES('Dim_PackInfo'[MOLECULE_DES_C]),[MOLECULE_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),7)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_DES]),
|
||
VAR ___x = "Corp: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_DES]),[CORP_DES],",") &" | "
|
||
RETURN ___x
|
||
),9)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_DES_C]),
|
||
VAR ___x = "Corp: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_DES_C]),[CORP_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),9)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_TYPE]),
|
||
VAR ___x = "CorpType: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_TYPE]),[CORP_TYPE],",") &" | "
|
||
RETURN ___x
|
||
),10)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_DES_C]),
|
||
VAR ___x = "Brand:"& CONCATENATEX(VALUES('Dim_PackInfo'[PROD_DES_C]),[PROD_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),5)
|
||
,(IF (
|
||
ISFILTERED(Dim_packinfo[PROD_DES_C]),
|
||
VAR ___x = "Brand:"& CONCATENATEX(VALUES(Dim_packinfo[PROD_DES_C]),[PROD_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),5)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_PACK]),
|
||
VAR ___x = "Pack:"& CONCATENATEX(VALUES('Dim_PackInfo'[PROD_PACK]),[PROD_PACK],",") &" | "
|
||
RETURN ___x
|
||
),11)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_DES]),
|
||
VAR ___x = "Pack EN:"& CONCATENATEX(VALUES('Dim_PackInfo'[PACK_DES]),[PACK_DES],",") &" | "
|
||
RETURN ___x
|
||
),11)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC1_CODE_DESC]),
|
||
VAR ___x = "ATC1:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC1_CODE_DESC]),[ATC1_CODE_DESC],",") &" | "
|
||
RETURN ___x
|
||
),19)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC2_CODE_DESC]),
|
||
VAR ___x = "ATC2:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC2_CODE_DESC]),[ATC2_CODE_DESC],",") &" | "
|
||
RETURN ___x
|
||
),20)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC3_CODE_DESC]),
|
||
VAR ___x = "ATC3:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC3_CODE_DESC]),[ATC3_CODE_DESC],",") &" | "
|
||
RETURN ___x
|
||
),21)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC4_CODE_DESC]),
|
||
VAR ___x = "ATC4:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC4_CODE_DESC]),[ATC4_CODE_DESC],",") &" | "
|
||
RETURN ___x
|
||
),22)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[GENE_ORIG_DESC]),
|
||
VAR ___x = "Generics:"& CONCATENATEX(VALUES(Dim_PackInfo[GENE_ORIG_DESC]),[GENE_ORIG_DESC],",") &" | "
|
||
RETURN ___x
|
||
),3)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP1_COD_DES_C]),
|
||
VAR ___x = "NFC1:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP1_COD_DES_C]),[APP1_COD_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),23)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP2_COD_DES_C]),
|
||
VAR ___x = "NFC2:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP2_COD_DES_C]),[APP2_COD_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),24)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP3_COD_DES_C]),
|
||
VAR ___x = "NFC3:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP3_COD_DES_C]),[APP3_COD_DES_C],",") &" | "
|
||
RETURN ___x
|
||
),25)
|
||
,(IF (
|
||
ISFILTERED(Dim_BrandMKT[VBP]),
|
||
VAR ___x = "is VBP:"& CONCATENATEX(VALUES(Dim_BrandMKT[VBP]),[VBP],",") &" | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[VBP_BATCH]),
|
||
VAR ___x = "VBP Batch:"& CONCATENATEX(VALUES(Dim_PackInfo[VBP_BATCH]),[VBP_BATCH],",") &" | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG]) && "Default" IN VALUES(Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG]),
|
||
VAR ___x = "Potential MKT Flag:Default | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]),
|
||
VAR ___x = "Potential MKT:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]),[POTENTIAL_MKT_NAME],",") &" | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_TYPE_NAME]),
|
||
VAR ___x = "Potential Type"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[POTENTIAL_TYPE_NAME]),[POTENTIAL_TYPE_NAME],",") &" | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[DECILE]),
|
||
VAR ___x = "Decile:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[DECILE]),[DECILE],",") &" | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[DECILE_GROUP]),
|
||
VAR ___x = "Decile Group:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[DECILE_GROUP]),[DECILE_GROUP],",") &" | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[bu_name_en]),
|
||
VAR ___x = "BU: "& CONCATENATEX(VALUES('Dim_Org'[bu_name_en]),[bu_name_en],",") &" | "
|
||
RETURN ___x
|
||
),17)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[RC_CODE_DESC]),
|
||
VAR ___x = "RC:"& CONCATENATEX(VALUES('Dim_Org'[RC_CODE_DESC]),[RC_CODE_DESC],",") &" | "
|
||
RETURN ___x
|
||
),17)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[REGION_CODE_DESC]),
|
||
VAR ___x = "Region:"& CONCATENATEX(VALUES('Dim_Org'[REGION_CODE_DESC]),[REGION_CODE_DESC],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[Team]),
|
||
VAR ___x = "Team: "& CONCATENATEX(VALUES('Dim_Org'[Team]),[Team],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_NAME]),
|
||
VAR ___x = "机构: "& CONCATENATEX(VALUES('Dim_Institution'[INST_NAME]),[INST_NAME],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_CODE]),
|
||
VAR ___x = "机构编码: "& CONCATENATEX(VALUES('Dim_Institution'[INST_CODE]),[INST_CODE],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_SUB_TYPE]),
|
||
VAR ___x = "机构子类型: "& CONCATENATEX(VALUES('Dim_Institution'[INST_SUB_TYPE]),[INST_SUB_TYPE],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INS_LEVEL]),
|
||
VAR ___x = "机构等级: "& CONCATENATEX(VALUES('Dim_Institution'[INS_LEVEL]),[INS_LEVEL],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[IS_TARGET_HP]),
|
||
VAR ___x = "目标机构: "& CONCATENATEX(VALUES('Dim_RC'[IS_TARGET_HP]),[IS_TARGET_HP],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[KA_FLAG]),
|
||
VAR ___x = "KA:"& CONCATENATEX(VALUES('Dim_RC'[KA_FLAG]),[KA_FLAG],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_HP_Potential_AIA'[TARGET_INS_LEVEL]),
|
||
VAR ___x = "目标机构等级: "& CONCATENATEX(VALUES('Dim_HP_Potential_AIA'[TARGET_INS_LEVEL]),[TARGET_INS_LEVEL],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[SUB_CHANNEL]),
|
||
VAR ___x = "SubChannel: "& CONCATENATEX(VALUES('Dim_RC'[SUB_CHANNEL]),[SUB_CHANNEL],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[DRAGON_FLAG]),
|
||
VAR ___x = "Dragon: "& CONCATENATEX(VALUES('Dim_RC'[DRAGON_FLAG]),[DRAGON_FLAG],",") &" | "
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[PROVINCE_C]),
|
||
VAR ___x = "Province:"& CONCATENATEX(VALUES('Dim_Geo'[PROVINCE_C]),[PROVINCE_C],",") &" | "
|
||
RETURN ___x
|
||
),12)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[CITY_C]),
|
||
VAR ___x = "City:"& CONCATENATEX(VALUES('Dim_Geo'[CITY_C]),[CITY_C],",") &" | "
|
||
RETURN ___x
|
||
),13)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[AZ_CITY_TIER]),
|
||
VAR ___x = "CityTier:"& CONCATENATEX(VALUES('Dim_Geo'[AZ_CITY_TIER]),[AZ_CITY_TIER],",") &" | "
|
||
RETURN ___x
|
||
),14)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[PMT_REGION]),
|
||
VAR ___x = "PMT: "& CONCATENATEX(VALUES('Dim_Geo'[PMT_REGION]),[PMT_REGION],",") &" | "
|
||
RETURN ___x
|
||
),12)
|
||
}
|
||
RETURN CONCATENATEX( t_ , [Value1] , "" ,[Value2])
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 15ed2304-1850-42d3-84d8-a04e61a588f5
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.GRSales.KPI.Market.AIA' = [External.Sales.KPI.Market.AIA]-[External.Sales.LY.KPI.Market.AIA]
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: e03bde8c-e549-4e03-a690-d745a1dd023c
|
||
|
||
measure 'External.MS%.LY.KPI.Mol.AIA' = DIVIDE([External.Sales.LY.KPI.AIA],[External.Sales.LY.KPI.Mol.AIA])
|
||
formatString: 0.00%;-0.00%;0.00%
|
||
displayFolder: 01.General\02.0.Basic\MS%
|
||
lineageTag: 1fba95ce-6663-4ee8-95f3-885de13d4016
|
||
|
||
measure 'External.MS%.LY.KPI.Class.AIA' =
|
||
|
||
DIVIDE([External.Sales.LY.KPI.AIA],[External.Sales.LY.KPI.Class.AIA])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\MS%
|
||
lineageTag: 628c539e-e2a0-4ab6-aa52-ad72a156a5e2
|
||
|
||
measure 'External.MS%.LY.KPI.AIA' = DIVIDE([External.Sales.LY.KPI.AIA],[External.Sales.LY.KPI.Market.AIA])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\MS%
|
||
lineageTag: 8b983d18-6e4c-4670-8171-718e58243768
|
||
|
||
measure 'External.HoHGR%.KPI.AIA' =
|
||
|
||
VAR CV = CALCULATE([External.Sales.KPI], MQY[Period]="HYTDAvg")
|
||
VAR PV = CALCULATE([External.Sales.KPI], MQY[Period]="RHYAvg")
|
||
RETURN IF(PV <> BLANK(),DIVIDE(CV-PV,PV))
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\GR%
|
||
lineageTag: 403bd341-cc08-43df-9970-85e129153e74
|
||
|
||
measure 'External.RQGR%.KPI.AIA' =
|
||
|
||
VAR CV = CALCULATE([External.Sales.KPI], MQY[Period]="QTDAvg")
|
||
VAR PV = CALCULATE(CALCULATE([External.Sales.KPI], PREVIOUSQUARTER(ENDOFQUARTER(Dim_Calendar[Date]))), MQY[Period]="QTDAvg")
|
||
RETURN IF(PV <> BLANK(), DIVIDE(CV-PV,PV))
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\GR%
|
||
lineageTag: 401f57ef-3016-4660-a220-6ee12b1d11d1
|
||
|
||
measure 'External.Gr%.KPI.Class.AIA' = ```
|
||
|
||
DIVIDE([External.Sales.KPI.Class.AIA]-[External.Sales.LY.KPI.Class.AIA],[External.Sales.LY.KPI.Class.AIA])
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\GR%
|
||
lineageTag: ebf16a5a-df2d-481b-a0f8-cd31e1c192d2
|
||
|
||
measure 'Sales_MSTOP1_BrandName.AIA' = ```
|
||
|
||
VAR T =
|
||
INDEX (
|
||
1,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( [External.Sales.KPI.AIA] <> BLANK (), MAXX ( T, [PROD_VBP] ) )
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 675971d6-9851-47f9-999e-b6f8a25c587a
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'Sales_MSTOP1_BrandSales.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
1,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
|
||
RETURN MAXX ( T, [@VAL])
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: e8b2a8c9-1f2b-4479-8d82-ad8f27b8273f
|
||
|
||
measure 'Sales_MSTOP1_BrandGR%.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
1,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA],
|
||
"@GR", [External.Gr%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( [External.Sales.KPI.AIA] <> BLANK (), MAXX ( T, [@GR] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: b0935a47-fd9b-45cb-81d6-632e099c35e1
|
||
|
||
measure 'External.MS%.TopNPlayerName.AIA' =
|
||
|
||
VAR T =
|
||
CALCULATETABLE(
|
||
INDEX([TopN.Value],
|
||
ADDCOLUMNS(SUMMARIZE(FACT_Sales, Dim_PackInfo[PROD_CORP_C]), "@VAL", [External.MS%.KPI]), ORDERBY([@VAL], DESC)
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN MAXX(T, [PROD_CORP_C] )
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 88bd3b85-0439-4baf-9d08-4fb26b983750
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.△MS%.TopNPlayerName.AIA' = ```
|
||
|
||
VAR T =
|
||
CALCULATETABLE(
|
||
INDEX([TopN.Value],
|
||
ADDCOLUMNS(SUMMARIZE(FACT_Sales, Dim_PackInfo[PROD_CORP_C]), "@VAL", [External.△MS%.KPI]), ORDERBY([@VAL], DESC)
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN MAXX(T, [PROD_CORP_C] )
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 63d9ed3e-2685-41a4-946c-dc0534026a42
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'Sales_MSTOP2_BrandName.AIA' = ```
|
||
|
||
VAR T =
|
||
INDEX (
|
||
2,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( [External.Sales.KPI.AIA] <> BLANK (), MAXX ( T, [PROD_VBP] ) )
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: fade1eda-7498-40e4-abbe-e87c8eb230b0
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'Sales_MSTOP2_BrandSales.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
2,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
|
||
RETURN MAXX ( T, [@VAL])
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: afca315a-3230-42c4-a104-dade570dad46
|
||
|
||
measure 'Sales_MSTOP2_BrandGR%.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
2,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA],
|
||
"@GR", [External.Gr%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
|
||
RETURN
|
||
IF ( [External.Sales.KPI.AIA] <> BLANK (), MAXX ( T, [@GR] ))
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 7a3a02dd-2ad5-4b66-8ab3-73103fd20f00
|
||
|
||
measure 'Sales_MSTOP1_BrandMS%.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
1,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA],
|
||
"@MS", [External.MS%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( [External.Sales.KPI.AIA] <> BLANK (), MAXX ( T, [@MS] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: c3e43f7c-2b02-4bfe-ac3b-d8af2833cc58
|
||
|
||
measure 'Sales_MSTOP1_Brand△MS%.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
1,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI],
|
||
"@△MS", [External.△MS%.KPI]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( [External.Sales.KPI] <> BLANK (), MAXX ( T, [@△MS] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 12d2cae6-a5ec-4419-b56c-5cee6e561f08
|
||
|
||
measure 'Sales_MSTOP2_Brand△MS%.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
2,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA],
|
||
"@△MS", [External.△MS%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( [External.Sales.KPI.AIA] <> BLANK (), MAXX ( T, [@△MS] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 66f6ae2e-10f6-4424-a952-7135f6c39bd2
|
||
|
||
measure 'Sales_MSTOP3_Brand△MS%.AIA' =
|
||
|
||
VAR S = [External.Sales.KPI.AIA]
|
||
VAR T =
|
||
INDEX (
|
||
3,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", S,
|
||
"@△MS", [External.△MS%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( S, MAXX ( T, [@△MS] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: ddf87932-915d-4383-b734-90df759a5827
|
||
|
||
measure 'Sales_MSTOP3_BrandSales.AIA' =
|
||
|
||
VAR T =
|
||
INDEX (
|
||
3,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", [External.Sales.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
|
||
RETURN MAXX ( T, [@VAL])
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: d17fdc44-3a8c-4b08-b783-76bc27f4c219
|
||
|
||
measure 'Sales_MSTOP3_BrandName.AIA' = ```
|
||
|
||
VAR S = [External.Sales.KPI.AIA]
|
||
VAR T =
|
||
INDEX (
|
||
3,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", S
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( S <> BLANK (), MAXX ( T, [PROD_VBP] ) )
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 4b634e01-40c5-4bdf-8f74-7d4333cc5048
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'Sales_MSTOP2_BrandMS%.AIA' =
|
||
|
||
VAR S = [External.Sales.KPI.AIA]
|
||
VAR T =
|
||
INDEX (
|
||
2,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", S,
|
||
"@MS", [External.MS%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( S <> BLANK (), MAXX ( T, [@MS] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: a951c669-3d9a-4868-90eb-07f31d04ecab
|
||
|
||
measure 'Sales_MSTOP3_BrandMS%.AIA' =
|
||
|
||
VAR S = [External.Sales.KPI.AIA]
|
||
VAR T =
|
||
INDEX (
|
||
3,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", S,
|
||
"@MS", [External.MS%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
RETURN
|
||
IF ( S <> BLANK (), MAXX ( T, [@MS] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 7b54258d-fba9-4421-a884-4608e18f6296
|
||
|
||
measure 'Sales_MSTOP3_BrandGR%.AIA' =
|
||
|
||
VAR S = [External.Sales.KPI.AIA]
|
||
VAR T =
|
||
INDEX (
|
||
3,
|
||
FILTER(
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( Fact_Sales, Dim_PackInfo[PROD_VBP], Dim_PackInfo[CORP_DES_C] ),
|
||
"@VAL", S,
|
||
"@GR", [External.Gr%.KPI.AIA]
|
||
),[@VAL] <> BLANK()),
|
||
ORDERBY ( [@VAL], DESC )
|
||
)
|
||
|
||
RETURN
|
||
IF (S <> BLANK (), MAXX ( T, [@GR] ))
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: f65f9380-1600-48d9-9a66-e4b9f395090f
|
||
|
||
measure YM_HasData_AIA = CALCULATE(FORMAT(MAX(FACT_SALES[DATE_KEY]), "yyyyMM"), ALL(Fact_Sales),Fact_Sales[DATA_SOURCE] = "AIA(Monthly)" )
|
||
displayFolder: 03.Others
|
||
lineageTag: f67a9f31-848b-4f84-8453-5e11486e9749
|
||
|
||
measure 'External.Gr%.KPI.Mol.AIA' =
|
||
|
||
DIVIDE([External.Sales.KPI.Mol.AIA]-[External.Sales.LY.KPI.Mol.AIA],[External.Sales.LY.KPI.Mol.AIA])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.0.Basic\GR%
|
||
lineageTag: f752120d-6716-4741-9d77-c27878e84a49
|
||
|
||
measure 'External.EI.KPI.AIA' =
|
||
|
||
DIVIDE (
|
||
DIVIDE ( [External.Sales.KPI], [External.Sales.LY.KPI.AIA] ),
|
||
DIVIDE ( [External.Sales.KPI.Market.AIA], [External.Sales.LY.KPI.Market.AIA] )
|
||
) * 100
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.0.Basic\EI
|
||
lineageTag: a2f2f838-fb8d-4097-8623-cd41f47ab74a
|
||
|
||
measure MonthIndex = ```
|
||
|
||
SELECTCOLUMNS ( 'Dim_Calendar', "@index", 'Dim_Calendar'[YYYYMM])
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code controls the slicer displays months. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
displayFolder: 00.Slicer\00.1 YM
|
||
lineageTag: 8d2369a8-64ef-4273-993a-f5f8677dc2d5
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure Y =
|
||
|
||
FORMAT(CALCULATE(MAX(Dim_Calendar[YEAR]), Dim_Calendar[YEAR_EXTERNAL] = "R", ALL(Dim_Calendar)), "")
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code controls the title displays current year. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 00.Slicer\00.1 YM
|
||
lineageTag: 60ade956-2d5b-47b8-9214-b8571366324f
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure Y-1 =
|
||
|
||
FORMAT([Y] - 1, "")
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code controls the title displays last year. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 00.Slicer\00.1 YM
|
||
lineageTag: c56e05bd-3a17-4ed6-bba2-a51f5dfe2543
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure Y-2 =
|
||
FORMAT([Y] - 2, "")
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code controls the title displays the year before last year. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 00.Slicer\00.1 YM
|
||
lineageTag: a166d876-5615-445d-8d02-a4b657d6a17e
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.1 POTENTIAL_TEXT_CORLOR' = IF(ISFILTERED(Dim_Market[MARKET]), "#DA190C", "#FFFFFF")
|
||
displayFolder: 03.Others
|
||
lineageTag: 5fe82c71-3f5e-46e7-844c-dea24df5003e
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.3 PotentialValue' =
|
||
|
||
VAR MKT = VALUES(Dim_Market[MARKET])
|
||
return CALCULATE(SUM(Dim_HP_Potential_AIA[potential_value]), TREATAS(MKT,Dim_HP_Potential_AIA[MARKET]))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the potential value. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: d0d24aca-ddfc-44f8-a2b7-86aff1c008c2
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.3 PotentialType' =
|
||
|
||
VAR MKT = VALUES(Dim_Market[MARKET])
|
||
return CALCULATE(SELECTEDVALUE(Dim_HP_Potential_AIA[potential_type_name]), TREATAS(MKT, Dim_HP_Potential_AIA[MARKET]))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the potential type. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: 9ea1c39a-2a97-4fa3-9b2f-5befce722e91
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure '4.3 PotentialMarket' = ```
|
||
|
||
VAR MKT = VALUES(Dim_Market[MARKET])
|
||
RETURN
|
||
CALCULATE(SELECTEDVALUE(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]), TREATAS(MKT,Dim_HP_Potential_AIA[MARKET]))
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code shows the potential market. --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
displayFolder: 02.Page\02.4.FreeReport
|
||
lineageTag: a18958fd-1517-4013-afaa-065b8bcd9cf4
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.GR%.TopNPlayerName.AIA' =
|
||
|
||
VAR T =
|
||
CALCULATETABLE(
|
||
INDEX([TopN.Value],
|
||
ADDCOLUMNS(SUMMARIZE(FACT_Sales, Dim_PackInfo[PROD_CORP_C]), "@GR", [External.Gr%.KPI]), ORDERBY([@GR], DESC)
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN MAXX(T, [PROD_CORP_C] )
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 69b80f2a-d8b3-49b7-8047-0eef7ee6b41a
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.Sales.TopNPlayerName.AIA' = ```
|
||
|
||
VAR CV = [External.Sales.KPI.Market.AIA]
|
||
VAR T =
|
||
CALCULATETABLE(
|
||
INDEX([TopN.Value],
|
||
ADDCOLUMNS(SUMMARIZE(FACT_Sales, Dim_PackInfo[PROD_CORP_C]), "@VAL", [External.Sales.KPI]), ORDERBY([@VAL], DESC)
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN IF(CV <> BLANK(),MAXX(T, [PROD_CORP_C] ))
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 4f4044da-7926-44c5-84aa-3a947a1d553f
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.Value.MTH.AIA' = [01.Value]
|
||
displayFolder: 04.Test
|
||
lineageTag: 7091d203-a4ba-4573-b01d-353ba45f9bab
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.Value.MTH.MID.AIA' =
|
||
[01.Value]
|
||
// SWITCH (
|
||
// TRUE (),
|
||
// ISFILTERED ( Dim_Org ) && ISFILTERED ( Dim_GeoGroup ), BLANK (),
|
||
// ISFILTERED( Dim_Org ) && NOT ISFILTERED( Dim_Market) && NOT ISFILTERED(Dim_BrandDefaultMKT),BLANK(),
|
||
// [External.Value.MID]
|
||
// )
|
||
// ---------------------------------KPI描述------------------------------------
|
||
------创建者:zhouxin
|
||
------邮箱:kmls393@astrazeneca.net
|
||
------KPI名字:金额中间KPI
|
||
------KPI公式:
|
||
------备注:1、选了架构维度,需要乘以大区拆分比例。
|
||
------ 2、因为省份group是根据城市组合得到的,业务要求只能从省份维度看,若关联架构,则需要显示为空
|
||
------创建时间:2024.6.13
|
||
------修改时间:
|
||
------修改内容:
|
||
----------------------------------------------------------------------------)
|
||
displayFolder: Sales
|
||
lineageTag: cc12cb4e-b70f-405a-a5c6-e6559a6bdf36
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.Sales.MTH.AIA' = ```
|
||
|
||
SWITCH (
|
||
[External.SelectUnit],
|
||
"RMB", [External.Value.MTH],
|
||
"K RMB", DIVIDE ( [External.Value.MTH], 1000 ),
|
||
"M RMB", DIVIDE ( [External.Value.MTH], 1000000 ),
|
||
"USD", DIVIDE ( [External.Value.MTH], [ExchangeRate] ),
|
||
"K USD", DIVIDE ( DIVIDE ( [External.Value.MTH], [ExchangeRate] ), 1000 ),
|
||
"M USD", DIVIDE ( DIVIDE ( [External.Value.MTH], [ExchangeRate] ), 1000000 ),
|
||
"Unit", [External.Unit.MTH],
|
||
"K Unit", DIVIDE ( [External.Unit.MTH], 1000 ),
|
||
"M Unit", DIVIDE ( [External.Unit.MTH], 1000000 ),
|
||
"CU", [External.CountingUnit.MTH],
|
||
"K CU", DIVIDE ( [External.CountingUnit.MTH], 1000 ),
|
||
"M CU", DIVIDE ( [External.CountingUnit.MTH], 1000000 ),
|
||
"PDOT", [External.PDOT.MTH],
|
||
"K PDOT", DIVIDE ( [External.PDOT.MTH], 1000 ),
|
||
"M PDOT", DIVIDE ( [External.PDOT.MTH], 1000000 ),
|
||
"张数", [External.Prescription.MTH]
|
||
// "K Rx", DIVIDE ( [External.Prescription.MTH], 1000 ),
|
||
// "M Rx", DIVIDE ( [External.Prescription.MTH], 1000000 )
|
||
)
|
||
|
||
```
|
||
displayFolder: Sales
|
||
lineageTag: 6243fb3b-72e5-4185-bf60-4a94aa7dcdd9
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure Potential_MKT_Filter = CALCULATE(COUNTROWS(Dim_HP_Potential_AIA), Dim_HP_Potential_AIA[MARKET] IN VALUES(Dim_Market[MARKET]))
|
||
displayFolder: 03.Others
|
||
lineageTag: 5628e888-a209-4f0a-a50d-2ddf49c8e8e5
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.Sales.KPI.AIA' = ```
|
||
|
||
SWITCH (
|
||
[External.SelectUnit],
|
||
"RMB", [External.Value.MTH],
|
||
"K RMB", DIVIDE ( [External.Value.MTH], 1000 ),
|
||
"M RMB", DIVIDE ( [External.Value.MTH], 1000000 ),
|
||
"USD", DIVIDE ( [External.Value.MTH], [ExchangeRate] ),
|
||
"K USD", DIVIDE ( DIVIDE ( [External.Value.MTH], [ExchangeRate] ), 1000 ),
|
||
"M USD", DIVIDE ( DIVIDE ( [External.Value.MTH], [ExchangeRate] ), 1000000 ),
|
||
"Unit", [External.Unit.MTH],
|
||
"K Unit", DIVIDE ( [External.Unit.MTH], 1000 ),
|
||
"M Unit", DIVIDE ( [External.Unit.MTH], 1000000 ),
|
||
"CU", [External.CountingUnit.MTH],
|
||
"K CU", DIVIDE ( [External.CountingUnit.MTH], 1000 ),
|
||
"M CU", DIVIDE ( [External.CountingUnit.MTH], 1000000 ),
|
||
"PDOT", [External.PDOT.MTH],
|
||
"K PDOT", DIVIDE ( [External.PDOT.MTH], 1000 ),
|
||
"M PDOT", DIVIDE ( [External.PDOT.MTH], 1000000 ),
|
||
"张数", [External.Prescription.MTH]
|
||
// "K Rx", DIVIDE ( [External.Prescription.MTH], 1000 ),
|
||
// "M Rx", DIVIDE ( [External.Prescription.MTH], 1000000 )
|
||
)
|
||
```
|
||
displayFolder: 01.General\02.0.Basic\Sales
|
||
lineageTag: 50c7d3a6-6334-42e0-bb7d-1abf2d6b1133
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.Value.MID.AIA.TEST' = ```
|
||
|
||
INT(CALCULATE (
|
||
|
||
NOT ISEMPTY(Fact_Sales)
|
||
,
|
||
TREATAS ( VALUES ( Dim_Market[MKT_SOURCE] ), Dim_RC[MKT_SOURCE] )
|
||
))
|
||
```
|
||
displayFolder: Sales
|
||
lineageTag: 832d14a5-4036-4afc-8538-6777fb064880
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure DECILE_COL = ```
|
||
IF(ISFILTERED(Dim_Market), SELECTEDVALUE(Dim_HP_Potential_AIA[DECILE]))
|
||
// IF(ISFILTERED(Dim_Market[MARKET]),
|
||
// CALCULATE(SELECTEDVALUE(Dim_HP_Potential_AIA[DECILE]),
|
||
// CROSSFILTER(Dim_Market[MKT_SOURCE], Dim_Org[MKT_SOURCE], Both),
|
||
// CROSSFILTER(Dim_Org[INS_MKT_SOURCE], Dim_InsKey[INS_MKT_SOURCE], Both),
|
||
// CROSSFILTER(Dim_InsKey[INS_MKT_SOURCE], Dim_HP_Potential_AIA[INS_MKT_SOURCE], Both)
|
||
// )
|
||
// )
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 34c6c05a-c761-4392-95cf-525c7831fec1
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.External.Sales.KPI.Trend.Q2.2' = ```
|
||
|
||
IF([External.Sales.KPI2.1]<>BLANK() && [External.Rank.KPI2.1]<=[Top Value] && [External.Rank.KPI2.1]<>BLANK(),
|
||
IF([Trend_Is_In_DateRange.Q]>0 && MIN(Dim_Calendar_Alt[YEAR])>2023,
|
||
VAR _1 =
|
||
CALCULATE(
|
||
[External.Trend.KPI2.2],
|
||
REMOVEFILTERS(Dim_Calendar),
|
||
REMOVEFILTERS(Dim_Calendar_Alt),
|
||
TREATAS(VALUES(Dim_Calendar_Alt[YYYYMM]),Dim_Calendar[YYYYMM]),
|
||
|
||
MQY[Period] = "MTH"
|
||
)
|
||
RETURN
|
||
IF(ISBLANK(_1),0,_1)
|
||
)
|
||
)
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 6f104c77-a02b-4fac-93f2-888ad6fe8cf9
|
||
|
||
formatStringDefinition =
|
||
SWITCH([IMSRankedBy.Value],
|
||
"MS%", "#,0.0%",
|
||
"GR%", "#,0%",
|
||
"#,#"
|
||
)
|
||
|
||
measure 'AIA.External.Sales.KPI.Trend2.2' = ```
|
||
|
||
IF([External.Sales.KPI2.1]<>BLANK() && [External.Rank.KPI2.1]<=[Top Value] && [External.Rank.KPI2.1]<>BLANK() ,
|
||
IF([Trend_Is_In_DateRange]>0 && MIN(Dim_Calendar_Alt[YEAR])>2023,
|
||
VAR _1= CALCULATE(
|
||
[External.Trend.KPI2.2],
|
||
REMOVEFILTERS(Dim_Calendar),
|
||
REMOVEFILTERS(Dim_Calendar_Alt),
|
||
TREATAS(VALUES(Dim_Calendar_Alt[YYYYMM]),Dim_Calendar[YYYYMM]),
|
||
MQY[Period] = "MTH"
|
||
)
|
||
RETURN
|
||
IF(ISBLANK(_1),0,_1)
|
||
)
|
||
)
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: b89d7a42-76b3-4008-8fa3-c8246d613996
|
||
|
||
formatStringDefinition =
|
||
SWITCH([IMSRankedBy.Value],
|
||
"MS%", "#,0.0%",
|
||
"GR%", "#,0%",
|
||
"#,#"
|
||
)
|
||
|
||
measure 'AIA2.1 brand_dim' = MAX('AIA.Option_Brand'[Value])
|
||
displayFolder: 03.Others
|
||
lineageTag: 63d2020e-8654-4130-8ed2-5134979fb0c4
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.warning3.2' = ```
|
||
|
||
IF( (NOT ISEMPTY (
|
||
INTERSECT ( { 0,1 }, VALUES ( 'AIA.Fields_Decile'[AIA.Fields_Decile 个订单] )))) || OR (
|
||
ISFILTERED ( Dim_HP_Potential_AIA[DECILE] ),
|
||
ISFILTERED ( Dim_HP_Potential_AIA[DECILE_GROUP] )
|
||
),IF(ISFILTERED ( Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG] ) && ISFILTERED ( Dim_Market[MARKET] ),"Decile相关分析,请先确认所选潜力市场与潜力单位是否符合需求",
|
||
"请先选择市场;另外未选公司/产品时,Brand相关KPI为市场值"),
|
||
IF( ISFILTERED(Dim_Market[MARKET]),BLANK(),"请先选择市场和产品"))
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: ef6c2ef5-4d46-4c5a-b10d-b69a588d6d58
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'ReportURL.AIA' = CALCULATE(SELECTEDVALUE(Config_ReportURL[URL]),Config_ReportURL[ReportName]="AIA")
|
||
displayFolder: 03.Others
|
||
lineageTag: b3f392a3-07a5-42cb-96c9-4f1d0617ffc2
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.warning2.3' = ```
|
||
|
||
IF( (NOT ISEMPTY (
|
||
INTERSECT ( { 8,9 }, VALUES ( 'AIA.Fields_Geo'[AIA.Fields_Geo 个订单] )))) || OR (
|
||
ISFILTERED ( Dim_HP_Potential_AIA[DECILE] ),
|
||
ISFILTERED ( Dim_HP_Potential_AIA[DECILE_GROUP] )
|
||
),IF(ISFILTERED ( Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG] ) && ISFILTERED ( Dim_Market[MARKET] ),"Decile相关分析,请先确认所选潜力市场与潜力单位是否符合需求",
|
||
"请先选择市场;另外未选公司/产品时,Brand相关KPI为市场值"),
|
||
IF( ISFILTERED(Dim_Market[MARKET]),"未选公司/产品时,Brand相关KPI为市场值","请先选择市场;另外未选公司/产品时,Brand相关KPI为市场值"))
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: f8e8fcd0-3df8-4dee-ac76-a1ab78400692
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.View.Default.DefinedMkt' =
|
||
VAR V = SELECTEDVALUE(Dim_BrandMKT[MARKET])
|
||
VAR A = SELECTEDVALUE(Dim_BrandMKT[ValueTypeName])
|
||
RETURN IF.EAGER([AIATotal.View.Sales.Market] <> BLANK(), V&"("&A&")")
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: e63b308f-d72d-4e0e-a34a-65410f0559eb
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.SwitchValueType' =
|
||
SWITCH(
|
||
[External.SelectVBPUnit],
|
||
"RMB", [AIATotal.Base.Value],
|
||
"Unit", [AIATotal.Base.Unit],
|
||
"CU", [AIATotal.Base.CountingUnit],
|
||
"PDOT", [AIATotal.Base.PDOT],
|
||
"张数", [AIATotal.Base.Prescription]
|
||
)
|
||
/*
|
||
单位转换
|
||
*/
|
||
displayFolder: 02.Page\02.1Overview\1.Switch
|
||
lineageTag: 4644d94f-694c-487d-880d-a77e88fc05cd
|
||
|
||
measure 'AIATotal.SwitchValueType.Ly' =
|
||
SWITCH(
|
||
[External.SelectVBPUnit],
|
||
"RMB", [AIATotal.Base.Value.Ly],
|
||
"Unit", [AIATotal.Base.Unit.Ly],
|
||
"CU", [AIATotal.Base.CountingUnit.Ly],
|
||
"PDOT", [AIATotal.Base.PDOT.Ly],
|
||
"张数", [AIATotal.Base.Prescription.Ly]
|
||
)
|
||
/*
|
||
单位转换
|
||
*/
|
||
displayFolder: 02.Page\02.1Overview\1.Switch
|
||
lineageTag: ab045632-7f98-4601-8d9a-45cc3296fba7
|
||
|
||
measure 'AIATotal.SpecialLogic' =
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS (
|
||
// TREATAS ( VALUES ( Dim_BrandMKT[MKT_SOURCE] ), Dim_Market[MKT_SOURCE] )
|
||
Dim_Market[MKT_SOURCE]
|
||
= SELECTEDVALUE ( Dim_BrandMKT[MKT_SOURCE] )
|
||
)
|
||
// USERELATIONSHIP ( Dim_BrandMKT[MKT_SOURCE], Dim_Market[MKT_SOURCE] )
|
||
)
|
||
/*
|
||
将Dim_BrandMKT的上下文传入到 [AIATotal.SwitchValueType] 中
|
||
*/
|
||
displayFolder: 02.Page\02.1Overview\2.SpecialLogic
|
||
lineageTag: 61845111-590c-43d4-b052-856c3d551234
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.SpecialLogic.Ly' =
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType.Ly],
|
||
KEEPFILTERS (
|
||
// TREATAS ( VALUES ( Dim_BrandMKT[MKT_SOURCE] ), Dim_Market[MKT_SOURCE] )
|
||
Dim_Market[MKT_SOURCE]
|
||
= SELECTEDVALUE ( Dim_BrandMKT[MKT_SOURCE] )
|
||
)
|
||
// USERELATIONSHIP ( Dim_BrandMKT[MKT_SOURCE], Dim_Market[MKT_SOURCE] )
|
||
)
|
||
/*
|
||
将Dim_BrandMKT的上下文传入到 [AIATotal.SwitchValueType.Ly] 中
|
||
*/
|
||
displayFolder: 02.Page\02.1Overview\2.SpecialLogic
|
||
lineageTag: 6b7e1c1b-40e3-4f23-8306-6500f5454be6
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.View.Sales' =
|
||
CALCULATE (
|
||
[AIATotal.SpecialLogic],
|
||
KEEPFILTERS (
|
||
//TREATAS ( VALUES ( Dim_BrandMKT[BRAND_NAME_CN] ), Dim_PackInfo[PROD_DES_C] )
|
||
Dim_PackInfo[PROD_DES_C]
|
||
= SELECTEDVALUE ( Dim_BrandMKT[BRAND_NAME_CN] )
|
||
)
|
||
)
|
||
formatString: #,0
|
||
displayFolder: 02.Page\02.1Overview\3.View
|
||
lineageTag: 6132be7d-2838-4387-8392-4c5a4ceaaada
|
||
|
||
measure 'AIATotal.View.Sales.Ly' =
|
||
CALCULATE (
|
||
[AIATotal.SpecialLogic.Ly],
|
||
KEEPFILTERS (
|
||
//TREATAS ( VALUES ( Dim_BrandMKT[BRAND_NAME_CN] ), Dim_PackInfo[PROD_DES_C] )
|
||
Dim_PackInfo[PROD_DES_C]
|
||
= SELECTEDVALUE ( Dim_BrandMKT[BRAND_NAME_CN] )
|
||
)
|
||
)
|
||
formatString: #,0
|
||
displayFolder: 02.Page\02.1Overview\3.View
|
||
lineageTag: c14db38d-5a91-4c9a-a830-5bc46822513a
|
||
|
||
measure 'AIATotal.View.Sales.Market' = CALCULATE ( [AIATotal.SpecialLogic] )
|
||
formatString: #,0
|
||
displayFolder: 02.Page\02.1Overview\3.View
|
||
lineageTag: 919c5e03-b73b-4f5b-91d8-2dff560f1308
|
||
|
||
measure 'AIATotal.View.Sales.Market.Ly' = CALCULATE ( [AIATotal.SpecialLogic.Ly] )
|
||
formatString: #,0
|
||
displayFolder: 02.Page\02.1Overview\3.View
|
||
lineageTag: 239149b0-3a49-4c09-9737-fda694aa048c
|
||
|
||
measure 'Test.AIATotal.SwitchValueType' = ```
|
||
VAR YQ1 =
|
||
MIN ( Dim_Calendar_Alt[date] )
|
||
VAR YQ2 =
|
||
MAX ( Dim_Calendar_Alt[date] )
|
||
VAR DATE2 =
|
||
CALCULATE ( ENDOFQUARTER ( Dim_Calendar[DATE] ) )
|
||
VAR DATE1 =
|
||
DATE ( YEAR ( DATE2 ), MONTH ( DATE2 ) - 23, 1 )
|
||
RETURN
|
||
INT ( MIN ( Dim_Calendar_Alt[date] )>=DATE(2023,1,1)
|
||
//DATE1 <= YQ1 && DATE2 >= YQ2
|
||
)
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\1.Switch
|
||
lineageTag: e7fedd41-ad82-4491-99a9-fb715d2c8b00
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.View.Gr%.Market' =
|
||
VAR _c = [AIATotal.View.Sales.Market]
|
||
VAR _l = [AIATotal.View.Sales.Market.Ly]
|
||
RETURN
|
||
DIVIDE( _c - _l, _l )
|
||
/*
|
||
(今年市场销量-去年市场销量)/去年市场销量
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 835f6c8a-b901-4d9f-a969-17b64cdea6c9
|
||
|
||
measure 'AIATotal.View.Gr%' =
|
||
VAR _c = [AIATotal.View.Sales]
|
||
VAR _l = [AIATotal.View.Sales.Ly]
|
||
RETURN
|
||
DIVIDE( _c - _l, _l )
|
||
/*
|
||
(今年市场销量-去年市场销量)/去年市场销量
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 2ec1d218-3dc7-43db-8efb-6709fc391034
|
||
|
||
measure 'AIATotal.View.Gr%.AZ' =
|
||
VAR _c = [AIATotal.View.Sales.AZ]
|
||
VAR _l = [AIATotal.View.Sales.AZ.Ly]
|
||
RETURN
|
||
DIVIDE( _c - _l, _l )
|
||
/*
|
||
(AZ今年产品销量-AZ去年产品销量)/AZ去年产品销量
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 1899c095-a8df-45ae-b286-1d1b3b2b6c8d
|
||
|
||
measure 'AIATotal.View.Gr%.QoQ' =
|
||
VAR _c =
|
||
CALCULATE( [AIATotal.View.Sales], MQY[Period] = "QTDAvg" )
|
||
VAR _l =
|
||
CALCULATE(
|
||
CALCULATE(
|
||
[AIATotal.View.Sales],
|
||
PREVIOUSQUARTER( ENDOFQUARTER( Dim_Calendar[Date] ) )
|
||
),
|
||
MQY[Period] = "QTDAvg"
|
||
)
|
||
RETURN
|
||
DIVIDE( _c - _l, _l )
|
||
|
||
/*
|
||
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 35bd86d2-1419-48af-aa69-8fbe682f10c1
|
||
|
||
measure 'AIATotal.View.Gr%.QoQ.AZ' =
|
||
VAR _c =
|
||
CALCULATE( [AIATotal.View.Sales.AZ], MQY[Period] = "QTDAvg" )
|
||
VAR _l =
|
||
CALCULATE(
|
||
CALCULATE(
|
||
[AIATotal.View.Sales.AZ],
|
||
PREVIOUSQUARTER( ENDOFQUARTER( Dim_Calendar[Date] ) )
|
||
),
|
||
MQY[Period] = "QTDAvg"
|
||
)
|
||
RETURN
|
||
DIVIDE( _c - _l, _l )
|
||
|
||
/*
|
||
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: dffc5be5-8f82-41a8-838f-1062e2e58bb8
|
||
|
||
measure 'AIATotal.View.MS%.AZ' = DIVIDE([AIATotal.View.Sales.AZ],[AIATotal.View.Sales.Market])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 47af118f-0a44-4417-96f3-f878d39d1337
|
||
|
||
measure 'AIATotal.View.MS%.AZ.Ly' = DIVIDE([AIATotal.View.Sales.AZ.ly],[AIATotal.View.Sales.Market.ly])
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 8efbb7b5-7571-4424-ae33-c4f03cef2f7b
|
||
|
||
measure 'AIATotal.View.△MS%.AZ' =
|
||
VAR _L = [AIATotal.View.MS%.AZ.Ly]
|
||
VAR _C = [AIATotal.View.MS%.AZ]
|
||
RETURN
|
||
IF( _L<>BLANK() , _C-_L )
|
||
|
||
/*
|
||
今年产品占市场的占比-去年产品占市场的占比
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 1bf17099-7452-4118-aa40-376ff72baeea
|
||
|
||
measure 'AIATotal.View.EI' =
|
||
DIVIDE (
|
||
DIVIDE ( [AIATotal.View.Sales.AZ], [AIATotal.View.Sales.AZ.Ly]),
|
||
DIVIDE ( [AIATotal.View.Sales.Market], [AIATotal.View.Sales.Market.Ly])
|
||
) * 100
|
||
|
||
/*
|
||
(今年产品销量/去年销量)/(今年市场销量/去年市场销量) * 100
|
||
*/
|
||
formatString: 0
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 0c4f2589-886e-4811-b67d-4060be021d7b
|
||
|
||
measure 'AIATotal.View.CompetitorName' =
|
||
VAR PRODCN =
|
||
SUMMARIZE (
|
||
Dim_BrandMKT,
|
||
Dim_BrandMKT[KEYCOMPATITORCN2],
|
||
Dim_BrandMKT[KEYCOMPATITOREN]
|
||
)
|
||
VAR DS = SELECTEDVALUE ( Dim_DataSource[DATA_SOURCE] )
|
||
VAR COMPNAME =
|
||
CALCULATE (
|
||
CONCATENATEX (
|
||
PRODCN,
|
||
Dim_BrandMKT[KEYCOMPATITORCN2],
|
||
" / ",
|
||
Dim_BrandMKT[KEYCOMPATITOREN]
|
||
),
|
||
Dim_BrandMKT[DATA_SOURCE] = DS
|
||
)
|
||
RETURN
|
||
IF ( [AIATotal.View.Sales.Market] <> BLANK ( ), COMPNAME )
|
||
/*
|
||
逻辑参考 [ExternalTotal.VBPCompetitorName.KPI]
|
||
*/
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 963b84f5-fc79-4ac1-aae2-7d8071e9a831
|
||
|
||
measure 'AIATotal.View.MS%.AZ.R12' =
|
||
IF (
|
||
[Trend_Is_In_DateRange] > 0,
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
// Dim_Corp[CORP_DES] = "ASTRAZENECA",
|
||
KEEPFILTERS (
|
||
TREATAS ( VALUES ( Dim_BrandMKT[BRAND_NAME_CN] ), Dim_PackInfo[PROD_DES_C] )
|
||
)
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
TREATAS(VALUES(Dim_BrandMKT[MKT_SOURCE]), Dim_Market[MKT_SOURCE] ),
|
||
REMOVEFILTERS ( Dim_Calendar ),
|
||
REMOVEFILTERS ( Dim_Calendar_Alt ),
|
||
TREATAS ( VALUES ( Dim_Calendar_Alt[YYYYMM] ), Dim_Calendar[YYYYMM] ),
|
||
MQY[Period] = "MTH"
|
||
)
|
||
)
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: adb9f057-24cb-4dee-a630-d0c68e114b40
|
||
|
||
measure 'AIATotal.View.MS%.AZ.R12.Q' =
|
||
IF (
|
||
[Trend_Is_In_DateRange.Q] > 0,
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
//Dim_Corp[CORP_DES] = "ASTRAZENECA",
|
||
KEEPFILTERS (
|
||
TREATAS ( VALUES ( Dim_BrandMKT[BRAND_NAME_CN] ), Dim_PackInfo[PROD_DES_C] )
|
||
)
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
TREATAS(VALUES(Dim_BrandMKT[MKT_SOURCE]), Dim_Market[MKT_SOURCE] ),
|
||
REMOVEFILTERS ( Dim_Calendar ),
|
||
REMOVEFILTERS ( Dim_Calendar_Alt ),
|
||
TREATAS ( VALUES ( Dim_Calendar_Alt[YYYYMM] ), Dim_Calendar[YYYYMM] ),
|
||
MQY[Period] = "MTH"
|
||
)
|
||
)
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: 16ddf2ae-c417-41d6-aa3d-eef7e37990e0
|
||
|
||
measure 'AIATotal.View.Competitor.Gr%' =
|
||
VAR _Com_Market =
|
||
SELECTEDVALUE ( Dim_BrandMKT[CompatitorMarket] )
|
||
VAR _Class = SELECTEDVALUE ( Dim_BrandMKT[CLASS] )
|
||
VAR _Molecule = SELECTEDVALUE ( Dim_BrandMKT[KEYCOMPATITOREN] )
|
||
VAR _Prod = SELECTEDVALUE ( Dim_BrandMKT[KEYCOMPATITOREN] )
|
||
VAR _Corp = SELECTEDVALUE ( Dim_BrandMKT[CORP] )
|
||
VAR _Prod_cn = SELECTEDVALUE ( Dim_BrandMKT[KEYCOMPATITORCN] )
|
||
RETURN
|
||
IF (
|
||
ISBLANK ( [ExternalTotal.VBPCompetitorName.KPI] ),
|
||
BLANK ( ),
|
||
SWITCH (
|
||
SELECTEDVALUE ( Dim_BrandMKT[CompatitorType] ),
|
||
"PROD",
|
||
CALCULATE (
|
||
VAR _c = [AIATotal.SwitchValueType]
|
||
VAR _l = [AIATotal.SwitchValueType.Ly]
|
||
RETURN
|
||
DIVIDE ( _c - _l, _l ),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market ),
|
||
KEEPFILTERS ( Dim_PackInfo[PROD_DES] = _Prod )
|
||
),
|
||
"PRODCN",
|
||
CALCULATE (
|
||
VAR _c = [AIATotal.SwitchValueType]
|
||
VAR _l = [AIATotal.SwitchValueType.Ly]
|
||
RETURN
|
||
DIVIDE ( _c - _l, _l ),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market ),
|
||
KEEPFILTERS ( Dim_PackInfo[PROD_DES_C] = _Prod_cn )
|
||
),
|
||
"PROD_CORP",
|
||
CALCULATE (
|
||
VAR _c = [AIATotal.SwitchValueType]
|
||
VAR _l = [AIATotal.SwitchValueType.Ly]
|
||
RETURN
|
||
DIVIDE ( _c - _l, _l ),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market ),
|
||
KEEPFILTERS ( Dim_PackInfo[PROD_DES] = _Prod ),
|
||
KEEPFILTERS ( Dim_Corp[CORP_DES] = _Corp )
|
||
),
|
||
"CLASS",
|
||
CALCULATE (
|
||
VAR _c = [AIATotal.SwitchValueType]
|
||
VAR _l = [AIATotal.SwitchValueType.Ly]
|
||
RETURN
|
||
DIVIDE ( _c - _l, _l ),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market ),
|
||
KEEPFILTERS ( Dim_MKTPackMapping[CLASS] = _Class )
|
||
),
|
||
"Molecule",
|
||
CALCULATE (
|
||
VAR _c = [AIATotal.SwitchValueType]
|
||
VAR _l = [AIATotal.SwitchValueType.Ly]
|
||
RETURN
|
||
DIVIDE ( _c - _l, _l ),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market ),
|
||
KEEPFILTERS ( Dim_PackInfo[CMPS_DES] = _Molecule )
|
||
)
|
||
)
|
||
)
|
||
/*
|
||
VAR _c = [AIATotal.SwitchValueType]
|
||
VAR _l = [AIATotal.SwitchValueType.Ly]
|
||
RETURN
|
||
DIVIDE ( _c - _l, _l ),
|
||
(今年市场销量-去年市场销量)/去年市场销量
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: e45bf5c7-ec99-46c7-a645-119ec799631f
|
||
|
||
measure 'AIATotal.View.Competitor.MS%' =
|
||
VAR _Com_Market =
|
||
SELECTEDVALUE ( Dim_BrandMKT[CompatitorMarket] )
|
||
VAR _Class = SELECTEDVALUE ( Dim_BrandMKT[CLASS] )
|
||
VAR _Molecule = SELECTEDVALUE ( Dim_BrandMKT[KEYCOMPATITOREN] )
|
||
VAR _Prod = SELECTEDVALUE ( Dim_BrandMKT[KEYCOMPATITOREN] )
|
||
VAR _Corp = SELECTEDVALUE ( Dim_BrandMKT[CORP] )
|
||
VAR _Prod_cn = SELECTEDVALUE ( Dim_BrandMKT[KEYCOMPATITORCN] )
|
||
RETURN
|
||
IF (
|
||
ISBLANK ( [ExternalTotal.VBPCompetitorName.KPI] ),
|
||
BLANK ( ),
|
||
SWITCH (
|
||
SELECTEDVALUE ( Dim_BrandMKT[CompatitorType] ),
|
||
"PROD",
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS ( Dim_PackInfo[PROD_DES] = _Prod )
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market )
|
||
),
|
||
"PRODCN",
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS ( Dim_PackInfo[PROD_DES_C] = _Prod_cn )
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market )
|
||
),
|
||
"PROD_CORP",
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS ( Dim_PackInfo[PROD_DES] = _Prod ),
|
||
KEEPFILTERS ( Dim_Corp[CORP_DES] = _Corp )
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market )
|
||
),
|
||
"CLASS",
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS ( Dim_MKTPackMapping[CLASS] = _Class )
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market )
|
||
),
|
||
"Molecule",
|
||
CALCULATE (
|
||
DIVIDE (
|
||
CALCULATE (
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS ( Dim_PackInfo[CMPS_DES] = _Molecule )
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
),
|
||
KEEPFILTERS ( Dim_Market[MARKET] = _Com_Market )
|
||
)
|
||
)
|
||
)
|
||
/*
|
||
DIVIDE(
|
||
CALCULATE(
|
||
[AIATotal.SwitchValueType],
|
||
KEEPFILTERS( XXXX )
|
||
),
|
||
[AIATotal.SwitchValueType]
|
||
)
|
||
产品销量/市场销量
|
||
*/
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 02.Page\02.1Overview\4.DeriveView
|
||
lineageTag: b0a8826b-2677-4569-9bcb-ea2b3f7142c1
|
||
|
||
measure 'AIA.Filter.IsShow' =
|
||
|
||
INT (
|
||
CALCULATE (
|
||
NOT ISEMPTY ( Fact_Sales ),
|
||
KEEPFILTERS( TREATAS ( VALUES ( Dim_Market[MKT_SOURCE] ), Dim_RC[MKT_SOURCE] ) )
|
||
)
|
||
)
|
||
displayFolder: 03.Others
|
||
lineageTag: 23592f2b-5517-4549-8dd8-b57eddb7cdaf
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure Role_Check = ```
|
||
|
||
IF(
|
||
SELECTEDVALUE('CONFIG_ACCESS_ROLE'[ROLE]) IN { "PI_SALES", "PI_SALES_DSM" }
|
||
&& SELECTEDVALUE(Dim_RC[IS_TARGET_HP]) IN {"N",BLANK()},
|
||
1,
|
||
0
|
||
)
|
||
```
|
||
displayFolder: 04.Test
|
||
lineageTag: 7f34f18c-dea6-4105-bae0-2d3a4ede448f
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'External.△MS%.KPI.Top1PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.△MS%.TopNPlayerName.AIA], 'TopN'[TopN]=1,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: a45ab685-3c3a-41d9-b583-02509e3feee4
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.△MS%.KPI.Top2PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.△MS%.TopNPlayerName.AIA], 'TopN'[TopN]=2,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 73659a7c-b9d6-4a5a-9506-5f7aa35f8fae
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.△MS%.KPI.Top3PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.△MS%.TopNPlayerName.AIA], 'TopN'[TopN]=3,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: fc8f8ec8-7878-4e48-9ee4-ee6ea26f2e6b
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.GR%.KPI.Top2PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.GR%.TopNPlayerName.AIA], 'TopN'[TopN]=2,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: a6f5328b-a48d-4258-931d-5270f0e69e6b
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.MS%.KPI.Top1PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.MS%.TopNPlayerName.AIA], 'TopN'[TopN]=1,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 63ce680e-930b-4da5-a256-aa098e45f836
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.MS%.KPI.Top2PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.MS%.TopNPlayerName.AIA], 'TopN'[TopN]=2,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 36172049-60a4-44d5-91d0-511f630b1b7a
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.MS%.KPI.Top3PlayerName.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.MS%.TopNPlayerName.AIA], 'TopN'[TopN]=3,'Fact_Sales'[Is_SpecialFlag]=0))
|
||
|
||
RETURN R
|
||
```
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: c9d50fb5-2d66-45a4-9752-c4b476b597c1
|
||
|
||
annotation PBI_FormatHint = {"isText":true}
|
||
|
||
measure 'External.△MS%.KPI.Top1Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.△MS%.TopNPlayer.AIA], 'TopN'[TopN]=1))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 1613369c-4657-4ed3-b202-a838101d0c05
|
||
|
||
measure 'External.△MS%.KPI.Top2Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.△MS%.TopNPlayer.AIA], 'TopN'[TopN]=2))
|
||
|
||
RETURN R
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code gets the second △MS% according to the desc order of Corp and Product . --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: c54c19f9-f288-497b-857a-bde84cd13be4
|
||
|
||
measure 'External.△MS%.KPI.Top3Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.△MS%.TopNPlayer.AIA], 'TopN'[TopN]=3))
|
||
|
||
RETURN R
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code gets the third △MS% according to the desc order of Corp and Product . --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: c6403811-c1a6-46fd-8829-7fa789f49f44
|
||
|
||
measure 'External.△MS%.TopNPlayer.AIA' =
|
||
|
||
VAR T =
|
||
CALCULATETABLE (
|
||
INDEX (
|
||
[TopN.Value],
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( FACT_Sales, Dim_PackInfo[PROD_CORP_C] ),
|
||
"@VAL", calculate([External.MS%.KPI.AIA],'Fact_Sales'[Is_SpecialFlag]=0),
|
||
"@△MS", [External.△MS%.KPI]
|
||
),
|
||
ORDERBY ( [@VAL], DESC )
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN
|
||
MAXX ( T, [@△MS] )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: a34ae2ae-34a4-4912-9c66-f0d9975f6d8c
|
||
|
||
measure 'External.GR%.KPI.Top1Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.GR%.TopNPlayer.AIA], 'TopN'[TopN]=1))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 4f9433a6-9f23-4f30-9d47-3001c2bc16af
|
||
|
||
measure 'External.GR%.KPI.Top2Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.GR%.TopNPlayer.AIA], 'TopN'[TopN]=2))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: f6f4019e-029d-4916-9f17-d8b57708d251
|
||
|
||
measure 'External.GR%.KPI.Top3Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.GR%.TopNPlayer.AIA], 'TopN'[TopN]=3))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 3cee61fe-9d17-4431-be28-8068e970f790
|
||
|
||
measure 'External.GR%.TopNPlayer.AIA' =
|
||
|
||
VAR CV = [External.Sales.KPI.Market.AIA]
|
||
VAR T =
|
||
CALCULATETABLE (
|
||
INDEX (
|
||
[TopN.Value],
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( FACT_Sales, Dim_PackInfo[PROD_CORP_C] ),
|
||
"@VAL",calculate([External.Sales.KPI.AIA],'Fact_Sales'[Is_SpecialFlag]=0),
|
||
"@GR", [External.Gr%.KPI]
|
||
),
|
||
ORDERBY ( [@VAL], DESC )
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN
|
||
IF ( CV <> BLANK (), MAXX ( T, [@GR] ) )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 1d19974e-ddbe-4646-9b3d-fe41959a304a
|
||
|
||
measure 'External.MS%.KPI.Top1Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.MS%.TopNPlayer.AIA], 'TopN'[TopN]=1))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 723e2ee7-4460-4605-8288-94a59f58ff36
|
||
|
||
measure 'External.MS%.KPI.Top2Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.MS%.TopNPlayer.AIA], 'TopN'[TopN]=2))
|
||
|
||
RETURN R
|
||
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code gets the second MS% according to the desc order of Corp and Product . --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 8de52e71-af7c-4b22-8a2b-c549391286d5
|
||
|
||
measure 'External.MS%.KPI.Top3Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.MS%.TopNPlayer.AIA], 'TopN'[TopN]=3))
|
||
RETURN R
|
||
-----------------------------------------------------------------
|
||
-- DAX Code Comment Block --
|
||
-----------------------------------------------------------------
|
||
-- --
|
||
-- Author: Yuni CHEN --
|
||
-- Created Date: 2024-10 --
|
||
-- Purpose: This code gets the third MS% according to the desc order of Corp and Product . --
|
||
-- Version: 1.0 --
|
||
-- --
|
||
-- --
|
||
-- Last Updated By: N/A --
|
||
-- Last Updated Date: N/A --
|
||
-- Last Updated Version: 1.0 --
|
||
-- Last Updated Purpose: N/A --
|
||
-- --
|
||
-----------------------------------------------------------------
|
||
```
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 292ce9db-67a4-4d45-8349-a25a889002f8
|
||
|
||
measure 'External.MS%.TopNPlayer.AIA' =
|
||
|
||
VAR T =
|
||
CALCULATETABLE (
|
||
INDEX (
|
||
[TopN.Value],
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( FACT_Sales, Dim_PackInfo[PROD_CORP_C] ),
|
||
"@VAL", [External.MS%.KPI]
|
||
),
|
||
ORDERBY ( CALCULATE( [External.MS%.KPI],Fact_Sales[Is_SpecialFlag]=0), DESC )
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN
|
||
MAXX ( T, [@VAL] )
|
||
formatString: 0.0%;-0.0%;0.0%
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: a7f2c52e-d04e-4bc5-bfc4-f712762f0430
|
||
|
||
measure 'External.Sales.KPI.Top1Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.Sales.TopNPlayer.AIA], 'TopN'[TopN]=1))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: b5cafe46-bacf-4906-a4c5-75b89f652aa5
|
||
|
||
measure 'External.Sales.KPI.Top2Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.Sales.TopNPlayer.AIA], 'TopN'[TopN]=2))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 4f01e1c2-9211-416d-8ebc-bf06588c0400
|
||
|
||
measure 'External.Sales.KPI.Top3Player.AIA' = ```
|
||
|
||
VAR DS = SELECTEDVALUE(Dim_DataSource[SOURCENAME])
|
||
VAR DS1 = SELECTEDVALUE(Dim_DataSource[DATA_SOURCE])
|
||
VAR BRANDMKT_FLAG =
|
||
SWITCH(TRUE(),
|
||
ISFILTERED(Dim_Market),
|
||
MAX(Dim_Market[MKT_FLAG]),
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
CALCULATE(MAX(Dim_BrandDefaultMKT[MKT_FLAG]),Dim_BrandDefaultMKT[DATA_SOURCE] = DS1),
|
||
0)
|
||
VAR CV = [External.Sales.KPI.Market]
|
||
VAR R = IF(CV <> BLANK(), CALCULATE([External.Sales.TopNPlayer.AIA], 'TopN'[TopN]=3))
|
||
|
||
RETURN R
|
||
```
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 555d1564-aef9-4831-8742-396ff71c89b9
|
||
|
||
measure 'External.Sales.TopNPlayer.AIA' =
|
||
|
||
VAR CV = [External.Sales.KPI.Market.AIA]
|
||
VAR T =
|
||
CALCULATETABLE (
|
||
INDEX (
|
||
[TopN.Value],
|
||
ADDCOLUMNS (
|
||
SUMMARIZE ( FACT_Sales, Dim_PackInfo[PROD_CORP_C] ),
|
||
"@VAL", calculate([External.MS%.KPI.AIA],'Fact_Sales'[Is_SpecialFlag]=0),
|
||
"@Sales", [External.Sales.KPI]
|
||
),
|
||
ORDERBY ( [@VAL], DESC )
|
||
),
|
||
REMOVEFILTERS ( Dim_Corp ),
|
||
//REMOVEFILTERS ( Dim_Institution ),--需要按机构进行排序
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES_C] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_DES] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_PACK] ),
|
||
REMOVEFILTERS ( Dim_PackInfo[PROD_CORP] )
|
||
)
|
||
RETURN
|
||
IF ( CV <> BLANK (), MAXX ( T, [@Sales] ) )
|
||
formatString: #,0
|
||
displayFolder: 01.General\02.1.TOPN
|
||
lineageTag: 3493dcd7-c54c-41dd-8e20-f1c4bcf7a981
|
||
|
||
measure IsMerge = ISFILTERED(Config_MergeData[MergeData])
|
||
lineageTag: f95c19e0-74fb-4a87-a31c-bf6a4a57a43c
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'MergedData.Text.SingleSelectWarning' = IF ( ISFILTERED ( dim_marketTa[ta] ), "TA/Marekt/Default Market只可选择一个" )
|
||
lineageTag: 007c55f3-9b0c-4291-aabc-8ad9321980d8
|
||
|
||
measure 111 = ```
|
||
SELECTEDVALUE ( Dim_DataSource[SOURCENAME] ) IN {"CHPA"}
|
||
&& ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) )
|
||
```
|
||
lineageTag: a25769bd-15f8-4fdf-a3e6-7cf755b87267
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.warning5.1' = ```
|
||
|
||
VAR _warning1 = ""//"拼DTP数据请先选择ONC相关市场(TA=ONC或Market=EGFR-TKI、Imfinzi、Anti-HER2 mBC、MET-TKI、Soliris related Market)"
|
||
VAR _warning2 = "请先选择市场"
|
||
VAR _warning3 = ""//"DTP无ONC TA省份数据"
|
||
VAR _warning4 = ""//"当前所选市场为非DTP相关市场,因此数据结果仅为CHPA/AIA拼数结果"
|
||
VAR _warning5 = ""//"EGFR TKI市场DTP无省份完整明细数据,因此公司排名仅为CHPA/AIA拼数结果"
|
||
VAR _result =
|
||
SWITCH (
|
||
TRUE (),
|
||
//地理org 筛选, 市场维度 筛选 TA为ONC
|
||
OR ( ISFILTERED ( dim_org ), ISFILTERED ( dim_geo ) )
|
||
&& AND ( NOT ISFILTERED ( 'dim_market' ), SELECTEDVALUE ( 'Dim_MarketTA'[TA] ) = "onco" )
|
||
&& [IsMerge], _warning3,
|
||
|
||
//地理org 筛选, 市场维度 不筛选
|
||
OR ( ISFILTERED ( dim_org ), ISFILTERED ( dim_geo ) )
|
||
&& NOT OR ( ISFILTERED ( dim_market ), ISFILTERED ( Dim_BrandDefaultMKT ) ),
|
||
//拼接DTP
|
||
IF ( [IsMerge], _warning1, _warning2 ),
|
||
|
||
//地理org 筛选, 市场维度 筛选 egfr tki market
|
||
OR ( ISFILTERED ( dim_org ), ISFILTERED ( dim_geo ) )
|
||
&& OR ( ISFILTERED ( dim_market ), ISFILTERED ( Dim_BrandDefaultMKT ) )
|
||
&& OR (SELECTEDVALUE( Dim_Market[MARKET] ) = "egfr tki market",SELECTEDVALUE( Dim_BrandDefaultMKT[MARKET] ) = "egfr tki market")
|
||
&& [IsMerge], _warning5,
|
||
|
||
//地理org 筛选, 市场维度 筛选 非DTP相关市场
|
||
OR ( ISFILTERED ( dim_org ), ISFILTERED ( dim_geo ) )
|
||
&& ISFILTERED ( dim_market )
|
||
&& max( 'Dim_Market'[TA] ) <>"onco"
|
||
&& [IsMerge], _warning4,
|
||
|
||
//地理org 不筛选 市场维度 不筛选
|
||
not(OR ( ISFILTERED ( dim_org ), ISFILTERED ( dim_geo ) ))
|
||
&& NOT OR ( ISFILTERED ( dim_market ), ISFILTERED ( Dim_BrandDefaultMKT ) ),
|
||
//拼接DTP
|
||
IF ( [IsMerge], _warning1, BLANK() ),//5.1 不显示
|
||
|
||
//地理org 不筛选 市场维度 筛选 非DTP相关市场
|
||
not(OR ( ISFILTERED ( dim_org ), ISFILTERED ( dim_geo ) ))
|
||
&& ISFILTERED ( dim_market )
|
||
&& MAX ( 'Dim_Market'[TA] ) <> "onco"
|
||
&& [IsMerge], _warning4,
|
||
BLANK()
|
||
|
||
)
|
||
RETURN
|
||
CONCATENATEX (
|
||
FILTER (
|
||
{ [MergedData.Text.SingleSelectWarning], _result,[MergedDataFreeReport.Text] },
|
||
NOT ISBLANK ( [Value] )
|
||
),
|
||
[Value],
|
||
"
|
||
")
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: ed9fb4c7-abd2-4f50-ac74-0bfd4e77cb67
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.warning5.2' = ```
|
||
|
||
VAR _warning1 = ""//"拼DTP数据请先选择ONC相关市场(ONC、EGFR-TKI、IO、Anti-HER2、MET-TKI、Soliris)"
|
||
VAR _warning2 = "请先选择市场"
|
||
VAR _warning3 = ""//"DTP无ONC TA省份数据"
|
||
VAR _warning4 = ""//"当前所选市场为非DTP相关市场,因此数据结果仅为CHPA/AIA拼数结果"
|
||
VAR _warning6 = ""//"EGFR-TKI市场DTP省份数据仅有泰瑞沙、阿美乐、艾弗沙、凯美纳,其余品牌仅为CHPA/AIA拼数结果"
|
||
VAR _result=
|
||
SWITCH (
|
||
TRUE (),
|
||
//地理org 筛选, 市场维度 筛选 TA为ONC
|
||
AND (
|
||
NOT ISFILTERED ( 'dim_market' ),
|
||
SELECTEDVALUE ( 'Dim_MarketTA'[TA] ) = "onco"
|
||
)
|
||
&& [IsMerge], _warning3,
|
||
//地理org 筛选, 市场维度 不筛选
|
||
NOT OR ( ISFILTERED ( dim_market ), ISFILTERED ( Dim_BrandDefaultMKT ) ), //拼接DTP
|
||
IF ( [IsMerge], _warning1, _warning2 ),
|
||
//地理org 筛选, 市场维度 筛选 非DTP相关市场
|
||
OR ( ISFILTERED ( dim_market ), ISFILTERED ( Dim_BrandDefaultMKT ) )
|
||
&& MAX ( 'Dim_Market'[TA] ) <> "onco"
|
||
&& [IsMerge], _warning4,
|
||
//地理org 筛选, 市场维度 筛选 egfr tki market
|
||
OR ( ISFILTERED ( dim_market ), ISFILTERED ( Dim_BrandDefaultMKT ) )
|
||
&& OR (
|
||
SELECTEDVALUE ( Dim_Market[MARKET] ) = "egfr tki market",
|
||
SELECTEDVALUE ( Dim_BrandDefaultMKT[MARKET] ) = "egfr tki market"
|
||
)
|
||
&& [IsMerge], _warning6,
|
||
BLANK ()
|
||
)
|
||
RETURN
|
||
CONCATENATEX (
|
||
FILTER (
|
||
{ [MergedData.Text.SingleSelectWarning], _result,[MergedDataFreeReport.Text] },
|
||
NOT ISBLANK ( [Value] )
|
||
),
|
||
[Value],
|
||
"
|
||
")
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 3e3d4ed4-2a50-4458-b9d3-7d4fec4b779d
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'MergedDataFreeReport.Text' =
|
||
IF (
|
||
(
|
||
ISFILTERED ( Dim_Geo[CITY_C] ) || ISFILTERED ( Dim_Geo[MERGED_DATA_CITY_C] )
|
||
|| CALCULATE (
|
||
NOT ISEMPTY ( Fields_Merged_Data ),
|
||
keepfilters(TREATAS ( { 313, 314 }, Fields_Merged_Data[Fields_Merged_Data Order] ))
|
||
)
|
||
)
|
||
&& [IsMerge],
|
||
"DTP无城市数据"
|
||
)
|
||
lineageTag: 781c6011-508e-4ae8-96a8-d7c5eeab59ec
|
||
|
||
measure 'AIA.MergedData.MaxYYYYMM' = MAX(Fact_Sales[YYYYMM])
|
||
lineageTag: 71554b90-1b7e-47a5-aef3-be01199e90eb
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.View.Sales.AZ' =
|
||
CALCULATE (
|
||
[AIATotal.View.Sales],
|
||
Dim_PackInfo[CORP_COD] = "a5z"
|
||
)
|
||
formatString: #,0
|
||
displayFolder: 02.Page\02.1Overview\3.View
|
||
lineageTag: 0d35088f-0fcc-4b78-ab57-901cb761ba0f
|
||
|
||
measure 'AIATotal.View.Sales.AZ.Ly' =
|
||
CALCULATE (
|
||
[AIATotal.View.Sales.Ly],
|
||
Dim_PackInfo[CORP_COD] = "a5z"
|
||
)
|
||
formatString: #,0
|
||
displayFolder: 02.Page\02.1Overview\3.View
|
||
lineageTag: f6025a80-025d-460d-bc04-4bd04e9beeb7
|
||
|
||
measure 'AIATotal.Base.CountingUnit' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
'Fact_Sales_Total_AIA',
|
||
[CONUTING_UNIT] //* [External.SelectCountingUnitMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: fbcbaaa6-6df5-4dc5-b01e-6c134efebfad
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.CountingUnit.Ly' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
'Fact_Sales_Total_AIA',
|
||
[CONUTING_UNIT_ly]// * [External.SelectCountingUnitMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 00fe6a4e-6f3a-453b-be5a-08457117ff3b
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.PDOT' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
'Fact_Sales_Total_AIA',
|
||
[CONUTING_UNIT] //* [External.SelectPDOTMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 6a473ac2-fe59-437e-9a41-73627593215d
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.PDOT.Ly' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
'Fact_Sales_Total_AIA',
|
||
[CONUTING_UNIT_ly] //* [External.SelectPDOTMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 6dce9662-14ce-431d-9103-c330eefebca7
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.Prescription' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
'Fact_Sales_Total_AIA',
|
||
[PRESCRIPTION]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 210874ef-0c24-48b8-812a-3b1b39ac150f
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.Prescription.Ly' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
'Fact_Sales_Total_AIA',
|
||
[PRESCRIPTION_ly]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 34513b6b-8113-4be6-b352-757f9d5722ee
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.Unit' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
Fact_Sales_Total_AIA,
|
||
[SALES_UNIT_CAL] //* [External.SelectUnitMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 78c0976c-cbd3-4cd2-8ae5-076723cc5fe2
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.Unit.Ly' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
Fact_Sales_Total_AIA,
|
||
[SALES_UNIT_CAL_ly] //* [External.SelectUnitMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 3a0483eb-ab55-48b6-85aa-2ee9ddcbda55
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.Value' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
Fact_Sales_Total_AIA,
|
||
[SALES_VALUE_CAL] //* [External.SelectValueMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: 1e1fb88d-8e0a-4364-8d3e-3ea28b775555
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIATotal.Base.Value.Ly' = ```
|
||
CALCULATE(
|
||
SUMX(
|
||
Fact_Sales_Total_AIA,
|
||
[SALES_VALUE_CAL_ly] //* [External.SelectValueMKTRatio] * [External.SelectRegionMKTRatio]
|
||
),
|
||
TREATAS( DISTINCT( Dim_Market[MARKET] ), Fact_Sales_Total_AIA[market] )
|
||
)
|
||
/*
|
||
底层度量值
|
||
只适用AIA的Overview页面,默认使用market的筛选关系。
|
||
*/
|
||
```
|
||
displayFolder: 02.Page\02.1Overview\0.Base
|
||
lineageTag: ba28cc53-b4df-4a92-bb0a-38985ee35e13
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.show_filters 3' = ```
|
||
|
||
VAR t_ =
|
||
{(IF (
|
||
ISFILTERED(MQY[Period]),
|
||
VAR ___x = "时间范围:"& [time sel] &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED(Dim_Unit[DW]),
|
||
VAR ___x = "筛选单位:"& CONCATENATEX(VALUES(Dim_Unit[DW]),[DW],",") &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED('Dim_HPFlag'[AIA_HP_FLAG]),
|
||
VAR ___x = "机构范围: 两年共有机构
|
||
"
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED('Dim_InsSalesType'[AIA_PROVIDED_FLAG]),
|
||
VAR ___x =IF(SELECTEDVALUE('AIA_Calgroup'[AIA_INS_REMOVE],"no")="剔除部分机构" ,"机构范围: 滚动两年连续有数机构&剔除异常数据机构 | " ,"机构范围: 滚动两年连续有数机构 | ")
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
NOT ISFILTERED('Dim_HPFlag'[AIA_HP_FLAG]) && NOT ISFILTERED('Dim_InsSalesType'[AIA_PROVIDED_FLAG]),
|
||
VAR ___x = "机构范围: 所有机构
|
||
"
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED(Dim_Market[Market]),
|
||
VAR ___x = "Market:"& CONCATENATEX(VALUES(Dim_Market[Market]),[Market],",") &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
VAR ___x = "DefaultMarket:"& CONCATENATEX(VALUES(Dim_BrandDefaultMKT[MARKET]),[MARKET],",") &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
// ,(IF (
|
||
// ISFILTERED('Dim_MarketTA'[TA]),
|
||
// VAR ___x = "TA: "& CONCATENATEX(VALUES('Dim_MarketTA'[TA]),[TA],",") &"
|
||
// RETURN ___x
|
||
// ),2)
|
||
,(IF (
|
||
ISFILTERED(Dim_Class[CLASS]),
|
||
VAR ___x = "Class: "& CONCATENATEX(VALUES(Dim_Class[CLASS]),Dim_Class[CLASS],",") &"
|
||
"
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[MOLECULE_DES_C]),
|
||
VAR ___x = "Molecule:"& CONCATENATEX(VALUES('Dim_PackInfo'[MOLECULE_DES_C]),[MOLECULE_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),7)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_DES]),
|
||
VAR ___x = "Corp: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_DES]),[CORP_DES],",") &"
|
||
"
|
||
RETURN ___x
|
||
),9)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_DES_C]),
|
||
VAR ___x = "Corp: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_DES_C]),[CORP_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),9)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_TYPE]),
|
||
VAR ___x = "CorpType: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_TYPE]),[CORP_TYPE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),10)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_DES_C]),
|
||
VAR ___x = "Brand:"& CONCATENATEX(VALUES('Dim_PackInfo'[PROD_DES_C]),[PROD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),5)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[PROD_DES_C]),
|
||
VAR ___x = "Brand:"& CONCATENATEX(VALUES(Dim_PackInfo[PROD_DES_C]),[PROD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),5)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_PACK]),
|
||
VAR ___x = "Pack:"& CONCATENATEX(VALUES('Dim_PackInfo'[PROD_PACK]),[PROD_PACK],",") &"
|
||
"
|
||
RETURN ___x
|
||
),11)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_DES]),
|
||
VAR ___x = "Pack EN:"& CONCATENATEX(VALUES('Dim_PackInfo'[PACK_DES]),[PACK_DES],",") &"
|
||
"
|
||
RETURN ___x
|
||
),11)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC1_CODE_DESC]),
|
||
VAR ___x = "ATC1:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC1_CODE_DESC]),[ATC1_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),19)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC2_CODE_DESC]),
|
||
VAR ___x = "ATC2:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC2_CODE_DESC]),[ATC2_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),20)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC3_CODE_DESC]),
|
||
VAR ___x = "ATC3:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC3_CODE_DESC]),[ATC3_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),21)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC4_CODE_DESC]),
|
||
VAR ___x = "ATC4:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC4_CODE_DESC]),[ATC4_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),22)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[GENE_ORIG_DESC]),
|
||
VAR ___x = "Generics:"& CONCATENATEX(VALUES(Dim_PackInfo[GENE_ORIG_DESC]),[GENE_ORIG_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),3)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP1_COD_DES_C]),
|
||
VAR ___x = "NFC1:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP1_COD_DES_C]),[APP1_COD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),23)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP2_COD_DES_C]),
|
||
VAR ___x = "NFC2:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP2_COD_DES_C]),[APP2_COD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),24)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP3_COD_DES_C]),
|
||
VAR ___x = "NFC3:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP3_COD_DES_C]),[APP3_COD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),25)
|
||
,(IF (
|
||
ISFILTERED(Dim_BrandMKT[VBP]),
|
||
VAR ___x = "is VBP:"& CONCATENATEX(VALUES(Dim_BrandMKT[VBP]),[VBP],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[VBP_BATCH]),
|
||
VAR ___x = "VBP Batch:"& CONCATENATEX(VALUES(Dim_PackInfo[VBP_BATCH]),[VBP_BATCH],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG]) && "Default" IN VALUES(Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG]),
|
||
VAR ___x = "Potential MKT Flag:Default | "
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]),
|
||
VAR ___x = "Potential MKT:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME]),[POTENTIAL_MKT_NAME],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[POTENTIAL_TYPE_NAME]),
|
||
VAR ___x = "Potential Type"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[POTENTIAL_TYPE_NAME]),[POTENTIAL_TYPE_NAME],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[DECILE]),
|
||
VAR ___x = "Decile:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[DECILE]),[DECILE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[DECILE_GROUP]),
|
||
VAR ___x = "Decile Group:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[DECILE_GROUP]),[DECILE_GROUP],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[bu_name_en]),
|
||
VAR ___x = "BU: "& CONCATENATEX(VALUES('Dim_Org'[bu_name_en]),[bu_name_en],",") &"
|
||
"
|
||
RETURN ___x
|
||
),17)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[RC_CODE_DESC]),
|
||
VAR ___x = "RC:"& CONCATENATEX(VALUES('Dim_Org'[RC_CODE_DESC]),[RC_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),17)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[REGION_CODE_DESC]),
|
||
VAR ___x = "Region:"& CONCATENATEX(VALUES('Dim_Org'[REGION_CODE_DESC]),[REGION_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[Team]),
|
||
VAR ___x = "Team: "& CONCATENATEX(VALUES('Dim_Org'[Team]),[Team],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_NAME]),
|
||
VAR ___x = "机构: "& CONCATENATEX(VALUES('Dim_Institution'[INST_NAME]),[INST_NAME],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_CODE]),
|
||
VAR ___x = "机构编码: "& CONCATENATEX(VALUES('Dim_Institution'[INST_CODE]),[INST_CODE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_SUB_TYPE]),
|
||
VAR ___x = "机构子类型: "& CONCATENATEX(VALUES('Dim_Institution'[INST_SUB_TYPE]),[INST_SUB_TYPE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INS_LEVEL]),
|
||
VAR ___x = "机构等级: "& CONCATENATEX(VALUES('Dim_Institution'[INS_LEVEL]),[INS_LEVEL],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[IS_TARGET_HP]),
|
||
VAR ___x = "目标机构: "& CONCATENATEX(VALUES('Dim_RC'[IS_TARGET_HP]),[IS_TARGET_HP],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[KA_FLAG]),
|
||
VAR ___x = "KA:"& CONCATENATEX(VALUES('Dim_RC'[KA_FLAG]),[KA_FLAG],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_HP_Potential_AIA'[TARGET_INS_LEVEL]),
|
||
VAR ___x = "目标机构等级: "& CONCATENATEX(VALUES('Dim_HP_Potential_AIA'[TARGET_INS_LEVEL]),[TARGET_INS_LEVEL],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[SUB_CHANNEL]),
|
||
VAR ___x = "SubChannel: "& CONCATENATEX(VALUES('Dim_RC'[SUB_CHANNEL]),[SUB_CHANNEL],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[DRAGON_FLAG]),
|
||
VAR ___x = "Dragon: "& CONCATENATEX(VALUES('Dim_RC'[DRAGON_FLAG]),[DRAGON_FLAG],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[PROVINCE_C]),
|
||
VAR ___x = "Province:"& CONCATENATEX(VALUES('Dim_Geo'[PROVINCE_C]),[PROVINCE_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),12)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[CITY_C]),
|
||
VAR ___x = "City:"& CONCATENATEX(VALUES('Dim_Geo'[CITY_C]),[CITY_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),13)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[AZ_CITY_TIER]),
|
||
VAR ___x = "CityTier:"& CONCATENATEX(VALUES('Dim_Geo'[AZ_CITY_TIER]),[AZ_CITY_TIER],",") &"
|
||
"
|
||
RETURN ___x
|
||
),14)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[PMT_REGION]),
|
||
VAR ___x = "PMT: "& CONCATENATEX(VALUES('Dim_Geo'[PMT_REGION]),[PMT_REGION],",") &"
|
||
"
|
||
RETURN ___x
|
||
),12)
|
||
}
|
||
RETURN CONCATENATEX( t_ , [Value1] , "" )
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 0f5950b9-1b7a-41bb-a791-9b32e659dd1e
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
measure 'AIA.show_filters_4' = ```
|
||
|
||
VAR t_ =
|
||
{(IF (
|
||
ISFILTERED(MQY[Period]),
|
||
VAR ___x = "时间范围:"& [time sel] &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED(Dim_Unit[DW]),
|
||
VAR ___x = "筛选单位:"& CONCATENATEX(VALUES(Dim_Unit[DW]),[DW],",") &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED('Dim_HPFlag'[AIA_HP_FLAG]),
|
||
VAR ___x = "机构范围: 两年共有机构
|
||
"
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED('Dim_InsSalesType'[AIA_PROVIDED_FLAG]),
|
||
VAR ___x =IF(SELECTEDVALUE('AIA_Calgroup'[AIA_INS_REMOVE],"no")="剔除部分机构" ,"机构范围: 滚动两年连续有数机构&剔除异常数据机构 | " ,"机构范围: 滚动两年连续有数机构 | ")
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
NOT ISFILTERED('Dim_HPFlag'[AIA_HP_FLAG]) && NOT ISFILTERED('Dim_InsSalesType'[AIA_PROVIDED_FLAG]),
|
||
VAR ___x = "机构范围: 所有机构
|
||
"
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED(Dim_Market[Market]),
|
||
VAR ___x = "Market:"& CONCATENATEX(VALUES(Dim_Market[Market]),[Market],",") &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
,(IF (
|
||
ISFILTERED(Dim_BrandDefaultMKT),
|
||
VAR ___x = "DefaultMarket:"& CONCATENATEX(VALUES(Dim_BrandDefaultMKT[MARKET]),[MARKET],",") &"
|
||
"
|
||
RETURN ___x
|
||
),1)
|
||
// ,(IF(,1.1)
|
||
// ,(,)
|
||
// ,(IF (
|
||
// ISFILTERED('Dim_MarketTA'[TA]),
|
||
// VAR ___x = "TA: "& CONCATENATEX(VALUES('Dim_MarketTA'[TA]),[TA],",") &"
|
||
// RETURN ___x
|
||
// ),2)
|
||
,(IF (
|
||
ISFILTERED(Dim_Class[CLASS]),
|
||
VAR ___x = "Class: "& CONCATENATEX(VALUES(Dim_Class[CLASS]),[CLASS],",") &"
|
||
"
|
||
RETURN ___x
|
||
),2)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[MOLECULE_DES_C]),
|
||
VAR ___x = "Molecule:"& CONCATENATEX(VALUES('Dim_PackInfo'[MOLECULE_DES_C]),[MOLECULE_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),7)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_DES]),
|
||
VAR ___x = "Corp: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_DES]),[CORP_DES],",") &"
|
||
"
|
||
RETURN ___x
|
||
),9)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_DES_C]),
|
||
VAR ___x = "Corp: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_DES_C]),[CORP_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),9)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[CORP_TYPE]),
|
||
VAR ___x = "CorpType: "& CONCATENATEX(VALUES('Dim_PackInfo'[CORP_TYPE]),[CORP_TYPE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),10)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_DES_C]),
|
||
VAR ___x = "Brand:"& CONCATENATEX(VALUES('Dim_PackInfo'[PROD_DES_C]),[PROD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),5)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[PROD_DES_C]),
|
||
VAR ___x = "Brand:"& CONCATENATEX(VALUES(Dim_PackInfo[PROD_DES_C]),[PROD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),5)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_PACK]),
|
||
VAR ___x = "Pack:"& CONCATENATEX(VALUES('Dim_PackInfo'[PROD_PACK]),[PROD_PACK],",") &"
|
||
"
|
||
RETURN ___x
|
||
),11)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[PROD_DES]),
|
||
VAR ___x = "Pack EN:"& CONCATENATEX(VALUES('Dim_PackInfo'[PACK_DES]),[PACK_DES],",") &"
|
||
"
|
||
RETURN ___x
|
||
),11)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC1_CODE_DESC]),
|
||
VAR ___x = "ATC1:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC1_CODE_DESC]),[ATC1_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),19)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC2_CODE_DESC]),
|
||
VAR ___x = "ATC2:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC2_CODE_DESC]),[ATC2_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),20)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC3_CODE_DESC]),
|
||
VAR ___x = "ATC3:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC3_CODE_DESC]),[ATC3_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),21)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[ATC4_CODE_DESC]),
|
||
VAR ___x = "ATC4:"& CONCATENATEX(VALUES('Dim_PackInfo'[ATC4_CODE_DESC]),[ATC4_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),22)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[GENE_ORIG_DESC]),
|
||
VAR ___x = "Generics:"& CONCATENATEX(VALUES(Dim_PackInfo[GENE_ORIG_DESC]),[GENE_ORIG_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),3)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP1_COD_DES_C]),
|
||
VAR ___x = "NFC1:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP1_COD_DES_C]),[APP1_COD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),23)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP2_COD_DES_C]),
|
||
VAR ___x = "NFC2:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP2_COD_DES_C]),[APP2_COD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),24)
|
||
,(IF (
|
||
ISFILTERED('Dim_PackInfo'[APP3_COD_DES_C]),
|
||
VAR ___x = "NFC3:"& CONCATENATEX(VALUES('Dim_PackInfo'[APP3_COD_DES_C]),[APP3_COD_DES_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),25)
|
||
,(IF (
|
||
ISFILTERED(Dim_BrandMKT[VBP]),
|
||
VAR ___x = "is VBP:"& CONCATENATEX(VALUES(Dim_BrandMKT[VBP]),[VBP],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_PackInfo[VBP_BATCH]),
|
||
VAR ___x = "VBP Batch:"& CONCATENATEX(VALUES(Dim_PackInfo[VBP_BATCH]),[VBP_BATCH],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG]) && "Default" IN VALUES(Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG]),
|
||
VAR ___x = "Potential MKT Flag:Default
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(VAR MKT =
|
||
CALCULATETABLE ( VALUES ( Dim_Market[MARKET] ) )
|
||
RETURN
|
||
IF (
|
||
ISFILTERED ( Dim_Market[MARKET] )
|
||
&& (
|
||
ISFILTERED ( Dim_HP_Potential_AIA[DECILE] )
|
||
|| ISFILTERED ( Dim_HP_Potential_AIA[DECILE_GROUP] )
|
||
|| (
|
||
NOT (
|
||
ISEMPTY (
|
||
INTERSECT ( { 0, 1}, VALUES ('AIA.Fields_Decile'[AIA.Fields_Decile 个订单] ) )
|
||
)
|
||
)
|
||
&& (
|
||
CALCULATE (
|
||
HASONEVALUE ( Dim_HP_Potential_AIA[POTENTIAL_MKT_NAME] ),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] <> BLANK () ),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] <> "" ),
|
||
KEEPFILTERS (
|
||
TREATAS ( VALUES ( Dim_Market[MARKET] ), 'Dim_HP_Potential_AIA'[MARKET] )
|
||
)
|
||
)
|
||
|| (
|
||
HASONEVALUE ( Dim_Market[MARKET] )
|
||
&& SELECTEDVALUE ( Dim_HP_Potential_AIA[IS_DEFAULT_MKT_FLAG] ) = "Default"
|
||
)
|
||
)
|
||
)
|
||
) //只选择一个potential时才显示字符串
|
||
,
|
||
VAR PMKT =
|
||
CALCULATETABLE (
|
||
VALUES ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] ),
|
||
KEEPFILTERS (
|
||
TREATAS ( VALUES ( Dim_Market[MARKET] ), 'Dim_HP_Potential_AIA'[MARKET] )
|
||
),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] <> BLANK () )
|
||
)
|
||
VAR PT =
|
||
CALCULATETABLE (
|
||
VALUES ( 'Dim_HP_Potential_AIA'[POTENTIAL_TYPE_NAME] ),
|
||
KEEPFILTERS ( TREATAS ( PMKT, 'Dim_HP_Potential_AIA'[POTENTIAL_MKT_NAME] ) ),
|
||
KEEPFILTERS ( 'Dim_HP_Potential_AIA'[POTENTIAL_TYPE_NAME] <> BLANK () )
|
||
)
|
||
VAR ___x =
|
||
"潜力市场:" & CONCATENATEX ( PMKT, [POTENTIAL_MKT_NAME], "," )
|
||
& UNICHAR ( 10 ) & "潜力单位:"
|
||
& CONCATENATEX ( PT, [POTENTIAL_TYPE_NAME], "," ) &"
|
||
"
|
||
RETURN
|
||
___x
|
||
|
||
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[DECILE]),
|
||
VAR ___x = "Decile:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[DECILE]),[DECILE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED(Dim_HP_Potential_AIA[DECILE_GROUP]),
|
||
VAR ___x = "Decile Group:"& CONCATENATEX(VALUES(Dim_HP_Potential_AIA[DECILE_GROUP]),[DECILE_GROUP],",") &"
|
||
"
|
||
RETURN ___x
|
||
),4)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[bu_name_en]),
|
||
VAR ___x = "BU: "& CONCATENATEX(VALUES('Dim_Org'[bu_name_en]),[bu_name_en],",") &"
|
||
"
|
||
RETURN ___x
|
||
),17)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[RC_CODE_DESC]),
|
||
VAR ___x = "RC:"& CONCATENATEX(VALUES('Dim_Org'[RC_CODE_DESC]),[RC_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),17)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[REGION_CODE_DESC]),
|
||
VAR ___x = "Region:"& CONCATENATEX(VALUES('Dim_Org'[REGION_CODE_DESC]),[REGION_CODE_DESC],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Org'[Team]),
|
||
VAR ___x = "Team: "& CONCATENATEX(VALUES('Dim_Org'[Team]),[Team],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_NAME]),
|
||
VAR ___x = "机构: "& CONCATENATEX(VALUES('Dim_Institution'[INST_NAME]),[INST_NAME],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_CODE]),
|
||
VAR ___x = "机构编码: "& CONCATENATEX(VALUES('Dim_Institution'[INST_CODE]),[INST_CODE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INST_SUB_TYPE]),
|
||
VAR ___x = "机构子类型: "& CONCATENATEX(VALUES('Dim_Institution'[INST_SUB_TYPE]),[INST_SUB_TYPE],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Institution'[INS_LEVEL]),
|
||
VAR ___x = "机构等级: "& CONCATENATEX(VALUES('Dim_Institution'[INS_LEVEL]),[INS_LEVEL],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[IS_TARGET_HP]),
|
||
VAR ___x = "目标机构: "& CONCATENATEX(VALUES('Dim_RC'[IS_TARGET_HP]),[IS_TARGET_HP],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[KA_FLAG]),
|
||
VAR ___x = "KA:"& CONCATENATEX(VALUES('Dim_RC'[KA_FLAG]),[KA_FLAG],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_HP_Potential_AIA'[TARGET_INS_LEVEL]),
|
||
VAR ___x = "目标机构等级: "& CONCATENATEX(VALUES('Dim_HP_Potential_AIA'[TARGET_INS_LEVEL]),[TARGET_INS_LEVEL],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[SUB_CHANNEL]),
|
||
VAR ___x = "SubChannel: "& CONCATENATEX(VALUES('Dim_RC'[SUB_CHANNEL]),[SUB_CHANNEL],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_RC'[DRAGON_FLAG]),
|
||
VAR ___x = "Dragon: "& CONCATENATEX(VALUES('Dim_RC'[DRAGON_FLAG]),[DRAGON_FLAG],",") &"
|
||
"
|
||
RETURN ___x
|
||
),18)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[PROVINCE_C]),
|
||
VAR ___x = "Province:"& CONCATENATEX(VALUES('Dim_Geo'[PROVINCE_C]),[PROVINCE_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),12)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[CITY_C]),
|
||
VAR ___x = "City:"& CONCATENATEX(VALUES('Dim_Geo'[CITY_C]),[CITY_C],",") &"
|
||
"
|
||
RETURN ___x
|
||
),13)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[AZ_CITY_TIER]),
|
||
VAR ___x = "CityTier:"& CONCATENATEX(VALUES('Dim_Geo'[AZ_CITY_TIER]),[AZ_CITY_TIER],",") &"
|
||
"
|
||
RETURN ___x
|
||
),14)
|
||
,(IF (
|
||
ISFILTERED('Dim_Geo'[PMT_REGION]),
|
||
VAR ___x = "PMT: "& CONCATENATEX(VALUES('Dim_Geo'[PMT_REGION]),[PMT_REGION],",") &"
|
||
"
|
||
RETURN ___x
|
||
),12)
|
||
}
|
||
RETURN CONCATENATEX( t_ , [Value1] , "" )
|
||
```
|
||
displayFolder: 03.Others
|
||
lineageTag: 74532bec-762a-412f-b74c-4a5231b639d3
|
||
|
||
annotation PBI_FormatHint = {"isGeneralNumber":true}
|
||
|
||
partition 'AIA.Measures' = m
|
||
mode: import
|
||
queryGroup: OLD
|
||
source =
|
||
let
|
||
源 = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i44FAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"列 1" = _t]),
|
||
更改的类型 = Table.TransformColumnTypes(源,{{"列 1", type text}}),
|
||
删除的列 = Table.RemoveColumns(更改的类型,{"列 1"})
|
||
in
|
||
删除的列
|
||
|
||
annotation PBI_ResultType = Table
|
||
|
||
annotation TabularEditor_TableGroup = 01_ParameterField
|
||
|