svn commit: r1213245 [1/3] - in /ofbiz/branches/jackrabbit20100709: ./ applications/content/src/org/ofbiz/content/content/ applications/marketing/widget/sfa/ applications/marketing/widget/sfa/forms/ applications/order/config/ applications/order/src/org...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1213245 [1/3] - in /ofbiz/branches/jackrabbit20100709: ./ applications/content/src/org/ofbiz/content/content/ applications/marketing/widget/sfa/ applications/marketing/widget/sfa/forms/ applications/order/config/ applications/order/src/org...

sascharodekamp
Author: sascharodekamp
Date: Mon Dec 12 13:53:03 2011
New Revision: 1213245

URL: http://svn.apache.org/viewvc?rev=1213245&view=rev
Log:
Update the Jackrabbit branch with the current trunk version to keep the branch up to date

Added:
    ofbiz/branches/jackrabbit20100709/applications/product/src/org/ofbiz/product/imagemanagement/ImageManagementHelper.java
      - copied unchanged from r1213212, ofbiz/trunk/applications/product/src/org/ofbiz/product/imagemanagement/ImageManagementHelper.java
    ofbiz/branches/jackrabbit20100709/applyOfbizPatchesAndHotDeploy.sh
      - copied unchanged from r1213212, ofbiz/trunk/applyOfbizPatchesAndHotDeploy.sh
    ofbiz/branches/jackrabbit20100709/framework/images/webapp/images/jquery/plugins/hotkeys/jquery.hotkeys-0.7.9.js
      - copied unchanged from r1213212, ofbiz/trunk/framework/images/webapp/images/jquery/plugins/hotkeys/jquery.hotkeys-0.7.9.js
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/webapp/ecommerce/error/404.jsp
      - copied unchanged from r1213212, ofbiz/trunk/specialpurpose/ecommerce/webapp/ecommerce/error/404.jsp
Removed:
    ofbiz/branches/jackrabbit20100709/framework/images/webapp/images/jquery/plugins/hotkeys/jquery.hotkeys.js
Modified:
    ofbiz/branches/jackrabbit20100709/   (props changed)
    ofbiz/branches/jackrabbit20100709/applications/content/src/org/ofbiz/content/content/ContentWorker.java
    ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/LookupScreens.xml
    ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/forms/OpportunityForms.xml
    ofbiz/branches/jackrabbit20100709/applications/order/config/OrderErrorUiLabels.xml
    ofbiz/branches/jackrabbit20100709/applications/order/config/order.properties
    ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java
    ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java
    ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartEvents.java
    ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
    ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java
    ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java
    ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderReportBody.fo.ftl
    ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderitems.ftl
    ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/WEB-INF/actions/party/EditShoppingList.groovy
    ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/party/editShoppingList.ftl
    ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/PartyForms.xml
    ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml
    ofbiz/branches/jackrabbit20100709/applications/product/script/org/ofbiz/product/product/ProductServices.xml
    ofbiz/branches/jackrabbit20100709/applications/product/servicedef/services.xml
    ofbiz/branches/jackrabbit20100709/applications/product/webapp/catalog/WEB-INF/actions/imagemanagement/ImageGallery.groovy
    ofbiz/branches/jackrabbit20100709/applications/product/webapp/catalog/WEB-INF/actions/imagemanagement/SetDefaultImage.groovy
    ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/WEB-INF/controller.xml
    ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/facility/PicklistManage.ftl
    ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/ImageManagementForms.xml
    ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/ProductForms.xml
    ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/FacilityMenus.xml
    ofbiz/branches/jackrabbit20100709/applications/workeffort/config/WorkEffortUiLabels.xml
    ofbiz/branches/jackrabbit20100709/framework/base/config/ofbiz-containers.xml
    ofbiz/branches/jackrabbit20100709/framework/base/src/org/ofbiz/base/util/StringUtil.java
    ofbiz/branches/jackrabbit20100709/framework/common/config/CommonErrorUiLabels.xml
    ofbiz/branches/jackrabbit20100709/framework/common/widget/CommonScreens.xml
    ofbiz/branches/jackrabbit20100709/framework/images/webapp/images/fieldlookup.js
    ofbiz/branches/jackrabbit20100709/framework/webapp/src/org/ofbiz/webapp/control/ContextFilter.java
    ofbiz/branches/jackrabbit20100709/framework/webapp/src/org/ofbiz/webapp/ftl/OfbizUrlTransform.java
    ofbiz/branches/jackrabbit20100709/framework/widget/templates/htmlFormMacroLibrary.ftl
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/data/DemoProductAdditionalViewData.xml
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/webapp/ecommerce/WEB-INF/controller.xml
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/webapp/ecommerce/WEB-INF/web.xml
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/webapp/ecommerce/cart/showcart.ftl
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/webapp/ecommerce/catalog/productdetail.ftl
    ofbiz/branches/jackrabbit20100709/specialpurpose/ecommerce/webapp/ecommerce/order/orderitems.ftl
    ofbiz/branches/jackrabbit20100709/themes/bizznesstime/includes/messages.ftl

Propchange: ofbiz/branches/jackrabbit20100709/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Dec 12 13:53:03 2011
@@ -2,4 +2,4 @@
 /ofbiz/branches/dojo1.4:951708-952957
 /ofbiz/branches/jquery:952958-1044489
 /ofbiz/branches/multitenant20100310:921280-927264
-/ofbiz/trunk:962442-1207000
+/ofbiz/trunk:962442-1213212

Modified: ofbiz/branches/jackrabbit20100709/applications/content/src/org/ofbiz/content/content/ContentWorker.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/content/src/org/ofbiz/content/content/ContentWorker.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/content/src/org/ofbiz/content/content/ContentWorker.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/content/src/org/ofbiz/content/content/ContentWorker.java Mon Dec 12 13:53:03 2011
@@ -1435,13 +1435,10 @@ public class ContentWorker implements or
         thisNode.put("isReturnAfterPick", Boolean.FALSE);
         thisNode.put("isPick", Boolean.TRUE);
         thisNode.put("isFollow", Boolean.TRUE);
-        try {
+        if (thisContent.getModelEntity().getField("caContentAssocTypeId") != null) {
             thisNode.put("contentAssocTypeId", thisContent.get("caContentAssocTypeId"));
             thisNode.put("mapKey", thisContent.get("caMapKey"));
             thisNode.put("fromDate", thisContent.get("caFromDate"));
-            thisNode.put("contentAssocTypeId", thisContent.get("caContentAssocTypeId"));
-        } catch (Exception e) {
-            // This ignores the case when thisContent does not have ContentAssoc values
         }
         return thisNode;
     }

Modified: ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/LookupScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/LookupScreens.xml?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/LookupScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/LookupScreens.xml Mon Dec 12 13:53:03 2011
@@ -28,10 +28,14 @@ under the License.
                 <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="MarketingUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
+                <set field="queryString" from-field="result.queryString"/>
                 <set field="partyRelationshipTypeId" value="LEAD_OWNER"/>
                 <set field="title" value="${uiLabelMap.SfaFindLeads}"/>
                 <set field="partyTypeId" value="PERSON"/>
                 <set field="currentUrl" value="LookupLeads"/>
+                <set field="entityName" value="PartyRoleAndContactMechDetail"/>
+                <set field="searchFields" value="[partyId, firstName, lastName, middleName, groupName]"/>
+                <set field="searchDistinct" value="true"/>
                 <service service-name="findParty" auto-field-map="true"/>
             </actions>
             <widgets>
@@ -53,10 +57,14 @@ under the License.
                 <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="MarketingUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
+                <set field="queryString" from-field="result.queryString"/>
                 <set field="partyRelationshipTypeId" value="ACCOUNT"/>
                 <set field="title" value="${uiLabelMap.SfaFindAccounts}"/>
                 <set field="partyTypeId" value="PARTY_GROUP"/>
                 <set field="currentUrl" value="LookupAccounts"/>
+                <set field="entityName" value="PartyRoleAndContactMechDetail"/>
+                <set field="searchFields" value="[partyId, firstName, lastName, middleName, groupName]"/>
+                <set field="searchDistinct" value="true"/>
                 <service service-name="findParty" auto-field-map="true"/>
             </actions>
             <widgets>
@@ -78,10 +86,14 @@ under the License.
                 <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="MarketingUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
+                <set field="queryString" from-field="result.queryString"/>
                 <set field="partyRelationshipTypeId" value="ACCOUNT"/>
                 <set field="title" value="${uiLabelMap.SfaFindAccountLeads}"/>
                 <set field="partyTypeId" value="PARTY_GROUP"/>
                 <set field="currentUrl" value="LookupAccountLeads"/>
+                <set field="entityName" value="PartyRoleAndContactMechDetail"/>
+                <set field="searchFields" value="[partyId, firstName, lastName, middleName, groupName]"/>
+                <set field="searchDistinct" value="true"/>
                 <service service-name="findParty" auto-field-map="true"/>
             </actions>
             <widgets>

Modified: ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/forms/OpportunityForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/forms/OpportunityForms.xml?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/forms/OpportunityForms.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/marketing/widget/sfa/forms/OpportunityForms.xml Mon Dec 12 13:53:03 2011
@@ -25,6 +25,7 @@ under the License.
         header-row-style="header-row" default-table-style="basic-table">
         <field name="salesOpportunityId"><hidden/></field>
         <field name="opportunityName" title="${uiLabelMap.SfaFindOpportunities}"><text-find size="25"></text-find></field>
