This commit is contained in:
2026-04-15 18:51:38 +08:00
parent f1903bf7bb
commit 4cf968ce5d
27 changed files with 891 additions and 792 deletions

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -60,6 +60,66 @@
"nativeQueryRef": "Market", "nativeQueryRef": "Market",
"displayName": "Market" "displayName": "Market"
}, },
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_KeyCompetitor"
}
},
"Property": "KEY_COMPETITOR"
}
},
"queryRef": "Dim_KeyCompetitor.KEY_COMPETITOR",
"nativeQueryRef": "Key Brand",
"displayName": "Key Brand"
},
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Org"
}
},
"Property": "rc_name_en"
}
},
"queryRef": "Dim_Org.rc_name_en",
"nativeQueryRef": "RC",
"displayName": "RC"
},
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Org"
}
},
"Property": "RC_NAME"
}
},
"queryRef": "Dim_Org.RC_NAME",
"nativeQueryRef": "RSD Name",
"displayName": "RSD Name"
},
{
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Org"
}
},
"Property": "rsd_kcode"
}
},
"queryRef": "Dim_Org.rsd_kcode",
"nativeQueryRef": "RSD KCODE",
"displayName": "RSD KCODE"
},
{ {
"field": { "field": {
"Measure": { "Measure": {
@@ -74,21 +134,6 @@
"queryRef": "Measure.External.Sales.KPI", "queryRef": "Measure.External.Sales.KPI",
"nativeQueryRef": "External.Sales.KPI", "nativeQueryRef": "External.Sales.KPI",
"displayName": "Sales" "displayName": "Sales"
},
{
"field": {
"Measure": {
"Expression": {
"SourceRef": {
"Entity": "Measure"
}
},
"Property": "External.Sales.KPI.Market"
}
},
"queryRef": "Measure.External.Sales.KPI.Market",
"nativeQueryRef": "Market Size",
"displayName": "Market Size"
} }
], ],
"fieldParameters": [ "fieldParameters": [
@@ -104,7 +149,7 @@
} }
}, },
"index": 0, "index": 0,
"length": 3 "length": 7
}, },
{ {
"parameterExpr": { "parameterExpr": {
@@ -118,7 +163,7 @@
} }
}, },
"index": 1, "index": 1,
"length": 2, "length": 1,
"sortDirection": "Descending" "sortDirection": "Descending"
} }
] ]
@@ -3035,8 +3080,7 @@
"Property": "rc_name_en" "Property": "rc_name_en"
} }
}, },
"type": "Categorical", "type": "Categorical"
"howCreated": "User"
}, },
{ {
"name": "384b97042614741ab0a0", "name": "384b97042614741ab0a0",
@@ -3067,8 +3111,7 @@
"Property": "RC_NAME" "Property": "RC_NAME"
} }
}, },
"type": "Categorical", "type": "Categorical"
"howCreated": "User"
}, },
{ {
"name": "e36644f5136c805c8566", "name": "e36644f5136c805c8566",
@@ -3163,7 +3206,8 @@
"Property": "External.Sales.KPI.Market" "Property": "External.Sales.KPI.Market"
} }
}, },
"type": "Advanced" "type": "Advanced",
"howCreated": "User"
}, },
{ {
"name": "25cd60310c6749d1dc01", "name": "25cd60310c6749d1dc01",

View File

@@ -110,7 +110,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'M PDOT'" "Value": "'PDOT'"
} }
} }
] ]

View File

@@ -1,5 +1,5 @@
{ {
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.6.0/schema.json", "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.7.0/schema.json",
"name": "8f5073a45ae26a934c25", "name": "8f5073a45ae26a934c25",
"position": { "position": {
"x": 267.5, "x": 267.5,
@@ -190,18 +190,6 @@
"Value": "'''Measure''[External.Sales.KPI]'" "Value": "'''Measure''[External.Sales.KPI]'"
} }
} }
],
[
{
"Literal": {
"Value": "'Sales'"
}
},
{
"Literal": {
"Value": "'''Measure''[External.Sales.KPI.Market]'"
}
}
] ]
] ]
} }
@@ -251,26 +239,6 @@
} }
] ]
} }
],
[
{
"0": [
{
"Literal": {
"Value": "'Sales'"
}
}
]
},
{
"1": [
{
"Literal": {
"Value": "'''Measure''[External.Sales.KPI.Market]'"
}
}
]
}
] ]
], ],
"columns": [ "columns": [
@@ -304,10 +272,6 @@
{ {
"0": "Sales", "0": "Sales",
"1": "Sales" "1": "Sales"
},
{
"0": "Sales",
"1": "Market Size"
} }
] ]
} }

View File

@@ -251,6 +251,54 @@
"Value": "'''Dim_Market''[MARKET]'" "Value": "'''Dim_Market''[MARKET]'"
} }
} }
],
[
{
"Literal": {
"Value": "'Market & Product'"
}
},
{
"Literal": {
"Value": "'''Dim_KeyCompetitor''[KEY_COMPETITOR]'"
}
}
],
[
{
"Literal": {
"Value": "'Organization'"
}
},
{
"Literal": {
"Value": "'''Dim_Org''[rc_name_en]'"
}
}
],
[
{
"Literal": {
"Value": "'Organization'"
}
},
{
"Literal": {
"Value": "'''Dim_Org''[RC_NAME]'"
}
}
],
[
{
"Literal": {
"Value": "'Organization'"
}
},
{
"Literal": {
"Value": "'''Dim_Org''[rsd_kcode]'"
}
}
] ]
] ]
} }
@@ -340,6 +388,86 @@
} }
] ]
} }
],
[
{
"0": [
{
"Literal": {
"Value": "'Market & Product'"
}
}
]
},
{
"1": [
{
"Literal": {
"Value": "'''Dim_KeyCompetitor''[KEY_COMPETITOR]'"
}
}
]
}
],
[
{
"0": [
{
"Literal": {
"Value": "'Organization'"
}
}
]
},
{
"1": [
{
"Literal": {
"Value": "'''Dim_Org''[rc_name_en]'"
}
}
]
}
],
[
{
"0": [
{
"Literal": {
"Value": "'Organization'"
}
}
]
},
{
"1": [
{
"Literal": {
"Value": "'''Dim_Org''[RC_NAME]'"
}
}
]
}
],
[
{
"0": [
{
"Literal": {
"Value": "'Organization'"
}
}
]
},
{
"1": [
{
"Literal": {
"Value": "'''Dim_Org''[rsd_kcode]'"
}
}
]
}
] ]
], ],
"columns": [ "columns": [
@@ -381,6 +509,22 @@
{ {
"0": "Market & Product", "0": "Market & Product",
"1": "Market" "1": "Market"
},
{
"0": "Market & Product",
"1": "Key Brand"
},
{
"0": "Organization",
"1": "RC"
},
{
"0": "Organization",
"1": "RSD Name"
},
{
"0": "Organization",
"1": "RSD KCODE"
} }
] ]
} }

