You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Scott Gray <sc...@hotwaxmedia.com> on 2009/09/03 03:28:00 UTC

Re: svn commit: r810748 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java

Hi David

I'm not familiar with the code but the condition seems a little  
strange to me, it used to be this:
if product requirement is PRODRQM_ATP then run the rest of the code in  
the block
Now it looks like this:
if product requirement is PRODRQM_ATP AND productStore requirement is  
also PRODRQM_ATP then run the rest of the code in the block

Is it correct that the rest of the code should only be executed if  
both the product and the product store have PRODRQM_ATP set?

Thanks
Scott

On 3/09/2009, at 12:55 PM, jonesde@apache.org wrote:

> Author: jonesde
> Date: Thu Sep  3 00:55:50 2009
> New Revision: 810748
>
> URL: http://svn.apache.org/viewvc?rev=810748&view=rev
> Log:
> Small fix so that the ProductStore.requirementMethodEnumId works for  
> the PRODRQM_ATP value
>
> Modified:
>    ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
> RequirementServices.java
>
> Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
> requirement/RequirementServices.java
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=810748&r1=810747&r2=810748&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
> RequirementServices.java (original)
> +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
> RequirementServices.java Thu Sep  3 00:55:50 2009
> @@ -269,7 +269,8 @@
>                 GenericValue item = (GenericValue) iter.next();
>                 GenericValue product = item.getRelatedOne("Product");
>                 if (product == null) continue;
> -                if (!  
> "PRODRQM_ATP".equals(product.get("requirementMethodEnumId")))  
> continue;
> +
> +                if  
> (!"PRODRQM_ATP".equals(product.get("requirementMethodEnumId"))  
> && !"PRODRQM_ATP 
> ".equals(productStore.get("requirementMethodEnumId"))) continue;
>
>                 BigDecimal quantity = item.getBigDecimal("quantity");
>                 BigDecimal cancelQuantity =  
> item.getBigDecimal("cancelQuantity");
>
>


Re: svn commit: r810748 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java

Posted by Mridul Pathak <mr...@hotwaxmedia.com>.
Hi,

     Similar kind of fix is applicable to  
RequirementServices.createAutoRequirementsForOrder as well, so that  
ProductStore.requirementMethodEnumId works with PRODRQM_AUTO value.

--
Thanks,
Mridul Pathak


On 03-Sep-09, at 9:12 AM, David E Jones wrote:

>
> Thanks for the comments Scott. I made some changes that will  
> hopefully address these two issues, ie making it more readable and  
> allowing the Product setting to override the ProductStore setting,  
> in SVN rev 810772.
>
> -David
>
>
> On Sep 2, 2009, at 7:53 PM, Scott Gray wrote:
>
>> I saw them but yeah I have read the code wrong, my pseudo code  
>> should have an OR instead of an AND:
>> if product requirement is PRODRQM_ATP OR productStore requirement  
>> is PRODRQM_ATP then run the rest of the code in the block
>>
>> shouldn't one setting take priority or override over the other?  If  
>> different requirements used the same sort of condition you would  
>> potentially have products with multiple requirement methods in  
>> effect.
>>
>> Regards
>> Scott
>>
>> On 3/09/2009, at 1:31 PM, David E Jones wrote:
>>
>>>
>>> You're missing the nots...
>>>
>>> -David
>>>
>>>
>>> On Sep 2, 2009, at 7:28 PM, Scott Gray wrote:
>>>
>>>> Hi David
>>>>
>>>> I'm not familiar with the code but the condition seems a little  
>>>> strange to me, it used to be this:
>>>> if product requirement is PRODRQM_ATP then run the rest of the  
>>>> code in the block
>>>> Now it looks like this:
>>>> if product requirement is PRODRQM_ATP AND productStore  
>>>> requirement is also PRODRQM_ATP then run the rest of the code in  
>>>> the block
>>>>
>>>> Is it correct that the rest of the code should only be executed  
>>>> if both the product and the product store have PRODRQM_ATP set?
>>>>
>>>> Thanks
>>>> Scott
>>>>
>>>> On 3/09/2009, at 12:55 PM, jonesde@apache.org wrote:
>>>>
>>>>> Author: jonesde
>>>>> Date: Thu Sep  3 00:55:50 2009
>>>>> New Revision: 810748
>>>>>
>>>>> URL: http://svn.apache.org/viewvc?rev=810748&view=rev
>>>>> Log:
>>>>> Small fix so that the ProductStore.requirementMethodEnumId works  
>>>>> for the PRODRQM_ATP value
>>>>>
>>>>> Modified:
>>>>> ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>>>>> RequirementServices.java
>>>>>
>>>>> Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>>> requirement/RequirementServices.java
>>>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=810748&r1=810747&r2=810748&view=diff
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> ==================================================================
>>>>> --- ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>>> requirement/RequirementServices.java (original)
>>>>> +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>>> requirement/RequirementServices.java Thu Sep  3 00:55:50 2009
>>>>> @@ -269,7 +269,8 @@
>>>>>             GenericValue item = (GenericValue) iter.next();
>>>>>             GenericValue product = item.getRelatedOne("Product");
>>>>>             if (product == null) continue;
>>>>> -                if (!  
>>>>> "PRODRQM_ATP".equals(product.get("requirementMethodEnumId")))  
>>>>> continue;
>>>>> +
>>>>> +                if  
>>>>> (!"PRODRQM_ATP".equals(product.get("requirementMethodEnumId"))  
>>>>> && !"PRODRQM_ATP 
>>>>> ".equals(productStore.get("requirementMethodEnumId"))) continue;
>>>>>
>>>>>             BigDecimal quantity = item.getBigDecimal("quantity");
>>>>>             BigDecimal cancelQuantity =  
>>>>> item.getBigDecimal("cancelQuantity");
>>>>>
>>>>>
>>>>
>>>
>>
>


Re: svn commit: r810748 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java

Posted by Scott Gray <sc...@hotwaxmedia.com>.
Thanks David

Regards
Scott

On 3/09/2009, at 3:42 PM, David E Jones wrote:

>
> Thanks for the comments Scott. I made some changes that will  
> hopefully address these two issues, ie making it more readable and  
> allowing the Product setting to override the ProductStore setting,  
> in SVN rev 810772.
>
> -David
>
>
> On Sep 2, 2009, at 7:53 PM, Scott Gray wrote:
>
>> I saw them but yeah I have read the code wrong, my pseudo code  
>> should have an OR instead of an AND:
>> if product requirement is PRODRQM_ATP OR productStore requirement  
>> is PRODRQM_ATP then run the rest of the code in the block
>>
>> shouldn't one setting take priority or override over the other?  If  
>> different requirements used the same sort of condition you would  
>> potentially have products with multiple requirement methods in  
>> effect.
>>
>> Regards
>> Scott
>>
>> On 3/09/2009, at 1:31 PM, David E Jones wrote:
>>
>>>
>>> You're missing the nots...
>>>
>>> -David
>>>
>>>
>>> On Sep 2, 2009, at 7:28 PM, Scott Gray wrote:
>>>
>>>> Hi David
>>>>
>>>> I'm not familiar with the code but the condition seems a little  
>>>> strange to me, it used to be this:
>>>> if product requirement is PRODRQM_ATP then run the rest of the  
>>>> code in the block
>>>> Now it looks like this:
>>>> if product requirement is PRODRQM_ATP AND productStore  
>>>> requirement is also PRODRQM_ATP then run the rest of the code in  
>>>> the block
>>>>
>>>> Is it correct that the rest of the code should only be executed  
>>>> if both the product and the product store have PRODRQM_ATP set?
>>>>
>>>> Thanks
>>>> Scott
>>>>
>>>> On 3/09/2009, at 12:55 PM, jonesde@apache.org wrote:
>>>>
>>>>> Author: jonesde
>>>>> Date: Thu Sep  3 00:55:50 2009
>>>>> New Revision: 810748
>>>>>
>>>>> URL: http://svn.apache.org/viewvc?rev=810748&view=rev
>>>>> Log:
>>>>> Small fix so that the ProductStore.requirementMethodEnumId works  
>>>>> for the PRODRQM_ATP value
>>>>>
>>>>> Modified:
>>>>> ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>>>>> RequirementServices.java
>>>>>
>>>>> Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>>> requirement/RequirementServices.java
>>>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=810748&r1=810747&r2=810748&view=diff
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> = 
>>>>> ==================================================================
>>>>> --- ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>>> requirement/RequirementServices.java (original)
>>>>> +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>>> requirement/RequirementServices.java Thu Sep  3 00:55:50 2009
>>>>> @@ -269,7 +269,8 @@
>>>>>             GenericValue item = (GenericValue) iter.next();
>>>>>             GenericValue product = item.getRelatedOne("Product");
>>>>>             if (product == null) continue;
>>>>> -                if (!  
>>>>> "PRODRQM_ATP".equals(product.get("requirementMethodEnumId")))  
>>>>> continue;
>>>>> +
>>>>> +                if  
>>>>> (!"PRODRQM_ATP".equals(product.get("requirementMethodEnumId"))  
>>>>> && !"PRODRQM_ATP 
>>>>> ".equals(productStore.get("requirementMethodEnumId"))) continue;
>>>>>
>>>>>             BigDecimal quantity = item.getBigDecimal("quantity");
>>>>>             BigDecimal cancelQuantity =  
>>>>> item.getBigDecimal("cancelQuantity");
>>>>>
>>>>>
>>>>
>>>
>>
>


Re: svn commit: r810748 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java

Posted by David E Jones <de...@me.com>.
Thanks for the comments Scott. I made some changes that will hopefully  
address these two issues, ie making it more readable and allowing the  
Product setting to override the ProductStore setting, in SVN rev 810772.

-David


On Sep 2, 2009, at 7:53 PM, Scott Gray wrote:

> I saw them but yeah I have read the code wrong, my pseudo code  
> should have an OR instead of an AND:
> if product requirement is PRODRQM_ATP OR productStore requirement is  
> PRODRQM_ATP then run the rest of the code in the block
>
> shouldn't one setting take priority or override over the other?  If  
> different requirements used the same sort of condition you would  
> potentially have products with multiple requirement methods in effect.
>
> Regards
> Scott
>
> On 3/09/2009, at 1:31 PM, David E Jones wrote:
>
>>
>> You're missing the nots...
>>
>> -David
>>
>>
>> On Sep 2, 2009, at 7:28 PM, Scott Gray wrote:
>>
>>> Hi David
>>>
>>> I'm not familiar with the code but the condition seems a little  
>>> strange to me, it used to be this:
>>> if product requirement is PRODRQM_ATP then run the rest of the  
>>> code in the block
>>> Now it looks like this:
>>> if product requirement is PRODRQM_ATP AND productStore requirement  
>>> is also PRODRQM_ATP then run the rest of the code in the block
>>>
>>> Is it correct that the rest of the code should only be executed if  
>>> both the product and the product store have PRODRQM_ATP set?
>>>
>>> Thanks
>>> Scott
>>>
>>> On 3/09/2009, at 12:55 PM, jonesde@apache.org wrote:
>>>
>>>> Author: jonesde
>>>> Date: Thu Sep  3 00:55:50 2009
>>>> New Revision: 810748
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=810748&view=rev
>>>> Log:
>>>> Small fix so that the ProductStore.requirementMethodEnumId works  
>>>> for the PRODRQM_ATP value
>>>>
>>>> Modified:
>>>> ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>>>> RequirementServices.java
>>>>
>>>> Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>> requirement/RequirementServices.java
>>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=810748&r1=810747&r2=810748&view=diff
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> = 
>>>> ===================================================================
>>>> --- ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>> requirement/RequirementServices.java (original)
>>>> +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>>> requirement/RequirementServices.java Thu Sep  3 00:55:50 2009
>>>> @@ -269,7 +269,8 @@
>>>>              GenericValue item = (GenericValue) iter.next();
>>>>              GenericValue product = item.getRelatedOne("Product");
>>>>              if (product == null) continue;
>>>> -                if (!  
>>>> "PRODRQM_ATP".equals(product.get("requirementMethodEnumId")))  
>>>> continue;
>>>> +
>>>> +                if  
>>>> (!"PRODRQM_ATP".equals(product.get("requirementMethodEnumId"))  
>>>> && !"PRODRQM_ATP 
>>>> ".equals(productStore.get("requirementMethodEnumId"))) continue;
>>>>
>>>>              BigDecimal quantity = item.getBigDecimal("quantity");
>>>>              BigDecimal cancelQuantity =  
>>>> item.getBigDecimal("cancelQuantity");
>>>>
>>>>
>>>
>>
>


Re: svn commit: r810748 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java

Posted by Scott Gray <sc...@hotwaxmedia.com>.
I saw them but yeah I have read the code wrong, my pseudo code should  
have an OR instead of an AND:
if product requirement is PRODRQM_ATP OR productStore requirement is  
PRODRQM_ATP then run the rest of the code in the block

shouldn't one setting take priority or override over the other?  If  
different requirements used the same sort of condition you would  
potentially have products with multiple requirement methods in effect.

Regards
Scott

On 3/09/2009, at 1:31 PM, David E Jones wrote:

>
> You're missing the nots...
>
> -David
>
>
> On Sep 2, 2009, at 7:28 PM, Scott Gray wrote:
>
>> Hi David
>>
>> I'm not familiar with the code but the condition seems a little  
>> strange to me, it used to be this:
>> if product requirement is PRODRQM_ATP then run the rest of the code  
>> in the block
>> Now it looks like this:
>> if product requirement is PRODRQM_ATP AND productStore requirement  
>> is also PRODRQM_ATP then run the rest of the code in the block
>>
>> Is it correct that the rest of the code should only be executed if  
>> both the product and the product store have PRODRQM_ATP set?
>>
>> Thanks
>> Scott
>>
>> On 3/09/2009, at 12:55 PM, jonesde@apache.org wrote:
>>
>>> Author: jonesde
>>> Date: Thu Sep  3 00:55:50 2009
>>> New Revision: 810748
>>>
>>> URL: http://svn.apache.org/viewvc?rev=810748&view=rev
>>> Log:
>>> Small fix so that the ProductStore.requirementMethodEnumId works  
>>> for the PRODRQM_ATP value
>>>
>>> Modified:
>>>  ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>>> RequirementServices.java
>>>
>>> Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>>> requirement/RequirementServices.java
>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=810748&r1=810747&r2=810748&view=diff
>>> = 
>>> = 
>>> = 
>>> = 
>>> = 
>>> = 
>>> = 
>>> = 
>>> = 
>>> = 
>>> ====================================================================
>>> --- ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>>> RequirementServices.java (original)
>>> +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>>> RequirementServices.java Thu Sep  3 00:55:50 2009
>>> @@ -269,7 +269,8 @@
>>>               GenericValue item = (GenericValue) iter.next();
>>>               GenericValue product = item.getRelatedOne("Product");
>>>               if (product == null) continue;
>>> -                if (!  
>>> "PRODRQM_ATP".equals(product.get("requirementMethodEnumId")))  
>>> continue;
>>> +
>>> +                if  
>>> (!"PRODRQM_ATP".equals(product.get("requirementMethodEnumId"))  
>>> && !"PRODRQM_ATP 
>>> ".equals(productStore.get("requirementMethodEnumId"))) continue;
>>>
>>>               BigDecimal quantity = item.getBigDecimal("quantity");
>>>               BigDecimal cancelQuantity =  
>>> item.getBigDecimal("cancelQuantity");
>>>
>>>
>>
>


Re: svn commit: r810748 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java

Posted by David E Jones <de...@me.com>.
You're missing the nots...

-David


On Sep 2, 2009, at 7:28 PM, Scott Gray wrote:

> Hi David
>
> I'm not familiar with the code but the condition seems a little  
> strange to me, it used to be this:
> if product requirement is PRODRQM_ATP then run the rest of the code  
> in the block
> Now it looks like this:
> if product requirement is PRODRQM_ATP AND productStore requirement  
> is also PRODRQM_ATP then run the rest of the code in the block
>
> Is it correct that the rest of the code should only be executed if  
> both the product and the product store have PRODRQM_ATP set?
>
> Thanks
> Scott
>
> On 3/09/2009, at 12:55 PM, jonesde@apache.org wrote:
>
>> Author: jonesde
>> Date: Thu Sep  3 00:55:50 2009
>> New Revision: 810748
>>
>> URL: http://svn.apache.org/viewvc?rev=810748&view=rev
>> Log:
>> Small fix so that the ProductStore.requirementMethodEnumId works  
>> for the PRODRQM_ATP value
>>
>> Modified:
>>   ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>> RequirementServices.java
>>
>> Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/ 
>> requirement/RequirementServices.java
>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/RequirementServices.java?rev=810748&r1=810747&r2=810748&view=diff
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> = 
>> =====================================================================
>> --- ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>> RequirementServices.java (original)
>> +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/requirement/ 
>> RequirementServices.java Thu Sep  3 00:55:50 2009
>> @@ -269,7 +269,8 @@
>>                GenericValue item = (GenericValue) iter.next();
>>                GenericValue product = item.getRelatedOne("Product");
>>                if (product == null) continue;
>> -                if (!  
>> "PRODRQM_ATP".equals(product.get("requirementMethodEnumId")))  
>> continue;
>> +
>> +                if  
>> (!"PRODRQM_ATP".equals(product.get("requirementMethodEnumId"))  
>> && !"PRODRQM_ATP 
>> ".equals(productStore.get("requirementMethodEnumId"))) continue;
>>
>>                BigDecimal quantity = item.getBigDecimal("quantity");
>>                BigDecimal cancelQuantity =  
>> item.getBigDecimal("cancelQuantity");
>>
>>
>