Author: hansbak
Date: Sun Nov 22 04:37:27 2009
New Revision: 883034
URL: http://svn.apache.org/viewvc?rev=883034&view=rev
Log:
A first proposal open for comments of the order OLAP entities. secas and
initial load are on the way and implemeted following the same pattern as
Jacopo's accounting entities
Added:
ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml (with props)
Modified:
ofbiz/trunk/applications/order/ofbiz-component.xml
Added: ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml?rev=883034&view=auto
==============================================================================
--- ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml (added)
+++ ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml Sun Nov 22
04:37:27 2009
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<entitymodel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitymodel.xsd">
+ <!-- ========================================================= -->
+ <!-- ======================== Defaults ======================= -->
+ <!-- ========================================================= -->
+ <title>OLAP entities for the Order component</title>
+ <description>None</description>
+ <copyright>Copyright 2001-2007 The Apache Software Foundation</copyright>
+
+ <!-- ========================================================= -->
+ <!-- Facts -->
+ <!-- ========================================================= -->
+ <entity entity-name="SalesOrderItemFact"
package-name="org.ofbiz.bi.fact.order" title="Sales Order Item Fact">
+ <description>A transaction fact entity with order item
grain.</description>
+ <field name="orderId" type="id-ne"></field> <!-- degenerate dimension
-->
+ <field name="orderItemSeqId" type="id-ne"></field> <!-- degenerate
dimension -->
+ <field name="orderDateDimId" type="id-ne"></field>
+ <field name="productDimId" type="id-ne"></field>
+ <field name="origCurrencyDimId" type="id-ne"></field>
+ <field name="billToCustomerDimId" type="id-ne"></field> <!-- TODO:
implement the dimension -->
+
+ <field name="quantity" type="fixed-point">
+ <description>Quantity order. From OrderItem.quantity</description>
+ </field>
+
+ <field name="extGrossAmount" type="currency-precise">
+ <description>Extended gross amount: quantity item multiplied by
the unit price.</description>
+ </field>
+ <field name="extDiscountAmount" type="currency-precise">
+ <description>Extended discount amount.</description>
+ </field>
+ <field name="extNetAmount" type="currency-precise">
+ <description>Extended net amount: gross amount less
discounts.</description>
+ </field>
+ <field name="extShippingAmount" type="currency-precise">
+ <description>Extended shipping amount.</description>
+ </field>
+ <field name="extTaxAmount" type="currency-precise">
+ <description>Extended tax amount.</description>
+ </field>
+
+ <field name="GrossSales" type="currency-precise">
+ <description>Gross Sales</description>
+ </field>
+ <field name="GrossMerchandizeSales" type="currency-precise">
+ <description>Gross Merchandize Sales</description>
+ </field>
+ <field name="GrossMerchandizeProfit" type="currency-precise">
+ <description>Gross Merchandize Profit</description>
+ </field>
+ <field name="GrossShippingProfit" type="currency-precise">
+ <description>Gross Shipping Profit</description>
+ </field>
+ <field name="GrossProfit" type="currency-precise">
+ <description>Gross Profit</description>
+ </field>
+ <field name="AverageMerchandizeProfit" type="currency-precise">
+ <description>Average Merchandize Profit</description>
+ </field>
+ <field name="AverageGrossProfit" type="currency-precise">
+ <description>Average Gross Profit</description>
+ </field>
+
+ <!--<field name="extGrossAmount" type="currency-precise">
+ <description>Extended gross amount: quantity invoiced multiplied
by the list unit price.</description>
+ </field>
+ <field name="extDiscountAmount" type="currency-precise">
+ <description>Extended discount amount.</description>
+ </field>
+ <field name="extNetAmount" type="currency-precise">
+ <description>Extended net amount: gross amount less
discounts.</description>
+ </field>
+ <field name="extShippingAmount" type="currency-precise">
+ <description>Extended shipping amount.</description>
+ </field>
+ <field name="extTaxAmount" type="currency-precise">
+ <description>Extended tax amount.</description>
+ </field>
+ <field name="extManFixedCost" type="currency-precise">
+ <description>Extended manufacturing fixed cost.</description>
+ </field>
+ <field name="extManVarCost" type="currency-precise">
+ <description>Extended manufacturing variable cost.</description>
+ </field>
+ <field name="extStorageCost" type="currency-precise">
+ <description>Extended storage cost.</description>
+ </field>
+ <field name="extDistributionCost" type="currency-precise">
+ <description>Extended distribution cost.</description>
+ </field>
+ <field name="contributionAmount" type="currency-precise">
+ <description>Extended net amount less all the costs.</description>
+ </field>-->
+ <!--
+ TODO: implement multi-currency fields
+ <field name="extGrossAmountOrig" type="currency-precise">
+ <description>Extended gross amount in the original currency:
quantity invoiced multiplied by the list unit price.</description>
+ </field>
+ <field name="extDiscountAmountOrig" type="currency-precise">
+ <description>Extended discount amount in the original
currency.</description>
+ </field>
+ <field name="extNetAmountOrig" type="currency-precise">
+ <description>Extended net amount in the original currency: gross
amount less discounts.</description>
+ </field>
+ <field name="extManFixedCostOrig" type="currency-precise">
+ <description>Extended manufacturing fixed cost in the original
currency.</description>
+ </field>
+ <field name="extManVarCostOrig" type="currency-precise">
+ <description>Extended manufacturing variable cost in the original
currency.</description>
+ </field>
+ <field name="extStorageCostOrig" type="currency-precise">
+ <description>Extended storage cost in the original
currency.</description>
+ </field>
+ <field name="extDistributionCostOrig" type="currency-precise">
+ <description>Extended distribution cost in the original
currency.</description>
+ </field>
+ <field name="contributionAmountOrig" type="currency-precise">
+ <description>Extended net amount less all the costs in the
original currency.</description>
+ </field>
+ -->
+
+ <prim-key field="orderId"/>
+ <prim-key field="orderItemSeqId"/>
+
+ <relation type="one" fk-name="SIIF_INVDATE"
rel-entity-name="DateDimension">
+ <key-map field-name="invoiceDateDimId"
rel-field-name="dimensionId"/>
+ </relation>
+ <relation type="one" fk-name="SIIF_CURRENCY"
rel-entity-name="CurrencyDimension">
+ <key-map field-name="origCurrencyDimId"
rel-field-name="dimensionId"/>
+ </relation>
+ <relation type="one" fk-name="SIIF_PRODUCT"
rel-entity-name="ProductDimension">
+ <key-map field-name="productDimId" rel-field-name="dimensionId"/>
+ </relation>
+
+ </entity>
+
+ <!-- ========================================================= -->
+ <!-- Star Schemas -->
+ <!-- ========================================================= -->
+ <view-entity entity-name="SalesOrderItemStarSchema"
package-name="org.ofbiz.bi.starschema.order" title="Sales Order Item Star
Schema">
+ <description>Order Item star schema (Profit and Loss
Statement).</description>
+
+ <member-entity entity-alias="SIIF" entity-name="SalesOrderItemFact"/>
+ <member-entity entity-alias="IDD" entity-name="DateDimension"/>
+ <member-entity entity-alias="PD" entity-name="ProductDimension"/>
+ <member-entity entity-alias="CD" entity-name="CurrencyDimension"/>
+
+ <alias-all entity-alias="IDD" prefix="orderDate" group-by="true">
+ <exclude field="dimensionId"/>
+ </alias-all>
+ <alias-all entity-alias="PD" prefix="product" group-by="true">
+ <exclude field="dimensionId"/>
+ </alias-all>
+ <alias-all entity-alias="CD" prefix="currency" group-by="true">
+ <exclude field="dimensionId"/>
+ </alias-all>
+ <alias-all entity-alias="SIIF" function="sum">
+ <exclude field="orderItemSeqId"/>
+ <exclude field="orderDateDimId"/>
+ <exclude field="productDimId"/>
+ <exclude field="billToCustomerDimId"/>
+ <exclude field="origCurrencyDimId"/>
+ <exclude field="orderId"/>
+ <exclude field="orderItemSeqId"/>
+ </alias-all>
+ <alias entity-alias="SIIF" name="orderId" group-by="true">
+ <description>Order id</description>
+ </alias>
+ <alias entity-alias="SIIF" name="orderItemSeqId" group-by="true"/>
+
+ <view-link entity-alias="SIIF" rel-entity-alias="IDD">
+ <key-map field-name="orderDateDimId" rel-field-name="dimensionId"/>
+ </view-link>
+ <view-link entity-alias="SIIF" rel-entity-alias="PD">
+ <key-map field-name="productDimId" rel-field-name="dimensionId"/>
+ </view-link>
+ <view-link entity-alias="SIIF" rel-entity-alias="CD">
+ <key-map field-name="origCurrencyDimId"
rel-field-name="dimensionId"/>
+ </view-link>
+
+ </view-entity>
+
+</entitymodel>
Propchange: ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml
------------------------------------------------------------------------------
svn:keywords = "Date Rev Author URL Id"
Propchange: ofbiz/trunk/applications/order/entitydef/entitymodel_olap.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Modified: ofbiz/trunk/applications/order/ofbiz-component.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/ofbiz-component.xml?rev=883034&r1=883033&r2=883034&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/ofbiz-component.xml (original)
+++ ofbiz/trunk/applications/order/ofbiz-component.xml Sun Nov 22 04:37:27 2009
@@ -28,6 +28,7 @@
<entity-resource type="model" reader-name="main" loader="main"
location="entitydef/entitymodel.xml"/>
<entity-resource type="model" reader-name="main" loader="main"
location="entitydef/entitymodel_old.xml"/>
<entity-resource type="model" reader-name="main" loader="main"
location="entitydef/entitymodel_view.xml"/>
+ <entity-resource type="model" reader-name="main" loader="main"
location="entitydef/entitymodel_olap.xml"/>
<entity-resource type="eca" reader-name="main" loader="main"
location="entitydef/eecas.xml"/>
<entity-resource type="data" reader-name="seed" loader="main"
location="data/OrderTypeData.xml"/>
<entity-resource type="data" reader-name="seed" loader="main"
location="data/OrderPortletData.xml"/>