View File

@@ -1,5 +1,5 @@
{ {
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.6.0/schema.json", "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.7.0/schema.json",
"name": "c1e6daad5ad813ce6bc3", "name": "c1e6daad5ad813ce6bc3",
"position": { "position": {
"x": 0, "x": 0,
@@ -23,11 +23,11 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
}, },
"queryRef": "Dim_Calendar.YYYYMM_EXTERNAL", "queryRef": "Dim_Calendar.YYYYMM_MERGED_DATA",
"nativeQueryRef": "YYYYMM_EXTERNAL" "nativeQueryRef": "YYYYMM_MERGED_DATA"
} }
] ]
} }
@@ -80,7 +80,7 @@
"Source": "d" "Source": "d"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
], ],
@@ -105,7 +105,7 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
], ],
@@ -132,7 +132,7 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
} }
@@ -284,8 +284,7 @@
"filterConfig": { "filterConfig": {
"filters": [ "filters": [
{ {
"name": "6f3d9cd8c20c1c591b4a", "name": "d0dc195ea90cddea5bda",
"ordinal": 0,
"field": { "field": {
"Column": { "Column": {
"Expression": { "Expression": {
@@ -293,76 +292,7 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YEAR_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
}
},
"type": "Categorical",
"filter": {
"Version": 2,
"From": [
{
"Name": "d",
"Entity": "Dim_Calendar",
"Type": 0
}
],
"Where": [
{
"Condition": {
"In": {
"Expressions": [
{
"Column": {
"Expression": {
"SourceRef": {
"Source": "d"
}
},
"Property": "YEAR_EXTERNAL"
}
}
],
"Values": [
[
{
"Literal": {
"Value": "'R'"
}
}
],
[
{
"Literal": {
"Value": "'2024'"
}
}
]
]
}
}
}
]
},
"howCreated": "User",
"objects": {
"general": [
{
"properties": {}
}
]
}
},
{
"name": "b44bc8750c3d5a527439",
"ordinal": 1,
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Calendar"
}
},
"Property": "YYYYMM_EXTERNAL"
} }
}, },
"type": "Categorical", "type": "Categorical",
@@ -389,7 +319,7 @@
"Source": "d" "Source": "d"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
], ],
@@ -397,7 +327,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'202512'" "Value": "null"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -1,5 +1,5 @@
{ {
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.6.0/schema.json", "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/visualContainer/2.7.0/schema.json",
"name": "1ca69827e71b623cc350", "name": "1ca69827e71b623cc350",
"position": { "position": {
"x": 0, "x": 0,
@@ -23,11 +23,11 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
}, },
"queryRef": "Dim_Calendar.YYYYMM_EXTERNAL", "queryRef": "Dim_Calendar.YYYYMM_MERGED_DATA",
"nativeQueryRef": "YYYYMM_EXTERNAL" "nativeQueryRef": "YYYYMM_MERGED_DATA"
} }
] ]
} }
@@ -80,7 +80,7 @@
"Source": "d" "Source": "d"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
], ],
@@ -105,7 +105,7 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
], ],
@@ -132,7 +132,7 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
} }
@@ -284,8 +284,7 @@
"filterConfig": { "filterConfig": {
"filters": [ "filters": [
{ {
"name": "6f3d9cd8c20c1c591b4a", "name": "d0dc195ea90cddea5bda",
"ordinal": 0,
"field": { "field": {
"Column": { "Column": {
"Expression": { "Expression": {
@@ -293,76 +292,7 @@
"Entity": "Dim_Calendar" "Entity": "Dim_Calendar"
} }
}, },
"Property": "YEAR_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
}
},
"type": "Categorical",
"filter": {
"Version": 2,
"From": [
{
"Name": "d",
"Entity": "Dim_Calendar",
"Type": 0
}
],
"Where": [
{
"Condition": {
"In": {
"Expressions": [
{
"Column": {
"Expression": {
"SourceRef": {
"Source": "d"
}
},
"Property": "YEAR_EXTERNAL"
}
}
],
"Values": [
[
{
"Literal": {
"Value": "'R'"
}
}
],
[
{
"Literal": {
"Value": "'2024'"
}
}
]
]
}
}
}
]
},
"howCreated": "User",
"objects": {
"general": [
{
"properties": {}
}
]
}
},
{
"name": "b44bc8750c3d5a527439",
"ordinal": 1,
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Calendar"
}
},
"Property": "YYYYMM_EXTERNAL"
} }
}, },
"type": "Categorical", "type": "Categorical",
@@ -389,7 +319,7 @@
"Source": "d" "Source": "d"
} }
}, },
"Property": "YYYYMM_EXTERNAL" "Property": "YYYYMM_MERGED_DATA"
} }
} }
], ],
@@ -397,42 +327,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'202508'" "Value": "null"
}
}
],
[
{
"Literal": {
"Value": "'202509'"
}
}
],
[
{
"Literal": {
"Value": "'202510'"
}
}
],
[
{
"Literal": {
"Value": "'202511'"
}
}
],
[
{
"Literal": {
"Value": "'202512'"
}
}
],
[
{
"Literal": {
"Value": "'202507'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -225,24 +225,24 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'Market & Product'" "Value": "'Organization'"
} }
}, },
{ {
"Literal": { "Literal": {
"Value": "'''Dim_PackInfo''[PROD_DES_C]'" "Value": "'''Dim_Org''[rc_name_en]'"
} }
} }
], ],
[ [
{ {
"Literal": { "Literal": {
"Value": "'Market & Product'" "Value": "'Organization'"
} }
}, },
{ {
"Literal": { "Literal": {
"Value": "'''Dim_PackInfo''[PACK_COD]'" "Value": "'''Dim_Org''[RC_NAME]'"
} }
} }
] ]
@@ -340,7 +340,7 @@
"0": [ "0": [
{ {
"Literal": { "Literal": {
"Value": "'Market & Product'" "Value": "'Organization'"
} }
} }
] ]
@@ -349,7 +349,7 @@
"1": [ "1": [
{ {
"Literal": { "Literal": {
"Value": "'''Dim_PackInfo''[PROD_DES_C]'" "Value": "'''Dim_Org''[rc_name_en]'"
} }
} }
] ]
@@ -360,7 +360,7 @@
"0": [ "0": [
{ {
"Literal": { "Literal": {
"Value": "'Market & Product'" "Value": "'Organization'"
} }
} }
] ]
@@ -369,7 +369,7 @@
"1": [ "1": [
{ {
"Literal": { "Literal": {
"Value": "'''Dim_PackInfo''[PACK_COD]'" "Value": "'''Dim_Org''[RC_NAME]'"
} }
} }
] ]
@@ -417,12 +417,12 @@
"1": "Market" "1": "Market"
}, },
{ {
"0": "Market & Product", "0": "Organization",
"1": "Brand CN" "1": "RC"
}, },
{ {
"0": "Market & Product", "0": "Organization",
"1": "Package Code" "1": "RSD Name"
} }
] ]
} }

