<?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.
-->

<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods.xsd">

    <simple-method method-name="quickInitDataWarehouse" short-description="">
        <set-service-fields service-name="loadDateDimension" map="parameters" to-map="inMap"/>
        <call-service service-name="loadDateDimension" in-map-name="inMap"/>
        <check-errors/>

        <clear-field field="inMap"/>
        <call-service service-name="loadCurrencyDimension" in-map-name="inMap"/>
        <check-errors/>

        <!-- loads all products in the ProductDimension -->
        <clear-field field="inMap"/>
        <call-service service-name="loadAllProductsInProductDimension" in-map-name="inMap"/>
        <check-errors/>

        <!-- loads the invoice items in the SalesInvoiceItemFact fact entity -->
        <entity-condition entity-name="Invoice" list="invoices">
            <condition-list>
                <condition-expr field-name="invoiceTypeId" value="SALES_INVOICE"/>
                <condition-expr field-name="invoiceDate" operator="greater-equals" from-field="parameters.fromDate"/>
                <condition-expr field-name="invoiceDate" operator="less-equals" from-field="parameters.thruDate"/>
            </condition-list>
        </entity-condition>
        <iterate list="invoices" entry="invoice">
            <clear-field field="inMap"/>
            <set field="inMap.invoiceId" from-field="invoice.invoiceId"/>
            <call-service service-name="loadSalesInvoiceFact" in-map-name="inMap"/>
            <check-errors/>
        </iterate>
        
        <!-- loads the order items in the SalesOrderItemFact fact entity -->
        <entity-condition entity-name="OrderHeader" list="orderHeaders">
            <condition-list>
                <condition-expr field-name="orderTypeId" value="SALES_ORDER"/>
                <condition-expr field-name="orderDate" operator="greater-equals" from-field="parameters.fromDate"/>
                <condition-expr field-name="orderDate" operator="less-equals" from-field="parameters.thruDate"/>
            </condition-list>
        </entity-condition>
        <iterate list="orderHeaders" entry="orderHeader">
            <clear-field field="inMap"/>
            <set field="inMap.orderId" from-field="orderHeader.orderId"/>
            <call-service service-name="loadSalesOrderFact" in-map-name="inMap"></call-service>
            <check-errors/>
        </iterate>
        
        
        <!-- loads the inventory items in the InventoryItemFact fact entity -->
        <entity-condition entity-name="InventoryItem" list="inventoryItems">
            <condition-expr field-name="inventoryItemTypeId" operator="equals" value="NON_SERIAL_INV_ITEM"/>
        </entity-condition>
        <iterate list="inventoryItems" entry="inventoryItem">
            <clear-field field="inventMap"/>
            <set field="inventMap.inventoryItemId" from-field="inventoryItem.inventoryItemId"/>
            <call-service service-name="loadInventoryFact" in-map-name="inventMap"></call-service>
            <check-errors/>
        </iterate>
    </simple-method>
</simple-methods>
