| <?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. |
| --> |
| |
| <screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Screen http://ofbiz.apache.org/dtds/widget-screen.xsd"> |
| |
| <screen name="OrderPurchaseReportOptions"> |
| <section> |
| <actions> |
| <set field="titleProperty" value="OrderReports"/> |
| <set field="headerItem" value="reports"/> |
| <set field="helpAnchor" value="_help_for_order_reports"/> |
| </actions> |
| <widgets> |
| <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}"> |
| <decorator-section name="body"> |
| <label style="h3">${uiLabelMap.BirtOrderReportsWarning}</label> |
| <include-portal-page id="OrderReportPage"/> |
| </decorator-section> |
| </decorator-screen> |
| </widgets> |
| </section> |
| </screen> |
| |
| <screen name="OrderReportSalesByStore"> |
| <section> |
| <actions> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| </actions> |
| <widgets> |
| <screenlet title="${uiLabelMap.OrderReportSalesByStore}"> |
| <include-form name="SalesByStoreReport" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| </widgets> |
| </section> |
| </screen> |
| |
| <screen name="OrderReportOpenOrderItems"> |
| <section> |
| <actions> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| </actions> |
| <widgets> |
| <screenlet title="${uiLabelMap.OrderReportOpenOrderItems}"> |
| <include-form name="OpenOrderItemsReport" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| </widgets> |
| </section> |
| </screen> |
| |
| <screen name="OrderReportPurchasesByOrganization"> |
| <section> |
| <actions> |
| <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| </actions> |
| <widgets> |
| <screenlet title="${uiLabelMap.OrderReportPurchasesByOrganization}"> |
| <include-form name="PurchasesByOrganizationReport" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| </widgets> |
| </section> |
| </screen> |
| |
| <screen name="OrderReportPurchasesByProduct"> |
| <section> |
| <actions> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| </actions> |
| <widgets> |
| <screenlet title="${uiLabelMap.OrderReportPurchasesByProduct}"> |
| <include-form name="OrderPurchaseProductOptions" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| </widgets> |
| </section> |
| </screen> |
| |
| <screen name="OrderReportPurchasesByPaymentMethod"> |
| <section> |
| <actions> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| </actions> |
| <widgets> |
| <screenlet title="${uiLabelMap.OrderReportPurchasesByPaymentMethod}"> |
| <include-form name="OrderPurchasePaymentOptions" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| </widgets> |
| </section> |
| </screen> |
| |
| <screen name="OrderPurchaseReportPayment"> |
| <section> |
| <actions> |
| <set field="titleProperty" value="OrderReportPurchasesByPaymentMethod"/> |
| <set field="productStoreIds" from-field="parameters.productStoreId" type="List"/> |
| <set field="originFacilityIds" from-field="parameters.originFacilityId" type="List"/> |
| <set field="statusIds" from-field="parameters.statusId" type="List"/> |
| <set field="orderTypeId" from-field="parameters.orderTypeId" type="String"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/> |
| <entity-condition entity-name="OrderPurchasePaymentSummary" list="orderPurchasePaymentSummaryList"> |
| <condition-list combine="and"> |
| <condition-expr field-name="productStoreId" operator="in" from-field="productStoreIds" ignore-if-empty="true"/> |
| <condition-expr field-name="originFacilityId" operator="in" from-field="originFacilityIds" ignore-if-empty="true"/> |
| <condition-expr field-name="terminalId" operator="equals" from-field="parameters.terminalId" ignore-if-empty="true"/> |
| <condition-expr field-name="statusId" operator="in" from-field="statusIds" ignore-if-empty="true"/> |
| <condition-expr field-name="orderTypeId" operator="equals" from-field="orderTypeId"/> |
| <condition-expr field-name="orderDate" operator="greater-equals" from-field="parameters.fromOrderDate" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="less" from-field="parameters.thruOrderDate" ignore-if-empty="true"/> |
| </condition-list> |
| <select-field field-name="productStoreId"/> |
| <select-field field-name="originFacilityId"/> |
| <select-field field-name="terminalId"/> |
| <select-field field-name="statusId"/> |
| <select-field field-name="paymentMethodTypeId"/> |
| <select-field field-name="description"/> |
| <select-field field-name="maxAmount"/> |
| <order-by field-name="productStoreId"/> |
| <order-by field-name="originFacilityId"/> |
| <order-by field-name="terminalId"/> |
| <order-by field-name="paymentMethodTypeId"/> |
| </entity-condition> |
| </actions> |
| <widgets> |
| <platform-specific> |
| <xsl-fo><html-template location="component://order/template/reports/OrderPurchaseReportPayment.fo.ftl"/></xsl-fo> |
| </platform-specific> |
| </widgets> |
| </section> |
| </screen> |
| <screen name="OrderPurchaseReportProduct"> |
| <section> |
| <actions> |
| <set field="titleProperty" value="OrderReportPurchasesByProduct"/> |
| <set field="productStoreIds" from-field="parameters.productStoreId" type="List"/> |
| <set field="originFacilityIds" from-field="parameters.originFacilityId" type="List"/> |
| <set field="statusIds" from-field="parameters.statusId" type="List"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/> |
| <entity-condition entity-name="OrderPurchaseProductSummary" list="orderPurchaseProductSummaryList"> |
| <condition-list combine="and"> |
| <condition-expr field-name="productStoreId" operator="in" from-field="productStoreIds" ignore-if-empty="true"/> |
| <condition-expr field-name="orderTypeId" operator="equals" from-field="PURCHASE_ORDER" ignore-if-empty="true"/> |
| <condition-expr field-name="originFacilityId" operator="in" from-field="originFacilityIds" ignore-if-empty="true"/> |
| <condition-expr field-name="terminalId" operator="equals" from-field="parameters.terminalId" ignore-if-empty="true"/> |
| <condition-expr field-name="statusId" operator="in" from-field="statusIds" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="greater-equals" from-field="parameters.fromOrderDate" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="less" from-field="parameters.thruOrderDate" ignore-if-empty="true"/> |
| </condition-list> |
| <select-field field-name="productStoreId"/> |
| <select-field field-name="originFacilityId"/> |
| <select-field field-name="terminalId"/> |
| <select-field field-name="statusId"/> |
| <select-field field-name="productId"/> |
| <select-field field-name="internalName"/> |
| <select-field field-name="quantity"/> |
| <select-field field-name="cancelQuantity"/> |
| <order-by field-name="productStoreId"/> |
| <order-by field-name="originFacilityId"/> |
| <order-by field-name="terminalId"/> |
| <order-by field-name="productId"/> |
| </entity-condition> |
| </actions> |
| <widgets> |
| <platform-specific> |
| <xsl-fo><html-template location="component://order/template/reports/OrderPurchaseReportProduct.fo.ftl"/></xsl-fo> |
| </platform-specific> |
| </widgets> |
| </section> |
| </screen> |
| |
| <!-- generates the pdf for report of sales by store and customer, grouped by product --> |
| <screen name="SalesByStoreReport"> |
| <section> |
| <actions> |
| <set field="titleProperty" value="OrderReportSalesByStore"/> |
| <set field="toPartyId" from-field="parameters.toPartyId"/> |
| <set field="productStoreIds" from-field="parameters.productStoreId" type="List"/> |
| <set field="orderStatusIds" from-field="parameters.orderStatusId" type="List"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/> |
| |
| <entity-condition entity-name="OrderReportSalesGroupByProduct" list="productReportList"> |
| <condition-list combine="and"> |
| <!-- this can use the other view, so long as the filter is by SALES_ORDER and fromPartyId = ProductStore.payToPartyId if provided --> |
| <condition-expr field-name="productStoreId" operator="in" from-field="productStoreIds" ignore-if-empty="true"/> |
| <condition-expr field-name="partyId" operator="equals" from-field="parameters.toPartyId" ignore-if-empty="true"/> |
| <condition-expr field-name="roleTypeId" operator="equals" value="BILL_TO_CUSTOMER"/> |
| <condition-expr field-name="orderTypeId" operator="equals" value="SALES_ORDER"/> |
| <!-- possible bug: using from-field="parameters.orderStatusId" did not work for the following line --> |
| <condition-expr field-name="orderStatusId" operator="in" from-field="orderStatusIds" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="greater-equals" from-field="parameters.fromOrderDate" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="less" from-field="parameters.thruOrderDate" ignore-if-empty="true"/> |
| </condition-list> |
| <!-- note that we need to explicitly identify the fields to select, otherwise the query will include fields that can't logically be grouped --> |
| <select-field field-name="productStoreId"/> |
| <select-field field-name="storeName"/> |
| <select-field field-name="productId"/> |
| <select-field field-name="internalName"/> |
| <select-field field-name="quantityOrdered"/> |
| <select-field field-name="amount"/> |
| <order-by field-name="storeName"/> |
| <order-by field-name="internalName"/> |
| </entity-condition> |
| </actions> |
| <widgets> |
| <platform-specific> |
| <xsl-fo><html-template location="component://order/template/reports/SalesByStoreReport.fo.ftl"/></xsl-fo> |
| </platform-specific> |
| </widgets> |
| </section> |
| </screen> |
| |
| <!-- generates report of open order items --> |
| <screen name="OpenOrderItemsReport"> |
| <section> |
| <actions> |
| <set field="titleProperty" value="OrderReportOpenOrderItems"/> |
| <set field="headerItem" value="reports"/> |
| <set field="viewSize" from-field="parameters.VIEW_SIZE" default-value="20" type="Integer"/> |
| <set field="viewIndex" from-field="parameters.VIEW_INDEX" default-value="0" type="Integer"/> |
| <set field="fromOrderDate" from-field="parameters.fromOrderDate" type="Timestamp"/> |
| <set field="thruOrderDate" from-field="parameters.thruOrderDate" type="Timestamp"/> |
| <script location="component://order/src/main/groovy/org/apache/ofbiz/order/reports/OpenOrderItemsReport.groovy"/> |
| </actions> |
| <widgets> |
| <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}"> |
| <decorator-section name="body"> |
| <screenlet title="${uiLabelMap.OrderReportOpenOrderItems} - ${productStore.storeName}"> |
| <include-form name="OpenOrderItemsList" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| <screenlet title="${uiLabelMap.OrderReportOpenOrderItems}"> |
| <include-form name="OpenOrderItemsTotal" location="component://order/widget/ordermgr/ReportForms.xml"/> |
| </screenlet> |
| </decorator-section> |
| </decorator-screen> |
| </widgets> |
| </section> |
| </screen> |
| |
| <!-- generates the pdf for report of purchases by organization, grouped by product --> |
| <screen name="PurchasesByOrganizationReport"> |
| <section> |
| <actions> |
| <set field="titleProperty" value="OrderReportPurchasesByOrganization"/> |
| <set field="fromPartyId" from-field="parameters.fromPartyId"/> |
| <set field="partyIds" from-field="parameters.toPartyId" type="List"/> |
| <set field="orderStatusIds" from-field="parameters.orderStatusId" type="List"/> |
| <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/> |
| <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/> |
| <entity-condition entity-name="OrderReportPurchasesGroupByProduct" list="productReportList"> |
| <condition-list combine="and"> |
| <condition-expr field-name="toPartyId" operator="in" from-field="partyIds" ignore-if-empty="true"/> |
| <condition-expr field-name="toRoleTypeId" operator="equals" value="BILL_TO_CUSTOMER"/> |
| <condition-expr field-name="fromPartyId" operator="equals" from-field="parameters.fromPartyId" ignore-if-empty="true"/> |
| <condition-expr field-name="fromRoleTypeId" operator="equals" value="BILL_FROM_VENDOR"/> |
| <condition-expr field-name="orderTypeId" operator="equals" value="PURCHASE_ORDER"/> |
| <condition-expr field-name="orderStatusId" operator="in" from-field="orderStatusIds" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="greater-equals" from-field="parameters.fromOrderDate" ignore-if-empty="true"/> |
| <condition-expr field-name="orderDate" operator="less" from-field="parameters.thruOrderDate" ignore-if-empty="true"/> |
| </condition-list> |
| <!-- note that we need to explicitly identify the fields to select, otherwise the query will include fields that can't logically be grouped --> |
| <select-field field-name="productId"/> |
| <select-field field-name="internalName"/> |
| <select-field field-name="quantity"/> |
| <select-field field-name="unitPrice"/> |
| <order-by field-name="internalName"/> |
| </entity-condition> |
| </actions> |
| <widgets> |
| <platform-specific> |
| <xsl-fo><html-template location="component://order/template/reports/PurchasesByOrganizationReport.fo.ftl"/></xsl-fo> |
| </platform-specific> |
| </widgets> |
| </section> |
| </screen> |
| </screens> |