View File

@@ -105,7 +105,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'R'" "Value": "'202601'"
} }
} }
] ]
@@ -133,7 +133,7 @@
"0": [ "0": [
{ {
"Literal": { "Literal": {
"Value": "'R'" "Value": "'202601'"
} }
} }
] ]
@@ -157,7 +157,7 @@
}, },
"valueMap": [ "valueMap": [
{ {
"0": "R" "0": "202601"
} }
] ]
} }

View File

@@ -202,18 +202,6 @@
"Value": "'''Measure''[External.Sales.KPI.Market]'" "Value": "'''Measure''[External.Sales.KPI.Market]'"
} }
} }
],
[
{
"Literal": {
"Value": "'Growth'"
}
},
{
"Literal": {
"Value": "'''Measure''[External.Gr%.KPI]'"
}
}
] ]
] ]
} }
@@ -283,26 +271,6 @@
} }
] ]
} }
],
[
{
"0": [
{
"Literal": {
"Value": "'Growth'"
}
}
]
},
{
"1": [
{
"Literal": {
"Value": "'''Measure''[External.Gr%.KPI]'"
}
}
]
}
] ]
], ],
"columns": [ "columns": [
@@ -340,10 +308,6 @@
{ {
"0": "Sales", "0": "Sales",
"1": "Market Size" "1": "Market Size"
},
{
"0": "Growth",
"1": "GR%"
} }
] ]
} }

View File

@@ -65,30 +65,30 @@
"Column": { "Column": {
"Expression": { "Expression": {
"SourceRef": { "SourceRef": {
"Entity": "Dim_PackInfo" "Entity": "Dim_Org"
} }
}, },
"Property": "PROD_DES_C" "Property": "rc_name_en"
} }
}, },
"queryRef": "Dim_PackInfo.PROD_DES_C", "queryRef": "Dim_Org.rc_name_en",
"nativeQueryRef": "Brand CN", "nativeQueryRef": "RC",
"displayName": "Brand CN" "displayName": "RC"
}, },
{ {
"field": { "field": {
"Column": { "Column": {
"Expression": { "Expression": {
"SourceRef": { "SourceRef": {
"Entity": "Dim_PackInfo" "Entity": "Dim_Org"
} }
}, },
"Property": "PACK_COD" "Property": "RC_NAME"
} }
}, },
"queryRef": "Dim_PackInfo.PACK_COD", "queryRef": "Dim_Org.RC_NAME",
"nativeQueryRef": "Package Code", "nativeQueryRef": "RSD Name",
"displayName": "Package Code" "displayName": "RSD Name"
}, },
{ {
"field": { "field": {
@@ -119,21 +119,6 @@
"queryRef": "Measure.External.Sales.KPI.Market", "queryRef": "Measure.External.Sales.KPI.Market",
"nativeQueryRef": "Market Size", "nativeQueryRef": "Market Size",
"displayName": "Market Size" "displayName": "Market Size"
},
{
"field": {
"Measure": {
"Expression": {
"SourceRef": {
"Entity": "Measure"
}
},
"Property": "External.Gr%.KPI"
}
},
"queryRef": "Measure.External.Gr%.KPI",
"nativeQueryRef": "GR%",
"displayName": "GR%"
} }
], ],
"fieldParameters": [ "fieldParameters": [
@@ -149,7 +134,7 @@
} }
}, },
"index": 1, "index": 1,
"length": 3 "length": 2
}, },
{ {
"parameterExpr": { "parameterExpr": {
@@ -5956,7 +5941,8 @@
"Property": "PROD_DES_C" "Property": "PROD_DES_C"
} }
}, },
"type": "Advanced" "type": "Advanced",
"howCreated": "User"
}, },
{ {
"name": "Filterbbdf344948810dcead93", "name": "Filterbbdf344948810dcead93",
@@ -5971,7 +5957,8 @@
"Property": "External.Gr%.KPI" "Property": "External.Gr%.KPI"
} }
}, },
"type": "Advanced" "type": "Advanced",
"howCreated": "User"
}, },
{ {
"name": "Filtercb4486f283dd76850900", "name": "Filtercb4486f283dd76850900",
@@ -6049,7 +6036,8 @@
"Property": "PACK_COD" "Property": "PACK_COD"
} }
}, },
"type": "Categorical" "type": "Categorical",
"howCreated": "User"
}, },
{ {
"name": "5eb96d5460100c235c96", "name": "5eb96d5460100c235c96",
@@ -6158,6 +6146,34 @@
} }
}, },
"type": "Advanced" "type": "Advanced"
},
{
"name": "a968e9fd548936aa1bd0",
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Org"
}
},
"Property": "rc_name_en"
}
},
"type": "Categorical"
},
{
"name": "f1b5cb345c500becc6b9",
"field": {
"Column": {
"Expression": {
"SourceRef": {
"Entity": "Dim_Org"
}
},
"Property": "RC_NAME"
}
},
"type": "Categorical"
} }
], ],
"filterSortOrder": "Custom" "filterSortOrder": "Custom"

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -67,7 +67,7 @@
[ [
{ {
"Literal": { "Literal": {
"Value": "'MTH'" "Value": "'YTD'"
} }
} }
] ]

