|
Author: jleroux
Date: Sun Dec 5 18:57:52 2010 New Revision: 1042402 URL: http://svn.apache.org/viewvc?rev=1042402&view=rev Log: "Applied fix from trunk for revision: 1042396" ------------------------------------------------------------------------ r1042396 | jleroux | 2010-12-05 19:43:44 +0100 (dim., 05 déc. 2010) | 15 lines A patch from Anne Jessel "Is Empty for text-find widget broken" (https://issues.apache.org/jira/browse/OFBIZ-4025) - OFBIZ-4025 To reproduce: * go to Facility, Inventory Items tab (or any form that uses text-find widget) * choose "Is Empty" from drop-down next to Product Id * click Find button Expected behaviour: no matching items listed, as all items have a Product Id. Observed behaviour: all items match. Problem is caused by find code assuming that there is no entity condition to be created if the text field is empty, but of course Is Empty is different to the other operators in that the text field is expected to be empty. The attached patch adds a special check for the Is Empty operator. ------------------------------------------------------------------------ Modified: ofbiz/branches/release10.04/ (props changed) ofbiz/branches/release10.04/framework/common/src/org/ofbiz/common/FindServices.java Propchange: ofbiz/branches/release10.04/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Sun Dec 5 18:57:52 2010 @@ -1,3 +1,3 @@ /ofbiz/branches/addbirt:831210-885099,885686-886087 /ofbiz/branches/multitenant20100310:921280-927264 -/ofbiz/trunk:939988,939990,939999,940025,940053,940234,940248,940309,940401,940410,940425,940779,940815,940849,940851,941007,941047,941109,941177,941199,941261,941440,941600,941999,942084,942406,942414,942671,942883-942884,943168,943271-943272,944614,944621,944623,944647,944669,944797,944895,945010,945018,945026,945118,945573,945578,945580,945582,945610,945619,945848,945852,945857,946061,946066,946073,946075,946080,946309,946313,946320,946322,946596,947004-947005,947392,947424,947679,947988,948017,948694,949174,949710,949844,950866,950870,950893,951005,951062,951098,951251,951367,951381,951672,952232,952249,952270,953294,953671,954135,954583,954733,954956,955568,956022,956206,956340,957160,958343,958514,958521,958752,958758,958769,958953,959456,960143,960491,960997,963610,964558,965470,965916,966525,966785,967098,978806,978893,978939,979104,980641-980642,980935,981051,981104,981123,981288,983920,983930,985163,985298,985473,985718,985856,985902,987841,989166,990127,990339,990 539,991485,993344,993387,995384,995686,996069,996078-996079,996563,997418-997420,997423-997425,997431,997440,997526,997990,998061,998412,998557,1000621,1000725,1000998,1001099,1001131,1001185,1001574,1001849,1001962,1002963,1003434,1003450,1003829,1004139,1027756,1027960,1028053,1028625,1028627,1029600,1030016,1030385,1030390,1033928,1033953,1034138,1034179,1035080,1035084,1036426,1036669,1037507,1037559-1037560,1037567,1037883,1038228,1038990,1039256,1040044,1040091,1042009,1042034,1042038,1042132,1042188,1042222,1042317,1042348 +/ofbiz/trunk:939988,939990,939999,940025,940053,940234,940248,940309,940401,940410,940425,940779,940815,940849,940851,941007,941047,941109,941177,941199,941261,941440,941600,941999,942084,942406,942414,942671,942883-942884,943168,943271-943272,944614,944621,944623,944647,944669,944797,944895,945010,945018,945026,945118,945573,945578,945580,945582,945610,945619,945848,945852,945857,946061,946066,946073,946075,946080,946309,946313,946320,946322,946596,947004-947005,947392,947424,947679,947988,948017,948694,949174,949710,949844,950866,950870,950893,951005,951062,951098,951251,951367,951381,951672,952232,952249,952270,953294,953671,954135,954583,954733,954956,955568,956022,956206,956340,957160,958343,958514,958521,958752,958758,958769,958953,959456,960143,960491,960997,963610,964558,965470,965916,966525,966785,967098,978806,978893,978939,979104,980641-980642,980935,981051,981104,981123,981288,983920,983930,985163,985298,985473,985718,985856,985902,987841,989166,990127,990339,990 539,991485,993344,993387,995384,995686,996069,996078-996079,996563,997418-997420,997423-997425,997431,997440,997526,997990,998061,998412,998557,1000621,1000725,1000998,1001099,1001131,1001185,1001574,1001849,1001962,1002963,1003434,1003450,1003829,1004139,1027756,1027960,1028053,1028625,1028627,1029600,1030016,1030385,1030390,1033928,1033953,1034138,1034179,1035080,1035084,1036426,1036669,1037507,1037559-1037560,1037567,1037883,1038228,1038990,1039256,1040044,1040091,1042009,1042034,1042038,1042132,1042188,1042222,1042317,1042348,1042396 Modified: ofbiz/branches/release10.04/framework/common/src/org/ofbiz/common/FindServices.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release10.04/framework/common/src/org/ofbiz/common/FindServices.java?rev=1042402&r1=1042401&r2=1042402&view=diff ============================================================================== --- ofbiz/branches/release10.04/framework/common/src/org/ofbiz/common/FindServices.java (original) +++ ofbiz/branches/release10.04/framework/common/src/org/ofbiz/common/FindServices.java Sun Dec 5 18:57:52 2010 @@ -266,7 +266,7 @@ public class FindServices { if (fieldValue == null) { fieldValue = parameters.get(fieldName); } - if (ObjectType.isEmpty(fieldValue)) { + if (ObjectType.isEmpty(fieldValue) && !"empty".equals(operation)) { continue; } result.add(createSingleCondition(modelField, operation, fieldValue, ignoreCase, delegator, context)); @@ -370,10 +370,11 @@ public class FindServices { } subMap2 = subMap.get("fld0"); fieldValue = subMap2.get("value"); - if (fieldValue == null) { + opString = (String) subMap2.get("op"); + // null fieldValue is OK if operator is "empty" + if (fieldValue == null && !"empty".equals(opString)) { continue; } - opString = (String) subMap2.get("op"); ignoreCase = "Y".equals(subMap2.get("ic")); cond = createSingleCondition(modelField, opString, fieldValue, ignoreCase, delegator, context); tmpList.add(cond); @@ -382,10 +383,10 @@ public class FindServices { continue; } fieldValue = subMap2.get("value"); - if (fieldValue == null) { + opString = (String) subMap2.get("op"); + if (fieldValue == null && !"empty".equals(opString)) { continue; } - opString = (String) subMap2.get("op"); ignoreCase = "Y".equals(subMap2.get("ic")); cond = createSingleCondition(modelField, opString, fieldValue, ignoreCase, delegator, context); tmpList.add(cond); |
| Free forum by Nabble | Edit this page |
