| 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>
|
| 5157 |
anupam.sin |
35 |
<Level name="StatusGroup" column="statusGroup" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
| 3706 |
vikas |
36 |
</Level>
|
| 5157 |
anupam.sin |
37 |
<Level name="StatusSubGroup" column="statusSubGroup" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
38 |
</Level>
|
|
|
39 |
<Level name="Status" column="statusName" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
40 |
</Level>
|
| 3706 |
vikas |
41 |
</Hierarchy>
|
|
|
42 |
</Dimension>
|
|
|
43 |
<Dimension type="StandardDimension" foreignKey="item_id" name="Product">
|
|
|
44 |
<Hierarchy name="Product" hasAll="true" allMemberName="All" primaryKey="id">
|
|
|
45 |
<Table name="item">
|
|
|
46 |
</Table>
|
|
|
47 |
<Level name="Brand" column="brand" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
48 |
</Level>
|
|
|
49 |
<Level name="ModelNumber" column="model_number" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
50 |
</Level>
|
|
|
51 |
<Level name="Color" column="color" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never">
|
|
|
52 |
</Level>
|
|
|
53 |
</Hierarchy>
|
|
|
54 |
</Dimension>
|
|
|
55 |
<Dimension type="StandardDimension" foreignKey="item_id" name="Category">
|
|
|
56 |
<Hierarchy name="Category" hasAll="true" allMemberName="All" primaryKey="id">
|
|
|
57 |
<Table name="item">
|
|
|
58 |
</Table>
|
|
|
59 |
<Level name="ParentCategory" column="parent_category" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
60 |
</Level>
|
|
|
61 |
<Level name="Category" column="category" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
62 |
</Level>
|
|
|
63 |
<Level name="ProductGroup" column="product_group" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
64 |
</Level>
|
|
|
65 |
</Hierarchy>
|
|
|
66 |
</Dimension>
|
|
|
67 |
<Dimension type="StandardDimension" name="Estimate">
|
|
|
68 |
<Hierarchy name="Estimate" hasAll="true" allMemberName="All">
|
|
|
69 |
<Level name="Estimate" table="orderfulfillment" column="expected_delivery_days" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
70 |
<KeyExpression>
|
|
|
71 |
<SQL dialect="generic">
|
|
|
72 |
case when expected_delivery_days <= 5 then expected_delivery_days when expected_delivery_days > 5 then 6 else 7 end </SQL>
|
|
|
73 |
</KeyExpression>
|
|
|
74 |
<NameExpression>
|
|
|
75 |
<SQL dialect="generic">
|
|
|
76 |
case when expected_delivery_days <= 5 then convert(expected_delivery_days, char) when expected_delivery_days > 5 then 'more than 5 days' else '-' end </SQL>
|
|
|
77 |
</NameExpression>
|
|
|
78 |
</Level>
|
|
|
79 |
</Hierarchy>
|
|
|
80 |
</Dimension>
|
|
|
81 |
<Dimension type="StandardDimension" name="Actual Delivery Days">
|
|
|
82 |
<Hierarchy name="Actual Delivery Days" hasAll="true" allMemberName="All">
|
|
|
83 |
<Level name="Actual Delivery Days" table="orderfulfillment" column="actual_delivery_days" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
84 |
<KeyExpression>
|
|
|
85 |
<SQL dialect="generic">
|
|
|
86 |
case when actual_delivery_days <= 5 then actual_delivery_days when actual_delivery_days > 5 then 6 else 7 end </SQL>
|
|
|
87 |
</KeyExpression>
|
|
|
88 |
<NameExpression>
|
|
|
89 |
<SQL dialect="generic">
|
|
|
90 |
case when actual_delivery_days <= 5 then convert(actual_delivery_days, char) when actual_delivery_days > 5 then 'more than 5 days' else '-' end </SQL>
|
|
|
91 |
</NameExpression>
|
|
|
92 |
</Level>
|
|
|
93 |
</Hierarchy>
|
|
|
94 |
</Dimension>
|
| 5157 |
anupam.sin |
95 |
<Dimension type="StandardDimension" name="Connected Locally">
|
|
|
96 |
<Hierarchy name="Connected Locally" hasAll="true" allMemberName="All">
|
|
|
97 |
<Level name="Connected Locally" table="orderfulfillment" column="connected_locally" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
98 |
<KeyExpression>
|
|
|
99 |
<SQL dialect="generic">
|
|
|
100 |
case when connected_locally <= 5 then connected_locally when connected_locally > 5 then 6 else 7 end </SQL>
|
|
|
101 |
</KeyExpression>
|
|
|
102 |
<NameExpression>
|
|
|
103 |
<SQL dialect="generic">
|
|
|
104 |
case when connected_locally <= 5 then convert(connected_locally, char) when connected_locally > 5 then 'more than 5 days' else '-' end </SQL>
|
|
|
105 |
</NameExpression>
|
|
|
106 |
</Level>
|
|
|
107 |
</Hierarchy>
|
|
|
108 |
</Dimension>
|
|
|
109 |
<Dimension type="StandardDimension" name="Reached Destination City">
|
|
|
110 |
<Hierarchy name="Reached Destination City" hasAll="true" allMemberName="All">
|
|
|
111 |
<Level name="Reached Destination City" table="orderfulfillment" column="reached_destination_city" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
112 |
<KeyExpression>
|
|
|
113 |
<SQL dialect="generic">
|
|
|
114 |
case when reached_destination_city <= 5 then reached_destination_city when reached_destination_city > 5 then 6 else 7 end </SQL>
|
|
|
115 |
</KeyExpression>
|
|
|
116 |
<NameExpression>
|
|
|
117 |
<SQL dialect="generic">
|
|
|
118 |
case when reached_destination_city <= 5 then convert(reached_destination_city, char) when reached_destination_city > 5 then 'more than 5 days' else '-' end </SQL>
|
|
|
119 |
</NameExpression>
|
|
|
120 |
</Level>
|
|
|
121 |
</Hierarchy>
|
|
|
122 |
</Dimension>
|
|
|
123 |
<Dimension type="StandardDimension" name="First Delivery Attempt">
|
|
|
124 |
<Hierarchy name="First Delivery Attempt" hasAll="true" allMemberName="All">
|
|
|
125 |
<Level name="First Delivery Attempt" table="orderfulfillment" column="first_delivery_attempt" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
126 |
<KeyExpression>
|
|
|
127 |
<SQL dialect="generic">
|
|
|
128 |
case when first_delivery_attempt <= 5 then first_delivery_attempt when first_delivery_attempt > 5 then 6 else 7 end </SQL>
|
|
|
129 |
</KeyExpression>
|
|
|
130 |
<NameExpression>
|
|
|
131 |
<SQL dialect="generic">
|
|
|
132 |
case when first_delivery_attempt <= 5 then convert(first_delivery_attempt, char) when first_delivery_attempt > 5 then 'more than 5 days' else '-' end </SQL>
|
|
|
133 |
</NameExpression>
|
|
|
134 |
</Level>
|
|
|
135 |
</Hierarchy>
|
|
|
136 |
</Dimension>
|
| 3706 |
vikas |
137 |
<Dimension type="StandardDimension" name="Delivery Difference">
|
|
|
138 |
<Hierarchy name="Delivery Difference" hasAll="true" allMemberName="All">
|
| 4166 |
vikas |
139 |
<Level name="Delivery Difference" table="orderfulfillment" column="actual_estimate_diff" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
| 3706 |
vikas |
140 |
<KeyExpression>
|
|
|
141 |
<SQL dialect="generic">
|
|
|
142 |
case when actual_estimate_diff <0 then -1 when actual_estimate_diff =0 then 0 when actual_estimate_diff<5 then actual_estimate_diff when actual_estimate_diff>=5 then 6 else 7 end </SQL>
|
|
|
143 |
</KeyExpression>
|
|
|
144 |
<NameExpression>
|
|
|
145 |
<SQL dialect="generic">
|
| 4166 |
vikas |
146 |
case when actual_estimate_diff <0 then 'Before Time' when actual_estimate_diff =0 then 'On Time' when actual_estimate_diff<5 then concat('Delayed by ', convert(actual_estimate_diff, char), ' days') when actual_estimate_diff>=5 then 'Delayed by 5 or more days' else '-' end </SQL>
|
| 3706 |
vikas |
147 |
</NameExpression>
|
|
|
148 |
</Level>
|
|
|
149 |
</Hierarchy>
|
|
|
150 |
</Dimension>
|
|
|
151 |
<Dimension type="StandardDimension" name="Logistics Provider">
|
|
|
152 |
<Hierarchy name="Logistics Provider" hasAll="true" allMemberName="All">
|
|
|
153 |
<Level name="Logistics Provider" table="orderfulfillment" column="logistics_provider_id" type="Integer" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
154 |
<NameExpression>
|
|
|
155 |
<SQL dialect="generic">
|
| 5157 |
anupam.sin |
156 |
case when logistics_provider_id=1 then 'Blue Dart' when logistics_provider_id=2 then 'Aramex' else 'N/A' end </SQL>
|
| 3706 |
vikas |
157 |
</NameExpression>
|
|
|
158 |
</Level>
|
|
|
159 |
</Hierarchy>
|
|
|
160 |
</Dimension>
|
|
|
161 |
<Dimension type="StandardDimension" name="Delay Cause">
|
|
|
162 |
<Hierarchy name="Delay Cause" hasAll="true" allMemberName="All">
|
|
|
163 |
<Level name="Delay Cause" table="orderfulfillment" column="delay_reason" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
164 |
</Level>
|
|
|
165 |
</Hierarchy>
|
|
|
166 |
</Dimension>
|
| 3750 |
vikas |
167 |
<Dimension type="StandardDimension" foreignKey="payment_method" name="Payment Mode">
|
|
|
168 |
<Hierarchy name="Payment Mode" hasAll="true" allMemberName="All" primaryKey="paymentmethodid">
|
| 4166 |
vikas |
169 |
<Table name="paymentmethod">
|
| 3750 |
vikas |
170 |
</Table>
|
|
|
171 |
<Level name="Payment Mode" column="gateway" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
|
|
|
172 |
<KeyExpression>
|
|
|
173 |
<SQL dialect="generic">
|
|
|
174 |
case when gateway in ('ebs', 'hdfc', 'cheque') then 'prepaid' else gateway end </SQL>
|
|
|
175 |
</KeyExpression>
|
|
|
176 |
<NameExpression>
|
|
|
177 |
<SQL dialect="generic">
|
|
|
178 |
case when gateway in ('ebs', 'hdfc', 'cheque') then 'prepaid' else gateway end </SQL>
|
|
|
179 |
</NameExpression>
|
|
|
180 |
</Level>
|
|
|
181 |
</Hierarchy>
|
|
|
182 |
</Dimension>
|
| 3706 |
vikas |
183 |
<Measure name="Quantity" column="date_id" datatype="Integer" formatString="##,###" aggregator="count" visible="true">
|
|
|
184 |
</Measure>
|
|
|
185 |
</Cube>
|
|
|
186 |
</Schema>
|