Files
Vissarion Fisikopoulos 68bed36a97 tdf#153057, tdf#173589 enable Base to filter date and time values
This patch implements and fixes cases for filtering. In particular
the cases for form-based and dialogue-based filtering in forms for
data and time. Additionally, the cases for time values in Table
Data View.

A specific limitation comes from firebird which accepts only 4 digits
for nanoseconds in time values. The data are rounded to that digit
for firebird while still support full precision (up to 9 digits)
for other engines. This is implemented using the driver's metadata
functions.

Unit tests are added.

Change-Id: I89435da239c898f3c782fcc9f78f98caf4223f62
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211298
Reviewed-by: Vissarion Fisikopoulos <vfisikop@libreoffice.org>
Tested-by: Jenkins
2026-09-22 15:54:40 +02:00
..
…

xcu files are made from several sections, the main ones are: Properties and Features

Property: actual setting with its underlying type and its default value

Feature: a boolean that says "let the user change that setting in the Advanced Settings UI"

This is checked by using officecfg/registry/schema/org/openoffice/Office/DataAccess/Drivers.xcs
and configmgr mechanism
There are two kinds of properties named "Value":
- first one is in "Property" groups and has a static oor:type="any" (can take on boolean, int and other types of values)
- second one is in "Feature" groups and has a static oor:type="boolean" so can take on only boolean values.

Each node in Feature section must have an equivalent in Property section
Most of the time the node name of both sections should be equal,
however there are 5 known exceptions (more?):
- "UseBracketedOuterJoinSyntax" feature => "EnableOuterJoinEscape" property
- "UseDOSLineEnds" feature => "PreferDosLikeLineEnds" property
- "UseSQL92NamingConstraints" feature => "EnableSQL92Check" property
- "AppendTableAliasInSelect" feature => "AppendTableAliasName" property
- "UseKeywordAsBeforeAlias" feature => "GenerateASBeforeCorrelationName"

See dbaccess/source/ui/dlg/DbAdminImpl.cxx, ODbDataSourceAdministrationHelper constructor, eg:
m_aIndirectPropTranslator.emplace( <ID>, <property> )
and dbaccess/source/ui/misc/dsmeta.cxx, lcl_getFeatureMappings() function, eg:
{ <ID>, <feature> }