+        <field name="partyId" title="${uiLabelMap.SfaLead}"><lookup target-form-name="LookupLeads"/></field>
         <field name="opportunityStageId" title="${uiLabelMap.SfaInitialStage}">
             <drop-down allow-empty="true">
                 <entity-options description="${description}" entity-name="SalesOpportunityStage">
@@ -32,7 +33,7 @@ under the License.
                 </entity-options>
             </drop-down>
         </field>
-        <field name="type" title="${uiLabelMap.SfaType}">
+        <field name="typeEnumId" title="${uiLabelMap.SfaType}">
             <drop-down allow-empty="true">
                 <entity-options key-field-name="enumId" description="${description}" entity-name="Enumeration">
                     <entity-constraint name="enumTypeId" operator="equals" value="SLSOPP_TYP_ENUM"/>
@@ -47,16 +48,24 @@ under the License.
         odd-row-style="alternate-row" default-table-style="basic-table hover-bar" header-row-style="header-row-2">
         <actions>
             <set field="parameters.noConditionFind" value="Y"/>
+            <set field="opportunityStageId" from-field="parameters.opportunityStageId"/>
+            <set field="parameters.opportunityStageId" value="${groovy:opportunityStageId==null?&quot;SOSTG_CLOSED&quot;:opportunityStageId}"/>
+            <set field="parameters.opportunityStageId_op" value="${groovy:opportunityStageId==null?&quot;notEqual&quot;:&quot;equals&quot;}"/>
+            <set field="parameters.roleTypeId" value="LEAD"/>
+            <set field="fieldList" value="${groovy:[&quot;partyId&quot;,&quot;salesOpportunityId&quot;,&quot;opportunityStageId&quot;,&quot;typeEnumId&quot;]}" type="List"/>
             <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="SalesOpportunity"/>
+                <field-map field-name="entityName" value="SalesOpportunityAndRole"/>
                 <field-map field-name="orderBy" from-field="parameters.sortField"/>
+                <field-map field-name="fieldList" from-field="fieldList"/>
+                <field-map field-name="distinct" value="Y"/>
                 <field-map field-name="viewIndex" from-field="viewIndex"/>
                 <field-map field-name="viewSize" from-field="viewSize"/>
             </service>
         </actions>
         <row-actions>
             <set field="isDateAfterNow" value="${groovy:org.ofbiz.base.util.UtilValidate.isDateAfterNow(estimatedCloseDate)}" type="Boolean"/>
+            <entity-one entity-name="SalesOpportunity"/>
         </row-actions>
         <field name="salesOpportunityId"><hidden/></field>
         <field name="opportunityName" title="${uiLabelMap.SfaOpportunityName}">
@@ -65,6 +74,13 @@ under the License.
             </hyperlink>
         </field>
         <field name="opportunityStageId" title="${uiLabelMap.SfaInitialStage}"><display-entity entity-name="SalesOpportunityStage" description="${description}"/></field>
+        <field name="partyId" title="${uiLabelMap.SfaLead}">
+            <display-entity entity-name="PartyNameView" description="${firstName} ${lastName} ${middleName} ${groupName}" key-field-name="partyId">
+                <sub-hyperlink target="viewprofile" description=" [${partyId}]">
+                    <parameter param-name="partyId" from-field="partyId"/>
+                </sub-hyperlink>
+            </display-entity>
+        </field>
         <field name="nextStep"><display/></field>
         <field name="estimatedAmount" title="${uiLabelMap.SfaEstimatedAmount}"><display/></field>
         <field name="nextStepDate" position="1" title="${uiLabelMap.SfaNextStepDate}" sort-field="true"><display/></field>
@@ -135,10 +151,10 @@ under the License.
                 </entity-options>
             </drop-down>
         </field>
-        <field name="accountPartyId" use-when="communicationEvent==null" title="${uiLabelMap.SfaInitialAccount}" ><lookup target-form-name="LookupAccounts" default-value="${accountPartyId}"/></field>
-        <field name="accountPartyId" use-when="communicationEvent!=null" title="${uiLabelMap.SfaInitialAccount}" ><lookup target-form-name="LookupAccounts" default-value="${accountPartyId}"/></field>
-        <field name="leadPartyId" use-when="communicationEvent==null" title="${uiLabelMap.SfaLead}" widget-style="required"><lookup target-form-name="LookupLeads" default-value="${leadPartyId}"/></field>
-        <field name="leadPartyId" use-when="communicationEvent!=null" title="${uiLabelMap.SfaLead}" widget-style="required"><lookup target-form-name="LookupLeads" default-value="${communicationEvent.partyIdFrom}"/></field>
+        <field name="accountPartyId" use-when="communicationEvent==null" title="${uiLabelMap.SfaInitialAccount}" ><lookup target-form-name="LookupPartyGroup" default-value="${accountPartyId}"/></field>
+        <field name="accountPartyId" use-when="communicationEvent!=null" title="${uiLabelMap.SfaInitialAccount}" ><lookup target-form-name="LookupPartyGroup" default-value="${accountPartyId}"/></field>
+        <field name="leadPartyId" use-when="communicationEvent==null" title="${uiLabelMap.SfaLead}" widget-style="required"><lookup target-form-name="LookupPerson" default-value="${leadPartyId}"/></field>
+        <field name="leadPartyId" use-when="communicationEvent!=null" title="${uiLabelMap.SfaLead}" widget-style="required"><lookup target-form-name="LookupPerson" default-value="${communicationEvent.partyIdFrom}"/></field>
         <field name="submitButton" title="${uiLabelMap.CommonSave}" use-when="salesOpportunity==null"><submit button-type="button"/></field>
         <field name="submitButton" title="${uiLabelMap.CommonUpdate}" use-when="salesOpportunity!=null"><submit button-type="button"/></field>
     </form>

Modified: ofbiz/branches/jackrabbit20100709/applications/order/config/OrderErrorUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/config/OrderErrorUiLabels.xml?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/config/OrderErrorUiLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/config/OrderErrorUiLabels.xml Mon Dec 12 13:53:03 2011
@@ -2040,6 +2040,7 @@
         <value xml:lang="zh_TW">獲得訂單明細記錄時出現問題</value>
     </property>
     <property key="OrderProblemGettingProductStoreRecords">
+        <value xml:lang="de">Problem beim lesen der Laden-Informationen</value>
         <value xml:lang="en">Problem getting ProductStore records</value>
         <value xml:lang="es">Hay un problema al obtener entradas de tienda</value>
         <value xml:lang="fr">Problème à l'obtention des données du centre de profit</value>
@@ -2051,6 +2052,7 @@
         <value xml:lang="zh_TW">獲得產品店鋪記錄時出錯</value>
     </property>
     <property key="OrderProblemGettingTheRecordIterator">
+        <value xml:lang="de">Problem mit dem 'Record Iterator'</value>
         <value xml:lang="en">Problem getting the Record Iterator</value>
         <value xml:lang="es">Problema obteniendo el iterador de registro</value>
         <value xml:lang="fr">Problème en obtenant le rapport Iterator</value>
@@ -2063,6 +2065,7 @@
         <value xml:lang="zh_TW">獲得記錄迭代器時出現問題</value>
     </property>
     <property key="OrderProblemOccurredInTaxService">
+        <value xml:lang="de">Problem beim Steuer-Serviceprogramm</value>
         <value xml:lang="en">Problem occurred in tax service</value>
         <value xml:lang="es">Problema ocurrido en servicio de impuestos</value>
         <value xml:lang="fr">Problème est arrivé dans le service fiscal</value>
@@ -2075,6 +2078,7 @@
         <value xml:lang="zh_TW">稅務服務里發生問題</value>
     </property>
     <property key="OrderProblemSendingEmail">
+        <value xml:lang="de">Problem beim senden von Email</value>
         <value xml:lang="en">Problem sending email</value>
         <value xml:lang="es">Problema enviando email</value>
         <value xml:lang="fr">Problème en envoyant des messages</value>
@@ -2087,6 +2091,7 @@
         <value xml:lang="zh_TW">發送電子郵件時出現問題</value>
     </property>
     <property key="OrderProblemStoringReceivedPaymentInformation">
+        <value xml:lang="de"> Problem beim speichern von erhaltenen Zahlungeinformationen.</value>
         <value xml:lang="en"> Problem storing received payment information.</value>
         <value xml:lang="es"> Problema almacenando la información recibida del pago.</value>
         <value xml:lang="fr"> Problème en enregistrant les informations de paiement recus. </value>
@@ -2099,6 +2104,7 @@
         <value xml:lang="zh_TW"> 存儲接收到的支付資訊時出現問題。</value>
     </property>
     <property key="OrderProblemStoringReturnItemUpdates">
+        <value xml:lang="de">Problem beim speichern von Retourenpositionen</value>
         <value xml:lang="en">Problem storing ReturnItem updates</value>
         <value xml:lang="es">Problema almacenando actualizaciones de los ítems de devolución</value>
         <value xml:lang="fr">Problème en enregistrant les mises à jour des retours d'articles</value>
@@ -2123,6 +2129,7 @@
         <value xml:lang="zh_TW">更新退貨明細 (returnItemResponseId) 時出現問題</value>
     </property>
     <property key="OrderProblemWithEntityLookup">
