Subversion Repositories SmartDukaan

Rev

Rev 3750 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3706 vikas 1
<Schema name="OrderFulfillmentSchema">
2
	<Cube name="OrderFulfillmentCube" cache="true" enabled="true">
3
		<Table name="orderfulfillment">
4
		</Table>
5
		<Dimension type="TimeDimension" foreignKey="date_id" name="OrderDate">
6
			<Hierarchy name="OrderDate" hasAll="true" allMemberName="All" primaryKey="date_id">
7
				<Table name="datedim">
8
				</Table>
9
				<Level name="Year" column="year" type="Integer" uniqueMembers="true" levelType="TimeYears" hideMemberIf="Never">
10
				</Level>
11
				<Level name="Quarter" column="quarter" type="String" uniqueMembers="false" levelType="TimeQuarters" hideMemberIf="Never">
12
				</Level>
13
				<Level name="Month" column="monthnumber" nameColumn="monthname" ordinalColumn="monthnumber" type="Integer" uniqueMembers="false" levelType="TimeMonths" hideMemberIf="Never">
14
				</Level>
15
				<Level name="Date" column="dayofmonth" type="Integer" uniqueMembers="false" levelType="TimeDays" hideMemberIf="Never">
16
				</Level>
17
			</Hierarchy>
18
		</Dimension>
19
		<Dimension type="StandardDimension" foreignKey="customer_pincode" name="Geography">
20
			<Hierarchy name="Territory" hasAll="true" allMemberName="All" primaryKey="pincode">
21
				<Table name="pincodesB">
22
				</Table>
23
				<Level name="State" column="state" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
24
				</Level>
25
				<Level name="City" column="city" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
26
				</Level>
27
				<Level name="Pincode" column="pincode" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
28
				</Level>
29
			</Hierarchy>
30
		</Dimension>
31
		<Dimension type="StandardDimension" foreignKey="status" name="OrderStatus">
32
			<Hierarchy name="StatusDim" hasAll="true" allMemberName="All" primaryKey="status">
33
				<Table name="orderstatus">
34
				</Table>
35
				<Level name="Status" column="description" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
36
				</Level>
37
			</Hierarchy>
38
		</Dimension>
39
		<Dimension type="StandardDimension" foreignKey="item_id" name="Product">
40
			<Hierarchy name="Product" hasAll="true" allMemberName="All" primaryKey="id">
41
				<Table name="item">
42
				</Table>
43
				<Level name="Brand" column="brand" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
44
				</Level>
45
				<Level name="ModelNumber" column="model_number" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
46
				</Level>
47
				<Level name="Color" column="color" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never">
48
				</Level>
49
			</Hierarchy>
50
		</Dimension>
51
		<Dimension type="StandardDimension" foreignKey="item_id" name="Category">
52
			<Hierarchy name="Category" hasAll="true" allMemberName="All" primaryKey="id">
53
				<Table name="item">
54
				</Table>
55
				<Level name="ParentCategory" column="parent_category" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
56
				</Level>
57
				<Level name="Category" column="category" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
58
				</Level>
59
				<Level name="ProductGroup" column="product_group" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
60
				</Level>
61
			</Hierarchy>
62
		</Dimension>
63
		<Dimension type="StandardDimension" name="Estimate">
64
			<Hierarchy name="Estimate" hasAll="true" allMemberName="All">
65
				<Level name="Estimate" table="orderfulfillment" column="expected_delivery_days" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
66
					<KeyExpression>
67
						<SQL dialect="generic">
68
							case when expected_delivery_days &#60;= 5 then expected_delivery_days when expected_delivery_days &#62; 5 then 6 else 7 end						</SQL>
69
					</KeyExpression>
70
					<NameExpression>
71
						<SQL dialect="generic">
72
							case when expected_delivery_days &#60;= 5 then convert(expected_delivery_days, char) when expected_delivery_days &#62; 5 then &#39;more than 5 days&#39; else &#39;-&#39; end						</SQL>
73
					</NameExpression>
74
				</Level>
75
			</Hierarchy>
76
		</Dimension>
77
		<Dimension type="StandardDimension" name="Actual Delivery Days">
78
			<Hierarchy name="Actual Delivery Days" hasAll="true" allMemberName="All">
79
				<Level name="Actual Delivery Days" table="orderfulfillment" column="actual_delivery_days" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
80
					<KeyExpression>
81
						<SQL dialect="generic">
82
							case when actual_delivery_days &#60;= 5 then actual_delivery_days when actual_delivery_days &#62; 5 then 6 else 7 end						</SQL>
83
					</KeyExpression>
84
					<NameExpression>
85
						<SQL dialect="generic">
86
							case when actual_delivery_days &#60;= 5 then convert(actual_delivery_days, char) when actual_delivery_days &#62; 5 then &#39;more than 5 days&#39; else &#39;-&#39; end						</SQL>
87
					</NameExpression>
88
				</Level>
89
			</Hierarchy>
90
		</Dimension>
91
		<Dimension type="StandardDimension" name="Delivery Difference">
92
			<Hierarchy name="Delivery Difference" hasAll="true" allMemberName="All">
93
				<Level name="Delivery Difference" table="orderfulfillment" column="actual_estimate_diff" ordinalColumn="actual_estimate_diff" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
94
					<KeyExpression>
95
						<SQL dialect="generic">
96
							case when actual_estimate_diff &#60;0 then -1 when actual_estimate_diff =0 then 0 when actual_estimate_diff&#60;5 then actual_estimate_diff when actual_estimate_diff&#62;=5 then 6 else 7 end						</SQL>
97
					</KeyExpression>
98
					<NameExpression>
99
						<SQL dialect="generic">
100
							case when actual_estimate_diff &#60;0 then &#39;Before Time&#39; when actual_estimate_diff =0 then &#39;On Time&#39; when actual_estimate_diff&#60;5 then concat(&#39;Delayed by &#39;, actual_estimate_diff, &#39; days&#39;) when actual_estimate_diff&#62;=5 then &#39;Delayed by 5 or more days&#39; else &#39;-&#39; end						</SQL>
101
					</NameExpression>
102
				</Level>
103
			</Hierarchy>
104
		</Dimension>
105
		<Dimension type="StandardDimension" name="Logistics Provider">
106
			<Hierarchy name="Logistics Provider" hasAll="true" allMemberName="All">
107
				<Level name="Logistics Provider" table="orderfulfillment" column="logistics_provider_id" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
108
					<NameExpression>
109
						<SQL dialect="generic">
110
							case when logistics_provider_id=1 then &#39;Blue Dart&#39; when logistics_provider_id=2 then &#39;AFL&#39;  else &#39;-&#39; end						</SQL>
111
					</NameExpression>
112
				</Level>
113
			</Hierarchy>
114
		</Dimension>
115
		<Dimension type="StandardDimension" name="Delay Cause">
116
			<Hierarchy name="Delay Cause" hasAll="true" allMemberName="All">
117
				<Level name="Delay Cause" table="orderfulfillment" column="delay_reason" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
118
				</Level>
119
			</Hierarchy>
120
		</Dimension>
121
		<Measure name="Quantity" column="date_id" datatype="Integer" formatString="##,###" aggregator="count" visible="true">
122
		</Measure>
123
	</Cube>
124
</Schema>