Hi Jacques,
Here, there are issues
1) SystemProperty data issue with empty fields:
Regarding this issue, you shared all history. Here, my opinion is to use
"null-field" to specify an empty value in SytemProperty, like we do in XML
forms and services. This will avoid confusion to use SystemProperty data
with empty value.
2) XML data import overrides data value with empty fields
Due to current changes, there is the ability to override existing data by
empty value if we set the field as empty("") in XML file. So concern was to
remove this override by removing empty values from XML data files if any.
--
Thanks & Regards
---
Arun Patidar
Manager, Enterprise Software Development
www.hotwaxsystems.comwww.hotwax.co
On Mon, Mar 19, 2018 at 3:41 PM, Jacques Le Roux <
[email protected]> wrote:
> Hi Arun,
>
> This value were added by me with http://svn.apache.org/viewvc?v
> iew=revision&revision=1748560
>
> <<A patch from Wai for "EntityUtilProperties"
> https://issues.apache.org/jira/browse/OFBIZ-7112
>
> OFBiz reads properties from either a properties file or the
> entity:SystemProperty.
> The way it worked previously is that OFBiz reads from the
> entity:SystemProperty first and if there is no value associated with the
> target propertyname, it would then locate the value from the relevant
> properties file.
> In other words, if there is a database entry for a property, the database
> entry should override the associated properties file.
> The issue is that if a database entry exist but the value is empty, it
> would look for a value from the properties file.
> It should not do so. If a database entry exists for the propertyname of
> interest, the value should be taken from the database even if it holds an
> empty value.
>
> "isExistInDb" is first defined in Map<String, String>
> getSystemPropertyValue(String, String, Delegator). This method is call by
> many other methods. "isExistInDb" is used to indicate whether the method
> is returning an empty value for the property that 'exists' in the database
> rather than as a result of an absent database entry for the property.
>
> The other methods...
> boolean propertyValueEqualsIgnoreCase(String, String, String, Delegator)
> String getPropertyValue(String, String, String, Delegator)
> String getPropertyValue(String, String, Delegator)
> String getMessage(String, String, Locale, Delegator)
> uses the above method and needs to decide whether to use the empty value
> returned (ie. empty value from an existing property entry in database) or
> decide if it needs to read from the property file (ie. property entry does
> not exist in database)
>
> jleroux: this also add systemPropertyValue data in
> CommonSystemPropertyData.xml
>
>>
>>>
> We know this is a controversial matter for a long time, I agree we could
> in the meantime decide to remove the empty values from DB. They are all in
> general but
> systemResourceId="sfa" systemPropertyId="save.outgoing.directory"
>
> I maintain that we need to eventually decide about my proposition at
> https://markmail.org/message/opldepaevls3y3ob
>
> Jacques
>
> ------------------------------------------------------------
> ------------------------------------------------------------
> ------------------------------
>
>
> Le 16/03/2018 à 09:42, Arun Patidar a écrit :
>
>> Hello Jacques,
>>
>> There are still some occurrences in the code for systemPropertyValue="".
>> This empty field should be removed to prevent data overridden. Added an
>> example data in the ticket OFBIZ-10282
>>
>>
>>
>>
>>
>>
>