+        <value xml:lang="de">Problem beim lesen von der Datenbank</value>
         <value xml:lang="en">Problem with entity lookup</value>
         <value xml:lang="es">Problema con la consulta de entidades</value>
         <value xml:lang="fr">Problème avec la consultation d'entités</value>
@@ -2135,6 +2142,7 @@
         <value xml:lang="zh_TW">查找實體時出現問題</value>
     </property>
     <property key="OrderProblemWithEntityLookupSeeErrorLog">
+        <value xml:lang="de">Problem beim lesen von der Datenbank, siehe Error-Log</value>
         <value xml:lang="en">Problem with entity lookup, see error log</value>
         <value xml:lang="es">Problema con la consulta de entidades, observe los registros de errores</value>
         <value xml:lang="fr">Problème avec la consultation d'entités, regardez les logs d'erreurs</value>
@@ -2147,6 +2155,7 @@
         <value xml:lang="zh_TW">查找實體事出現問題,參見錯誤日誌</value>
     </property>
     <property key="OrderProblemWithInvoiceCreationDigitalItemsNotFulfilled">
+        <value xml:lang="de">Problem bei der Rechnungserstellung; Digitale Artikel konnten nicht ausgeliefert werden. </value>
         <value xml:lang="en">Problem with invoice creation; digital items not fulfilled. </value>
         <value xml:lang="es">Problema con la creación de una factura; artículos digitales no realizados</value>
         <value xml:lang="fr">Problème avec la création d'une facture; articles digitaux non accomplis. </value>
@@ -2159,6 +2168,7 @@
         <value xml:lang="zh_TW">創建發票時出現問題;數字明細沒有執行。 </value>
     </property>
     <property key="OrderProblemWithInvoiceCreationServiceItems">
+        <value xml:lang="de">Problem bei der Rechnungserstellung mit Service-Positionen</value>
         <value xml:lang="en">Problem with invoice creation service items</value>
         <value xml:lang="fr">Problème dans la génération de la facture sur les lignes de service</value>
         <value xml:lang="it">Problema con il servizio di creazione righe fattura</value>
@@ -2167,6 +2177,7 @@
         <value xml:lang="zh_TW">隨發票創建服務明細時出錯</value>
     </property>
     <property key="OrderProblemsAddingItemFromListToCart">
+        <value xml:lang="de">Problem beim hinzufügen einer Position aus der Liste zum Warenkorb</value>
         <value xml:lang="en">Problems adding item from list to cart</value>
         <value xml:lang="es">Problemas agregando ítem de una lista hacia el carro</value>
         <value xml:lang="fr">Problèmes en ajoutant un article dans le chariot</value>
@@ -2179,6 +2190,7 @@
         <value xml:lang="zh_TW">把明細從列表添加到購物車時出現問題</value>
     </property>
     <property key="OrderProblemsCreatingBillingAccount">
+        <value xml:lang="de">Problem bei der Erstellung des Rechnungskontos</value>
         <value xml:lang="en">Problems creating billing account</value>
         <value xml:lang="es">Problemas creando cuenta de facturación</value>
         <value xml:lang="fr">Problèmes en créant le compte de facturation</value>
@@ -2191,11 +2203,13 @@
         <value xml:lang="zh_TW">創建賬單賬戶時出現問題</value>
     </property>
     <property key="OrderProblemsCreatingFinAccountForStore">
+        <value xml:lang="de">Problem bei der Erstellung des Finanzkontos für den Laden</value>
         <value xml:lang="en">Problems creating FinAccount for Store</value>
         <value xml:lang="fr">Problème lors de la création du compte financier pour le magasin</value>
         <value xml:lang="pt_BR">Problemas ao criar FinAccount (Conta de financiamento) para loja</value>
     </property>
     <property key="OrderProblemsCreatingReturnItemResponseEntity">
+        <value xml:lang="de">Problem bei der Erstellung einer Retouren-Positions-Antwort</value>
         <value xml:lang="en">Problems creating ReturnItemResponse entity</value>
         <value xml:lang="es">Problemas creando la entidad de respuesta de devolución de ítem</value>
         <value xml:lang="fr">Problèmes en créant l'entité de réponse de retour d'article</value>
@@ -2208,6 +2222,7 @@
         <value xml:lang="zh_TW">創建退貨明細回答實體時出現問題</value>
     </property>
     <property key="OrderProblemsGettingContactMechFromOrderContactMech">
+        <value xml:lang="de">Problem beim ermitteln einer Kontaktinformation von der Auftrags-Kontaktinformation</value>
         <value xml:lang="en">Problems getting contact mech from order contact mech</value>
         <value xml:lang="es">Problemas obteniendo método de contacto del método de contacto del pedido</value>
         <value xml:lang="fr">Problèmes en obtenant le contact mech du contact mech de la commande</value>
@@ -2220,6 +2235,7 @@
         <value xml:lang="zh_TW">從訂單聯系方式獲得聯系方式時出現問題</value>
     </property>
     <property key="OrderProblemsGettingOrderContactMechs">
+        <value xml:lang="de">Problem beim ermitteln der Auftrags-Kontaktinformation</value>
         <value xml:lang="en">Problems getting order contact mechs</value>
         <value xml:lang="es">Problemas obteniendo métodos de contacto del pedido</value>
         <value xml:lang="fr">Problèmes en obtenant les contact mechs de la commande</value>
@@ -2232,6 +2248,7 @@
         <value xml:lang="zh_TW">獲得訂單聯系方式時出現問題</value>
     </property>
     <property key="OrderProblemsGettingOrderItemTypeFor">
+        <value xml:lang="de">Problem bei der Ermittlung der Auftrags-Positions-Art für : ${orderItemTypeId}</value>
         <value xml:lang="en">Problems getting OrderItemType for : ${orderItemTypeId}</value>
         <value xml:lang="es">Problemas obteniendo el tipo de ítem de pedido para: ${orderItemTypeId}</value>
         <value xml:lang="fr">Problèmes en obtenant le type d'article de la commande pour : ${orderItemTypeId}</value>
@@ -2244,6 +2261,7 @@
         <value xml:lang="zh_TW">獲得訂單明細類型時出錯:${orderItemTypeId}</value>
     </property>
     <property key="OrderProblemsGettingPartyRecord">
+        <value xml:lang="de">Problem beim lesen des Akteurs</value>
         <value xml:lang="en">Problems getting Party record</value>
         <value xml:lang="es">Problemas obteniendo registro de participante</value>
         <value xml:lang="fr">Problèmes en obtenant l'enregistrement de l'acteur</value>
@@ -2256,6 +2274,7 @@
         <value xml:lang="zh_TW">獲得會員記錄時出現問題</value>
     </property>
     <property key="OrderProblemsGettingTheCartItemByIndex">
+        <value xml:lang="de">Problem beim ermitteln der Warenkorb-Position per Index</value>
         <value xml:lang="en">Problems getting the cart item by index</value>
         <value xml:lang="es">Problemas obteniendo el ítem del carro por el índice</value>
         <value xml:lang="fr">Problèmes en obtenant l'article du chariot par l'index</value>
@@ -2268,6 +2287,7 @@
         <value xml:lang="zh_TW">通過索引獲得購物車明細時出現問題</value>
     </property>
     <property key="OrderProblemsInvokingTheCompleteAssignmentService">
+        <value xml:lang="de">Problem beim ausführen vom gesamten Zuweisungs-Services</value>
         <value xml:lang="en">Problems invoking the complete assignment service</value>
         <value xml:lang="es">Problemas invocando el servicio completo de asignación</value>
         <value xml:lang="fr">Problèmes à l'invocation du service d'achèvement d'affectation</value>
@@ -2280,6 +2300,7 @@
         <value xml:lang="zh_TW">啟動完成分派服務時出現問題</value>
     </property>
     <property key="OrderProblemsPaymentParsingAmount">
+        <value xml:lang="de"> Probleme beim verarbeiten des Zahlungsbetrages. </value>
         <value xml:lang="en"> Problems payment parsing amount. </value>
         <value xml:lang="es"> Problemas de pago analizando monto.</value>
         <value xml:lang="fr"> Problèmes de paiement en faisant l'analyse syntaxique de quantité. </value>
@@ -2292,6 +2313,7 @@
         <value xml:lang="zh_TW"> 解析支付金額時出現問題。 </value>
     </property>
     <property key="OrderProblemsReadingOrderHeaderInformation">
+        <value xml:lang="de"> Problem beim lesen des Auftragskopfes.</value>
         <value xml:lang="en"> Problems reading order header information.</value>
         <value xml:lang="es"> Problemas leyendo la información del encabezado del pedido.</value>
         <value xml:lang="fr"> Problèmes en lisant les informations de l'en-tête de commande</value>
@@ -2304,11 +2326,13 @@
         <value xml:lang="zh_TW"> 讀取訂單頭資訊時出現問題。</value>
     </property>
     <property key="OrderProblemsReadingOrderItemInformation">
+        <value xml:lang="de">Fehler beim lesen der Auftragsposition: ${errorString}</value>
         <value xml:lang="en">Error reading the OrderItem: ${errorString}</value>
         <value xml:lang="fr">Erreur lors de la lecture de la ligne de commande : ${errorString}</value>
         <value xml:lang="it">Errore durante la lettura informazioni della riga ordine: ${errorString}</value>
     </property>
     <property key="OrderProblemsStoringOrderEmailContactInformation">
