1727 lines
54 KiB
Plaintext
1727 lines
54 KiB
Plaintext
|
{
|
||
|
"name": "SemanticModel",
|
||
|
"compatibilityLevel": 1400,
|
||
|
"model": {
|
||
|
"culture": "en-US",
|
||
|
"dataSources": [
|
||
|
{
|
||
|
"type": "structured",
|
||
|
"name": "SQL/localhost\\SP1;AdventureWorksDW",
|
||
|
"connectionDetails": {
|
||
|
"protocol": "tds",
|
||
|
"address": {
|
||
|
"server": "localhost\\SP1",
|
||
|
"database": "AdventureWorksDW"
|
||
|
},
|
||
|
"authentication": null,
|
||
|
"query": null
|
||
|
},
|
||
|
"options": {},
|
||
|
"credential": {
|
||
|
"AuthenticationKind": "ServiceAccount",
|
||
|
"EncryptConnection": true
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"tables": [
|
||
|
{
|
||
|
"name": "DimCustomer",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "CustomerKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CustomerKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "GeographyKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "GeographyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "CustomerAlternateKey",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CustomerAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "Title",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Title"
|
||
|
},
|
||
|
{
|
||
|
"name": "FirstName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "FirstName"
|
||
|
},
|
||
|
{
|
||
|
"name": "MiddleName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "MiddleName"
|
||
|
},
|
||
|
{
|
||
|
"name": "LastName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "LastName"
|
||
|
},
|
||
|
{
|
||
|
"name": "NameStyle",
|
||
|
"dataType": "boolean",
|
||
|
"sourceColumn": "NameStyle"
|
||
|
},
|
||
|
{
|
||
|
"name": "BirthDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "BirthDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "MaritalStatus",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "MaritalStatus"
|
||
|
},
|
||
|
{
|
||
|
"name": "Suffix",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Suffix"
|
||
|
},
|
||
|
{
|
||
|
"name": "Gender",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Gender"
|
||
|
},
|
||
|
{
|
||
|
"name": "EmailAddress",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EmailAddress"
|
||
|
},
|
||
|
{
|
||
|
"name": "YearlyIncome",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "YearlyIncome"
|
||
|
},
|
||
|
{
|
||
|
"name": "TotalChildren",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "TotalChildren"
|
||
|
},
|
||
|
{
|
||
|
"name": "NumberChildrenAtHome",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "NumberChildrenAtHome"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishEducation",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishEducation"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishOccupation",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishOccupation"
|
||
|
},
|
||
|
{
|
||
|
"name": "HouseOwnerFlag",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "HouseOwnerFlag"
|
||
|
},
|
||
|
{
|
||
|
"name": "NumberCarsOwned",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "NumberCarsOwned"
|
||
|
},
|
||
|
{
|
||
|
"name": "AddressLine1",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "AddressLine1"
|
||
|
},
|
||
|
{
|
||
|
"name": "AddressLine2",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "AddressLine2"
|
||
|
},
|
||
|
{
|
||
|
"name": "Phone",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Phone"
|
||
|
},
|
||
|
{
|
||
|
"name": "DateFirstPurchase",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "DateFirstPurchase"
|
||
|
},
|
||
|
{
|
||
|
"name": "CommuteDistance",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CommuteDistance"
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "DimCustomer",
|
||
|
"dataView": "full",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimCustomer = Source{[Schema=\"dbo\",Item=\"DimCustomer\"]}[Data],",
|
||
|
" #\"Removed Columns\" = Table.RemoveColumns(dbo_DimCustomer,{\"SpanishEducation\", \"FrenchEducation\", \"SpanishOccupation\", \"FrenchOccupation\"})",
|
||
|
"in",
|
||
|
" #\"Removed Columns\""
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimDate",
|
||
|
"showAsVariationsOnly": true,
|
||
|
"dataCategory": "Time",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "DateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "Date",
|
||
|
"dataType": "dateTime",
|
||
|
"isKey": true,
|
||
|
"sourceColumn": "FullDateAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "DayNumberOfWeek",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DayNumberOfWeek"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishDayNameOfWeek",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishDayNameOfWeek"
|
||
|
},
|
||
|
{
|
||
|
"name": "DayNumberOfMonth",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DayNumberOfMonth"
|
||
|
},
|
||
|
{
|
||
|
"name": "DayNumberOfYear",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DayNumberOfYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "WeekNumberOfYear",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "WeekNumberOfYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishMonthName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishMonthName",
|
||
|
"sortByColumn": "MonthNumberOfYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "MonthNumberOfYear",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "MonthNumberOfYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "CalendarQuarter",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CalendarQuarter"
|
||
|
},
|
||
|
{
|
||
|
"name": "CalendarYear",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CalendarYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "CalendarSemester",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CalendarSemester"
|
||
|
},
|
||
|
{
|
||
|
"name": "FiscalQuarter",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "FiscalQuarter"
|
||
|
},
|
||
|
{
|
||
|
"name": "FiscalYear",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "FiscalYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "FiscalSemester",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "FiscalSemester"
|
||
|
},
|
||
|
{
|
||
|
"type": "calculated",
|
||
|
"name": "Calculated Column 1",
|
||
|
"dataType": "int64",
|
||
|
"isDataTypeInferred": true,
|
||
|
"expression": [
|
||
|
"CALCULATE(",
|
||
|
"\t\tTOPN(1, VALUES(FactInternetSales[OrderDateKey]), FactInternetSales[OrderDateKey]),",
|
||
|
"\t\tTREATAS ( VALUES(DimDate[DateKey]), FactInternetSales[OrderDateKey] )",
|
||
|
"\t)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"type": "calculated",
|
||
|
"name": "Calculated Column 2",
|
||
|
"dataType": "decimal",
|
||
|
"isDataTypeInferred": true,
|
||
|
"expression": [
|
||
|
"CALCULATE(",
|
||
|
"\t\tsum(FactInternetSales[SalesAmount]),",
|
||
|
"\t\tTREATAS ( VALUES(DimDate[DateKey]), FactInternetSales[OrderDateKey] )",
|
||
|
"\t)"
|
||
|
],
|
||
|
"formatString": "\\$#,0.00;(\\$#,0.00);\\$#,0.00",
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\" Accuracy=\"2\" ThousandSeparator=\"True\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "DimDate",
|
||
|
"dataView": "full",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimDate = Source{[Schema=\"dbo\",Item=\"DimDate\"]}[Data],",
|
||
|
" #\"Removed Columns\" = Table.RemoveColumns(dbo_DimDate,{\"SpanishDayNameOfWeek\", \"FrenchDayNameOfWeek\", \"SpanishMonthName\", \"FrenchMonthName\"})",
|
||
|
"in",
|
||
|
" #\"Removed Columns\""
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"hierarchies": [
|
||
|
{
|
||
|
"name": "Calendar",
|
||
|
"levels": [
|
||
|
{
|
||
|
"name": "Year",
|
||
|
"ordinal": 0,
|
||
|
"column": "CalendarYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "Month",
|
||
|
"ordinal": 1,
|
||
|
"column": "EnglishMonthName"
|
||
|
},
|
||
|
{
|
||
|
"name": "Date",
|
||
|
"ordinal": 2,
|
||
|
"column": "Date"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "Fiscal",
|
||
|
"levels": [
|
||
|
{
|
||
|
"name": "FiscalYear",
|
||
|
"ordinal": 0,
|
||
|
"column": "FiscalYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "Month",
|
||
|
"ordinal": 1,
|
||
|
"column": "EnglishMonthName"
|
||
|
},
|
||
|
{
|
||
|
"name": "Date",
|
||
|
"ordinal": 2,
|
||
|
"column": "Date"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimGeography",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "GeographyKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "GeographyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "City",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "City"
|
||
|
},
|
||
|
{
|
||
|
"name": "StateProvinceCode",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "StateProvinceCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "StateProvince",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "StateProvinceName"
|
||
|
},
|
||
|
{
|
||
|
"name": "CountryCode",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CountryRegionCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "Country",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishCountryRegionName"
|
||
|
},
|
||
|
{
|
||
|
"name": "PostalCode",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "PostalCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesTerritoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "SalesTerritoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "IpAddressLocator",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "IpAddressLocator"
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "DimGeography",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimGeography = Source{[Schema=\"dbo\",Item=\"DimGeography\"]}[Data]",
|
||
|
"in",
|
||
|
" dbo_DimGeography"
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "QueryEditorSerialization",
|
||
|
"value": [
|
||
|
"<?xml version=\"1.0\" encoding=\"UTF-16\"?><Gemini xmlns=\"QueryEditorSerialization\"><AnnotationContent><![CDATA[<RSQueryCommandText>let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimGeography = Source{[Schema=\"dbo\",Item=\"DimGeography\"]}[Data]",
|
||
|
"in",
|
||
|
" dbo_DimGeography</RSQueryCommandText><RSQueryCommandType>Text</RSQueryCommandType><RSQueryDesignState></RSQueryDesignState>]]></AnnotationContent></Gemini>"
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimProduct",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "ProductKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductAlternateKey",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "ProductAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductSubcategoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductSubcategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "WeightUnitMeasureCode",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "WeightUnitMeasureCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "SizeUnitMeasureCode",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "SizeUnitMeasureCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishProductName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishProductName"
|
||
|
},
|
||
|
{
|
||
|
"name": "StandardCost",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "StandardCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "FinishedGoodsFlag",
|
||
|
"dataType": "boolean",
|
||
|
"sourceColumn": "FinishedGoodsFlag"
|
||
|
},
|
||
|
{
|
||
|
"name": "Color",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Color"
|
||
|
},
|
||
|
{
|
||
|
"name": "SafetyStockLevel",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "SafetyStockLevel"
|
||
|
},
|
||
|
{
|
||
|
"name": "ReorderPoint",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ReorderPoint"
|
||
|
},
|
||
|
{
|
||
|
"name": "ListPrice",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "ListPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "Size",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Size"
|
||
|
},
|
||
|
{
|
||
|
"name": "SizeRange",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "SizeRange"
|
||
|
},
|
||
|
{
|
||
|
"name": "Weight",
|
||
|
"dataType": "double",
|
||
|
"sourceColumn": "Weight"
|
||
|
},
|
||
|
{
|
||
|
"name": "DaysToManufacture",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DaysToManufacture"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductLine",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "ProductLine"
|
||
|
},
|
||
|
{
|
||
|
"name": "DealerPrice",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "DealerPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "Class",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Class"
|
||
|
},
|
||
|
{
|
||
|
"name": "Style",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Style"
|
||
|
},
|
||
|
{
|
||
|
"name": "ModelName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "ModelName"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishDescription",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishDescription"
|
||
|
},
|
||
|
{
|
||
|
"name": "StartDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "StartDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "EndDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "EndDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "Status",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "Status"
|
||
|
},
|
||
|
{
|
||
|
"type": "calculated",
|
||
|
"name": "ProductSubCategoryName",
|
||
|
"dataType": "string",
|
||
|
"isDataTypeInferred": true,
|
||
|
"expression": "RELATED('DimProductSubcategory'[EnglishProductSubcategoryName]) "
|
||
|
},
|
||
|
{
|
||
|
"type": "calculated",
|
||
|
"name": "ProductCategoryName",
|
||
|
"dataType": "string",
|
||
|
"isDataTypeInferred": true,
|
||
|
"expression": "RELATED('DimProductCategory'[EnglishProductCategoryName]) "
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "DimProduct",
|
||
|
"dataView": "full",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimProduct = Source{[Schema=\"dbo\",Item=\"DimProduct\"]}[Data],",
|
||
|
" #\"Removed Columns\" = Table.RemoveColumns(dbo_DimProduct,{\"SpanishProductName\", \"FrenchProductName\", \"FrenchDescription\", \"ChineseDescription\", \"ArabicDescription\", \"HebrewDescription\", \"ThaiDescription\", \"GermanDescription\", \"JapaneseDescription\", \"TurkishDescription\"})",
|
||
|
"in",
|
||
|
" #\"Removed Columns\""
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"hierarchies": [
|
||
|
{
|
||
|
"name": "Category",
|
||
|
"levels": [
|
||
|
{
|
||
|
"name": "Product",
|
||
|
"ordinal": 3,
|
||
|
"column": "EnglishProductName"
|
||
|
},
|
||
|
{
|
||
|
"name": "Category",
|
||
|
"ordinal": 0,
|
||
|
"column": "ProductCategoryName"
|
||
|
},
|
||
|
{
|
||
|
"name": "SubCategory",
|
||
|
"ordinal": 1,
|
||
|
"column": "ProductSubCategoryName"
|
||
|
},
|
||
|
{
|
||
|
"name": "Model",
|
||
|
"ordinal": 2,
|
||
|
"column": "ModelName"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimProductCategory",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "ProductCategoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductCategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductCategoryAlternateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductCategoryAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishProductCategoryName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishProductCategoryName"
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "DimProductCategory",
|
||
|
"dataView": "full",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimProductCategory = Source{[Schema=\"dbo\",Item=\"DimProductCategory\"]}[Data],",
|
||
|
" #\"Removed Columns\" = Table.RemoveColumns(dbo_DimProductCategory,{\"SpanishProductCategoryName\", \"FrenchProductCategoryName\"})",
|
||
|
"in",
|
||
|
" #\"Removed Columns\""
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimProductSubcategory",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "ProductSubcategoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductSubcategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductSubcategoryAlternateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductSubcategoryAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishProductSubcategoryName",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "EnglishProductSubcategoryName"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductCategoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductCategoryKey"
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "DimProductSubcategory",
|
||
|
"dataView": "full",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_DimProductSubcategory = Source{[Schema=\"dbo\",Item=\"DimProductSubcategory\"]}[Data],",
|
||
|
" #\"Removed Columns\" = Table.RemoveColumns(dbo_DimProductSubcategory,{\"SpanishProductSubcategoryName\", \"FrenchProductSubcategoryName\"})",
|
||
|
"in",
|
||
|
" #\"Removed Columns\""
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactInternetSales",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "ProductKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderDateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "OrderDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "DueDateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DueDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ShipDateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ShipDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "CustomerKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CustomerKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "PromotionKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "PromotionKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "CurrencyKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CurrencyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesTerritoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "SalesTerritoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesOrderNumber",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "SalesOrderNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesOrderLineNumber",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "SalesOrderLineNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "RevisionNumber",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "RevisionNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderQuantity",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "OrderQuantity"
|
||
|
},
|
||
|
{
|
||
|
"name": "UnitPrice",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "UnitPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "ExtendedAmount",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "ExtendedAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "UnitPriceDiscountPct",
|
||
|
"dataType": "double",
|
||
|
"sourceColumn": "UnitPriceDiscountPct"
|
||
|
},
|
||
|
{
|
||
|
"name": "DiscountAmount",
|
||
|
"dataType": "double",
|
||
|
"sourceColumn": "DiscountAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductStandardCost",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "ProductStandardCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "TotalProductCost",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "TotalProductCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesAmount",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "SalesAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "TaxAmt",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "TaxAmt"
|
||
|
},
|
||
|
{
|
||
|
"name": "Freight",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "Freight"
|
||
|
},
|
||
|
{
|
||
|
"name": "CarrierTrackingNumber",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CarrierTrackingNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "CustomerPONumber",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CustomerPONumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "OrderDate",
|
||
|
"variations": [
|
||
|
{
|
||
|
"name": "Calendar Reuse",
|
||
|
"description": "Show Calendar hierarchy as field in Internet Sales",
|
||
|
"relationship": "ae49b4e7-772e-4fde-a7e4-3f5f80915766",
|
||
|
"defaultHierarchy": {
|
||
|
"table": "DimDate",
|
||
|
"hierarchy": "Calendar"
|
||
|
},
|
||
|
"isDefault": true
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DueDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "DueDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "ShipDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "ShipDate"
|
||
|
},
|
||
|
{
|
||
|
"type": "calculated",
|
||
|
"name": "Margin",
|
||
|
"dataType": "decimal",
|
||
|
"isDataTypeInferred": true,
|
||
|
"expression": "[SalesAmount]-[TotalProductCost]",
|
||
|
"formatString": "\\$#,0.00;(\\$#,0.00);\\$#,0.00",
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\" Accuracy=\"2\" ThousandSeparator=\"True\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "FactInternetSales2010",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2010, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2011, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\""
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "QueryEditorSerialization",
|
||
|
"value": [
|
||
|
"<?xml version=\"1.0\" encoding=\"UTF-16\"?><Gemini xmlns=\"QueryEditorSerialization\"><AnnotationContent><![CDATA[<RSQueryCommandText>let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2010, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2011, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\"</RSQueryCommandText><RSQueryCommandType>Text</RSQueryCommandType><RSQueryDesignState></RSQueryDesignState>]]></AnnotationContent></Gemini>"
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactInternetSales2011",
|
||
|
"mode": "import",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2011, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2012, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\""
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "QueryEditorSerialization",
|
||
|
"value": [
|
||
|
"<?xml version=\"1.0\" encoding=\"UTF-16\"?><Gemini xmlns=\"QueryEditorSerialization\"><AnnotationContent><![CDATA[<RSQueryCommandText>let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2011, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2012, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\"</RSQueryCommandText><RSQueryCommandType>Text</RSQueryCommandType><RSQueryDesignState></RSQueryDesignState>]]></AnnotationContent></Gemini>"
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactInternetSales2012",
|
||
|
"mode": "import",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2012, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2013, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\""
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "QueryEditorSerialization",
|
||
|
"value": [
|
||
|
"<?xml version=\"1.0\" encoding=\"UTF-16\"?><Gemini xmlns=\"QueryEditorSerialization\"><AnnotationContent><![CDATA[<RSQueryCommandText>let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2012, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2013, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\"</RSQueryCommandText><RSQueryCommandType>Text</RSQueryCommandType><RSQueryDesignState></RSQueryDesignState>]]></AnnotationContent></Gemini>"
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactInternetSales2013",
|
||
|
"mode": "import",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2013, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2014, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\""
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "QueryEditorSerialization",
|
||
|
"value": [
|
||
|
"<?xml version=\"1.0\" encoding=\"UTF-16\"?><Gemini xmlns=\"QueryEditorSerialization\"><AnnotationContent><![CDATA[<RSQueryCommandText>let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2013, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2014, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\"</RSQueryCommandText><RSQueryCommandType>Text</RSQueryCommandType><RSQueryDesignState></RSQueryDesignState>]]></AnnotationContent></Gemini>"
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactInternetSales2014",
|
||
|
"mode": "import",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2014, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2015, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\""
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "QueryEditorSerialization",
|
||
|
"value": [
|
||
|
"<?xml version=\"1.0\" encoding=\"UTF-16\"?><Gemini xmlns=\"QueryEditorSerialization\"><AnnotationContent><![CDATA[<RSQueryCommandText>let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactInternetSales = Source{[Schema=\"dbo\",Item=\"FactInternetSales\"]}[Data],",
|
||
|
" #\"Filtered Rows\" = Table.SelectRows(dbo_FactInternetSales, each [OrderDate] >= #datetime(2014, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2015, 1, 1, 0, 0, 0))",
|
||
|
"in",
|
||
|
" #\"Filtered Rows\"</RSQueryCommandText><RSQueryCommandType>Text</RSQueryCommandType><RSQueryDesignState></RSQueryDesignState>]]></AnnotationContent></Gemini>"
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"measures": [
|
||
|
{
|
||
|
"name": "InternetCurrentQuarterMargin",
|
||
|
"expression": "TOTALQTD([InternetTotalMargin],'DimDate'[Date])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetCurrentQuarterSales",
|
||
|
"expression": "TOTALQTD([InternetTotalSales],'DimDate'[Date])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetDistinctCountSalesOrder",
|
||
|
"expression": "DISTINCTCOUNT([SalesOrderNumber])",
|
||
|
"formatString": "#,0",
|
||
|
"detailRowsDefinition": {}
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetOrderLinesCount",
|
||
|
"expression": "COUNTA([SalesOrderLineNumber])",
|
||
|
"formatString": "#,0",
|
||
|
"detailRowsDefinition": {}
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalDiscountAmount",
|
||
|
"expression": "SUM([DiscountAmount])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalFreight",
|
||
|
"expression": "SUM([Freight])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalMargin",
|
||
|
"expression": "SUM([Margin])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalProductCost",
|
||
|
"expression": "SUM([TotalProductCost])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalSales",
|
||
|
"expression": "SUM([SalesAmount])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {
|
||
|
"expression": [
|
||
|
"SELECTCOLUMNS(",
|
||
|
"\tFactInternetSales,",
|
||
|
"\t\"Sales Order Number\", FactInternetSales[SalesOrderNumber],",
|
||
|
"\t\"Customer Name\", RELATED(DimCustomer[FirstName]) & \" \" & RELATED(DimCustomer[LastName]),",
|
||
|
"\t\"Customer Phone\", RELATED(DimCustomer[Phone]),",
|
||
|
"\t\"City\", RELATED(DimGeography[City]),",
|
||
|
"\t\"Order Date\", FactInternetSales[OrderDate],",
|
||
|
"\t\"Internet Total Sales\", [InternetTotalSales]",
|
||
|
")"
|
||
|
]
|
||
|
},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalTaxAmt",
|
||
|
"expression": "SUM([TaxAmt])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalUnits",
|
||
|
"expression": "SUM([OrderQuantity])",
|
||
|
"formatString": "#,0",
|
||
|
"detailRowsDefinition": {}
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactResellerSales",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "ProductKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderDateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "OrderDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "DueDateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "DueDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ShipDateKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ShipDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ResellerKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "ResellerKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "EmployeeKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "EmployeeKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "PromotionKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "PromotionKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "CurrencyKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "CurrencyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesTerritoryKey",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "SalesTerritoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesOrderNumber",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "SalesOrderNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesOrderLineNumber",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "SalesOrderLineNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "RevisionNumber",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "RevisionNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderQuantity",
|
||
|
"dataType": "int64",
|
||
|
"sourceColumn": "OrderQuantity"
|
||
|
},
|
||
|
{
|
||
|
"name": "UnitPrice",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "UnitPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "ExtendedAmount",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "ExtendedAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "UnitPriceDiscountPct",
|
||
|
"dataType": "double",
|
||
|
"sourceColumn": "UnitPriceDiscountPct"
|
||
|
},
|
||
|
{
|
||
|
"name": "DiscountAmount",
|
||
|
"dataType": "double",
|
||
|
"sourceColumn": "DiscountAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductStandardCost",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "ProductStandardCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "TotalProductCost",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "TotalProductCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesAmount",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "SalesAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "TaxAmt",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "TaxAmt"
|
||
|
},
|
||
|
{
|
||
|
"name": "Freight",
|
||
|
"dataType": "decimal",
|
||
|
"sourceColumn": "Freight"
|
||
|
},
|
||
|
{
|
||
|
"name": "CarrierTrackingNumber",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CarrierTrackingNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "CustomerPONumber",
|
||
|
"dataType": "string",
|
||
|
"sourceColumn": "CustomerPONumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "OrderDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "DueDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "DueDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "ShipDate",
|
||
|
"dataType": "dateTime",
|
||
|
"sourceColumn": "ShipDate"
|
||
|
}
|
||
|
],
|
||
|
"partitions": [
|
||
|
{
|
||
|
"name": "FactResellerSales",
|
||
|
"dataView": "full",
|
||
|
"source": {
|
||
|
"type": "m",
|
||
|
"expression": [
|
||
|
"let",
|
||
|
" Source = #\"SQL/localhost\\SP1;AdventureWorksDW\",",
|
||
|
" dbo_FactResellerSales = Source{[Schema=\"dbo\",Item=\"FactResellerSales\"]}[Data]",
|
||
|
"in",
|
||
|
" dbo_FactResellerSales"
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"measures": [
|
||
|
{
|
||
|
"name": "ResellerTotalSales",
|
||
|
"expression": "SUM([SalesAmount])",
|
||
|
"formatString": "\\$#,0;(\\$#,0);\\$#,0",
|
||
|
"detailRowsDefinition": {},
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "Format",
|
||
|
"value": "<Format Format=\"Currency\"><Currency LCID=\"1033\" DisplayName=\"$ English (United States)\" Symbol=\"$\" PositivePattern=\"0\" NegativePattern=\"0\" /></Format>"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"relationships": [
|
||
|
{
|
||
|
"name": "2f03b75d-266f-4c06-bf9a-c00a2a5fe63f",
|
||
|
"fromTable": "DimCustomer",
|
||
|
"fromColumn": "GeographyKey",
|
||
|
"toTable": "DimGeography",
|
||
|
"toColumn": "GeographyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "c3b3fe98-c83c-4340-89dc-0cdb8acba196",
|
||
|
"fromTable": "DimProduct",
|
||
|
"fromColumn": "ProductSubcategoryKey",
|
||
|
"toTable": "DimProductSubcategory",
|
||
|
"toColumn": "ProductSubcategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "fbe2a336-e918-4bc2-9765-da912e40e48b",
|
||
|
"fromTable": "DimProductSubcategory",
|
||
|
"fromColumn": "ProductCategoryKey",
|
||
|
"toTable": "DimProductCategory",
|
||
|
"toColumn": "ProductCategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "eac275ef-12ed-44ab-95c5-367fe2964b7a",
|
||
|
"fromTable": "FactInternetSales",
|
||
|
"fromColumn": "CustomerKey",
|
||
|
"toTable": "DimCustomer",
|
||
|
"toColumn": "CustomerKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "9f36b1bc-0fae-4f03-94a9-b6996acf96f6",
|
||
|
"fromTable": "FactInternetSales",
|
||
|
"fromColumn": "DueDateKey",
|
||
|
"toTable": "DimDate",
|
||
|
"toColumn": "DateKey",
|
||
|
"isActive": false
|
||
|
},
|
||
|
{
|
||
|
"name": "ae49b4e7-772e-4fde-a7e4-3f5f80915766",
|
||
|
"fromTable": "FactInternetSales",
|
||
|
"fromColumn": "OrderDateKey",
|
||
|
"toTable": "DimDate",
|
||
|
"toColumn": "DateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "a5c2f953-e0a8-4f12-984a-82eba386bc31",
|
||
|
"fromTable": "FactInternetSales",
|
||
|
"fromColumn": "ProductKey",
|
||
|
"toTable": "DimProduct",
|
||
|
"toColumn": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "6e3e2bb9-d63c-4f1b-a65a-0a1a82dfbf75",
|
||
|
"fromTable": "FactInternetSales",
|
||
|
"fromColumn": "ShipDateKey",
|
||
|
"toTable": "DimDate",
|
||
|
"toColumn": "DateKey",
|
||
|
"isActive": false
|
||
|
},
|
||
|
{
|
||
|
"name": "e7a1ad50-9554-4041-a9c9-9075f09ebe90",
|
||
|
"fromTable": "FactResellerSales",
|
||
|
"fromColumn": "DueDateKey",
|
||
|
"toTable": "DimDate",
|
||
|
"toColumn": "DateKey",
|
||
|
"isActive": false
|
||
|
},
|
||
|
{
|
||
|
"name": "7ee649d8-b06b-4965-90e1-f9244173b3d9",
|
||
|
"fromTable": "FactResellerSales",
|
||
|
"fromColumn": "OrderDateKey",
|
||
|
"toTable": "DimDate",
|
||
|
"toColumn": "DateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "38811126-0c3f-47dd-9c7c-c271da105e10",
|
||
|
"fromTable": "FactResellerSales",
|
||
|
"fromColumn": "ProductKey",
|
||
|
"toTable": "DimProduct",
|
||
|
"toColumn": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "1e5d554f-ea4a-4b43-9ab7-3029e8cbe953",
|
||
|
"fromTable": "FactResellerSales",
|
||
|
"fromColumn": "ShipDateKey",
|
||
|
"toTable": "DimDate",
|
||
|
"toColumn": "DateKey",
|
||
|
"isActive": false
|
||
|
}
|
||
|
],
|
||
|
"perspectives": [
|
||
|
{
|
||
|
"name": "Internet Sales",
|
||
|
"tables": [
|
||
|
{
|
||
|
"name": "DimDate",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "CalendarQuarter"
|
||
|
},
|
||
|
{
|
||
|
"name": "CalendarSemester"
|
||
|
},
|
||
|
{
|
||
|
"name": "CalendarYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "Date"
|
||
|
},
|
||
|
{
|
||
|
"name": "DateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "DayNumberOfMonth"
|
||
|
},
|
||
|
{
|
||
|
"name": "DayNumberOfWeek"
|
||
|
},
|
||
|
{
|
||
|
"name": "DayNumberOfYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishDayNameOfWeek"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishMonthName"
|
||
|
},
|
||
|
{
|
||
|
"name": "FiscalQuarter"
|
||
|
},
|
||
|
{
|
||
|
"name": "FiscalSemester"
|
||
|
},
|
||
|
{
|
||
|
"name": "FiscalYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "MonthNumberOfYear"
|
||
|
},
|
||
|
{
|
||
|
"name": "WeekNumberOfYear"
|
||
|
}
|
||
|
],
|
||
|
"hierarchies": [
|
||
|
{
|
||
|
"name": "Calendar"
|
||
|
},
|
||
|
{
|
||
|
"name": "Fiscal"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimGeography",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "City"
|
||
|
},
|
||
|
{
|
||
|
"name": "CountryCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "Country"
|
||
|
},
|
||
|
{
|
||
|
"name": "GeographyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "IpAddressLocator"
|
||
|
},
|
||
|
{
|
||
|
"name": "PostalCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesTerritoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "StateProvinceCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "StateProvince"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimProduct",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "Class"
|
||
|
},
|
||
|
{
|
||
|
"name": "Color"
|
||
|
},
|
||
|
{
|
||
|
"name": "DaysToManufacture"
|
||
|
},
|
||
|
{
|
||
|
"name": "DealerPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "EndDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishDescription"
|
||
|
},
|
||
|
{
|
||
|
"name": "EnglishProductName"
|
||
|
},
|
||
|
{
|
||
|
"name": "FinishedGoodsFlag"
|
||
|
},
|
||
|
{
|
||
|
"name": "ListPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "ModelName"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductLine"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductSubcategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ReorderPoint"
|
||
|
},
|
||
|
{
|
||
|
"name": "SafetyStockLevel"
|
||
|
},
|
||
|
{
|
||
|
"name": "Size"
|
||
|
},
|
||
|
{
|
||
|
"name": "SizeRange"
|
||
|
},
|
||
|
{
|
||
|
"name": "SizeUnitMeasureCode"
|
||
|
},
|
||
|
{
|
||
|
"name": "StandardCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "StartDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "Status"
|
||
|
},
|
||
|
{
|
||
|
"name": "Style"
|
||
|
},
|
||
|
{
|
||
|
"name": "Weight"
|
||
|
},
|
||
|
{
|
||
|
"name": "WeightUnitMeasureCode"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "FactInternetSales",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "CarrierTrackingNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "CurrencyKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "CustomerKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "CustomerPONumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "DiscountAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "DueDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "DueDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ExtendedAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "Freight"
|
||
|
},
|
||
|
{
|
||
|
"name": "Margin"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "OrderQuantity"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductStandardCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "PromotionKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "RevisionNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesOrderLineNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesOrderNumber"
|
||
|
},
|
||
|
{
|
||
|
"name": "SalesTerritoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ShipDate"
|
||
|
},
|
||
|
{
|
||
|
"name": "ShipDateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "TaxAmt"
|
||
|
},
|
||
|
{
|
||
|
"name": "TotalProductCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "UnitPrice"
|
||
|
},
|
||
|
{
|
||
|
"name": "UnitPriceDiscountPct"
|
||
|
}
|
||
|
],
|
||
|
"measures": [
|
||
|
{
|
||
|
"name": "InternetCurrentQuarterMargin"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetCurrentQuarterSales"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetDistinctCountSalesOrder"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetOrderLinesCount"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalDiscountAmount"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalFreight"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalMargin"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalProductCost"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalSales"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalTaxAmt"
|
||
|
},
|
||
|
{
|
||
|
"name": "InternetTotalUnits"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimProductCategory",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "EnglishProductCategoryName"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductCategoryAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductCategoryKey"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"name": "DimProductSubcategory",
|
||
|
"columns": [
|
||
|
{
|
||
|
"name": "EnglishProductSubcategoryName"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductCategoryKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductSubcategoryAlternateKey"
|
||
|
},
|
||
|
{
|
||
|
"name": "ProductSubcategoryKey"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"roles": [
|
||
|
{
|
||
|
"name": "General Users",
|
||
|
"description": "Readers of the model",
|
||
|
"modelPermission": "readRefresh"
|
||
|
}
|
||
|
],
|
||
|
"annotations": [
|
||
|
{
|
||
|
"name": "ClientCompatibilityLevel",
|
||
|
"value": "500"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"id": "SemanticModel"
|
||
|
}
|