View File

@@ -41403,16 +41403,6 @@ cultureInfo zh-CN
"State": "Generated", "State": "Generated",
"Weight": 0.99 "Weight": 0.99
} }
},
{
"Brand": {
"State": "Suggested",
"Source": {
"Type": "External",
"Agent": "PowerBI.VisualColumnRename"
},
"Weight": 0.9
}
} }
] ]
}, },
@@ -41729,6 +41719,16 @@ cultureInfo zh-CN
"State": "Generated", "State": "Generated",
"Weight": 0.99 "Weight": 0.99
} }
},
{
"Key Brand": {
"State": "Suggested",
"Source": {
"Type": "External",
"Agent": "PowerBI.VisualColumnRename"
},
"Weight": 0.9
}
} }
] ]
}, },

View File

@@ -1010,7 +1010,9 @@ table 00_KPI
RETURN RETURN
SWITCH ( SWITCH (
TRUE ( ) TRUE ( )
, ISFILTERED ( Dim_Org ) && NOT ISFILTERED ( Dim_Market ) ,
//若选择Molecule,选择地理,且市场是品牌报告里面的市场
ISFILTERED ( Dim_Org ) && NOT ISFILTERED ( Dim_Market )
&& NOT ISFILTERED ( Dim_BrandDefaultMKT ), --BLANK(), && NOT ISFILTERED ( Dim_BrandDefaultMKT ), --BLANK(),
IF ( [Fix_Is_AIA.MID.MID], [External.Sales.LY.MTH] ) IF ( [Fix_Is_AIA.MID.MID], [External.Sales.LY.MTH] )
, ISFILTERED ( Dim_IsTarget_AIASpecial ) , ISFILTERED ( Dim_IsTarget_AIASpecial )
@@ -1025,20 +1027,15 @@ table 00_KPI
&& NOT ISFILTERED ( Dim_BrandDefaultMKT ), && NOT ISFILTERED ( Dim_BrandDefaultMKT ),
BLANK ( ) BLANK ( )
, ,
// 隐藏HTN Market 和 Respules Market // 隐藏HTN Market 和 Respules Market
OR ( DS = "Retail", MGDS = "dtp" ) OR ( DS = "Retail", MGDS = "dtp" )
&& ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) ) && ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) )
&& MKT_FLAG = 2, && MKT_FLAG = 2,
BLANK ( ) BLANK ( )
, DS = "Retail" && MKT_FLAG = 0 , DS = "Retail" && MKT_FLAG = 0 && province_flag
&& province_flag
&& OR ( period_flag, AND ( NOT period_flag, NOT mm_flag ) ), && OR ( period_flag, AND ( NOT period_flag, NOT mm_flag ) ),
BLANK ( ) BLANK ( )
, , OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) && MKT_FLAG = 1
//若选择地理,且省份维度不是全国
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) && MKT_FLAG = 1
&& NOT SELECTEDVALUE ( Dim_Market[MARKET] ) = "egfr tki market" && NOT SELECTEDVALUE ( Dim_Market[MARKET] ) = "egfr tki market"
&& NOT ISFILTERED ( Dim_PackInfo[PROD_COD] ) && NOT ISFILTERED ( Dim_PackInfo[PROD_COD] )
&& NOT ISFILTERED ( Dim_PackInfo[PROD_DES_C] ) && NOT ISFILTERED ( Dim_PackInfo[PROD_DES_C] )
@@ -1073,8 +1070,17 @@ table 00_KPI
&& ( ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ) ) && ( ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ) )
&& PROD_FLAG = 0, && PROD_FLAG = 0,
BLANK ( ) BLANK ( )
, MGDS = "dtp" && province_flag,
CALCULATE (
[External.Sales.LY.MTH],
KEEPFILTERS (
Dim_GeoKey[AUDIT_SOURCE] <> "ROCDTP(Quarterly)"
)
, KEEPFILTERS (
Dim_GeoKey[AUDIT_SOURCE] <> "ROCIQVIA-CHPA(Monthly)"
)
)
, ,
--若不选pack用于计算class相关KPI --若不选pack用于计算class相关KPI
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" )
&& ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) ) && ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) )
@@ -1088,8 +1094,7 @@ table 00_KPI
, ,
//若选择Molecule,没选择地理 //若选择Molecule,没选择地理
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) DS IN { "Retail", "EC", "DTP" } && NOT ISFILTERED ( Dim_Geo )
&& NOT ISFILTERED ( Dim_Geo )
&& NOT ISFILTERED ( Dim_Org ) && NOT ISFILTERED ( Dim_Org )
&& NOT ISFILTERED ( Dim_PackInfo[PROD_COD] ) && NOT ISFILTERED ( Dim_PackInfo[PROD_COD] )
&& NOT ISFILTERED ( Dim_PackInfo[PROD_DES_C] ) && NOT ISFILTERED ( Dim_PackInfo[PROD_DES_C] )
@@ -1125,12 +1130,8 @@ table 00_KPI
|| ISFILTERED ( Dim_PackInfo[CMPS_COD] ) || ISFILTERED ( Dim_PackInfo[CMPS_COD] )
|| ISFILTERED ( Dim_PackInfo[CMPS_DES] ) || ISFILTERED ( Dim_PackInfo[CMPS_DES] )
|| ISFILTERED ( Dim_PackInfo[CMPS_DES_C] ) ), || ISFILTERED ( Dim_PackInfo[CMPS_DES_C] ) ),
CALCULATE ( CALCULATE ( [External.Sales.LY.MTH], Fact_Sales[CMPS_FLAG] = 1 )
[External.Sales.LY.MTH],
Fact_Sales[CMPS_FLAG] = 1
)
, ,
//若选择BRAND,没有选择地理 //若选择BRAND,没有选择地理
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" )
&& NOT ISFILTERED ( Dim_Geo ) && NOT ISFILTERED ( Dim_Geo )
@@ -1159,14 +1160,11 @@ table 00_KPI
|| ISFILTERED ( Dim_PackInfo[PROD_CORP_C] ) || ISFILTERED ( Dim_PackInfo[PROD_CORP_C] )
|| ISFILTERED ( Dim_PackInfo[PROD_DES] ) || ISFILTERED ( Dim_PackInfo[PROD_DES] )
|| ISFILTERED ( Dim_PackInfo[PROD_DES_C] ) ), || ISFILTERED ( Dim_PackInfo[PROD_DES_C] ) ),
CALCULATE ( CALCULATE ( [External.Sales.LY.MTH], Fact_Sales[GEO_FLAG] = 1 )
[External.Sales.LY.MTH],
Fact_Sales[GEO_FLAG] = 1
)
, ,
//若选择PACKAGE,不选择地理维度1表示pack+省份数据2表示pack+全国的数据 //若选择PACKAGE,不选择地理维度1表示pack+省份数据2表示pack+全国的数据
DS IN { "Retail", "EC", "DTP" } && NOT ISFILTERED ( Dim_Org ) OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" )
&& NOT ISFILTERED ( Dim_Org )
&& NOT ISFILTERED ( Dim_Geo ) && NOT ISFILTERED ( Dim_Geo )
&& ( ISFILTERED ( Dim_PackInfo[PACK_DES] ) && ( ISFILTERED ( Dim_PackInfo[PACK_DES] )
|| ISFILTERED ( Dim_PackInfo[PACK_LCH] ) || ISFILTERED ( Dim_PackInfo[PACK_LCH] )
@@ -1178,7 +1176,6 @@ table 00_KPI
) )
, ,
//若选择PACKAGE,且省份维度不是全国 //若选择PACKAGE,且省份维度不是全国
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" )
&& ( ISFILTERED ( Dim_PackInfo[PACK_DES] ) && ( ISFILTERED ( Dim_PackInfo[PACK_DES] )
@@ -1187,42 +1184,20 @@ table 00_KPI
|| ISFILTERED ( Dim_PackInfo[PROD_PACK_CORP] ) ), || ISFILTERED ( Dim_PackInfo[PROD_PACK_CORP] ) ),
IF ( IF (
SELECTEDVALUE ( Dim_Market[MARKET] ) <> "EGFR TKI Market" SELECTEDVALUE ( Dim_Market[MARKET] ) <> "EGFR TKI Market"
, CALCULATE ( , CALCULATE ( [External.Sales.LY.MTH], Fact_Sales[PACK_FLAG] = 1 )
[External.Sales.LY.MTH], , CALCULATE ( [External.Sales.LY.MTH], Fact_Sales[GEO_FLAG] = 1 )
Fact_Sales[PACK_FLAG] = 1
)
, CALCULATE (
[External.Sales.LY.MTH],
Fact_Sales[GEO_FLAG] = 1
)
) )
, ,
//chap选择地理隐藏ROC //chap选择地理隐藏ROC
DS IN { "CHPA" } && ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) ), DS IN { "CHPA" } && province_flag,
CALCULATE ( CALCULATE (
[External.Sales.LY.MTH], [External.Sales.LY.MTH],
KEEPFILTERS ( KEEPFILTERS (
Fact_Sales[AUDIT_SOURCE] <> "ROCIQVIA-CHPA(Monthly)" Dim_GeoKey[AUDIT_SOURCE] <> "ROCIQVIA-CHPA(Monthly)"
) )
) )
, [External.Sales.LY.MTH] , [External.Sales.LY.MTH]
) )
/*---------------------------------KPI描述------------------------------------
------创建者zhouxin
------邮箱kmls393@astrazeneca.net
------KPI名字PDOT
------KPI公式1、若TA是ONCO且是Retail需要取DTP_FLAG为1的数据
2、若选择PACKAGE且外部渠道是Retail,不选择地理维度展示PACK_FLAG是1和2的数据(1pack+省份数据2pack+全国的数据);
3、若选择PACKAGE且外部渠道是Retail,且选择了具体的某个省份非全国展示PACK_FLAG是1的数据
4、若选择PROD且外部渠道是Retail,展示Prod_FLAG是1的数据
5、若选择地理维度且外部渠道是Retail,展示PACK_FLAG是1和2的数据
6、其余渠道取原来的PDOT kpi。
------备注1、DTP的数据不参与retail总计计算其余外部渠道数据默认是0
2、1pack+省份数据意思是提供的原始数据就是Pack+省份的数据2pack+全国的数据意思是提供的原始数据是pack+全国数据只是因为倒减在底表中显示的是pack+省份。
------创建时间2024.5.15
------修改时间2024.6.10
------修改内容添加Retail的特殊逻辑处理
----------------------------------------------------------------------------*/
displayFolder: Normal\05 displayFolder: Normal\05
lineageTag: 0726ecc2-0bf6-43de-a635-c0089856d494 lineageTag: 0726ecc2-0bf6-43de-a635-c0089856d494
@@ -1356,14 +1331,12 @@ table 00_KPI
&& NOT ISFILTERED ( Dim_BrandDefaultMKT ), && NOT ISFILTERED ( Dim_BrandDefaultMKT ),
BLANK ( ) BLANK ( )
, ,
// 隐藏HTN Market 和 Respules Market // 隐藏HTN Market 和 Respules Market
OR ( DS = "Retail", MGDS = "dtp" ) OR ( DS = "Retail", MGDS = "dtp" )
&& ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) ) && ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) )
&& MKT_FLAG = 2, && MKT_FLAG = 2,
BLANK ( ) BLANK ( )
, DS = "Retail" && MKT_FLAG = 0 , DS = "Retail" && MKT_FLAG = 0 && province_flag
&& province_flag
&& OR ( period_flag, AND ( NOT period_flag, NOT mm_flag ) ), && OR ( period_flag, AND ( NOT period_flag, NOT mm_flag ) ),
BLANK ( ) BLANK ( )
, OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) && MKT_FLAG = 1 , OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) && MKT_FLAG = 1
@@ -1401,8 +1374,17 @@ table 00_KPI
&& ( ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ) ) && ( ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ) )
&& PROD_FLAG = 0, && PROD_FLAG = 0,
BLANK ( ) BLANK ( )
, MGDS IN { "dtp", "chpa" } && province_flag,
CALCULATE (
[External.Sales.MTH]
, KEEPFILTERS (
Dim_GeoKey[AUDIT_SOURCE] <> "ROCDTP(Quarterly)"
)
, KEEPFILTERS (
Dim_GeoKey[AUDIT_SOURCE] <> "ROCIQVIA-CHPA(Monthly)"
)
)
, ,
--若不选pack用于计算class相关KPI --若不选pack用于计算class相关KPI
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" )
&& ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) ) && ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) )
@@ -1416,8 +1398,7 @@ table 00_KPI
, ,
//若选择Molecule,没选择地理 //若选择Molecule,没选择地理
OR ( DS IN { "Retail", "EC", "DTP" }, MGDS = "dtp" ) DS IN { "Retail", "EC", "DTP" } && NOT ISFILTERED ( Dim_Geo )
&& NOT ISFILTERED ( Dim_Geo )
&& NOT ISFILTERED ( Dim_Org ) && NOT ISFILTERED ( Dim_Org )
&& NOT ISFILTERED ( Dim_PackInfo[PROD_COD] ) && NOT ISFILTERED ( Dim_PackInfo[PROD_COD] )
&& NOT ISFILTERED ( Dim_PackInfo[PROD_DES_C] ) && NOT ISFILTERED ( Dim_PackInfo[PROD_DES_C] )
@@ -1512,11 +1493,11 @@ table 00_KPI
) )
, ,
//chap选择地理隐藏ROC //chap选择地理隐藏ROC
DS IN { "CHPA" } && ( ISFILTERED ( Dim_Geo ) || ISFILTERED ( Dim_Org ) ), DS IN { "CHPA" } && province_flag,
CALCULATE ( CALCULATE (
[External.Sales.MTH], [External.Sales.MTH],
KEEPFILTERS ( KEEPFILTERS (
Fact_Sales[AUDIT_SOURCE] <> "ROCIQVIA-CHPA(Monthly)" Dim_GeoKey[AUDIT_SOURCE] <> "ROCIQVIA-CHPA(Monthly)"
) )
) )
, [External.Sales.MTH] , [External.Sales.MTH]