+        <value xml:lang="de">Problem beim speichern der Email-Kontaktinformationen</value>
         <value xml:lang="en">Problems storing order email contact information</value>
         <value xml:lang="es">Problemas almacenando la información del contacto de email</value>
         <value xml:lang="fr">Problèmes en stockant les informations des contacts mail</value>
@@ -2321,6 +2345,7 @@
         <value xml:lang="zh_TW">存儲訂單電子郵件聯系資訊時出現問題</value>
     </property>
     <property key="OrderProblemsWithCheckPaymentAmountForRefund">
+        <value xml:lang="de">Problem mit dem Betrag der Scheckzahlung für die Rückerstattung </value>
         <value xml:lang="en">Problems with check payment amount for refund</value>
         <value xml:lang="fr">Problème avec la vérification du montant du paiement pour le remboursement</value>
         <value xml:lang="it">Problema nel controllo importo pagamento per reso</value>
@@ -2329,6 +2354,7 @@
         <value xml:lang="zh_TW">檢查退款支付金額時出現問題</value>
     </property>
     <property key="OrderProblemsWithGetPartyAcctgPreferences">
+        <value xml:lang="de">Problem beim lesen der Akteurs-Konteneinstellungen. </value>
         <value xml:lang="en">Problems with getting PartyAcctgPreference. </value>
         <value xml:lang="es">Hay problemas al obtener preferencias de contabilidad de participante.</value>
         <value xml:lang="fr">Problème à l'obtention des préférences comptabilité de l'acteur</value>
@@ -2338,6 +2364,7 @@
         <value xml:lang="zh_TW">獲取會員優先使用的賬戶時出現問題</value>
     </property>
     <property key="OrderProblemsWithGetReturnAmountByOrder">
+        <value xml:lang="de">Problem beim ermitteln der Retourenmenge zum Auftrag</value>
         <value xml:lang="en">Problems with getting return amount by order</value>
         <value xml:lang="fr">Problème avec la récupération du montant du retour par commande</value>
         <value xml:lang="it">Problema nell'ottenere importo reso dell'ordine</value>
@@ -2346,6 +2373,7 @@
         <value xml:lang="zh_TW">按訂單獲取退貨金額時出現問題</value>
     </property>
     <property key="OrderProblemsWithPaymentTypeLookup">
+        <value xml:lang="de">Problem mit Zahlungsart-Suchhilfe. </value>
         <value xml:lang="en">Problems with PaymentType lookup. </value>
         <value xml:lang="es">Problemas con la consulta del tipo de pago.</value>
         <value xml:lang="fr">Problèmes à la consultation du type de paiement. </value>
@@ -2358,6 +2386,7 @@
         <value xml:lang="zh_TW">查找支付類型時出現問題。 </value>
     </property>
     <property key="OrderProblemsWithTheRefundSeeLogs">
+        <value xml:lang="de">Probleme mit Rückerstattung; siehe Logs</value>
         <value xml:lang="en">Problems with the refund; see logs</value>
         <value xml:lang="es">Problemas con el reembolso; observe los registros</value>
         <value xml:lang="fr">Problèmes au remboursement; voir les logs</value>
@@ -2370,6 +2399,7 @@
         <value xml:lang="zh_TW">退款時出現問題;參見日誌</value>
     </property>
     <property key="OrderProductNotExist">
+        <value xml:lang="de">Produkt existiert nicht</value>
         <value xml:lang="en">Product not exist</value>
         <value xml:lang="es">Producto inexistente</value>
         <value xml:lang="fr">Article inexistant</value>
@@ -2382,6 +2412,7 @@
         <value xml:lang="zh_TW">產品不存在</value>
     </property>
     <property key="OrderProductNotFound">
+        <value xml:lang="de">Produkt nicht gefunden ! </value>
         <value xml:lang="en">Product not found ! </value>
         <value xml:lang="es">Producto no encontrado !</value>
         <value xml:lang="fr">Article introuvable ! </value>
@@ -2394,6 +2425,7 @@
         <value xml:lang="zh_TW">產品沒有找到! </value>
     </property>
     <property key="OrderProductStoreNotExist">
+        <value xml:lang="de">Laden existiert nicht</value>
         <value xml:lang="en">Product store not exist</value>
         <value xml:lang="es">Tienda inexistente</value>
         <value xml:lang="fr">Centre de profit inexistant</value>
@@ -2406,6 +2438,7 @@
         <value xml:lang="zh_TW">產品店鋪不存在</value>
     </property>
     <property key="OrderQuickAddOrderItemError">
+        <value xml:lang="de">Schnelles Hinzufügen von Auftragspositionen</value>
         <value xml:lang="en">Quick  Add  Order  Item</value>
         <value xml:lang="es">Agregar rápidamente ítems a el pedido</value>
         <value xml:lang="fr">Ajout rapide d'une ligne de commande</value>
@@ -2416,6 +2449,7 @@
         <value xml:lang="zh_TW">快速添加訂單明細</value>
     </property>
     <property key="OrderQuotePercent">
+        <value xml:lang="de">Angebotsprozente</value>
         <value xml:lang="en">Quote Percent</value>
         <value xml:lang="es">Porcentaje de presupuesto</value>
         <value xml:lang="fr">Pourcentage de devis</value>
@@ -2426,26 +2460,31 @@
         <value xml:lang="zh_TW">詢價百分比</value>
     </property>
     <property key="OrderQuoteStatusChangeIsNotValid">
+        <value xml:lang="de">Die Statusänderung von ${quote.statusId} nach ${parameters.statusId} ist kein gültiger Wechsel</value>
         <value xml:lang="en">The status change from ${quote.statusId} to ${parameters.statusId} is not a valid change</value>
         <value xml:lang="fr">Le changement de statut de ${quote.statusId} à ${parameters.statusId} n'est pas autorisé</value>
         <value xml:lang="it">Il cambio di stato da ${quote.statusId} a ${parameters.statusId} non è consentito</value>
     </property>
     <property key="OrderQuoteNotARequest">
+        <value xml:lang="de">FEHLER: Kundenanfrage ${custRequest.custRequestId} ist keine Angebotsanfrage.</value>
         <value xml:lang="en">ERROR: CustRequest ${custRequest.custRequestId} is not a request for quote.</value>
         <value xml:lang="fr">ERREUR : La demande ${custRequest.custRequestId} n'est pas prévue pour générer un devis.</value>
         <value xml:lang="it">ERRORE: Richiesta ${custRequest.custRequestId} non è richiesta di preventivo.</value>
     </property>
     <property key="OrderQuoteNotAWorkEffort">
+        <value xml:lang="de">FEHLER: Arbeitsaufwand für Angebot ${parameters.quoteId} ${parameters.workEffortId} ist schon vorhanden.</value>
         <value xml:lang="en">ERROR: QuoteWorkEffort ${parameters.quoteId} ${parameters.workEffortId} already exists.</value>
         <value xml:lang="fr">ERREUR : La tâche de devis ${parameters.quoteId} ${parameters.workEffortId} existe déjà.</value>
         <value xml:lang="it">ERRORE: Impegno di lavoro ${parameters.quoteId} ${parameters.workEffortId} non è preventivo di impegno di lavoro.</value>
     </property>
     <property key="OrderQuoteWorkEffortDoesNotExists">
+        <value xml:lang="de">FEHLER: Arbeitsaufwand für Angebot ${parameters.quoteId} ${parameters.workEffortId} ist nicht vorhanden.</value>
         <value xml:lang="en">ERROR: QuoteWorkEffort ${parameters.quoteId} ${parameters.workEffortId} does not exist.</value>
         <value xml:lang="fr">ERREUR : La tâche de devis ${parameters.quoteId} ${parameters.workEffortId} n'existe pas.</value>
         <value xml:lang="it">ERRORE: Impegno di lavoro ${parameters.quoteId} ${parameters.workEffortId} non esiste.</value>
     </property>
     <property key="OrderReceivedNullForOrderItemRecordsOrderId">
+        <value xml:lang="de">Angebotsposition zu Auftrag ${orderId} ist NULL</value>
         <value xml:lang="en">Received NULL for OrderItem records orderId : ${orderId}</value>
         <value xml:lang="es">Se recibió nulo para los registros de ítems del pedido con código: ${orderId}</value>
         <value xml:lang="fr">Reception nulle pour les enregistrements d'article de la commande de l'identifiant : ${orderId}</value>
@@ -2458,6 +2497,7 @@
         <value xml:lang="zh_TW">接收到的訂單ID為 ${orderId} 的訂單明細記錄是 NULL</value>
     </property>
     <property key="OrderRefundAmountExceedsOrderTotal">
+        <value xml:lang="de">Rückerstattungsbetrag übersteigt Auftragssumme</value>
         <value xml:lang="en">Refund Amount Exceeds Order Total</value>
         <value xml:lang="fr">Le montant de remboursement dépasse le montant de la commande</value>
         <value xml:lang="it">Importo restituito eccede il totale ordine</value>
