<?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" 
    xmlns="http://ofbiz.apache.org/Simple-Method" xsi:schemaLocation="http://ofbiz.apache.org/Simple-Method http://ofbiz.apache.org/dtds/simple-methods.xsd">

    <simple-method method-name="getOrder" short-description="Get Orders" login-required="false">
        <if-not-empty field="DateMonth">
            <set field="DateYear" value="2009"/>
            <set field="DateMonth" value="12"/>
            <set field="mount1" from-field="DateMonth" type="Integer"/>
            <calculate field="mount2" type="Integer">
                <calcop operator="subtract" field="mount1">
                    <number value="1"/>
                </calcop>
            </calculate>
            <entity-condition entity-name="SalesOrderItemStarSchema" list="starschemas">
                <condition-list combine="and">
                    <condition-list combine="or">
                        <condition-expr field-name="orderDateMonthOfYear" operator="equals" from-field="DateMonth"/>
                        <condition-expr field-name="orderDateMonthOfYear" operator="equals" from-field="mount2"/>
                    </condition-list>
                    <condition-expr field-name="orderDateYearName" operator="equals" from-field="DateYear"/>
                    <condition-expr field-name="productStoreId" operator="equals" from-field="productStoreId"/>
                </condition-list>
            </entity-condition>
        </if-not-empty>
    </simple-method>
    
</simple-methods>