View File

@@ -42,7 +42,7 @@ table Dim_Class
partition Dim_Class = m partition Dim_Class = m
mode: import mode: import
queryGroup: OLD\非首页 queryGroup: Dim
source = ``` source = ```
let let
Source = Source =
@@ -56,7 +56,8 @@ table Dim_Class
){ ){
[Name = CatalogName, Kind = "Database"] [Name = CatalogName, Kind = "Database"]
}[Data], }[Data],
"WITH class_sales AS ( "
WITH class_sales AS (
-- 第一步:聚合,得到每个 class 的总销售额 -- 第一步:聚合,得到每个 class 的总销售额
SELECT SELECT
class, class,
@@ -73,6 +74,7 @@ table Dim_Class
FROM class_sales FROM class_sales
) )
SELECT /*+ BROADCAST(R) */ SELECT /*+ BROADCAST(R) */
DISTINCT
L.MARKET, L.MARKET,
L.CLASS, L.CLASS,
L.DATASOURCE AS DATA_SOURCE, L.DATASOURCE AS DATA_SOURCE,

View File

@@ -17109,378 +17109,6 @@ table Measure
annotation PBI_FormatHint = {"isGeneralNumber":true} annotation PBI_FormatHint = {"isGeneralNumber":true}
measure 'External.ClassShare' =
//CALCULATE(
DIVIDE (
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
)
//,
//MQY[Period] = "QTD"
//)
displayFolder: OLD\ForAI
lineageTag: af4a9c37-76b7-4a7d-8cc8-13495041c5d5
measure 'External.ClassShare.FirstQ' =
CALCULATE(
DIVIDE(
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
),
MQY[Period] = "First_QTD"
)
displayFolder: OLD\ForAI
lineageTag: f73456ac-fce5-4055-aece-b09470827231
measure 'External.ClassShare.LastQ' =
CALCULATE(
DIVIDE(
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
),
MQY[Period] = "Previous_QTD"
)
displayFolder: OLD\ForAI
lineageTag: 08380c7a-37c9-468f-8114-d2b53c3d44ed
measure 'External.ClassShare.LHY' =
CALCULATE(
DIVIDE(
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
),
MQY[Period] = "Previous_HTD"
)
displayFolder: OLD\ForAI
lineageTag: f2b09f5d-2b44-4c7b-8b87-b781bd98c9a8
measure 'External.ClassShare.LY' =
//CALCULATE(
DIVIDE (
[External.Sales.LY.KPI.Class],
[External.Sales.LY.KPI.Market]
)
//,
// MQY[Period] = "QTD"
//)
displayFolder: OLD\ForAI
lineageTag: 47551bc8-9c8c-4a69-a91d-7742da405334
measure 'External.ClassShare.Δ.FQ.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.FirstQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: ad9ca2da-93c5-4c8a-9b52-bc121e804c9b
measure 'External.ClassShare.Δ.FQ.Value' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.FirstQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, FORMAT( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: c5853528-087a-4f55-888b-e577a60de923
measure 'External.ClassShare.Δ.LHY.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LHY]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: 99491f33-4643-4124-9184-4e50c582ca5f
measure 'External.ClassShare.Δ.LHY.Value' =
VAR _sumtable =
TOPN (
1,
ADDCOLUMNS (
CALCULATETABLE (
VALUES ( Dim_Class[CLASS] ),
TREATAS (
VALUES ( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED ( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE (
[External.ClassShare] - [External.ClassShare.LHY]
)
),
[@delatclass], DESC
)
RETURN
IF (
ISBLANK ( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ) ),
BLANK ( ),
CONCATENATEX ( _sumtable, FORMAT ( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: b2831f5c-cc56-423c-9cd1-f5da1ae9a4b4
measure 'External.ClassShare.Δ.LQ.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LastQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: 38b15b3b-ff5f-43d4-bd63-ad1f7dff43d2
measure 'External.ClassShare.Δ.LQ.Value' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LastQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, FORMAT( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: 3a1e7203-b613-46da-82f3-3528b9d4e119
measure 'External.ClassShare.Δ.LY.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LY]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: ba2be078-8cd2-4b25-a5bf-1fc5249d24c6
measure 'External.ClassShare.Δ.LY.Value' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( Dim_Market[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LY]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, FORMAT( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: f2aa6de8-a785-4f16-8951-9f6ed4eca8fa
measure 'ForAI.Top1.ShareInClass.Name' =
IF (
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX (
TOPN (
1,
ADDCOLUMNS (
CALCULATETABLE (
VALUES ( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS ( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI.Class]
),
[@v], DESC
),
Dim_PackInfo[PROD_DES_C]
)
)
displayFolder: OLD\ForAI
lineageTag: eaaa95e5-eb42-42f7-bbce-fa718bc12faa
measure 'ForAI.Top1.ShareInClass.Value' =
IF(
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX(
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI.Class],
"@result",[External.MS%.KPI.Class]
),
[@v], DESC
),
[@result]
)
)
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: 413b895e-77dd-4ab9-bdd0-ecaf463346f2
measure 'ForAI.Top1.ΔShareInClass.Value' =
IF(
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX(
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI.Class]
),
[@v], DESC
),
[@v]
)
)
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: ef44ef79-7921-416c-8ec0-a2d4ac11bf37
measure 'External.4.1.Text.Retail.NIAD.Text' = measure 'External.4.1.Text.Retail.NIAD.Text' =
VAR R = "NIAD市场月度明细仅Retail/EC" VAR R = "NIAD市场月度明细仅Retail/EC"
VAR EC = "NIAD市场月度明细仅Retail/EC" VAR EC = "NIAD市场月度明细仅Retail/EC"
@@ -17551,6 +17179,537 @@ table Measure
annotation PBI_FormatHint = {"isGeneralNumber":true} annotation PBI_FormatHint = {"isGeneralNumber":true}
measure 'ForAI.Top1.ΔShareInClass.Value' =
IF(
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX(
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI.Class]
),
[@v], DESC
),
[@v]
)
)
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: e8e65ec3-1b90-42a7-9288-f0076af6803f
measure 'ForAI.Top1.ΔMS%.Brand.Value' =
IF(
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX(
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI],
"@result",[External.MS%.KPI]
),
[@v], DESC
),
[@result]
)
)
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: 8e83e22b-47d4-4d7c-aa2b-d6ba63dd5123
measure 'ForAI.Top1.ΔMS%.Brand.Name' =
IF (
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX (
TOPN (
1,
ADDCOLUMNS (
CALCULATETABLE (
VALUES ( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS ( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI]
),
[@v], DESC
),
Dim_PackInfo[PROD_DES_C]
)
)
displayFolder: OLD\ForAI
lineageTag: 263e94e7-7dad-4db8-8345-a48916c081dc
measure 'ForAI.Top1.ShareInClass.Value' =
IF(
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX(
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI.Class],
"@result",[External.MS%.KPI.Class]
),
[@v], DESC
),
[@result]
)
)
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: 91b1a10d-4c36-433a-a28d-097eaf36b4b3
measure 'ForAI.Top1.ShareInClass.Name' =
IF (
AND (
ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ),
NOT ISBLANK ( [External.Sales.KPI] )
),
MAXX (
TOPN (
1,
ADDCOLUMNS (
CALCULATETABLE (
VALUES ( Dim_PackInfo[PROD_DES_C] ),
KEEPFILTERS ( Dim_PackInfo[CORP_COD] <> "a5z" )
),
"@v", [External.△MS%.KPI.Class]
),
[@v], DESC
),
Dim_PackInfo[PROD_DES_C]
)
)
displayFolder: OLD\ForAI
lineageTag: 85f35fbe-59ed-438c-8965-3d8be5e47345
measure 'ForAI.R3MvsLastR3M.ΔMS%' = ```
VAR _cm_ym = MAX ( Dim_Calendar[DATE] )
VAR _r3m_ym =
CALCULATE (
MAX ( Dim_Calendar[DATE] ),
DATEADD ( Dim_Calendar[DATE], -3, MONTH )
)
VAR _cm_value =
CALCULATE (
[External.MS%.KPI],
DATESINPERIOD ( Dim_Calendar[DATE], _cm_ym, -3, MONTH )
)
VAR _r3m_value =
CALCULATE (
[External.MS%.KPI],
DATESINPERIOD ( Dim_Calendar[DATE], _r3m_ym, -3, MONTH )
)
RETURN
_cm_value - _r3m_value
```
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: 64b0726d-b05e-4636-81f3-0199cabb7266
measure 'ForAI.R3MvsLastR3M.GR%' = ```
VAR _cm_ym = MAX ( Dim_Calendar[DATE] )
VAR _r3m_ym =
CALCULATE (
MAX ( Dim_Calendar[DATE] ),
DATEADD ( Dim_Calendar[DATE], -3, MONTH )
)
VAR _cm_value =
CALCULATE (
[External.Sales.KPI],
DATESINPERIOD ( Dim_Calendar[DATE], _cm_ym, -3, MONTH )
)
VAR _r3m_value =
CALCULATE (
[External.Sales.KPI],
DATESINPERIOD ( Dim_Calendar[DATE], _r3m_ym, -3, MONTH )
)
RETURN
DIVIDE ( _cm_value - _r3m_value, _r3m_value )
```
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: 9e1680d6-b515-41d2-bad3-db7709f3c981
measure 'ForAI.R3M.MS%' =
CALCULATE (
[External.MS%.KPI],
DATESINPERIOD (
Dim_Calendar[DATE],
MAX ( Dim_Calendar[DATE] ),
-3,
MONTH
)
)
formatString: #,##0.0 %
displayFolder: OLD\ForAI
lineageTag: efbd4c1e-eb14-46e7-bb94-b7d9b2d0f732
measure 'ForAI.MS%.Rank' =
VAR _brand =
RANK (
DENSE, CALCULATETABLE (
ALLSELECTED ( Dim_PackInfo[PROD_DES_C] )
),
ORDERBY ( [External.MS%.KPI], DESC ),
LAST
)
VAR _brand_en =
RANK (
DENSE, CALCULATETABLE (
ALLSELECTED ( Dim_PackInfo[PROD_DES] )
),
ORDERBY ( [External.MS%.KPI], DESC ),
LAST
)
VAR _geo =
RANK (
DENSE,
ALLSELECTED ( Dim_Geo[PROVINCE_C] ),
ORDERBY ( [External.MS%.KPI], DESC ),
LAST
)
VAR _inst =
RANK (
DENSE,
ALLSELECTED ( Dim_Institution[INST_NAME] ),
ORDERBY ( [External.MS%.KPI], DESC ),
LAST
)
RETURN
SWITCH (
TRUE ( ),
ISINSCOPE ( Dim_PackInfo[PROD_DES_C] ), _brand,
ISINSCOPE ( Dim_PackInfo[PROD_DES] ), _brand_en,
ISINSCOPE ( Dim_Geo[PROVINCE_C] ), _geo,
ISINSCOPE ( Dim_Institution[INST_NAME] ), _inst,
ISINSCOPE ( Dim_Institution[INST_CODE] ), _inst,
BLANK ( )
)
formatString: #,##0
displayFolder: OLD\ForAI
lineageTag: 887b315c-86d8-4a54-a3b7-090c8fe76ff9
measure 'External.ClassShare.Δ.LY.Value' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LY]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, FORMAT( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: 1af10f94-ddbf-45a8-8b79-a6d018ba8305
measure 'External.ClassShare.Δ.LY.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LY]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: fd57a855-6a2a-4c5d-93f8-b774ae62d8f5
measure 'External.ClassShare.Δ.LQ.Value' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LastQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, FORMAT( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: a9ac55de-0fa6-4a3a-ba26-ad91238c1fea
measure 'External.ClassShare.Δ.LQ.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LastQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: 0e83c3f9-1c82-42e2-ac70-458ea9b70cff
measure 'External.ClassShare.Δ.LHY.Value' =
VAR _sumtable =
TOPN (
1,
ADDCOLUMNS (
CALCULATETABLE (
VALUES ( Dim_Class[CLASS] ),
TREATAS (
VALUES ( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED ( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE (
[External.ClassShare] - [External.ClassShare.LHY]
)
),
[@delatclass], DESC
)
RETURN
IF (
ISBLANK ( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED ( Dim_Market ) || ISFILTERED ( Dim_BrandDefaultMKT ) ),
BLANK ( ),
CONCATENATEX ( _sumtable, FORMAT ( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: 67e26417-07fa-4136-aaca-868b932b6788
measure 'External.ClassShare.Δ.LHY.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.LHY]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: e2db3e60-0c3e-4da4-a565-0b832321d5da
measure 'External.ClassShare.Δ.FQ.Value' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.FirstQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, FORMAT( [@delatclass], "#0.0%" ), )
)
displayFolder: OLD\ForAI
lineageTag: bbb840db-b923-415d-937d-440a7101152d
measure 'External.ClassShare.Δ.FQ.Name' =
VAR _sumtable =
TOPN(
1,
ADDCOLUMNS(
CALCULATETABLE(
VALUES( Dim_Class[CLASS] ),
TREATAS(
VALUES( FACT_SALES[MARKET] ),
Dim_Class[MARKET]
),
ALLSELECTED( Dim_Class[CLASS] )
),
"@delatclass",
CALCULATE(
[External.ClassShare] - [External.ClassShare.FirstQ]
)
),
[@delatclass], DESC
)
RETURN
IF(
ISBLANK( [External.Sales.KPI.Market] )
|| NOT ( ISFILTERED( Dim_Market ) || ISFILTERED( Dim_BrandDefaultMKT ) ),
BLANK( ),
CONCATENATEX( _sumtable, Dim_Class[CLASS], )
)
displayFolder: OLD\ForAI
lineageTag: 84667098-e49c-4583-8147-073b8cd05ea4
measure 'External.ClassShare.LY' =
//CALCULATE(
DIVIDE (
[External.Sales.LY.KPI.Class],
[External.Sales.LY.KPI.Market]
)
//,
// MQY[Period] = "QTD"
//)
displayFolder: OLD\ForAI
lineageTag: c787db6f-8283-43d8-b584-9e794e050e3f
measure 'External.ClassShare.LHY' =
CALCULATE(
DIVIDE(
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
),
MQY[Period] = "Previous_HTD"
)
displayFolder: OLD\ForAI
lineageTag: a55de55f-077f-4804-88a6-5c1e5fae3a63
measure 'External.ClassShare.LastQ' =
CALCULATE(
DIVIDE(
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
),
MQY[Period] = "Previous_QTD"
)
displayFolder: OLD\ForAI
lineageTag: 307c81d9-53c9-47dd-98c2-84b13bd47aad
measure 'External.ClassShare.FirstQ' =
CALCULATE(
DIVIDE(
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
),
MQY[Period] = "First_QTD"
)
displayFolder: OLD\ForAI
lineageTag: 763fff03-1656-4ff9-b5ce-0172cc4869fa
measure 'External.ClassShare' =
//CALCULATE(
DIVIDE (
[External.Sales.KPI.Class],
[External.Sales.KPI.Market]
)
//,
//MQY[Period] = "QTD"
//)
displayFolder: OLD\ForAI
lineageTag: 542d74b2-82c6-4eb4-883a-1e9a81b1d103
column CreatedBy column CreatedBy
lineageTag: 74ce729e-edbc-46d1-8445-3279ab9bf147 lineageTag: 74ce729e-edbc-46d1-8445-3279ab9bf147
summarizeBy: none summarizeBy: none

View File

@@ -1680,7 +1680,7 @@
"ordinal": 5, "ordinal": 5,
"scrollPosition": { "scrollPosition": {
"x": 0, "x": 0,
"y": 55.200000762939453 "y": 55
}, },
"nodes": [ "nodes": [
{ {