@@ -2466,6 +2506,7 @@
         <value xml:lang="zh_TW">退款金額超出訂單總額</value>
     </property>
     <property key="OrderRemoveCommunicationEventOrderPermissionError">
+        <value xml:lang="de">Berechtigungsfehler bei löschen eines Kommunikationsereignisses</value>
         <value xml:lang="en">Remove Communication Event Order Permission Error</value>
         <value xml:lang="fr">Vous n'êtes pas autorisé à supprimer une communication associée à une commande</value>
         <value xml:lang="it">Errore permesso durante la rimozione di un'evento comunicazione</value>
@@ -2474,6 +2515,7 @@
         <value xml:lang="zh_TW">刪除溝通事件時發生訂單權限錯誤</value>
     </property>
     <property key="OrderRentalOrderItems">
+        <value xml:lang="de">Auftrag enthält Miet-Positionen, jedoch keine Arbeitsaufwände mit Start- und End-Datum mit Personen</value>
         <value xml:lang="en">Rental order items in the order, however no workEfforts with start/end date and number of persons</value>
         <value xml:lang="es">Ítems de alquiler en el pedido</value>
         <value xml:lang="fr">Articles de la commande louée</value>
@@ -2486,6 +2528,7 @@
         <value xml:lang="zh_TW">訂單中的租賃訂單明細,其中的人工服務沒有開始/結束日期和人員數量</value>
     </property>
     <property key="OrderRequestedReturnQuantityNotAvailablePreviousReturnsMayExist">
+        <value xml:lang="de">Geforderte Retourenmenge [ ${parameters.returnQuantity} ] ist nicht verfügbar; es könnten vorherige Retouren vorhanden sein [ ${returnableQuantity} ].</value>
         <value xml:lang="en">Requested return quantity [ ${parameters.returnQuantity} ] not available; previous returns may exist [ ${returnableQuantity} ].</value>
         <value xml:lang="es">Cantidad de devolución  [ ${parameters.returnQuantity} ]no disponible; pueden existir devoluciones previas [ ${returnableQuantity} ].</value>
         <value xml:lang="fr">Quantité de retour demandé [ ${parameters.returnQuantity} ] non disponibles; des précédents retours peuvent exister [ ${returnableQuantity} ]. </value>
@@ -2498,6 +2541,7 @@
         <value xml:lang="zh_TW">請求的退貨數量 [ ${parameters.returnQuantity} ] 無效;可能存在以前的退貨 [ ${returnableQuantity} ]。</value>
     </property>
     <property key="OrderReservationLengthShouldBeAPositiveNumber">
+        <value xml:lang="de">Reservierungsdauer sollte eine positive Zahl sein</value>
         <value xml:lang="en">Reservation length should be a positive number</value>
         <value xml:lang="es">La longitud de la reserva debería ser un número positivo</value>
         <value xml:lang="fr">La longueur de la réservation doit être un nombre positif</value>
@@ -2510,16 +2554,19 @@
         <value xml:lang="zh_TW">預定長度應該是一個正數</value>
     </property>
     <property key="OrderReturnItemTypeIsNotDefined">
+        <value xml:lang="de">Retourenpositionsart ist für diese Position nicht definiert; oder es wurde keine Zuordnung gefunden.</value>
         <value xml:lang="en">Return Item Type is not defined for this item; or no mapping was found.</value>
         <value xml:lang="fr">Le type de retour n'est pas défini pour cette ligne.</value>
         <value xml:lang="it">Tipo riga reso non è definita per questa riga.</value>
     </property>
     <property key="OrderReturnItemTypeOrderItemNoMatching">
+        <value xml:lang="de">Keine Zuordnung der Retourenpositionsart für diese Auftragsposition gefunden: ${orderItem}</value>
         <value xml:lang="en">No matching return item type map found for order item: ${orderItem}</value>
         <value xml:lang="fr">Pas de correspondance dans le type de ligne de retour sur la ligne de commande ${orderItem}</value>
         <value xml:lang="it">Nessuna corrispondenza trovata fra il tipo riga reso e la riga ordine: ${orderItem}</value>
     </property>
     <property key="OrderReturnPaymentMethodNeededForThisTypeOfReturn">
+        <value xml:lang="de">Es muss eine Zahlungsart für diese Retourenart festgelegt werden</value>
         <value xml:lang="en">A payment method must be set for this type of return</value>
         <value xml:lang="es">Hay que fijar un método de pago para este tipo de devolución</value>
         <value xml:lang="fr">Une méthode de paiement doit être bien déterminé pour ce type de retour</value>
@@ -2531,6 +2578,7 @@
         <value xml:lang="zh_TW">必須為這個退貨類型設置支付方法</value>
     </property>
     <property key="OrderReturnPriceCannotExceedTheOrderTotal">
+        <value xml:lang="de">Der Gesamtbetrag aller Retourenpositionen [${returnTotal}] darf nicht die Auftragssumme übersteigen [ ${orderTotal} ].</value>
         <value xml:lang="en">Return total of all return items [${returnTotal}] cannot exceed the order total of [ ${orderTotal} ].</value>
         <value xml:lang="es">El precio de retorno  [ ${parameters.returnPrice} ] no puede exceder el total del pedido  [ ${orderTotal} ]  con todos los totales.</value>
         <value xml:lang="fr">Le total des retours de tous les articles [${returnTotal}] ne doit pas excéder le total de la commande de [ ${orderTotal} ].</value>
@@ -2543,6 +2591,7 @@
         <value xml:lang="zh_TW">全部退貨明細的退貨合計 [${returnTotal}] 不能超過訂單合計 [ ${orderTotal} ]。</value>
     </property>
     <property key="OrderReturnPriceCannotExceedThePurchasePrice">
+        <value xml:lang="de">Retourenpreis [ ${parameters.returnPrice} ] darf nicht den Kaufpreis übersteigen [ ${returnablePrice} ].</value>
         <value xml:lang="en">Return price [ ${parameters.returnPrice} ] cannot exceed the purchase price [ ${returnablePrice} ].</value>
         <value xml:lang="es">El precio de retorno  [ ${parameters.returnPrice} ] no puede exceder el precio de compra  [ ${returnablePrice} ].</value>
         <value xml:lang="fr">Le prix retourné [ ${parameters.returnPrice} ] ne peut pas excéder le prix d'achat [ ${returnablePrice} ]. </value>
@@ -2555,6 +2604,7 @@
         <value xml:lang="zh_TW">退貨價格 [ ${parameters.returnPrice} ] 不能超過購買價格 [ ${returnablePrice} ]。</value>
     </property>
     <property key="OrderReturnQuantityCannotExceedTheOrderedQuantity">
+        <value xml:lang="de">Retourenmenge [${parameters.returnQuantity}] darf nicht die bestellte Menge [ ${orderItem.quantity} ].</value>
         <value xml:lang="en">Return quantity [ ${parameters.returnQuantity} ] cannot exceed the ordered quantity [ ${orderItem.quantity} ]. </value>
         <value xml:lang="es">La cantidad de retorno  [ ${parameters.returnQuantity} ] no puede exceder [ ${orderItem.quantity} ]</value>
         <value xml:lang="fr">La quantité retournée [ ${parameters.returnQuantity} ] ne peut pas excéder la quantité commandée [ ${orderItem.quantity} ]. </value>
@@ -2567,16 +2617,19 @@
         <value xml:lang="zh_TW">退貨數量 [ ${parameters.returnQuantity} ] 不能超過訂單數量 [ ${orderItem.quantity} ]。 </value>
     </property>
     <property key="OrderReturnRequestPartyRoleInternalOrg">
+        <value xml:lang="de">Fehler: eine Retoure muss an einen Akteur in der Rolle 'interne Organisation' gehen</value>
         <value xml:lang="en">Error: a return must be to a party in the role of internal organization</value>
         <value xml:lang="fr">Erreur : le retour doit avoir un acteur avec le rôle d'organisation interne</value>
         <value xml:lang="it">Errore: un reso deve avere un soggetto con ruolo organizzazione interna</value>
     </property>
     <property key="OrderReturnRequestPartyRoleSupplier">
+        <value xml:lang="de">Fehler: eine Retoure muss an einen Akteur in der Rolle 'Lieferant' gehen</value>
         <value xml:lang="en">Error: a return must be to a party in the role of supplier</value>
         <value xml:lang="fr">Erreur : le retour doit avoir un acteur avec le rôle de fournisseur</value>
         <value xml:lang="it">Errore: un reso deve avere un soggetto con ruolo fornitore</value>
     </property>
     <property key="OrderReturnTotalCannotLessThanZero">
+        <value xml:lang="de">Der Gesamtbetrag der Retoure [${returnTotalAmount}] kann nicht kleiner Null sein.</value>
         <value xml:lang="en">Return total [${returnTotalAmount}] can not less than zero.</value>
         <value xml:lang="es">Total de la devolución [${returnTotalAmount}] no puede ser menor a cero</value>
         <value xml:lang="fr">Total du retour [${returnTotalAmount}] ne peut pas être à zéro</value>
@@ -2589,6 +2642,7 @@
         <value xml:lang="zh_TW">退貨合計 [${returnTotalAmount}] 不能小于零。</value>
     </property>
     <property key="OrderRunServiceGetInventoryAvailableByFacilityError">
