Improved: Moves plugins and creates the new structure (OFBIZ-9182)

git-svn-id: https://svn.apache.org/repos/asf/ofbiz/trunk@1782651 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/plugins/assetmaint/README.md b/plugins/assetmaint/README.md
deleted file mode 100644
index fce561e..0000000
--- a/plugins/assetmaint/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-<img src="http://ofbiz.apache.org/images/logo.png" alt="Apache OFBiz" />
-
-# Assetmaint component
-The asset management and maintenance application enables organisations to 
-maintain a register of all kinds of assets. It enables them to plan maintenance 
-and keep track of allocations and use. Integrates with the accounting module 
-regarding depreciation bookings.
-
-## more information
-For more information about this component visit the product page in the OFBiz 
-WIKI, which can be found at 
-https://cwiki.apache.org/confluence/display/OFBIZ/Asset+Management
-
-## issues
-JIRA issues related to this component can be found at
- https://issues.apache.org/jira/browse/OFBIZ/component/12311644
-
-## commits
-Committed revisions can be viewed at 
-http://svn.apache.org/viewvc/ofbiz/trunk/plugins/assetmaint/
\ No newline at end of file
diff --git a/plugins/assetmaint/config/AssetMaintUiLabels.xml b/plugins/assetmaint/config/AssetMaintUiLabels.xml
deleted file mode 100644
index d2c3fbe..0000000
--- a/plugins/assetmaint/config/AssetMaintUiLabels.xml
+++ /dev/null
@@ -1,199 +0,0 @@
-<?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.
--->
-<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
-    <property key="AssetMaintApplication">
-        <value xml:lang="de">Instandhaltungsanwendung</value>
-        <value xml:lang="en">Asset Maintenance Application</value>
-        <value xml:lang="fr">Application de maintenance des biens</value>
-        <value xml:lang="it">Applicazione manutenzione cespiti</value>
-        <value xml:lang="ja">資産管理業務</value>
-        <value xml:lang="th">บำรุงรักษาโปรแกรม</value>
-        <value xml:lang="vi">Ứng dụng Quản lý Tài sản</value>
-        <value xml:lang="zh">资产维护应用程序</value>
-        <value xml:lang="zh-TW">資產維護應用程式</value>
-    </property>
-    <property key="AssetMaintCompanyName">
-        <value xml:lang="de">OFBiz: Instandhaltung</value>
-        <value xml:lang="en">OFBiz: Asset Maintenance</value>
-        <value xml:lang="fr">OFBiz : maintenance des biens</value>
-        <value xml:lang="it">OFBiz: Manutenzione cespiti</value>
-        <value xml:lang="ja">OFBiz: 資産管理</value>
-        <value xml:lang="th">OFBiz: การบำรุงรักษา</value>
-        <value xml:lang="vi">OFBiz: Quản lý tài sản</value>
-        <value xml:lang="zh">OFBiz:资产维护</value>
-        <value xml:lang="zh-TW">OFBiz:資產維護</value>
-    </property>
-    <property key="AssetMaintCompanySubtitle">
-        <value xml:lang="en">Maintenance Department</value>
-        <value xml:lang="fr">Service de maintenance</value>
-        <value xml:lang="it">Servizio manutenzione</value>
-        <value xml:lang="ja">メンテナンス部門</value>
-        <value xml:lang="th">แผนกการดูแลรักษา</value>
-        <value xml:lang="vi">Phòng Quản lý tài sản</value>
-        <value xml:lang="zh">维护部门</value>
-        <value xml:lang="zh-TW">維護部門</value>
-    </property>
-    <property key="AssetMaintInvalidPartProductIdError">
-        <value xml:lang="en">"Part Id ${productId} provided is invalid please check and try again"</value>
-        <value xml:lang="fr">"La réf. de piéce ${productId} fournie n'est pas valable, SVP recommencez"</value>
-        <value xml:lang="it">"Il Codice parte ${productId} fornito non è valido. Per favore controllare e riprovare"</value>
-        <value xml:lang="ja">"部品Id ${productId} は正しくありません。確認して再度実行してください"</value>
-        <value xml:lang="th">รหัสส่วน ${productId} ใช้ไม่ได้ กรุณาตรวจสอบและลองอีกครั้ง</value>
-        <value xml:lang="vi">"Tài sản Id ${productId} không hợp lệ, bạn hãy kiểm tra và thử lại"</value>
-        <value xml:lang="zh">"提供的零部件标识${productId}无效,请检查重试"</value>
-        <value xml:lang="zh-TW">"提供的零部件識別${productId}無效,請檢查重試"</value>
-    </property>
-    <property key="AssetMaintItemIssuance">
-        <value xml:lang="en">Parts</value>
-        <value xml:lang="fr">Pièces</value>
-        <value xml:lang="it">Parti</value>
-        <value xml:lang="ja">部品</value>
-        <value xml:lang="th">ส่วนหนึ่ง</value>
-        <value xml:lang="vi">Tài sản</value>
-        <value xml:lang="zh">零部件</value>
-        <value xml:lang="zh-TW">零部件</value>
-    </property>
-    <property key="AssetMaintLowPartInventoryError">
-        <value xml:lang="en">"Available Inventory level for ${productId} is ${quantity}"</value>
-        <value xml:lang="fr">"Le niveau de stock disponible pour ${productId} est ${quantity"</value>
-        <value xml:lang="it">"La quantità disponibile a magazzino per ${productId} è ${quantity}"</value>
-        <value xml:lang="ja">"${productId} の有効な在庫レベルは ${quantity} です"</value>
-        <value xml:lang="th">รดับสินค้าคงเหลือของ ${productId} คือ ${quantity}</value>
-        <value xml:lang="vi">"Mức độ sẵn có trong kho của Sản phẩm ${productId} với số lượng là ${quantity}"</value>
-        <value xml:lang="zh">"${productId}的有效的库存级别是${quantity}"</value>
-        <value xml:lang="zh-TW">"${productId}的有效的庫存級別是${quantity}"</value>
-    </property>
-    <property key="AssetMaintManager">
-        <value xml:lang="de">Instandhaltungsanwendung</value>
-        <value xml:lang="en">Asset Maintenance</value>
-        <value xml:lang="fr">Application de maintenance des biens</value>
-        <value xml:lang="it">Manutenzione cespiti</value>
-        <value xml:lang="ja">資産管理</value>
-        <value xml:lang="th">บำรุงรักษาโปรแกรม</value>
-        <value xml:lang="vi">Quản lý Tài sản</value>
-        <value xml:lang="zh">资产维护应用程序</value>
-        <value xml:lang="zh-TW">資產維護應用程式</value>
-    </property>
-    <property key="AssetMaintParentWorkEffort">
-        <value xml:lang="en">Parent Work Effort</value>
-        <value xml:lang="fr">"Tâche parente"</value>
-        <value xml:lang="it">Impegno di lavoro padre</value>
-        <value xml:lang="ja">上位(親)の作業成果</value>
-        <value xml:lang="vi">Lượng giá nguồn lực cấp trên</value>
-        <value xml:lang="zh">上级人工服务</value>
-        <value xml:lang="zh-TW">上級工作投入</value>
-    </property>
-    <property key="AssetMaintPartId">
-        <value xml:lang="en">Part Id</value>
-        <value xml:lang="fr">Réf. de la pièce</value>
-        <value xml:lang="it">Codice parte</value>
-        <value xml:lang="ja">部品ID</value>
-        <value xml:lang="vi">Id Tài sản</value>
-        <value xml:lang="zh">零部件标识</value>
-        <value xml:lang="zh-TW">零部件識別</value>
-    </property>
-    <property key="AssetMaintProblemCallingService">
-        <value xml:lang="en">Problem in calling service issueInventoryItemToFixedAssetMaint</value>
-        <value xml:lang="it">Problema durante la chiamata al servizio issueInventoryItemToFixedAssetMaint</value>
-        <value xml:lang="ja">issueInventoryItemToFixedAssetMaintサービスの呼び出し時エラー</value>
-        <value xml:lang="vi">Lỗi khi thực hiện dịch vụ issueInventoryItemToFixedAssetMaint</value>
-        <value xml:lang="zh">调用发送库存明细到固定资产维护(issueInventoryItemToFixedAssetMaint)服务时出错</value>
-        <value xml:lang="zh-TW">呼叫發送庫存細項到固定資產維護(issueInventoryItemToFixedAssetMaint)服務時出錯</value>
-    </property>
-    <property key="AssetMaintProblemGettingInventoryLevel">
-        <value xml:lang="en">Problem in getting Inventory level for </value>
-        <value xml:lang="it">Problema ad ottenere il livello di inventario per </value>
-        <value xml:lang="ja">在庫レベルの取得時にエラー: </value>
-        <value xml:lang="vi">Lỗi khi lấy Mức độ cung ứng (kho) của</value>
-        <value xml:lang="zh">获取库存水平时出错: </value>
-        <value xml:lang="zh-TW">獲取庫存水準時出錯: </value>
-    </property>
-    <property key="AssetMaintProductMaint">
-        <value xml:lang="en">Product Maint</value>
-        <value xml:lang="fr">Maintenance</value>
-        <value xml:lang="it">Manutenzione</value>
-        <value xml:lang="ja">製品メンテナンス</value>
-        <value xml:lang="vi">Quản trị Sản phẩm</value>
-        <value xml:lang="zh">产品维护</value>
-        <value xml:lang="zh-TW">產品維護</value>
-    </property>
-    <property key="AssetMaintViewPermissionError">
-        <value xml:lang="en">View Permission Error</value>
-        <value xml:lang="fr">Afficher l'erreur d'autorisation</value>
-        <value xml:lang="it">Mostra errore di autorizzazione</value>
-        <value xml:lang="ja">参照権限エラー</value>
-        <value xml:lang="th">แสดงข้อผิดพลาดในการอนุญาต</value>
-        <value xml:lang="vi">Bạn chưa có quyền Xem</value>
-        <value xml:lang="zh">浏览权限错误</value>
-        <value xml:lang="zh-TW">流覽許可權錯誤</value>
-    </property>
-    <property key="PageTitleAddItemIssuance">
-        <value xml:lang="en">Add Item Issuance</value>
-        <value xml:lang="fr">Ajouter une émission d'article</value>
-        <value xml:lang="it">Aggiungi prelievo articolo</value>
-        <value xml:lang="ja">アイテム発行追加</value>
-        <value xml:lang="th">เพิ่มรายการที่ออกมา</value>
-        <value xml:lang="vi">Thêm hạng mục ban hành</value>
-        <value xml:lang="zh">添加交付明细</value>
-        <value xml:lang="zh-TW">增加交付細項</value>
-    </property>
-    <property key="PageTitleChildWorkEfforts">
-        <value xml:lang="en">Task Breakdown</value>
-        <value xml:lang="fr">Décomposition de tâche</value>
-        <value xml:lang="it">Scoposizione compito</value>
-        <value xml:lang="ja">タスクブレークダウン</value>
-        <value xml:lang="th">งานหยุด</value>
-        <value xml:lang="vi">Phân nhỏ Tác vụ</value>
-        <value xml:lang="zh">任务分解</value>
-        <value xml:lang="zh-TW">任務分解</value>
-    </property>
-    <property key="PageTitleFindFixedAssetMaints">
-        <value xml:lang="de">Verwaltungen finden</value>
-        <value xml:lang="en">Find Maintenances</value>
-        <value xml:lang="fr">Chercher des maintenances</value>
-        <value xml:lang="it">Ricerca manutenzioni</value>
-        <value xml:lang="ja">メンテナンスを検索</value>
-        <value xml:lang="th">ค้นหาการบำรุงรักษา</value>
-        <value xml:lang="vi">Tìm Bảo trì</value>
-        <value xml:lang="zh">查找维修保养</value>
-        <value xml:lang="zh-TW">尋找維修保養</value>
-    </property>
-    <property key="PageTitleFindFixedAssets">
-        <value xml:lang="en">Find Equipments</value>
-        <value xml:lang="fr">Chercher des équipements</value>
-        <value xml:lang="it">Ricerca cespite</value>
-        <value xml:lang="ja">設備を検索</value>
-        <value xml:lang="th">ค้นหาเครื่องมือ</value>
-        <value xml:lang="vi">Tìm Thiết bị</value>
-        <value xml:lang="zh">查找设备</value>
-        <value xml:lang="zh-TW">尋找設備</value>
-    </property>
-    <property key="PageTitleListItemIssuance">
-        <value xml:lang="en">Parts List</value>
-        <value xml:lang="fr">Liste des pièces</value>
-        <value xml:lang="it">Lista parti</value>
-        <value xml:lang="ja">部品一覧</value>
-        <value xml:lang="th">ส่วนหนึ่งของรายการ</value>
-        <value xml:lang="vi">Danh sách Tài sản</value>
-        <value xml:lang="zh">零部件列表</value>
-        <value xml:lang="zh-TW">零部件清單</value>
-    </property>
-</resource>
diff --git a/plugins/assetmaint/config/IsMgrUiLabels.xml b/plugins/assetmaint/config/IsMgrUiLabels.xml
deleted file mode 100644
index 9b0a4af..0000000
--- a/plugins/assetmaint/config/IsMgrUiLabels.xml
+++ /dev/null
@@ -1,157 +0,0 @@
-<?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.
--->
-<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
-    <property key="IsMgrApplication">
-        <value xml:lang="en">Information Systems Management Application</value>
-        <value xml:lang="fr">Gestion du parc informatique</value>
-        <value xml:lang="it">Applicazione gestione sistemi informativi</value>
-        <value xml:lang="ja">情報システム管理</value>
-        <value xml:lang="vi">Ứng dụng Quản lý hệ thống thông tin</value>
-        <value xml:lang="zh">信息系统管理应用程序</value>
-        <value xml:lang="zh-TW">資訊系統管理應用程式</value>
-    </property>
-    <property key="IsMgrCompanyName">
-        <value xml:lang="en">OFBiz: Is Manager</value>
-        <value xml:lang="fr">OFBiz: application de gestion du parc informatique</value>
-        <value xml:lang="it">OFBiz: Gestione sistemi informativi</value>
-        <value xml:lang="ja">OFBiz: 情報システム管理者</value>
-        <value xml:lang="vi">OFBiz: Là Quản lý</value>
-        <value xml:lang="zh">OFBiz: 信息系统管理</value>
-        <value xml:lang="zh-TW">OFBiz: 資訊系統管理</value>
-    </property>
-    <property key="IsMgrCompanySubtitle">
-        <value xml:lang="en">Information Systems Department</value>
-        <value xml:lang="fr">Département du système d'information</value>
-        <value xml:lang="it">Dipartimento sistemi informativi</value>
-        <value xml:lang="ja">情報システム部門</value>
-        <value xml:lang="vi">Phòng/Ban</value>
-        <value xml:lang="zh">信息系统部门</value>
-        <value xml:lang="zh-TW">資訊系統部門</value>
-    </property>
-    <property key="IsMgrComputerHardware">
-        <value xml:lang="en">Hardware</value>
-        <value xml:lang="fr">Matériel informatique</value>
-        <value xml:lang="it">Hardware</value>
-        <value xml:lang="ja">ハードウェア</value>
-        <value xml:lang="vi">Phần cứng</value>
-        <value xml:lang="zh">硬件</value>
-        <value xml:lang="zh-TW">硬體</value>
-    </property>
-    <property key="IsMgrComputerSoftware">
-        <value xml:lang="en">Software</value>
-        <value xml:lang="fr">Logiciels</value>
-        <value xml:lang="it">Software</value>
-        <value xml:lang="ja">ソフトウェア</value>
-        <value xml:lang="vi">Phần mềm</value>
-        <value xml:lang="zh">软件</value>
-        <value xml:lang="zh-TW">軟體</value>
-    </property>
-    <property key="IsMgrFindComputerHardware">
-        <value xml:lang="en">Find Hardware</value>
-        <value xml:lang="fr">Rechercher du matériel informatique</value>
-        <value xml:lang="it">Ricerca hardware</value>
-        <value xml:lang="ja">ハードウェアを検索</value>
-        <value xml:lang="vi">Tìm phần cứng</value>
-        <value xml:lang="zh">查找硬件</value>
-        <value xml:lang="zh-TW">尋找硬體</value>
-    </property>
-    <property key="IsMgrFindComputerSoftware">
-        <value xml:lang="en">Find Software</value>
-        <value xml:lang="fr">Rechercher du logiciel</value>
-        <value xml:lang="it">Ricerca software</value>
-        <value xml:lang="ja">ソフトウェアを検索</value>
-        <value xml:lang="vi">Tìm phần mềm</value>
-        <value xml:lang="zh">查找软件</value>
-        <value xml:lang="zh-TW">尋找軟體</value>
-    </property>
-    <property key="IsMgrHardwareAccessories">
-        <value xml:lang="en">Accessories</value>
-        <value xml:lang="fr">Accessoires</value>
-        <value xml:lang="it">Accessori</value>
-        <value xml:lang="ja">アクセサリ</value>
-        <value xml:lang="vi">Ngoại vi</value>
-        <value xml:lang="zh">零配件</value>
-        <value xml:lang="zh-TW">零配件</value>
-    </property>
-    <property key="IsMgrInstalledSoftware">
-        <value xml:lang="en">Installed Software</value>
-        <value xml:lang="fr">Logiciels installés</value>
-        <value xml:lang="it">Software installati</value>
-        <value xml:lang="ja">導入済ソフトウェア</value>
-        <value xml:lang="vi">Phần mềm đã cài</value>
-        <value xml:lang="zh">已安装的软件</value>
-        <value xml:lang="zh-TW">已安裝的軟體</value>
-    </property>
-    <property key="IsMgrNewComputerHardware">
-        <value xml:lang="en">New Hardware</value>
-        <value xml:lang="fr">Nouveau matériel informatique</value>
-        <value xml:lang="it">Nuovo hardware</value>
-        <value xml:lang="ja">新規ハードウェア</value>
-        <value xml:lang="vi">Phần cứng mới</value>
-        <value xml:lang="zh">新硬件</value>
-        <value xml:lang="zh-TW">新硬體</value>
-    </property>
-    <property key="IsMgrNewComputerSoftware">
-        <value xml:lang="en">New Software</value>
-        <value xml:lang="fr">Nouveau logiciel</value>
-        <value xml:lang="it">Nuovo software</value>
-        <value xml:lang="ja">新規ソフトウェア</value>
-        <value xml:lang="vi">Phần mềm mới</value>
-        <value xml:lang="zh">新软件</value>
-        <value xml:lang="zh-TW">新軟體</value>
-    </property>
-    <property key="PageTitleEditComputerHardware">
-        <value xml:lang="en">Edit Hardware</value>
-        <value xml:lang="fr">Modifier le matériel informatique</value>
-        <value xml:lang="it">Aggiorna hardware</value>
-        <value xml:lang="ja">ハードウェアを編集</value>
-        <value xml:lang="vi">Cập nhật Phần cứng</value>
-        <value xml:lang="zh">编辑硬件</value>
-        <value xml:lang="zh-TW">編輯硬體</value>
-    </property>
-    <property key="PageTitleEditComputerSoftware">
-        <value xml:lang="en">Edit Software</value>
-        <value xml:lang="fr">Modifier le logiciel</value>
-        <value xml:lang="it">Aggiorna software</value>
-        <value xml:lang="ja">ソフトウェアを編集</value>
-        <value xml:lang="vi">Cập nhật Phần mềm</value>
-        <value xml:lang="zh">编辑软件</value>
-        <value xml:lang="zh-TW">編輯軟體</value>
-    </property>
-    <property key="PageTitleLookupComputerHardware">
-        <value xml:lang="en">Lookup Computer Hardware</value>
-        <value xml:lang="fr">Rechercher du matériel informatique</value>
-        <value xml:lang="it">Ricerca hardware per computer</value>
-        <value xml:lang="ja">コンピュータハードウェアを検索</value>
-        <value xml:lang="vi">Tìm phần cứng máy tính</value>
-        <value xml:lang="zh">查找计算机硬件</value>
-        <value xml:lang="zh-TW">尋找電腦硬體</value>
-    </property>
-    <property key="PageTitleLookupComputerSoftware">
-        <value xml:lang="en">Lookup Computer Software</value>
-        <value xml:lang="fr">Consultation de logiciel(s)</value>
-        <value xml:lang="it">Ricerca software per computer</value>
-        <value xml:lang="ja">コンピュータソフトウェアを検索</value>
-        <value xml:lang="vi">Tìm phần mềm máy tính</value>
-        <value xml:lang="zh">查找计算机软件</value>
-        <value xml:lang="zh-TW">尋找電腦軟體</value>
-    </property>
-</resource>
diff --git a/plugins/assetmaint/data/AssetMaintSecurityGroupDemoData.xml b/plugins/assetmaint/data/AssetMaintSecurityGroupDemoData.xml
deleted file mode 100644
index 58b3b52..0000000
--- a/plugins/assetmaint/data/AssetMaintSecurityGroupDemoData.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <!-- Asset Maintenance security -->
-    <SecurityGroup description="Asset Maintenance Admin group, has all maintenance permissions." groupId="ASSETMAINTADMIN"/>
-    <SecurityGroup description="Asset Maintenance Technician group, has view and update." groupId="ASSETMAINTTECH"/>
-
-    <SecurityGroupPermission groupId="ASSETMAINTADMIN" permissionId="ASSETMAINT_ADMIN"/>
-
-    <SecurityGroupPermission groupId="ASSETMAINTTECH" permissionId="ASSETMAINT_VIEW"/>
-    <SecurityGroupPermission groupId="ASSETMAINTTECH" permissionId="ASSETMAINT_UPDATE"/>
-
-    <SecurityGroupPermission groupId="FULLADMIN" permissionId="ASSETMAINT_ADMIN"/>
-</entity-engine-xml>
diff --git a/plugins/assetmaint/data/AssetMaintSecurityPermissionSeedData.xml b/plugins/assetmaint/data/AssetMaintSecurityPermissionSeedData.xml
deleted file mode 100644
index fc12c2e..0000000
--- a/plugins/assetmaint/data/AssetMaintSecurityPermissionSeedData.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <!-- Asset Maintenance security -->
-    <SecurityPermission description="ALL Asset Maintenance operations." permissionId="ASSETMAINT_ADMIN"/>
-    <SecurityPermission description="Asset Maintenance View permission." permissionId="ASSETMAINT_VIEW"/>
-    <SecurityPermission description="Asset Maintenance Create operations." permissionId="ASSETMAINT_CREATE"/>
-    <SecurityPermission description="Asset Maintenance Update operations." permissionId="ASSETMAINT_UPDATE"/>
-    <SecurityPermission description="Asset Maintenance Delete operations." permissionId="ASSETMAINT_DELETE"/>
-
-    <!-- Super Security group -->
-    <SecurityGroupPermission groupId="SUPER" permissionId="ASSETMAINT_ADMIN"/>
-</entity-engine-xml>
diff --git a/plugins/assetmaint/data/AssetMaintSeedData.xml b/plugins/assetmaint/data/AssetMaintSeedData.xml
deleted file mode 100644
index 58393d4..0000000
--- a/plugins/assetmaint/data/AssetMaintSeedData.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-
-</entity-engine-xml>
diff --git a/plugins/assetmaint/entitydef/entitymodel.xml b/plugins/assetmaint/entitydef/entitymodel.xml
deleted file mode 100644
index 47dcffe..0000000
--- a/plugins/assetmaint/entitydef/entitymodel.xml
+++ /dev/null
@@ -1,173 +0,0 @@
-<?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>Entity of an Apache OFBiz Component</title>
-    <description>None</description>
-    <version>1.0</version>
-
-    <view-entity entity-name="FixedAssetAndIdent" package-name="org.apache.ofbiz.plugins.assetmaint"
-        title="FixedAsset and FixedAssetIdent View Entity">
-        <member-entity entity-alias="FA" entity-name="FixedAsset"/>
-        <member-entity entity-alias="FAI" entity-name="FixedAssetIdent"/>
-        <alias-all entity-alias="FA"/>
-        <alias-all entity-alias="FAI"/>
-        <view-link entity-alias="FA" rel-entity-alias="FAI">
-            <key-map field-name="fixedAssetId"/>
-        </view-link>
-    </view-entity>
-    <view-entity entity-name="FixedAssetMaintWorkEffortAndPartyAssignment"
-        package-name="org.apache.ofbiz.plugins.assetmaint"
-        title="View of FixedAssetMaint and WorkEffort and WorkEffortPartyAssignment">
-        <member-entity entity-alias="FAM" entity-name="FixedAssetMaint"/>
-        <member-entity entity-alias="WE" entity-name="WorkEffort"/>
-        <member-entity entity-alias="WEPA" entity-name="WorkEffortPartyAssignment"/>
-        <alias-all entity-alias="FAM"/>
-        <alias-all entity-alias="WE">
-            <exclude field="fixedAssetId"/>
-        </alias-all>
-        <alias entity-alias="WEPA" name="workEffortId"/>
-        <alias entity-alias="WEPA" name="partyId"/>
-        <alias entity-alias="WEPA" name="roleTypeId"/>
-        <alias entity-alias="WEPA" name="fromDate"/>
-        <alias entity-alias="WEPA" name="thruDate"/>
-        <view-link entity-alias="FAM" rel-entity-alias="WE">
-            <key-map field-name="scheduleWorkEffortId" rel-field-name="workEffortId"/>
-        </view-link>
-        <view-link entity-alias="WE" rel-entity-alias="WEPA">
-            <key-map field-name="workEffortId"/>
-        </view-link>
-        <relation type="one"  rel-entity-name="WorkEffort">
-            <key-map field-name="scheduleWorkEffortId" rel-field-name="workEffortId"/>
-        </relation>
-        <relation type="many" rel-entity-name="WorkEffortPartyAssignment">
-            <key-map field-name="workEffortId"/>
-        </relation>
-    </view-entity>
-    <view-entity entity-name="FixedAssetMaintWorkEffortAndTimeEntry"
-        package-name="org.apache.ofbiz.plugins.assetmaint"
-        title="View of FixedAssetMaint and WorkEffort and TimeEntry">
-        <member-entity entity-alias="FAM" entity-name="FixedAssetMaint"/>
-        <member-entity entity-alias="WE" entity-name="WorkEffort"/>
-        <member-entity entity-alias="TE" entity-name="TimeEntry"/>
-        <alias-all entity-alias="FAM"/>
-        <alias-all entity-alias="WE">
-            <exclude field="fixedAssetId"/>
-        </alias-all>
-        <alias-all entity-alias="TE"/>
-        <view-link entity-alias="FAM" rel-entity-alias="WE">
-            <key-map field-name="scheduleWorkEffortId" rel-field-name="workEffortId"/>
-        </view-link>
-        <view-link entity-alias="WE" rel-entity-alias="TE">
-            <key-map field-name="workEffortId"/>
-        </view-link>
-        <relation type="one" rel-entity-name="WorkEffort">
-            <key-map field-name="scheduleWorkEffortId" rel-field-name="workEffortId"/>
-        </relation>
-        <relation type="many" rel-entity-name="TimeEntry">
-            <key-map field-name="workEffortId"/>
-        </relation>
-    </view-entity>
-    <view-entity entity-name="ItemIssuanceInventoryItemAndProduct"
-        package-name="org.apache.ofbiz.plugins.assetmaint"
-        title="View of Item Issuance,Inventory Item and Product">
-        <member-entity entity-alias="IMIE" entity-name="ItemIssuance"/>
-        <member-entity entity-alias="IYIM" entity-name="InventoryItem"/>
-        <member-entity entity-alias="PT" entity-name="Product"/>
-        <alias-all entity-alias="IMIE"/>
-        <alias-all entity-alias="IYIM">
-            <exclude field="facilityId"/>
-            <exclude field="fixedAssetId"/>
-        </alias-all>
-        <alias entity-alias="PT" name="productId"/>
-        <alias entity-alias="PT" name="productTypeId"/>
-        <alias entity-alias="PT" name="primaryProductCategoryId"/>
-        <alias entity-alias="PT" name="manufacturerPartyId"/>
-        <alias entity-alias="PT" name="facilityId"/>
-        <alias entity-alias="PT" name="introductionDate"/>
-        <alias entity-alias="PT" name="internalName"/>
-        <alias entity-alias="PT" name="description"/>
-        <alias entity-alias="PT" name="requireInventory"/>
-        <alias entity-alias="PT" name="taxable"/>
-        <alias entity-alias="PT" name="chargeShipping"/>
-        <alias entity-alias="PT" name="isVirtual"/>
-        <alias entity-alias="PT" name="isVariant"/>
-        <alias entity-alias="PT" name="createdDate"/>
-        <alias entity-alias="PT" name="createdByUserLogin"/>
-        <alias entity-alias="IYIM" name="inventoryItemFixedAssetId" field="fixedAssetId"/>
-        <view-link entity-alias="IMIE" rel-entity-alias="IYIM">
-            <key-map field-name="inventoryItemId"/>
-        </view-link>
-        <view-link entity-alias="IYIM" rel-entity-alias="PT">
-            <key-map field-name="productId"/>
-        </view-link>
-        <relation type="one" rel-entity-name="InventoryItem">
-            <key-map field-name="inventoryItemId"/>
-        </relation>
-        <relation type="one" rel-entity-name="Product">
-            <key-map field-name="productId"/>
-        </relation>
-    </view-entity>
-    <view-entity entity-name="ProductInventoryItemAndItemIssuance"
-        package-name="org.apache.ofbiz.plugins.assetmaint"
-        title="View of Product,Inventory Item and ItemIssuance">
-        <member-entity entity-alias="PT" entity-name="Product"/>
-        <member-entity entity-alias="IYIM" entity-name="InventoryItem"/>
-        <member-entity entity-alias="IMIE" entity-name="ItemIssuance"/>
-        <alias-all entity-alias="IMIE"/>
-        <alias-all entity-alias="IYIM">
-            <exclude field="facilityId"/>
-            <exclude field="fixedAssetId"/>
-        </alias-all>
-        <alias entity-alias="PT" name="productId"/>
-        <alias entity-alias="PT" name="productTypeId"/>
-        <alias entity-alias="PT" name="primaryProductCategoryId"/>
-        <alias entity-alias="PT" name="manufacturerPartyId"/>
-        <alias entity-alias="PT" name="facilityId"/>
-        <alias entity-alias="PT" name="introductionDate"/>
-        <alias entity-alias="PT" name="internalName"/>
-        <alias entity-alias="PT" name="description"/>
-        <alias entity-alias="PT" name="requireInventory"/>
-        <alias entity-alias="PT" name="taxable"/>
-        <alias entity-alias="PT" name="chargeShipping"/>
-        <alias entity-alias="PT" name="isVirtual"/>
-        <alias entity-alias="PT" name="isVariant"/>
-        <alias entity-alias="PT" name="createdDate"/>
-        <alias entity-alias="PT" name="createdByUserLogin"/>
-        <alias entity-alias="IYIM" name="inventoryItemFixedAssetId" field="fixedAssetId"/>
-        <view-link entity-alias="PT" rel-entity-alias="IYIM">
-            <key-map field-name="productId"/>
-        </view-link>
-        <view-link entity-alias="IYIM" rel-entity-alias="IMIE">
-            <key-map field-name="inventoryItemId"/>
-        </view-link>
-        <relation type="many" rel-entity-name="InventoryItem">
-            <key-map field-name="productId"/>
-        </relation>
-        <relation type="many" rel-entity-name="ItemIssuance">
-            <key-map field-name="inventoryItemId"/>
-        </relation>
-    </view-entity>
-</entitymodel>
\ No newline at end of file
diff --git a/plugins/assetmaint/groovyScripts/assetmaint/EditMaint.groovy b/plugins/assetmaint/groovyScripts/assetmaint/EditMaint.groovy
deleted file mode 100644
index 0357494..0000000
--- a/plugins/assetmaint/groovyScripts/assetmaint/EditMaint.groovy
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.
- */
-
-// This is a small script to set things up when the EditFixedAssetMaint
-// screen is called from one of the WorkEffort calendar screens.
-// The URL coming from WorkEffort does not contain the maintHistSeqId parameter,
-// so this script will look it up using the workEffortId parameter.
-maintHistSeqId = parameters.maintHistSeqId
-workEffortId = parameters.workEffortId
-
-if (!maintHistSeqId && workEffortId) {
-    fixedAssetMaint = from("FixedAssetMaint").where("scheduleWorkEffortId", workEffortId).queryFirst()
-    if (fixedAssetMaint) {
-        parameters.fixedAssetId = fixedAssetMaint.fixedAssetId
-        parameters.maintHistSeqId = fixedAssetMaint.maintHistSeqId
-    }
-}
diff --git a/plugins/assetmaint/groovyScripts/assetmaint/PrintFixedAssetMaint.groovy b/plugins/assetmaint/groovyScripts/assetmaint/PrintFixedAssetMaint.groovy
deleted file mode 100644
index a637857..0000000
--- a/plugins/assetmaint/groovyScripts/assetmaint/PrintFixedAssetMaint.groovy
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
-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.
-**/
-
-facility = fixedAsset.getRelatedOne("LocatedAtFacility", false)
-context.locatedAtFacility = facility
-
-fixedAssetIdents = from("FixedAssetIdent").where("fixedAssetId", fixedAssetId).queryList()
-fixedAssetIdentValue = ""
-if (fixedAssetIdents) {
-    fixedAssetIdents.each { ident ->
-        fixedAssetIdentValue = fixedAssetIdentValue + " " + ident.idValue
-    }
-}
-context.fixedAssetIdentValue = fixedAssetIdentValue
-
-status = fixedAssetMaint.getRelatedOne("StatusItem", false)
-if (status) {
-    context.statusItemDesc = status.description
-}
-//context.put("fixedAssetMaint",fixedAssetMaint)
-
-intervalUom = fixedAssetMaint.getRelatedOne("IntervalUom", false)
-if (intervalUom) {
-    context.intervalUomDesc = intervalUom.description
-}
-
-instanceOfProductId = fixedAsset.instanceOfProductId
-productMaintSeqId = fixedAssetMaint.productMaintSeqId
-if (productMaintSeqId) {
-    productMaint = from("ProductMaint").where("productId", instanceOfProductId, "productMaintSeqId", productMaintSeqId).queryOne()
-    context.productMaintName = productMaint.maintName
-}
-
-productMaintTypeId = fixedAssetMaint.productMaintTypeId
-if (productMaintTypeId) {
-    productMaintType = from("ProductMaintType").where("productMaintTypeId", productMaintTypeId).queryOne()
-    if (productMaintType) {
-        productMaintTypeDesc = productMaintType.description
-        context.productMaintTypeDesc = productMaintTypeDesc
-    }
-}
-
-intervalMeterTypeId = fixedAssetMaint.intervalMeterTypeId
-productMeterTypeDesc = ""
-if (intervalMeterTypeId) {
-    productMeterType = from("ProductMeterType").where("productMeterTypeId", intervalMeterTypeId).queryOne()
-    productMeterTypeDesc  = productMeterType.description
-}
-context.productMeterTypeDesc = productMeterTypeDesc
-
-scheduleWorkEffort = fixedAssetMaint.getRelatedOne("ScheduleWorkEffort", false)
-context.scheduleWorkEffort = scheduleWorkEffort
diff --git a/plugins/assetmaint/groovyScripts/workeffort/EditWorkEfforts.groovy b/plugins/assetmaint/groovyScripts/workeffort/EditWorkEfforts.groovy
deleted file mode 100644
index fa8cbfd..0000000
--- a/plugins/assetmaint/groovyScripts/workeffort/EditWorkEfforts.groovy
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
-    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.
-*/
-
-maintHistSeqId = context.maintHistSeqId
-fixedAssetId = context.fixedAssetId
-workEffortId = context.workEffortId
-
-if (!maintHistSeqId) {
-    maintHistSeqId = parameters.maintHistSeqId
-}
-if (!fixedAssetId) {
-    fixedAssetId = parameters.fixedAssetId
-}
-if (!workEffortId) {
-    workEffortId = parameters.workEffortId
-}
-
-fixedAssetMaint = null
-workEffort = null
-fixedAsset = null
-rootWorkEffortId = null
-
-if (workEffortId) {
-    workEffort = from("WorkEffort").where("workEffortId", workEffortId).queryOne()
-    if (workEffort) {
-        if (!fixedAssetId) {
-            fixedAssetId = workEffort.fixedAssetId
-        }
-        // If this is a child workeffort, locate the "root" workeffort
-        parentWorkEffort = from("WorkEffortAssoc").where("workEffortIdTo", workEffortId).queryFirst()
-        while (parentWorkEffort) {
-            rootWorkEffortId = parentWorkEffort.workEffortIdFrom
-            parentWorkEffort = from("WorkEffortAssoc").where("workEffortIdTo", rootWorkEffortId).queryFirst()
-        }
-    }
-}
-
-if (!rootWorkEffortId) {
-    rootWorkEffortId = workEffortId
-}
-
-if (rootWorkEffortId) {
-    fixedAssetMaint = from("FixedAssetMaint").where("scheduleWorkEffortId", rootWorkEffortId).queryFirst()
-    if (fixedAssetMaint) {
-        maintHistSeqId = fixedAssetMaint.maintHistSeqId
-        if (!fixedAssetId) {
-            fixedAssetId = fixedAssetMaint.fixedAssetId
-        }
-    }
-}
-
-if (fixedAssetId) {
-    fixedAsset = from("FixedAsset").where("fixedAssetId", fixedAssetId).queryOne()
-}
-
-context.fixedAssetMaint = fixedAssetMaint
-context.workEffort = workEffort
-context.fixedAsset = fixedAsset
-context.maintHistSeqId = maintHistSeqId
-context.fixedAssetId = fixedAssetId
-context.workEffortId = workEffortId
diff --git a/plugins/assetmaint/minilang/FixedAssetMaintServices.xml b/plugins/assetmaint/minilang/FixedAssetMaintServices.xml
deleted file mode 100644
index 43b05a1..0000000
--- a/plugins/assetmaint/minilang/FixedAssetMaintServices.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?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="createFixedAssetMaintUpdateWorkEffort" login-required="true"
-        short-description="Create FixedAssetMaint and Update Schedule information in WorkEffort">
-        <set-service-fields map="parameters" service-name="createFixedAssetMaint" to-map="createFixedAssetMaintCtx"/>
-        <call-service service-name="createFixedAssetMaint" in-map-name="createFixedAssetMaintCtx">
-            <result-to-field result-name="maintHistSeqId" field="findAssetMaintLookup.maintHistSeqId"/>
-            <result-to-result result-name="maintHistSeqId"/>
-        </call-service>
-        <check-errors/>
-        <set from-field="parameters.fixedAssetId" field="findAssetMaintLookup.fixedAssetId"/>
-        <find-by-primary-key entity-name="FixedAssetMaint" map="findAssetMaintLookup" value-field="findAssetMaint"/>
-        <set from-field="findAssetMaint.scheduleWorkEffortId" field="updateWorkEffortCtx.workEffortId"/>
-        <set-service-fields map="parameters" service-name="updateWorkEffort" to-map="updateWorkEffortCtx"/>
-        <!-- Maintenance WorkEffort entity -->
-        <call-service service-name="updateWorkEffort" in-map-name="updateWorkEffortCtx"/>
-    </simple-method>
-
-    <simple-method method-name="updateFixedAssetMaintAndWorkEffort" login-required="true"
-        short-description="Update FixedAssetMaint and Schedule information in WorkEffort">
-        <set-service-fields map="parameters" service-name="updateFixedAssetMaint" to-map="updateFixedAssetMaintCtx"/>
-        <call-service service-name="updateFixedAssetMaint" in-map-name="updateFixedAssetMaintCtx"/>
-        <check-errors/>
-        <if-compare field="parameters.statusId" operator="equals" value="FAM_CANCELLED">
-            <set field="updateWorkEffortCtx.currentStatusId" value="CAL_CANCELLED"/>
-        </if-compare>
-        <set-service-fields map="parameters" service-name="updateWorkEffort" to-map="updateWorkEffortCtx"/>
-        <set from-field="parameters.scheduleWorkEffortId" field="updateWorkEffortCtx.workEffortId"/>
-        <set from-field="parameters.scheduleWorkEffortId" field="workEffortId"/>
-        <entity-one entity-name="WorkEffort" value-field="workEffort"/>
-        <set field="updateWorkEffortCtx.actualCompletionDate" from-field="parameters.actualCompletionDate" default-value="${workEffort.actualCompletionDate}"/>
-        <call-service service-name="updateWorkEffort" in-map-name="updateWorkEffortCtx"/>
-    </simple-method>
-
-    <simple-method method-name="createWorkEffortAndAssocWithParent" login-required="true"
-        short-description="Create WorkEffort and Associate it with Parent (identified by workEffortFromId)">
-        <set from-field="parameters.workEffortIdTo" field="parameters.workEffortId"/>
-        <set-service-fields map="parameters" service-name="createWorkEffortAndAssoc" to-map="createWorkEffortAndAssocCtx"/>
-        <call-service service-name="createWorkEffortAndAssoc" in-map-name="createWorkEffortAndAssocCtx"/>
-        <check-errors/>
-    </simple-method>
-
-    <!-- ==============Permission Checking Service============= -->
-    <simple-method method-name="assetMaintPermissionCheck" short-description="Asset Maintenance permission logic">
-        <set field="primaryPermission" value="ASSETMAINT"/>
-        <call-simple-method method-name="genericBasePermissionCheck" xml-resource="component://common/minilang/permission/CommonPermissionServices.xml"/>
-    </simple-method>
-
-</simple-methods>
\ No newline at end of file
diff --git a/plugins/assetmaint/minilang/test/FixedAssetMaintTests.xml b/plugins/assetmaint/minilang/test/FixedAssetMaintTests.xml
deleted file mode 100644
index 729cb15..0000000
--- a/plugins/assetmaint/minilang/test/FixedAssetMaintTests.xml
+++ /dev/null
@@ -1,146 +0,0 @@
-<?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="testCreateFixedAssetMaintUpdateWorkEffortWithProductMaint" short-description="Test case for service createFixedAssetMaintUpdateWorkEffort with a product Maintenance" login-required="false">
-        <set field="fixedAssetId" value="DEMO_VEHICLE_01"/>
-        <set field="serviceCtx.fixedAssetId" from-field="fixedAssetId"/>
-        <set field="serviceCtx.statusId" value="FAM_CREATED"/>
-        <set field="serviceCtx.productMaintSeqId" value="seq03"/><!-- Product Maintenance -->
-        <set field="serviceCtx.intervalMeterTypeId" value="ODOMETER"/>
-        <set field="serviceCtx.estimatedStartDate" value="2009-12-18 00:00:00.000" type="Timestamp"/>
-        <set field="serviceCtx.estimatedCompletionDate" value="2009-12-18 01:00:00.000" type="Timestamp"/>
-        <set field="serviceCtx.actualStartDate" value="2009-12-20 00:00:00.000" type="Timestamp"/>
-        <entity-one entity-name="UserLogin" value-field="userLogin">
-            <field-map field-name="userLoginId" value="system"/>
-        </entity-one>
-        <set field="serviceCtx.userLogin" from-field="userLogin"/>
-        <call-service service-name="createFixedAssetMaintUpdateWorkEffort" in-map-name="serviceCtx">
-            <result-to-field result-name="maintHistSeqId"/>
-        </call-service>
-
-        <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-        <get-related-one relation-name="ScheduleWorkEffort" value-field="fixedAssetMaint" to-value-field="workEffort"/>
-        <assert>
-            <not><if-empty field="fixedAssetMaint"/></not>
-            <not><if-empty field="fixedAssetMaint.scheduleWorkEffortId"/></not>
-            <not><if-empty field="workEffort"/></not>
-            <if-compare-field field="workEffort.estimatedStartDate" operator="equals" to-field="serviceCtx.estimatedStartDate"/>
-            <if-compare-field field="workEffort.estimatedCompletionDate" operator="equals" to-field="serviceCtx.estimatedCompletionDate"/>
-            <if-compare-field field="workEffort.actualStartDate" operator="equals" to-field="serviceCtx.actualStartDate"/>
-        </assert>
-        <check-errors/>
-    </simple-method>
-
-    <simple-method method-name="testCreateFixedAssetMaintUpdateWorkEffortWithoutProductMaint" short-description="Test case for service createFixedAssetMaintUpdateWorkEffort without a product maintenance" login-required="false">
-        <set field="fixedAssetId" value="DEMO_VEHICLE_01"/>
-        <set field="serviceCtx.fixedAssetId" from-field="fixedAssetId"/>
-        <set field="serviceCtx.statusId" value="FAM_CREATED"/>
-        <set field="serviceCtx.productMaintTypeId" value="OIL_CHANGE"/>
-        <set field="serviceCtx.intervalMeterTypeId" value="ODOMETER"/>
-        <set field="serviceCtx.estimatedStartDate" value="2009-12-18 00:00:00.000" type="Timestamp"/>
-        <set field="serviceCtx.estimatedCompletionDate" value="2009-12-18 01:00:00.000" type="Timestamp"/>
-        <set field="serviceCtx.actualStartDate" value="2009-12-20 00:00:00.000" type="Timestamp"/>
-        <entity-one entity-name="UserLogin" value-field="userLogin">
-            <field-map field-name="userLoginId" value="system"/>
-        </entity-one>
-        <set field="serviceCtx.userLogin" from-field="userLogin"/>
-        <call-service service-name="createFixedAssetMaintUpdateWorkEffort" in-map-name="serviceCtx">
-            <result-to-field result-name="maintHistSeqId"/>
-        </call-service>
-
-        <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint">
-            <field-map field-name="fixedAssetId"/>
-            <field-map field-name="maintHistSeqId"/>
-        </entity-one>
-        <get-related-one relation-name="ScheduleWorkEffort" value-field="fixedAssetMaint" to-value-field="workEffort"/>
-        <assert>
-            <not><if-empty field="fixedAssetMaint"/></not>
-            <not><if-empty field="fixedAssetMaint.scheduleWorkEffortId"/></not>
-            <not><if-empty field="workEffort"/></not>
-            <if-compare-field field="workEffort.estimatedStartDate" operator="equals" to-field="serviceCtx.estimatedStartDate"/>
-            <if-compare-field field="workEffort.estimatedCompletionDate" operator="equals" to-field="serviceCtx.estimatedCompletionDate"/>
-            <if-compare-field field="workEffort.actualStartDate" operator="equals" to-field="serviceCtx.actualStartDate"/>
-        </assert>
-        <check-errors/>
-    </simple-method>
-
-    <simple-method method-name="testUpdateFixedAssetMaintAndWorkEffort" short-description="Test case for service updateFixedAssetMaintAndWorkEffort" login-required="false">
-        <set field="fixedAssetId" value="DEMO_VEHICLE_01"/>
-        <set field="maintHistSeqId" value="00001"/><!-- Sequence created by testCreateFixedAssetMaintUpdateWorkEffortWithProductMaint -->
-        <set field="serviceCtx.fixedAssetId" from-field="fixedAssetId"/>
-        <set field="serviceCtx.maintHistSeqId" from-field="maintHistSeqId"/>
-        <set field="serviceCtx.estimatedCompletionDate" value="2009-12-22 01:00:00.000" type="Timestamp"/><!-- Changed estimatedCompletionDate to test update service -->
-        <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-        <set field="serviceCtx.workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-        <entity-one entity-name="UserLogin" value-field="userLogin">
-            <field-map field-name="userLoginId" value="system"/>
-        </entity-one>
-        <set field="serviceCtx.userLogin" from-field="userLogin"/>
-        <call-service service-name="updateFixedAssetMaintAndWorkEffort" in-map-name="serviceCtx"/>
-        <clear-field field="fixedAssetMaint"/>
-        <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-        <get-related-one relation-name="ScheduleWorkEffort" value-field="fixedAssetMaint" to-value-field="workEffort"/>
-        <assert>
-            <not><if-empty field="fixedAssetMaint"/></not>
-            <not><if-empty field="fixedAssetMaint.scheduleWorkEffortId"/></not>
-            <not><if-empty field="workEffort"/></not>
-            <if-compare-field field="workEffort.estimatedCompletionDate" operator="equals" to-field="serviceCtx.estimatedCompletionDate"/>
-        </assert>
-        <check-errors/>
-    </simple-method>
-
-    <simple-method method-name="testUpdateFixedAssetMaintAndWorkEffortComplete" short-description="Test case for service updateFixedAssetMaintAndWorkEffort" login-required="false">
-        <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint">
-            <field-map field-name="fixedAssetId" value="DEMO_VEHICLE_01"/>
-            <field-map field-name="maintHistSeqId" value="00001"/>
-        </entity-one>
-        <set field="serviceInMap.fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-        <set field="serviceInMap.maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-        <set field="serviceInMap.scheduleWorkEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-        <set field="serviceInMap.statusId" value="FAM_COMPLETED"/>
-        <now-timestamp field="nowTimestamp"/>
-        <set field="serviceInMap.actualCompletionDate" from-field="nowTimestamp"/>
-        <entity-one entity-name="UserLogin" value-field="userLogin">
-            <field-map field-name="userLoginId" value="system"/>
-        </entity-one>
-        <set field="serviceInMap.userLogin" from-field="userLogin"/>
-        <call-service service-name="updateFixedAssetMaintAndWorkEffort" in-map-name="serviceInMap"/>
-
-        <entity-one entity-name="FixedAssetMaint" value-field="newFixedAssetMaint">
-            <field-map field-name="fixedAssetId" value="DEMO_VEHICLE_01"/>
-            <field-map field-name="maintHistSeqId" value="00001"/>
-        </entity-one>
-        <assert>
-            <if-compare field="newFixedAssetMaint.statusId" operator="equals" value="FAM_COMPLETED"/>
-        </assert>
-        <check-errors/>
-        <entity-one entity-name="WorkEffort" value-field="workEffort">
-            <field-map field-name="workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-        </entity-one>
-        <assert>
-            <if-compare field="workEffort.currentStatusId" operator="equals" value="CAL_COMPLETED"/>
-            <if-compare-field field="workEffort.actualCompletionDate" operator="equals" to-field="nowTimestamp" type="Timestamp"/>
-        </assert>
-        <check-errors/>
-    </simple-method>
-</simple-methods>
diff --git a/plugins/assetmaint/ofbiz-component.xml b/plugins/assetmaint/ofbiz-component.xml
deleted file mode 100644
index f2586eb..0000000
--- a/plugins/assetmaint/ofbiz-component.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?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.
--->
-
-<ofbiz-component name="assetmaint" enabled="true"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-component.xsd">
-    <!-- define resource loaders; most common is to use the component resource loader -->
-    <resource-loader name="main" type="component"/>
-
-    <!-- place the config directory on the classpath to access configuration files -->
-    <classpath type="dir" location="config"/>
-
-    <!-- entity resources: model(s), eca(s), group, and data definitions -->
-    <entity-resource type="model" reader-name="main" loader="main" location="entitydef/entitymodel.xml"/>
-    <entity-resource type="data" reader-name="seed" loader="main" location="data/AssetMaintSecurityPermissionSeedData.xml"/>
-    <entity-resource type="data" reader-name="demo" loader="main" location="data/AssetMaintSecurityGroupDemoData.xml"/>
-    <entity-resource type="data" reader-name="seed" loader="main" location="data/AssetMaintSeedData.xml"/>
-
-    <!-- service resources: model(s), eca(s) and group definitions -->
-    <service-resource type="model" loader="main" location="servicedef/services.xml"/>
-    <service-resource type="eca" loader="main" location="servicedef/secas.xml"/>
-
-    <test-suite loader="main" location="testdef/assetmainttests.xml"/>
-
-    <webapp name="assetmaint"
-        title="AssetMaint"
-        server="default-server"
-        location="webapp/assetmaint"
-        base-permission="ASSETMAINT"
-        mount-point="/assetmaint"
-        app-bar-display="true"/>
-
-    <webapp name="ismgr"
-        title="IS Mgr"
-        server="default-server"
-        app-bar-display="false"
-        location="webapp/ismgr"
-        base-permission="ASSETMAINT"
-        mount-point="/ismgr"/>
-
-</ofbiz-component>
diff --git a/plugins/assetmaint/servicedef/secas.xml b/plugins/assetmaint/servicedef/secas.xml
deleted file mode 100644
index ab9c247..0000000
--- a/plugins/assetmaint/servicedef/secas.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?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.
--->
-
-<service-eca xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/service-eca.xsd">
-
-    <!-- ECAs used to extend service permission checking -->
-    <eca service="fixedAssetPermissionCheck" event="return" run-on-failure="true">
-        <condition field-name="hasPermission" operator="equals" value="false" type="Boolean"/>
-        <action service="assetMaintPermissionCheck" mode="sync" result-to-result="true"/>
-    </eca>
-
-    <eca service="facilityGenericPermission" event="return" run-on-failure="true">
-        <condition field-name="hasPermission" operator="equals" value="false" type="Boolean"/>
-        <action service="assetMaintPermissionCheck" mode="sync" result-to-result="true"/>
-    </eca>
-
-    <eca service="workEffortGenericPermission" event="return" run-on-failure="true">
-        <condition field-name="hasPermission" operator="equals" value="false" type="Boolean"/>
-        <action service="assetMaintPermissionCheck" mode="sync" result-to-result="true"/>
-    </eca>
-
-    <eca service="catalogPermissionCheck" event="return" run-on-failure="true">
-        <condition field-name="hasPermission" operator="equals" value="false" type="Boolean"/>
-        <action service="assetMaintPermissionCheck" mode="sync" result-to-result="true"/>
-    </eca>
-
-    <eca service="partyBasePermissionCheck" event="return" run-on-failure="true">
-        <condition field-name="hasPermission" operator="equals" value="false" type="Boolean"/>
-        <action service="assetMaintPermissionCheck" mode="sync" result-to-result="true"/>
-    </eca>
-
-</service-eca>
diff --git a/plugins/assetmaint/servicedef/services.xml b/plugins/assetmaint/servicedef/services.xml
deleted file mode 100644
index 9aecbef..0000000
--- a/plugins/assetmaint/servicedef/services.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-Licensed 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.
--->
-
-<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
-    <description>Assetmaint Services: Fixed Asset </description>
-    <vendor>OFBiz</vendor>
-    <version>1.0</version>
-
-    <service name="addPartFixedAssetMaint" engine="java"
-                location="org.apache.ofbiz.assetmaint.FixedAssetMaintServices" invoke="addPartFixedAssetMaint" auth="true">
-        <description>Add Part item to a FixedAssetMaint</description>
-        <attribute type="String" mode="IN" name="fixedAssetId" optional="false"/>
-        <attribute type="String" mode="IN" name="maintHistSeqId" optional="false"/>
-        <attribute type="Double" mode="IN" name="quantity" optional="false"/>
-        <attribute type="String" mode="IN" name="productId" optional="false"/>
-        <attribute type="String" mode="IN" name="facilityId" optional="false"/>
-    </service>
-
-    <service name="assetMaintPermissionCheck" engine="simple"
-            location="component://assetmaint/minilang/FixedAssetMaintServices.xml" invoke="assetMaintPermissionCheck">
-        <description>Asset Maintentance Permission Checking Logic</description>
-        <implements service="permissionInterface"/>
-    </service>
-    
-    <service name="createFixedAssetMaintUpdateWorkEffort" engine="simple" default-entity-name="FixedAssetMaint"
-            location="component://assetmaint/minilang/FixedAssetMaintServices.xml" invoke="createFixedAssetMaintUpdateWorkEffort">
-        <description>Create FixedAssetMaint and Update Schedule information in WorkEffort</description>
-        <auto-attributes include="all" mode="IN" optional="true"/>
-        <auto-attributes include="all" mode="IN" entity-name="WorkEffort" optional="true"/>
-        <override name="fixedAssetId" mode="IN" optional="false"/>
-        <override name="maintHistSeqId" mode="OUT" optional="false"/>
-    </service>
-    <service name="updateFixedAssetMaintAndWorkEffort" engine="simple" default-entity-name="FixedAssetMaint"
-            location="component://assetmaint/minilang/FixedAssetMaintServices.xml" invoke="updateFixedAssetMaintAndWorkEffort">
-        <description>Update FixedAssetMaint and Schedule information in WorkEffort</description>
-        <auto-attributes include="pk" mode="IN" optional="false"/>
-        <auto-attributes include="nonpk" mode="IN" optional="true"/>
-        <auto-attributes include="all" mode="IN" entity-name="WorkEffort" optional="true"/>
-    </service>
-    
-    <service name="createWorkEffortAndAssocWithParent" engine="simple" default-entity-name="WorkEffort"
-            location="component://assetmaint/minilang/FixedAssetMaintServices.xml" invoke="createWorkEffortAndAssocWithParent">
-        <description>Create WorkEffort and Associate it with Parent (identified by workEffortFromId)</description>
-        <implements service="createWorkEffortAndAssoc"/>
-    </service>
-</services>
diff --git a/plugins/assetmaint/src/main/java/org/apache/ofbiz/assetmaint/FixedAssetMaintServices.java b/plugins/assetmaint/src/main/java/org/apache/ofbiz/assetmaint/FixedAssetMaintServices.java
deleted file mode 100644
index 93850af..0000000
--- a/plugins/assetmaint/src/main/java/org/apache/ofbiz/assetmaint/FixedAssetMaintServices.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/**
-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.
-**/
-package org.apache.ofbiz.assetmaint;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import org.apache.ofbiz.base.util.Debug;
-import org.apache.ofbiz.base.util.UtilMisc;
-import org.apache.ofbiz.base.util.UtilProperties;
-import org.apache.ofbiz.entity.Delegator;
-import org.apache.ofbiz.entity.GenericEntityException;
-import org.apache.ofbiz.entity.GenericValue;
-import org.apache.ofbiz.entity.condition.EntityCondition;
-import org.apache.ofbiz.entity.condition.EntityConditionList;
-import org.apache.ofbiz.entity.condition.EntityExpr;
-import org.apache.ofbiz.entity.condition.EntityOperator;
-import org.apache.ofbiz.entity.util.EntityQuery;
-import org.apache.ofbiz.product.product.ProductWorker;
-import org.apache.ofbiz.service.DispatchContext;
-import org.apache.ofbiz.service.GenericServiceException;
-import org.apache.ofbiz.service.LocalDispatcher;
-import org.apache.ofbiz.service.ServiceUtil;
-
-public class FixedAssetMaintServices {
-
-    public static final String module = FixedAssetMaintServices.class.getName();
-    public static final String resource = "AssetMaintUiLabels";
-
-    public static Map<String, Object> addPartFixedAssetMaint(DispatchContext ctx, Map<String, Object> context) {
-        LocalDispatcher dispatcher = ctx.getDispatcher();
-        Delegator delegator = ctx.getDelegator();
-        Locale locale = (Locale) context.get("locale");
-        String fixedAssetId = (String)context.get("fixedAssetId");
-        String maintHistSeqId = (String)context.get("maintHistSeqId");
-        String productId = (String)context.get("productId");
-        String facilityId = (String)context.get("facilityId");
-        Double quantity = (Double)context.get("quantity");
-        double requestedQty = quantity.doubleValue();
-
-        try {
-            GenericValue product = ProductWorker.findProduct(delegator, productId);
-            if (product == null) {
-                return ServiceUtil.returnError(UtilProperties.getMessage(resource, "AssetMaintInvalidPartProductIdError", UtilMisc.toMap("productId", productId), locale));
-            }
-            Map<String, ? extends Object> findCurrInventoryParams =  UtilMisc.toMap("productId", productId, "facilityId", facilityId);
-            GenericValue userLogin = (GenericValue) context.get("userLogin");
-            // Call issuance service
-            Map<String, Object> result = dispatcher.runSync("getInventoryAvailableByFacility", findCurrInventoryParams);
-            if (ServiceUtil.isError(result)) {
-                return ServiceUtil.returnError(UtilProperties.getMessage(resource, "AssetMaintProblemGettingInventoryLevel", locale) + productId , null, null, result);
-            }
-            Object atpObj = result.get("availableToPromiseTotal");
-            double atp = 0.0;
-            if (atpObj != null) {
-                atp = Double.parseDouble(atpObj.toString());
-            }
-            if (requestedQty > atp) {
-                return ServiceUtil.returnError(UtilProperties.getMessage(resource, "AssetMaintLowPartInventoryError", UtilMisc.toMap("productId", productId , "quantity", Double.toString(atp)), locale));
-            }
-            EntityConditionList<EntityExpr> ecl = EntityCondition.makeCondition(UtilMisc.toList(
-                    EntityCondition.makeCondition("productId", EntityOperator.EQUALS, productId),
-                    EntityCondition.makeCondition("facilityId", EntityOperator.EQUALS, facilityId),
-                    EntityCondition.makeCondition("availableToPromiseTotal", EntityOperator.GREATER_THAN, "0")),
-                    EntityOperator.AND);
-            List<GenericValue> inventoryItems = EntityQuery.use(delegator).from("InventoryItem").where(ecl).queryList();   //&& inventoryItems.size() > 0
-            Iterator<GenericValue> itr = inventoryItems.iterator();
-            while (requestedQty > 0 && itr.hasNext()) {
-                GenericValue inventoryItem = itr.next();
-                String inventoryItemId = inventoryItem.getString("inventoryItemId");
-                atp = inventoryItem.getDouble("availableToPromiseTotal").doubleValue();
-                findCurrInventoryParams = UtilMisc.toMap("inventoryItemId", inventoryItemId);
-                Double issueQuantity = null;
-                if (requestedQty > atp) {
-                    issueQuantity = new Double(atp);
-                } else {
-                    issueQuantity = new Double(requestedQty);
-                }
-                Map<String, Object> itemIssuanceCtx = new HashMap<String, Object>();
-                itemIssuanceCtx.put("userLogin", userLogin);
-                itemIssuanceCtx.put("inventoryItemId", inventoryItemId);
-                itemIssuanceCtx.put("fixedAssetId", fixedAssetId);
-                itemIssuanceCtx.put("maintHistSeqId", maintHistSeqId);
-                itemIssuanceCtx.put("quantity", issueQuantity);
-                // Call issuance service
-                result = dispatcher.runSync("issueInventoryItemToFixedAssetMaint",itemIssuanceCtx);
-                if (ServiceUtil.isError(result)) {
-                    return ServiceUtil.returnError(UtilProperties.getMessage(resource, "AssetMaintProblemCallingService", locale), null, null, result);
-                }
-                requestedQty = requestedQty - issueQuantity.doubleValue();
-            }
-        } catch (GenericEntityException e) {
-            Debug.logError("Problem in retriving data from database", module);
-        } catch (GenericServiceException e) {
-            Debug.logError("Problem in calling service issueInventoryItemToFixedAssetMaint", module);
-            return ServiceUtil.returnError(UtilProperties.getMessage(resource, "AssetMaintProblemCallingService", locale));
-        }
-        return ServiceUtil.returnSuccess();
-    }
-}
diff --git a/plugins/assetmaint/template/PrintFixedAssetMaint.fo.ftl b/plugins/assetmaint/template/PrintFixedAssetMaint.fo.ftl
deleted file mode 100644
index a2cb9f7..0000000
--- a/plugins/assetmaint/template/PrintFixedAssetMaint.fo.ftl
+++ /dev/null
@@ -1,241 +0,0 @@
-<#--
-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.
--->
-<#escape x as x?xml>
-  <fo:flow flow-name="xsl-region-body">
-
-    <#-- Print FixedAsset Information -->
-    <fo:table table-layout="fixed" width="100%" border-style="solid" border-collapse="collapse" border-width="1pt">
-      <fo:table-column column-width="20%"/>
-      <fo:table-column column-width="80%"/>
-      <fo:table-body>
-        <fo:table-row>
-          <fo:table-cell number-columns-spanned="2">
-            <fo:block font-weight="bold">${uiLabelMap.AccountingFixedAsset}</fo:block>
-          </fo:table-cell>
-        </fo:table-row>
-        <#if fixedAsset?has_content>
-          <fo:table-row>
-            <fo:table-cell><fo:block>${uiLabelMap.AccountingFixedAssetId}</fo:block></fo:table-cell>
-            <fo:table-cell><fo:block>${fixedAssetId}</fo:block></fo:table-cell>
-          </fo:table-row>
-          <#if fixedAsset.createdStamp?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.CommonDate}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block>${fixedAsset.createdStamp?string.short}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-          <#if fixedAsset.fixedAssetName?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.AccountingFixedAssetName}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block>${fixedAsset.fixedAssetName!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-          <#if fixedAsset.serialNumber?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.FormFieldTitle_serialNumber}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block font-weight="bold">${fixedAsset.serialNumber!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-          <#if fixedAsset.locatedAtFacilityId?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.FormFieldTitle_locatedAtFacilityId}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block>${maintenance.facilityName!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-          <#if fixedAssetIdentValue?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.AccountingFixedAssetIdents}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block>${fixedAssetIdentValue!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-        </#if>
-      </fo:table-body>
-    </fo:table>
-    <#-- End Print FixedAsset Information -->
-
-    <#-- Start Print FixedAsset Maintenance Information -->
-    <fo:table table-layout="fixed" width="100%" border-style="solid" border-collapse="collapse" border-width="1pt">
-      <fo:table-column column-width="20%"/>
-      <fo:table-column column-width="80%"/>
-      <fo:table-body>
-        <fo:table-row>
-          <fo:table-cell number-columns-spanned="2">
-            <fo:block font-weight="bold">${uiLabelMap.AccountingFixedAssetMaint}</fo:block>
-          </fo:table-cell>
-        </fo:table-row>
-        <#if fixedAssetMaint?has_content>
-          <fo:table-row>
-            <fo:table-cell><fo:block>${uiLabelMap.AccountingFixedAssetMaintSeqId}</fo:block></fo:table-cell>
-            <fo:table-cell><fo:block>${fixedAssetMaint.maintHistSeqId}</fo:block></fo:table-cell>
-          </fo:table-row>
-          <fo:table-row>
-            <fo:table-cell><fo:block>${uiLabelMap.CommonStatus}</fo:block></fo:table-cell>
-            <fo:table-cell><fo:block>${statusItemDesc}</fo:block></fo:table-cell>
-          </fo:table-row>
-          <#if productMaintName?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.CommonName}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block>${productMaintName!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-          <#if productMaintTypeDesc?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.AccountingFixedAssetMaintType}</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block font-weight="bold">${productMaintTypeDesc!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-            <fo:table-row>
-              <fo:table-cell>
-                <fo:block>${uiLabelMap.AccountingFixedAssetMaintIntervalQuantity}</fo:block>
-              </fo:table-cell>
-              <fo:table-cell>
-                  <fo:block font-weight="bold">${fixedAssetMaint.intervalQuantity!} ${intervalUomDesc!}</fo:block>
-              </fo:table-cell>
-            </fo:table-row>
-          <#if productMeterTypeDesc?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>Meter type</fo:block></fo:table-cell>
-              <fo:table-cell><fo:block font-weight="bold">${productMeterTypeDesc!}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#if>
-        </#if>
-      </fo:table-body>
-    </fo:table>
-    <#-- End Print FixedAsset Maintenance Information -->
-
-    <#-- Start Print Maintenance Schedule Information -->
-    <fo:table table-layout="fixed" width="100%" border-style="solid" border-collapse="collapse" border-width="1pt">
-      <fo:table-column column-width="25%"/>
-      <fo:table-column column-width="25%"/>
-      <fo:table-column column-width="25%"/>
-      <fo:table-column column-width="25%"/>
-      <fo:table-body>
-        <fo:table-row>
-          <fo:table-cell number-columns-spanned="4" >
-            <fo:block font-weight="bold">${uiLabelMap.WorkEffortSummary}</fo:block>
-          </fo:table-cell>
-        </fo:table-row>
-        <#if scheduleWorkEffort?has_content>
-          <fo:table-row>
-            <fo:table-cell><fo:block>${uiLabelMap.FormFieldTitle_actualStartDate}</fo:block></fo:table-cell>
-            <#if scheduleWorkEffort.actualStartDate?has_content>
-              <#assign actualStartDate = scheduleWorkEffort.get("actualStartDate")>
-              <fo:table-cell><fo:block>${actualStartDate?string.short}</fo:block></fo:table-cell>
-            <#else>
-              <fo:table-cell><fo:block></fo:block></fo:table-cell>
-            </#if>
-            <fo:table-cell><fo:block>${uiLabelMap.FormFieldTitle_actualCompletionDate}</fo:block></fo:table-cell>
-            <#if scheduleWorkEffort.actualCompletionDate?has_content>
-              <#assign actualCompletionDate = scheduleWorkEffort.get("actualCompletionDate")>
-              <fo:table-cell><fo:block>${actualCompletionDate?string.short}</fo:block></fo:table-cell>
-            <#else>
-              <fo:table-cell><fo:block></fo:block></fo:table-cell>
-            </#if>
-          </fo:table-row>
-          <#assign workEffortPurposeType = scheduleWorkEffort.getRelatedOne("WorkEffortPurposeType", false)!>
-          <#if workEffortPurposeType?has_content>
-            <fo:table-row>
-              <fo:table-cell><fo:block>${uiLabelMap.FormFieldTitle_workEffortPurposeTypeId}</fo:block></fo:table-cell>
-              <fo:table-cell number-columns-spanned="3">
-                <fo:block>
-                  ${workEffortPurposeType.workEffortPurposeTypeId}--${workEffortPurposeType.description}
-                </fo:block>
-              </fo:table-cell>
-            </fo:table-row>
-          </#if>
-          <fo:table-row>
-            <fo:table-cell><fo:block>${uiLabelMap.CommonName}</fo:block></fo:table-cell>
-            <fo:table-cell number-columns-spanned="3">
-              <fo:block font-weight="bold">${scheduleWorkEffort.workEffortName!}</fo:block>
-            </fo:table-cell>
-          </fo:table-row>
-          <fo:table-row>
-            <fo:table-cell><fo:block>${uiLabelMap.CommonDescription}</fo:block></fo:table-cell>
-            <fo:table-cell number-columns-spanned="3">
-              <fo:block font-weight="bold">${scheduleWorkEffort.description!}</fo:block>
-            </fo:table-cell>
-          </fo:table-row>
-        </#if>
-      </fo:table-body>
-    </fo:table>
-    <#-- End Print Maintenance Schedule Information -->
-
-    <#if itemIssuanceList?has_content>
-      <fo:table table-layout="fixed" width="100%" border-style="solid" border-collapse="collapse" border-width="1pt">
-        <fo:table-column column-width="20%"/>
-        <fo:table-column column-width="80%"/>
-        <fo:table-header>
-          <fo:table-row>
-            <fo:table-cell>
-              <fo:block font-weight="bold">${uiLabelMap.AssetMaintItemIssuance}</fo:block>
-            </fo:table-cell>
-            <fo:table-cell text-align="center">
-              <fo:block font-weight="bold">${uiLabelMap.OrderQuantity}</fo:block>
-            </fo:table-cell>
-          </fo:table-row>
-        </fo:table-header>
-        <fo:table-body>
-          <#list itemIssuanceList as itemIssuance>
-            <#assign productId = itemIssuance.productId!>
-            <#assign quantity = itemIssuance.quantity?default(0)>
-            <fo:table-row>
-              <fo:table-cell>
-                <fo:block>
-                  <#if productId??>
-                    ${itemIssuance.productId?default("N/A")} - ${itemIssuance.internalName!} -
-                        ${itemIssuance.description!} - ${itemIssuance.comments!}
-                  </#if>
-                </fo:block>
-              </fo:table-cell>
-              <fo:table-cell text-align="center"><fo:block>${quantity}</fo:block></fo:table-cell>
-            </fo:table-row>
-          </#list>
-        </fo:table-body>
-      </fo:table>
-    </#if>
-
-    <#if notes?has_content>
-      <fo:table table-layout="fixed" width="100%" border-style="solid" border-collapse="collapse" border-width="1pt">
-        <fo:table-column column-width="100%"/>
-        <fo:table-header>
-          <fo:table-row>
-            <fo:table-cell><fo:block font-weight="bold">${uiLabelMap.WorkEffortNotes}</fo:block></fo:table-cell>
-          </fo:table-row>
-        </fo:table-header>
-        <fo:table-body>
-          <#list notes as note>
-            <fo:table-row>
-              <fo:table-cell>
-                <fo:block>Author : ${Static[
-                    "org.apache.ofbiz.party.party.PartyHelper"].getPartyName(delegator, note.noteParty, true)}</fo:block>
-                <fo:block>Date : ${note.noteDateTime?string.short}</fo:block>
-                <#escape x as x?html>
-                  <fo:block>${note.noteInfo!}</fo:block>
-                </#escape>
-              </fo:table-cell>
-            </fo:table-row>
-          </#list>
-        </fo:table-body>
-      </fo:table>
-    </#if>
-
-  </fo:flow>
-</#escape>
-
-
diff --git a/plugins/assetmaint/testdef/assetmainttests.xml b/plugins/assetmaint/testdef/assetmainttests.xml
deleted file mode 100644
index b95091c..0000000
--- a/plugins/assetmaint/testdef/assetmainttests.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?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.
-  -->
-
-<test-suite suite-name="assetmainttests"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/test-suite.xsd">
-
-    <test-case case-name="assetmaint-tests">
-        <simple-method-test location="component://assetmaint/minilang/test/FixedAssetMaintTests.xml"/>
-    </test-case>
-
-</test-suite>
diff --git a/plugins/assetmaint/webapp/assetmaint/WEB-INF/controller.xml b/plugins/assetmaint/webapp/assetmaint/WEB-INF/controller.xml
deleted file mode 100644
index 96d4a23..0000000
--- a/plugins/assetmaint/webapp/assetmaint/WEB-INF/controller.xml
+++ /dev/null
@@ -1,142 +0,0 @@
-<?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.
--->
-
-<site-conf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xmlns="http://ofbiz.apache.org/Site-Conf" xsi:schemaLocation="http://ofbiz.apache.org/Site-Conf http://ofbiz.apache.org/dtds/site-conf.xsd">
-    <!-- Note: The order of the following include elements is important -->
-    <include location="component://workeffort/webapp/workeffort/WEB-INF/controller.xml"/>
-    <include location="component://product/webapp/catalog/WEB-INF/controller.xml"/>
-    <include location="component://product/webapp/facility/WEB-INF/controller.xml"/>
-    <include location="component://accounting/webapp/accounting/WEB-INF/controller.xml"/>
-
-    <description>Asset Maintenance Component Site Configuration File</description>
-
-    <request-map uri="main">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="mytasks"/>
-    </request-map>
-
-    <!-- FixedAssetMaintenance -->
-    <request-map uri="printFixedAssetMaint.pdf">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="PrintFixedAssetMaint"/>
-    </request-map>
-    <request-map uri="createFixedAssetMaintUpdateWorkEffort">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="createFixedAssetMaintUpdateWorkEffort"/>
-        <response name="success" type="view" value="EditFixedAssetMaint"/>
-        <response name="error" type="view" value="EditFixedAssetMaint"/>
-    </request-map>
-    <request-map uri="updateFixedAssetMaintAndWorkEffort">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="updateFixedAssetMaintAndWorkEffort"/>
-        <response name="success" type="view" value="EditFixedAssetMaint"/>
-        <response name="error" type="view" value="EditFixedAssetMaint"/>
-    </request-map>
-    <request-map uri="findFixedAssetMaints">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="FindFixedAssetMaints"/>
-    </request-map>
-
-    <!--  WorkEffort request mappings -->
-    <request-map uri="EditWorkEfforts">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-    </request-map>
-    <request-map uri="createWorkEffort">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="createWorkEffort"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-        <response name="error" type="view" value="EditWorkEfforts"/>
-    </request-map>
-    <request-map uri="createWorkEffortPartyAssign">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="assignPartyToWorkEffort"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-        <response name="error" type="view" value="EditWorkEfforts"/>
-    </request-map>
-    <request-map uri="updateWorkEffort">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="updateWorkEffort"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-        <response name="error" type="view" value="EditWorkEfforts"/>
-    </request-map>
-    <request-map uri="updateWorkEffortPartyAssign">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="updatePartyToWorkEffortAssignment"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-        <response name="error" type="view" value="EditWorkEfforts"/>
-    </request-map>
-
-    <request-map uri="createWorkEffortAndAssoc">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="createWorkEffortAndAssocWithParent"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-        <response name="error" type="view" value="EditWorkEfforts"/>
-    </request-map>
-    <request-map uri="updateWorkEffortAndAssoc">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="updateWorkEffortAndAssoc"/>
-        <response name="success" type="view" value="EditWorkEfforts"/>
-        <response name="error" type="view" value="EditWorkEfforts"/>
-    </request-map>
-    <request-map uri="EditItemIssuances">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="EditItemIssuances"/>
-    </request-map>
-    <request-map uri="issueInventoryItemToFixedAssetMaint">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="addPartFixedAssetMaint"/>
-        <response name="success" type="view" value="EditItemIssuances"/>
-        <response name="error" type="view" value="EditItemIssuances"/>
-    </request-map>
-    <request-map uri="returnPartIssuedToFixedAssetMaint">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="returnInventoryItemIssuedToFixedAssetMaint"/>
-        <response name="success" type="view" value="EditItemIssuances"/>
-        <response name="error" type="view" value="EditItemIssuances"/>
-    </request-map>
-
-    <!-- ================ Lookup Requests ================= -->
-    <request-map uri="LookupPartsProduct"><security auth="true" https="true"/><response name="success" type="view" value="LookupPartsProduct"/></request-map>
-    <request-map uri="LookupWorkEffortShort"><security auth="true" https="true"/><response name="success" type="view" value="LookupWorkEffortShort"/></request-map>
-
-    <!-- end of request mappings -->
-
-    <!-- View Mappings -->
-    <view-map name="main" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#mytasks"/>
-
-    <!-- FixedAsset Maintenance screens -->
-    <view-map name="FindFixedAssetMaints" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#FindFixedAssetMaints"/>
-    <view-map name="EditFixedAssetMaint" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#EditFixedAssetMaint"/>
-    <view-map name="EditWorkEfforts" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#EditWorkEfforts"/>
-    <view-map name="EditWorkEffortTimeEntries" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#EditWorkEffortTimeEntries"/>
-    <view-map name="EditWorkEffortNotes" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#EditWorkEffortNotes"/>
-    <view-map name="EditItemIssuances" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#EditItemIssuances"/>
-    <view-map name="PrintFixedAssetMaint" type="screenfop" page="component://assetmaint/widget/AssetmaintScreens.xml#PrintFixedAssetMaint" content-type="application/pdf"/>
-
-    <!-- Lookup request mappings -->
-    <view-map name="LookupPartsProduct" type="screen" page="component://assetmaint/widget/ProductScreens.xml#LookupPartsProduct"/>
-    <view-map name="LookupWorkEffortShort" type="screen" page="component://workeffort/widget/LookupScreens.xml#LookupWorkEffortShort"/>
-
-<!--    <view-map name="EditWorkEffort" type="screen" page="component://assetmaint/widget/AssetmaintScreens.xml#EditFixedAssetMaint"/> -->
-    <view-map name="EditProductMaints" type="screen" page="component://assetmaint/widget/ProductScreens.xml#EditProductMaints"/>
-    <!-- end of view mappings -->
-</site-conf>
diff --git a/plugins/assetmaint/webapp/assetmaint/WEB-INF/web.xml b/plugins/assetmaint/webapp/assetmaint/WEB-INF/web.xml
deleted file mode 100644
index 069ad22..0000000
--- a/plugins/assetmaint/webapp/assetmaint/WEB-INF/web.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<?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.
--->
-
-<web-app version="3.0">
-
-    <display-name>Apache OFBiz - Asset Maintenance</display-name>
-    <description>Asset Management component of the Apache OFBiz Project</description>
-
-    <context-param>
-        <description>The Name of the Entity Delegator to use, defined in entityengine.xml</description>
-        <param-name>entityDelegatorName</param-name>
-        <param-value>default</param-value>
-    </context-param>
-    <context-param>
-        <description>A unique name used to identify/recognize the local dispatcher for the Service Engine</description>
-        <param-name>localDispatcherName</param-name>
-        <param-value>assetmaint</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the main-decorator screen to use for this webapp.</description>
-        <param-name>mainDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/CommonScreens.xml</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the CommonFacilityDecorator screen to use for this webapp.</description>
-        <param-name>commonFacilityDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/CommonScreens.xml</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the CommonFixedAssetDecorator screen to use for this webapp.</description>
-        <param-name>fixedAssetDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/CommonScreens.xml</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the CommonFixedAssetMaintDecorator screen to use for this webapp.</description>
-        <param-name>fixedAssetMaintDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/AssetmaintScreens.xml</param-value>
-    </context-param>
-
-    <filter>
-        <display-name>ControlFilter</display-name>
-        <filter-name>ControlFilter</filter-name>
-        <filter-class>org.apache.ofbiz.webapp.control.ControlFilter</filter-class>
-        <init-param>
-            <param-name>allowedPaths</param-name>
-            <param-value>/error:/control:/select:/index.html:/index.jsp:/default.html:/default.jsp:/images</param-value>
-        </init-param>
-        <init-param>
-            <param-name>redirectPath</param-name>
-            <param-value>/control/main</param-value>
-        </init-param>
-    </filter>
-    <filter>
-        <display-name>ContextFilter</display-name>
-        <filter-name>ContextFilter</filter-name>
-        <filter-class>org.apache.ofbiz.webapp.control.ContextFilter</filter-class>
-    </filter>
-    <filter-mapping>
-        <filter-name>ControlFilter</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-    <filter-mapping>
-        <filter-name>ContextFilter</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-
-    <listener><listener-class>org.apache.ofbiz.webapp.control.ControlEventListener</listener-class></listener>
-    <listener><listener-class>org.apache.ofbiz.webapp.control.LoginEventListener</listener-class></listener>
-    <!-- NOTE: not all app servers support mounting implementations of the HttpSessionActivationListener interface -->
-    <!-- <listener><listener-class>org.apache.ofbiz.webapp.control.ControlActivationEventListener</listener-class></listener> -->
-
-    <servlet>
-        <description>Main Control Servlet</description>
-        <display-name>ControlServlet</display-name>
-        <servlet-name>ControlServlet</servlet-name>
-        <servlet-class>org.apache.ofbiz.webapp.control.ControlServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-    <servlet-mapping>
-        <servlet-name>ControlServlet</servlet-name>
-        <url-pattern>/control/*</url-pattern>
-    </servlet-mapping>
-
-    <session-config>
-        <session-timeout>60</session-timeout> <!-- in minutes -->
-        <cookie-config>
-          <http-only>true</http-only>
-          <secure>true</secure>
-        </cookie-config>
-        <tracking-mode>COOKIE</tracking-mode>
-    </session-config>
-
-    <welcome-file-list>
-        <welcome-file>index.jsp</welcome-file>
-        <welcome-file>index.html</welcome-file>
-        <welcome-file>index.htm</welcome-file>
-    </welcome-file-list>
-</web-app>
diff --git a/plugins/assetmaint/webapp/assetmaint/error/error.jsp b/plugins/assetmaint/webapp/assetmaint/error/error.jsp
deleted file mode 100644
index 83f0147..0000000
--- a/plugins/assetmaint/webapp/assetmaint/error/error.jsp
+++ /dev/null
@@ -1,53 +0,0 @@
-<%--
-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.
---%>
-
-<%@ page import="org.apache.ofbiz.base.util.*" %>
-<html>
-<head>
-<title>OFBiz Message</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</head>
-
-<% String errorMsg = (String) request.getAttribute("_ERROR_MESSAGE_"); %>
-
-<body bgcolor="#FFFFFF">
-<div align="center">
-  <br/>
-  <table width="100%" border="1" height="200">
-    <tr>
-      <td>
-        <table width="100%" border="0" height="200">
-          <tr bgcolor="#CC6666">
-            <td height="45">
-              <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="4" color="#FFFFFF"><b>:ERROR MESSAGE:</b></font></div>
-            </td>
-          </tr>
-          <tr>
-            <td>
-              <div align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><%=UtilFormatOut.replaceString(errorMsg, "\n", "<br/>")%></font></div>
-            </td>
-          </tr>
-        </table>
-      </td>
-    </tr>
-  </table>
-</div>
-<div align="center"></div>
-</body>
-</html>
diff --git a/plugins/assetmaint/webapp/assetmaint/error/error403.jsp b/plugins/assetmaint/webapp/assetmaint/error/error403.jsp
deleted file mode 100644
index e17f67f..0000000
--- a/plugins/assetmaint/webapp/assetmaint/error/error403.jsp
+++ /dev/null
@@ -1,27 +0,0 @@
-<%--
-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.
---%>
-
-<html>
-<head>
-<title>ERROR!</title>
-</head>
-<body>
-<h3>An Error 403 Happened: Access to resource Forbidden</h3>
-</body>
-</html>
diff --git a/plugins/assetmaint/webapp/assetmaint/error/error404.jsp b/plugins/assetmaint/webapp/assetmaint/error/error404.jsp
deleted file mode 100644
index 51b8499..0000000
--- a/plugins/assetmaint/webapp/assetmaint/error/error404.jsp
+++ /dev/null
@@ -1,27 +0,0 @@
-<%--
-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.
---%>
-
-<html>
-<head>
-<title>ERROR!</title>
-</head>
-<body>
-<h3>An Error 404 Happened: Request resource Not Found</h3>
-</body>
-</html>
diff --git a/plugins/assetmaint/webapp/assetmaint/index.jsp b/plugins/assetmaint/webapp/assetmaint/index.jsp
deleted file mode 100644
index e3c3cdf..0000000
--- a/plugins/assetmaint/webapp/assetmaint/index.jsp
+++ /dev/null
@@ -1,19 +0,0 @@
-<%--
-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.
---%>
-<%response.sendRedirect("control/main");%>
diff --git a/plugins/assetmaint/webapp/ismgr/WEB-INF/controller.xml b/plugins/assetmaint/webapp/ismgr/WEB-INF/controller.xml
deleted file mode 100644
index 09a8999..0000000
--- a/plugins/assetmaint/webapp/ismgr/WEB-INF/controller.xml
+++ /dev/null
@@ -1,93 +0,0 @@
-<?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.
--->
-
-<site-conf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xmlns="http://ofbiz.apache.org/Site-Conf" xsi:schemaLocation="http://ofbiz.apache.org/Site-Conf http://ofbiz.apache.org/dtds/site-conf.xsd">
-    <!-- Note: The order of the following include elements is important -->
-    <include location="component://workeffort/webapp/workeffort/WEB-INF/controller.xml"/>
-    <include location="component://product/webapp/catalog/WEB-INF/controller.xml"/>
-    <include location="component://product/webapp/facility/WEB-INF/controller.xml"/>
-    <include location="component://accounting/webapp/accounting/WEB-INF/controller.xml"/>
-
-    <description>Information Systems Management Component Site Configuration File</description>
-
-    <request-map uri="main">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="ListComputerHardware"/>
-    </request-map>
-
-    <request-map uri="ListComputerHardware">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="ListComputerHardware"/>
-    </request-map>
-
-    <request-map uri="ListComputerSoftware">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="ListComputerSoftware"/>
-    </request-map>
-
-    <request-map uri="EditComputerHardware"><security https="true" auth="true"/><response name="success" type="view" value="EditComputerHardware"/></request-map>
-    <request-map uri="createComputerHardware">
-        <security https="true" auth="true"/>
-        <event type="service" path="" invoke="createFixedAsset"/>
-        <response name="success" type="view" value="EditComputerHardware"/>
-        <response name="error" type="view" value="EditComputerHardware"/>
-    </request-map>
-    <request-map uri="updateComputerHardware">
-        <security https="true" auth="true"/>
-        <event type="service" path="" invoke="updateFixedAsset"/>
-        <response name="success" type="view" value="EditComputerHardware"/>
-        <response name="error" type="view" value="EditComputerHardware"/>
-    </request-map>
-
-    <request-map uri="EditComputerSoftware"><security https="true" auth="true"/><response name="success" type="view" value="EditComputerSoftware"/></request-map>
-    <request-map uri="createComputerSoftware">
-        <security https="true" auth="true"/>
-        <event type="service" path="" invoke="createFixedAsset"/>
-        <response name="success" type="view" value="EditComputerSoftware"/>
-        <response name="error" type="view" value="EditComputerSoftware"/>
-    </request-map>
-    <request-map uri="updateComputerSoftware">
-        <security https="true" auth="true"/>
-        <event type="service" path="" invoke="updateFixedAsset"/>
-        <response name="success" type="view" value="EditComputerSoftware"/>
-        <response name="error" type="view" value="EditComputerSoftware"/>
-    </request-map>
-
-    <!-- List all children fixed assets of type ComputerHardware -->
-    <request-map uri="ListHardwareAccessories"><security https="true" auth="true"/><response name="success" type="view" value="ListHardwareAccessories"/></request-map>
-    <request-map uri="ListInstalledSoftware"><security https="true" auth="true"/><response name="success" type="view" value="ListInstalledSoftware"/></request-map>
-
-
-    <request-map uri="LookupComputerHardware"><security https="true" auth="true"/><response name="success" type="view" value="LookupComputerHardware"/></request-map>
-    <request-map uri="LookupComputerSoftware"><security https="true" auth="true"/><response name="success" type="view" value="LookupComputerSoftware"/></request-map>
-    <view-map name="LookupComputerHardware" type="screen" page="component://assetmaint/widget/ismgr/LookupScreens.xml#LookupComputerHardware"/>
-    <view-map name="LookupComputerSoftware" type="screen" page="component://assetmaint/widget/ismgr/LookupScreens.xml#LookupComputerSoftware"/>
-
-    <view-map name="EditComputerHardware" type="screen" page="component://assetmaint/widget/ismgr/FixedAssetScreens.xml#EditComputerHardware"/>
-    <view-map name="ListComputerHardware" type="screen" page="component://assetmaint/widget/ismgr/FixedAssetScreens.xml#ListComputerHardware"/>
-
-    <view-map name="EditComputerSoftware" type="screen" page="component://assetmaint/widget/ismgr/FixedAssetScreens.xml#EditComputerSoftware"/>
-    <view-map name="ListComputerSoftware" type="screen" page="component://assetmaint/widget/ismgr/FixedAssetScreens.xml#ListComputerSoftware"/>
-
-    <view-map name="ListHardwareAccessories" type="screen" page="component://assetmaint/widget/ismgr/FixedAssetScreens.xml#ListHardwareAccessories"/>
-    <view-map name="ListInstalledSoftware" type="screen" page="component://assetmaint/widget/ismgr/FixedAssetScreens.xml#ListInstalledSoftware"/>
-    <!-- end of view mappings -->
-</site-conf>
diff --git a/plugins/assetmaint/webapp/ismgr/WEB-INF/web.xml b/plugins/assetmaint/webapp/ismgr/WEB-INF/web.xml
deleted file mode 100644
index 0524ce6..0000000
--- a/plugins/assetmaint/webapp/ismgr/WEB-INF/web.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<?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.
--->
-
-<web-app version="3.0">
-
-    <display-name>Apache OFBiz - Information Systems</display-name>
-    <description>Information Systems Management application of the Apache OFBiz Project</description>
-
-    <context-param>
-        <description>The Name of the Entity Delegator to use, defined in entityengine.xml</description>
-        <param-name>entityDelegatorName</param-name>
-        <param-value>default</param-value>
-    </context-param>
-    <context-param>
-        <description>A unique name used to identify/recognize the local dispatcher for the Service Engine</description>
-        <param-name>localDispatcherName</param-name>
-        <param-value>ismgr</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the main-decorator screen to use for this webapp.</description>
-        <param-name>mainDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/ismgr/CommonScreens.xml</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the CommonFacilityDecorator screen to use for this webapp.</description>
-        <param-name>commonFacilityDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/ismgr/CommonScreens.xml</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the CommonFixedAssetDecorator screen to use for this webapp.</description>
-        <param-name>fixedAssetDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/ismgr/CommonScreens.xml</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the CommonFixedAssetMaintDecorator screen to use for this webapp.</description>
-        <param-name>fixedAssetMaintDecoratorLocation</param-name>
-        <param-value>component://assetmaint/widget/ismgr/AssetmaintScreens.xml</param-value>
-    </context-param>
-
-    <filter>
-        <display-name>ControlFilter</display-name>
-        <filter-name>ControlFilter</filter-name>
-        <filter-class>org.apache.ofbiz.webapp.control.ControlFilter</filter-class>
-        <init-param>
-            <param-name>allowedPaths</param-name>
-            <param-value>/error:/control:/select:/index.html:/index.jsp:/default.html:/default.jsp:/images</param-value>
-        </init-param>
-        <init-param>
-            <param-name>redirectPath</param-name>
-            <param-value>/control/main</param-value>
-        </init-param>
-    </filter>
-    <filter>
-        <display-name>ContextFilter</display-name>
-        <filter-name>ContextFilter</filter-name>
-        <filter-class>org.apache.ofbiz.webapp.control.ContextFilter</filter-class>
-    </filter>
-    <filter-mapping>
-        <filter-name>ControlFilter</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-    <filter-mapping>
-        <filter-name>ContextFilter</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-
-    <listener><listener-class>org.apache.ofbiz.webapp.control.ControlEventListener</listener-class></listener>
-    <listener><listener-class>org.apache.ofbiz.webapp.control.LoginEventListener</listener-class></listener>
-    <!-- NOTE: not all app servers support mounting implementations of the HttpSessionActivationListener interface -->
-    <!-- <listener><listener-class>org.apache.ofbiz.webapp.control.ControlActivationEventListener</listener-class></listener> -->
-
-    <servlet>
-        <description>Main Control Servlet</description>
-        <display-name>ControlServlet</display-name>
-        <servlet-name>ControlServlet</servlet-name>
-        <servlet-class>org.apache.ofbiz.webapp.control.ControlServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-    <servlet-mapping>
-        <servlet-name>ControlServlet</servlet-name>
-        <url-pattern>/control/*</url-pattern>
-    </servlet-mapping>
-
-    <session-config>
-        <session-timeout>60</session-timeout> <!-- in minutes -->
-        <cookie-config>
-          <http-only>true</http-only>
-          <secure>true</secure>
-        </cookie-config>
-        <tracking-mode>COOKIE</tracking-mode>
-    </session-config>
-
-    <welcome-file-list>
-        <welcome-file>index.jsp</welcome-file>
-        <welcome-file>index.html</welcome-file>
-        <welcome-file>index.htm</welcome-file>
-    </welcome-file-list>
-</web-app>
diff --git a/plugins/assetmaint/webapp/ismgr/error/error.jsp b/plugins/assetmaint/webapp/ismgr/error/error.jsp
deleted file mode 100644
index 83f0147..0000000
--- a/plugins/assetmaint/webapp/ismgr/error/error.jsp
+++ /dev/null
@@ -1,53 +0,0 @@
-<%--
-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.
---%>
-
-<%@ page import="org.apache.ofbiz.base.util.*" %>
-<html>
-<head>
-<title>OFBiz Message</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</head>
-
-<% String errorMsg = (String) request.getAttribute("_ERROR_MESSAGE_"); %>
-
-<body bgcolor="#FFFFFF">
-<div align="center">
-  <br/>
-  <table width="100%" border="1" height="200">
-    <tr>
-      <td>
-        <table width="100%" border="0" height="200">
-          <tr bgcolor="#CC6666">
-            <td height="45">
-              <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="4" color="#FFFFFF"><b>:ERROR MESSAGE:</b></font></div>
-            </td>
-          </tr>
-          <tr>
-            <td>
-              <div align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><%=UtilFormatOut.replaceString(errorMsg, "\n", "<br/>")%></font></div>
-            </td>
-          </tr>
-        </table>
-      </td>
-    </tr>
-  </table>
-</div>
-<div align="center"></div>
-</body>
-</html>
diff --git a/plugins/assetmaint/webapp/ismgr/error/error403.jsp b/plugins/assetmaint/webapp/ismgr/error/error403.jsp
deleted file mode 100644
index e17f67f..0000000
--- a/plugins/assetmaint/webapp/ismgr/error/error403.jsp
+++ /dev/null
@@ -1,27 +0,0 @@
-<%--
-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.
---%>
-
-<html>
-<head>
-<title>ERROR!</title>
-</head>
-<body>
-<h3>An Error 403 Happened: Access to resource Forbidden</h3>
-</body>
-</html>
diff --git a/plugins/assetmaint/webapp/ismgr/error/error404.jsp b/plugins/assetmaint/webapp/ismgr/error/error404.jsp
deleted file mode 100644
index 51b8499..0000000
--- a/plugins/assetmaint/webapp/ismgr/error/error404.jsp
+++ /dev/null
@@ -1,27 +0,0 @@
-<%--
-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.
---%>
-
-<html>
-<head>
-<title>ERROR!</title>
-</head>
-<body>
-<h3>An Error 404 Happened: Request resource Not Found</h3>
-</body>
-</html>
diff --git a/plugins/assetmaint/webapp/ismgr/index.jsp b/plugins/assetmaint/webapp/ismgr/index.jsp
deleted file mode 100644
index e3c3cdf..0000000
--- a/plugins/assetmaint/webapp/ismgr/index.jsp
+++ /dev/null
@@ -1,19 +0,0 @@
-<%--
-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.
---%>
-<%response.sendRedirect("control/main");%>
diff --git a/plugins/assetmaint/widget/AssetmaintMenus.xml b/plugins/assetmaint/widget/AssetmaintMenus.xml
deleted file mode 100644
index 7868ce7..0000000
--- a/plugins/assetmaint/widget/AssetmaintMenus.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<?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.
--->
-
-<menus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns="http://ofbiz.apache.org/Widget-Menu" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Menu http://ofbiz.apache.org/dtds/widget-menu.xsd">
-
-    <menu name="AssetMaintAppBar" title="${uiLabelMap.AssetMaintManager}" extends="CommonAppBarMenu" extends-resource="component://common/widget/CommonMenus.xml">
-        <menu-item name="task" title="${uiLabelMap.WorkEffortTaskList}"><link target="mytasks"/></menu-item>
-        <menu-item name="ListFixedAssets" title="${uiLabelMap.AccountingFixedAssets}"><link target="ListFixedAssets"/></menu-item>
-        <menu-item name="fixedAssetMaints" title="${uiLabelMap.AccountingFixedAssetMaints}"><link target="findFixedAssetMaints"/></menu-item>
-        <menu-item name="facility" title="${uiLabelMap.ProductFacility}"><link target="FindFacility"/></menu-item>
-    </menu>
-
-    <menu name="FixedAssetTabBar" extends="FixedAssetTabBar" extends-resource="component://accounting/widget/AccountingMenus.xml">
-        <menu-item name="EditProductMaints" title="${uiLabelMap.AssetMaintProductMaint}">
-            <condition><not><if-empty field="fixedAsset.instanceOfProductId"/></not></condition>
-            <link target="EditProductMaints">
-                <parameter param-name="fixedAssetId" from-field="fixedAsset.fixedAssetId"/>
-                <parameter param-name="productId" from-field="fixedAsset.instanceOfProductId"/>
-            </link>
-        </menu-item>
-    </menu>
-
-    <menu name="FixedAssetMaintTabBar" extends="FixedAssetMaintTabBar" extends-resource="component://accounting/widget/AccountingMenus.xml">
-        <menu-item name="EditWorkEfforts" title="${uiLabelMap.WorkEffortAllTasks}">
-            <link target="EditWorkEfforts">
-                <parameter param-name="fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-                <parameter param-name="maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-                <parameter param-name="workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditWorkEffortTimeEntries" title="${uiLabelMap.WorkEffortTimesheetTimeEntries}">
-            <link target="EditWorkEffortTimeEntries">
-                <parameter param-name="fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-                <parameter param-name="maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-                <parameter param-name="workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditWorkEffortNotes" title="${uiLabelMap.WorkEffortNotes}">
-            <link target="EditWorkEffortNotes">
-                <parameter param-name="fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-                <parameter param-name="maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-                <parameter param-name="workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditItemIssuances" title="${uiLabelMap.AssetMaintItemIssuance}">
-            <link target="EditItemIssuances">
-                <parameter param-name="fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-                <parameter param-name="maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-            </link>
-        </menu-item>
-    </menu>
-
-    <menu name="FacilityTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml"
-          default-menu-item-name="ViewFacilityInventoryByProduct">
-        <menu-item name="EditFacility" title="${uiLabelMap.ProductFacility}">
-            <link target="EditFacility">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="FacilityChildren" title="${uiLabelMap.CommonEntityChildren}">
-            <link target="FacilityChildren">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="ViewContactMechs" title="${uiLabelMap.PartyContactMechs}">
-            <link target="ViewContactMechs">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="FindFacilityLocation" title="${uiLabelMap.ProductLocations}">
-            <link target="FindFacilityLocation">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="ViewFacilityInventoryByProduct" title="${uiLabelMap.ProductInventory}">
-            <link target="ViewFacilityInventoryByProduct">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditFacilityInventoryItems" title="${uiLabelMap.ProductInventoryItems}">
-            <link target="EditFacilityInventoryItems">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="ReceiveInventory" title="${uiLabelMap.ProductInventoryReceive}">
-            <link target="ReceiveInventory">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-        <menu-item name="FindFacilityTransfers" title="${uiLabelMap.ProductInventoryXfers}">
-            <link target="FindFacilityTransfers">
-                <parameter param-name="facilityId"/>
-            </link>
-        </menu-item>
-    </menu>
-
-</menus>
diff --git a/plugins/assetmaint/widget/AssetmaintScreens.xml b/plugins/assetmaint/widget/AssetmaintScreens.xml
deleted file mode 100644
index b73a16e..0000000
--- a/plugins/assetmaint/widget/AssetmaintScreens.xml
+++ /dev/null
@@ -1,343 +0,0 @@
-<?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="CommonFixedAssetMaintDecorator">
-        <section>
-            <actions>
-                <set field="headerItem" value="ListFixedAssetMaints"/>
-                <set field="tabButtonItem" value="ListFixedAssetMaints"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetDecorator" location="${parameters.fixedAssetDecoratorLocation}">
-                    <decorator-section name="pre-body">
-                        <section>
-                            <condition><not><if-empty field="maintHistSeqId"/></not></condition>
-                            <widgets>
-                                <include-menu name="FixedAssetMaintTabBar" location="component://assetmaint/widget/AssetmaintMenus.xml"/>
-                            </widgets>
-                        </section>
-                    </decorator-section>
-                    <decorator-section name="body">
-                        <container style="button-bar"><link target="EditFixedAssetMaint" text="${uiLabelMap.AccountingNewFixedAssetMaint}" style="buttontext create"/></container>
-                        <decorator-section-include name="body"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="FindFixedAssetMaints">
-        <section>
-            <actions>
-                <set field="headerItem" value="fixedAssetMaints"/>
-                <set field="titleProperty" value="PageTitleFindFixedAssetMaints"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <section>
-                            <condition>
-                                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-                            </condition>
-                            <widgets>
-                                <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
-                                    <decorator-section name="menu-bar">
-                                        <section>
-                                            <condition>
-                                                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="CREATE"/>
-                                            </condition>
-                                            <widgets>
-                                                <container style="button-bar">
-                                                    <link target="EditFixedAssetMaint" text="${uiLabelMap.AccountingNewFixedAssetMaint}" style="buttontext create"/>
-                                                </container>
-                                            </widgets>
-                                        </section>
-                                    </decorator-section>
-                                    <decorator-section name="search-options">
-                                        <include-form name="FindFixedAssetMaint" location="component://assetmaint/widget/forms/FixedAssetForms.xml"/>
-                                    </decorator-section>
-                                    <decorator-section name="search-results">
-                                        <include-form name="ListFixedAssetMaints" location="component://assetmaint/widget/forms/FixedAssetForms.xml"/>
-                                    </decorator-section>
-                                </decorator-screen>
-                            </widgets>
-                            <fail-widgets>
-                                <label style="h3">${uiLabelMap.AssetMaintViewPermissionError}</label>
-                            </fail-widgets>
-                        </section>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="EditFixedAssetMaint">
-        <section>
-            <actions>
-                <set field="titleProperty" value="PageTitleEditFixedAssetMaintenance"/>
-                <script location="component://assetmaint/groovyScripts/assetmaint/EditMaint.groovy"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="maintHistSeqId" from-field="parameters.maintHistSeqId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-                <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-                <set field="workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-                <entity-one entity-name="WorkEffort" value-field="workEffort"/>
-                <get-related-one value-field="workEffort" relation-name="WorkEffortType" to-value-field="workEffortType"/>
-                <get-related-one value-field="workEffort" relation-name="CurrentStatusItem" to-value-field="currentStatusItem"/>
-                <get-related-one value-field="workEffort" relation-name="WorkEffortPurposeType" to-value-field="workEffortPurposeType"/>
-                <get-related-one value-field="fixedAsset" relation-name="LocatedAtFacility" to-value-field="facility"/>
-                <entity-and entity-name="WorkEffortPartyAssignView" list="relatedPartyAssigns">
-                    <field-map field-name="workEffortId"/>
-                </entity-and>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap"/>
-                <set field="title" value="${uiLabelMap.AccountingFixedAssetMaint}: ${fixedAsset.fixedAssetName}"/>
-            </actions>
-            <widgets>
-                <section>
-                    <condition><if-empty field="maintHistSeqId"/></condition>
-                    <actions><set field="titleProperty" value="AccountingAddFixedAssetMaintenance"/></actions>
-                    <widgets/>
-                </section>
-                <decorator-screen name="CommonFixedAssetMaintDecorator">
-                    <decorator-section name="body">
-                        <section>
-                            <condition><not><if-empty field="maintHistSeqId"/></not></condition>
-                            <widgets>
-                                <container style="button-bar">
-                                    <link target="printFixedAssetMaint.pdf" target-window="_blank" text="${uiLabelMap.CommonPrint}" style="buttontext">
-                                        <parameter param-name="fixedAssetId"/>
-                                        <parameter param-name="maintHistSeqId"/>
-                                    </link>
-                                </container>
-                            </widgets>
-                        </section>
-                        <include-form name="EditFixedAssetMaint" location="component://assetmaint/widget/forms/FixedAssetForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="EditWorkEfforts">
-        <section>
-            <actions>
-                <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap"/>
-                <set field="titleProperty" value="PageTitleEditWorkEffort"/>
-                <set field="tabButtonItemFixedAssetMaint" value="EditWorkEfforts"/>
-                <script location="component://assetmaint/groovyScripts/workeffort/EditWorkEfforts.groovy"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetMaintDecorator">
-                    <decorator-section name="body">
-                        <section>
-                            <condition>
-                                <not><if-empty field="parameters.workEffortIdFrom"/></not>
-                            </condition>
-                            <widgets>
-                                <container style="button-bar">
-                                    <link target="EditWorkEfforts" text="${uiLabelMap.AssetMaintParentWorkEffort}" style="buttontext">
-                                        <parameter param-name="workEffortId" from-field="parameters.workEffortIdFrom"/>
-                                    </link>
-                                </container>
-                            </widgets>
-                        </section>
-                        <section>
-                            <condition>
-                                <if-empty field="workEffort"/>
-                            </condition>
-                            <widgets>
-                                <include-form name="EditWorkEffort" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                            </widgets>
-                            <fail-widgets>
-                                <include-form name="EditWorkEffort" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                                <container style="h2">
-                                    <label text="${uiLabelMap.PageTitleListWorkEffortPartyAssigns}"/>
-                                </container>
-                                <section>
-                                    <condition>
-                                        <if-compare field="parameters.mode" operator="equals" value="addAssignment"/>
-                                    </condition>
-                                    <widgets>
-                                        <screenlet id="add-party-assignment" title="${uiLabelMap.PageTitleAddWorkEffortPartyAssign}" collapsible="true">
-                                            <include-form name="EditWorkEffortPartyAssign" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                                        </screenlet>
-                                    </widgets>
-                                    <fail-widgets>
-                                        <container style="button-bar">
-                                            <link target="EditWorkEfforts" style="buttontext create"  text="${uiLabelMap.CommonNew}">
-                                                <parameter param-name="fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-                                                <parameter param-name="maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-                                                <parameter param-name="workEffortId"/>
-                                                <parameter param-name="mode" value="addAssignment"/>
-                                            </link>
-                                        </container>
-                                    </fail-widgets>
-                                </section>
-                                <include-form name="ListWorkEffortPartyAssigns" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                                <container style="h2">
-                                    <label text="${uiLabelMap.PageTitleTreeWorkEfforts}"/>
-                                </container>
-                                <section>
-                                    <condition>
-                                        <if-compare field="parameters.mode" operator="equals" value="addChildTask"/>
-                                    </condition>
-                                    <widgets>
-                                        <screenlet id="add-workeffort-task" title="${uiLabelMap.WorkEffortAddTask}" collapsible="true">
-                                            <include-form name="AddWorkEffortChild" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                                        </screenlet>
-                                    </widgets>
-                                    <fail-widgets>
-                                        <container style="button-bar">
-                                            <link target="EditWorkEfforts" style="buttontext create" text="${uiLabelMap.CommonNew}">
-                                            <parameter param-name="fixedAssetId" from-field="fixedAssetMaint.fixedAssetId"/>
-                                            <parameter param-name="maintHistSeqId" from-field="fixedAssetMaint.maintHistSeqId"/>
-                                              <parameter param-name="workEffortId"/>
-                                               <parameter param-name="mode" value="addChildTask"/>
-                                        </link>
-                                        </container>
-                                    </fail-widgets>
-                                </section>
-                                 <include-form name="ListWorkEffortChildren" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                            </fail-widgets>
-                        </section>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="EditWorkEffortTimeEntries">
-        <section>
-            <actions>
-                <set field="titleProperty" value="PageTitleListWorkEffortTimeEntries"/>
-                <set field="tabButtonItemFixedAssetMaint" value="EditWorkEffortTimeEntries"/>
-                <set field="workEffortId" from-field="parameters.workEffortId"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="maintHistSeqId" from-field="parameters.maintHistSeqId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-                <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetMaintDecorator">
-                    <decorator-section name="body">
-                        <screenlet id="add-time-entry" title="${uiLabelMap.PageTitleAddWorkEffortTimeEntry}" collapsible="true">
-                            <include-form name="AddWorkEffortTimeEntry" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                        </screenlet>
-                        <include-form name="ListWorkEffortTimeEntries" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="EditWorkEffortNotes">
-        <section>
-            <actions>
-                <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="titleProperty" value="PageTitleListWorkEffortNotes"/>
-                <set field="tabButtonItemFixedAssetMaint" value="EditWorkEffortNotes"/>
-                <set field="workEffortId" from-field="parameters.workEffortId"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="maintHistSeqId" from-field="parameters.maintHistSeqId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-                <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-                <set field="noteId" from-field="parameters.noteId"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetMaintDecorator">
-                    <decorator-section name="body">
-                        <screenlet id="add-workeffort-note" title="${uiLabelMap.PageTitleAddWorkEffortNotes}" collapsible="true">
-                            <include-form name="AddWorkEffortNote" location="component://assetmaint/widget/forms/WorkEffortForms.xml"/>
-                        </screenlet>
-                        <include-form name="ListWorkEffortNotes" location="component://workeffort/widget/WorkEffortForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="EditItemIssuances">
-        <section>
-            <actions>
-                <set field="titleProperty" value="PageTitleListItemIssuance"/>
-                <set field="tabButtonItemFixedAssetMaint" value="EditItemIssuances"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="maintHistSeqId" from-field="parameters.maintHistSeqId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-                <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-                <entity-condition entity-name="ProductInventoryItemAndItemIssuance" list="itemIssuanceList">
-                    <condition-expr field-name="quantity" operator="greater" value="0"/>
-                </entity-condition>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetMaintDecorator">
-                    <decorator-section name="body">
-                        <screenlet id="add-item-issuance" title="${uiLabelMap.PageTitleAddItemIssuance}" collapsible="true">
-                            <include-form name="AddItemIssuance" location="component://assetmaint/widget/forms/FixedAssetForms.xml"/>
-                        </screenlet>
-                        <include-form name="ListItemIssuance" location="component://assetmaint/widget/forms/FixedAssetForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="PrintFixedAssetMaint">
-        <section>
-            <actions>
-                <set field="title" value="Order"/>
-                <property-map resource="AssetMaintUiLabels" map-name="uiLabelMap" global="true"/>
-                <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="CommonUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap" global="true"/>
-
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="maintHistSeqId" from-field="parameters.maintHistSeqId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-                <set field="layoutSettings.documentTitle" from-field="uiLabelMap.AccountingFixedAssetMaintWorkEffortName"/>
-                <entity-one entity-name="FixedAssetMaint" value-field="fixedAssetMaint"/>
-                <entity-condition entity-name="ProductInventoryItemAndItemIssuance" list="itemIssuanceList">
-                    <condition-expr field-name="quantity" operator="greater" value="0"/>
-                </entity-condition>
-                <set field="workEffortId" from-field="fixedAssetMaint.scheduleWorkEffortId"/>
-                <entity-condition entity-name="WorkEffortNoteAndData" list="notes">
-                    <condition-expr field-name="workEffortId" from-field="workEffortId"/>
-                    <order-by field-name="noteId"/>
-                </entity-condition>
-                <script location="component://assetmaint/groovyScripts/assetmaint/PrintFixedAssetMaint.groovy"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="GlobalFoDecorator" location="component://common/widget/CommonScreens.xml">
-                    <decorator-section name="body">
-                        <platform-specific>
-                            <xsl-fo><html-template location="component://assetmaint/template/PrintFixedAssetMaint.fo.ftl"/></xsl-fo>
-                        </platform-specific>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-</screens>
diff --git a/plugins/assetmaint/widget/CommonScreens.xml b/plugins/assetmaint/widget/CommonScreens.xml
deleted file mode 100644
index fb708b1..0000000
--- a/plugins/assetmaint/widget/CommonScreens.xml
+++ /dev/null
@@ -1,143 +0,0 @@
-<?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="main-decorator">
-        <section>
-            <actions>
-                <property-map resource="AssetMaintUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="activeApp" value="assetmaint" global="true"/>
-                <set field="layoutSettings.companyName" from-field="uiLabelMap.AssetMaintCompanyName" global="true"/>
-                <set field="layoutSettings.companySubtitle" from-field="uiLabelMap.AssetMaintCompanySubtitle" global="true"/>
-                <!-- layoutSettings.headerImageUrl can be used to specify an application specific logo; if not set,
-                     then the global layoutSettings.commonHeaderImageUrl (specified in GlobalDecorator) will be used. -->
-                <!--<set field="layoutSettings.headerImageUrl" value="/images/ofbiz_logo.gif" global="true"/>-->
-                <set field="applicationMenuName" value="AssetMaintAppBar" global="true"/>
-                <set field="applicationMenuLocation" value="component://assetmaint/widget/AssetmaintMenus.xml" global="true"/>
-                <set field="applicationTitle" value="${uiLabelMap.AssetMaintApplication}"/>
-            </actions>
-            <widgets>
-                <include-screen name="ApplicationDecorator" location="component://commonext/widget/CommonScreens.xml"/>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="CommonFacilityDecorator">
-        <section>
-            <actions>
-                <set field="headerItem" value="facility"/>
-                <set field="facilityId" from-field="parameters.facilityId"/>
-                <entity-one entity-name="Facility" value-field="facility"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="pre-body">
-                        <include-menu name="FacilityTabBar" location="component://assetmaint/widget/AssetmaintMenus.xml"/>
-                    </decorator-section>
-                    <decorator-section name="body">
-                        <section>
-                            <condition>
-                                <if-service-permission service-name="facilityGenericPermission" main-action="VIEW"/>
-                            </condition>
-                            <widgets>
-                                <section>
-                                    <condition>
-                                        <or>
-                                            <not><if-empty field="facility"/></not>
-                                            <not><if-empty field="displayWithNoFacility"/></not>
-                                        </or>
-                                    </condition>
-                                    <widgets>
-                                        <container style="button-bar"><link target="EditFacility" text="${uiLabelMap.ProductNewFacility}" style="buttontext create"/></container>
-                                        <decorator-section-include name="body"/>
-                                    </widgets>
-                                    <fail-widgets>
-                                        <label style="h3">${uiLabelMap.ProductErrorFacilityIdNotFound}</label>
-                                    </fail-widgets>
-                                </section>
-                            </widgets>
-                            <fail-widgets>
-                                <label style="h3">${uiLabelMap.AssetMaintViewPermissionError}</label>
-                            </fail-widgets>
-                        </section>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="CommonFixedAssetDecorator">
-        <section>
-            <actions>
-                <set field="headerItem" value="ListFixedAssets"/>
-                <set field="fixedAssetId" from-field="fixedAsset.fixedAssetId" default-value="${parameters.fixedAssetId}"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="pre-body">
-                        <section>
-                            <condition>
-                                <not><if-empty field="fixedAssetId"/></not>
-                            </condition>
-                            <widgets>
-                                <include-menu name="FixedAssetTabBar" location="component://assetmaint/widget/AssetmaintMenus.xml"/>
-                            </widgets>
-                        </section>
-                        <decorator-section-include name="pre-body"/>
-                    </decorator-section>
-                    <decorator-section name="body">
-                        <section>
-                            <condition>
-                                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-                            </condition>
-                            <widgets>
-                                <section>
-                                    <condition>
-                                        <not><if-empty field="fixedAssetId"/></not>
-                                    </condition>
-                                    <widgets>
-                                        <container style="h1"><label text="${uiLabelMap[titleProperty]} ${uiLabelMap.CommonFor} ${fixedAsset.fixedAssetName} [${fixedAssetId}]  ${${extraFunctionName}}"/></container>
-                                    </widgets>
-                                    <fail-widgets>
-                                        <container style="h1"><label text="${uiLabelMap[titleProperty]}"/></container>
-                                    </fail-widgets>
-                                </section>
-                                <decorator-section-include name="body"/>
-                            </widgets>
-                            <fail-widgets>
-                                <label style="h3" text="${uiLabelMap.AccountingViewPermissionError}"/>
-                            </fail-widgets>
-                        </section>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-    
-</screens>
-
diff --git a/plugins/assetmaint/widget/FacilityScreens.xml b/plugins/assetmaint/widget/FacilityScreens.xml
deleted file mode 100644
index 27e239f..0000000
--- a/plugins/assetmaint/widget/FacilityScreens.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?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="ViewFacilityInventoryByProduct">
-        <section>
-            <actions>
-                <set field="titleProperty" value="PageTitleEditFacilityInventoryItems"/>
-                <set field="headerItem" value="facility"/>
-                <set field="tabButtonItem" value="EditFacilityInventoryItems"/>
-                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
-                <property-to-field resource="widget" property="widget.form.defaultViewSize" field="viewSizeDefaultValue"/>
-                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="${viewSizeDefaultValue}"/>
-
-                <!-- This is the target of the search form-->
-                <set field="facilityInventoryByProductScreen" value="ViewFacilityInventoryByProduct"/>
-
-                <set field="facilityId" from-field="parameters.facilityId"/>
-                <set field="productTypeId" from-field="parameters.productTypeId"/>
-                <set field="searchInProductCategoryId" from-field="parameters.searchInProductCategoryId"/>
-                <set field="productSupplierId" from-field="parameters.productSupplierId"/>
-                <set field="offsetQOHQty" from-field="parameters.offsetQOHQty"/>
-                <set field="offsetATPQty" from-field="parameters.offsetATPQty"/>
-                <set field="productsSoldThruTimestamp" from-field="parameters.productsSoldThruTimestamp" type="Timestamp"/>
-                <set field="internalName" from-field="parameters.internalName"/>
-                <set field="productId" from-field="parameters.productId"/>
-
-                <script location="component://product/groovyScripts/facility/facility/CountFacilityInventoryByProduct.groovy"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFacilityDecorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-
-                        <container>
-                            <label style="h1">${uiLabelMap.PageTitleEditFacilityInventoryItems} ${uiLabelMap.CommonFor}:</label>
-                            <label style="h2">${facility.facilityName} [${uiLabelMap.CommonId}:${facilityId}]</label>
-                        </container>
-                        <container>
-                            <link target="EditFacilityInventoryItems" text="${uiLabelMap.ProductInventoryItems}" style="buttontext">
-                                <parameter param-name="facilityId" from-field="facilityId"/>
-                            </link>
-                            <!--<link target="ViewFacilityInventoryByProductSimple" text="${uiLabelMap.CommonPrint}" style="buttontext">
-                                <parameter param-name="facilityId" from-field="facilityId"/>
-                            </link>-->
-                            <link target="ViewFacilityInventoryByProductReport?${searchParameterString}" text="${uiLabelMap.CommonPrint}" style="buttontext"/>
-                            <link target="ViewFacilityInventoryByProductExport?${searchParameterString}" text="${uiLabelMap.CommonExport}" style="buttontext"/>
-                        </container>
-
-                        <include-form name="FindFacilityInventoryByProduct" location="component://product/widget/facility/FacilityForms.xml"/>
-                        <include-form name="ListFacilityInventoryByProduct" location="component://product/widget/facility/FacilityForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-</screens>
diff --git a/plugins/assetmaint/widget/LookupScreens.xml b/plugins/assetmaint/widget/LookupScreens.xml
deleted file mode 100644
index bf4ac5f..0000000
--- a/plugins/assetmaint/widget/LookupScreens.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?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="LookupPerson">
-        <section>
-            <condition>
-                <if-service-permission service-name="partyBasePermissionCheck" main-action="VIEW"/>
-            </condition>
-            <actions>
-                <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
-
-                <set field="title" value="${uiLabelMap.PartyLookupPartyPerson}"/>
-                <set field="entityName" value="Person"/>
-                <set field="queryString" from-field="result.queryString"/>
-                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer"/>
-                <property-to-field resource="widget" property="widget.form.defaultViewSize" field="viewSizeDefaultValue"/>
-                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="${viewSizeDefaultValue}"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="LookupDecorator" location="component://common/widget/CommonScreens.xml">
-                    <decorator-section name="search-options">
-                        <include-form name="lookupPerson" location="component://assetmaint/widget/forms/LookupForms.xml"/>
-                    </decorator-section>
-                    <decorator-section name="search-results">
-                        <include-form name="ListLookupPerson" location="component://party/widget/partymgr/LookupForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-</screens>
diff --git a/plugins/assetmaint/widget/ProductScreens.xml b/plugins/assetmaint/widget/ProductScreens.xml
deleted file mode 100644
index 84be2b2..0000000
--- a/plugins/assetmaint/widget/ProductScreens.xml
+++ /dev/null
@@ -1,75 +0,0 @@
-<?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="LookupPartsProduct">
-        <section>
-            <condition>
-                <if-has-permission permission="ASSETMAINT" action="_VIEW"/>
-            </condition>
-            <actions>
-                <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="title" value="${uiLabelMap.PageTitleLookupProduct}"/>
-                <set field="queryString" from-field="result.queryString"/>
-                <set field="primaryProductCategoryId" value="PARTS"/>
-                <set field="submitTarget" value="LookupPartsProduct"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="LookupDecorator" location="component://common/widget/CommonScreens.xml">
-                    <decorator-section name="search-options">
-                        <include-form name="LookupProduct" location="component://assetmaint/widget/forms/ProductForms.xml"/>
-                    </decorator-section>
-                    <decorator-section name="search-results">
-                        <include-form name="ListLookupProduct" location="component://assetmaint/widget/forms/ProductForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="EditProductMaints">
-        <section>
-            <actions>
-                <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="titleProperty" value="PageTitleEditProductMaintenance"/>
-                <set field="labelTitleProperty" value="ProductMaintenance"/>
-                <set field="tabButtonItem" value="EditProductMaints"/>
-                <set field="productId" from-field="parameters.productId"/>
-                <entity-one entity-name="Product" value-field="product"/>
-                <set field="productName" from-field="product.productName"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetDecorator" location="${parameters.fixedAssetDecoratorLocation}">
-                    <decorator-section name="body">
-                        <screenlet id="addProductMaint" title="${uiLabelMap.PageTitleAddProductMaintenance}" collapsible="true">
-                            <include-form name="AddProductMaint" location="component://assetmaint/widget/forms/ProductForms.xml"/>
-                        </screenlet>
-                        <include-form name="ListProductMaints" location="component://assetmaint/widget/forms/ProductForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-</screens>
diff --git a/plugins/assetmaint/widget/forms/FixedAssetForms.xml b/plugins/assetmaint/widget/forms/FixedAssetForms.xml
deleted file mode 100644
index 80bcb05..0000000
--- a/plugins/assetmaint/widget/forms/FixedAssetForms.xml
+++ /dev/null
@@ -1,141 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-    <form name="FindFixedAssets" type="single" target="findFixedAssets" title="${uiLabelMap.AccountingFindFixedAssets}"
-        header-row-style="header-row" default-table-style="basic-table">
-        <field name="fixedAssetId"  title="${uiLabelMap.AccountingFixedAssetId}"><text-find ignore-case="true"/></field>
-        <field name="instanceOfProductId" title="${uiLabelMap.AccountingInstanceOfProductId}"><text-find ignore-case="true"/></field>
-        <field name="classEnumId" title="${uiLabelMap.AccountingFixedAssetClassEnumId}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="Enumeration" key-field-name="enumId">
-                    <entity-constraint name="enumTypeId" operator="equals" value="FXAST_CLASS"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
-        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
-    </form>
-
-    <!-- Maintences Search Options form -->
-    <form name="FindFixedAssetMaint" default-map-name="timesheet" target="findFixedAssetMaints" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <field name="fixedAssetId"><text-find ignore-case="true"/></field>
-        <field name="maintHistSeqId"><text-find ignore-case="true"/></field>
-        <field name="productMaintTypeId" title="${uiLabelMap.AccountingFixedAssetMaintType}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="ProductMaintType">
-                    <entity-order-by field-name="productMaintTypeId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="statusId" title="${uiLabelMap.CommonStatus}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="StatusItem">
-                    <entity-constraint name="statusTypeId" operator="equals" value="FIXEDAST_MNT_STATUS"/>
-                    <entity-order-by field-name="sequenceId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="actualStartDate"><date-find/></field>
-        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
-        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
-    </form>
-
-    <!-- Special version of the same form in Accounting. This one lists all maintenances, not just
-        maintenances for a specific fixed asset. -->
-    <form name="ListFixedAssetMaints" target="" title="" type="list" list-name="listIt" paginate-target="findFixedAssetMaints" paginate="true"
-        header-row-style="header-row-2" odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
-        <actions>
-            <service  service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="FixedAssetMaintWorkEffort"/>
-                <field-map field-name="orderBy" value="-actualStartDate"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="maintHistSeqId" widget-style="linktext">
-            <hyperlink description="${maintHistSeqId}" target="EditFixedAssetMaint" also-hidden="false">
-                <parameter param-name="fixedAssetId"/>
-                <parameter param-name="maintHistSeqId"/>
-            </hyperlink>
-        </field>
-        <field name="fixedAssetName" title="${uiLabelMap.AccountingFixedAssetName}"><display/></field>
-        <field name="productMaintTypeId" title="${uiLabelMap.AccountingFixedAssetMaintType}"><display-entity entity-name="ProductMaintType"/></field>
-        <field name="statusId" title="${uiLabelMap.CommonStatus}"><display-entity entity-name="StatusItem"/></field>
-        <field name="intervalMeterTypeId" title="${uiLabelMap.AccountingFixedAssetMaintIntervalMeterType}"><display/></field>
-        <field name="intervalQuantity" title="${uiLabelMap.AccountingFixedAssetMaintIntervalQuantity}"><display/></field>
-        <field name="intervalUomId" title="${uiLabelMap.AccountingFixedAssetMaintIntervalUom}"><display/></field>
-        <field name="actualStartDate"><display/></field>
-        <field name="actualCompletionDate"><display/></field>
-    </form>
-
-    <form name="EditFixedAssetMaint" extends="EditFixedAssetMaint" extends-resource="component://accounting/widget/FixedAssetForms.xml" target="updateFixedAssetMaintAndWorkEffort">
-        <alt-target use-when="fixedAssetMaint==null" target="createFixedAssetMaintUpdateWorkEffort"/>
-        <field name="fixedAssetId" use-when="fixedAssetMaint==null" title="${uiLabelMap.AccountingFixedAssetId}" required-field="true"><lookup target-form-name="LookupFixedAsset"/></field>
-        <field name="scheduleWorkEffortId"><hidden/></field>
-        <field name="submitButton" ><ignored/></field>
-        <field map-name="workEffort" position="1"  name="estimatedStartDate"><date-time/></field>
-        <field map-name="workEffort" position="2"  name="estimatedCompletionDate"><date-time/></field>
-        <field map-name="workEffort" position="1" name="actualStartDate"><date-time/></field>
-        <field map-name="workEffort" position="2" name="actualCompletionDate"><date-time/></field>
-        <field name="quickAssignPartyId" title="${uiLabelMap.PartyPartyId}" use-when="fixedAssetMaint == null" field-name="partyId">
-            <lookup target-form-name="LookupPerson"/>
-        </field>
-        <field name="submitButton2" use-when="fixedAssetMaint!=null" title="${uiLabelMap.CommonUpdate}"><submit button-type="button"/></field>
-        <field name="submitButton2" use-when="fixedAssetMaint==null" title="${uiLabelMap.CommonAdd}"><submit button-type="button"/></field>
-    </form>
-
-    <form name="AddItemIssuance" target="issueInventoryItemToFixedAssetMaint" title="PageTitleFixedAssetMaintItemIssuance" default-map-name="newIssuanceItem" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <field name="facilityId">
-            <drop-down>
-                <entity-options entity-name="Facility">
-                    <entity-constraint name="facilityTypeId" value="WAREHOUSE"/>
-                    <entity-order-by field-name="facilityId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="productId" title="${uiLabelMap.AssetMaintPartId}" required-field="true"><lookup  target-form-name="LookupPartsProduct"/></field>
-        <field name="quantity" position="1" title="${uiLabelMap.CommonQuantity}" required-field="true"><text size="10"/></field>
-        <field name="maintHistSeqId"><hidden/></field>
-        <field name="fixedAssetId"><hidden/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonAdd}"><submit button-type="button"/></field>
-    </form>
-
-    <form name="ListItemIssuance"  title="PageTitleFixedAssetMaintItemIssuance" type="list"  list-name="itemIssuanceList"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
-        <field name="productId" title="${uiLabelMap.AssetMaintPartId}"><display/></field>
-        <field name="quantity" position="1" title="${uiLabelMap.CommonQuantity}"><display/></field>
-        <field name="productName" position="1" title="${uiLabelMap.CommonName}"><display/></field>
-        <field name="comments" position="1" title="${uiLabelMap.CommonComments}"><display/></field>
-        <field name="description" position="1" title="${uiLabelMap.CommonDescription}"><display/></field>
-        <field name="returnPart" title=" " widget-style="linktext">
-            <hyperlink description="${uiLabelMap.CommonReturn}" target="returnPartIssuedToFixedAssetMaint">
-                <parameter param-name="itemIssuanceId"/>
-                <parameter param-name="fixedAssetId"/>
-                <parameter param-name="maintHistSeqId"/>
-            </hyperlink>
-        </field>
-    </form>
-</forms>
diff --git a/plugins/assetmaint/widget/forms/LookupForms.xml b/plugins/assetmaint/widget/forms/LookupForms.xml
deleted file mode 100644
index bae2a16..0000000
--- a/plugins/assetmaint/widget/forms/LookupForms.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-    <!-- Person Lookup forms -->
-    <form name="LookupPerson" target="LookupPerson" title="" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <!--<auto-fields-entity entity-name="Person" default-field-type="find"/>-->
-        <field name="partyId" title="${uiLabelMap.PartyPartyId}"><text-find/></field>
-        <field name="firstName" title="${uiLabelMap.PartyFirstName}"><text-find/></field>
-        <field name="lastName"  title="${uiLabelMap.PartyLastName}"><text-find/></field>
-        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
-        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
-    </form>
-</forms>
diff --git a/plugins/assetmaint/widget/forms/ProductForms.xml b/plugins/assetmaint/widget/forms/ProductForms.xml
deleted file mode 100644
index 7f96395..0000000
--- a/plugins/assetmaint/widget/forms/ProductForms.xml
+++ /dev/null
@@ -1,154 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-
-    <form name="EditProduct" type="single" target="updateProduct" title="" default-map-name="product"
-        header-row-style="header-row" default-table-style="basic-table">
-        <alt-target use-when="product==null" target="createProduct"/>
-
-        <field use-when="product==null" name="isCreate"><hidden value="true"/></field>
-
-        <field use-when="product!=null" name="productId" title="${uiLabelMap.ProductProductId}" tooltip="${uiLabelMap.ProductNotModificationRecreatingProduct}"><display/></field>
-        <field use-when="product==null&amp;&amp;productId==null" name="productId" title="${uiLabelMap.ProductProductId}"><text size="20" maxlength="20"/></field>
-        <field use-when="product==null&amp;&amp;productId!=null" name="productId" title="${uiLabelMap.ProductProductId}" tooltip="${uiLabelMap.ProductNotFindProductId} [${productId}]"><text size="20" maxlength="20"/></field>
-
-        <field name="productTypeId"><hidden value="FINISHED_GOOD"/></field>
-        <field name="primaryProductCategoryId"><hidden/></field>
-        <field name="internalName" title="${uiLabelMap.ProductInternalName}"><text size="30" maxlength="60"/></field>
-        <field name="brandName" title="${uiLabelMap.ProductBrandName}" ><text size="30" maxlength="60"/></field>
-        <field name="manufacturerPartyId" title="${uiLabelMap.AccountingFixedAssetManufacturerId}" ><lookup target-form-name="LookupPartyName"/></field>
-        <field name="comments" title="${uiLabelMap.CommonComments}"><text size="60" maxlength="250"/></field>
-        <field name="requireInventory"><hidden value="N"/></field>
-        <field name="autoCreateKeywords"><hidden value="N"/></field>
-        <field name="primaryProductCategoryId" title="${uiLabelMap.ProductPrimaryCategory}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="ProductCategory" key-field-name="productCategoryId" description="${description} [${productCategoryId}]">
-                    <entity-constraint name="productCategoryTypeId" value="CATALOG_CATEGORY"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" use-when="product!=null"><submit button-type="button"/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonCreate}" use-when="product==null"><submit button-type="button"/></field>
-        <field use-when="product!=null" name="lastUpdatedByText" title="${uiLabelMap.ProductLastModifiedBy}:">
-            <display description="[${product.lastModifiedByUserLogin}] ${uiLabelMap.CommonOn} ${product.lastModifiedDate}" also-hidden="false"/>
-        </field>
-        <field use-when="product!=null" name="createdByText" title="${uiLabelMap.CommonCreatedBy}:">
-            <display description="[${product.createdByUserLogin}] ${uiLabelMap.CommonOn} ${product.createdDate}" also-hidden="false"/>
-        </field>
-    </form>
-    <!-- List Product  -->
-    <form name="ListProducts" type="list" list-name="listIt" paginate-target="${submitTarget}"
-        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
-        <actions>
-            <service service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="Product"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="productId" title="${uiLabelMap.CommonId}" widget-style="buttontext">
-            <hyperlink description="${productId}" target="EditProduct" also-hidden="false">
-                <parameter param-name="productId"/>
-            </hyperlink>
-        </field>
-        <field name="brandName" title="${uiLabelMap.ProductBrandName}"><display/></field>
-        <field name="internalName" title="${uiLabelMap.ProductInternalName}"><display/></field>
-        <field name="searchVariants" title="" widget-style="buttontext" use-when="isVirtual!=null&amp;&amp;&quot;${isVirtual}&quot;.equals(&quot;Y&quot;)">
-            <hyperlink description="${uiLabelMap.ProductVariants}" target="LookupVariantProduct" also-hidden="false" target-type="plain">
-                <parameter param-name="productId"/>
-            </hyperlink>
-        </field>
-    </form>
-    <form name="LookupProduct" target="${submitTarget}" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <!-- <auto-fields-entity entity-name="Product" default-field-type="hidden"/> -->
-        <field name="productId" title="${uiLabelMap.CommonId}"><text-find ignore-case="true"/></field>
-        <field name="brandName" title="${uiLabelMap.ProductBrandName}"><text-find ignore-case="true"/></field>
-        <field name="internalName" title="${uiLabelMap.ProductInternalName}"><text-find ignore-case="true"/></field>
-        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
-       <!-- <field name="isVariant"><hidden value="N"/></field>  -->
-        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
-    </form>
-
-    <form name="ListLookupProduct" list-name="listIt" paginate-target="${submitTarget}" title="" type="list"
-         odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
-        <actions>
-            <service service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="Product"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="productId" title="${uiLabelMap.CommonId}" widget-style="buttontext">
-            <hyperlink description="${productId}" target="javascript:set_values('${productId}', '${internalName}')" also-hidden="false" target-type="plain"/>
-        </field>
-        <field name="brandName" title="${uiLabelMap.ProductBrandName}"><display/></field>
-        <field name="internalName" title="${uiLabelMap.ProductInternalName}"><display/></field>
-        <field name="primaryProductCategoryId" title="${uiLabelMap.ProductPrimaryCategory}"><display/></field>
-        <field name="searchVariants" title="" widget-style="buttontext" use-when="isVirtual!=null&amp;&amp;&quot;${isVirtual}&quot;.equals(&quot;Y&quot;)">
-            <hyperlink description="${uiLabelMap.ProductVariants}" target="LookupVariantProduct" also-hidden="false" target-type="plain">
-                <parameter param-name="productId"/>
-            </hyperlink>
-        </field>
-    </form>
-
-    <form name="AddProductMaint" extends="AddProductMaint" extends-resource="component://product/widget/catalog/ProductForms.xml">
-        <field name="fixedAssetId"><hidden value="${parameters.fixedAssetId}"></hidden></field>
-    </form>
-
-    <form name="ListProductMaints" type="list" list-name="listIt" target="updateProductMaint" paginate-target="EditProductMaints"
-        header-row-style="header-row-2" odd-row-style="alternate-row" default-table-style="basic-table">
-        <actions>
-            <entity-condition entity-name="ProductMaint" list="listIt">
-                <condition-expr field-name="productId" from-field="productId"/>
-            </entity-condition>
-        </actions>
-        <field name="fixedAssetId"><hidden value="${parameters.fixedAssetId}"></hidden></field>
-        <field name="productId"><hidden/></field>
-        <field name="productMaintSeqId"><hidden/></field>
-        <field name="productMaintTypeId">
-            <display-entity entity-name="ProductMaintType" key-field-name="productMaintTypeId"/>
-        </field>
-        <field name="maintName"><display/></field>
-        <field name="intervalMeterTypeId">
-            <display-entity entity-name="ProductMeterType" key-field-name="productMeterTypeId"/>
-        </field>
-        <field name="intervalUomId">
-            <display-entity entity-name="Uom" key-field-name="uomId"/>
-        </field>
-        <field name="intervalQuantity"><text/></field>
-        <field name="repeatCount"><text/></field>
-        <field name="maintTemplateWorkEffortId"><lookup target-form-name="LookupWorkEffort"/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" widget-style="smallSubmit"><submit button-type="button"/></field>
-        <field name="deleteLink" title="${uiLabelMap.CommonDelete}" widget-style="buttontext">
-            <hyperlink description="${uiLabelMap.CommonDelete}" target="deleteProductMaint" also-hidden="false">
-                <parameter param-name="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <parameter param-name="productId"/>
-                <parameter param-name="productMaintSeqId"/>
-            </hyperlink>
-        </field>
-    </form>
-
-</forms>
diff --git a/plugins/assetmaint/widget/forms/WorkEffortForms.xml b/plugins/assetmaint/widget/forms/WorkEffortForms.xml
deleted file mode 100644
index 916c357..0000000
--- a/plugins/assetmaint/widget/forms/WorkEffortForms.xml
+++ /dev/null
@@ -1,205 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-
-    <form name="EditWorkEffort" target="updateWorkEffort" title="" type="single" default-map-name="workEffort"
-        header-row-style="header-row" default-table-style="basic-table">
-        <actions>
-            <entity-one entity-name="WorkEffortAssoc" value-field="workEffortAssoc"/>
-            <set field="workEffortIdFrom" from-field="parameters.workEffortIdFrom"/>
-        </actions>
-        <alt-target target="createWorkEffort" use-when="workEffort==null"/>
-        <alt-target target="updateWorkEffortAndAssoc" use-when="workEffortIdFrom!=null"/>
-        <field name="maintHistSeqId" map-name="fixedAssetMaint"><hidden/></field>
-        <field map-name="workEffort" name="workEffortId" title="${uiLabelMap.WorkEffortWorkEffortId}"><display/></field>
-        <field map-name="workEffort" name="workEffortName" position="1" title="${uiLabelMap.CommonName}" required-field="true"><text size="60"/></field>
-        <field map-name="workEffort" name="description" position="1" title="${uiLabelMap.CommonDescription}" required-field="true"><text size="60"/></field>
-        <!-- Child workeffort fields -->
-        <field name="workEffortIdFrom"><hidden value="${parameters.workEffortIdFrom}"/></field>
-        <field name="workEffortIdTo"><hidden value="${parameters.workEffortId}"/></field>
-        <field name="fromDate"><hidden value="${parameters.fromDate}"/></field>
-        <field map-name="workEffortAssoc" name="workEffortAssocTypeId" title="${uiLabelMap.FormFieldTitle_workEffortAssocTypeId}" use-when="workEffortIdFrom!=null">
-            <display-entity entity-name="WorkEffortAssocType"/>
-        </field>
-        <!-- End of child workeffort fields -->
-        <field map-name="workEffort" name="workEffortPurposeTypeId" title="${uiLabelMap.CommonPurpose}" position="1">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="WorkEffortPurposeType" key-field-name="workEffortPurposeTypeId">
-                    <entity-order-by field-name="workEffortPurposeTypeId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field map-name="workEffort" name="currentStatusId" title="${uiLabelMap.CommonStatus}" required-field="true" position="1">
-            <drop-down>
-                <entity-options entity-name="StatusItem" key-field-name="statusId">
-                    <entity-constraint name="statusTypeId" value="TASK_STATUS"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-                <entity-options entity-name="StatusItem" key-field-name="statusId">
-                    <entity-constraint name="statusTypeId" value="EVENT_STATUS"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-                <entity-options entity-name="StatusItem" key-field-name="statusId">
-                    <entity-constraint name="statusId" value="CAL_CANCELLED"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field map-name="workEffort" name="percentComplete" position="2"><text/></field>
-        <field map-name="workEffort" name="estimatedStartDate" position="1"><date-time/></field>
-        <field map-name="workEffort" name="estimatedCompletionDate" position="2"><date-time/></field>
-        <field map-name="workEffort" name="actualStartDate" position="1"><date-time/></field>
-        <field map-name="workEffort" name="actualCompletionDate" position="2"><date-time/></field>
-        <field map-name="workEffort" name="facilityId"><lookup target-form-name="LookupFacility"/></field>
-        <field map-name="fixedAssetMaint" name="fixedAssetId"><hidden/></field>
-        <field map-name="workEffort" name="moneyUomId" title="${uiLabelMap.CommonCurrency}"><ignored/></field>
-        <field map-name="workEffort" name="workEffortTypeId"><hidden value="TASK"/></field>
-        <field map-name="workEffort" name="submitButton" title="${uiLabelMap.CommonSave}"><submit/></field>
-    </form>
-
-    <form name="EditWorkEffortPartyAssign" extends="EditWorkEffortPartyAssign" extends-resource="component://workeffort/widget/WorkEffortPartyAssignForms.xml"
-        target="createWorkEffortPartyAssign">
-        <actions>
-            <entity-condition entity-name="PartyRoleDetailAndPartyDetail" list="listMaintParties">
-                <condition-expr field-name="parentTypeId" value="FAM_ASSIGNEE"/>
-            </entity-condition>
-            <entity-condition entity-name="RoleType" list="listMaintRoles">
-                <condition-expr field-name="parentTypeId" value="FAM_ASSIGNEE"/>
-            </entity-condition>
-        </actions>
-        <field name="roleTypeId">
-            <drop-down>
-                <list-options list-name="listMaintRoles" key-name="roleTypeId"/>
-            </drop-down>
-        </field>
-        <field name="fromDate"><date-time default-value="${nowTimestamp}"/></field>
-        <field name="partyId">
-            <drop-down>
-                <list-options list-name="listMaintParties" key-name="partyId" description="${firstName} ${middleName} ${lastName} ${groupName}"/>
-            </drop-down>
-        </field>
-        <field name="expectationEnumId"><ignored/></field>
-        <field name="facilityId"><hidden value="${facilityId}"/></field>
-    </form>
-
-    <form name="ListWorkEffortPartyAssigns" extends="ListWorkEffortPartyAssigns" extends-resource="component://workeffort/widget/WorkEffortPartyAssignForms.xml"
-        header-row-style="header-row-2" default-table-style="basic-table">
-        <field name="partyId">
-            <display-entity entity-name="PartyNameView" description="${firstName} ${middleName} ${lastName} ${groupName}"/>
-        </field>
-        <field name="statusDateTime"><ignored/></field>
-        <field name="expectationEnumId"><ignored/></field>
-        <field name="facilityId"><ignored/></field>
-        <field name="mustRsvp"><ignored/></field>
-        <field name="comments"><ignored/></field>
-    </form>
-
-    <form name="AddWorkEffortChild" target="createWorkEffortAndAssoc" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <field name="fixedAssetId"><hidden/></field>
-        <field name="maintHistSeqId"><hidden/></field>
-        <field name="workEffortIdTo"><hidden/></field>
-        <field name="workEffortIdFrom"><hidden value="${workEffortId}"/></field>
-        <field name="workEffortTypeId"><hidden value="TASK"/></field>
-        <field name="description"><hidden value="${workEffort.description}"/></field>
-
-        <field name="workEffortAssocTypeId">
-            <drop-down>
-                <entity-options entity-name="WorkEffortAssocType">
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="sequenceNum"><text/></field>
-        <field name="fromDate"><date-time default-value="${nowTimestamp}"/></field>
-        <field name="thruDate"><date-time/></field>
-        <field name="workEffortName" title="${uiLabelMap.CommonName}"><text size="30"/></field>
-        <field name="currentStatusId" title="${uiLabelMap.CommonStatus}">
-            <drop-down>
-                <entity-options entity-name="StatusItem" key-field-name="statusId">
-                    <entity-constraint name="statusTypeId" value="TASK_STATUS"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-                <entity-options entity-name="StatusItem" key-field-name="statusId">
-                    <entity-constraint name="statusId" value="CAL_CANCELLED"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="workEffortPurposeTypeId" title="${uiLabelMap.CommonPurpose}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="WorkEffortPurposeType" key-field-name="workEffortPurposeTypeId">
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="actualStartDate"><date-time/></field>
-        <field name="actualCompletionDate"><date-time/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonAdd}"><submit button-type="button"/></field>
-    </form>
-
-    <form name="ListWorkEffortChildren" type="list"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table">
-        <actions>
-            <entity-condition entity-name="WorkEffortAssocView">
-                <condition-expr field-name="workEffortIdFrom" operator="equals" from-field="workEffortId"/>
-            </entity-condition>
-        </actions>
-        <field name="workEffortName" entry-name="workEffortToName" title="${uiLabelMap.CommonName}">
-            <hyperlink description="${workEffortToName}" target="EditWorkEfforts" also-hidden="false">
-                <parameter param-name="workEffortId" from-field="workEffortIdTo"/>
-                <parameter param-name="workEffortIdFrom" from-field="workEffortId"/>
-                <parameter param-name="fromDate"/>
-                <parameter param-name="workEffortAssocTypeId"/>
-            </hyperlink>
-        </field>
-        <field name="workEffortAssocTypeId">
-            <display-entity entity-name="WorkEffortAssocType"/>
-        </field>
-        <field name="currentStatusId" entry-name="workEffortToCurrentStatusId" title="${uiLabelMap.CommonStatus}">
-            <display-entity entity-name="StatusItem" key-field-name="statusId"/>
-        </field>
-        <field name="workEffortPurposeTypeId" entry-name="workEffortToWorkEffortPurposeTypeId" title="${uiLabelMap.CommonPurpose}">
-            <display-entity entity-name="WorkEffortPurposeType"/>
-        </field>
-        <field name="actualStartDate" entry-name="workEffortToActualStartDate"><display/></field>
-        <field name="actualCompletionDate"  entry-name="workEffortToActualCompletionDate"><display/></field>
-    </form>
-
-    <!-- TimeEntry -->
-    <!-- Extended form necessary so we can preserve the parameters needed to refresh the screen -->
-    <form name="AddWorkEffortTimeEntry" extends="AddWorkEffortTimeEntry" extends-resource="component://workeffort/widget/WorkEffortForms.xml">
-        <field name="workEffortId"><hidden/></field>
-        <field name="fixedAssetId"><hidden/></field>
-        <field name="maintHistSeqId"><hidden/></field>
-    </form>
-
-    <form name="ListWorkEffortTimeEntries" extends="ListWorkEffortTimeEntries" extends-resource="component://workeffort/widget/WorkEffortForms.xml">
-        <field name="invoiceInfo"><ignored/></field>
-    </form>
-
-    <!-- WorkEffort Note -->
-    <!-- Extended form necessary so we can preserve the parameters needed to refresh the screen -->
-    <form name="AddWorkEffortNote" extends="AddWorkEffortNote" extends-resource="component://workeffort/widget/WorkEffortForms.xml">
-        <field name="workEffortId"><hidden/></field>
-        <field name="fixedAssetId"><hidden/></field>
-        <field name="maintHistSeqId"><hidden/></field>
-    </form>
-</forms>
diff --git a/plugins/assetmaint/widget/ismgr/CommonScreens.xml b/plugins/assetmaint/widget/ismgr/CommonScreens.xml
deleted file mode 100644
index 977abed..0000000
--- a/plugins/assetmaint/widget/ismgr/CommonScreens.xml
+++ /dev/null
@@ -1,156 +0,0 @@
-<?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="main-decorator">
-        <section>
-            <actions>
-                <property-map resource="IsMgrUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="AssetMaintUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="activeApp" value="ismgr" global="true"/>
-                <set field="applicationMenuName" value="IsMgrAppBar" global="true"/>
-                <set field="applicationMenuLocation" value="component://assetmaint/widget/ismgr/Menus.xml" global="true"/>
-                <set field="layoutSettings.companyName" from-field="uiLabelMap.IsMgrCompanyName" global="true"/>
-                <set field="layoutSettings.companySubtitle" from-field="uiLabelMap.IsMgrCompanySubtitle" global="true"/>
-                <!-- layoutSettings.headerImageUrl can be used to specify an application specific logo; if not set,
-                     then the global layoutSettings.commonHeaderImageUrl (specified in GlobalDecorator) will be used. -->
-                <!--<set field="layoutSettings.headerImageUrl" value="/images/ofbiz_logo.gif" global="true"/>-->
-            </actions>
-            <widgets>
-                <include-screen name="ApplicationDecorator" location="component://commonext/widget/CommonScreens.xml"/>
-            </widgets>
-        </section>
-    </screen>
-
-    <!-- Fixed Assets screens customized for Computer Hardware -->
-    <screen name="CommonFixedAssetDecorator">
-        <section>
-            <actions>
-                <set field="headerItem" value="ComputerHardware"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="pre-body">
-                        <section>
-                            <condition>
-                                <not><if-empty field="fixedAssetId"/></not>
-                            </condition>
-                            <widgets>
-                                <include-menu name="ComputerHardwareTabBar" location="component://assetmaint/widget/ismgr/Menus.xml"/>
-                            </widgets>
-                        </section>
-                        <decorator-section-include name="pre-body"/>
-                    </decorator-section>
-                    <decorator-section name="body">
-                        <section>
-                            <widgets>
-                                <include-menu name="FixedAssetSubTabBar" location="component://assetmaint/widget/ismgr/Menus.xml"/>
-                            </widgets>
-                        </section>
-                        <section>
-                            <condition>
-                                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-                            </condition>
-                            <widgets>
-                                <section>
-                                    <condition>
-                                        <not><if-empty field="fixedAssetId"/></not>
-                                    </condition>
-                                    <widgets>
-                                        <container style="h1"><label text="${uiLabelMap.${titleProperty}} ${uiLabelMap.CommonFor} ${fixedAsset.fixedAssetName} [${fixedAssetId}]  ${${extraFunctionName}}"/></container>
-                                    </widgets>
-                                    <fail-widgets>
-                                        <container style="h1"><label text="${uiLabelMap.${titleProperty}}"/></container>
-                                    </fail-widgets>
-                                </section>
-                                <decorator-section-include name="body"/>
-                            </widgets>
-                            <fail-widgets>
-                                <label style="h3" text="${uiLabelMap.AccountingViewPermissionError}"/>
-                            </fail-widgets>
-                        </section>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <!-- Fixed Assets screens customized for Computer Software -->
-    <screen name="CommonComputerSoftwareDecorator">
-        <section>
-            <actions>
-                <set field="headerItem" value="ComputerSoftware"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                <!--
-                    <decorator-section name="pre-body">
-                        <section>
-                            <condition>
-                                <not><if-empty field="fixedAssetId"/></not>
-                            </condition>
-                            <widgets>
-                                <include-menu name="ComputerHardwareTabBar" location="component://assetmaint/widget/ismgr/Menus.xml"/>
-                            </widgets>
-                        </section>
-                        <decorator-section-include name="pre-body"/>
-                    </decorator-section>
-                     -->
-                    <decorator-section name="body">
-                        <section>
-                            <widgets>
-                                <include-menu name="FixedAssetSubTabBar" location="component://assetmaint/widget/ismgr/Menus.xml"/>
-                            </widgets>
-                        </section>
-                        <section>
-                            <condition>
-                                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-                            </condition>
-                            <widgets>
-                                <section>
-                                    <condition>
-                                        <not><if-empty field="fixedAssetId"/></not>
-                                    </condition>
-                                    <widgets>
-                                        <container style="h1"><label text="${uiLabelMap.${titleProperty}} ${uiLabelMap.CommonFor} ${fixedAsset.fixedAssetName} [${fixedAssetId}]  ${${extraFunctionName}}"/></container>
-                                    </widgets>
-                                    <fail-widgets>
-                                        <container style="h1"><label text="${uiLabelMap.${titleProperty}}"/></container>
-                                    </fail-widgets>
-                                </section>
-                                <decorator-section-include name="body"/>
-                            </widgets>
-                            <fail-widgets>
-                                <label style="h3" text="${uiLabelMap.AccountingViewPermissionError}"/>
-                            </fail-widgets>
-                        </section>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-</screens>
diff --git a/plugins/assetmaint/widget/ismgr/FieldLookupForms.xml b/plugins/assetmaint/widget/ismgr/FieldLookupForms.xml
deleted file mode 100644
index 899219d..0000000
--- a/plugins/assetmaint/widget/ismgr/FieldLookupForms.xml
+++ /dev/null
@@ -1,93 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-
-    <form name="LookupComputerHardware" target="LookupComputerHardware" title="" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <auto-fields-entity entity-name="FixedAsset" default-field-type="hidden"/>
-        <field name="fixedAssetId" title="${uiLabelMap.AccountingFixedAssetId}"><text-find/></field>
-        <field name="fixedAssetName" title="${uiLabelMap.AccountingFixedAssetName}"><text-find/></field>
-        <field name="fixedAssetTypeId"><hidden value="COMPUTER_HARDWARE"/></field>
-        <field name="classEnumId">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="Enumeration" key-field-name="enumId">
-                    <entity-constraint name="enumTypeId" operator="equals" value="FXAST_COMPU_HARDWARE"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
-        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
-    </form>
-
-    <form name="ListLookupComputerHardware" list-name="listIt" title="" type="list" paginate-target="LookupComputerHardware"
-        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
-        <actions>
-            <service service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="FixedAsset"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="fixedAssetId" title="${uiLabelMap.AccountingFixedAssetId}" widget-style="buttontext">
-            <hyperlink description="${fixedAssetId}" target="javascript:set_value('${fixedAssetId}')" also-hidden="false" target-type="plain"/>
-        </field>
-        <field name="fixedAssetName" title="${uiLabelMap.CommonName}"><display/></field>
-        <field name="classEnumId"><display-entity entity-name="Enumeration" key-field-name="enumId"/></field>
-    </form>
-
-    <form name="LookupComputerSoftware" target="LookupComputerSoftware" title="" type="single"
-        header-row-style="header-row" default-table-style="basic-table">
-        <auto-fields-entity entity-name="FixedAsset" default-field-type="hidden"/>
-        <field name="fixedAssetId" title="${uiLabelMap.AccountingFixedAssetId}"><text-find/></field>
-        <field name="fixedAssetName" title="${uiLabelMap.AccountingFixedAssetName}"><text-find/></field>
-        <field name="fixedAssetTypeId"><hidden value="COMPUTER_SOFTWARE"/></field>
-        <field name="classEnumId">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="Enumeration" key-field-name="enumId">
-                    <entity-constraint name="enumTypeId" operator="equals" value="FXAST_COMPU_SOFTWARE"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
-        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
-    </form>
-
-    <form name="ListLookupComputerSoftware" list-name="listIt" title="" type="list" paginate-target="LookupComputerSoftware"
-        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
-        <actions>
-            <service service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="FixedAsset"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="fixedAssetId" title="${uiLabelMap.AccountingFixedAssetId}" widget-style="buttontext">
-            <hyperlink description="${fixedAssetId}" target="javascript:set_value('${fixedAssetId}')" also-hidden="false" target-type="plain"/>
-        </field>
-        <field name="fixedAssetName" title="${uiLabelMap.CommonName}"><display/></field>
-        <field name="classEnumId"><display-entity entity-name="Enumeration" key-field-name="enumId"/></field>
-    </form>
-</forms>
diff --git a/plugins/assetmaint/widget/ismgr/FixedAssetForms.xml b/plugins/assetmaint/widget/ismgr/FixedAssetForms.xml
deleted file mode 100644
index 612f3df..0000000
--- a/plugins/assetmaint/widget/ismgr/FixedAssetForms.xml
+++ /dev/null
@@ -1,192 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-    <!-- create and update a fixed asset of type Computer hardware. -->
-    <form name="EditComputerHardware" type="single" target="updateComputerHardware" title="" default-map-name="fixedAsset">
-        <alt-target use-when="fixedAsset==null" target="createComputerHardware"/>
-        <auto-fields-service service-name="updateFixedAsset" map-name="fixedAsset"/>
-
-        <field use-when="fixedAsset!=null" name="fixedAssetId"><display/></field>
-        <field use-when="fixedAsset==null&amp;&amp;fixedAssetId==null" name="fixedAssetId"><text size="20" maxlength="20"/></field>
-        <field use-when="fixedAsset==null&amp;&amp;fixedAssetId!=null" name="fixedAssetId" tooltip="${uiLabelMap.CommonCannotBeFound}:[${fixedAssetId}]"><text size="20" maxlength="20"/></field>
-
-        <field name="fixedAssetTypeId"><hidden value="COMPUTER_HARDWARE"/></field>
-        <field name="instanceOfProductId"><lookup target-form-name="LookupProduct"/></field>
-        <field name="classEnumId">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="Enumeration" key-field-name="enumId">
-                    <entity-constraint name="enumTypeId" operator="equals" value="FXAST_COMPU_HARDWARE"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="partyId" title="${uiLabelMap.PartyPartyId}"> <hidden/> </field>
-        <field name="roleTypeId" title="${uiLabelMap.PartyRoleTypeId}"><hidden/></field>
-        <field name="uomId" title="${uiLabelMap.CommonUom}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="UomAndType" description="[${typeDescription}] ${description}">
-                    <entity-order-by field-name="uomTypeId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <!--<field name="calendarId"><hidden/></field>-->  <!-- not show, can better be maintained by the system -->
-        <field name="calendarId">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="TechDataCalendar" description="[${calendarId}] ${description}">
-                    <entity-order-by field-name="calendarId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="parentFixedAssetId"><lookup target-form-name="LookupComputerHardware"/></field>
-        <field name="locatedAtFacilityId"><lookup target-form-name="LookupFacility"/></field>
-        <field name="locatedAtLocationSeqId"><lookup target-form-name="LookupFacilityLocation"/></field>
-
-        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" widget-style="smallSubmit"><submit button-type="button"/></field>
-    </form>
-    <form name="EditComputerSoftware" type="single" target="updateComputerSoftware" title="" default-map-name="fixedAsset">
-        <alt-target use-when="fixedAsset==null" target="createComputerSoftware"/>
-        <auto-fields-service service-name="updateFixedAsset" map-name="fixedAsset"/>
-
-        <field use-when="fixedAsset!=null" name="fixedAssetId"><display/></field>
-        <field use-when="fixedAsset==null&amp;&amp;fixedAssetId==null" name="fixedAssetId"><text size="20" maxlength="20"/></field>
-        <field use-when="fixedAsset==null&amp;&amp;fixedAssetId!=null" name="fixedAssetId" tooltip="${uiLabelMap.CommonCannotBeFound}:[${fixedAssetId}]"><text size="20" maxlength="20"/></field>
-
-        <field name="fixedAssetTypeId"><hidden value="COMPUTER_SOFTWARE"/></field>
-        <field name="instanceOfProductId"><lookup target-form-name="LookupProduct"/></field>
-        <field name="classEnumId">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="Enumeration" key-field-name="enumId">
-                    <entity-constraint name="enumTypeId" operator="equals" value="FXAST_COMPU_SOFTWARE"/>
-                    <entity-order-by field-name="description"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="partyId" title="${uiLabelMap.PartyPartyId}"> <hidden/> </field>
-        <field name="roleTypeId" title="${uiLabelMap.PartyRoleTypeId}"><hidden/></field>
-        <field name="uomId" title="${uiLabelMap.CommonUom}">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="UomAndType" description="[${typeDescription}] ${description}">
-                    <entity-order-by field-name="uomTypeId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <!--<field name="calendarId"><hidden/></field>-->  <!-- not show, can better be maintained by the system -->
-        <field name="calendarId">
-            <drop-down allow-empty="true">
-                <entity-options entity-name="TechDataCalendar" description="[${calendarId}] ${description}">
-                    <entity-order-by field-name="calendarId"/>
-                </entity-options>
-            </drop-down>
-        </field>
-        <field name="parentFixedAssetId"><lookup target-form-name="LookupComputerHardware"/></field>
-        <field name="locatedAtFacilityId"><lookup target-form-name="LookupFacility"/></field>
-        <field name="locatedAtLocationSeqId"><lookup target-form-name="LookupFacilityLocation"/></field>
-
-        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" widget-style="smallSubmit"><submit button-type="button"/></field>
-    </form>
-
-    <form name="FindComputerHardwareOptions" extends="LookupComputerHardware" extends-resource="component://assetmaint/widget/ismgr/FieldLookupForms.xml" target="ListComputerHardware">
-        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
-    </form>
-    <!-- list all Computer Hardware in a tabular format -->
-    <form name="ListComputerHardware" type="list" list-name="listIt" paginate-target="ListFixedAssets"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
-        <actions>
-            <service service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="FixedAsset"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="fixedAssetId" widget-style="linktext">
-            <hyperlink description="${fixedAssetName} ${fixedAssetId}" target="EditComputerHardware" also-hidden="false">
-                <parameter param-name="fixedAssetId"/>
-            </hyperlink>
-        </field>
-        <field name="fixedAssetTypeId"><hidden/></field>
-        <field name="classEnumId"><display-entity entity-name="Enumeration" key-field-name="enumId"/></field>
-        <field name="parentFixedAssetId">
-            <display-entity entity-name="FixedAsset" key-field-name="fixedAssetId" description="${fixedAssetName}">
-                <sub-hyperlink target="EditComputerHardware" description="${parentFixedAssetId}">
-                    <parameter param-name="fixedAssetId" from-field="parentFixedAssetId"/>
-                </sub-hyperlink>
-            </display-entity>
-        </field>
-        <on-event-update-area event-type="paginate" area-id="search-results" area-target="FixedAssetSearchResults"/>
-    </form>
-
-    <form name="FindComputerSoftwareOptions" extends="LookupComputerSoftware" extends-resource="component://assetmaint/widget/ismgr/FieldLookupForms.xml" target="ListComputerSoftware">
-        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
-    </form>
-
-    <!-- list all Computer Software in a tabular format -->
-    <form name="ListComputerSoftware" type="list" list-name="listIt" paginate-target="ListFixedAssets"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
-        <actions>
-            <service service-name="performFind" result-map="result" result-map-list="listIt">
-                <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="FixedAsset"/>
-                <field-map field-name="viewIndex" from-field="viewIndex"/>
-                <field-map field-name="viewSize" from-field="viewSize"/>
-            </service>
-        </actions>
-        <field name="fixedAssetId" widget-style="linktext">
-            <hyperlink description="${fixedAssetName} ${fixedAssetId}" target="EditComputerSoftware" also-hidden="false">
-                <parameter param-name="fixedAssetId"/>
-            </hyperlink>
-        </field>
-        <field name="fixedAssetTypeId"><hidden/></field>
-        <field name="classEnumId"><display-entity entity-name="Enumeration" key-field-name="enumId"/></field>
-        <field name="parentFixedAssetId">
-            <display-entity entity-name="FixedAsset" key-field-name="fixedAssetId" description="${fixedAssetName}">
-                <sub-hyperlink target="EditComputerSoftware" description="${parentFixedAssetId}">
-                    <parameter param-name="fixedAssetId" from-field="parentFixedAssetId"/>
-                </sub-hyperlink>
-            </display-entity>
-        </field>
-        <on-event-update-area event-type="paginate" area-id="search-results" area-target="FixedAssetSearchResults"/>
-    </form>
-
-
-    <!-- list all children fixed assets in a tabular format -->
-    <form name="ChildrenFixedAssets" type="list" list-name="listIt"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
-        <actions>
-            <entity-condition entity-name="FixedAsset" list="listIt">
-                <condition-list combine="and">
-                    <condition-expr field-name="parentFixedAssetId" operator="equals" from-field="parameters.fixedAssetId"/>
-                    <condition-expr field-name="fixedAssetTypeId" operator="equals" from-field="fixedAssetTypeId"/>
-                </condition-list>
-            </entity-condition>
-        </actions>
-        <field name="fixedAssetId" widget-style="linktext">
-            <hyperlink description="${fixedAssetName} ${fixedAssetId}" target="EditComputerHardware" also-hidden="false">
-                <parameter param-name="fixedAssetId"/>
-            </hyperlink>
-        </field>
-        <field name="fixedAssetTypeId"><hidden/></field>
-        <field name="classEnumId"><display-entity entity-name="Enumeration" key-field-name="enumId"/></field>
-        <on-event-update-area event-type="paginate" area-id="search-results" area-target="FixedAssetSearchResults"/>
-    </form>
-
-</forms>
diff --git a/plugins/assetmaint/widget/ismgr/FixedAssetScreens.xml b/plugins/assetmaint/widget/ismgr/FixedAssetScreens.xml
deleted file mode 100644
index 5618dc9..0000000
--- a/plugins/assetmaint/widget/ismgr/FixedAssetScreens.xml
+++ /dev/null
@@ -1,189 +0,0 @@
-<?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">
-    <!-- create and/or update a Computer Hardware fixed asset -->
-    <screen name="EditComputerHardware">
-        <section>
-            <actions>
-                <set field="titleProperty" value="PageTitleEditComputerHardware"/>
-                <set field="tabButtonItem" value="EditComputerHardware"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetDecorator" location="${parameters.fixedAssetDecoratorLocation}">
-                    <decorator-section name="body">
-                        <include-form name="EditComputerHardware" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <!-- list all assets in a tabular format -->
-    <screen name="ListComputerHardware">
-        <section>
-            <actions>
-                <set field="titleProperty" value="IsMgrFindComputerHardware"/>
-                <set field="headerItem" value="ComputerHardware"/>
-                <set field="tabButtonItem" value="EditComputerHardware"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
-                            <decorator-section name="menu-bar">
-                                <section>
-                                    <widgets>
-                                        <include-menu name="FixedAssetSubTabBar" location="component://assetmaint/widget/ismgr/Menus.xml"/>
-                                     </widgets>
-                                </section>
-                            </decorator-section>
-                            <decorator-section name="search-options">
-                                <include-form name="FindComputerHardwareOptions" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-                            </decorator-section>
-                            <decorator-section name="search-results">
-                                <include-screen name="ComputerHardwareSearchResults"/>
-                            </decorator-section>
-                        </decorator-screen>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-         </section>
-    </screen>
-
-    <screen name="EditComputerSoftware">
-        <section>
-            <actions>
-                <set field="titleProperty" value="PageTitleEditComputerSoftware"/>
-                <set field="headerItem" value="ComputerSoftware"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <entity-one entity-name="FixedAsset" value-field="fixedAsset"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonComputerSoftwareDecorator" location="${parameters.fixedAssetDecoratorLocation}">
-                    <decorator-section name="body">
-                        <include-form name="EditComputerSoftware" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <!-- list all computer Software in a tabular format -->
-    <screen name="ListComputerSoftware">
-        <section>
-            <actions>
-                <set field="titleProperty" value="IsMgrFindComputerSoftware"/>
-                <set field="headerItem" value="ComputerSoftware"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
-                            <decorator-section name="menu-bar">
-                                <section>
-                                    <widgets>
-                                        <include-menu name="FixedAssetSubTabBar" location="component://assetmaint/widget/ismgr/Menus.xml"/>
-                                     </widgets>
-                                </section>
-                            </decorator-section>
-                            <decorator-section name="search-options">
-                                <include-form name="FindComputerSoftwareOptions" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-                            </decorator-section>
-                            <decorator-section name="search-results">
-                                <include-screen name="ComputerSoftwareSearchResults"/>
-                            </decorator-section>
-                        </decorator-screen>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-         </section>
-    </screen>
-    <screen name="ComputerHardwareSearchResults">
-        <section>
-            <condition>
-                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-            </condition>
-            <actions>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
-            </actions>
-            <widgets>
-                <include-form name="ListComputerHardware" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="ComputerSoftwareSearchResults">
-        <section>
-            <condition>
-                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-            </condition>
-            <actions>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
-            </actions>
-            <widgets>
-                <include-form name="ListComputerSoftware" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="ListHardwareAccessories">
-        <section>
-            <actions>
-                <set field="titleProperty" value="IsMgrHardwareAccessories"/>
-                <set field="headerItem" value="ComputerHardware"/>
-                <set field="tabButtonItem" value="ListHardwareAccessories"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="fixedAssetTypeId" value="COMPUTER_HARDWARE"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetDecorator" location="${parameters.fixedAssetDecoratorLocation}">
-                    <decorator-section name="body">
-                        <include-form name="ChildrenFixedAssets" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-         </section>
-    </screen>
-
-    <screen name="ListInstalledSoftware">
-        <section>
-            <actions>
-                <set field="titleProperty" value="IsMgrInstalledSoftware"/>
-                <set field="headerItem" value="ComputerHardware"/>
-                <set field="tabButtonItem" value="ListInstalledSoftware"/>
-                <set field="fixedAssetId" from-field="parameters.fixedAssetId"/>
-                <set field="fixedAssetTypeId" value="COMPUTER_SOFTWARE"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="CommonFixedAssetDecorator" location="${parameters.fixedAssetDecoratorLocation}">
-                    <decorator-section name="body">
-                        <include-form name="ChildrenFixedAssets" location="component://assetmaint/widget/ismgr/FixedAssetForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-         </section>
-    </screen>
-</screens>
diff --git a/plugins/assetmaint/widget/ismgr/LookupScreens.xml b/plugins/assetmaint/widget/ismgr/LookupScreens.xml
deleted file mode 100644
index ab5a8fa..0000000
--- a/plugins/assetmaint/widget/ismgr/LookupScreens.xml
+++ /dev/null
@@ -1,75 +0,0 @@
-<?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="LookupComputerHardware">
-        <section>
-            <condition>
-                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-            </condition>
-            <actions>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="title" value="${uiLabelMap.PageTitleLookupComputerHardware}"/>
-                <set field="queryString" from-field="result.queryString"/>
-                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
-                <property-to-field resource="widget" property="widget.form.defaultViewSize" field="viewSizeDefaultValue"/>
-                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="${viewSizeDefaultValue}"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="LookupDecorator" location="component://common/widget/CommonScreens.xml">
-                    <decorator-section name="search-options">
-                        <include-form name="LookupComputerHardware" location="component://assetmaint/widget/ismgr/FieldLookupForms.xml"/>
-                    </decorator-section>
-                    <decorator-section name="search-results">
-                        <include-form name="ListLookupComputerHardware" location="component://assetmaint/widget/ismgr/FieldLookupForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="LookupComputerSoftware">
-        <section>
-            <condition>
-                <if-service-permission service-name="fixedAssetPermissionCheck" main-action="VIEW"/>
-            </condition>
-            <actions>
-                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
-                <set field="title" value="${uiLabelMap.PageTitleLookupComputerSoftware}"/>
-                <set field="queryString" from-field="result.queryString"/>
-                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
-                <property-to-field resource="widget" property="widget.form.defaultViewSize" field="viewSizeDefaultValue"/>
-                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="${viewSizeDefaultValue}"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="LookupDecorator" location="component://common/widget/CommonScreens.xml">
-                    <decorator-section name="search-options">
-                        <include-form name="LookupComputerSoftware" location="component://assetmaint/widget/ismgr/FieldLookupForms.xml"/>
-                    </decorator-section>
-                    <decorator-section name="search-results">
-                        <include-form name="ListLookupComputerSoftware" location="component://assetmaint/widget/ismgr/FieldLookupForms.xml"/>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-</screens>
diff --git a/plugins/assetmaint/widget/ismgr/Menus.xml b/plugins/assetmaint/widget/ismgr/Menus.xml
deleted file mode 100644
index 4a8a6b8..0000000
--- a/plugins/assetmaint/widget/ismgr/Menus.xml
+++ /dev/null
@@ -1,99 +0,0 @@
-<?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.
--->
-
-<menus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://ofbiz.apache.org/Widget-Menu" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Menu http://ofbiz.apache.org/dtds/widget-menu.xsd">
-
-    <menu name="IsMgrAppBar" title="${uiLabelMap.IsMgrApplication}" extends="CommonAppBarMenu" extends-resource="component://common/widget/CommonMenus.xml">
-        <menu-item name="main" title="${uiLabelMap.CommonMain}"><link target="main"/></menu-item>
-        <menu-item name="ComputerHardware" title="${uiLabelMap.IsMgrComputerHardware}"><link target="ListComputerHardware"/></menu-item>
-        <menu-item name="ComputerSoftware" title="${uiLabelMap.IsMgrComputerSoftware}"><link target="ListComputerSoftware"/></menu-item>
-    </menu>
-
-
-    <menu name="FixedAssetSubTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml"
-          menu-container-style="button-bar button-style-2">
-        <menu-item name="createNewComputerHardware" title="${uiLabelMap.IsMgrNewComputerHardware}" >
-            <condition>
-                <and>
-                    <if-service-permission service-name="fixedAssetPermissionCheck" main-action="CREATE"/>
-                </and>
-            </condition>
-            <link target="EditComputerHardware"/>
-        </menu-item>
-        <menu-item name="createNewComputerSoftware" title="${uiLabelMap.IsMgrNewComputerSoftware}" >
-            <condition>
-                <and>
-                    <if-service-permission service-name="fixedAssetPermissionCheck" main-action="CREATE"/>
-                </and>
-            </condition>
-            <link target="EditComputerSoftware"/>
-        </menu-item>
-    </menu>
-
-    <menu name="ComputerHardwareTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml"
-          default-menu-item-name="EditComputerHardware">
-        <!-- Tab Bar customized for Fixed Assets of type Computer Hardware  -->
-        <menu-item name="EditComputerHardware" title="${uiLabelMap.IsMgrComputerHardware}">
-            <link target="EditComputerHardware">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <menu-item name="ListHardwareAccessories" title="${uiLabelMap.IsMgrHardwareAccessories}">
-            <link target="ListHardwareAccessories">
-                <parameter param-name="fixedAssetId"/>
-                <parameter param-name="trail" from-field="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <menu-item name="ListInstalledSoftware" title="${uiLabelMap.IsMgrInstalledSoftware}">
-            <link target="ListInstalledSoftware">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <!-- Will add soon
-        <menu-item name="EditFaComputerHardwareStdCosts" title="${uiLabelMap.AccountingFixedAssetStdCosts}">
-            <link target="EditFaComputerHardwareStdCosts">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditFaComputerHardwareIdents" title="${uiLabelMap.AccountingFixedAssetIdents}">
-            <link target="EditFaComputerHardwareIdents">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditFaComputerHardwareRegistrations" title="${uiLabelMap.AccountingFixedAssetRegistrations}">
-            <link target="EditFaComputerHardwareRegistrations">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <menu-item name="ListFaComputerHardwareMaints" title="${uiLabelMap.AccountingFixedAssetMaints}">
-            <link target="ListFaComputerHardwareMaints">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-        <menu-item name="EditPartyFixedAssetAssignments" title="${uiLabelMap.AccountingPartyFixedAssetAssignments}">
-            <link target="EditPartyFixedAssetAssignments">
-                <parameter param-name="fixedAssetId"/>
-            </link>
-        </menu-item>
-         -->
-    </menu>
-
-</menus>
diff --git a/plugins/bi/config/BiUiLabels.xml b/plugins/bi/config/BiUiLabels.xml
deleted file mode 100644
index 49e2e01..0000000
--- a/plugins/bi/config/BiUiLabels.xml
+++ /dev/null
@@ -1,468 +0,0 @@
-<?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.
--->
-<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
-    <property key="BusinessIntelligenceApplication">
-        <value xml:lang="en">Business Intelligence Application</value>
-        <value xml:lang="fr">Application d'informatique décisionnelle</value>
-        <value xml:lang="it">Applicazione Business Intelligence</value>
-        <value xml:lang="ja">ビジネスインテリジェンス</value>
-        <value xml:lang="th">โปรแกรมประยุกต์การเรียนรู้ทางธุรกิจ</value>
-        <value xml:lang="zh">商业智能应用程序</value>
-        <value xml:lang="zh-TW">商業智慧應用程式</value>
-    </property>
-    <property key="BusinessIntelligenceCompanyName">
-        <value xml:lang="en">OFBiz: Business Intelligence</value>
-        <value xml:lang="fr">OFBiz: Informatique décisionnelle</value>
-        <value xml:lang="it">OFBiz: Business Intelligence</value>
-        <value xml:lang="ja">OFBiz: ビジネスインテリジェンス</value>
-        <value xml:lang="th">OFBiz:การเรียนรู้ทางธุรกิจ</value>
-        <value xml:lang="zh">OFBiz:商业智能</value>
-        <value xml:lang="zh-TW">OFBiz:商業智慧</value>
-    </property>
-    <property key="BusinessIntelligenceCompanySubtitle">
-        <value xml:lang="ar">جزء من عائلة أوفبيز للتطبيقات الحرة للتسيير</value>
-        <value xml:lang="de">Teil der Apache OFBiz Familie von Open Source Software</value>
-        <value xml:lang="en">Part of the Apache OFBiz Family of Open Source Software</value>
-        <value xml:lang="es">Parte de la familia de software Apache OFBiz de código abierto</value>
-        <value xml:lang="fr">Un module de la famille Apache OFBiz, logiciel libre de gestion d'entreprise.</value>
-        <value xml:lang="it">Un modulo della famiglia di software open source Apache OFBiz</value>
-        <value xml:lang="ja">Part of the Apache OFBiz Family of Open Source Software</value>
-        <value xml:lang="nl">Deel van de Apache OFBiz-suite van Open Source Software</value>
-        <value xml:lang="pt-BR">Parte da família OfBiz de software de fonte aberta</value>
-        <value xml:lang="pt-PT">Parte da família OfBiz de software de fonte aberta</value>
-        <value xml:lang="ro">Partea de Deschidere Pentru Afaceri Familiale din Open Source Software</value>
-        <value xml:lang="ru">Входит в состав семейства Apache OFBiz</value>
-        <value xml:lang="th">ส่วนหนึ่งของธุรกิจแบบครอบครัวที่เป็นซอฟต์แวร์โอเพนซอส</value>
-        <value xml:lang="zh">开源软件OFBiz家族的一部分</value>
-        <value xml:lang="zh-CN">OFBiz的一部分</value>
-        <value xml:lang="zh-TW">OFBiz的一部分</value>
-    </property>
-    <property key="BusinessIntelligenceCurrentStatus">
-        <value xml:lang="en">Current Status</value>
-        <value xml:lang="fr">Statuts en cours</value>
-        <value xml:lang="it">Stato attuale</value>
-        <value xml:lang="ja">現在のステータス</value>
-        <value xml:lang="th">สถานะในปัจจุบัน</value>
-        <value xml:lang="zh">当前状态</value>
-        <value xml:lang="zh-TW">目前狀態</value>
-    </property>
-    <property key="BusinessIntelligenceFieldDescription">
-        <value xml:lang="en">Field Description</value>
-        <value xml:lang="fr">Description de champ</value>
-        <value xml:lang="it">Descrizione Campo</value>
-        <value xml:lang="ja">項目詳細</value>
-        <value xml:lang="th">รายละเอียดข้อมูล</value>
-        <value xml:lang="zh">数据项描述</value>
-        <value xml:lang="zh-TW">欄位描述</value>
-    </property>
-    <property key="BusinessIntelligenceFieldName">
-        <value xml:lang="en">Field Name</value>
-        <value xml:lang="fr">Nom de champ</value>
-        <value xml:lang="it">Nome Campo</value>
-        <value xml:lang="ja">項目名称</value>
-        <value xml:lang="th">ชื่อข้อมูล</value>
-        <value xml:lang="zh">数据项名称</value>
-        <value xml:lang="zh-TW">欄位名稱</value>
-    </property>
-    <property key="BusinessIntelligenceIntegratedFramework">
-        <value xml:lang="en">Business Intelligence Integrated Framework</value>
-        <value xml:lang="fr">Informatique décisionnelle intégrée au Framework</value>
-        <value xml:lang="it">Business Intelligence Framework Integrato</value>
-        <value xml:lang="ja">ビジネスインテリジェンス統合フレームワーク</value>
-        <value xml:lang="th">Framework ของการเรียนรู้ทางธุรกิจรวมกัน</value>
-        <value xml:lang="zh">商业智能集成框架</value>
-        <value xml:lang="zh-TW">商業智慧整合框架</value>
-    </property>
-    <property key="BusinessIntelligenceMainPage">
-        <value xml:lang="en">Main Page</value>
-        <value xml:lang="fr">Page D'accueil</value>
-        <value xml:lang="it">Pagina Principale</value>
-        <value xml:lang="ja">メインページ</value>
-        <value xml:lang="th">หน้าหลัก</value>
-        <value xml:lang="zh">首页</value>
-        <value xml:lang="zh-TW">首頁</value>
-    </property>
-    <property key="BusinessIntelligenceNaturalKeyWithourDimension">
-        <value xml:lang="en">The natural key: ${naturalKeyFields} is empty in value: ${dimensionValue}</value>
-        <value xml:lang="it">La chiave naturale: ${naturalKeyFields} è vuota nel valore: ${dimensionValue}</value>
-        <value xml:lang="ja">自然キー: ${naturalKeyFields} が値: ${dimensionValue} で空です</value>
-        <value xml:lang="zh">值:${dimensionValue} 中的自然键:${naturalKeyFields} 是空的</value>
-        <value xml:lang="zh-TW">值:${dimensionValue} 中的自然鍵:${naturalKeyFields} 是空的</value>
-    </property>
-    <property key="BusinessIntelligenceNote1">
-        <value xml:lang="en">This is a proof of concept for an OFBiz integrated framework for business intelligence analysis.</value>
-        <value xml:lang="fr">C'est une preuve de concept d'informatique décisionnelle intégrée au Framework</value>
-        <value xml:lang="it">Questo è un prototipo di un framework per analisi di dati (business intelligence) integrato in OFBiz.</value>
-        <value xml:lang="ja">OFBiz統合フレームワークにおけるビジネスインテリジェンス分析のコンセプト。</value>
-        <value xml:lang="th">การทดสอบความเข้าใจสำหรับ OFBiz framework เพื่อการวิเคราะห์ระบบการเรียนรู้ทางธุรกิจ</value>
-        <value xml:lang="zh">这是一个验证OFBiz集成框架能够用于商业智能的实现。</value>
-        <value xml:lang="zh-TW">這是一個驗證OFBiz整複合框架能夠用於商業智慧的實作.</value>
-    </property>
-    <property key="BusinessIntelligenceNote2">
-        <value xml:lang="en">The idea is to define a set entities for business intelligence analysis in a separate (olap) database,</value>
-        <value xml:lang="fr">L'idée est de définir un ensemble d'entités pour l'analyse de l'Informatique décisionnelle dans une base de données séparée (OLAP),</value>
-        <value xml:lang="it">L'idea è di definire un'insieme di entità per le analisi di business intelligence in un database (OLAP) separato,</value>
-        <value xml:lang="ja">ビジネスインテリジェンス分析のために別の(OLAP)データベースにエンティティ一式を定義するという考えは、</value>
-        <value xml:lang="th">แผนการในการตั้งค่าสิ่งที่มีอยู่เพื่อวิเคราะห์การเรียนรู้ทางธุรกิจในการแยก (olap) ฐานข้อมูล</value>
-        <value xml:lang="zh">思路是在一个独立的(OLAP)数据库中为商业智能分析定义一组实体,</value>
-        <value xml:lang="zh-TW">點子是在一個分離的(OLAP)資料庫為商業智慧分析定義一組資料實體,</value>
-    </property>
-    <property key="BusinessIntelligenceNote3">
-        <value xml:lang="en">accessible, in the same way as the main one (OLTP), via the delegator.</value>
-        <value xml:lang="fr">accessibles, de la même manière que pour la base de données principale (OLTP), par l'intermédiaire du délégateur.</value>
-        <value xml:lang="it">accessibile, nello stesso modo di quello principale (OLTP), attraverso un delegator.</value>
-        <value xml:lang="ja">理解しやすく、主流(OLAP)と同じ方法で、デリゲータによって実現します。</value>
-        <value xml:lang="th">สามารถเข้าถึงได้ในทางเดียวกันกับทางแรก (OLTP)</value>
-        <value xml:lang="zh">可访问,与主要的数据库同构,通过delegator实现。</value>
-        <value xml:lang="zh-TW">可存取的,和主要的(OLTP)資料庫相同結構,透過delegator.</value>
-    </property>
-    <property key="BusinessIntelligenceNote4">
-        <value xml:lang="en">The new olap database, will contain all the entities necessary to datawarehouse analysis:</value>
-        <value xml:lang="fr">La nouvelle base de données OLAP, contiendra toutes les entités nécessaires à l'analyse du datawarehouse :</value>
-        <value xml:lang="it">Il nuovo database olap, conterrà tutte le entità necessarie alle analisi di datawarehouse: </value>
-        <value xml:lang="ja">新しいOLAPデータベースはデータウェアハウス分析に必要なエンティティを全て含んでいます。</value>
-        <value xml:lang="th">ฐานข้อมูล olap ใหม่จะประกอบด้วยสิ่งที่มีอยู่ซึ่งจำเป็นในการวิเคราะห์ข้อมูลคลังสินค้า:</value>
-        <value xml:lang="zh">新的OLAP数据库,将包含全部数据仓库分析所需的实体:</value>
-        <value xml:lang="zh-TW">新的OLAP資料庫,將包含全部資料倉儲分析所需的資料實體:</value>
-    </property>
-    <property key="BusinessIntelligenceNote5">
-        <value xml:lang="en">dimensions, facts and star schemas (that are view-entities).</value>
-        <value xml:lang="fr">dimensions, faits et schémas en étoile (ce sont des vues sur la base de données : view-entities au sens d'OFBiz).</value>
-        <value xml:lang="it">dimensioni, fatti e star schemas (view-entities).</value>
-        <value xml:lang="ja">ディメンジョン、ファクト、そしてスタースキーマ (ビュー) です。</value>
-        <value xml:lang="th">ขอบเขต,ข้อเท็จจริงและแผนผัง (เป็นการแสดงสิ่งที่มีอยู่)</value>
-        <value xml:lang="zh">维度、事实和星型模型(浏览实体)。</value>
-        <value xml:lang="zh-TW">維度、事實和星型模型(檢視資料實體).</value>
-    </property>
-    <property key="BusinessIntelligenceNote6">
-        <value xml:lang="en">The dimensions, facts and star schemas are defined according to best practices for datawarehouses</value>
-        <value xml:lang="fr">Les dimensions, les faits et les schémas en étoile sont définis selon les bonnes pratiques pour les datawarehouses </value>
-        <value xml:lang="it">Le dimensioni, fatti e star schemas sono definiti in accordo alle migliori pratiche per i datawarehouses</value>
-        <value xml:lang="ja">ディメンジョン、ファクト、そしてスタースキーマはデータウェアハウスのベストプラックティス、</value>
-        <value xml:lang="th">ขอบเขต,ข้อเท็จจริงและแผนผังตามที่ระบุเป็นวิธีปฏิบัติที่ดีที่สุดสำหรับข้อมูลคลังสินค้า</value>
-        <value xml:lang="zh">维度、事实和星型模型定义参考了数据仓库最佳实践</value>
-        <value xml:lang="zh-TW">維度、事實和星型模型定義參考了資料倉儲最佳慣例</value>
-    </property>
-    <property key="BusinessIntelligenceNote7">
-        <value xml:lang="en">and best practices for OFBiz: they are defined as standard entities using the xml entity defs;</value>
-        <value xml:lang="fr">et pour OFBiz. Ils sont définis comme des entités standards à l'aide de définitions d'entités dans des fichiers XML.</value>
-        <value xml:lang="it">e le migliori pratiche per OFBiz: sono definite come entità standard usando le definizioni xml entity;</value>
-        <value xml:lang="ja">およびOFBizのベストプラックティスに従って定義されています: それらはxmlエンティティ定義を使用して標準エンティティとして定義されています。</value>
-        <value xml:lang="th">และวิธีปฏิบัติที่ดีที่สุดสำหรับ OFBiz คือ: ต้องกำหนดมาตรฐานสิ่งที่มีอยู่ให้เหมือนกับที่ใช้ใน xml </value>
-        <value xml:lang="zh">以及OFBiz最佳实践:把它们用XML实体定义定义为标准实体;</value>
-        <value xml:lang="zh-TW">以及OFBiz最佳慣例:把它們用XML資料實體定義定義為標準資料實體;</value>
-    </property>
-    <property key="BusinessIntelligenceNote8">
-        <value xml:lang="en">clear and consistent naming conventions are used and they are documented</value>
-        <value xml:lang="fr">Des conventions de nommages claires et cohérentes sont utilisées et documentées</value>
-        <value xml:lang="it">sono usate convenzioni nei nomi corrette e consistenti e sono documentate</value>
-        <value xml:lang="ja">明瞭で一貫した命名規則が使用され、またそれらを文書化するため、</value>
-        <value xml:lang="th">ยกเลิกและใช้ชื่อข้อตกลงที่สอดคล้องกันและเป็นไปตามเอกสาร</value>
-        <value xml:lang="zh">使用简明一致的命名规范,</value>
-        <value xml:lang="zh-TW">使用簡明一致的命名規範,</value>
-    </property>
-    <property key="BusinessIntelligenceNote9">
-        <value xml:lang="en">by meta data descriptions (in the entity def).</value>
-        <value xml:lang="fr">par des méta descriptions de données (dans les définitions d'entités)</value>
-        <value xml:lang="it">mediante le descrizioni dei meta dati (nella definizione entità).</value>
-        <value xml:lang="ja">メタデータ定義が使用されます (エンティティ定義の中で)。</value>
-        <value xml:lang="th">โดยรายละเอียดที่มาของข้อมูล(อยู่ในที่กำหนด)</value>
-        <value xml:lang="zh">(在实体定义中)通过元数据描述进行文档化。</value>
-        <value xml:lang="zh-TW">(在資料實體定義中)透過 Meta data 描述進行檔化.</value>
-    </property>
-    <property key="BusinessIntelligenceNote10">
-        <value xml:lang="en">The best practices for datawarehouses are mainly taken from the great book "The Data Warehouse Toolkit - Second Edition" by Ralph Kimball.</value>
-        <value xml:lang="fr">Les bonnes pratiques pour datawarehouses sont principalement tirées du fameux livre "The Data Warehouse Toolkit - Second Edition" by Ralph Kimball.</value>
-        <value xml:lang="it">Sono state ricavate le migliori pratiche per i datawarehouses dal grande libro "The Data Warehouse Toolkit - Second Edition" di Ralph Kimball.</value>
-        <value xml:lang="ja">データウェアハウスのベストプラックティスは偉大な書籍 "The Data Warehouse Toolkit - Second Edition" by Ralph Kimball の中で詳しく述べられています。</value>
-        <value xml:lang="th">วิธีปฏิบัติที่ดีที่สุดสำหรับข้อมูลคลังสินค้าส่วนใหญ่มาจากหนังสือดี ๆ ชื่อ "The Data Warehouse Toolkit - Second Edition" โดย Ralph Kimball</value>
-        <value xml:lang="zh">数据仓库的最佳实践来自Ralph Kimball撰写的伟大的书《数据仓库工具箱:维度建模的完全指南(第二版)》。</value>
-        <value xml:lang="zh-TW">資料倉儲的最佳慣例來自Ralph Kimball撰寫的偉大的書《資料倉儲工具箱:維度建模的完全指南(第二版)》.</value>
-    </property>
-    <property key="BusinessIntelligenceNote11">
-        <value xml:lang="en">The data for dimensions and facts are maintained and kept up to date using standard OFBiz services</value>
-        <value xml:lang="fr">Les données des dimensions et faits sont maintenues et tenues à jour à l'aide des services standard d'OFBiz</value>
-        <value xml:lang="it">I dati per dimensioni e fatti sono gestiti e mantenuti aggiornati usando servizi standard di OFBiz</value>
-        <value xml:lang="ja">ディメンジョンとファクトのデータを最新に保つために、標準OFBizサービス</value>
-        <value xml:lang="th">ข้อมูลสำหรับขอบเขตและข้อเท็จจริงคือการดูแลและรักษาวันที่ใช้บริการ OFBiz</value>
-        <value xml:lang="zh">数据维度和事实的维护和更新由标准的OFBiz服务负责</value>
-        <value xml:lang="zh-TW">資料維度和事實的維護和更新由標準的OFBiz服務負責</value>
-    </property>
-    <property key="BusinessIntelligenceNote12">
-        <value xml:lang="en">(most of them written in minilang to facilitate customizations) and eca rules (easily customizable).</value>
-        <value xml:lang="fr">(la plupart d'entre eux écrits en minilang pour faciliter la personnalisation) et des règles de ECA (facilement personnalisables).</value>
-        <value xml:lang="it">(molti dei quali sono scritti utizzando minilang per facilitare le personalizzazioni) e le regole eca (facilmente personalizzabili).</value>
-        <value xml:lang="ja">(大部分はミニ言語で記述されていて、カスタマイズが容易) および ECAルール (容易にカスタマイズ可能) が使われています。</value>
-        <value xml:lang="th">(สิ่งที่เขียนทั้งมหดใน minilang ถึง facilitate customizations) และเข้าแทนที่สถานะ (อย่างสะดวก)</value>
-        <value xml:lang="zh">(它们中的绝大多数使用minilang来实现定制)以及eca规则(容易定制)实现。</value>
-        <value xml:lang="zh-TW">(它們中的絶大多數使用minilang來實作客製化)以及ECA規則(容易客製化).</value>
-    </property>
-    <property key="BusinessIntelligenceNote13">
-        <value xml:lang="en">The main low level services to post data to the datawarehouse,</value>
-        <value xml:lang="fr">Les principaux services de bas niveau pour envoyer des données au datawarehouse,</value>
-        <value xml:lang="it">I servizi principali a basso livello per ricavare i dati del datawarehouse,</value>
-        <value xml:lang="ja">主に下位(子)のサービスでデータウェアハウスにデータが送信されます、</value>
-        <value xml:lang="th">หลักการบริการระดับล่างในการบันทึกข้อมูลลงในคลังข้อมูลสินค้า</value>
-        <value xml:lang="zh">主要的底层服务实现把数据提交到数据仓库,</value>
-        <value xml:lang="zh-TW">主要的底層服務實現把資料提交到資料倉儲,</value>
-    </property>
-    <property key="BusinessIntelligenceNote14">
-        <value xml:lang="en">to map the operational keys with the datawarehouse ones, and to manage</value>
-        <value xml:lang="fr">pour aligner les clefs opérationnelles avec celles du datawarehouse, et contrôler</value>
-        <value xml:lang="it">la mappa di chiavi operazionali con il datawarehouse, e la gestione</value>
-        <value xml:lang="ja">操作キーとデータウェアハウスをマップし、</value>
-        <value xml:lang="th">แผนที่สำคัญที่สามารถใช้งานได้ด้วยข้อมูลคลังสินค้าและการจัดการ</value>
-        <value xml:lang="zh">把操作键与数据仓库的建立映射,并管理</value>
-        <value xml:lang="zh-TW">把操作關鍵和資料倉儲的部份建立映對,並管理</value>
-    </property>
-    <property key="BusinessIntelligenceNote15">
-        <value xml:lang="en">history of data changes are already implemented; they will be improved as the datawarehouse will grow (e.g. performance enhancements).</value>
-        <value xml:lang="fr">l'historique des changements de données sont déjà implémentés. Ils seront améliorés quand le datawarehouse se développera (par exemple des perfectionnements en performance).</value>
-        <value xml:lang="it">storia di cambio di dati che sono già implementati; sarà aumentato di caratteristiche non appena crescerà il datawarehouse (e.g. aumento prestazioni).</value>
-        <value xml:lang="ja">履歴データの変更の管理を行うことがすでに実装されています: データウェアハウスの成長に合わせてそれらも見直されます (たとえばパフォーマンスの改善)</value>
-        <value xml:lang="th">ความเป็นมาของข้อมูลได้เปลี่ยนแปลงเรียบร้อยแล้ว; ได้มีการปรับปรุงข้อมูลคลังสินค้าให้ดีขึ้น (ตัวอย่างเช่น การทำให้ดีขึ้น)</value>
-        <value xml:lang="zh">已经实现数据的历史记录;它们会随数据仓库的增长而改进(如性能提升)。</value>
-        <value xml:lang="zh-TW">已經實作資料的歷史記錄;它們會隨資料倉儲的增長而改進(如性能提升).</value>
-    </property>
-    <property key="BusinessIntelligenceNote16">
-        <value xml:lang="en">The following dimensions (and data services) are defined: CurrencyDimension, DateDimension, ProductDimension;</value>
-        <value xml:lang="fr">Les dimensions suivantes (et les services de données) sont définis : dimension de devise, dimension de date, dimension d'article</value>
-        <value xml:lang="it">Le seguenti dimensioni (e servizi dei dati) sono definiti: CurrencyDimension, DateDimension, ProductDimension;</value>
-        <value xml:lang="ja">次のディメンジョン (およびデータサービス) が定義されています: 通貨ディメンジョン、日付ディメンジョン、製品ディメンジョン、</value>
-        <value xml:lang="th">การวัดขนาดตามที่กำหนด (และข้อมูลการบริการ) ระบุ : CurrencyDimension, DateDimension, ProductDimension;</value>
-        <value xml:lang="zh">已经定义了下列维度(以及数据服务):货币维度、日期维度、产品维度;</value>
-        <value xml:lang="zh-TW">已經定義了下列維度(以及資料服務):貨幣維度、日期維度、產品維度;</value>
-    </property>
-    <property key="BusinessIntelligenceNote17">
-        <value xml:lang="en">we will have to complete them and design the other ones (the total number of dimension will be probably around 20).</value>
-        <value xml:lang="fr">Nous devrons les compléter et en concevoir d'autres (le nombre total de dimension sera probablement autour 20).</value>
-        <value xml:lang="it">verranno usati per completare questi e disegnare gli altri (il numero totale di dimensioni saranno probabilmente circa 20).</value>
-        <value xml:lang="ja">私たちはそれを完了させ、別のものを設計する必要があります (ディメンジョンの合計は約20になります)。</value>
-        <value xml:lang="th">เรากำลังทำสิ่งเหล่านั้นสำเร็จแล้วและวางแผนสิ่งต่อไป (จำนวนทั้งหมดประมาณ 20)</value>
-        <value xml:lang="zh">我们将完成它们,并设计其它的(全部维度数量大约将在20个左右)。</value>
-        <value xml:lang="zh-TW">我們將完成它們,並設計其它的(全部維度數量大約將在20個左右).</value>
-    </property>
-    <property key="BusinessIntelligenceNote18">
-        <value xml:lang="en">Just one fact and one star schema are defined: SalesInvoiceItemFact and SalesInvoiceItemStarSchema.</value>
-        <value xml:lang="fr">Seul un fait et un schéma d'étoile sont définis : SalesInvoiceItemFact et SalesInvoiceItemStarSchema.</value>
-        <value xml:lang="it">Solo un fatto e uno star schema sono definiti: SalesInvoiceItemFact e SalesInvoiceItemStarSchema.</value>
-        <value xml:lang="ja">ファクトが1つとスタースキーマが1つ定義されています: 販売請求書明細ファクト および 販売請求書明細スタースキーマ。</value>
-        <value xml:lang="th">จะต้องระบุ 1 ข้อเท็จจริงและ 1 โครงการ: SalesInvoiceItemFact and SalesInvoiceItemStarSchema</value>
-        <value xml:lang="zh">只定义了一个事实和一个星型模型:SalesInvoiceItemFact和SalesInvoiceItemStarSchema。</value>
-        <value xml:lang="zh-TW">只定義了一個事實和一個星型模型:SalesInvoiceItemFact和SalesInvoiceItemStarSchema.</value>
-    </property>
-    <property key="BusinessIntelligenceNote19">
-        <value xml:lang="en">You can quickly initialize the datawarehouse by clicking on the link below:</value>
-        <value xml:lang="fr">Vous pouvez rapidement initialiser le datawarehouse en cliquant sur le lien ci-dessous :</value>
-        <value xml:lang="it">Tu puoi velocemente inizializzare il datawarehouse facendo click sul link qui sotto:</value>
-        <value xml:lang="ja">次のリンクをクリックすると、データウェアハウスを簡単に初期化することができます:</value>
-        <value xml:lang="th">คุณสามารถเริ่มต้นเข้าสู่ข้อมูลคลังสินค้าได้อย่างรวดเร็วโดยการคลิกบนลิงค์ด้านล่างนี้</value>
-        <value xml:lang="zh">你能通过点击下面的链接来快速初始化数据仓库:</value>
-        <value xml:lang="zh-TW">你能透過點選下面的連結來快速初始化資料倉儲:</value>
-    </property>
-        <property key="BusinessIntelligenceNote20">
-        <value xml:lang="en">The CurrencyDimension, DateDimension, ProductDimension and the SalesInvoiceItemFact entities will be automatically populated.</value>
-        <value xml:lang="fr">La dimension de devise, la dimension de date, la dimension d'article et SalesInvoiceItemFact seront automatiquement alimentés.</value>
-        <value xml:lang="it">Le entità CurrencyDimension, DateDimension, ProductDimension e SalesInvoiceItemFact sono caricate automaticamente.</value>
-        <value xml:lang="ja">通貨ディメンジョン、日付ディメンジョン、製品ディメンジョン、および販売請求書明細ファクトのエンティティは自動的に生成されます。</value>
-        <value xml:lang="th">CurrencyDimension, DateDimension, ProductDimension และ SalesInvoiceItemFact จะคงอยู่โดยอัตโนมัติ</value>
-        <value xml:lang="zh">会自动把CurrencyDimension、DateDimension、ProductDimension以及SalesInvoiceItemFact实体填入。</value>
-        <value xml:lang="zh-TW">會自動把CurrencyDimension、DateDimension、ProductDimension以及SalesInvoiceItemFact資料實體增加資料.</value>
-    </property>
-    <property key="BusinessIntelligenceNote21">
-        <value xml:lang="en">Then you can run the analysis using the report builder menu.</value>
-        <value xml:lang="fr">Vous pouvez alors exécuter l'analyse en utilisant le menu "Générateur de rapport".</value>
-        <value xml:lang="it">Successivamente potrai eseguire l'analisi usando il menu costruzione report.</value>
-        <value xml:lang="ja">そしてレポートビルダメニューから分析を実行することができます。</value>
-        <value xml:lang="th">หลังจากที่คุณทำการวิเคราะห์แล้วสามารถใช้เมนูการสร้างรายงานได้</value>
-        <value xml:lang="zh">然后你能使用报告生成程序菜单运行分析。</value>
-        <value xml:lang="zh-TW">然後你能使用報表產生程式選單執行分析.</value>
-    </property>
-    <property key="BusinessIntelligenceNote22">
-        <value xml:lang="en">The report builder is a very simple tool that allows you to run</value>
-        <value xml:lang="fr">Le générateur de rapport est un outil très simple qui vous permet d'exécuter</value>
-        <value xml:lang="it">La costruzione report è uno strumento molto semplice che ti permette di eseguire</value>
-        <value xml:lang="ja">レポートビルダは、分析を実行するための、非常にシンプルなツールです。</value>
-        <value xml:lang="th">การสร้างรายงานเป็นเครื่องมือง่าย ๆ ที่ให้คุณใช้งานได้</value>
-        <value xml:lang="zh">报告生成程序是一个很简单的工具,允许你运行</value>
-        <value xml:lang="zh-TW">報表產生程式是一個很簡單的工具,允許你執行</value>
-    </property>
-    <property key="BusinessIntelligenceNote23">
-        <value xml:lang="en">the analysis on all the star schemas defined in the system.</value>
-        <value xml:lang="fr">l'analyse sur tous les schémas en étoile définis dans le système.</value>
-        <value xml:lang="it">le analisi su tutti gli star schemas definiti nel sistema.</value>
-        <value xml:lang="ja">すべてのスタースキーマ上での分析がシステムで定義されています。</value>
-        <value xml:lang="th">การวิเคราะห์บนแผนผังทั้งหมดที่ระบุในระบบ</value>
-        <value xml:lang="zh">系统中定义的所有星型模型的分析。</value>
-        <value xml:lang="zh-TW">系統中定義的所有星型模型的分析.</value>
-    </property>
-    <property key="BusinessIntelligenceNote24">
-        <value xml:lang="en">However, right now there is just one star schema defined:</value>
-        <value xml:lang="fr">Cependant, pour l'instant il y a qu'un schéma en étoile défini : </value>
-        <value xml:lang="it">Comunque, fino adesso c'è solo un star schema definito:</value>
-        <value xml:lang="ja">しかし、今現在1つのスタースキーマだけが定義されています:</value>
-        <value xml:lang="th">อย่างไรก็ตาม, ขณะนี้มีแผนผังที่กำหนด:</value>
-        <value xml:lang="zh">然而,目前只定义了一个星型模型:</value>
-        <value xml:lang="zh-TW">然而,目前只定義了一個星型模型:</value>
-    </property>
-    <property key="BusinessIntelligenceNote25">
-        <value xml:lang="en">SalesInvoiceItemStarSchema that is a simple "profit and loss" (P&amp;L) analysis.</value>
-        <value xml:lang="fr">SalesInvoiceItemStarSchema qui est une simple analyse "profits et pertes" (P&amp;L).</value>
-        <value xml:lang="it">SalesInvoiceItemStarSchema che è una semplice analisi di "profit and loss" (P&amp;L).</value>
-        <value xml:lang="ja">販売請求明細スタースキーマ は単純な "損益" (P&amp;L) 分析です。</value>
-        <value xml:lang="th">SalesInvoiceItemStarSchema เป็นการวิเคราะห์ขั้นพื้นฐานของ "กำไรและขาดทุน" (P&amp;L) </value>
-        <value xml:lang="zh">销售发票明细星型模型(SalesInvoiceItemStarSchema)是一个简单的盈亏分析。</value>
-        <value xml:lang="zh-TW">銷售發票細項星型模型(SalesInvoiceItemStarSchema)是一個簡單的盈虧分析.</value>
-    </property>
-    <property key="BusinessIntelligenceNote26">
-        <value xml:lang="en">Just select using the checkboxes the fields (columns) you want to see in the report</value>
-        <value xml:lang="fr">Sélectionnez simplement en utilisant les case à cocher des champs (colonnes) que vous voulez voir dans le rapport</value>
-        <value xml:lang="it">Seleziona i campi che vuoi vedere</value>
-        <value xml:lang="ja">チェックボックスの項目を選択するだけでレポートを参照することができます。</value>
-        <value xml:lang="th">จะต้องเลือกใช้เช็คบ็อก (คอลัมภ์) ตามที่คุณต้องการให้มีในรายงาน</value>
-        <value xml:lang="zh">使用选择框选择你想在报告中看到的那些数据项(列),</value>
-        <value xml:lang="zh-TW">使用選擇框選擇你想在報表中看到的那些欄位,</value>
-    </property>
-    <property key="BusinessIntelligenceNote27">
-        <value xml:lang="en">and a simple report will be shown: according to the columns selected the data will be aggregated (drill up/down);</value>
-        <value xml:lang="fr">et un simple rapport sera généré : selon les colonnes choisies les données seront regroupées (tri haut/bas).</value>
-        <value xml:lang="it">e verrà mostrato un semplice report: i dati verranno aggregati (drill up/down) in base alle colonne selezionate;</value>
-        <value xml:lang="ja">そして、選択した項目のデータに従って簡単なレポートが集計され表示されます (ドリルアップ/ダウン)</value>
-        <value xml:lang="th">และพื้นฐานของรายงานจะต้องแสดง: ตามคอลัมภ์ที่เลือกข้อมูลจะต้องรวมกัน (drill up/down);</value>
-        <value xml:lang="zh">然后会显示一个简单的报告:按照选择的列,数据会被聚合(汇总分析/细化分析);</value>
-        <value xml:lang="zh-TW">然後會顯示一個簡單的報表:按照選擇的欄位,資料會被聚合(匯總分析/細化分析);</value>
-    </property>
-    <property key="BusinessIntelligenceNote28">
-        <value xml:lang="en">all the descriptions you see in the report screens are pulled from the entity definitions.</value>
-        <value xml:lang="fr">Toutes les descriptions que vous voyez dans les écrans de rapport sont tirées des définitions d'entités.</value>
-        <value xml:lang="it">tutte le descrizioni che tu vedrai nelle scrermate del report sono prelevare dalla definizioni delle entità.</value>
-        <value xml:lang="ja">レポート画面のすべての定義がエンティティの定義から抽出されます。</value>
-        <value xml:lang="th">รายละเอียดทั้งหมดที่คุณเห็นในหน้ารายงานดึงมาจากสิ่งที่กำหด</value>
-        <value xml:lang="zh">你在报告屏幕中看到的全部描述都是从实体定义中抽取出来的。</value>
-        <value xml:lang="zh-TW">你在報表畫面中看到的全部描述都是從資料實體定義中抽取出來的.</value>
-    </property>
-    <property key="BusinessIntelligenceNote29">
-        <value xml:lang="en">The initialization is needed only once, because the product data and sales invoice data</value>
-        <value xml:lang="fr">L'initialisation n'est nécessaire qu'une fois, parce que les données d'articles et de factures de vente sont</value>
-        <value xml:lang="it">L'inizializzazione è necessaria solo una volta, perchè i dati dei prodotti e delle fatture di vendita</value>
-        <value xml:lang="ja">製品データおよび販売請求データのために、初期化は1回だけ必要です。</value>
-        <value xml:lang="th">การเริ่มต้นเป็นความต้องการอย่างแรกเพราะเป็นข้อมูลสินค้าและข้อมูลใบแจ้งการขาย</value>
-        <value xml:lang="zh">初始化只需要做一次,因为产品数据和销售发票数据</value>
-        <value xml:lang="zh-TW">初始化只需要做一次,因為產品資料和銷售發票資料</value>
-    </property>
-    <property key="BusinessIntelligenceNote30">
-        <value xml:lang="en">are kept updated by ecas: if you create/update a product or create a new invoice,</value>
-        <value xml:lang="fr">sont maintenues à jour par ECAS (Evènements/Conditions/Actions). Si vous créez/mettez à jour un article ou créez une nouvelle facture,</value>
-        <value xml:lang="it">sono mantenuti aggiornati dagli ecas: ogni volta che crei/aggiorni un prodotto o crei una nuova fattura,</value>
-        <value xml:lang="ja">製品の作成/更新または新規請求の作成時のECAS更新で保たれます。</value>
-        <value xml:lang="th">เป็นการเปลี่ยนแปลงโดยการแทนที่: ถ้าคุณสร้าง/เปลี่ยนแปลงสินค้าหรือสร้างใบส่งของใหม่</value>
-        <value xml:lang="zh">是由ECAS来保持和更新的:如果你创建/更新一个产品或新建一个发票,</value>
-        <value xml:lang="zh-TW">是由ECAS來保持和更新的:如果你新建/更新一個產品或新建一個發票,</value>
-    </property>
-    <property key="BusinessIntelligenceNote31">
-        <value xml:lang="en">the new information will be immediately included in the datawarehouse analysis.</value>
-        <value xml:lang="fr">la nouvelle information sera immédiatement incluse dans l'analyse du datawarehouse.</value>
-        <value xml:lang="it">la nuova informazione sarà immediatamente inclusa nelle analisi del datawarehouse.</value>
-        <value xml:lang="ja">新しい情報はデータウェアハウス分析の中に直接取り込まれます。</value>
-        <value xml:lang="th">ข้อมูลใหม่จะต้องรวมทันทีในการวิเคราะห์ข้อมูลคลังสินค้า</value>
-        <value xml:lang="zh">新信息会立即包含在数据仓库的分析中。</value>
-        <value xml:lang="zh-TW">新訊息會立即包含在資料倉儲的分析中.</value>
-    </property>
-    <property key="BusinessIntelligenceQuickInitDataWarehouse">
-        <value xml:lang="en">Quick Init DataWarehouse</value>
-        <value xml:lang="fr">Initialiser rapidement le dataWarehouse</value>
-        <value xml:lang="it">Inizializzazione veloce DataWarehouse</value>
-        <value xml:lang="ja">データウェアハウスをクイック初期化</value>
-        <value xml:lang="th">เริ่มต้นเข้าสู่ข้อมูลคลังสินค้าอย่างรวดเร็ว</value>
-        <value xml:lang="zh">快速初始化数据仓库</value>
-        <value xml:lang="zh-TW">快速初始化資料倉儲</value>
-    </property>
-    <property key="BusinessIntelligenceQuickStartGuide">
-        <value xml:lang="en">Quick Start Guide</value>
-        <value xml:lang="fr">Guide de démarrage rapide</value>
-        <value xml:lang="it">Guida Rapida</value>
-        <value xml:lang="ja">クイックスタートガイド</value>
-        <value xml:lang="th">เข้าสู่คำแนะนำอย่างรวดเร็ว</value>
-        <value xml:lang="zh">快速使用指南</value>
-        <value xml:lang="zh-TW">快速使用指南</value>
-    </property>
-    <property key="BusinessIntelligenceRenderTheReport">
-        <value xml:lang="en">Render the Report</value>
-        <value xml:lang="fr">Générer le rapport</value>
-        <value xml:lang="it">Visualizza il Report</value>
-        <value xml:lang="ja">レポートを作成</value>
-        <value xml:lang="th">เสนอรายงาน</value>
-        <value xml:lang="zh">修饰报告</value>
-        <value xml:lang="zh-TW">修飾報告</value>
-    </property>
-    <property key="BusinessIntelligenceReportBuilder">
-        <value xml:lang="en">Report Builder</value>
-        <value xml:lang="fr">Générateur de rapport</value>
-        <value xml:lang="it">Costruzione Report</value>
-        <value xml:lang="ja">レポートビルダ</value>
-        <value xml:lang="th">สร้างรายงาน</value>
-        <value xml:lang="zh">报告生成程序</value>
-        <value xml:lang="zh-TW">報告產生程式</value>
-    </property>
-    <property key="BusinessIntelligenceReportBuilderRenderStarSchemaReport">
-        <value xml:lang="en">Render Star Schema Report</value>
-        <value xml:lang="fr">Générateur de rapport de schéma en étoile</value>
-        <value xml:lang="it">Visualizza Report Star Schema</value>
-        <value xml:lang="ja">スタースキーマレポートを作成</value>
-        <value xml:lang="th">เสนอแผนผังรายงาน</value>
-        <value xml:lang="zh">修饰星型模型</value>
-        <value xml:lang="zh-TW">修飾星型模型</value>
-    </property>
-    <property key="BusinessIntelligenceReportBuilderSelectStarSchema">
-        <value xml:lang="en">Select Star Schema</value>
-        <value xml:lang="fr">Sélectionnez le schéma en étoile</value>
-        <value xml:lang="it">Seleziona Star Schema</value>
-        <value xml:lang="ja">スタースキーマを選択</value>
-        <value xml:lang="th">เลือกแผนผัง</value>
-        <value xml:lang="zh">选择星型模型</value>
-        <value xml:lang="zh-TW">選擇星型模型</value>
-    </property>
-    <property key="BusinessIntelligenceReportBuilderSelectStarSchemaFields">
-        <value xml:lang="en">Select Star Schema Fields</value>
-        <value xml:lang="fr">Sélectionnez les champs du schéma en étoile</value>
-        <value xml:lang="it">Seleziona Campi Star Schema</value>
-        <value xml:lang="ja">スタースキーマフィールドを選択</value>
-        <value xml:lang="th">เลือกช่องแผนผัง</value>
-        <value xml:lang="zh">选择星型模型数据项</value>
-        <value xml:lang="zh-TW">選擇星型模型欄位</value>
-    </property>
-    <property key="BusinessIntelligenceReportBuilderSelectTheStarSchemaReport">
-        <value xml:lang="en">Select the start schema (report)</value>
-        <value xml:lang="fr">Sélectionnez le schéma en étoile (rapport)</value>
-        <value xml:lang="it">Seleziona lo start schema (report)</value>
-        <value xml:lang="ja">スタースキーマを選択(レポート)</value>
-        <value xml:lang="th">เลือกแผนผัง (รายงาน)</value>
-        <value xml:lang="zh">选择星型模型(报告)</value>
-        <value xml:lang="zh-TW">選擇星型模型(報告)</value>
-    </property>
-    <property key="BusinessIntelligenceUpdateModeStillNotSupported">
-        <value xml:lang="en">The update mode: ${updateMode} is still not supported.</value>
-        <value xml:lang="it">Il metodo di aggiornamento: ${updateMode} non è ancora supportato.</value>
-        <value xml:lang="ja">更新モード: ${updateMode} はまだサポートされていません。</value>
-        <value xml:lang="zh">还不支持更新状态:${updateMode}。</value>
-        <value xml:lang="zh-TW">還不支援更新狀態:${updateMode}.</value>
-    </property>
-</resource>
diff --git a/plugins/bi/config/bi.properties b/plugins/bi/config/bi.properties
deleted file mode 100644
index d9d3901..0000000
--- a/plugins/bi/config/bi.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# 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.
-###############################################################################
-fromDate=2013-09-01
-thruDate=2023-09-01
\ No newline at end of file
diff --git a/plugins/bi/data/BiSecurityGroupDemoData.xml b/plugins/bi/data/BiSecurityGroupDemoData.xml
deleted file mode 100644
index fdf6e64..0000000
--- a/plugins/bi/data/BiSecurityGroupDemoData.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <SecurityGroupPermission groupId="FULLADMIN" permissionId="BI_ADMIN"/>
-</entity-engine-xml>
diff --git a/plugins/bi/data/BiSecurityPermissionSeedData.xml b/plugins/bi/data/BiSecurityPermissionSeedData.xml
deleted file mode 100644
index dbae18e..0000000
--- a/plugins/bi/data/BiSecurityPermissionSeedData.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <SecurityPermission description="ALL Business Intelligence operations." permissionId="BI_ADMIN"/>
-    <SecurityPermission description="Business Intelligence View permission." permissionId="BI_VIEW"/>
-
-    <SecurityGroupPermission groupId="SUPER" permissionId="BI_ADMIN"/>
-</entity-engine-xml>
diff --git a/plugins/bi/data/BiSystemPropertyData.xml b/plugins/bi/data/BiSystemPropertyData.xml
deleted file mode 100644
index 67ee7b6..0000000
--- a/plugins/bi/data/BiSystemPropertyData.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-<!-- 
-# The fromDate value for business intelligence
-bi.properties setting is: fromDate=2013-09-01
--->
-    <SystemProperty systemResourceId="bi" systemPropertyId="fromDate" systemPropertyValue="2013-09-01"
-    description="The fromDate value for business intelligence. Convention: yyyy-mm-dd"
-    />
-    <!-- 
-# The thruDate value for for business intelligence
-bi.properties setting is: 2023-09-01
--->
-    <SystemProperty systemResourceId="bi" systemPropertyId="thruDate" systemPropertyValue="2023-09-01"
-    description="The thruDate value for business intelligence. Convention: yyyy-mm-dd"
-    />
-    
-</entity-engine-xml>
\ No newline at end of file
diff --git a/plugins/bi/data/BiTypeData.xml b/plugins/bi/data/BiTypeData.xml
deleted file mode 100644
index c803a3b..0000000
--- a/plugins/bi/data/BiTypeData.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?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.
--->
-
-<entity-engine-xml>
-    <CurrencyDimension dimensionId="_NF_" description="Currency Not Found."/>
-    <CurrencyDimension dimensionId="_NA_" description="Currency Not Set."/>
-
-    <DateDimension dimensionId="_NF_" description="Date Not Found."/>
-    <DateDimension dimensionId="_NA_" description="Date Not Set."/>
-
-    <ProductDimension dimensionId="_NF_"/>
-    <ProductDimension dimensionId="_NA_"/>
-</entity-engine-xml>
diff --git a/plugins/bi/entitydef/entitygroup.xml b/plugins/bi/entitydef/entitygroup.xml
deleted file mode 100644
index 2d34fe7..0000000
--- a/plugins/bi/entitydef/entitygroup.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?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.
--->
-
-<entitygroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitygroup.xsd">
-
-    <!-- ========================================================= -->
-    <!-- Dimensions                                                     -->
-    <!-- ========================================================= -->
-    <entity-group group="org.apache.ofbiz.olap" entity="CurrencyDimension"/>
-    <entity-group group="org.apache.ofbiz.olap" entity="DateDimension"/>
-    <entity-group group="org.apache.ofbiz.olap" entity="ProductDimension"/>
-
-    <!-- ========================================================= -->
-    <!-- Facts                                                     -->
-    <!-- ========================================================= -->
-    <entity-group group="org.apache.ofbiz.olap" entity="SalesInvoiceItemFact"/>
-    <entity-group group="org.apache.ofbiz.olap" entity="SalesOrderItemFact"/>
-    <entity-group group="org.apache.ofbiz.olap" entity="InventoryItemFact"/>
-
-    <!-- ========================================================= -->
-    <!-- Star Schemas                                              -->
-    <!-- ========================================================= -->
-    <entity-group group="org.apache.ofbiz.olap" entity="SalesInvoiceItemStarSchema"/>
-    <entity-group group="org.apache.ofbiz.olap" entity="SalesOrderItemStarSchema"/>
-    <entity-group group="org.apache.ofbiz.olap" entity="InventoryItemSchema"/>
-
-</entitygroup>
-
diff --git a/plugins/bi/entitydef/entitymodel.xml b/plugins/bi/entitydef/entitymodel.xml
deleted file mode 100644
index 9f9ec7b..0000000
--- a/plugins/bi/entitydef/entitymodel.xml
+++ /dev/null
@@ -1,468 +0,0 @@
-<?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</title>
-    <description>None</description>
-
-    <!-- ========================================================= -->
-    <!-- Dimensions                                                -->
-    <!-- ========================================================= -->
-    <entity entity-name="DateDimension" package-name="org.apache.ofbiz.bi.dimension" title="Date Dimension">
-        <description>Date (days) dimension. The natural key is [dateValue]</description>
-        <field name="dimensionId" type="id-ne">
-            <description>Unique identifier of the Date dimension record</description>
-        </field>
-        <field name="dateValue" type="date">
-            <description>The date (day)</description>
-        </field>
-        <field name="description" type="description">
-            <description>Full date description</description>
-        </field>
-        <field name="dayName" type="short-varchar">
-            <description>The name of the day (Monday, Tuesday, etc...)</description>
-        </field>
-        <field name="dayOfMonth" type="numeric">
-            <description>The number of the day in the month</description>
-        </field>
-        <field name="dayOfYear" type="numeric">
-            <description>The number of the day in the year</description>
-        </field>
-        <field name="monthName" type="short-varchar">
-            <description>The name of the month (January, February, etc...)</description>
-        </field>
-        <field name="monthOfYear" type="numeric">
-            <description>The number of the month (1-12)</description>
-        </field>
-        <field name="yearName" type="numeric">
-            <description>The year (2008, 2009, etc...)</description>
-        </field>
-        <field name="weekOfMonth" type="numeric">
-            <description>The number of the week in the month</description>
-        </field>
-        <field name="weekOfYear" type="numeric">
-            <description>The number of the week in the year</description>
-        </field>
-        <field name="yearMonthDay" type="short-varchar">
-            <description>YYYY-MM-DD</description>
-        </field>
-        <field name="yearAndMonth" type="short-varchar">
-            <description>YYYY-MM</description>
-        </field>
-        <field name="weekdayType" type="short-varchar">
-            <description>Weekday indicator (Weekday or Weekend)</description>
-        </field>
-        <prim-key field="dimensionId"/>
-    </entity>
-
-    <entity entity-name="CurrencyDimension" package-name="org.apache.ofbiz.bi.dimension" title="Currency Dimension">
-        <description>Currency dimension. The natural key is [currencyId]</description>
-        <field name="dimensionId" type="id-ne">
-            <description>Unique identifier of the Currency dimension record</description>
-        </field>
-        <field name="currencyId" type="id-ne">
-            <description>The currency id (natural key).</description>
-        </field>
-        <field name="description" type="description">
-            <description>Full currency description</description>
-        </field>
-        <prim-key field="dimensionId"/>
-    </entity>
-
-    <entity entity-name="ProductDimension" package-name="org.apache.ofbiz.bi.dimension.product" title="Product Dimension">
-        <description>Product dimension. The natural key is [productId]</description>
-        <field name="dimensionId" type="id-ne">
-            <description>Unique identifier of the Product dimension record</description>
-        </field>
-        <field name="productId" type="id-ne">
-            <description>The natural key. From Product.productId</description>
-        </field>
-        <field name="productType" type="description">
-            <description>The product type. From ProductType.description</description>
-        </field>
-        <field name="brandName" type="name"></field>
-        <field name="internalName" type="description"></field>
-        <prim-key field="dimensionId"/>
-    </entity>
-
-    <!-- ========================================================= -->
-    <!-- Facts                                                     -->
-    <!-- ========================================================= -->
-    <entity entity-name="SalesInvoiceItemFact" package-name="org.apache.ofbiz.bi.fact.accounting" title="Sales Invoice Item Fact">
-        <description>A transaction fact entity with invoice item grain.</description>
-        <field name="invoiceId" type="id-ne"></field> <!-- degenerate dimension -->
-        <field name="invoiceItemSeqId" type="id-ne"></field> <!-- degenerate dimension -->
-        <field name="orderId" type="id-ne"></field> <!-- degenerate dimension -->
-        <field name="invoiceDateDimId" type="id-ne"></field>
-        <field name="productDimId" type="id-ne"></field>
-        <field name="billToCustomerDimId" type="id-ne"></field> <!-- TODO: implement the dimension -->
-        <field name="origCurrencyDimId" type="id-ne"></field>
-
-        <field name="quantity" type="fixed-point">
-            <description>Quantity invoiced. From InvoiceItem.quantity</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="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="invoiceId"/>
-        <prim-key field="invoiceItemSeqId"/>
-
-        <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>
-
-    <entity entity-name="SalesOrderItemFact" package-name="org.apache.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="productCategoryId" type="id-ne"></field>
-        <field name="productStoreId" type="id-ne"></field>
-        <field name="salesChannelEnumId" type="id-ne"></field>
-        <field name="statusId" type="id-ne"></field>
-
-        <field name="brand" type="name"></field>
-        <field name="pod" type="name"></field>
-        <field name="account" type="name"></field>
-
-        <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="extGrossCost" type="currency-precise">
-            <description>Extended gross cost: quantity item multiplied by the last 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="GS" type="currency-precise">
-            <description>Gross Sales: Gross Amount plus Shipping Amount.</description>
-        </field>
-        <field name="GMS" type="currency-precise">
-            <description>Gross Merchandize Sales: Gross Amount.</description>
-        </field>
-        <field name="GMP" type="currency-precise">
-            <description>Gross Merchandize Profit: Gross Merchandize Sales less Gross Cost.</description>
-        </field>
-        <field name="GSS" type="currency-precise">
-            <description>Gross Shipping Sales: Shipping Amount</description>
-        </field>
-        <field name="GSC" type="currency-precise">
-            <description>Gross Shipping Cost</description>
-        </field>
-        <field name="GSP" type="currency-precise">
-            <description>Gross Shipping Profit: Gross Shipping Sales less Gross Shipping Cost.</description>
-        </field>
-        <field name="GP" type="currency-precise">
-            <description>Gross Profit: Gross Merchandize Profit less Gross Shipping Profit.</description>
-        </field>
-
-        <field name="countOrder" type="fixed-point">
-            <description>Count of order.</description>
-        </field>
-        <field name="productPromoCode" type="id-ne">
-            <description>Product promotion Code.</description>
-        </field>
-
-        <prim-key field="orderId"/>
-        <prim-key field="orderItemSeqId"/>
-
-        <relation type="one" fk-name="SOIF_ORDERDATE" rel-entity-name="DateDimension">
-            <key-map field-name="orderDateDimId" rel-field-name="dimensionId"/>
-        </relation>
-        <relation type="one" fk-name="SOIF_CURRENCY" rel-entity-name="CurrencyDimension">
-            <key-map field-name="origCurrencyDimId" rel-field-name="dimensionId"/>
-        </relation>
-        <relation type="one" fk-name="SOIF_PRODUCT" rel-entity-name="ProductDimension">
-            <key-map field-name="productDimId" rel-field-name="dimensionId"/>
-        </relation>
-
-    </entity>
-
-    <entity entity-name="InventoryItemFact" package-name="org.apache.ofbiz.bi.fact.product" title="Inventory Item Fact">
-        <description>A transaction fact entity with inventory item.</description>
-        <field name="inventoryItemId" type="id-ne"></field>
-        <field name="facilityId" type="id-ne"></field>
-        <field name="productDimId" type="id-ne"></field>
-        <field name="origCurrencyDimId" type="id-ne"></field>
-        <field name="inventoryDateDimId" type="id-ne"></field>
-
-        <field name="quantityOnHandTotal" type="fixed-point"></field>
-        <field name="availableToPromiseTotal" type="fixed-point"></field>
-        <field name="unitCost" type="fixed-point"></field>
-        <field name="soldoutAmount" type="fixed-point"></field>
-        <prim-key field="inventoryItemId"/>
-        <relation type="one" fk-name="IIF_INVPRODUCT" rel-entity-name="ProductDimension">
-            <key-map field-name="productDimId" rel-field-name="dimensionId"/>
-        </relation>
-        <relation type="one" fk-name="IIF_INVCURRENCY" rel-entity-name="CurrencyDimension">
-            <key-map field-name="origCurrencyDimId" rel-field-name="dimensionId"/>
-        </relation>
-        <relation type="one" fk-name="IIF_INVDATE" rel-entity-name="DateDimension">
-            <key-map field-name="inventoryDateDimId" rel-field-name="dimensionId"/>
-        </relation>
-    </entity>
-
-    <!-- ========================================================= -->
-    <!-- Star Schemas                                              -->
-    <!-- ========================================================= -->
-    <view-entity entity-name="SalesInvoiceItemStarSchema" package-name="org.apache.ofbiz.bi.starschema.accounting" title="Sales Invoice Item Star Schema">
-        <description>Invoice Item star schema (Profit and Loss Statement).</description>
-
-        <member-entity entity-alias="SIIF" entity-name="SalesInvoiceItemFact"/>
-        <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="invoiceDate" 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="invoiceItemSeqId"/>
-            <exclude field="invoiceDateDimId"/>
-            <exclude field="productDimId"/>
-            <exclude field="billToCustomerDimId"/>
-            <exclude field="origCurrencyDimId"/>
-            <exclude field="orderId"/>
-            <exclude field="invoiceId"/>
-            <exclude field="invoiceItemSeqId"/>
-        </alias-all>
-        <alias entity-alias="SIIF" name="invoiceId" group-by="true">
-            <description>Invoice id</description>
-        </alias>
-        <alias entity-alias="SIIF" name="invoiceItemSeqId" group-by="true"/>
-        <alias entity-alias="SIIF" name="orderId" group-by="true"/>
-
-        <view-link entity-alias="SIIF" rel-entity-alias="IDD">
-            <key-map field-name="invoiceDateDimId" 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>
-
-    <view-entity entity-name="SalesOrderItemStarSchema" package-name="org.apache.ofbiz.bi.starschema.order" title="Sales Order Item Star Schema">
-        <description>Order Item star schema (Profit and Loss Statement).</description>
-
-        <member-entity entity-alias="SOIF" entity-name="SalesOrderItemFact"/>
-        <member-entity entity-alias="ODD" entity-name="DateDimension"/>
-        <member-entity entity-alias="PD" entity-name="ProductDimension"/>
-        <member-entity entity-alias="CD" entity-name="CurrencyDimension"/>
-
-        <alias-all entity-alias="ODD" 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="SOIF" function="sum">
-            <exclude field="orderId"/>
-            <exclude field="orderItemSeqId"/>
-            <exclude field="orderDateDimId"/>
-            <exclude field="productDimId"/>
-            <exclude field="origCurrencyDimId"/>
-            <exclude field="billToCustomerDimId"/>
-            <exclude field="productCategoryId"/>
-            <exclude field="productStoreId"/>
-            <exclude field="salesChannelEnumId"/>
-            <exclude field="statusId"/>
-            <exclude field="brand"/>
-            <exclude field="pod"/>
-            <exclude field="account"/>
-            <exclude field="productPromoCode"/>
-        </alias-all>
-        <alias entity-alias="SOIF" name="orderId" group-by="true">
-            <description>Order id</description>
-        </alias>
-        <alias entity-alias="SOIF" name="productPromoCode" group-by="true"/>
-        <alias entity-alias="SOIF" name="orderItemSeqId" group-by="true"/>
-        <alias entity-alias="SOIF" name="productCategoryId" group-by="true"/>
-        <alias entity-alias="SOIF" name="productStoreId" group-by="true"/>
-        <alias entity-alias="SOIF" name="salesChannelEnumId" group-by="true"/>
-        <alias entity-alias="SOIF" name="statusId" group-by="true"/>
-        <alias entity-alias="SOIF" name="brand" group-by="true"/>
-        <alias entity-alias="SOIF" name="pod" group-by="true"/>
-        <alias entity-alias="SOIF" name="account" group-by="true"/>
-
-        <view-link entity-alias="SOIF" rel-entity-alias="ODD">
-            <key-map field-name="orderDateDimId" rel-field-name="dimensionId"/>
-        </view-link>
-        <view-link entity-alias="SOIF" rel-entity-alias="PD">
-            <key-map field-name="productDimId" rel-field-name="dimensionId"/>
-        </view-link>
-        <view-link entity-alias="SOIF" rel-entity-alias="CD">
-            <key-map field-name="origCurrencyDimId" rel-field-name="dimensionId"/>
-        </view-link>
-    </view-entity>
-
-    <view-entity entity-name="InventoryItemSchema" package-name="org.apache.ofbiz.bi.starschema.product" title="Inventory Item Schema">
-        <description>"Inventory Item Schema.</description>
-        <member-entity entity-alias="IIF" entity-name="InventoryItemFact"/>
-        <!--member-entity entity-alias="SIIF" entity-name="SalesOrderItemFact"/-->
-        <member-entity entity-alias="PD" entity-name="ProductDimension"/>
-        <member-entity entity-alias="IDD" entity-name="DateDimension"/>
-        <member-entity entity-alias="CD" entity-name="CurrencyDimension"/>
-
-        <alias-all entity-alias="IIF" function="sum">
-            <exclude field="inventoryItemId"/>
-            <exclude field="orderId"/>
-            <exclude field="facilityId"/>
-            <exclude field="inventoryDateDimId"/>
-            <exclude field="productDimId"/>
-            <exclude field="origCurrencyDimId"/>
-        </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"/>
-            <exclude field="orderStatus"/>
-            <exclude field="saleChanel"/>
-        </alias-all-->
-        <alias-all entity-alias="PD" prefix="product" group-by="true">
-            <exclude field="dimensionId"/>
-        </alias-all>
-        <alias-all entity-alias="IDD" prefix="inventoryDate" group-by="true">
-            <exclude field="dimensionId"/>
-        </alias-all>
-        <alias-all entity-alias="CD" prefix="currency" group-by="true">
-            <exclude field="dimensionId"/>
-        </alias-all>
-        <alias entity-alias="IIF" name="inventoryItemId" group-by="true">
-            <description>Inventory Item Id</description>
-        </alias>
-        <alias entity-alias="IIF" name="facilityId" group-by="true">
-            <description>Facility Id</description>
-        </alias>
-        <alias entity-alias="PD" name="productId" group-by="true">
-            <description>Product id</description>
-        </alias>
-        <view-link entity-alias="IIF" rel-entity-alias="PD" rel-optional="true">
-            <key-map field-name="productDimId" rel-field-name="dimensionId"/>
-        </view-link>
-        <!--view-link entity-alias="PD" rel-entity-alias="SIIF" rel-optional="true">
-            <key-map field-name="dimensionId" rel-field-name="productDimId"/>
-        </view-link-->
-        <view-link entity-alias="IIF" rel-entity-alias="IDD">
-            <key-map field-name="inventoryDateDimId" rel-field-name="dimensionId"/>
-        </view-link>
-        <view-link entity-alias="IIF" rel-entity-alias="CD">
-            <key-map field-name="origCurrencyDimId" rel-field-name="dimensionId"/>
-        </view-link>
-    </view-entity>
-
-</entitymodel>
diff --git a/plugins/bi/groovyScripts/GetStarSchemaFields.groovy b/plugins/bi/groovyScripts/GetStarSchemaFields.groovy
deleted file mode 100644
index 20bcde0..0000000
--- a/plugins/bi/groovyScripts/GetStarSchemaFields.groovy
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * 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.
- */
-
-starSchemaName = parameters.starSchemaName
-
-starSchemaFields = []
-if (starSchemaName) {
-    reader = delegator.getModelReader()
-    starSchema = reader.getModelEntity(starSchemaName)
-    if (starSchema) {
-        fieldsIt = starSchema.getAliasesIterator()
-        while (fieldsIt.hasNext()) {
-            field = fieldsIt.next()
-            fieldMap = [:]
-            fieldMap.name = field.getName()
-            description = field.getDescription()
-            if (!description) {
-                aliasedEntity = starSchema.getAliasedEntity(field.getEntityAlias(), reader)
-                if (aliasedEntity) {
-                    aliasedField = starSchema.getAliasedField(aliasedEntity, field.getField(), reader)
-                    description = aliasedField.getDescription()
-                }
-            }
-            fieldMap.description = description
-            starSchemaFields.add(fieldMap)
-        }
-    }
-}
-context.starSchemaName = starSchemaName
-context.starSchemaFields = starSchemaFields
diff --git a/plugins/bi/groovyScripts/GetStarSchemas.groovy b/plugins/bi/groovyScripts/GetStarSchemas.groovy
deleted file mode 100644
index 1de6845..0000000
--- a/plugins/bi/groovyScripts/GetStarSchemas.groovy
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.
- */
-
-reader = delegator.getModelReader()
-ec = reader.getEntityNames()
-entities = new TreeSet(ec)
-entitiesIt = entities.iterator()
-
-List starSchemas = []
-
-while (entitiesIt.hasNext()) {
-    entity = reader.getModelEntity(entitiesIt.next())
-    packageName = entity.getPackageName()
-    if (!packageName.contains("starschema")) {
-        continue
-    }
-
-    entityMap = [:]
-    entityMap.name = entity.getEntityName()
-    entityMap.title = entity.getTitle()
-
-    starSchemas.add(entityMap)
-}
-context.starSchemas = starSchemas
diff --git a/plugins/bi/groovyScripts/RunStarSchemaQuery.groovy b/plugins/bi/groovyScripts/RunStarSchemaQuery.groovy
deleted file mode 100644
index 42b3a42..0000000
--- a/plugins/bi/groovyScripts/RunStarSchemaQuery.groovy
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.
- */
-
-import org.apache.ofbiz.base.util.UtilHttp
-
-starSchemaName = parameters.starSchemaName
-selectedFieldList = UtilHttp.parseMultiFormData(parameters)
-
-columnNames = [] as Set
-selectedFieldList.each { selectedField ->
-  columnNames.add(selectedField.selectedFieldName)
-}
-context.columnNames = columnNames
-List records = []
-records = select(context.columnNames).from(starSchemaName).distinct(false).queryList()
-
-context.records = records
diff --git a/plugins/bi/minilang/DimensionServices.xml b/plugins/bi/minilang/DimensionServices.xml
deleted file mode 100644
index 5ebf279..0000000
--- a/plugins/bi/minilang/DimensionServices.xml
+++ /dev/null
@@ -1,142 +0,0 @@
-<?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="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-method method-name="loadCurrencyDimension" short-description="Initialize the CurrencyDimension using the update strategy of 'type 1'">
-        <entity-and entity-name="Uom" list="currencies">
-            <field-map field-name="uomTypeId" value="CURRENCY_MEASURE"/>
-        </entity-and>
-        <iterate list="currencies" entry="currency">
-            <entity-and entity-name="CurrencyDimension" list="currencyDims">
-                <field-map field-name="currencyId" from-field="currency.uomId"/>
-            </entity-and>
-            <if-not-empty field="currencyDims">
-                <iterate list="currencyDims" entry="currencyDim">
-                    <set field="currencyDim.description" from-field="currency.description"/>
-                    <store-value value-field="currencyDim"/>
-                </iterate>
-            <else>
-                <make-value value-field="currencyDim" entity-name="CurrencyDimension"/>
-                <sequenced-id sequence-name="CurrencyDimension" field="currencyDim.dimensionId"/>
-                <set field="currencyDim.currencyId" from-field="currency.uomId"/>
-                <set field="currencyDim.description" from-field="currency.description"/>
-                <create-value value-field="currencyDim"/>
-            </else>
-            </if-not-empty>
-        </iterate>
-    </simple-method>
-
-    <simple-method method-name="prepareProductDimensionData" short-description="">
-        <entity-one entity-name="Product" value-field="product"/>
-        <if-empty field="product">
-            <add-error>
-                <fail-property resource="ProductUiLabels" property="ProductProductNotFoundWithProduct"/>
-            </add-error>
-        </if-empty>
-        <check-errors/>
-        <make-value value-field="productDimension" entity-name="ProductDimension"/>
-        <set-nonpk-fields map="product" value-field="productDimension"/>
-
-        <get-related-one value-field="product" relation-name="ProductType" to-value-field="productType"/>
-        <set field="productDimension.productType" from-field="productType.description"/>
-
-        <field-to-result field="productDimension"/>
-    </simple-method>
-
-    <simple-method method-name="loadProductInProductDimension" short-description="">
-        <set-service-fields service-name="prepareProductDimensionData" map="parameters" to-map="inMap"/>
-        <call-service service-name="prepareProductDimensionData" in-map-name="inMap">
-            <result-to-field result-name="productDimension"/>
-        </call-service>
-        <clear-field field="inMap"/>
-        <set-service-fields service-name="storeGenericDimension" map="parameters" to-map="inMap"/>
-        <set field="inMap.naturalKeyFields[]" value="productId"/>
-        <set field="inMap.dimensionValue" from-field="productDimension"/>
-        <call-service service-name="storeGenericDimension" in-map-name="inMap"/>
-    </simple-method>
-    <simple-method method-name="loadAllProductsInProductDimension" short-description="">
-        <entity-condition entity-name="Product" list="products"/>
-        <iterate list="products" entry="product">
-            <set-service-fields service-name="loadProductInProductDimension" map="parameters" to-map="inMap"/>
-            <set field="inMap.productId" from-field="product.productId"/>
-            <call-service service-name="loadProductInProductDimension" in-map-name="inMap"/>
-            <clear-field field="inMap"/>
-        </iterate>
-    </simple-method>
-
-</simple-methods>
diff --git a/plugins/bi/minilang/FactServices.xml b/plugins/bi/minilang/FactServices.xml
deleted file mode 100644
index a3589cf..0000000
--- a/plugins/bi/minilang/FactServices.xml
+++ /dev/null
@@ -1,751 +0,0 @@
-<?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="loadSalesInvoiceFact" short-description="">
-        <entity-one entity-name="Invoice" value-field="invoice"/>
-        <if-empty field="invoice">
-            <add-error>
-                <fail-property resource="AccountingUiLabels" property="AccountingInvoiceDoesNotExists"/>
-            </add-error>
-        </if-empty>
-        <check-errors/>
-        <if-compare field="invoice.invoiceTypeId" operator="equals" value="SALES_INVOICE">
-            <set field="andConditions.invoiceItemTypeId" value="INV_FPROD_ITEM"/>
-            <get-related relation-name="InvoiceItem" value-field="invoice" list="invoiceItems" map="andConditions"/>
-            <iterate list="invoiceItems" entry="invoiceItem">
-                <clear-field field="inMap"/>
-                <set field="inMap.invoice" from-field="invoice"/>
-                <set field="inMap.invoiceItem" from-field="invoiceItem"/>
-                <call-service service-name="loadSalesInvoiceItemFact" in-map-name="inMap"/>
-            </iterate>
-        </if-compare>
-    </simple-method>
-    <simple-method method-name="loadSalesInvoiceItemFact" short-description="">
-        <set field="invoice" from-field="parameters.invoice"/>
-        <set field="invoiceItem" from-field="parameters.invoiceItem"/>
-        <if-empty field="invoice">
-            <entity-one entity-name="Invoice" value-field="invoice"/>
-        </if-empty>
-        <if-empty field="invoiceItem">
-            <entity-one entity-name="InvoiceItem" value-field="invoiceItem"/>
-        </if-empty>
-        <if-empty field="invoice">
-            <add-error>
-                <fail-property resource="AccountingUiLabels" property="AccountingInvoiceDoesNotExists"/>
-            </add-error>
-        </if-empty>
-        <if-empty field="invoiceItem">
-            <add-error>
-                <fail-property resource="AccountingUiLabels" property="AccountingInvoiceItemDoesNotExists"/>
-            </add-error>
-        </if-empty>
-        <check-errors/>
-
-        <if-compare field="invoice.invoiceTypeId" operator="equals" value="SALES_INVOICE">
-            <entity-one entity-name="SalesInvoiceItemFact" value-field="fact" auto-field-map="false">
-                <field-map field-name="invoiceId" from-field="invoiceItem.invoiceId"/>
-                <field-map field-name="invoiceItemSeqId" from-field="invoiceItem.invoiceItemSeqId"/>
-            </entity-one>
-            <!-- key handling -->
-            <if-empty field="fact">
-                <make-value entity-name="SalesInvoiceItemFact" value-field="fact"/>
-                <set field="fact.invoiceId" from-field="invoice.invoiceId"/>
-                <set field="fact.invoiceItemSeqId" from-field="invoiceItem.invoiceItemSeqId"/>
-                <!-- conversion of the invoice date -->
-                <if-not-empty field="invoice.invoiceDate">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.dimensionEntityName" value="DateDimension"/>
-                    <set field="inMap.naturalKeyFields.dateValue" from-field="invoice.invoiceDate" type="Date"/>
-                    <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                        <result-to-field result-name="dimensionId" field="fact.invoiceDateDimId"/>
-                    </call-service>
-                    <if-empty field="fact.invoiceDateDimId">
-                        <set field="fact.invoiceDateDimId" value="_NF_"/>
-                    </if-empty>
-                <else>
-                    <set field="fact.invoiceDateDimId" value="_NA_"/>
-                </else>
-                </if-not-empty>
-                <!-- conversion of the product id -->
-                <if-not-empty field="invoiceItem.productId">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.dimensionEntityName" value="ProductDimension"/>
-                    <set field="inMap.naturalKeyFields.productId" from-field="invoiceItem.productId"/>
-                    <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                        <result-to-field result-name="dimensionId" field="fact.productDimId"/>
-                    </call-service>
-                    <if-empty field="fact.productDimId">
-                        <set field="fact.productDimId" value="_NF_"/>
-                    </if-empty>
-                <else>
-                    <set field="fact.productDimId" value="_NA_"/>
-                </else>
-                </if-not-empty>
-                <!-- conversion of the invoice currency -->
-                <if-not-empty field="invoice.currencyUomId">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.dimensionEntityName" value="CurrencyDimension"/>
-                    <set field="inMap.naturalKeyFields.currencyId" from-field="invoice.currencyUomId"/>
-                    <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                        <result-to-field result-name="dimensionId" field="fact.origCurrencyDimId"/>
-                    </call-service>
-                    <if-empty field="fact.origCurrencyDimId">
-                        <set field="fact.origCurrencyDimId" value="_NF_"/>
-                    </if-empty>
-                <else>
-                    <set field="fact.origCurrencyDimId" value="_NA_"/>
-                </else>
-                </if-not-empty>
-                <!-- TODO -->
-                <set field="fact.orderId" value="_NA_"/>
-                <set field="fact.billToCustomerDimId" value="_NA_"/>
-                <create-value value-field="fact"/>
-            </if-empty>
-            <!-- =============== -->
-            <!-- facts handling  -->
-            <!-- =============== -->
-            <set field="fact.quantity" from-field="invoiceItem.quantity" type="BigDecimal"/>
-            <set field="fact.extGrossAmount" value="0.0" type="BigDecimal"/>
-            <set field="fact.extDiscountAmount" value="0.0" type="BigDecimal"/>
-            <set field="fact.extTaxAmount" value="0.0" type="BigDecimal"/>
-            <set field="fact.extNetAmount" value="0.0" type="BigDecimal"/>
-            <calculate field="fact.extGrossAmount">
-                <calcop field="invoiceItem.quantity" operator="multiply">
-                    <calcop field="invoiceItem.amount" operator="get"/>
-                </calcop>
-            </calculate>
-            <!-- taxes -->
-            <clear-field field="andConditions"/>
-            <set field="andConditions.invoiceItemTypeId" value="ITM_SALES_TAX"/>
-            <get-related relation-name="ChildrenInvoiceItem" value-field="invoiceItem" list="taxes" map="andConditions"/>
-            <iterate list="taxes" entry="tax">
-                <calculate field="fact.extTaxAmount">
-                    <calcop field="fact.extTaxAmount" operator="add">
-                        <calcop field="tax.amount" operator="get"/>
-                    </calcop>
-                </calculate>
-            </iterate>
-            <!-- discounts -->
-            <clear-field field="andConditions"/>
-            <set field="andConditions.invoiceItemTypeId" value="ITM_PROMOTION_ADJ"/>
-            <get-related relation-name="ChildrenInvoiceItem" value-field="invoiceItem" list="discounts" map="andConditions"/>
-            <iterate list="discounts" entry="discount">
-                <calculate field="fact.extDiscountAmount" type="BigDecimal">
-                    <calcop field="fact.extDiscountAmount" operator="add">
-                        <calcop field="discount.amount" operator="negative"/>
-                    </calcop>
-                </calculate>
-            </iterate>
-
-            <calculate field="fact.extNetAmount">
-                <calcop field="fact.extGrossAmount" operator="subtract">
-                    <calcop field="fact.extDiscountAmount" operator="get"/>
-                </calcop>
-            </calculate>
-            <!-- TODO: prorate invoice header discounts and shipping charges -->
-            <!-- TODO: costs -->
-            <set field="fact.extManFixedCost" value="0.0" type="BigDecimal"/>
-            <set field="fact.extManVarCost" value="0.0" type="BigDecimal"/>
-            <set field="fact.extStorageCost" value="0.0" type="BigDecimal"/>
-            <set field="fact.extDistributionCost" value="0.0" type="BigDecimal"/>
-
-            <calculate field="fact.contributionAmount">
-                <calcop field="fact.extNetAmount" operator="subtract">
-                    <calcop field="fact.extManFixedCost" operator="get"/>
-                    <calcop field="fact.extManVarCost" operator="get"/>
-                    <calcop field="fact.extStorageCost" operator="get"/>
-                    <calcop field="fact.extDistributionCost" operator="get"/>
-                </calcop>
-            </calculate>
-
-            <store-value value-field="fact"/>
-        </if-compare>
-    </simple-method>
-
-    <simple-method method-name="loadSalesOrderFact" short-description="">
-        <entity-one entity-name="OrderHeader" value-field="orderHeader"/>
-        <if-empty field="orderHeader">
-            <add-error>
-                <fail-property resource="OrderErrorUiLabels" property="OrderOrderIdDoesNotExists"/>
-            </add-error>
-        </if-empty>
-        <check-errors/>
-        <if-compare field="orderHeader.orderTypeId" operator="equals" value="SALES_ORDER">
-            <if-compare field="orderHeader.statusId" operator="equals" value="ORDER_APPROVED">
-                <entity-condition entity-name="OrderItem" list="orderItems">
-                    <condition-list combine="and">
-                        <condition-expr field-name="orderId" operator="equals" from-field="orderHeader.orderId"/>
-                        <!--<condition-expr field-name="productId" operator="not-like" value="M00%"/>-->
-                        <condition-expr field-name="orderItemTypeId" operator="equals" value="PRODUCT_ORDER_ITEM"/>
-                        <!--<condition-expr field-name="statusId" operator="equals" value="ITEM_APPROVED"/>-->
-                    </condition-list>
-                </entity-condition>
-
-                <!--<set field="andConditions.orderItemTypeId" value="PRODUCT_ORDER_ITEM"/>
-                <get-related relation-name="OrderItem" value-field="orderHeader" list="orderItems" map="andConditions"/>-->
-
-                <iterate list="orderItems" entry="orderItem">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.orderHeader" from-field="orderHeader"/>
-                    <set field="inMap.orderItem" from-field="orderItem"/>
-                    <set field="inMap.orderAdjustment" from-field="orderAdjustment"/>
-                    <call-service service-name="loadSalesOrderItemFact" in-map-name="inMap"/>
-                </iterate>
-            </if-compare>
-        </if-compare>
-    </simple-method>
-
-    <simple-method method-name="loadSalesOrderItemFact" short-description="">
-        <set field="orderHeader" from-field="parameters.orderHeader"/>
-        <set field="orderItem" from-field="parameters.orderItem"/>
-        <set field="orderAdjustment" from-field="parameters.orderAdjustment"/>
-        <if-empty field="orderHeader">
-            <entity-one entity-name="OrderHeader" value-field="orderHeader"/>
-        </if-empty>
-        <if-empty field="orderItem">
-            <entity-one entity-name="OrderItem" value-field="orderItem"/>
-        </if-empty>
-        <if-empty field="orderAdjustment">
-            <entity-and entity-name="OrderAdjustment" list="orderAdjustments">
-                <field-map field-name="orderId" from-field="orderItem.orderId"/>
-            </entity-and>
-        </if-empty>
-        <if-empty field="orderHeader">
-            <add-error>
-                <fail-property resource="OrderErrorUiLabels" property="OrderOrderIdDoesNotExists"/>
-            </add-error>
-        </if-empty>
-        <if-empty field="orderItem">
-            <add-error>
-                <fail-property resource="OrderErrorUiLabels" property="OrderOrderItemIdDoesNotExists"/>
-            </add-error>
-        </if-empty>
-        <check-errors/>
-
-        <if-compare field="orderHeader.statusId" operator="equals" value="ORDER_APPROVED">
-            <entity-one entity-name="SalesOrderItemFact" value-field="fact" auto-field-map="false">
-                <field-map field-name="orderId" from-field="orderItem.orderId"/>
-                <field-map field-name="orderItemSeqId" from-field="orderItem.orderItemSeqId"/>
-            </entity-one>
-            <!-- key handling -->
-            <if-empty field="fact">
-                <make-value entity-name="SalesOrderItemFact" value-field="fact"/>
-                <set field="fact.orderId" from-field="orderHeader.orderId"/>
-                <set field="fact.orderItemSeqId" from-field="orderItem.orderItemSeqId"/>
-                <set field="fact.productStoreId" from-field="orderHeader.productStoreId"/>
-                <set field="fact.salesChannelEnumId" from-field="orderHeader.salesChannelEnumId"/>
-                <set field="fact.statusId" from-field="orderItem.statusId"/>
-
-                <!-- account -->
-                <if-not-empty field="orderHeader.productStoreId">
-                    <entity-one entity-name="ProductStore" value-field="account">
-                        <field-map field-name="productStoreId" from-field="orderHeader.productStoreId"/>
-                    </entity-one>
-                    <set field="fact.account" from-field="account.storeName"/>
-                </if-not-empty>
-
-                <!-- pod -->
-                <if-compare field="orderHeader.currencyUom" operator="equals" value="EUR">
-                    <set field="fact.pod" value="Latin"/>
-                <else>
-                    <set field="fact.pod" value="English"/>
-                </else>
-                </if-compare>
-
-                <!-- brand -->
-                <if-not-empty field="orderHeader.salesChannelEnumId">
-                    <entity-one entity-name="Enumeration" value-field="brand">
-                        <field-map field-name="enumId" from-field="orderHeader.salesChannelEnumId"/>
-                    </entity-one>
-                    <set field="fact.brand" from-field="brand.description"/>
-                </if-not-empty>
-
-                <!-- conversion of the order date -->
-                <entity-condition entity-name="OrderStatus" list="orderStatusList">
-                    <condition-list combine="and">
-                        <condition-expr field-name="orderId" from-field="orderHeader.orderId"/>
-                        <condition-expr field-name="statusId" value="ORDER_APPROVED"/>
-                    </condition-list>
-                    <order-by field-name="-statusDatetime"/>
-                </entity-condition>
-                <first-from-list list="orderStatusList" entry="orderStatus"/>
-                <if-not-empty field="orderStatus.statusDatetime">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.dimensionEntityName" value="DateDimension"/>
-                    <set field="inMap.naturalKeyFields.dateValue" from-field="orderStatus.statusDatetime" type="Date"/>
-                    <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                        <result-to-field result-name="dimensionId" field="fact.orderDateDimId"/>
-                    </call-service>
-                    <if-empty field="fact.orderDateDimId">
-                        <set field="fact.orderDateDimId" value="_NF_"/>
-                    </if-empty>
-                <else>
-                    <set field="fact.orderDateDimId" value="_NA_"/>
-                </else>
-                </if-not-empty>
-
-                <!-- conversion of the product id -->
-                <if-not-empty field="orderItem.productId">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.dimensionEntityName" value="ProductDimension"/>
-                    <set field="inMap.naturalKeyFields.productId" from-field="orderItem.productId"/>
-                    <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                        <result-to-field result-name="dimensionId" field="fact.productDimId"/>
-                    </call-service>
-                    <if-empty field="fact.productDimId">
-                        <set field="fact.productDimId" value="_NF_"/>
-                    </if-empty>
-                <else>
-                    <set field="fact.productDimId" value="_NA_"/>
-                </else>
-                </if-not-empty>
-
-                <!-- conversion of the order currency -->
-                <if-not-empty field="orderHeader.currencyUom">
-                    <clear-field field="inMap"/>
-                    <set field="inMap.dimensionEntityName" value="CurrencyDimension"/>
-                    <set field="inMap.naturalKeyFields.currencyId" from-field="orderHeader.currencyUom"/>
-                    <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                        <result-to-field result-name="dimensionId" field="fact.origCurrencyDimId"/>
-                    </call-service>
-                    <if-empty field="fact.origCurrencyDimId">
-                        <set field="fact.origCurrencyDimId" value="_NF_"/>
-                    </if-empty>
-                <else>
-                    <set field="fact.origCurrencyDimId" value="_NA_"/>
-                </else>
-                </if-not-empty>
-
-                <!-- productCategoryId -->
-                <entity-and entity-name="ProductCategoryMember" list="productCategoryMembers">
-                    <field-map field-name="productId" from-field="orderItem.productId"/>
-                    <field-map field-name="thruDate" from-field="nullField"/>
-                </entity-and>
-                <if-not-empty field="productCategoryMembers">
-                    <first-from-list list="productCategoryMembers" entry="productCategoryMember"/>
-                    <set field="fact.productCategoryId" from-field="productCategoryMember.productCategoryId"/>
-                </if-not-empty>
-
-                <!-- TODO -->
-                <set field="fact.billToCustomerDimId" value="_NA_"/>
-
-                <create-value value-field="fact"/>
-            </if-empty>
-            <!-- =============== -->
-            <!-- facts handling  -->
-            <!-- =============== -->
-            <set field="fact.quantity" from-field="orderItem.quantity" type="BigDecimal"/>
-            <set field="fact.extGrossAmount" value="0" type="BigDecimal"/>
-            <set field="fact.extGrossCost" value="0" type="BigDecimal"/>
-            <set field="fact.extDiscountAmount" value="0" type="BigDecimal"/>
-            <set field="fact.extNetAmount" value="0" type="BigDecimal"/>
-            <set field="fact.extShippingAmount" value="0" type="BigDecimal"/>
-            <set field="fact.extTaxAmount" value="0" type="BigDecimal"/>
-
-            <set field="fact.GS" value="0" type="BigDecimal"/>
-            <set field="fact.GMS" value="0" type="BigDecimal"/>
-            <set field="fact.GMP" value="0" type="BigDecimal"/>
-            <set field="fact.GSS" value="0" type="BigDecimal"/>
-            <set field="fact.GSC" value="0" type="BigDecimal"/>
-            <set field="fact.GSP" value="0" type="BigDecimal"/>
-            <set field="fact.GP" value="0" type="BigDecimal"/>
-
-            <set field="fact.countOrder" value="0" type="BigDecimal"/>
-
-            <!-- extGrossAmount -->
-            <set field="convertUomCurrencyMap.uomId" from-field="orderHeader.currencyUom"/>
-            <set field="convertUomCurrencyMap.uomIdTo" value="USD"/>
-            <set field="convertUomCurrencyMap.nowDate" from-field="orderStatus.statusDatetime"/>
-            <call-service service-name="convertUomCurrency" in-map-name="convertUomCurrencyMap">
-                <result-to-field result-name="conversionFactor" field="exchangeRate"/>
-            </call-service>
-
-            <if-not-empty field="exchangeRate">
-                <calculate field="unitPrice">
-                    <calcop field="orderItem.unitPrice" operator="multiply">
-                        <calcop field="exchangeRate" operator="get"/>
-                    </calcop>
-                </calculate>
-
-                <calculate field="fact.extGrossAmount">
-                    <calcop field="fact.quantity" operator="multiply">
-                        <calcop field="unitPrice" operator="get"/>
-                    </calcop>
-                </calculate>
-            </if-not-empty>
-
-            <!-- extGrossCost -->
-            <entity-condition entity-name="SupplierProduct" list="costs">
-                <condition-list combine="and">
-                    <condition-expr field-name="productId" operator="equals" from-field="orderItem.productId"/>
-                    <condition-expr field-name="availableThruDate" operator="equals" from-field="nullField"/>
-                    <condition-expr field-name="minimumOrderQuantity" operator="equals" value="0"/>
-                </condition-list>
-            </entity-condition>
-            <if-not-empty field="costs">
-                <first-from-list list="costs" entry="cost"/>
-
-                <set field="convertUomCurrencyMap.uomId" from-field="cost.currencyUomId"/>
-                <set field="convertUomCurrencyMap.uomIdTo" value="USD"/>
-                <set field="convertUomCurrencyMap.nowDate" from-field="orderStatus.statusDatetime"/>
-                <call-service service-name="convertUomCurrency" in-map-name="convertUomCurrencyMap">
-                    <result-to-field result-name="conversionFactor" field="exchangeRate"/>
-                </call-service>
-
-                <if-not-empty field="exchangeRate">
-                    <calculate field="costPrice">
-                        <calcop field="cost.lastPrice" operator="multiply">
-                            <calcop field="exchangeRate" operator="get"/>
-                        </calcop>
-                    </calculate>
-
-                    <calculate field="fact.extGrossCost">
-                        <calcop field="fact.quantity" operator="multiply">
-                            <calcop field="costPrice" operator="get"/>
-                        </calcop>
-                    </calculate>
-                </if-not-empty>
-            </if-not-empty>
-
-            <!-- extShippingAmount -->
-            <iterate list="orderAdjustments" entry="shipping">
-                <if-compare field="shipping.orderAdjustmentTypeId" operator="equals" value="SHIPPING_CHARGES">
-                    <calculate field="fact.extShippingAmount">
-                        <calcop field="fact.extShippingAmount" operator="add">
-                            <calcop field="shipping.amount" operator="get"/>
-                        </calcop>
-                    </calculate>
-                </if-compare>
-            </iterate>
-
-            <!-- extTaxAmount -->
-            <iterate list="orderAdjustments" entry="tax">
-                <if-compare field="tax.orderAdjustmentTypeId" operator="equals" value="SALES_TAX">
-                    <calculate field="fact.extTaxAmount">
-                        <calcop field="fact.extTaxAmount" operator="add">
-                            <calcop field="tax.amount" operator="get"/>
-                        </calcop>
-                    </calculate>
-                </if-compare>
-            </iterate>
-
-            <!-- extDiscountAmount -->
-            <iterate list="orderAdjustments" entry="discount">
-                <if-compare field="discount.orderAdjustmentTypeId" operator="equals" value="PROMOTION_ADJUSTMENT">
-                    <calculate field="fact.extDiscountAmount">
-                        <calcop field="fact.extDiscountAmount" operator="add">
-                            <calcop field="discount.amount" operator="get"/>
-                        </calcop>
-                    </calculate>
-                    <!-- product promo code -->
-                    <entity-and entity-name="ProductPromoCode" list="productPromo">
-                        <field-map field-name="productPromoId" from-field="discount.productPromoId"/>
-                    </entity-and>
-                    <first-from-list list="productPromo" entry="productPromoCode"/>
-                    <if-not-empty field="productPromoCode">
-                        <set field="fact.productPromoCode" from-field="productPromoCode.productPromoCodeId"/>
-                        <else>
-                            <set field="fact.productPromoCode" value="Not require code"/>
-                        </else>
-                    </if-not-empty>
-                </if-compare>
-            </iterate>
-
-            <!-- extNetAmount -->
-            <calculate field="fact.extNetAmount">
-                <calcop field="fact.extGrossAmount" operator="subtract">
-                    <calcop field="fact.extDiscountAmount" operator="get"/>
-                </calcop>
-            </calculate>
-
-            <!-- GS -->
-            <set field="countGS" value="0"/>
-            <entity-and entity-name="SalesOrderItemFact" list="checkGSList">
-                <field-map field-name="orderId" from-field="orderHeader.orderId"/>
-            </entity-and>
-            <iterate list="checkGSList" entry="checkGS">
-                <if-not-empty field="checkGS.GS">
-                    <if-compare field="checkGS.GS" operator="not-equals" value="0">
-                        <set field="countGS" value="1"/>
-                    </if-compare>
-                </if-not-empty>
-            </iterate>
-            <if-compare field="countGS" operator="equals" value="0">
-                <set field="convertUomCurrencyMap.uomId" from-field="orderHeader.currencyUom"/>
-                <set field="convertUomCurrencyMap.uomIdTo" value="USD"/>
-                <set field="convertUomCurrencyMap.nowDate" from-field="orderStatus.statusDatetime"/>
-                <call-service service-name="convertUomCurrency" in-map-name="convertUomCurrencyMap">
-                    <result-to-field result-name="conversionFactor" field="exchangeRate"/>
-                </call-service>
-
-                <if-not-empty field="exchangeRate">
-                    <calculate field="fact.GS">
-                        <calcop field="orderHeader.grandTotal" operator="multiply">
-                            <calcop field="exchangeRate" operator="get"/>
-                        </calcop>
-                    </calculate>
-                </if-not-empty>
-            </if-compare>
-
-            <!-- GMS -->
-            <calculate field="fact.GMS">
-                <calcop field="fact.GMS" operator="add">
-                    <calcop field="fact.extGrossAmount" operator="get"/>
-                </calcop>
-            </calculate>
-
-            <!-- GMP -->
-            <calculate field="fact.GMP">
-                <calcop field="fact.GMS" operator="subtract">
-                    <calcop field="fact.extGrossCost" operator="get"/>
-                </calcop>
-            </calculate>
-
-            <!-- GSP -->
-            <set field="countGSP" value="0"/>
-            <entity-and entity-name="SalesOrderItemFact" list="checkGSPList">
-                <field-map field-name="orderId" from-field="orderHeader.orderId"/>
-            </entity-and>
-            <iterate list="checkGSPList" entry="checkGSP">
-                <if-not-empty field="checkGSP.GSP">
-                    <if-compare field="checkGSP.GSP" operator="not-equals" value="0">
-                        <set field="countGSP" value="1"/>
-                    </if-compare>
-                </if-not-empty>
-            </iterate>
-            <if-compare field="countGSP" operator="equals" value="0">
-                <entity-and entity-name="OrderItem" list="orderItemList">
-                    <field-map field-name="orderId" from-field="orderHeader.orderId"/>
-                </entity-and>
-
-                <set field="warrantyPrice" value="0" type="BigDecimal"/>
-                <iterate list="orderAdjustments" entry="warranty">
-                    <if-compare field="warranty.orderAdjustmentTypeId" operator="equals" value="WARRANTY_ADJUSTMENT">
-                        <calculate field="warrantyPrice">
-                            <calcop field="warrantyPrice" operator="add">
-                                <calcop field="warranty.amount" operator="get"/>
-                            </calcop>
-                        </calculate>
-                    </if-compare>
-                </iterate>
-                <calculate field="GSS">
-                    <calcop field="fact.extShippingAmount" operator="add">
-                        <calcop field="warrantyPrice" operator="get"/>
-                    </calcop>
-                </calculate>
-
-                <set field="convertUomCurrencyMap.uomId" from-field="orderHeader.currencyUom"/>
-                <set field="convertUomCurrencyMap.uomIdTo" value="USD"/>
-                <set field="convertUomCurrencyMap.nowDate" from-field="orderStatus.statusDatetime"/>
-                <call-service service-name="convertUomCurrency" in-map-name="convertUomCurrencyMap">
-                    <result-to-field result-name="conversionFactor" field="exchangeRate"/>
-                </call-service>
-
-                <if-not-empty field="exchangeRate">
-                    <calculate field="GSS">
-                        <calcop field="GSS" operator="multiply">
-                            <calcop field="exchangeRate" operator="get"/>
-                        </calcop>
-                    </calculate>
-                </if-not-empty>
-                <set field="fact.GSS" from-field="GSS"/>
-
-                <set field="fact.GSP" from-field="GSS" type="BigDecimal"/>
-            </if-compare>
-
-            <!-- GP -->
-            <calculate field="fact.GP">
-                <calcop field="fact.GMP" operator="add">
-                    <calcop field="fact.GSP" operator="get"/>
-                </calcop>
-            </calculate>
-
-            <!-- countOrder -->
-            <set field="countOrder" value="0"/>
-            <entity-and entity-name="SalesOrderItemFact" list="checkCountOrderList">
-                <field-map field-name="orderId" from-field="orderHeader.orderId"/>
-            </entity-and>
-            <iterate list="checkCountOrderList" entry="checkCountOrder">
-                <if-not-empty field="checkCountOrder.countOrder">
-                    <if-compare field="checkCountOrder.countOrder" operator="not-equals" value="0">
-                        <set field="countOrder" value="1"/>
-                    </if-compare>
-                </if-not-empty>
-            </iterate>
-            <if-compare field="countOrder" operator="equals" value="0">
-                <set field="fact.countOrder" value="1" type="BigDecimal"/>
-            </if-compare>
-
-            <store-value value-field="fact"/>
-        </if-compare>
-    </simple-method>
-
-    <simple-method method-name="loadSalesOrderDataDaily" short-description="Load Sales Order Data Daily">
-        <now-date-to-env field="nowDate"/>
-        <set field="yesterday" value="${groovy:
-            import java.text.SimpleDateFormat;
-            def sdf = new SimpleDateFormat(&quot;yyyy-MM-dd 07:00:00.000&quot;);
-            def yesterday = sdf.format(nowDate-1);
-            return yesterday;
-        }" type="Timestamp"/>
-        <set field="today" value="${groovy:
-            import java.text.SimpleDateFormat;
-            def sdf = new SimpleDateFormat(&quot;yyyy-MM-dd 07:00:00.000&quot;);
-            def today = sdf.format(nowDate);
-            return today;
-        }" type="Timestamp"/>
-
-         <set field="inMap.fromDate" from-field="yesterday"/>
-         <set field="inMap.thruDate" from-field="today"/>
-         <call-service service-name="importSalesOrderData" in-map-name="inMap"></call-service>
-    </simple-method>
-
-    <simple-method method-name="importSalesOrderData" short-description="Import Sales Order Data">
-        <set-service-fields service-name="loadDateDimension" map="parameters" to-map="inMap"/>
-        <set field="inMap.fromDate" from-field="parameters.fromDate"/>
-        <set field="inMap.thruDate" from-field="parameters.thruDate"/>
-        <call-service service-name="loadDateDimension" in-map-name="inMap"/>
-        <check-errors/>
-
-        <entity-condition entity-name="OrderStatus" list="orderStatusList">
-            <condition-list combine="and">
-                <condition-expr field-name="statusId" value="ORDER_APPROVED"/>
-                <condition-expr field-name="statusDatetime" operator="greater-equals" from-field="parameters.fromDate"/>
-                <condition-expr field-name="statusDatetime" operator="less" from-field="parameters.thruDate"/>
-            </condition-list>
-        </entity-condition>
-        <iterate list="orderStatusList" 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>
-    </simple-method>
-
-    <simple-method method-name="convertUomCurrency" short-description="Convert Uom Currency from UomConversionDated entity">
-        <if-empty field="parameters.nowDate">
-            <now field="now"/>
-            <set field="parameters.nowDate" from-field="now"/>
-        </if-empty>
-        <entity-condition entity-name="UomConversionDated" list="UomConversionDatedList">
-            <condition-list combine="and">
-                <condition-expr field-name="uomId" operator="equals" from-field="parameters.uomId"/>
-                <condition-expr field-name="uomIdTo" operator="equals" from-field="parameters.uomIdTo"/>
-                <condition-expr field-name="fromDate" operator="less-equals" from-field="parameters.nowDate"/>
-                <condition-expr field-name="thruDate" operator="greater" from-field="parameters.nowDate"/>
-            </condition-list>
-            <order-by field-name="-fromDate"/>
-        </entity-condition>
-        <if-not-empty field="UomConversionDatedList">
-            <first-from-list list="UomConversionDatedList" entry="UomConversion"/>
-            <field-to-result field="UomConversion.conversionFactor" result-name="conversionFactor"/>
-        <else>
-            <entity-condition entity-name="UomConversionDated" list="UomConversionDatedLastestList">
-                <condition-list combine="and">
-                    <condition-expr field-name="uomId" operator="equals" from-field="parameters.uomId"/>
-                    <condition-expr field-name="uomIdTo" operator="equals" from-field="parameters.uomIdTo"/>
-                    <condition-expr field-name="thruDate" operator="equals" from-field="nullField"/>
-                </condition-list>
-            </entity-condition>
-            <if-not-empty field="UomConversionDatedLastestList">
-                <first-from-list list="UomConversionDatedLastestList" entry="UomConversionLastest"/>
-                <field-to-result field="UomConversionLastest.conversionFactor" result-name="conversionFactor"/>
-            </if-not-empty>
-        </else>
-        </if-not-empty>
-    </simple-method>
-
-    <simple-method method-name="loadInventoryFact" short-description="">
-        <entity-one entity-name="InventoryItem" value-field="inventory">
-            <field-map field-name="inventoryItemId" from-field="parameters.inventoryItemId"/>
-        </entity-one>
-        <entity-one entity-name="InventoryItemFact" value-field="fact">
-            <field-map field-name="inventoryItemId" from-field="parameters.inventoryItemId"/>
-        </entity-one>
-        <if-empty field="fact">
-            <make-value value-field="fact" entity-name="InventoryItemFact"/>
-            <set field="fact.inventoryItemId" from-field="inventory.inventoryItemId"/>
-            <!-- conversion of the inventory date -->
-            <if-not-empty field="inventory.createdStamp">
-                <clear-field field="inMap"/>
-                <set field="inMap.dimensionEntityName" value="DateDimension"/>
-                <set field="inMap.naturalKeyFields.dateValue" from-field="inventory.createdStamp" type="Date"/>
-                <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                    <result-to-field result-name="dimensionId" field="fact.inventoryDateDimId"/>
-                </call-service>
-                <if-empty field="fact.inventoryDateDimId">
-                    <set field="fact.inventoryDateDimId" value="_NF_"/>
-                </if-empty>
-                <else>
-                    <set field="fact.inventoryDateDimId" value="_NA_"/>
-                </else>
-            </if-not-empty>
-            <!-- conversion of the product id -->
-            <if-not-empty field="inventory.productId">
-                <clear-field field="inMap"/>
-                <set field="inMap.dimensionEntityName" value="ProductDimension"/>
-                <set field="inMap.naturalKeyFields.productId" from-field="inventory.productId"/>
-                <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                    <result-to-field result-name="dimensionId" field="fact.productDimId"/>
-                </call-service>
-                <if-empty field="fact.productDimId">
-                    <set field="fact.productDimId" value="_NF_"/>
-                </if-empty>
-                <else>
-                    <set field="fact.productDimId" value="_NA_"/>
-                </else>
-            </if-not-empty>
-            <!-- conversion of the order currency -->
-            <if-not-empty field="inventory.currencyUomId">
-                <clear-field field="inMap"/>
-                <set field="inMap.dimensionEntityName" value="CurrencyDimension"/>
-                <set field="inMap.naturalKeyFields.currencyId" from-field="inventory.currencyUomId"/>
-                <call-service service-name="getDimensionIdFromNaturalKey" in-map-name="inMap">
-                    <result-to-field result-name="dimensionId" field="fact.origCurrencyDimId"/>
-                </call-service>
-                <if-empty field="fact.origCurrencyDimId">
-                    <set field="fact.origCurrencyDimId" value="_NF_"/>
-                </if-empty>
-                <else>
-                    <set field="fact.origCurrencyDimId" value="_NA_"/>
-                </else>
-            </if-not-empty>
-            <create-value value-field="fact"/>
-        </if-empty>
-
-        <set field="fact.facilityId" from-field="inventory.facilityId"/>
-        <set field="fact.inventoryItemId" from-field="inventory.inventoryItemId"/>
-        <set field="fact.quantityOnHandTotal" from-field="inventory.quantityOnHandTotal"/>
-        <set field="fact.availableToPromiseTotal" from-field="inventory.availableToPromiseTotal"/>
-        <set field="fact.unitCost" from-field="inventory.unitCost"/>
-
-        <!-- calculate sold out amount -->
-        <calculate field="fact.soldoutAmount">
-            <calcop operator="get" field="inventory.quantityOnHandTotal">
-                <calcop operator="negative" field="inventory.availableToPromiseTotal"/>
-            </calcop>
-        </calculate>
-        <store-value value-field="fact"/>
-    </simple-method>
-
-</simple-methods>
diff --git a/plugins/bi/ofbiz-component.xml b/plugins/bi/ofbiz-component.xml
deleted file mode 100644
index acdf955..0000000
--- a/plugins/bi/ofbiz-component.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?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.
--->
-
-<ofbiz-component name="bi" enabled="true"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-component.xsd">
-    <resource-loader name="main" type="component"/>
-    <classpath type="dir" location="config"/>
-
-
-    <entity-resource type="model" reader-name="main" loader="main" location="entitydef/entitymodel.xml"/>
-    <entity-resource type="group" reader-name="main" loader="main" location="entitydef/entitygroup.xml"/>
-    
-    <!-- seed data -->
-    <entity-resource type="data" reader-name="seed" loader="main" location="data/BiTypeData.xml"/>
-    <entity-resource type="data" reader-name="seed" loader="main" location="data/BiSecurityPermissionSeedData.xml"/>
-    
-    <!-- seed-initial data -->
-    <entity-resource type="data" reader-name="seed-initial" loader="main" location="data/BiSystemPropertyData.xml"/>
-    
-    <!-- demo data -->
-    <entity-resource type="data" reader-name="demo" loader="main" location="data/BiSecurityGroupDemoData.xml"/>
-
-    <service-resource type="eca" loader="main" location="servicedef/secas.xml"/>
-    <service-resource type="model" loader="main" location="servicedef/services.xml"/>
-
-    <webapp name="bi"
-        title="Business Intelligence"
-        menu-name="secondary"
-        server="default-server"
-        location="webapp/bi"
-        base-permission="OFBTOOLS,BI"
-        mount-point="/bi"
-        app-bar-display="true"/>
-</ofbiz-component>
diff --git a/plugins/bi/servicedef/secas.xml b/plugins/bi/servicedef/secas.xml
deleted file mode 100644
index d45f932..0000000
--- a/plugins/bi/servicedef/secas.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?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.
--->
-
-<service-eca xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/service-eca.xsd">
-
-    <!-- dimension entities -->
-    <eca service="createProduct" event="global-commit-post-run">
-        <action service="loadType1ProductInProductDimension" mode="async"/>
-    </eca>
-    <eca service="updateProduct" event="global-commit-post-run">
-        <action service="loadType2ProductInProductDimension" mode="async"/>
-    </eca>
-
-    <!-- fact entities -->
-    <!-- Load data into the SalesInvoiceItemFact olap entity when a sales invoice is set to ready -->
-    <eca service="setInvoiceStatus" event="global-commit-post-run">
-        <condition field-name="statusId" operator="equals" value="INVOICE_READY"/>
-        <condition-field field-name="statusId" operator="not-equals" to-field-name="oldStatusId"/>
-        <action service="loadSalesInvoiceFact" mode="async" run-as-user="system"/>
-    </eca>
-    <!-- Load data into the SalesOrderItemFact olap entity when a sales order is set to ready -->
-    <!-- TODO: there are two eca for the same order status change: one of the two should be removed -->
-    <eca service="setOrderStatus" event="commit">
-        <condition field-name="statusId" operator="equals" value="ITEM_APPROVED"/>
-        <condition-field field-name="statusId" operator="not-equals" to-field-name="oldStatusId"/>
-        <action service="loadSalesOrderFact" mode="async" run-as-user="system"/>
-    </eca>
-    <eca service="changeOrderItemStatus" event="commit">
-        <condition field-name="statusId" operator="equals" value="ITEM_APPROVED"/>
-        <condition-field field-name="statusId" operator="not-equals" to-field-name="oldStatusId"/>
-        <action service="loadSalesOrderFact" mode="sync" run-as-user="system"/>
-    </eca>
-</service-eca>
diff --git a/plugins/bi/servicedef/services.xml b/plugins/bi/servicedef/services.xml
deleted file mode 100644
index a46163b..0000000
--- a/plugins/bi/servicedef/services.xml
+++ /dev/null
@@ -1,164 +0,0 @@
-<?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.
--->
-
-<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
-
-    <service name="storeGenericDimension" engine="java"
-        location="org.apache.ofbiz.bi.util.DimensionServices" invoke="storeGenericDimension" auth="true">
-        <description>Generic service to load data into a dimension entity (olap entity).</description>
-        <attribute name="dimensionValue" type="GenericEntity" mode="IN" optional="false"/>
-        <attribute name="naturalKeyFields" type="List" mode="IN" optional="false"/> <!-- the names of the fields that compose the natural key of the dimension -->
-        <attribute name="updateMode" type="String" mode="IN" optional="false"/> <!-- TYPE1, TYPE2, TYPE3 -->
-    </service>
-    <service name="getDimensionIdFromNaturalKey" engine="java"
-        location="org.apache.ofbiz.bi.util.DimensionServices" invoke="getDimensionIdFromNaturalKey" auth="true">
-        <description>Generic service to get the dimensionId for a natural key.</description>
-        <attribute name="dimensionEntityName" type="String" mode="IN" optional="false"/>
-        <attribute name="naturalKeyFields" type="Map" mode="IN" optional="false"/> <!-- the names/values pairs of the fields that compose the natural key of the dimension -->
-        <attribute name="dimensionId" type="String" mode="OUT" optional="true"/>
-    </service>
-    <service name="quickInitDataWarehouse" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="quickInitDataWarehouse">
-        <description>Quickly initialize the dimensions (Currency, Date, Product) and facts (SalesInvoiceItem): useful to quickly initialize the datawarehouse.</description>
-        <attribute name="fromDate" type="Timestamp" mode="IN" optional="false"/>
-        <attribute name="thruDate" type="Timestamp" mode="IN" optional="false"/>
-    </service>
-
-    <!-- Common Dimensions -->
-    <service name="loadDateDimension" engine="java" transaction-timeout="300"
-        location="org.apache.ofbiz.bi.util.DimensionServices" invoke="loadDateDimension" auth="true">
-        <description>Loads data in the DateDimension entity (olap entity) using the update strategy of 'type 1': overwrite the values of the attributes</description>
-        <attribute name="fromDate" type="Timestamp" mode="IN" optional="false"/>
-        <attribute name="thruDate" type="Timestamp" mode="IN" optional="false"/>
-    </service>
-    <service name="loadCurrencyDimension" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="loadCurrencyDimension">
-        <description>Loads data in the CurrencyDimension entity (olap entity) using the update strategy of 'type 1': overwrite the values of the attributes</description>
-    </service>
-    <!-- Product Dimension -->
-    <service name="prepareProductDimensionData" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="prepareProductDimensionData">
-        <description>Pulls information from the Product* entities (oltp entities) and prepares data for the ProductDimension entity (olap entity)</description>
-        <attribute name="productId" type="String" mode="IN" optional="false"/>
-        <attribute name="productDimension" type="GenericEntity" mode="OUT" optional="false"/>
-    </service>
-    <service name="loadProductInProductDimension" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="loadProductInProductDimension">
-        <description>Pulls information from the Product* entities and stores them in the ProductDimension entity (olap entity)</description>
-        <attribute name="productId" type="String" mode="IN" optional="false"/>
-        <attribute name="updateMode" type="String" mode="IN" optional="false"/> <!-- TYPE1, TYPE2, TYPE3 -->
-    </service>
-    <service name="loadType1ProductInProductDimension" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="loadProductInProductDimension">
-        <description>Same as loadProductInProductDimension; the update strategy is 'type 1': overwrite the values of the attributes</description>
-        <attribute name="productId" type="String" mode="IN" optional="false"/>
-        <attribute name="updateMode" type="String" mode="IN" optional="true" default-value="TYPE1"/>
-    </service>
-    <service name="loadType2ProductInProductDimension" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="loadProductInProductDimension">
-        <description>Same as loadProductInProductDimension; the update strategy is 'type 2': add a dimension row</description>
-        <attribute name="productId" type="String" mode="IN" optional="false"/>
-        <attribute name="updateMode" type="String" mode="IN" optional="true" default-value="TYPE2"/>
-    </service>
-    <service name="loadAllProductsInProductDimension" auth="true" engine="simple"
-        location="component://bi/minilang/DimensionServices.xml" invoke="loadAllProductsInProductDimension">
-        <description>Calls the loadProductInProductDimension service for all the products.</description>
-        <attribute name="updateMode" type="String" mode="IN" optional="true" default-value="TYPE1"/>
-    </service>
-
-    <!-- Accounting Facts -->
-    <service name="loadSalesInvoiceItemFact" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="loadSalesInvoiceItemFact">
-        <description>
-            Pulls information from the Invoice* entities and stores them in the SalesInvoiceItem entity (olap entity).
-            One of invoiceId/invoiceItemSeqId or invoice/invoiceItem must be passed or an error is returned.
-        </description>
-        <attribute name="invoiceId" type="String" mode="IN" optional="true"/>
-        <attribute name="invoiceItemSeqId" type="String" mode="IN" optional="true"/>
-        <attribute name="invoice" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
-        <attribute name="invoiceItem" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
-    </service>
-    <service name="loadSalesInvoiceFact" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="loadSalesInvoiceFact">
-        <description>Calls the loadSalesInvoiceItemFact service for all the invoice items.</description>
-        <attribute name="invoiceId" type="String" mode="IN" optional="false"/>
-    </service>
-
-    <!-- Order Facts -->
-    <service name="loadSalesOrderItemFact" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="loadSalesOrderItemFact">
-        <description>
-            Pulls information from the OrderItem* entities and stores them in the SalesOrderItem entity (olap entity).
-            One of orderId/orderItemSeqId or order/orderItem must be passed or an error is returned.
-        </description>
-        <attribute name="orderId" type="String" mode="IN" optional="true"/>
-        <attribute name="orderItemSeqId" type="String" mode="IN" optional="true"/>
-        <attribute name="orderHeader" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
-        <attribute name="orderItem" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
-        <attribute name="orderAdjustment " type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
-    </service>
-    <service name="loadSalesOrderFact" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="loadSalesOrderFact">
-        <description>Calls the loadSalesOrderItemFact service for all the order items.</description>
-        <attribute name="orderId" type="String" mode="IN" optional="false"/>
-    </service>
-    <service name="loadSalesOrderDataDaily" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="loadSalesOrderDataDaily" transaction-timeout="10000000">
-        <description>Load Sales Order Data Daily.</description>
-    </service>
-    <service name="importSalesOrderData" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="importSalesOrderData" transaction-timeout="10000000">
-        <description>Import Sales Order Data.</description>
-        <attribute name="fromDate" type="Timestamp" mode="IN" optional="false"/>
-        <attribute name="thruDate" type="Timestamp" mode="IN" optional="false"/>
-    </service>
-    <service name="convertUomCurrency" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="convertUomCurrency">
-        <description>Import Sales Order Data.</description>
-        <attribute name="uomId" type="String" mode="IN"/>
-        <attribute name="uomIdTo" type="String" mode="IN"/>
-        <attribute name="nowDate" type="Timestamp" mode="IN" optional="true"/>
-        <attribute name="conversionFactor" type="Double" mode="OUT" optional="true"/>
-    </service>
-
-    <!-- Inventory Facts -->
-    <service name="loadInventoryFact" auth="true" engine="simple"
-        location="component://bi/minilang/FactServices.xml" invoke="loadInventoryFact">
-        <attribute name="inventoryItemId" type="String" mode="IN" optional="true"/>
-    </service>
-
-    <!-- SalesInvoiceItem Facts -->
-    <service name="createSalesInvoiceItemFact" engine="entity-auto" invoke="create" default-entity-name="SalesInvoiceItemFact" auth="true">
-        <description>Create a SalesInvoiceItemFact record</description>
-        <auto-attributes include="pk" mode="IN"/>
-        <auto-attributes include="nonpk" mode="IN" optional="true"/>
-    </service>
-    <service name="updateSalesInvoiceItemFact" engine="entity-auto" invoke="update" default-entity-name="SalesInvoiceItemFact" auth="true">
-        <description>Update a SalesInvoiceItemFact record</description>
-        <auto-attributes include="pk" mode="IN"/>
-        <auto-attributes include="nonpk" mode="IN" optional="true"/>
-    </service>
-    <service name="deleteSalesInvoiceItemFact" engine="entity-auto" invoke="delete" default-entity-name="SalesInvoiceItemFact" auth="true">
-        <description>Delete a SalesInvoiceItemFact record</description>
-        <auto-attributes include="pk" mode="IN"/>
-    </service>
-
-</services>
diff --git a/plugins/bi/src/main/java/org/apache/ofbiz/bi/util/DimensionServices.java b/plugins/bi/src/main/java/org/apache/ofbiz/bi/util/DimensionServices.java
deleted file mode 100644
index e0e3435..0000000
--- a/plugins/bi/src/main/java/org/apache/ofbiz/bi/util/DimensionServices.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
-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.
-*/
-package org.apache.ofbiz.bi.util;
-
-import java.lang.Object;
-import java.lang.String;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import org.apache.ofbiz.base.util.UtilGenerics;
-import org.apache.ofbiz.base.util.UtilMisc;
-import org.apache.ofbiz.base.util.UtilProperties;
-import org.apache.ofbiz.base.util.UtilValidate;
-import org.apache.ofbiz.entity.Delegator;
-import org.apache.ofbiz.entity.GenericEntityException;
-import org.apache.ofbiz.entity.GenericValue;
-import org.apache.ofbiz.entity.util.EntityUtil;
-import org.apache.ofbiz.service.DispatchContext;
-import org.apache.ofbiz.service.ServiceUtil;
-
-public class DimensionServices {
-
-    public static final String module = DimensionServices.class.getName();
-    public static final String resource = "BiUiLabels";
-
-    public static Map<String, Object> getDimensionIdFromNaturalKey(DispatchContext ctx, Map<String, ? extends Object> context) {
-        Map<String, Object> resultMap = ServiceUtil.returnSuccess();
-        Delegator delegator = ctx.getDelegator();
-        String dimensionEntityName = (String) context.get("dimensionEntityName");
-        Map<String, ? extends Object> naturalKeyFields = UtilGenerics.cast(context.get("naturalKeyFields"));
-        GenericValue lastDimensionValue = null;
-        try {
-            // TODO: improve performance
-            lastDimensionValue = EntityUtil.getFirst(delegator.findByAnd(dimensionEntityName, UtilMisc.toMap(naturalKeyFields), UtilMisc.toList("-createdTxStamp"), false));
-        } catch (GenericEntityException gee) {
-            return ServiceUtil.returnError(gee.getMessage());
-        }
-        if (UtilValidate.isNotEmpty(lastDimensionValue)) {
-            resultMap.put("dimensionId", lastDimensionValue.getString("dimensionId"));
-        }
-        return resultMap;
-    }
-
-    public static Map<String, Object> storeGenericDimension(DispatchContext ctx, Map<String, ? extends Object> context) {
-        Delegator delegator = ctx.getDelegator();
-        GenericValue dimensionValue = (GenericValue) context.get("dimensionValue");
-        List<String> naturalKeyFields = UtilGenerics.checkList(context.get("naturalKeyFields"), String.class);
-        String updateMode = (String) context.get("updateMode");
-        Locale locale = (Locale) context.get("locale");
-
-        try {
-            Map<String, Object> andCondition = new HashMap<String, Object>();
-            for (String naturalKeyField: naturalKeyFields) {
-                andCondition.put(naturalKeyField, dimensionValue.get(naturalKeyField));
-            }
-            if (andCondition.isEmpty()) {
-                return ServiceUtil.returnError(UtilProperties.getMessage(resource, "BusinessIntelligenceNaturalKeyWithourDimension", UtilMisc.toMap("naturalKeyFields", naturalKeyFields, "dimensionValue", dimensionValue), locale));
-            }
-            List<GenericValue> existingDimensionValues = null;
-            try {
-                existingDimensionValues = delegator.findByAnd(dimensionValue.getEntityName(), UtilMisc.toMap(andCondition), null, false);
-            } catch (GenericEntityException gee) {
-                return ServiceUtil.returnError(gee.getMessage());
-            }
-            if (UtilValidate.isEmpty(existingDimensionValues)) {
-                dimensionValue.set("dimensionId", delegator.getNextSeqId(dimensionValue.getEntityName()));
-                dimensionValue.create();
-            } else {
-                if ("TYPE1".equals(updateMode)) {
-                    // update all the rows with the new values
-                    for (GenericValue existingDimensionValue: existingDimensionValues) {
-                        GenericValue updatedValue = delegator.makeValue(dimensionValue.getEntityName(), dimensionValue);
-                        updatedValue.set("dimensionId", existingDimensionValue.getString("dimensionId"));
-                        updatedValue.store();
-                    }
-                } else if ("TYPE2".equals(updateMode)) {
-                    // TODO: create a new record and update somewhere the from/thru dates of the old row
-                    dimensionValue.set("dimensionId", delegator.getNextSeqId(dimensionValue.getEntityName()));
-                    dimensionValue.create();
-                } else {
-                    return ServiceUtil.returnError(UtilProperties.getMessage(resource, "BusinessIntelligenceUpdateModeStillNotSupported", UtilMisc.toMap("updateMode", updateMode), locale));
-                }
-            }
-        } catch (GenericEntityException gee) {
-            return ServiceUtil.returnError(gee.getMessage());
-        }
-        return ServiceUtil.returnSuccess();
-    }
-
-    /*
-     * OLAP Dimension
-     * Service used to initialize the Date dimension (DateDimension).
-     * The DateDimension entity is a nearly constant dimension ("Slowly Changing Dimension" or SCD):
-     * the default strategy to handle data change is "Type 1" (i.e. overwrite the values).
-     */
-    public static Map<String, Object> loadDateDimension(DispatchContext ctx, Map<String, ? extends Object> context) {
-        Delegator delegator = ctx.getDelegator();
-
-        Date fromDate = (Date) context.get("fromDate");
-        Date thruDate = (Date) context.get("thruDate");
-
-        SimpleDateFormat monthNameFormat = new SimpleDateFormat("MMMM");
-        SimpleDateFormat dayNameFormat = new SimpleDateFormat("EEEE");
-        SimpleDateFormat dayDescriptionFormat = new SimpleDateFormat("MMMM d, yyyy");
-        SimpleDateFormat yearMonthDayFormat = new SimpleDateFormat("yyyy-MM-dd");
-        SimpleDateFormat yearMonthFormat = new SimpleDateFormat("yyyy-MM");
-
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(fromDate);
-        calendar.set(Calendar.HOUR, 0);
-        calendar.set(Calendar.MINUTE, 0);
-        calendar.set(Calendar.SECOND, 0);
-        calendar.set(Calendar.MILLISECOND, 0);
-        java.sql.Date currentDate = new java.sql.Date(calendar.getTimeInMillis());
-        while (currentDate.compareTo(thruDate) <= 0) {
-            GenericValue dateValue = null;
-            try {
-                dateValue = EntityUtil.getFirst(delegator.findByAnd("DateDimension", UtilMisc.toMap("dateValue", currentDate), null, false));
-            } catch (GenericEntityException gee) {
-                return ServiceUtil.returnError(gee.getMessage());
-            }
-            boolean newValue = (dateValue == null);
-            if (newValue) {
-                dateValue = delegator.makeValue("DateDimension");
-                dateValue.set("dimensionId", delegator.getNextSeqId("DateDimension"));
-                dateValue.set("dateValue", new java.sql.Date(currentDate.getTime()));
-            }
-            dateValue.set("description", dayDescriptionFormat.format(currentDate));
-            int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
-            dateValue.set("dayName", dayNameFormat.format(currentDate));
-            dateValue.set("dayOfMonth", new Long(calendar.get(Calendar.DAY_OF_MONTH)));
-            dateValue.set("dayOfYear", new Long(calendar.get(Calendar.DAY_OF_YEAR)));
-            dateValue.set("monthName", monthNameFormat.format(currentDate));
-
-            dateValue.set("monthOfYear", new Long(calendar.get(Calendar.MONTH) + 1));
-            dateValue.set("yearName", new Long(calendar.get(Calendar.YEAR)));
-            dateValue.set("weekOfMonth", new Long(calendar.get(Calendar.WEEK_OF_MONTH)));
-            dateValue.set("weekOfYear", new Long(calendar.get(Calendar.WEEK_OF_YEAR)));
-            dateValue.set("weekdayType", (dayOfWeek == 1 || dayOfWeek == 7? "Weekend": "Weekday"));
-            dateValue.set("yearMonthDay", yearMonthDayFormat.format(currentDate));
-            dateValue.set("yearAndMonth", yearMonthFormat.format(currentDate));
-
-            try {
-                if (newValue) {
-                    dateValue.create();
-                } else {
-                    dateValue.store();
-                }
-            } catch (GenericEntityException gee) {
-                return ServiceUtil.returnError(gee.getMessage());
-            }
-            calendar.add(Calendar.DATE, 1);
-            currentDate = new java.sql.Date(calendar.getTimeInMillis());
-        }
-        return ServiceUtil.returnSuccess();
-    }
-
-}
diff --git a/plugins/bi/template/Main.ftl b/plugins/bi/template/Main.ftl
deleted file mode 100644
index c8858e0..0000000
--- a/plugins/bi/template/Main.ftl
+++ /dev/null
@@ -1,56 +0,0 @@
-<#--
-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.
--->
-
-<h1>${uiLabelMap.BusinessIntelligenceIntegratedFramework}</h1>
-<p>
-  ${uiLabelMap.BusinessIntelligenceNote1}
-  ${uiLabelMap.BusinessIntelligenceNote2}
-  ${uiLabelMap.BusinessIntelligenceNote3}
-  ${uiLabelMap.BusinessIntelligenceNote4}
-  ${uiLabelMap.BusinessIntelligenceNote5}
-  ${uiLabelMap.BusinessIntelligenceNote6}
-  ${uiLabelMap.BusinessIntelligenceNote7}
-  ${uiLabelMap.BusinessIntelligenceNote8}
-  ${uiLabelMap.BusinessIntelligenceNote9}
-  ${uiLabelMap.BusinessIntelligenceNote10}
-  ${uiLabelMap.BusinessIntelligenceNote11}
-  ${uiLabelMap.BusinessIntelligenceNote12}
-</p>
-<h2>${uiLabelMap.BusinessIntelligenceCurrentStatus}</h2>
-<p>
-  ${uiLabelMap.BusinessIntelligenceNote13}
-  ${uiLabelMap.BusinessIntelligenceNote14}
-  ${uiLabelMap.BusinessIntelligenceNote15}
-  ${uiLabelMap.BusinessIntelligenceNote16}
-  ${uiLabelMap.BusinessIntelligenceNote17}
-  ${uiLabelMap.BusinessIntelligenceNote18}
-</p>
-<h2>${uiLabelMap.BusinessIntelligenceQuickStartGuide}</h2>
-<p>
-  ${uiLabelMap.BusinessIntelligenceNote19}
-  ${uiLabelMap.BusinessIntelligenceNote20}
-  ${uiLabelMap.BusinessIntelligenceNote21}
-  ${uiLabelMap.BusinessIntelligenceNote22}
-  ${uiLabelMap.BusinessIntelligenceNote23}
-  ${uiLabelMap.BusinessIntelligenceNote24}
-  ${uiLabelMap.BusinessIntelligenceNote25}
-  ${uiLabelMap.BusinessIntelligenceNote26}
-  ${uiLabelMap.BusinessIntelligenceNote27}
-  ${uiLabelMap.BusinessIntelligenceNote28}
-</p>
diff --git a/plugins/bi/template/reportbuilder/RenderStarSchemaReport.ftl b/plugins/bi/template/reportbuilder/RenderStarSchemaReport.ftl
deleted file mode 100644
index b78b5fd..0000000
--- a/plugins/bi/template/reportbuilder/RenderStarSchemaReport.ftl
+++ /dev/null
@@ -1,42 +0,0 @@
-<#--
-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.
--->
-
-<table cellspacing="0" class="basic-table hover-bar">
-  <tr class="header-row">
-    <#assign firstRecord = records[0]!/>
-    <#list columnNames as columnName>
-      <td<#if firstRecord?? && firstRecord[columnName]?default("")?is_number> class="align-text"</#if>>
-        ${columnName}
-      </td>
-    </#list>
-  </tr>
-  <#assign alt_row = false>
-  <#list records as record>
-    <tr valign="middle"<#if alt_row> class="alternate-row"</#if>>
-      <#list columnNames as columnName>
-        <#assign columnValue = record[columnName]?default("")>
-        <td<#if columnValue?is_number> class="align-text"</#if>>
-          ${columnValue}
-        </td>
-      </#list>
-    </tr>
-    <#-- toggle the row color -->
-    <#assign alt_row = !alt_row>
-  </#list>
-</table>
\ No newline at end of file
diff --git a/plugins/bi/template/reportbuilder/SelectStarSchemaFields.ftl b/plugins/bi/template/reportbuilder/SelectStarSchemaFields.ftl
deleted file mode 100644
index c1914ba..0000000
--- a/plugins/bi/template/reportbuilder/SelectStarSchemaFields.ftl
+++ /dev/null
@@ -1,47 +0,0 @@
-<#--
-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.
--->
-
-<form action="<@ofbizUrl>ReportBuilderRenderStarSchemaReport</@ofbizUrl>">
-  <input type="hidden" name="starSchemaName" value="${starSchemaName}"/>
-  <table cellspacing="0" class="basic-table hover-bar">
-    <tr class="header-row">
-      <td>${uiLabelMap.CommonSelect}</td>
-      <td>${uiLabelMap.BusinessIntelligenceFieldName}</td>
-      <td>${uiLabelMap.BusinessIntelligenceFieldDescription}</td>
-    </tr>
-    <#assign alt_row = false>
-    <#list starSchemaFields as starSchemaField>
-      <tr valign="middle"<#if alt_row> class="alternate-row"</#if>>
-        <td>
-          <input name="selectedFieldName_o_${starSchemaField_index}" value="${starSchemaField.name}" type="hidden"/>
-          <input name="_rowSubmit_o_${starSchemaField_index}" value="Y" type="checkbox"/>
-        </td>
-        <td>${starSchemaField.name}</td>
-        <td>${starSchemaField.description?default("")}</td>
-      </tr>
-      <#-- toggle the row color -->
-      <#assign alt_row = !alt_row>
-    </#list>
-    <tr>
-      <td colspan="3">
-        <input name="submitButton" type="submit" value="${uiLabelMap.BusinessIntelligenceRenderTheReport}"/>
-      </td>
-    </tr>
-  </table>
-</form>
\ No newline at end of file
diff --git a/plugins/bi/webapp/bi/WEB-INF/controller.xml b/plugins/bi/webapp/bi/WEB-INF/controller.xml
deleted file mode 100644
index 4942f9b..0000000
--- a/plugins/bi/webapp/bi/WEB-INF/controller.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?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.
--->
-
-<site-conf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xmlns="http://ofbiz.apache.org/Site-Conf" xsi:schemaLocation="http://ofbiz.apache.org/Site-Conf http://ofbiz.apache.org/dtds/site-conf.xsd">
-
-    <include location="component://common/webcommon/WEB-INF/common-controller.xml"/>
-    <description>Business Intelligence Component Site Configuration File</description>
-
-    <!-- Request Mappings -->
-    <request-map uri="view">
-        <security https="false" auth="false"/>
-        <response name="success" type="view" value="main"/>
-    </request-map>
-
-    <request-map uri="main">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="main"/>
-    </request-map>
-    <request-map uri="quickInitDataWarehouse">
-        <security https="true" auth="true"/>
-        <event type="service" invoke="quickInitDataWarehouse"/>
-        <response name="success" type="view" value="main"/>
-    </request-map>
-
-    <request-map uri="ReportBuilderSelectStarSchema">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="ReportBuilderSelectStarSchema"/>
-    </request-map>
-    <request-map uri="ReportBuilderSelectStarSchemaFields">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="ReportBuilderSelectStarSchemaFields"/>
-    </request-map>
-    <request-map uri="ReportBuilderRenderStarSchemaReport">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="ReportBuilderRenderStarSchemaReport"/>
-    </request-map>
-
-    <!-- end of request mappings -->
-
-    <!-- View Mappings -->
-    <view-map name="main" type="screen" page="component://bi/widget/BiScreens.xml#main"/>
-
-    <view-map name="ReportBuilderSelectStarSchema" type="screen" page="component://bi/widget/BiScreens.xml#ReportBuilderSelectStarSchema"/>
-    <view-map name="ReportBuilderSelectStarSchemaFields" type="screen" page="component://bi/widget/BiScreens.xml#ReportBuilderSelectStarSchemaFields"/>
-    <view-map name="ReportBuilderRenderStarSchemaReport" type="screen" page="component://bi/widget/BiScreens.xml#ReportBuilderRenderStarSchemaReport"/>
-
-    <!-- end of view mappings -->
-</site-conf>
diff --git a/plugins/bi/webapp/bi/WEB-INF/web.xml b/plugins/bi/webapp/bi/WEB-INF/web.xml
deleted file mode 100644
index cc30704..0000000
--- a/plugins/bi/webapp/bi/WEB-INF/web.xml
+++ /dev/null
@@ -1,100 +0,0 @@
-<?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.
--->
-
-<web-app version="3.0">
-
-    <display-name>Apache OFBiz - Business Intelligence</display-name>
-    <description>Business Intelligence component of the Apache OFBiz Project</description>
-
-    <context-param>
-        <description>The Name of the Entity Delegator to use, defined in entityengine.xml</description>
-        <param-name>entityDelegatorName</param-name>
-        <param-value>default</param-value>
-    </context-param>
-    <context-param>
-        <description>A unique name used to identify/recognize the local dispatcher for the Service Engine</description>
-        <param-name>localDispatcherName</param-name>
-        <param-value>bi</param-value>
-    </context-param>
-    <context-param>
-        <description>The location of the main-decorator screen to use for this webapp; referred to as a context variable in screen def XML files.</description>
-        <param-name>mainDecoratorLocation</param-name>
-        <param-value>component://bi/widget/BiScreens.xml</param-value>
-    </context-param>
-
-    <filter>
-        <display-name>ControlFilter</display-name>
-        <filter-name>ControlFilter</filter-name>
-        <filter-class>org.apache.ofbiz.webapp.control.ControlFilter</filter-class>
-        <init-param>
-            <param-name>allowedPaths</param-name>
-            <param-value>/error:/control:/select:/index.html:/index.jsp:/default.html:/default.jsp:/images</param-value>
-        </init-param>
-        <init-param>
-            <param-name>redirectPath</param-name>
-            <param-value>/control/main</param-value>
-        </init-param>
-    </filter>
-    <filter>
-        <display-name>ContextFilter</display-name>
-        <filter-name>ContextFilter</filter-name>
-        <filter-class>org.apache.ofbiz.webapp.control.ContextFilter</filter-class>
-    </filter>
-    <filter-mapping>
-        <filter-name>ControlFilter</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-    <filter-mapping>
-        <filter-name>ContextFilter</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-
-    <listener><listener-class>org.apache.ofbiz.webapp.control.ControlEventListener</listener-class></listener>
-    <listener><listener-class>org.apache.ofbiz.webapp.control.LoginEventListener</listener-class></listener>
-    <!-- NOTE: not all app servers support mounting implementations of the HttpSessionActivationListener interface -->
-    <!-- <listener><listener-class>org.apache.ofbiz.webapp.control.ControlActivationEventListener</listener-class></listener> -->
-
-    <servlet>
-        <description>Main Control Servlet</description>
-        <display-name>ControlServlet</display-name>
-        <servlet-name>ControlServlet</servlet-name>
-        <servlet-class>org.apache.ofbiz.webapp.control.ControlServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-    <servlet-mapping>
-        <servlet-name>ControlServlet</servlet-name>
-        <url-pattern>/control/*</url-pattern>
-    </servlet-mapping>
-
-    <session-config>
-        <session-timeout>60</session-timeout> <!-- in minutes -->
-        <cookie-config>
-          <http-only>true</http-only>
-          <secure>true</secure>
-        </cookie-config>
-        <tracking-mode>COOKIE</tracking-mode>
-    </session-config>
-
-    <welcome-file-list>
-        <welcome-file>index.jsp</welcome-file>
-        <welcome-file>index.html</welcome-file>
-        <welcome-file>index.htm</welcome-file>
-    </welcome-file-list>
-</web-app>
diff --git a/plugins/bi/webapp/bi/index.jsp b/plugins/bi/webapp/bi/index.jsp
deleted file mode 100644
index ee2b80a..0000000
--- a/plugins/bi/webapp/bi/index.jsp
+++ /dev/null
@@ -1,19 +0,0 @@
-<%--
-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.
---%>
-<%response.sendRedirect("control/main");%>
\ No newline at end of file
diff --git a/plugins/bi/widget/BiForms.xml b/plugins/bi/widget/BiForms.xml
deleted file mode 100644
index f2475e2..0000000
--- a/plugins/bi/widget/BiForms.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?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.
--->
-
-<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
-
-    <form name="SelectStarSchema" title="" type="single" target="ReportBuilderSelectStarSchemaFields"
-        header-row-style="header-row" default-table-style="basic-table">
-        <actions>
-            <script location="component://bi/groovyScripts/GetStarSchemas.groovy"/>
-        </actions>
-        <field name="starSchemaName" title="${uiLabelMap.BusinessIntelligenceReportBuilderSelectTheStarSchemaReport}">
-            <drop-down allow-empty="false">
-                <list-options list-name="starSchemas" key-name="name" description="${title}"/>
-            </drop-down>
-        </field>
-        <field name="submitButton" title="${uiLabelMap.CommonSubmit}">
-            <submit button-type="button"/>
-        </field>
-    </form>
-</forms>
diff --git a/plugins/bi/widget/BiMenus.xml b/plugins/bi/widget/BiMenus.xml
deleted file mode 100644
index d3e2a65..0000000
--- a/plugins/bi/widget/BiMenus.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?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.
--->
-<menus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ofbiz.apache.org/Widget-Menu" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Menu http://ofbiz.apache.org/dtds/widget-menu.xsd">
-    <menu name="BiAppBar" title="${uiLabelMap.BusinessIntelligenceApplication}" extends="CommonAppBarMenu" extends-resource="component://common/widget/CommonMenus.xml">
-        <menu-item name="reportbuilder" title="${uiLabelMap.BusinessIntelligenceReportBuilder}"><link target="ReportBuilderSelectStarSchema"/></menu-item>
-    </menu>
-</menus>
diff --git a/plugins/bi/widget/BiScreens.xml b/plugins/bi/widget/BiScreens.xml
deleted file mode 100644
index 6a0c889..0000000
--- a/plugins/bi/widget/BiScreens.xml
+++ /dev/null
@@ -1,137 +0,0 @@
-<?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="main-decorator">
-        <section>
-            <actions>
-                <!-- base/top/specific map first, then more common map added for shared labels -->
-                <property-map resource="BiUiLabels" map-name="uiLabelMap" global="true"/>
-                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
-
-                <set field="layoutSettings.companyName" from-field="uiLabelMap.BusinessIntelligenceCompanyName" global="true"/>
-                <set field="layoutSettings.companySubtitle" from-field="uiLabelMap.BusinessIntelligenceCompanySubtitle" global="true"/>
-                <set field="activeApp" value="bi" global="true"/>
-                <set field="applicationMenuName" value="BiAppBar" global="true"/>
-                <set field="applicationMenuLocation" value="component://bi/widget/BiMenus.xml" global="true"/>
-                <set field="applicationTitle" value="${uiLabelMap.BusinessIntelligenceApplication}" global="true"/>
-            </actions>
-            <widgets>
-                <include-screen name="GlobalDecorator" location="component://common/widget/CommonScreens.xml"/>
-            </widgets>
-        </section>
-    </screen>
-    <screen name="ReportBuilderSelectStarSchema">
-        <section>
-            <actions>
-                <set field="titleProperty" value="BusinessIntelligenceReportBuilderSelectStarSchema"/>
-                <set field="headerItem" value="reportbuilder"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <screenlet title="${uiLabelMap.BusinessIntelligenceReportBuilderSelectStarSchema}">
-                            <include-form name="SelectStarSchema" location="component://bi/widget/BiForms.xml"/>
-                        </screenlet>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-    <screen name="ReportBuilderSelectStarSchemaFields">
-        <section>
-            <actions>
-                <set field="titleProperty" value="BusinessIntelligenceReportBuilderSelectStarSchemaFields"/>
-                <set field="headerItem" value="reportbuilder"/>
-                <script location="component://bi/groovyScripts/GetStarSchemaFields.groovy"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <screenlet title="${uiLabelMap.BusinessIntelligenceReportBuilderSelectStarSchemaFields}">
-                            <platform-specific>
-                                <html><html-template location="component://bi/template/reportbuilder/SelectStarSchemaFields.ftl"/></html>
-                            </platform-specific>
-                        </screenlet>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-    <screen name="ReportBuilderRenderStarSchemaReport">
-        <section>
-            <actions>
-                <set field="titleProperty" value="BusinessIntelligenceReportBuilderRenderStarSchemaReport"/>
-                <set field="headerItem" value="reportbuilder"/>
-                <script location="component://bi/groovyScripts/RunStarSchemaQuery.groovy"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <screenlet title="${uiLabelMap.BusinessIntelligenceReportBuilderRenderStarSchemaReport}">
-                            <platform-specific>
-                                <html><html-template location="component://bi/template/reportbuilder/RenderStarSchemaReport.ftl"/></html>
-                            </platform-specific>
-                        </screenlet>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-
-    <screen name="main">
-        <section>
-            <actions>
-                <set field="titleProperty" value="BusinessIntelligenceMainPage"/>
-                <set field="headerItem" value="main"/>
-                <property-to-field resource="bi" property="fromDate" field="fromDateProp" no-locale="true"/>
-                <property-to-field resource="bi" property="thruDate" field="thruDateProp" no-locale="true"/>
-                <set field="fromDate" from-field="fromDateProp" type="Timestamp"/>
-                <set field="thruDate" from-field="thruDateProp" type="Timestamp"/>
-            </actions>
-            <widgets>
-                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
-                    <decorator-section name="body">
-                        <screenlet>
-                            <container>
-                                <platform-specific>
-                                    <html><html-template location="component://bi/template/Main.ftl"/></html>
-                                </platform-specific>
-                            </container>
-                            <container>
-                                <link target="quickInitDataWarehouse" text="${uiLabelMap.BusinessIntelligenceQuickInitDataWarehouse}" style="buttontext">
-                                    <parameter param-name="fromDate"/>
-                                    <parameter param-name="thruDate"/>
-                                </link>
-                                <label style="note"> (${uiLabelMap.CommonFromDate} ${fromDate} ${uiLabelMap.CommonThruDate} ${thruDate})</label>
-                                <label style="note">
-                                    ${uiLabelMap.BusinessIntelligenceNote29}
-                                    ${uiLabelMap.BusinessIntelligenceNote30}
-                                    ${uiLabelMap.BusinessIntelligenceNote31}
-                                </label>
-                            </container>
-                        </screenlet>
-                    </decorator-section>
-                </decorator-screen>
-            </widgets>
-        </section>
-    </screen>
-</screens>
diff --git a/plugins/birt/README.md b/plugins/birt/README.md
deleted file mode 100644
index 1db0954..0000000
--- a/plugins/birt/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-<img src="http://ofbiz.apache.org/images/logo.png" alt="Apache OFBiz" />&nbsp;<img src="http://www.eclipse.org/birt/img/logo/Birt-logo.png" alt="BIRT" />
-# Birt component
-## more informationFor more information about this component visit the page in the OFBiz WIKI, which can be found at https://cwiki.apache.org/confluence/display/OFBIZ/Using+BIRT+with+OFBizMore information about the birt product can be found at: http://www.eclipse.org/birt/
-## IssuesJIRA issues related to this component can be found at https://issues.apache.org/jira/browse/OFBIZ/component/12321022
-## commitsCommitted revisions can be viewed at http://svn.apache.org/viewvc/ofbiz/trunk/plugins/bith/
\ No newline at end of file
diff --git a/plugins/birt/build.gradle b/plugins/birt/build.gradle
deleted file mode 100644
index 19c853b..0000000
--- a/plugins/birt/build.gradle
+++ /dev/null
@@ -1,6 +0,0 @@
-dependencies {
-    pluginLibsCompile('org.eclipse.birt.runtime:viewservlets:4.5.0') {
-        exclude group: 'org.eclipse.birt.runtime.3_7_1', module: 'derby'
-        exclude group: 'org.eclipse.birt.runtime.3_7_1', module: 'org.apache.batik.pdf'
-    }
-}
\ No newline at end of file
diff --git a/plugins/birt/config/BirtErrorUiLabels.xml b/plugins/birt/config/BirtErrorUiLabels.xml
deleted file mode 100644
index 58498a9..0000000
--- a/plugins/birt/config/BirtErrorUiLabels.xml
+++ /dev/null
@@ -1,88 +0,0 @@
-<?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.
--->
-
-<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-          xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
-    <property key="BirtErrorCannotDetermineDataSource">
-        <value xml:lang="en">Failed to determine data source for report</value>
-        <value xml:lang="fr">La détermination de la source de données à échoué</value>
-    </property>
-    <property key="BirtErrorCannotFindUploadedFile">
-        <value xml:lang="en">Could not find uploaded file</value>
-        <value xml:lang="fr">Impossible de trouver le fichier uploadé</value>
-    </property>
-    <property key="BirtErrorCannotLocateReportFile">
-        <value xml:lang="en">Report file cannot be located. It does not exist in specified directory.</value>
-        <value xml:lang="fr">Le fichier de rapport n'a pas pu être localisé. Il n'existe pas dans le dossier spécifié.</value>
-    </property>
-    <property key="BirtErrorCannotLocateReportFolder">
-        <value xml:lang="en">Report folder cannot be located. Are you sure you configured correctly birt.properties for the report folder path?</value>
-        <value xml:lang="fr">Le dossier de stockage des rapports n'a pu être localisé. Êtes-vous sûr d'avoir bien configuré birt.properties pour le chemin du dossier ?</value>
-    </property>
-    <property key="BirtErrorConversionFieldToBirtFailed">
-        <value xml:lang="en">Failed to convert fieldType to birtType</value>
-        <value xml:lang="fr">Conversion du type de champ en type birt échouée</value>
-    </property>
-    <property key="BirtErrorCreatingDefaultSearchForm">
-        <value xml:lang="en">An error happened while creating the display of current form.</value>
-        <value xml:lang="fr">Erreur à la création de l'affichage du formulaire actuel</value>
-    </property>
-    <property key="BirtErrorCreatingFlexibleReport">
-        <value xml:lang="en">Error while generating report</value>
-        <value xml:lang="fr">Erreur lors de la création du rapport</value>
-    </property>
-    <property key="BirtErrorEntityViewNotExist">
-        <value xml:lang="en">This entity/view name is not valid</value>
-        <value xml:lang="fr">Ce nom de vue/entité n'est pas valide</value>
-    </property>
-    <property key="BirtErrorEntityViewNotFound">
-        <value xml:lang="en">No view entity name found</value>
-        <value xml:lang="fr">Aucun nom de vue/entité n'a été trouvé</value>
-    </property>
-    <property key="BirtErrorNoAttributeFound">
-        <value xml:lang="en">Master workflow attribute not found</value>
-        <value xml:lang="fr">L'attribut de workflow du master n'as pas pu être trouvé</value>
-    </property>
-    <property key="BirtErrorNoFlexibleReportToDelete">
-        <value xml:lang="en">No report to delete</value>
-        <value xml:lang="fr">Aucun rapport à supprimer</value>
-    </property>
-    <property key="BirtErrorNotPublishedReport">
-        <value xml:lang="en">After creating a new Flexible Birt report, before visualising it, you need to add the data set fields with the Birt Report Designer and publish the report</value>
-        <value xml:lang="fr">Après avoir créé un nouveau rapport Birt Flexible, avant de le visualiser, vous devez ajouter les champs du jeu de données (data set fields) avec le Concepteur de rapports Birt (Birt Report Designer) et publier le rapport</value>
-    </property>
-    <property key="BirtErrorRetrievingTurnOver">
-        <value xml:lang="en">Error while retrieving turnover informations</value>
-        <value xml:lang="fr">Erreur lors de l'accès aux informations liées au chiffre d'affaire</value>
-    </property>
-    <property key="BirtErrorRunningPerformFind">
-        <value xml:lang="en">Error running performFind</value>
-        <value xml:lang="fr">Erreur lors de l'exécution du performFind</value>
-    </property>
-    <property key="BirtErrorUnauthorisedCharacter">
-        <value xml:lang="en">Form refused: unauthorised character detected</value>
-        <value xml:lang="fr">Formulaire refusé : caractère non autorisé</value>
-    </property>
-    <property key="BirtErrorUnexpectedNumberReportToDelete">
-        <value xml:lang="en">Unexpected number of reports selected for deletion</value>
-        <value xml:lang="fr">Tentative de suppression d'un nombre inattendu de rapports</value>
-    </property>
-</resource>
\ No newline at end of file
diff --git a/plugins/birt/config/BirtUiLabels.xml b/plugins/birt/config/BirtUiLabels.xml
deleted file mode 100644
index 1ae0314..0000000
--- a/plugins/birt/config/BirtUiLabels.xml
+++ /dev/null
@@ -1,289 +0,0 @@
-<?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.
--->
-<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
-    <property key="BirtApplication">
-        <value xml:lang="en">Eclipse BIRT Application</value>
-        <value xml:lang="fr">Application Eclipse Birt</value>
-        <value xml:lang="ja">Eclipse BIRT 業務</value>
-        <value xml:lang="th">Eclipse BIRT Application</value>
-        <value xml:lang="zh">Eclipse BIRT应用程序</value>
-        <value xml:lang="zh-TW">Eclipse BIRT應用程式</value>
-    </property>
-    <property key="BirtCompanyName">
-        <value xml:lang="en">OFBiz: Eclipse BIRT</value>
-        <value xml:lang="ja">OFBiz: Eclipse BIRT</value>
-        <value xml:lang="th">OFBiz : Eclipse BIRT</value>
-        <value xml:lang="zh">OFBiz: Eclipse BIRT</value>
-        <value xml:lang="zh-TW">OFBiz: Eclipse BIRT</value>
-    </property>
-    <property key="BirtCompanySubtitle">
-        <value xml:lang="en">Part of the Apache OFBiz Family of Open Source Software</value>
-        <value xml:lang="it">Un modulo della famiglia di software open source Apache OFBiz</value>
-        <value xml:lang="ja">Part of the Apache OFBiz Family of Open Source Software</value>
-        <value xml:lang="th">เป็นส่วนหนึ่งของธุรกิจแบบครอบครัวที่เป็นซอฟต์แวร์โอเพนซอส</value>
-        <value xml:lang="zh">开源软件OFBiz的组成部分</value>
-        <value xml:lang="zh-TW">開源軟體OFBiz的組成部分</value>
-    </property>
-    <property key="BirtConfirmDeleteFlexibleReports">
-        <value xml:lang="en">Are you sure you want to delete all reports?</value>
-        <value xml:lang="fr">Voulez-vous vraiment supprimer tous les rapports ?</value>
-    </property>
-    <property key="BirtDeleteFlexibeReports">
-        <value xml:lang="en">Delete all reports</value>
-        <value xml:lang="fr">Supprimer tous les rapports</value>
-    </property>
-    <property key="BirtDownloadRptDesign">
-        <value xml:lang="en">Download rptdesign file</value>
-        <value xml:lang="fr">Télécharger le fichier rptdesign</value>
-    </property>
-    <property key="BirtEditFlexibleReport">
-        <value xml:lang="en">Edit report</value>
-        <value xml:lang="fr">Modification du rapport</value>
-    </property>
-    <property key="BirtErrorFOPRenderingAttachmentForEmail">
-        <value xml:lang="en">Error FOP rendering ${birtContentType} attachment for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorInSendingEmail">
-        <value xml:lang="en">Error in sending email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorIORenderingAttachmentForEmail">
-        <value xml:lang="en">Error I/O rendering ${birtContentType} attachment for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorIORenderingScreenForEmail">
-        <value xml:lang="en">Error I/O rendering screen for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorParserConfigRenderingScreenForEmail">
-        <value xml:lang="en">Error parser config rendering screen for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorParserRenderingAttachmentForEmail">
-        <value xml:lang="en">Error parser rendering ${birtContentType} attachment for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorRenderingAttachmentForEmail">
-        <value xml:lang="en">Error rendering ${birtContentType} attachment for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorRenderingScreenForEmail">
-        <value xml:lang="en">Error rendering screen for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorSAXRenderingAttachmentForEmail">
-        <value xml:lang="en">Error SAX rendering ${birtContentType} attachment for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorSAXRenderingScreenForEmail">
-        <value xml:lang="en">Error SAX rendering screen for email: ${errorString}</value>
-    </property>
-    <property key="BirtErrorSQLRenderingAttachmentForEmail">
-        <value xml:lang="en">Error SQL rendering ${birtContentType} attachment for email: ${errorString}</value>
-    </property>
-    <property key="BirtFacilityReportInventoryHistoryReport">
-        <value xml:lang="en">Inventory History Report</value>
-        <value xml:lang="fr">Historique du stock</value>
-        <value xml:lang="it">Report storia inventario</value>
-        <value xml:lang="ja">在庫履歴レポート</value>
-        <value xml:lang="vi">Báo cáo lịch sử kho (Inventory)</value>
-        <value xml:lang="zh">库存历史记录报告</value>
-        <value xml:lang="zh-TW">庫存歷史記錄報告</value>
-    </property>
-    <property key="BirtFacilityReportLastIntMonth">
-        <value xml:lang="en">Number of last month to sold out</value>
-        <value xml:lang="fr">Ruptures de stock, pour le nombre de derniers mois : </value>
-        <value xml:lang="zh">上月脱销的数量</value>
-    </property>
-    <property key="BirtFindCompareOperator">
-        <value xml:lang="en"> - Operator - </value>
-        <value xml:lang="fr"> - Opérateur - </value>
-    </property>
-    <property key="BirtFindFieldOptionValue0">
-        <value xml:lang="en"> - Lower bound or equal - </value>
-        <value xml:lang="fr"> - Borne basse ou égal - </value>
-    </property>
-    <property key="BirtFindFieldOptionValue1">
-        <value xml:lang="en"> - Higher bound  - </value>
-        <value xml:lang="fr"> - Borne haute - </value>
-    </property>
-    <property key="BirtFilteringParameters">
-        <value xml:lang="en">Filtering parameters</value>
-        <value xml:lang="fr">Paramètres de filtrage</value>
-    </property>
-    <property key="BirtFlexibleReport">
-        <value xml:lang="en">Flexible Report</value>
-        <value xml:lang="fr">Rapport configurable</value>
-    </property>
-    <property key="BirtFlexibleReportGeneration">
-        <value xml:lang="en">Generate report</value>
-        <value xml:lang="fr">Générer un rapport</value>
-    </property>
-    <property key="BirtFlexibleReportInformation">
-        <value xml:lang="en">Report information</value>
-        <value xml:lang="fr">Informations du rapport</value>
-    </property>
-    <property key="BirtFlexibleReportManagement">
-        <value xml:lang="en">Reports management</value>
-        <value xml:lang="fr">Gestion des rapports</value>
-    </property>
-    <property key="BirtFlexibleReportSuccessfullyDeleted">
-        <value xml:lang="en">The report has been successfully deleted</value>
-        <value xml:lang="fr">Le rapport a été supprimé avec succès</value>
-    </property>
-    <property key="BirtFlexibleReportsSuccessfullyDeleted">
-        <value xml:lang="en">All reports have been successfully deleted</value>
-        <value xml:lang="fr">Tous les rapports ont été supprimés avec succès</value>
-    </property>
-    <property key="BirtFlexibleReportSuccessfullyGenerated">
-        <value xml:lang="en">Report has been successfully generated under the name: </value>
-        <value xml:lang="fr">Le rapport a été généré avec succès sous le nom : </value>
-    </property>
-    <property key="BirtFlexibleRptDesignSuccessfullyUploaded">
-        <value xml:lang="en">Report file successfully uploaded</value>
-        <value xml:lang="fr">Le fichier de rapport a été uploadé avec succès</value>
-    </property>
-    <property key="BirtGenericReport">
-        <value xml:lang="en">Use a report</value>
-        <value xml:lang="fr">Utiliser un rapport</value>
-    </property>
-    <property key="BirtManageReports">
-        <value xml:lang="en">Manage reports</value>
-        <value xml:lang="fr">Gérer les rapports</value>
-    </property>
-    <property key="BirtNoKnownFlexibleReport">
-        <value xml:lang="en">You have no report yet</value>
-        <value xml:lang="fr">Vous n'avez aucun rapport pour l'instant</value>
-    </property>
-    <property key="BirtOrderReportAllOrderItemsWithDiscountCode">
-        <value xml:lang="en">All order items with discount code</value>
-        <value xml:lang="fr">Tous les lignes de commandes ayant des codes promotionels</value>
-        <value xml:lang="zh">所有带有折扣优惠码的订单明细</value>
-    </property>
-    <property key="BirtOrderReportCouponSalesReport">
-        <value xml:lang="en">Coupon Sales Report</value>
-        <value xml:lang="fr">Ventes promotionelles</value>
-        <value xml:lang="zh">优惠券销售报告</value>
-    </property>
-    <property key="BirtOrderReportFormatType">
-        <value xml:lang="en">Format Type</value>
-        <value xml:lang="fr">Format : </value>
-        <value xml:lang="zh">格式类型</value>
-    </property>
-    <property key="BirtOrderReportLast3MonthsSalesReport">
-        <value xml:lang="en">Last 3 Months Sales Report</value>
-        <value xml:lang="fr">Ventes des 3 derniers mois</value>
-        <value xml:lang="zh">最近3个月的销售报告</value>
-    </property>
-    <property key="BirtOrderReportProductDemandReport">
-        <value xml:lang="en">Product Demand Report</value>
-        <value xml:lang="fr">Demandes par produit</value>
-        <value xml:lang="zh">产品需求报告</value>
-    </property>
-    <property key="BirtOrderReportReportBy">
-        <value xml:lang="en">Report By</value>
-        <value xml:lang="fr">Par : </value>
-        <value xml:lang="zh">制表人</value>
-    </property>
-    <property key="BirtOrderReportSaleOrderDiscountCode">
-        <value xml:lang="en">Sales Order Discount Code</value>
-        <value xml:lang="fr">Ventes par codes promotionels</value>
-        <value xml:lang="zh">销售订单折扣优惠码</value>
-    </property>
-    <property key="BirtOrderReportSaleOrdersByChannel">
-        <value xml:lang="en">Sale Orders By Channel</value>
-        <value xml:lang="fr">Ventes par canaux</value>
-        <value xml:lang="zh">按渠道的销售订单</value>
-    </property>
-    <property key="BirtOrderReportSalesReport">
-        <value xml:lang="en">Sales Report</value>
-        <value xml:lang="fr">Ventes depuis :</value>
-        <value xml:lang="zh">销售报表</value>
-    </property>
-    <property key="BirtOrderReportsWarning">
-        <value xml:lang="en">Four Birt reports (Last 3 Months Sales, Sales, Sales Order Discount Code, Product Demand) require to feed the BI data base (note that the bi.properties file will need to be updated after September 2023). Then only new approved orders will be taken into account.</value>
-        <value xml:lang="fr">Quatre tableau créés par Birt (Ventes des 3 derniers mois, Ventes, Ventes par codes promotionels, Demandes par produit) nécessitent d'alimenter la base de données d'Inform. décis. (notez aussi la nécessaire màj du fichier bi.properties après septembre 2023). Ensuite seules les commandes nouvellement approuvées seront prises en compte.</value>
-        <value xml:lang="zh">4个Birt报告(最近3个月销售、销售、销售订单折扣优惠码、产品需求)要求提供BI数据库(注意:bi.properites文件需要在2023年9月后进行更新)。只会统计新批准的那些订单。</value>
-    </property>
-    <property key="BirtOverrideFilters">
-        <value xml:lang="en">Override filters</value>
-        <value xml:lang="fr">Surcharge des filtres</value>
-    </property>
-    <property key="BirtPermissionError">
-        <value xml:lang="en">Birt Permission Error</value>
-        <value xml:lang="fr">Erreur d'autorisation sur le composant Birt</value>
-    </property>
-    <property key="BirtSearchFormSuccessfullyOverridde">
-        <value xml:lang="en">The form has been successfully updated</value>
-        <value xml:lang="fr">Le formulaire a bien été mis à jour</value>
-    </property>
-    <property key="BirtSelectFlexibleReport">
-        <value xml:lang="en">Report choice</value>
-        <value xml:lang="fr">Choix du rapport</value>
-    </property>
-    <property key="BirtSelectMasterFlexibleReport">
-        <value xml:lang="en">Choose report topic</value>
-        <value xml:lang="fr">Choix du sujet du rapport</value>
-    </property>
-    <property key="BirtUploadRptDesign">
-        <value xml:lang="en">Upload rptdesign file</value>
-        <value xml:lang="fr">Importer le fichier rptdesign</value>
-    </property>
-    <property key="ExampleBirtChartReport">
-        <value xml:lang="en">HTML chart report</value>
-        <value xml:lang="fr">Graphiques HTML</value>
-        <value xml:lang="ja">HTML 表レポート</value>
-        <value xml:lang="zh">HTML图形报表</value>
-        <value xml:lang="zh-TW">HTML圖形報表</value>
-    </property>
-    <property key="ExampleBirtChartViewHandler">
-        <value xml:lang="en">PDF chart report</value>
-        <value xml:lang="fr">Graphiques PDF</value>
-        <value xml:lang="ja">PDF 表レポート</value>
-        <value xml:lang="zh">PDF图形报表</value>
-        <value xml:lang="zh-TW">PDF圖形報表</value>
-    </property>
-    <property key="ExampleBirtExamples">
-        <value xml:lang="en">BIRT Examples</value>
-        <value xml:lang="fr">Exemples BIRT</value>
-        <value xml:lang="ja">BIRT サンプル</value>
-        <value xml:lang="th">ตัวอย่าง BIRT</value>
-        <value xml:lang="zh">BIRT样例</value>
-        <value xml:lang="zh-TW">BIRT範例</value>
-    </property>
-    <property key="ExampleBirtMail">
-        <value xml:lang="en">Send any format through Mail</value>
-        <value xml:lang="fr">Envoyer différents formats par mail</value>
-        <value xml:lang="ja">任意の書式をメールで送信する</value>
-        <value xml:lang="zh">通过邮件发送任一格式</value>
-        <value xml:lang="zh-TW">通過郵件發送任一格式</value>
-    </property>
-    <property key="ExampleBirtReport">
-        <value xml:lang="en">HTML</value>
-    </property>
-    <property key="ExampleBirtViewHandler">
-        <value xml:lang="en">PDF</value>
-    </property>
-    <property key="FormFieldTitle_birtContentType">
-        <value xml:lang="en">Birt export format</value>
-        <value xml:lang="fr">Format d'export Birt</value>
-    </property>
-    <property key="FormFieldTitle_reportName">
-        <value xml:lang="en">Report name</value>
-        <value xml:lang="fr">Nom du rapport</value>
-    </property>
-    <property key="FormFieldTitle_writeFilters">
-        <value xml:lang="en">Generate filters in design</value>
-        <value xml:lang="fr">Générer les filtres dans le design</value>
-    </property>
-</resource>
diff --git a/plugins/birt/data/BirtHelpData.xml b/plugins/birt/data/BirtHelpData.xml
deleted file mode 100644
index 042ff1d..0000000
--- a/plugins/birt/data/BirtHelpData.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?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.
--->
-
-<entity-engine-xml>
-    <DataResource dataResourceId="HELP_BIRT" localeString="en" dataResourceTypeId="OFBIZ_FILE"
-                  objectInfo="plugins/birt/data/helpdata/HELP_BIRT.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS"
-                  dataResourceName="BIRT" mimeTypeId="text/xml" isPublic="Y" />
-    <Content contentId="HELP_BIRT" contentTypeId="DOCUMENT" contentName="BIRT Overview" templateDataResourceId="HELP_TEMPL"
-             dataResourceId="HELP_BIRT" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/>
-    <ContentAssoc contentId="HELP_ROOT" contentIdTo="HELP_BIRT" contentAssocTypeId="TREE_CHILD" fromDate="2006-01-12 01:01:01" sequenceNum="" mapKey="BIRT_main"/>
-</entity-engine-xml>
diff --git a/plugins/birt/data/BirtMasterData.xml b/plugins/birt/data/BirtMasterData.xml
deleted file mode 100644
index c3187da..0000000
--- a/plugins/birt/data/BirtMasterData.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <DataResource dataResourceId="DR_MASTER_EXAMPLE" dataResourceTypeId="ELECTRONIC_TEXT" dataTemplateTypeId="FORM_COMBINED" />
-    <ElectronicText dataResourceId="DR_MASTER_EXAMPLE">
-        <textData><![CDATA[<!--default domain form-->
-<form name="${masterContentId}_${contentId}" type="single" extends="${masterContentId}" extends-resource="component://birt/widget/birt/BirtMasterForms.xml">
-</form>]]>
-        </textData>
-    </ElectronicText>
-    <Content contentId="CTNT_MASTER_EXAMPLE" contentTypeId="REPORT_MASTER"  dataResourceId="DR_MASTER_EXAMPLE" statusId="CTNT_PUBLISHED" contentName="Example" description="Master Content for Example" />
-    <!-- Data retrieval will be done using perform find on entity Example-->
-    <ContentAttribute contentId="CTNT_MASTER_EXAMPLE" attrName="Entity" attrValue="Example"/>
-
-    <CustomMethod customMethodId="CM_FB_TURNOVER" customMethodTypeId="FLEXIBLE_BIRT" customMethodName="flexibleReportTurnOver" description="service to resolve invoice for turnover report domain"/>
-    <DataResource dataResourceId="DR_MASTER_TURNOVER" dataResourceTypeId="ELECTRONIC_TEXT" dataTemplateTypeId="FORM_COMBINED" />
-    <ElectronicText dataResourceId="DR_MASTER_TURNOVER">
-        <textData><![CDATA[<!--default domain form-->
-<form name="${masterContentId}_${contentId}" type="single" extends="${masterContentId}" extends-resource="component://birt/widget/birt/BirtMasterForms.xml">
-</form>]]>
-        </textData>
-    </ElectronicText>
-    <Content contentId="CTNT_MASTER_TURNOVER" customMethodId="CM_FB_TURNOVER" contentTypeId="REPORT_MASTER" dataResourceId="DR_MASTER_TURNOVER" statusId="CTNT_PUBLISHED" contentName="Turnover" description="Master Content for TURNOVER domain" />
-    <!-- Data retrieval will be done using two service calls. First the contentAttribute Service gives the service that will define which data and label will be retrieved,
-    and which filter and label are supported by the report design (default value will call the second service with "prepareField" suffix).
-    Second, the custom method gives the service to retrieve all data in the report design.
-    Here : flexibleReportTurnOverPrepareFields (customMethodName + "prepareFields") then flexibleReportTurnOver-->
-    <ContentAttribute contentId="CTNT_MASTER_TURNOVER" attrName="Service" attrValue="default"/>
-
-</entity-engine-xml>
\ No newline at end of file
diff --git a/plugins/birt/data/BirtSecurityGroupDemoData.xml b/plugins/birt/data/BirtSecurityGroupDemoData.xml
deleted file mode 100644
index 6268750..0000000
--- a/plugins/birt/data/BirtSecurityGroupDemoData.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <SecurityPermission permissionId="BIRT_ADMIN" description="ALL Birt component operations"/>
-    <SecurityPermission permissionId="BIRT_CREATE" description="Create report from master"/>
-    <SecurityPermission permissionId="BIRT_UPDATE" description="Update operations for reports"/>
-    <SecurityPermission permissionId="BIRT_DELETE" description="Delete reports"/>
-    <SecurityPermission permissionId="BIRT_VIEW" description="View and use all birt reports"/>
-
-    <SecurityGroup groupId="BIRTADMIN" description="Birt - admin"/>
-    <SecurityGroup groupId="BIRTUSER" description="Birt - user"/>
-
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="BIRT_CREATE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="BIRT_UPDATE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="BIRT_DELETE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="BIRT_VIEW"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="OFBTOOLS_VIEW"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_ROLE_VIEW"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_VIEW"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_ROLE_CREATE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_CREATE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_ROLE_UPDATE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_UPDATE"/>
-    <SecurityGroupPermission groupId="BIRTADMIN" permissionId="CONTENTMGR_DELETE"/>
-
-    <SecurityGroupPermission groupId="BIRTUSER" permissionId="BIRT_VIEW"/>
-    <SecurityGroupPermission groupId="BIRTUSER" permissionId="OFBTOOLS_VIEW"/>
-
-    <SecurityGroupPermission groupId="FULLADMIN" permissionId="BIRT_CREATE"/>
-    <SecurityGroupPermission groupId="FULLADMIN" permissionId="BIRT_UPDATE"/>
-    <SecurityGroupPermission groupId="FULLADMIN" permissionId="BIRT_DELETE"/>
-    <SecurityGroupPermission groupId="FULLADMIN" permissionId="BIRT_VIEW"/>
-    <SecurityGroupPermission groupId="FLEXADMIN" permissionId="BIRT_CREATE"/>
-    <SecurityGroupPermission groupId="FLEXADMIN" permissionId="BIRT_UPDATE"/>
-    <SecurityGroupPermission groupId="FLEXADMIN" permissionId="BIRT_DELETE"/>
-    <SecurityGroupPermission groupId="FLEXADMIN" permissionId="BIRT_VIEW"/>
-</entity-engine-xml>
\ No newline at end of file
diff --git a/plugins/birt/data/BirtTypeData.xml b/plugins/birt/data/BirtTypeData.xml
deleted file mode 100644
index f290d1c..0000000
--- a/plugins/birt/data/BirtTypeData.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <ContentType contentTypeId="REPORT_MASTER" description="Report Master" />
-    <ContentType contentTypeId="FLEXIBLE_REPORT" description="Report" />
-    <ContentType contentTypeId="RPTDESIGN" description="Birt report (.rptDesign) file" />
-    <DataTemplateType dataTemplateTypeId="FORM_COMBINED" description="Form widget" extension="xml" />
-
-    <CustomMethodType customMethodTypeId="FLEXIBLE_BIRT" description="Service calling from a birt rptDesign file to populate the data source"/>
-    <CustomMethod customMethodId="CM_FB_PERFORM_FIND" customMethodTypeId="FLEXIBLE_BIRT" customMethodName="callPerformFindFromBirt" description="Generic service to call the standard performFind service from birt rptDesign file"/>
-
-    <EnumerationType enumTypeId="FLEXIBLE_BIRT" description="Mime Type Format available for flexible birt system"/>
-
-    <Enumeration enumId="FB_ODS" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.oasis.opendocument.spreadsheet" sequenceId="01" enumCode="LibreOffice Calc (.ods)"/>
-    <Enumeration enumId="FB_ODT" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.oasis.opendocument.text" sequenceId="02" enumCode="LibreOffice Writer (.odt)"/>
-    <Enumeration enumId="FB_ODP" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.oasis.opendocument.presentation" sequenceId="03" enumCode="LibreOffice Impress (.odp)"/>
-    <Enumeration enumId="FB_PDF" enumTypeId="FLEXIBLE_BIRT" description="application/pdf" sequenceId="04" enumCode="Pdf (.pdf)"/>
-    <Enumeration enumId="FB_PS" enumTypeId="FLEXIBLE_BIRT" description="application/postscript" sequenceId="05" enumCode="Postscript (.ps)"/>
-    <Enumeration enumId="FB_HTML" enumTypeId="FLEXIBLE_BIRT" description="text/html" sequenceId="06" enumCode="Text (.html)"/>
-    <Enumeration enumId="FB_XSLX" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" sequenceId="07" enumCode="Excel (.xlsx)"/>
-    <Enumeration enumId="FB_DOCX" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.openxmlformats-officedocument.wordprocessingml.document" sequenceId="08" enumCode="Word (.docx)"/>
-    <Enumeration enumId="FB_PPTX" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.openxmlformats-officedocument.presentationml.presentation" sequenceId="09" enumCode="Powerpoint (.pptx)"/>
-    <Enumeration enumId="FB_XLS" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.ms-excel" sequenceId="10" enumCode="Excel (.xls)"/>
-    <Enumeration enumId="FB_DOC" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.ms-word" sequenceId="11" enumCode="Word (.doc)"/>
-    <Enumeration enumId="FB_PPT" enumTypeId="FLEXIBLE_BIRT" description="application/vnd.ms-powerpoint" sequenceId="12" enumCode="Powerpoint (.ppt)"/>
-</entity-engine-xml>
\ No newline at end of file
diff --git a/plugins/birt/data/OrderPortletData.xml b/plugins/birt/data/OrderPortletData.xml
deleted file mode 100644
index 35d3b38..0000000
--- a/plugins/birt/data/OrderPortletData.xml
+++ /dev/null
@@ -1,68 +0,0 @@
-<?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.
--->
-<entity-engine-xml>
-    <PortalPortlet portalPortletId="OrderByChannel"
-                   portletName="Sale Orders by Channel"
-                   screenName="SaleOrdersByChannelReport"
-                   screenLocation="component://birt/widget/order/OrderScreens.xml"
-                   description=""/>
-    <PortletPortletCategory portalPortletId="OrderByChannel" portletCategoryId="REPORT"/>
-    <PortalPagePortlet portalPageId="OrderReportPage" portalPortletId="OrderByChannel" portletSeqId="00001" columnSeqId="00001" sequenceNum="6"/>
-
-    <PortalPortlet portalPortletId="OrderDiscountCode"
-                   portletName="Orders with discount code"
-                   screenName="SaleOrderDiscountCodeReport"
-                   screenLocation="component://birt/widget/order/OrderScreens.xml"
-                   description=""/>
-    <PortletPortletCategory portalPortletId="OrderDiscountCode" portletCategoryId="REPORT"/>
-    <PortalPagePortlet portalPageId="OrderReportPage" portalPortletId="OrderDiscountCode" portletSeqId="00001" columnSeqId="00001" sequenceNum="7"/>
-
-    <PortalPortlet portalPortletId="Last3MSalesReport"
-                   portletName="Last 3 Months Sales Report"
-                   screenName="Last3MonthsSalesReport"
-                   screenLocation="component://birt/widget/order/OrderScreens.xml"
-                   description=""/>
-    <PortletPortletCategory portalPortletId="Last3MSalesReport" portletCategoryId="REPORT"/>
-    <PortalPagePortlet portalPageId="OrderReportPage" portalPortletId="Last3MSalesReport" portletSeqId="00001" columnSeqId="00002" sequenceNum="8"/>
-
-    <PortalPortlet portalPortletId="CouponSalesReport"
-                   portletName="Coupon Sales Report"
-                   screenName="CouponSalesReport"
-                   screenLocation="component://birt/widget/order/OrderScreens.xml"
-                   description=""/>
-    <PortletPortletCategory portalPortletId="CouponSalesReport" portletCategoryId="REPORT"/>
-    <PortalPagePortlet portalPageId="OrderReportPage" portalPortletId="CouponSalesReport" portletSeqId="00001" columnSeqId="00002" sequenceNum="9"/>
-
-    <PortalPortlet portalPortletId="SalesReport"
-                   portletName="Sales Report"
-                   screenName="SalesReport"
-                   screenLocation="component://birt/widget/order/OrderScreens.xml"
-                   description=""/>
-    <PortletPortletCategory portalPortletId="SalesReport" portletCategoryId="REPORT"/>
-    <PortalPagePortlet portalPageId="OrderReportPage" portalPortletId="SalesReport" portletSeqId="00001" columnSeqId="00002" sequenceNum="10"/>
-
-    <PortalPortlet portalPortletId="PDR_Report"
-                   portletName="Product Demand Report"
-                   screenName="ProductDemandReport"
-                   screenLocation="component://birt/widget/order/OrderScreens.xml"
-                   description=""/>
-    <PortletPortletCategory portalPortletId="PDR_Report" portletCategoryId="REPORT"/>
-    <PortalPagePortlet portalPageId="OrderReportPage" portalPortletId="PDR_Report" portletSeqId="00001" columnSeqId="00002" sequenceNum="12"/>
-</entity-engine-xml>
\ No newline at end of file
diff --git a/plugins/birt/data/helpdata/HELP_BIRT.xml b/plugins/birt/data/helpdata/HELP_BIRT.xml
deleted file mode 100644
index 09bb50e..0000000
--- a/plugins/birt/data/helpdata/HELP_BIRT.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?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.
--->
-<section xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5.0" 
-    xmlns:xl="http://www.w3.org/1999/xlink" 
-    xmlns:xi="http://www.w3.org/2001/XInclude"
-    xsi:schemaLocation="http://docbook.org/ns/docbook ../../../content/dtd/docbook.xsd"
-    xmlns="http://docbook.org/ns/docbook">
-    
-    <title>OFBiz BIRT Overview</title>
-    <para>
-        Welcome to OFBiz BIRT. The part installed within OFBiz allows you to run the reports which are prepared using Eclipse with the BIRT plugin installed.
-        As a demo we have prepared a product report as an example.
-        Look at the <link xl:href="http://eclipse.org/birt/phoenix/">Eclipse BIRT web site</link> for more information.
-    </para>
-    <para>
-        This is a short document to help you get started using BIRT to make a report.
-    </para>
-    <section>
-        <title>1. HTML tab</title>
-        <para>When you click on this tab. It will show the complete report in an iframe.</para>
-    </section>
-    <section>
-        <title>2. PDF tab</title>
-        <para>When you click on this tab. It will render the report in a pdf format</para>
-    </section>
-    <section>
-        <title>3. Send any format through Mail tab</title>
-        <para>When you click on this tab. It will show a form that can send the report per email.</para>
-    </section>
-    <section>
-        <title>Examine the Example Report</title>
-        <para>
-            The example report that run in OFBiz is in the file component://birt/webapp/birt/report/product.rptdesign. When you have started Eclipse BIRT, open this document.
-            This report show how a report receives data from OFBiz through Scripted Data Source using the OFBiz delegator.
-            This report has the scripted data source name "OFBiz" and the data set that use the script data source name is called "Product". 
-            Open the script editor for Product data set, it uses the delegator object query data from the Product entity.
-            A report that runs on the OFBiz platform can use the delegator object, dispatcher object, security object and classpath of OFBiz environment in the script.</para>
-    </section>
-    <section>
-        <title>Important file for using BIRT's jsp tags</title>
-        <para>
-            If a web applications wants to use the report in a screen, copy birt.tld file to [WEB APP]/WEB-INF/ directory and assign in in ftl
-            like &lt;#assign birt = JspTaglibs["/WEB-INF/birt.tld"]/&gt;</para>
-    </section>
-    <section>
-        <title>Important tag's attribute in ftl.</title>
-        <para>
-            The BIRT uses some servlets for rendering the report.
-            When you use the report tag in a ftl file you must add a specific "baseURL" attribute to the birt webapp for these resources like baseURL="/birt".
-        </para>
-    </section>
-    <section>
-        <title>How do I send parameter to report.</title>
-        <para>If a report is to be rendered through a view map, you can send a parameter through attribute of the request object, the attribute's name is "birtParameters" which is a map.</para>
-        <para>If a report is to be rendered through an e-mail, you can send the parameter through the service's parameter name called birtParameters.</para>
-    </section>
-    <section>
-        <title>Which are the supported content types?</title>
-        <para>text/html</para>
-        <para>application/pdf</para>
-        <para>application/postscript</para>
-        <para>application/vnd.ms-excel</para>
-        <para>application/vnd.ms-word</para>
-        <para>application/vnd.ms-powerpoint</para>
-        <para>application/vnd.oasis.opendocument.text</para>
-        <para>application/vnd.oasis.opendocument.spreadsheet</para>
-        <para>application/vnd.oasis.opendocument.presentation</para>
-        <para>application/vnd.openxmlformats-officedocument.wordprocessingml.document</para>
-        <para>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</para>
-        <para>application/vnd.openxmlformats-officedocument.presentationml.presentation</para>
-    </section>
-</section>
diff --git a/plugins/birt/documents/Birt.xml b/plugins/birt/documents/Birt.xml
deleted file mode 100644
index 36bddbd..0000000
--- a/plugins/birt/documents/Birt.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?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.
--->
-<chapter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5.0"
-    xmlns:xl="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude"
-    xsi:schemaLocation="http://docbook.org/ns/docbook ../../applications/content/dtd/docbook.xsd"
-    xmlns="http://docbook.org/ns/docbook">
-    <title>BIRT report generator.</title>
-    <para> An example report sales can be found in the example component. </para>
-    <para>
-        <xi:include href="../../../plugins/birt/data/helpdata/HELP_BIRT.xml"/>
-    </para>
-</chapter>
diff --git a/plugins/birt/groovyScripts/accounting/AcctgTransEntriesSearchResultsParameters.groovy b/plugins/birt/groovyScripts/accounting/AcctgTransEntriesSearchResultsParameters.groovy
deleted file mode 100644
index 08e47a0..0000000
--- a/plugins/birt/groovyScripts/accounting/AcctgTransEntriesSearchResultsParameters.groovy
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
-* 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.
-*/
-
-def module = "AcctgTransEntriesSearchResultsParameters.groovy"
-
-try {
-    def birtParameters = [:]
-    birtParameters.organizationPartyId = parameters.organizationPartyId
-    birtParameters.productId = parameters.productId
-    birtParameters.isPosted = parameters.isPosted
-    birtParameters.invoiceId = parameters.invoiceId
-    birtParameters.acctgTransId = parameters.acctgTransId
-    birtParameters.glFiscalTypeId = parameters.glFiscalTypeId
-    birtParameters.glAccountId = parameters.glAccountId
-    birtParameters.shipmentId = parameters.shipmentId
-    birtParameters.acctgTransTypeId = parameters.acctgTransTypeId
-    birtParameters.workEffortId = parameters.workEffortId
-    birtParameters.glJournalId = parameters.glJournalId
-    birtParameters.partyId = parameters.partyId
-    birtParameters.paymentId = parameters.paymentId
-    if (parameters.fromDate) {
-        birtParameters.fromDate = Timestamp.valueOf(parameters.fromDate)
-    }
-    if (parameters.thruDate) {
-        birtParameters.thruDate = Timestamp.valueOf(parameters.thruDate)
-    }
-    birtParameters.userLoginId = userLogin.userLoginId
-    request.setAttribute("birtParameters", birtParameters)
-} catch (e) {
-    Debug.logError(e, module)
-}
-return "success";
\ No newline at end of file
diff --git a/plugins/birt/groovyScripts/accounting/BalanceSheetParameters.groovy b/plugins/birt/groovyScripts/accounting/BalanceSheetParameters.groovy
deleted file mode 100644
index 6ff0ceb..0000000
--- a/plugins/birt/groovyScripts/accounting/BalanceSheetParameters.groovy
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.
- */
-
-import java.sql.Timestamp
-import org.apache.ofbiz.base.util.Debug
-
-def module = "BalanceSheetParameters.groovy"
-
-try {
-    def birtParameters = [:]
-    if (parameters.fromDate) {
-        birtParameters.fromDate = Timestamp.valueOf(parameters.fromDate)
-    }
-    if (parameters.thruDate) {
-        birtParameters.thruDate = Timestamp.valueOf(parameters.thruDate)
-    }
-    birtParameters.glFiscalTypeId = parameters.glFiscalTypeId
-    birtParameters.organizationPartyId = parameters.organizationPartyId
-    birtParameters.userLoginId = userLogin.userLoginId
-    birtParameters.locale = locale
-    request.setAttribute("birtParameters", birtParameters)
-} catch (e) {
-    Debug.logError(e, module)
-}
-return "success";
\ No newline at end of file
diff --git a/plugins/birt/groovyScripts/accounting/IncomeStatementParameters.groovy b/plugins/birt/groovyScripts/accounting/IncomeStatementParameters.groovy
deleted file mode 100644
index ebf7836..0000000
--- a/plugins/birt/groovyScripts/accounting/IncomeStatementParameters.groovy
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.
- */
-
-import java.sql.Timestamp
-import org.apache.ofbiz.base.util.Debug
-
-def module = "IncomeStatementParameters.groovy"
-
-try {
-    def birtParameters = [:]
-    if (parameters.fromDate) {
-        birtParameters.fromDate = Timestamp.valueOf(parameters.fromDate)
-    }
-    if (parameters.thruDate) {
-        birtParameters.thruDate = Timestamp.valueOf(parameters.thruDate)
-    }
-    birtParameters.glFiscalTypeId = parameters.glFiscalTypeId
-    birtParameters.organizationPartyId = parameters.organizationPartyId
-    birtParameters.userLoginId = userLogin.userLoginId
-    request.setAttribute("birtParameters", birtParameters)
-} catch (e) {
-    Debug.logError(e, module)
-}
-return "success";
\ No newline at end of file
diff --git a/plugins/birt/groovyScripts/accounting/InvoiceAcctgTransEntryParameters.groovy b/plugins/birt/groovyScripts/accounting/InvoiceAcctgTransEntryParameters.groovy
deleted file mode 100644
index efe2074..0000000
--- a/plugins/birt/groovyScripts/accounting/InvoiceAcctgTransEntryParameters.groovy
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * 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.
- */
-
-def module = "InvoiceAcctgTransEntryParameters.groovy"
-
-try {
-    birtParameters = [:]
-    birtParameters.invoiceId = parameters.invoiceId
-    birtParameters.userLoginId = userLogin.userLoginId
-    request.setAttribute("birtParameters", birtParameters)
-} catch (e) {
-    Debug.logError(e, module)
-}
-return "success";
\ No newline at end of file
diff --git a/plugins/birt/groovyScripts/accounting/PaymentAcctgTransEntryParameters.groovy b/plugins/birt/groovyScripts/accounting/PaymentAcctgTransEntryParameters.groovy
deleted file mode 100644
index 244485a..0000000
--- a/plugins/birt/groovyScripts/accounting/PaymentAcctgTransEntryParameters.groovy
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * 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.
- */
-
-def module = "PaymentAcctgTransEntryParameters.groovy"
-
-try {
-    birtParameters = [:]
-    birtParameters.paymentId = parameters.paymentId
-    birtParameters.userLoginId = userLogin.userLoginId
-    request.setAttribute("birtParameters", birtParameters)
-} catch (e) {
-    Debug.logError(e, module)
-}
-return "success";
\ No newline at end of file
diff --git a/plugins/birt/groovyScripts/accounting/PaymentReport.groovy b/plugins/birt/groovyScripts/accounting/PaymentReport.groovy
deleted file mode 100644
index bba5ab7..0000000
--- a/plugins/birt/groovyScripts/accounting/PaymentReport.groovy
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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.
- */
-
-birtParameters = [:]
-birtParameters.partyIdTo = request.getParameter("partyIdTo")
-birtParameters.paymentId = request.getParameter("paymentId")
-birtParameters.paymentTypeId = request.getParameter("paymentTypeId")
-birtParameters.paymentId_op = request.getParameter("paymentId_op")
-birtParameters.paymentRefNum_ic = request.getParameter("paymentRefNum_ic")
-birtParameters.noConditionFind = request.getParameter("noConditionFind")
-birtParameters.contentType = request.getParameter("contentType")
-birtParameters.partyIdFrom = request.getParameter("partyIdFrom")
-birtParameters.paymentRefNum_op = request.getParameter("paymentRefNum_op")
-birtParameters.amount = request.getParameter("amount")
-birtParameters.statusId = request.getParameter("statusId")
-birtParameters.paymentGatewayResponseId = request.getParameter("paymentGatewayResponseId")
-birtParameters.paymentId_ic = request.getParameter("paymentId_ic")
-birtParameters.paymentRefNum = request.getParameter("paymentRefNum")
-birtParameters.comments_ic = request.getParameter("comments_ic")
-birtParameters.comments_op = request.getParameter("comments_op")
-birtParameters.comments = request.getParameter("comments")
-request.setAttribute("birtParameters", birtParameters)
-return "success"
diff --git a/plugins/birt/groovyScripts/accounting/TrialBalanceParameters.groovy b/plugins/birt/groovyScripts/accounting/TrialBalanceParameters.groovy
deleted file mode 100644
index 0ab94e7..0000000
--- a/plugins/birt/groovyScripts/accounting/TrialBalanceParameters.groovy
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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.
- */
-
-def module = "TrialBalanceParameters.groovy"
-
-try {
-    def birtParameters = [:]
-    birtParameters.organizationPartyId = parameters.organizationPartyId
-    birtParameters.customTimePeriodId = parameters.customTimePeriodId
-    birtParameters.userLoginId = userLogin.userLoginId
-    request.setAttribute("birtParameters", birtParameters)
-} catch (e) {
-    Debug.logError(e, module)
-}
-return "success";
\ No newline at end of file
diff --git a/plugins/birt/groovyScripts/facility/InventoryItemReport.groovy b/plugins/birt/groovyScripts/facility/InventoryItemReport.groovy
deleted file mode 100644
index cb2152f..0000000
--- a/plugins/birt/groovyScripts/facility/InventoryItemReport.groovy
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * 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.
- */
-
- import org.apache.ofbiz.base.util.UtilDateTime
- 
- birtParameters = [:]
- /*
- birtParameters.facilityId = request.getParameter("facilityId")
- birtParameters.productId = request.getParameter("productId")
- birtParameters.productTypeId = request.getParameter("productTypeId")
- birtParameters.searchInProductCategoryId = request.getParameter("searchInProductCategoryId")
- birtParameters.contentType = request.getParameter("contentType")
- birtParameters.productSupplierId = request.getParameter("productSupplierId")
- birtParameters.statusId = request.getParameter("statusId")
- birtParameters.productsSoldThruTimestamp = request.getParameter("productsSoldThruTimestamp")
- birtParameters.VIEW_SIZE = request.getParameter("VIEW_SIZE")
- birtParameters.monthsInPastLimit = request.getParameter("monthsInPastLimit")
- birtParameters.fromDateSellThrough = request.getParameter("fromDateSellThrough")
- birtParameters.thruDateSellThrough = request.getParameter("thruDateSellThrough")
- */
-
- int lastIntMonth = Integer.parseInt(request.getParameter("lastIntMonth"))
- if (lastIntMonth == 0 ){
-     fromOrderDate = null
- }else{
-     fromDateTime = UtilDateTime.getDayStart(UtilDateTime.toTimestamp(UtilDateTime.nowTimestamp()), (lastIntMonth*(-30)))
-     fromOrderDate = UtilDateTime.toDateString(fromDateTime,"MMMM dd, yyyy")
- }
-
- birtParameters.facilityId = request.getParameter("facilityId")
- birtParameters.orderDateDateValue_fld0_op = fromOrderDate.toString()
- request.setAttribute("birtParameters", birtParameters)
- return "success"
diff --git a/plugins/birt/groovyScripts/order/CheckReportBy.groovy b/plugins/birt/groovyScripts/order/CheckReportBy.groovy
deleted file mode 100644
index 1b1a4b1..0000000
--- a/plugins/birt/groovyScripts/order/CheckReportBy.groovy
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * 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.
- */
-
-import org.apache.ofbiz.base.util.UtilValidate
-
-reportBy = parameters.reportBy
-exportType = parameters.exportType
-
-if (UtilValidate.isEmpty(parameters.fromDate)) {
-    request.setAttribute("_ERROR_MESSAGE_", "Please select From Date.")
-    return "error"
-}
-
-if (exportType == "pdf") {
-    if (reportBy == "day") {
-        return "dayPDF"
-    } else if (reportBy == "week") {
-        return "weekPDF"
-    } else if (reportBy == "month") {
-        return "monthPDF"
-    } else {
-        request.setAttribute("_ERROR_MESSAGE_", "Please select Report By.")
-        return "error"
-    }
-}
-
-if (exportType == "excel") {
-    if (reportBy == "day") {
-        return "dayExcel"
-    } else if (reportBy == "week") {
-        return "weekExcel"
-    } else if (reportBy == "month") {
-        return "monthExcel"
-    } else {
-        request.setAttribute("_ERROR_MESSAGE_", "Please select Report By.")
-        return "error"
-    }
-}
-
-if (exportType == "html") {
-    if (reportBy == "day") {
-        return "dayHTML"
-    } else if (reportBy == "week") {
-        return "weekHTML"
-    } else if (reportBy == "month") {
-        return "monthHTML"
-    } else {
-        request.setAttribute("_ERROR_MESSAGE_", "Please select Report By.")
-        return "error"
-    }
-}
diff --git a/plugins/birt/groovyScripts/order/NetBeforeOverheadReport.groovy b/plugins/birt/groovyScripts/order/NetBeforeOverheadReport.groovy
deleted file mode 100644
index e77c4ed..0000000
--- a/plugins/birt/groovyScripts/order/NetBeforeOverheadReport.groovy
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * 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.
- */
-import org.apache.ofbiz.base.util.Debug
-import org.apache.ofbiz.base.util.UtilDatetime
-import java.sql.*
-
-productStoreId = parameters.productStoreId
-DateTime = UtilDateTime.nowTimestamp()
-String DateStr = DateTime
-DateDay = DateStr.substring(0,10)
-DateMonth = DateStr.substring(5,7)
-DateYear = DateStr.substring(0,4)
-
-if (DateMonth == "01"||DateMonth == "03"||DateMonth == "05"||DateMonth == "07"||DateMonth == "08"||DateMonth == "10"||DateMonth == "12")
-{
-    NunberDate = 31
-}
-else if (DateMonth == "02")
-{
-    NunberDate = 29
-}
-else
-{
-    NunberDate = 30
-}
-
-birtParameters = [:]
-try {
-    birtParameters.productStoreId = productStoreId
-    birtParameters.DateDay = DateDay
-    birtParameters.DateMonth = DateMonth
-    birtParameters.DateYear = DateYear
-    birtParameters.NunberDate = NunberDate
-} catch (e) {
-    Debug.logError(e, "")
-}
-
-request.setAttribute("birtParameters", birtParameters)
-
-return "success"
diff --git a/plugins/birt/groovyScripts/order/OrderByChannel.groovy b/plugins/birt/groovyScripts/order/OrderByChannel.groovy
deleted file mode 100644
index 8ab4f17..0000000
--- a/plugins/birt/groovyScripts/order/OrderByChannel.groovy
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * 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.
- */
-
-birtParameters = [:]
-if(request.getParameter("SalesChannel")){
-    birtParameters.saleChannel = request.getParameter("SalesChannel")
-}else{
-    birtParameters.saleChannel = "null"
-}
-request.setAttribute("birtParameters", birtParameters)
-
-return "success"
diff --git a/plugins/birt/groovyScripts/order/ProductDemandReport.groovy b/plugins/birt/groovyScripts/order/ProductDemandReport.groovy
deleted file mode 100644
index aa27773..0000000
--- a/plugins/birt/groovyScripts/order/ProductDemandReport.groovy
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.
- */
-import org.apache.ofbiz.base.util.Debug
-import org.apache.ofbiz.base.util.UtilDateTime
-import java.sql.*
-import com.ibm.icu.util.Calendar
-
-productStoreId = parameters.productStoreId
-Calendar cal = UtilDateTime.toCalendar(UtilDateTime.nowTimestamp())
-int Week = cal.get(Calendar.WEEK_OF_YEAR)
-int Year = cal.get(Calendar.YEAR)
-
-birtParameters = [:]
-try 
-{
-    birtParameters.productStoreId = productStoreId
-    birtParameters.Week = Week
-    birtParameters.Year = Year
-} catch (e) {
-    Debug.logError(e, "")
-}
-
-request.setAttribute("birtParameters", birtParameters)
-
-return "success"
diff --git a/plugins/birt/groovyScripts/order/SalesReport.groovy b/plugins/birt/groovyScripts/order/SalesReport.groovy
deleted file mode 100644
index 27bfe3c..0000000
--- a/plugins/birt/groovyScripts/order/SalesReport.groovy
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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.
- */
-import org.apache.ofbiz.base.util.Debug
-import java.sql.*
-
-fromDateStr = parameters.fromDate
-cal = Calendar.getInstance()
-cal.setTime(Date.valueOf(fromDateStr))
-int week = cal.get(Calendar.WEEK_OF_YEAR)
-int month = cal.get(Calendar.MONTH) + 1
-int year = cal.get(Calendar.YEAR)
-
-birtParameters = [:]
-try {
-    birtParameters.reportBy = parameters.reportBy
-    birtParameters.fromDate = (Date.valueOf(fromDateStr))-2
-    birtParameters.thruDate = Date.valueOf(fromDateStr)
-    birtParameters.lastDate = (Date.valueOf(fromDateStr))-7
-    birtParameters.thruWeek = week
-    birtParameters.thruMonth = month
-    birtParameters.thisYear = year
-} catch (e) {
-    Debug.logError(e, "")
-}
-
-request.setAttribute("birtParameters", birtParameters)
-
-return "success"
diff --git a/plugins/birt/groovyScripts/report/PrepareBirtCall.groovy b/plugins/birt/groovyScripts/report/PrepareBirtCall.groovy
deleted file mode 100644
index aba1d4c..0000000
--- a/plugins/birt/groovyScripts/report/PrepareBirtCall.groovy
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * 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.
- */
-
-import org.apache.ofbiz.base.util.UtilProperties
-
-def birtParameters = [:]
-
-birtParameters.parameters = parameters
-birtParameters.modelElementName = parameters.modelElementName
-birtParameters.userLogin = context.userLogin
-birtParameters.locale = locale
-
-if(!birtParameters.rptDesignFile) {
-    request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage("BirtErrorUiLabels", "BirtErrorNotPublishedReport", locale))
-    return "error"
-}
-request.setAttribute("birtParameters", birtParameters)
-return "success"
diff --git a/plugins/birt/minilang/BirtPermissionServices.xml b/plugins/birt/minilang/BirtPermissionServices.xml
deleted file mode 100644
index 9cf7a21..0000000
--- a/plugins/birt/minilang/BirtPermissionServices.xml
+++ /dev/null
@@ -1,106 +0,0 @@
-<!--
-  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="genericBirtPermission" short-description="Generic Service for Birt Permissions">
-        <set field="primaryPermission" value="BIRT"/>
-        <call-simple-method method-name="genericBasePermissionCheck" xml-resource="component://common/minilang/permission/CommonPermissionServices.xml"/>
-
-        <!-- mainAction based call outs -->
-        <if>
-            <condition>
-                <not>
-                    <if-compare field="hasPermission" value="true" type="Boolean" operator="equals"/>
-                </not>
-            </condition>
-            <then>
-                <if>
-                    <!-- view data resource -->
-                    <condition>
-                        <if-compare field="parameters.mainAction" value="VIEW" operator="equals"/>
-                    </condition>
-                    <then>
-                        <call-simple-method method-name="viewBirtPermission"/>
-                    </then>
-                    <else-if>
-                        <!-- create data resource -->
-                        <condition>
-                            <if-compare field="parameters.mainAction" value="CREATE" operator="equals"/>
-                        </condition>
-                        <then>
-                            <call-simple-method method-name="createBirtPermission"/>
-                        </then>
-                    </else-if>
-                    <else-if>
-                        <!-- update data resource -->
-                        <condition>
-                            <if-compare field="parameters.mainAction" value="UPDATE" operator="equals"/>
-                        </condition>
-                        <then>
-                            <call-simple-method method-name="updateBirtPermission"/>
-                        </then>
-                    </else-if>
-                    <!-- all other actions use main base check -->
-                </if>
-            </then>
-            <else>
-                <log level="info" message="Admin permission found: ${primaryPermission}_${mainAction}"/>
-            </else>
-        </if>
-
-        <log level="info" message="Permission service [${mainAction} / ${parameters.contentId}] completed; returning hasPermission = ${hasPermission}"/>
-        <field-to-result field="hasPermission"/>
-    </simple-method>
-
-    <!-- Birt View Permission -->
-    <simple-method method-name="viewBirtPermission" short-description="Check user can view Birt reports">
-        <!-- if called directly check the main permission -->
-        <if-empty field="hasPermission">
-            <set field="primaryPermission" value="BIRT"/>
-            <set field="mainAction" value="VIEW"/>
-            <call-simple-method method-name="genericBasePermissionCheck"
-                                xml-resource="component://common/minilang/permission/CommonPermissionServices.xml"/>
-        </if-empty>
-    </simple-method>
-
-    <!-- Birt Create Permission -->
-    <simple-method method-name="createBirtPermission" short-description="Check user can create new Birt report">
-        <!-- if called directly check the main permission -->
-        <if-empty field="hasPermission">
-            <set field="primaryPermission" value="BIRT"/>
-            <set field="mainAction" value="CREATE"/>
-            <call-simple-method method-name="genericBasePermissionCheck"
-                                xml-resource="component://common/minilang/permission/CommonPermissionServices.xml"/>
-        </if-empty>
-        <!-- this is about the same as the VIEW permission; but left as a unique service for extending purposes -->
-    </simple-method>
-
-    <!-- Birt Update Permission -->
-    <simple-method method-name="updateBirtPermission" short-description="Check user can update existing Birt report">
-        <!-- if called directly check the main permission -->
-        <if-empty field="hasPermission">
-            <set field="primaryPermission" value="BIRT"/>
-            <set field="mainAction" value="UPDATE"/>
-            <call-simple-method method-name="genericBasePermissionCheck"
-                                xml-resource="component://common/minilang/permission/CommonPermissionServices.xml"/>
-        </if-empty>
-    </simple-method>
-</simple-methods>
\ No newline at end of file
diff --git a/plugins/birt/ofbiz-component.xml b/plugins/birt/ofbiz-component.xml
deleted file mode 100644
index 92ec10d..0000000
--- a/plugins/birt/ofbiz-component.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?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.
--->
-
-<ofbiz-component name="birt" enabled="true"
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-component.xsd">
-    <resource-loader name="main" type="component"/>
-
-
-    <classpath type="dir" location="config"/>
-    <entity-resource type="data" reader-name="seed" loader="main" location="data/BirtHelpData.xml"/>
-    <entity-resource type="data" reader-name="seed" loader="main" location="data/BirtTypeData.xml"/>
-    <entity-resource type="data" reader-name="demo" loader="main" location="data/BirtSecurityGroupDemoData.xml"/>
-    <entity-resource type="data" reader-name="demo" loader="main" location="data/BirtMasterData.xml"/>
-
-    <service-resource type="model" loader="main" location="servicedef/services.xml"/>
-   
-    <webapp name="accounting"
-        title="Accounting"
-        server="default-server"
-        location="webapp/accounting"
-        base-permission="OFBTOOLS,ACCOUNTING"
-        mount-point="/accounting"/>
-    <webapp name="facility"
-        title="Facility"
-        description="FacilityComponentDescription"
-        server="default-server"
-        location="webapp/facility"
-        base-permission="OFBTOOLS,FACILITY"
-        mount-point="/facility"/>
-    <webapp name="order"
-        title="Order"
-        description="OrderComponentDescription"
-        server="default-server"
-        location="webapp/ordermgr"
-        base-permission="OFBTOOLS,ORDERMGR"
-        mount-point="/ordermgr"/>
-
-    <webapp name="birt"
-        title="BIRT"
-        server="default-server"
-        location="webapp/birt"
-        base-permission="OFBTOOLS,WEBTOOLS"
-        mount-point="/birt"
-        menu-name="secondary"
-        app-bar-display="true"/>
-
-    <container name="birt-container" loaders="main" class="org.apache.ofbiz.birt.container.BirtContainer"/>
-
-</ofbiz-component>
diff --git a/plugins/birt/servicedef/services.xml b/plugins/birt/servicedef/services.xml
deleted file mode 100644
index 97df43e..0000000
--- a/plugins/birt/servicedef/services.xml
+++ /dev/null
@@ -1,166 +0,0 @@
-<?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.
--->
-
-<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
-    <description>OFBiz BIRT Services</description>
-    <vendor>OFBiz</vendor>
-    <version>1.0</version>
-
-    <!--BIRT Email Services -->
-    <service name="sendBirtMail" engine="java" location="org.apache.ofbiz.birt.email.BirtEmailServices" invoke="sendBirtMail">
-        <description>BIRT Email Service</description>
-        <implements service="sendMailInterface"/>
-        <attribute name="bodyText" type="String" mode="IN" optional="true"/>
-        <attribute name="bodyScreenUri" type="String" mode="IN" optional="true"/>
-        <attribute name="birtReportLocation" type="String" mode="IN" optional="false"/>
-        <attribute name="attachmentName" type="String" mode="IN" optional="false"/>
-        <attribute name="bodyParameters" type="Map" mode="IN" optional="true"/>
-        <attribute name="birtParameters" type="Map" mode="IN" optional="true"/>
-        <attribute name="birtLocale" type="Locale" mode="IN" optional="true"/>
-        <attribute name="birtContentType" type="String" mode="IN" optional="true"/>
-        <attribute name="webSiteId" type="String" mode="IN" optional="true"/>
-        <attribute name="body" type="String" mode="OUT" optional="false"/>
-    </service>
-
-    <!-- SERVICES FOR REPORTS -->
-    <service name="genericBirtPermission" engine="simple" auth="true"
-            location="component://birt/minilang/BirtPermissionServices.xml" invoke="genericBirtPermission">
-        <description>Generic Birt Permission Service; Takes mainAction to determine the mode.</description>
-        <implements service="permissionInterface"/>
-    </service>
-
-    <!-- Interfaces -->
-    <service name="createFlexibleReportFromMasterInterface" engine="interface">
-        <attribute name="reportName" type="String" mode="IN" optional="false" />
-        <attribute name="description" type="String" mode="IN" optional="true" />
-        <attribute name="writeFilters" type="String" mode="IN" optional="true" />
-        <attribute name="masterContentId" type="String" mode="IN" optional="false" />
-        <attribute name="contentId" type="String" mode="OUT" optional="false" />
-    </service>
-    <service name="prepareFieldsForFlexibleReportInterface" engine="interface">
-        <attribute name="dataMap" type="Map" mode="OUT" optional="false" />
-        <attribute name="fieldDisplayLabels" type="Map" mode="OUT" optional="true"/>
-        <attribute name="filterMap" type="Map" mode="OUT" optional="true" />
-        <attribute name="filterDisplayLabels" type="Map" mode="OUT" optional="true"/>
-    </service>
-    <service name="searchRecordsForFlexibleReportInterface" engine="interface">
-        <attribute name="reportContext" type="Object" mode="IN" optional="false" />
-        <attribute name="records" type="List" mode="OUT" />
-    </service>
-
-    <service name="createFlexibleReport" engine="java" auth="true" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="createFlexibleReport">
-        <description>BIRT report generation</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_CREATE"/></required-permissions>
-        <attribute name="dataMap" type="Map" mode="IN" optional="false" />
-        <attribute name="fieldDisplayLabels" type="Map" mode="IN" optional="true" />
-        <attribute name="filterMap" type="Map" mode="IN" optional="true" />
-        <attribute name="filterDisplayLabels" type="Map" mode="IN" optional="true" />
-        <attribute name="writeFilters" type="String" mode="IN" optional="true" />
-        <attribute name="serviceName" type="String" mode="IN" optional="false" />
-        <attribute name="rptDesignName" type="String" mode="IN" optional="false" />
-    </service>
-
-    <service name="createFlexibleReportFromMaster" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="createFlexibleReportFromMaster">
-        <description>Call report generator with appropriate workflow required by the given master report</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_CREATE"/></required-permissions>
-        <attribute name="contentId" type="String" mode="IN" optional="false" />
-        <attribute name="reportName" type="String" mode="IN" optional="false" />
-        <attribute name="description" type="String" mode="IN" optional="false" />
-        <attribute name="writeFilters" type="String" mode="IN" optional="true" />
-        <attribute name="reportContentId" type="String" mode="OUT" optional="false"/>
-        <attribute name="textForm" type="String" mode="OUT" optional="false" allow-html="any"/>
-    </service>
-    <service name="createFlexibleReportFromMasterEntityWorkflow" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="createFlexibleReportFromMasterEntityWorkflow">
-        <description>Create and save in db content, a new report design following entity workflow</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_CREATE"/></required-permissions>
-        <implements service="createFlexibleReportFromMasterInterface"/>
-        <attribute name="entityViewName" type="String" mode="IN" optional="false" />
-    </service>
-    <service name="createFlexibleReportFromMasterServiceWorkflow" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="createFlexibleReportFromMasterServiceWorkflow">
-        <description>Create and save in db content, a new report following service workflow</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_CREATE"/></required-permissions>
-        <implements service="createFlexibleReportFromMasterInterface"/>
-        <attribute name="serviceName" type="String" mode="IN" optional="false" />
-    </service>
-    <service name="deleteAllFlexibleReports" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="deleteAllReports">
-        <description>Delete all reports (admin purposes)</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_DELETE"/></required-permissions>
-    </service>
-    <service name="deleteFlexibleReport" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="deleteFlexibleReport">
-        <description>Delete a report</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_DELETE"/></required-permissions>
-        <attribute name="contentId" type="String" mode="IN" optional="false" />
-    </service>
-
-    <service name="prepareFlexibleReportOptionFieldsFromEntity" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="prepareFlexibleReportOptionFieldsFromEntity">
-        <description>Get fields corresponding to an entity or view, including _op _value and so on depending on type.</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_CREATE"/></required-permissions>
-        <attribute name="entityViewName" type="String" mode="IN" optional="false" />
-        <attribute name="listMultiFields" type="List" mode="OUT" optional="false" />
-    </service>
-    <service name="prepareFlexibleReportFieldsFromEntity" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="prepareFlexibleReportFieldsFromEntity">
-        <description>prepare maps fields for ReportDesignGenerator</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_CREATE"/></required-permissions>
-        <implements service="prepareFieldsForFlexibleReportInterface"/>
-        <attribute name="modelEntity" mode="IN" type="Object"/>
-    </service>
-
-    <service name="uploadFlexibleReportRptDesign" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="uploadRptDesign">
-        <description>Upload design-modified rptdesign file</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_UPDATE"/></required-permissions>
-        <attribute name="dataResourceIdRpt" type="String" mode="IN" optional="false" />
-        <attribute name="uploadRptDesign" type="java.nio.ByteBuffer" mode="IN" optional="false" />
-    </service>
-
-    <service name="updateFlexibleReportSearchForm" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="overrideReportForm">
-        <description>Override report form</description>
-        <required-permissions join-type="OR">
-            <check-permission permission="BIRT_CREATE"/>
-            <check-permission permission="BIRT_UPDATE"/>
-        </required-permissions>
-        <attribute name="reportContentId" type="String" mode="IN" optional="false" />
-        <attribute name="overrideFilters" type="String" mode="IN" optional="true" allow-html="any"/>
-    </service>
-    <service name="prepareFlexibleReportSearchFormToEdit" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="createFormForDisplay">
-        <description>Prepare from DB report form for display</description>
-        <required-permissions join-type="OR">
-            <check-permission permission="BIRT_CREATE"/>
-            <check-permission permission="BIRT_UPDATE"/>
-        </required-permissions>
-        <attribute name="reportContentId" type="String" mode="IN" optional="false" />
-        <attribute name="textForm" type="String" mode="OUT" optional="false" allow-html="any"/>
-    </service>
-
-    <!-- Service example for flexible report-->
-    <service name="callPerformFindFromBirt" engine="java" auth="true" location="org.apache.ofbiz.birt.flexible.BirtServices" invoke="callPerformFindFromBirt" transaction-timeout="7200">
-        <description>Manages performFind calling from Birt. Flexible Report from entity workflow. (Default search service)</description>
-        <required-permissions join-type="AND"><check-permission permission="BIRT_VIEW"/></required-permissions>
-        <implements service="searchRecordsForFlexibleReportInterface"/>
-    </service>
-    <service name="flexibleReportTurnOver" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtMasterReportServices" invoke="turnOver">
-        <description>Service getting data for report. Turnover report</description>
-        <implements service="searchRecordsForFlexibleReportInterface"/>
-    </service>
-    <service name="flexibleReportTurnOverPrepareFields" auth="true" engine="java" location="org.apache.ofbiz.birt.flexible.BirtMasterReportServices" invoke="turnOverPrepareFields">
-        <description>Service configuring data for report (works in duo!). Turnover report.</description>
-        <implements service="prepareFieldsForFlexibleReportInterface"/>
-    </service>
-</services>
diff --git a/plugins/birt/src/main/java/org/apache/ofbiz/birt/BirtFactory.java b/plugins/birt/src/main/java/org/apache/ofbiz/birt/BirtFactory.java
deleted file mode 100644
index ea91d35..0000000
--- a/plugins/birt/src/main/java/org/apache/ofbiz/birt/BirtFactory.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * 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.
- *******************************************************************************/
-package org.apache.ofbiz.birt;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.eclipse.birt.report.engine.api.IReportEngine;
-import org.apache.ofbiz.base.location.FlexibleLocation;
-import org.apache.ofbiz.base.util.Debug;
-import org.apache.ofbiz.widget.model.ScreenFactory;
-import org.xml.sax.SAXException;
-
-/**
- * BIRT Factory
- * @author chatree
- *
- */
-public class BirtFactory {
-
-    public final static String module = BirtFactory.class.getName();
-
-    protected static IReportEngine engine;
-    
-    /**
-     * set report engine
-     * @param engine
-     */
-    public static void setReportEngine(IReportEngine engine) {
-        BirtFactory.engine = engine;
-    }
-
-    /**
-     * get report engine
-     * @return
-     */
-    public static IReportEngine getReportEngine() {
-        return engine;
-    }
-
-    /**
-     * get report input stream from location
-     * @param resourceName
-     * @return returns the input stream from location
-     * @throws IOException
-     * @throws SAXException
-     * @throws ParserConfigurationException
-     */
-    public static InputStream getReportInputStreamFromLocation(String resourceName)
-        throws IOException, SAXException, ParserConfigurationException{
-
-        InputStream reportInputStream = null;
-        synchronized (BirtFactory.class) {
-            long startTime = System.currentTimeMillis();
-            ClassLoader loader = Thread.currentThread().getContextClassLoader();
-            if (loader == null) {
-                loader = ScreenFactory.class.getClassLoader();
-            }
-            URL reportFileUrl = null;
-            reportFileUrl = FlexibleLocation.resolveLocation(resourceName, loader);
-            if (reportFileUrl == null) {
-                throw new IllegalArgumentException("Could not resolve location to URL: " + resourceName);
-            }
-            reportInputStream = reportFileUrl.openStream();
-            double totalSeconds = (System.currentTimeMillis() - startTime)/1000.0;
-            Debug.logInfo("Got report in " + totalSeconds + "s from: " + reportFileUrl.toExternalForm(), module);
-        }
-
-        if (reportInputStream == null) {
-            throw new IllegalArgumentException("Could not find report file with location [" + resourceName + "]");
-        }
-        return reportInputStream;
-    }
-}
diff --git a/plugins/birt/src/main/java/org/apache/ofbiz/birt/BirtWorker.java b/plugins/birt/src/main/java/org/apache/ofbiz/birt/BirtWorker.java
deleted file mode 100644
index 336c855..0000000
--- a/plugins/birt/src/main/java/org/apache/ofbiz/birt/BirtWorker.java
+++ /dev/null
@@ -1,311 +0,0 @@
-/*******************************************************************************
- * 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.
- *******************************************************************************/
-package org.apache.ofbiz.birt;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.StringWriter;
-import java.sql.SQLException;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.logging.Level;
-
-import javax.servlet.ServletContext;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-
-import org.apache.ofbiz.base.util.Debug;
-import org.apache.ofbiz.base.util.GeneralException;
-import org.apache.ofbiz.base.util.UtilGenerics;
-import org.apache.ofbiz.base.util.UtilMisc;
-import org.apache.ofbiz.base.util.UtilProperties;
-import org.apache.ofbiz.base.util.UtilValidate;
-import org.apache.ofbiz.base.util.string.FlexibleStringExpander;
-import org.apache.ofbiz.birt.flexible.BirtUtil;
-import org.apache.ofbiz.entity.Delegator;
-import org.apache.ofbiz.entity.GenericValue;
-import org.apache.ofbiz.entity.condition.EntityCondition;
-import org.apache.ofbiz.entity.util.EntityQuery;
-import org.apache.ofbiz.service.GenericServiceException;
-import org.apache.ofbiz.service.LocalDispatcher;
-import org.apache.ofbiz.service.ServiceUtil;
-import org.apache.ofbiz.webapp.WebAppUtil;
-import org.eclipse.birt.report.engine.api.EXCELRenderOption;
-import org.eclipse.birt.report.engine.api.EngineConfig;
-import org.eclipse.birt.report.engine.api.EngineException;
-import org.eclipse.birt.report.engine.api.HTMLRenderOption;
-import org.eclipse.birt.report.engine.api.HTMLServerImageHandler;
-import org.eclipse.birt.report.engine.api.IPDFRenderOption;
-import org.eclipse.birt.report.engine.api.IReportEngine;
-import org.eclipse.birt.report.engine.api.IReportRunnable;
-import org.eclipse.birt.report.engine.api.IRunAndRenderTask;
-import org.eclipse.birt.report.engine.api.PDFRenderOption;
-import org.eclipse.birt.report.engine.api.RenderOption;
-
-public final class BirtWorker {
-
-    public final static String module = BirtWorker.class.getName();
-
-    private final static String BIRT_PARAMETERS = "birtParameters";
-    private final static String BIRT_LOCALE = "birtLocale";
-    private final static String BIRT_IMAGE_DIRECTORY = "birtImageDirectory";
-    private final static String BIRT_CONTENT_TYPE = "birtContentType";
-    private final static String BIRT_OUTPUT_FILE_NAME = "birtOutputFileName";
-    private static final String resourceError = "BirtErrorUiLabels";
-
-    private final static HTMLServerImageHandler imageHandler = new HTMLServerImageHandler();
-
-    private BirtWorker() {}
-
-    public static final Map<Integer, Level> levelIntMap = new HashMap<>();
-    static {
-        levelIntMap.put(Debug.ERROR, Level.SEVERE);
-        levelIntMap.put(Debug.TIMING, Level.FINE);
-        levelIntMap.put(Debug.INFO, Level.INFO);
-        levelIntMap.put(Debug.IMPORTANT, Level.INFO);
-        levelIntMap.put(Debug.WARNING, Level.WARNING);
-        levelIntMap.put(Debug.ERROR, Level.SEVERE);
-        levelIntMap.put(Debug.FATAL, Level.ALL);
-        levelIntMap.put(Debug.ALWAYS, Level.ALL);
-    }
-
-    /**
-     * export report
-     * @param design
-     * @param context
-     * @param contentType
-     * @param output
-     * @throws EngineException
-     * @throws GeneralException
-     * @throws SQLException
-     */
-    public static void exportReport(IReportRunnable design, Map<String, ? extends Object> context, String contentType, OutputStream output)
-            throws EngineException, GeneralException, SQLException {
-
-        Locale birtLocale = (Locale) context.get(BIRT_LOCALE);
-        String birtImageDirectory = (String) context.get(BIRT_IMAGE_DIRECTORY);
-
-        if (contentType == null) {
-            contentType = "text/html";
-        } else {
-            contentType = contentType.toLowerCase();
-        }
-        if (birtImageDirectory == null) {
-            birtImageDirectory = "/";
-        }
-        Debug.logInfo("Get report engine", module);
-        IReportEngine engine = BirtFactory.getReportEngine();
-
-        IRunAndRenderTask task = engine.createRunAndRenderTask(design);
-        if (birtLocale != null) {
-            Debug.logInfo("Set BIRT locale:" + birtLocale, module);
-            task.setLocale(birtLocale);
-        }
-
-        // set parameters if exists
-        Map<String, Object> parameters = UtilGenerics.cast(context.get(BirtWorker.getBirtParameters()));
-        if (parameters != null) {
-            //Debug.logInfo("Set BIRT parameters:" + parameters, module);
-            task.setParameterValues(parameters);
-        }
-
-        // set output options
-        if (! BirtUtil.isSupportedMimeType(contentType)) {
-            throw new GeneralException("Unknown content type : " + contentType);
-        }
-        RenderOption options = new RenderOption();
-        options.setOutputFormat(BirtUtil.getMimeTypeOutputFormat(contentType));
-
-        //specific process for mimetype
-        if ("text/html".equals(contentType)) { // HTML
-            HTMLRenderOption htmlOptions = new HTMLRenderOption(options);
-            htmlOptions.setImageDirectory(birtImageDirectory);
-            htmlOptions.setBaseImageURL(birtImageDirectory);
-            options.setImageHandler(imageHandler);
-        } else if ("application/pdf".equals(contentType)) { // PDF
-            PDFRenderOption pdfOptions = new PDFRenderOption(options);
-            pdfOptions.setOption(IPDFRenderOption.PAGE_OVERFLOW, Boolean.TRUE);
-        } else if ("application/vnd.ms-excel".equals(contentType)) { // MS Excel
-            new EXCELRenderOption(options);
-        }
-
-        options.setOutputStream(output);
-        task.setRenderOption(options);
-
-        // run report
-        if (Debug.infoOn()) {
-            Debug.logInfo("BIRT's locale is: " + task.getLocale(), module);
-            Debug.logInfo("Run report's task", module);
-        }
-        task.run();
-        task.close();
-    }
-
-    /**
-     * set web context objects
-     * @param appContext
-     * @param request
-     * @param response
-     */
-    public static void setWebContextObjects(Map<String, Object> appContext, HttpServletRequest request, HttpServletResponse response)
-    throws GeneralException {
-        HttpSession session = request.getSession();
-        ServletContext servletContext = session.getServletContext();
-
-        if (appContext == null || servletContext == null) {
-            throw new GeneralException("The context reporting is empty, check your configuration");
-        }
-
-        // initialize the delegator
-        appContext.put("delegator", WebAppUtil.getDelegator(servletContext));
-        // initialize security
-        appContext.put("security", WebAppUtil.getSecurity(servletContext));
-        // initialize the services dispatcher
-        appContext.put("dispatcher", WebAppUtil.getDispatcher(servletContext));
-    }
-
-    public static String getBirtParameters () {
-        return BIRT_PARAMETERS;
-    }
-
-    public static String getBirtLocale () {
-        return BIRT_LOCALE;
-    }
-
-    public static String getBirtImageDirectory () {
-        return BIRT_IMAGE_DIRECTORY;
-    }
-
-    public static String getBirtContentType () {
-        return BIRT_CONTENT_TYPE;
-    }
-
-    public static String getBirtOutputFileName () {
-        return BIRT_OUTPUT_FILE_NAME;
-    }
-
-    //TODO documentation
-    public static String recordReportContent(Delegator delegator, LocalDispatcher dispatcher, Map<String, Object> context) throws GeneralException {
-        Locale locale = (Locale) context.get("locale");
-        String description = (String) context.get("description");
-        String reportName = (String) context.get("reportName");
-        String writeFilters = (String) context.get("writeFilters");
-        GenericValue userLogin = (GenericValue) context.get("userLogin");
-        String entityViewName = (String) context.get("entityViewName");
-        String serviceName = (String) context.get("serviceName");
-        String masterContentId = (String) context.get("masterContentId");
-        String dataResourceId = delegator.getNextSeqId("DataResource");
-        String contentId = delegator.getNextSeqId("Content");
-        context.put("contentId", contentId);
-
-        if (UtilValidate.isEmpty(serviceName) && UtilValidate.isEmpty(entityViewName)) {
-            throw new GenericServiceException("Service and entity name cannot be both empty");
-        }
-
-        String modelType = null;
-        String modelElementName = null;
-        String workflowType = null;
-        if (UtilValidate.isEmpty(serviceName)) {
-            modelElementName = entityViewName;
-            workflowType = "Entity";
-        } else {
-            modelElementName = serviceName;
-            workflowType = "Service";
-        }
-
-        //resolve the path location to store the RptDesign file, check if the file already exists under this name and increment index name if needed
-        List<GenericValue> listRptDesigns = null;
-        EntityCondition entityConditionRpt = EntityCondition.makeCondition("contentTypeId", "RPTDESIGN");
-        String templatePathLocation = BirtUtil.resolveTemplatePathLocation();
-        File templatePathLocationDir = new File(templatePathLocation);
-            if (!templatePathLocationDir.exists()) {
-                boolean created = templatePathLocationDir.mkdirs();
-                if (!created) {
-                    new GeneralException(UtilProperties.getMessage(resourceError, "BirtErrorCannotLocateReportFolder", locale));
-                }
-            }
-        int i = 0;
-        String templateFileLocation = null;
-        EntityCondition ecl = null;
-        do {
-            StringBuffer rptDesignNameSb = new StringBuffer(templatePathLocation);
-            rptDesignNameSb.append(BirtUtil.encodeReportName(reportName));
-            rptDesignNameSb.append("_").append(i);
-            rptDesignNameSb.append(".rptdesign");
-            templateFileLocation = rptDesignNameSb.toString();
-            EntityCondition entityConditionOnName = EntityCondition.makeCondition("drObjectInfo", templateFileLocation);
-            ecl = EntityCondition.makeCondition(UtilMisc.toList(entityConditionRpt, entityConditionOnName));
-            i++;
-        } while (EntityQuery.use(delegator).from("ContentDataResourceView").where(ecl).queryCount() > 0);
-
-        //resolve the initial form structure from master content
-        Map<String, Object> resultElectronicText = dispatcher.runSync("getElectronicText", UtilMisc.toMap("contentId", masterContentId, "locale", locale, "userLogin", userLogin));
-        if (ServiceUtil.isError(resultElectronicText)) {
-            new GeneralException(ServiceUtil.getErrorMessage(resultElectronicText));
-        }
-        String reportForm = (String) resultElectronicText.get("textData");
-        if (! reportForm.startsWith("<?xml")) {
-            StringBuffer xmlHeaderForm = new StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
-            xmlHeaderForm.append("<forms xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"http://ofbiz.apache.org/dtds/widget-form.xsd\">");
-            xmlHeaderForm.append(reportForm);
-            xmlHeaderForm.append("</forms>");
-            reportForm = xmlHeaderForm.toString();
-        }
-        FlexibleStringExpander reportFormExpd = FlexibleStringExpander.getInstance(reportForm);
-        reportForm = reportFormExpd.expandString(context);
-
-        //create content and dataressource strucutre
-        dispatcher.runSync("createDataResource", UtilMisc.toMap("dataResourceId", dataResourceId, "dataResourceTypeId", "ELECTRONIC_TEXT", "dataTemplateTypeId", "FORM_COMBINED", "userLogin", userLogin));
-        dispatcher.runSync("createElectronicTextForm", UtilMisc.toMap("dataResourceId", dataResourceId, "textData", reportForm, "userLogin", userLogin));
-        dispatcher.runSync("createContent", UtilMisc.toMap("contentId", contentId, "contentTypeId", "FLEXIBLE_REPORT", "dataResourceId", dataResourceId, "statusId", "CTNT_IN_PROGRESS", "contentName", reportName, "description", description, "userLogin", userLogin));
-        String dataResourceIdRpt = delegator.getNextSeqId("DataResource");
-        String contentIdRpt = delegator.getNextSeqId("Content");
-        String rptDesignName = BirtUtil.encodeReportName(reportName);
-        if (! rptDesignName.endsWith(".rptdesign")) {
-            rptDesignName = rptDesignName.concat(".rptdesign");
-        }
-        dispatcher.runSync("createDataResource", UtilMisc.toMap("dataResourceId", dataResourceIdRpt, "dataResourceTypeId", "LOCAL_FILE", "mimeTypeId", "text/rptdesign", "dataResourceName", rptDesignName, "objectInfo", templateFileLocation, "userLogin", userLogin));
-        dispatcher.runSync("createContent", UtilMisc.toMap("contentId", contentIdRpt, "contentTypeId", "RPTDESIGN", "dataResourceId", dataResourceIdRpt, "statusId", "CTNT_PUBLISHED", "contentName", reportName, "description", description + " (.rptDesign file)", "userLogin", userLogin));
-        dispatcher.runSync("createContentAssoc", UtilMisc.toMap("contentId", masterContentId, "contentIdTo", contentId, "contentAssocTypeId", "SUB_CONTENT", "userLogin", userLogin));
-        dispatcher.runSync("createContentAssoc", UtilMisc.toMap("contentId", contentId, "contentIdTo", contentIdRpt, "contentAssocTypeId", "SUB_CONTENT", "userLogin", userLogin));
-        dispatcher.runSync("createContentAttribute", UtilMisc.toMap("contentId", contentId, "attrName", workflowType, "attrValue", modelElementName, "userLogin", userLogin));
-        return contentId;
-    }
-
-    /**
-     * initialize configuration log with the low level present on debug.properties
-     * @param config
-     */
-    public static void setLogConfig(EngineConfig config) {
-        String ofbizHome = System.getProperty("ofbiz.home");
-        int lowerLevel = 0;
-        //resolve the lower level open on debug.properties, maybe it's better to implement correctly log4j here
-        for (int i = 1; i < 7; i++) {
-            if (Debug.isOn(i)) {
-                lowerLevel = i;
-                break;
-            }
-        }
-        config.setLogConfig(UtilProperties.getPropertyValue("debug", "log4j.appender.css.dir", ofbizHome + "/runtime/logs/"), levelIntMap.get(lowerLevel));
-    }
-}
diff --git a/plugins/birt/src/main/java/org/apache/ofbiz/birt/container/BirtContainer.java b/plugins/birt/src/main/java/org/apache/ofbiz/birt/container/BirtContainer.java
deleted file mode 100644
index 8b8adf3..0000000
--- a/plugins/birt/src/main/java/org/apache/ofbiz/birt/container/BirtContainer.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * 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.
- *******************************************************************************/
-package org.apache.ofbiz.birt.container;
-
-import java.io.File;
-import java.util.List;
-
-import org.eclipse.birt.core.exception.BirtException;
-import org.eclipse.birt.core.framework.Platform;
-import org.eclipse.birt.report.IBirtConstants;
-import org.eclipse.birt.report.engine.api.EngineConfig;
-import org.eclipse.birt.report.engine.api.IReportEngine;
-import org.eclipse.birt.report.engine.api.IReportEngineFactory;
-import org.apache.ofbiz.base.container.Container;
-import org.apache.ofbiz.base.container.ContainerConfig;
-import org.apache.ofbiz.base.container.ContainerException;
-import org.apache.ofbiz.base.start.StartupCommand;
-import org.apache.ofbiz.base.util.Debug;
-import org.apache.ofbiz.birt.BirtFactory;
-import org.apache.ofbiz.birt.BirtWorker;
-
-public class BirtContainer implements Container {
-
-    public static final String module = BirtContainer.class.getName();
-    
-    protected String configFile;
-
-    private String name;
-
-    @Override
-    public void init(List<StartupCommand> ofbizCommands, String name, String configFile) throws ContainerException {
-        this.name = name;
-        this.configFile = configFile;
-    }
-
-    /**
-     * start container
-     */
-    @Override
-    public boolean start() throws ContainerException {
-        Debug.logInfo("Start BIRT container", module);
-
-        // make sure the subclass sets the config name
-        if (getName() == null) {
-            throw new ContainerException("Unknown container config name");
-        }
-        // get the container config
-        ContainerConfig.Configuration cc = ContainerConfig.getConfiguration(getName(), configFile);
-        if (cc == null) {
-            throw new ContainerException("No " + getName() + " configuration found in container config!");
-        }
-
-        // create engine config
-        EngineConfig config = new EngineConfig();
-        String ofbizHome = System.getProperty("ofbiz.home");
-        config.setTempDir(ofbizHome + File.separatorChar + "runtime" + File.separatorChar + "tempfiles");
-
-        // set system properties
-        System.setProperty(IBirtConstants.SYS_PROP_WORKING_PATH, config.getTempDir());
-
-        //Set log config
-        BirtWorker.setLogConfig(config);
-
-        // startup platform
-        try {
-            Debug.logInfo("Startup BIRT platform", module);
-            Platform.startup(config);
-        } catch (BirtException e) {
-            throw new ContainerException(e);
-        }
-
-        // create report engine
-        Debug.logInfo("Create factory object", module);
-        IReportEngineFactory factory = (IReportEngineFactory) Platform
-              .createFactoryObject(IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY);
-        if (factory == null) {
-            throw new ContainerException("can not create birt engine factory");
-        }
-        Debug.logInfo("Create report engine", module);
-        IReportEngine engine = factory.createReportEngine(config);
-        BirtFactory.setReportEngine(engine);
-        
-        // print supported formats
-        String[] supportedFormats = engine.getSupportedFormats();
-        String formatList = null;
-        for (String supportedFormat : supportedFormats) {
-            if (formatList != null) {
-                formatList += ", " + supportedFormat;
-            } else {
-                formatList = supportedFormat;
-            }
-        }
-        Debug.logInfo("BIRT supported formats: " + formatList, module);
-        return false;
-    }
-
-    @Override
-    public void stop() throws ContainerException {
-    }
-
-    @Override
-    public String getName() {
-        return name;
-    }
-}
diff --git a/plugins/birt/src/main/java/org/apache/ofbiz/birt/email/BirtEmailServices.java b/plugins/birt/src/main/java/org/apache/ofbiz/birt/email/BirtEmailServices.java
deleted file mode 100644
index 5086986..0000000
--- a/plugins/birt/src/main/java/org/apache/ofbiz/birt/email/BirtEmailServices.java
+++ /dev/null
@@ -1,269 +0,0 @@
-/*******************************************************************************
- * 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.
- *******************************************************************************/
-package org.apache.ofbiz.birt.email;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.StringWriter;
-import java.sql.SQLException;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.apache.fop.apps.FOPException;
-import org.apache.ofbiz.base.util.Debug;
-import org.apache.ofbiz.base.util.GeneralException;
-import org.apache.ofbiz.base.util.UtilGenerics;
-import org.apache.ofbiz.base.util.UtilMisc;
-import org.apache.ofbiz.base.util.UtilProperties;
-import org.apache.ofbiz.base.util.UtilValidate;
-import org.apache.ofbiz.base.util.collections.MapStack;
-import org.apache.ofbiz.base.util.string.FlexibleStringExpander;
-import org.apache.ofbiz.birt.BirtFactory;
-import org.apache.ofbiz.birt.BirtWorker;
-import org.apache.ofbiz.common.email.NotificationServices;
-import org.apache.ofbiz.entity.Delegator;
-import org.apache.ofbiz.entity.util.EntityUtilProperties;
-import org.apache.ofbiz.security.Security;
-import org.apache.ofbiz.service.DispatchContext;
-import org.apache.ofbiz.service.LocalDispatcher;
-import org.apache.ofbiz.service.GenericServiceException;
-import org.apache.ofbiz.service.ServiceUtil;
-import org.apache.ofbiz.widget.renderer.ScreenRenderer;
-import org.apache.ofbiz.widget.renderer.ScreenStringRenderer;
-import org.apache.ofbiz.widget.renderer.macro.MacroScreenRenderer;
-import org.eclipse.birt.report.engine.api.EngineException;
-import org.eclipse.birt.report.engine.api.IReportEngine;
-import org.eclipse.birt.report.engine.api.IReportRunnable;
-import org.xml.sax.SAXException;
-
-import freemarker.template.TemplateException;
-
-public class BirtEmailServices {
-
-    public static final String module = BirtEmailServices.class.getName();
-    public static final String resource = "BirtUiLabels";
-    /**
-     * send birt mail
-     *
-     * @param ctx the dispatch context
-     * @param context the context
-     * @return returns the result of the service execution
-     */
-    public static Map<String, Object> sendBirtMail(DispatchContext ctx, Map<String, ? extends Object> context) {
-        Map<String, Object> serviceContext = UtilMisc.makeMapWritable(context);
-        Delegator delegator = ctx.getDelegator();
-        LocalDispatcher dispatcher = ctx.getDispatcher();
-        Security security = ctx.getSecurity();
-        
-        String webSiteId = (String) serviceContext.remove("webSiteId");
-        String bodyText = (String) serviceContext.remove("bodyText");
-        String bodyScreenUri = (String) serviceContext.remove("bodyScreenUri");
-        String birtReportLocation = (String) serviceContext.remove("birtReportLocation");
-        String attachmentName = (String) serviceContext.remove("attachmentName");
-        Locale locale = (Locale) serviceContext.get("locale");
-        Map<String, Object> bodyParameters = UtilGenerics.cast(serviceContext.remove("bodyParameters"));
-