+        <value xml:lang="de">Fehler beim ausführen des Service [getInventoryAvailableByFacility] :</value>
         <value xml:lang="en">Run service [getInventoryAvailableByFacility] error :</value>
         <value xml:lang="es">Ejecutar el servicio [getInventoryAvailableByFacility] da error :</value>
         <value xml:lang="fr">Erreur à l'exécution du service [getInventoryAvailableByFacility] : </value>
@@ -2600,6 +2654,7 @@
         <value xml:lang="zh_TW">運行服務 [getInventoryAvailableByFacility] 出錯:</value>
     </property>
     <property key="OrderRunServiceGetSuppliersForProductError">
+        <value xml:lang="de">Fehler beim ausführen des Service [getSuppliersForProduct] :</value>
         <value xml:lang="en">Run service [getSuppliersForProduct] error :</value>
         <value xml:lang="es">Error al ejecutar el servicio [getSuppliersForProduct] :</value>
         <value xml:lang="fr">Erreur à l'exécution du service [getSuppliersForProduct] : </value>

Modified: ofbiz/branches/jackrabbit20100709/applications/order/config/order.properties
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/config/order.properties?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/config/order.properties (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/config/order.properties Mon Dec 12 13:53:03 2011
@@ -22,3 +22,7 @@ daysTillCancelReplacementOrder=30
 
 # Maximum age of auto-save shopping list for anonymous users (in days)
 autosave.max.age=14
+
+# Order Item Attribute
+order.item.attr.prefix=order_item_attr_
+order.item.comment.enable=Y

Modified: ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java Mon Dec 12 13:53:03 2011
@@ -211,6 +211,10 @@ public class RequirementServices {
         try {
             GenericValue order = delegator.findByPrimaryKey("OrderHeader", UtilMisc.toMap("orderId", orderId));
             GenericValue productStore = order.getRelatedOneCache("ProductStore");
+            if (productStore == null) {
+                Debug.logInfo("ProductStore for order ID " + orderId + " not found, requirements not created", module);
+                return ServiceUtil.returnSuccess();
+            }
             String facilityId = productStore.getString("inventoryFacilityId");
             List<GenericValue> orderItems = order.getRelated("OrderItem");
             for (Iterator<GenericValue> iter = orderItems.iterator(); iter.hasNext();) {
@@ -267,6 +271,10 @@ public class RequirementServices {
         try {
             GenericValue order = delegator.findByPrimaryKey("OrderHeader", UtilMisc.toMap("orderId", orderId));
             GenericValue productStore = order.getRelatedOneCache("ProductStore");
+            if (productStore == null) {
+                Debug.logInfo("ProductStore for order ID " + orderId + " not found, ATP requirements not created", module);
+                return ServiceUtil.returnSuccess();
+            }
             String facilityId = productStore.getString("inventoryFacilityId");
             List<GenericValue> orderItems = order.getRelated("OrderItem");
             for (Iterator<GenericValue> iter = orderItems.iterator(); iter.hasNext();) {

Modified: ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java Mon Dec 12 13:53:03 2011
@@ -49,6 +49,7 @@ import java.math.BigDecimal;
 import java.math.MathContext;
 import java.sql.Timestamp;
 import java.util.*;
+import java.util.Map.Entry;
 
 /**
  * Shopping Cart Object
@@ -489,6 +490,14 @@ public class ShoppingCart implements Ite
                String accommodationMapId, String accommodationSpotId,
             Timestamp shipBeforeDate, Timestamp shipAfterDate, Map<String, GenericValue> features, Map<String, Object> attributes, String prodCatalogId,
             ProductConfigWrapper configWrapper, String itemType, String itemGroupNumber, String parentProductId, LocalDispatcher dispatcher) throws CartItemModifyException, ItemNotFoundException {
+            return addOrIncreaseItem(productId, selectedAmount, quantity, reservStart, reservLength, reservPersons, accommodationMapId, accommodationSpotId, shipBeforeDate, shipAfterDate, features, attributes, null, prodCatalogId, configWrapper, itemType, itemGroupNumber, parentProductId, dispatcher);
+    }
+
+    /** add rental (with accommodation) item to cart and order item attributes*/
+    public int addOrIncreaseItem(String productId, BigDecimal selectedAmount, BigDecimal quantity, Timestamp reservStart, BigDecimal reservLength, BigDecimal reservPersons,
+               String accommodationMapId, String accommodationSpotId,
+            Timestamp shipBeforeDate, Timestamp shipAfterDate, Map<String, GenericValue> features, Map<String, Object> attributes, Map<String, String> orderItemAttributes, String prodCatalogId,
+            ProductConfigWrapper configWrapper, String itemType, String itemGroupNumber, String parentProductId, LocalDispatcher dispatcher) throws CartItemModifyException, ItemNotFoundException {
         if (isReadOnlyCart()) {
            throw new CartItemModifyException("Cart items cannot be changed");
         }
@@ -504,7 +513,7 @@ public class ShoppingCart implements Ite
             ShoppingCartItem sci = cartLines.get(i);
 
 
-            if (sci.equals(productId, reservStart, reservLength, reservPersons, accommodationMapId, accommodationSpotId, features, attributes, prodCatalogId,selectedAmount, configWrapper, itemType, itemGroup, false)) {
+            if (sci.equals(productId, reservStart, reservLength, reservPersons, accommodationMapId, accommodationSpotId, features, attributes, orderItemAttributes, prodCatalogId,selectedAmount, configWrapper, itemType, itemGroup, false)) {
                 BigDecimal newQuantity = sci.getQuantity().add(quantity);
                 try {
                     BigDecimal minQuantity = getMinimumOrderQuantity(getDelegator(),sci.getBasePrice(), productId);
@@ -542,11 +551,12 @@ public class ShoppingCart implements Ite
             }
         }
         // Add the new item to the shopping cart if it wasn't found.
+        ShoppingCartItem item = null;
         if (getOrderType().equals("PURCHASE_ORDER")) {
             //GenericValue productSupplier = null;
             supplierProduct = getSupplierProduct(productId, quantity, dispatcher);
             if (supplierProduct != null || "_NA_".equals(this.getPartyId())) {
-                 return this.addItem(0, ShoppingCartItem.makePurchaseOrderItem(Integer.valueOf(0), productId, selectedAmount, quantity, features, attributes, prodCatalogId, configWrapper, itemType, itemGroup, dispatcher, this, supplierProduct, shipBeforeDate, shipAfterDate, cancelBackOrderDate));
+                 item = ShoppingCartItem.makePurchaseOrderItem(Integer.valueOf(0), productId, selectedAmount, quantity, features, attributes, prodCatalogId, configWrapper, itemType, itemGroup, dispatcher, this, supplierProduct, shipBeforeDate, shipAfterDate, cancelBackOrderDate);
             } else {
                 throw new CartItemModifyException("SupplierProduct not found");
             }
@@ -559,11 +569,18 @@ public class ShoppingCart implements Ite
             } catch (GenericEntityException e) {
                 Debug.logError(e, module);
             }
-            return this.addItem(0, ShoppingCartItem.makeItem(Integer.valueOf(0), productId, selectedAmount, quantity, null,
+            item = ShoppingCartItem.makeItem(Integer.valueOf(0), productId, selectedAmount, quantity, null,
                     reservStart, reservLength, reservPersons, accommodationMapId, accommodationSpotId, shipBeforeDate, shipAfterDate,
                     features, attributes, prodCatalogId, configWrapper, itemType, itemGroup, dispatcher,
-                    this, Boolean.TRUE, Boolean.TRUE, parentProductId, Boolean.FALSE, Boolean.FALSE));
+                    this, Boolean.TRUE, Boolean.TRUE, parentProductId, Boolean.FALSE, Boolean.FALSE);
+        }
+        // add order item attributes
+        for (Entry<String, String> entry : orderItemAttributes.entrySet()) {
+            item.setOrderItemAttribute(entry.getKey(), entry.getValue());
         }
+
+        return this.addItem(0, item);
+
     }
 
     /** Add a non-product item to the shopping cart.

Modified: ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartEvents.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartEvents.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartEvents.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartEvents.java Mon Dec 12 13:53:03 2011
@@ -1411,7 +1411,7 @@ public class ShoppingCartEvents {
                 Debug.logError(e, module);
             }
             for (long itr = 1; itr <= groupIndex; itr++) {
-                shipGroupSeqId = UtilFormatOut.formatPaddedNumber(1, 5);
+                shipGroupSeqId = UtilFormatOut.formatPaddedNumber(itr, 5);
                 List<GenericValue> duplicateAdjustmentList = new ArrayList<GenericValue>();
                 for (GenericValue adjustment: orderAdjustmentList) {
                     if ("PROMOTION_ADJUSTMENT".equals(adjustment.get("orderAdjustmentTypeId"))) {

Modified: ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java Mon Dec 12 13:53:03 2011
@@ -29,6 +29,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
+import java.util.Map.Entry;
 import java.util.Set;
 
 import javolution.util.FastMap;
@@ -229,6 +230,15 @@ public class ShoppingCartHelper {
             }
         }
 
+        // get order item attributes
+        Map<String, String> orderItemAttributes = FastMap.newInstance();
+        String orderItemAttributePrefix = UtilProperties.getPropertyValue("order.properties", "order.item.attr.prefix");
+        for (Entry<String, ? extends Object> entry : context.entrySet()) {
+            if (entry.getKey().toString().contains(orderItemAttributePrefix) && UtilValidate.isNotEmpty(entry.getValue())) {
+                orderItemAttributes.put(entry.getKey().replaceAll(orderItemAttributePrefix, ""), entry.getValue().toString());
+            }
+        }
+
         // add or increase the item to the cart
         int itemId = -1;
         try {
@@ -236,7 +246,7 @@ public class ShoppingCartHelper {
 
                        itemId = cart.addOrIncreaseItem(productId, amount, quantity, reservStart, reservLength,
                                                 reservPersons, accommodationMapId, accommodationSpotId, shipBeforeDate, shipAfterDate, additionalFeaturesMap, attributes,
-                                                catalogId, configWrapper, itemType, itemGroupNumber, pProductId, dispatcher);
+                                                orderItemAttributes, catalogId, configWrapper, itemType, itemGroupNumber, pProductId, dispatcher);
 
             } else {
                 itemId = cart.addNonProductItem(itemType, itemDescription, productCategoryId, price, quantity, attributes, catalogId, itemGroupNumber, dispatcher);

Modified: ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java Mon Dec 12 13:53:03 2011
@@ -2360,6 +2360,13 @@ public class ShoppingCartItem implements
     public boolean equals(String productId, Timestamp reservStart, BigDecimal reservLength, BigDecimal reservPersons, String accommodationMapId, String accommodationSpotId,
             Map<String, GenericValue> additionalProductFeatureAndAppls, Map<String, Object> attributes, String prodCatalogId, BigDecimal selectedAmount,
             ProductConfigWrapper configWrapper, String itemType, ShoppingCart.ShoppingCartItemGroup itemGroup, boolean isPromo) {
+        return equals(productId, reservStart, reservLength, reservPersons, accommodationMapId, accommodationSpotId, additionalProductFeatureAndAppls, attributes, null, prodCatalogId, selectedAmount, configWrapper, itemType, itemGroup, isPromo);
+    }
+
+    /** Compares the specified object order item attributes. */
+    public boolean equals(String productId, Timestamp reservStart, BigDecimal reservLength, BigDecimal reservPersons, String accommodationMapId, String accommodationSpotId,
+            Map<String, GenericValue> additionalProductFeatureAndAppls, Map<String, Object> attributes, Map<String, String> orderItemAttributes, String prodCatalogId, BigDecimal selectedAmount,
+            ProductConfigWrapper configWrapper, String itemType, ShoppingCart.ShoppingCartItemGroup itemGroup, boolean isPromo) {
         if (this.productId == null || productId == null) {
             // all non-product items are unique
             return false;
@@ -2440,6 +2447,12 @@ public class ShoppingCartItem implements
             return false;
         }
 
+        if ((this.orderItemAttributes == null && UtilValidate.isNotEmpty(orderItemAttributes)) || (UtilValidate.isNotEmpty(this.orderItemAttributes) && orderItemAttributes == null) ||
+                (this.orderItemAttributes != null && orderItemAttributes != null && (this.orderItemAttributes.size() != orderItemAttributes.size() || !(this.orderItemAttributes.equals(orderItemAttributes))))) {
+            // order item attribute unique
+            return false;
+        }
+
         return true;
     }
 

Modified: ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java Mon Dec 12 13:53:03 2011
@@ -24,7 +24,9 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
+import java.util.Properties;
 
+import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpSession;
@@ -627,4 +629,80 @@ public class ShoppingListEvents {
         }
         return arr;
     }
-}
+    
+    /**
+     * Create the guest cookies for a shopping list
+     */
+    public static String createGuestShoppingListCookies (HttpServletRequest request, HttpServletResponse response){
+        Delegator delegator = (Delegator) request.getAttribute("delegator");
+        LocalDispatcher dispatcher = (LocalDispatcher) request.getAttribute("dispatcher");
+        HttpSession session = request.getSession(true);
+        ShoppingCart cart = (ShoppingCart) session.getAttribute("shoppingCart");
+        GenericValue userLogin = (GenericValue) session.getAttribute("userLogin");
+        Properties systemProps = System.getProperties();
+        String guestShoppingUserName = "GuestShoppingListId_" + systemProps.getProperty("user.name");
+        String productStoreId = ProductStoreWorker.getProductStoreId(request);
+        int cookieAge = (60 * 60 * 24 * 30);
+        String autoSaveListId = null;
+        Cookie[] cookies = request.getCookies();
+        
+        // check userLogin
+        if (UtilValidate.isNotEmpty(userLogin)) {
+            String partyId = userLogin.getString("partyId");
+            if (UtilValidate.isEmpty(partyId)) {
+                return "success";
+            }
+        }
+        
+        // find shopping list ID
+        if (cookies != null) {
+            for (Cookie cookie: cookies) {
+                if (cookie.getName().equals(guestShoppingUserName)) {
+                    autoSaveListId = cookie.getValue();
+                    break;
+                }
+            }
+        }
+        
+        // clear the auto-save info
+        if (ProductStoreWorker.autoSaveCart(delegator, productStoreId)) {
+            if (UtilValidate.isEmpty(autoSaveListId)) {
+                try {
+                    Map<String, Object> listFields = UtilMisc.<String, Object>toMap("userLogin", userLogin, "productStoreId", productStoreId, "shoppingListTypeId", "SLT_SPEC_PURP", "listName", PERSISTANT_LIST_NAME);
+                    Map<String, Object> newListResult = dispatcher.runSync("createShoppingList", listFields);
+                    if (newListResult != null) {
+                        autoSaveListId = (String) newListResult.get("shoppingListId");
+                    }
+                } catch (GeneralException e) {
+                    Debug.logError(e, module);
+                }
+                Cookie guestShoppingListCookie = new Cookie(guestShoppingUserName, autoSaveListId);
+                guestShoppingListCookie.setMaxAge(cookieAge);
+                guestShoppingListCookie.setPath("/");
+                response.addCookie(guestShoppingListCookie);
+            }
+        }
+        if (UtilValidate.isNotEmpty(autoSaveListId)) {
+            if (UtilValidate.isNotEmpty(cart)) {
+                cart.setAutoSaveListId(autoSaveListId);
+            } else {
+                cart = ShoppingCartEvents.getCartObject(request);
+                cart.setAutoSaveListId(autoSaveListId);
+            }
+        }
+        return "success";
+    }
+    
+    /**
+     * Clear the guest cookies for a shopping list
+     */
+    public static String clearGuestShoppingListCookies (HttpServletRequest request, HttpServletResponse response){
+        Properties systemProps = System.getProperties();
+        String guestShoppingUserName = "GuestShoppingListId_" + systemProps.getProperty("user.name");
+        Cookie guestShoppingListCookie = new Cookie(guestShoppingUserName, null);
+        guestShoppingListCookie.setMaxAge(0);
+        guestShoppingListCookie.setPath("/");
+        response.addCookie(guestShoppingListCookie);
+        return "success";
+    }
+}
\ No newline at end of file

Modified: ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderReportBody.fo.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderReportBody.fo.ftl?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderReportBody.fo.ftl (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderReportBody.fo.ftl Mon Dec 12 13:53:03 2011
@@ -19,7 +19,8 @@ under the License.
 <#escape x as x?xml>
     <#if orderHeader?has_content>
         <fo:table border-spacing="3pt">
-            <fo:table-column column-width="4in"/>
+            <fo:table-column column-width="3in"/>
+            <fo:table-column column-width="1in"/>
             <fo:table-column column-width="1in"/>
             <fo:table-column column-width="1in"/>
             <fo:table-column column-width="1in"/>
@@ -28,6 +29,7 @@ under the License.
                     <fo:table-cell>
                         <fo:block font-weight="bold">${uiLabelMap.OrderProduct}</fo:block>
                     </fo:table-cell>
+                    <fo:table-cell></fo:table-cell>
                     <fo:table-cell text-align="right">
                         <fo:block font-weight="bold">${uiLabelMap.OrderQuantity}</fo:block>
                     </fo:table-cell>
@@ -45,6 +47,7 @@ under the License.
                     <#assign productId = orderItem.productId?if_exists>
                     <#assign remainingQuantity = (orderItem.quantity?default(0) - orderItem.cancelQuantity?default(0))>
                     <#assign itemAdjustment = Static["org.ofbiz.order.order.OrderReadHelper"].getOrderItemAdjustmentsTotal(orderItem, orderAdjustments, true, false, false)>
+                    <#assign internalImageUrl = Static["org.ofbiz.product.imagemanagement.ImageManagementHelper"].getInternalImageUrl(request, productId)?if_exists>
                     <fo:table-row>
                         <fo:table-cell>
                             <fo:block>
@@ -59,6 +62,15 @@ under the License.
                                 </#if>
                             </fo:block>
                         </fo:table-cell>
+                        <fo:table-cell>
+                            <fo:block>
+                                <#if orderHeader.orderTypeId == "PURCHASE_ORDER">
+                                    <#if internalImageUrl?has_content>
+                                        <fo:external-graphic src="${internalImageUrl}" overflow="hidden" content-width="100"/>
+                                    </#if>
+                                </#if>
+                            </fo:block>
+                        </fo:table-cell>
                         <fo:table-cell text-align="right">
                             <fo:block>${remainingQuantity}</fo:block>
                         </fo:table-cell>
@@ -92,6 +104,7 @@ under the License.
                     <#if adjustmentAmount != 0>
                         <fo:table-row>
                             <fo:table-cell></fo:table-cell>
+                            <fo:table-cell></fo:table-cell>
                             <fo:table-cell number-columns-spanned="2">
                                 <fo:block font-weight="bold">
                                     ${adjustmentType.get("description",locale)} :
@@ -109,6 +122,7 @@ under the License.
                 <#-- summary of order amounts -->
                 <fo:table-row>
                     <fo:table-cell></fo:table-cell>
+                    <fo:table-cell></fo:table-cell>
                     <fo:table-cell number-columns-spanned="2">
                         <fo:block font-weight="bold">${uiLabelMap.OrderItemsSubTotal}</fo:block>
                     </fo:table-cell>
@@ -119,6 +133,7 @@ under the License.
                 <#if otherAdjAmount != 0>
                     <fo:table-row>
                         <fo:table-cell></fo:table-cell>
+                        <fo:table-cell></fo:table-cell>
                         <fo:table-cell number-columns-spanned="2">
                             <fo:block font-weight="bold">${uiLabelMap.OrderTotalOtherOrderAdjustments}</fo:block>
                         </fo:table-cell>
@@ -130,6 +145,7 @@ under the License.
                 <#if shippingAmount != 0>
                     <fo:table-row>
                         <fo:table-cell></fo:table-cell>
+                        <fo:table-cell></fo:table-cell>
                         <fo:table-cell number-columns-spanned="2">
                             <fo:block font-weight="bold">${uiLabelMap.OrderTotalShippingAndHandling}</fo:block>
                         </fo:table-cell>
@@ -141,6 +157,7 @@ under the License.
                 <#if taxAmount != 0>
                     <fo:table-row>
                         <fo:table-cell></fo:table-cell>
+                        <fo:table-cell></fo:table-cell>
                         <fo:table-cell number-columns-spanned="2">
                             <fo:block font-weight="bold">${uiLabelMap.OrderTotalSalesTax}</fo:block>
                         </fo:table-cell>
@@ -152,6 +169,7 @@ under the License.
                 <#if grandTotal != 0>
                     <fo:table-row>
                         <fo:table-cell></fo:table-cell>
+                        <fo:table-cell></fo:table-cell>
                         <fo:table-cell number-columns-spanned="2" background-color="#EEEEEE">
                             <fo:block font-weight="bold">${uiLabelMap.OrderTotalDue}</fo:block>
                         </fo:table-cell>

Modified: ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderitems.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderitems.ftl?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderitems.ftl (original)
+++ ofbiz/branches/jackrabbit20100709/applications/order/webapp/ordermgr/order/orderitems.ftl Mon Dec 12 13:53:03 2011
@@ -69,6 +69,16 @@ under the License.
                                         <#else>
                                             ${orderItem.itemDescription?if_exists}
                                         </#if>
+                                        <#assign orderItemAttributes = orderItem.getRelated("OrderItemAttribute")/>
+                                        <#if orderItemAttributes?has_content>
+                                            <ul>
+                                            <#list orderItemAttributes as orderItemAttribute>
+                                                <li>
+                                                    ${orderItemAttribute.attrName} : ${orderItemAttribute.attrValue}
+                                                </li>
+                                            </#list>
+                                            </ul>
+                                        </#if>
                                     </div>
                                     <div style="float:right;">
                                         <a href="/catalog/control/EditProduct?productId=${productId}${externalKeyParam}" class="buttontext" target="_blank">${uiLabelMap.ProductCatalog}</a>
@@ -718,4 +728,3 @@ under the License.
         </div>
     </div>
 </#if>
-

Modified: ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/WEB-INF/actions/party/EditShoppingList.groovy
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/WEB-INF/actions/party/EditShoppingList.groovy?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/WEB-INF/actions/party/EditShoppingList.groovy (original)
+++ ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/WEB-INF/actions/party/EditShoppingList.groovy Mon Dec 12 13:53:03 2011
@@ -66,6 +66,7 @@ if (!shoppingListId) {
 if (shoppingListId) {
     shoppingList = delegator.findByPrimaryKey("ShoppingList", [shoppingListId : shoppingListId]);
     context.shoppingList = shoppingList;
+    context.shoppingListId = shoppingListId;
 
     if (shoppingList) {
         shoppingListItemTotal = 0.0;
@@ -105,10 +106,10 @@ if (shoppingListId) {
             listSize = 0;
             if (shoppingListItemDatas)
                 listSize = shoppingListItemDatas.size();
-            
-            lowIndex = viewIndex * viewSize + 1;
+
+            lowIndex = (viewIndex * viewSize) + 1;
             highIndex = (viewIndex + 1) * viewSize;
-            
+
             if (highIndex > listSize) {
                 highIndex = listSize;
             }

Modified: ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/party/editShoppingList.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/party/editShoppingList.ftl?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/party/editShoppingList.ftl (original)
+++ ofbiz/branches/jackrabbit20100709/applications/party/webapp/partymgr/party/editShoppingList.ftl Mon Dec 12 13:53:03 2011
@@ -43,6 +43,7 @@ under the License.
             <option value="${list.shoppingListId}">${list.listName}</option>
           </#list>
         </select>
+        <input type="hidden" name="partyId" value="${partyId?if_exists}" />
         <a href="javascript:document.selectShoppingList.submit();" class="smallSubmit">${uiLabelMap.CommonEdit}</a>
       </form>
     <#else>
@@ -57,7 +58,13 @@ under the License.
     <ul>
       <li class="h3">${uiLabelMap.PartyShoppingListDetail} - ${shoppingList.listName}</li>
       <li><a href="javascript:document.updateList.submit();">${uiLabelMap.CommonSave}</a></li>
-      <li><a href="/ordermgr/control/createQuoteFromShoppingList?shoppingListId=${shoppingList.shoppingListId?if_exists}&amp;applyStorePromotions=N">${uiLabelMap.PartyCreateNewQuote}</a></li>
+      <li>
+      <form method="post" name="createQuoteFromShoppingListForm" action="/ordermgr/control/createQuoteFromShoppingList">
+        <input type= "hidden" name= "applyStorePromotions" value= "N"/>
+        <input type= "hidden" name= "shoppingListId" value= "${shoppingList.shoppingListId?if_exists}"/>
+      </form>
+      <a href="javascript:document.createQuoteFromShoppingListForm.submit()">${uiLabelMap.PartyCreateNewQuote}</a>
+      </li>
       <li><a href="/ordermgr/control/createCustRequestFromShoppingList?shoppingListId=${shoppingList.shoppingListId?if_exists}">${uiLabelMap.PartyCreateNewCustRequest}</a></li>
       <li><a href="/ordermgr/control/loadCartFromShoppingList?shoppingListId=${shoppingList.shoppingListId?if_exists}">${uiLabelMap.OrderNewOrder}</a></li>
     </ul>
@@ -171,7 +178,7 @@ under the License.
     <#if shoppingListItemDatas?has_content>
         <#-- Pagination -->
         <#include "component://common/webcommon/includes/htmlTemplate.ftl"/>
-        <#assign commonUrl = "editShoppingList?partyId=" + partyId + "&"/>
+        <#assign commonUrl = "editShoppingList?partyId=" + partyId + "&shoppingListId="+shoppingListId?if_exists+"&"/>
         <#assign viewIndexFirst = 0/>
         <#assign viewIndexPrevious = viewIndex - 1/>
         <#assign viewIndexNext = viewIndex + 1/>
@@ -189,7 +196,7 @@ under the License.
           <td>&nbsp;</td>
         </tr>
         <#assign alt_row = false>
-        <#list shoppingListItemDatas[lowIndex..highIndex-1] as shoppingListItemData>
+        <#list shoppingListItemDatas[lowIndex-1..highIndex-1] as shoppingListItemData>
           <#assign shoppingListItem = shoppingListItemData.shoppingListItem>
           <#assign product = shoppingListItemData.product>
           <#assign productContentWrapper = Static["org.ofbiz.product.product.ProductContentWrapper"].makeProductContentWrapper(product, request)>

Modified: ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/PartyForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/PartyForms.xml?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/PartyForms.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/PartyForms.xml Mon Dec 12 13:53:03 2011
@@ -1082,6 +1082,7 @@ under the License.
                 <parameter param-name="salesOpportunityId"/>
             </hyperlink>
         </field>
+        <field name="opportunityStageId" title="${uiLabelMap.CommonStatus}"><display-entity entity-name="SalesOpportunityStage" description="${description}"/></field>
         <field name="estimatedAmount"><display/></field>
         <field name="partyId"><display/></field>
     </form>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml?rev=1213245&r1=1213244&r2=1213245&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml Mon Dec 12 13:53:03 2011
@@ -5919,6 +5919,10 @@
         <value xml:lang="en">Opacity</value>
         <value xml:lang="th">ความทึบแสง</value>
     </property>
+    <property key="ImageManagementPublic">
+        <value xml:lang="en">Public</value>
+        <value xml:lang="th">สาธารณะ</value>
+    </property>
     <property key="ImageManagementRecentlyApproved">
         <value xml:lang="en">Recently Approved</value>
         <value xml:lang="th">อนุมัติล่าสุด</value>