summaryrefslogtreecommitdiff
path: root/include/connectivity/parameters.hxx
diff options
context:
space:
mode:
authorLionel Elie Mamane <lionel@mamane.lu>2017-07-30 17:57:14 +0200
committerLionel Elie Mamane <lionel@mamane.lu>2017-07-30 20:23:09 +0200
commit2b1d6f0d3b0b025148c81986ba7f109659d838af (patch)
tree475feb3567e60c37b5bc6f669711c1b9a65c33ad /include/connectivity/parameters.hxx
parentaba73077851a744c06e72b3bddf5a0bae85d7c28 (diff)
tdf#96370 rework filtering to be aware of WHERE vs HAVING clause
Several bugs (AFAIK not filed into tdf bugzilla) fixed. Remaining problems: When some filter clauses go into WHERE and others in HAVING, they are always logically ANDed (it cannot be any other way), but that is not communicated to the user in the UI. Some things left undone: * DatabaseDataProvider (and its users?) needs to be updated to be HAVING-aware, too. * Form-based filter (.uno:FormFilter) not HAVING-aware it reads the current filter in function svxform::FormController::setFilter in svx/source/form/formcontrollers.cxx That's one place that needs to be updated. The other place is the one that applies the filter. Change-Id: I0e9d30a1927b6739a16ae7627e8d0dae8823b376
Diffstat (limited to 'include/connectivity/parameters.hxx')
-rw-r--r--include/connectivity/parameters.hxx8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/connectivity/parameters.hxx b/include/connectivity/parameters.hxx
index 49eebb93665a..e5ba530bfcc4 100644
--- a/include/connectivity/parameters.hxx
+++ b/include/connectivity/parameters.hxx
@@ -296,13 +296,19 @@ namespace dbtools
the detail part denotes a column name. In such a case, an additional filter needs to be created,
containing a new parameter.
+ @param _out_rAdditionalHavingComponents
+ the additional having clause components which are required for master-detail relationships where
+ the detail part denotes a column name. In such a case, an additional filter needs to be created,
+ containing a new parameter.
+
@precond
<member>m_aMasterFields</member> and <member>m_aDetailFields</member> have the same length
*/
void classifyLinks(
const css::uno::Reference< css::container::XNameAccess >& _rxParentColumns,
const css::uno::Reference< css::container::XNameAccess >& _rxColumns,
- ::std::vector< OUString >& _out_rAdditionalFilterComponents
+ ::std::vector< OUString >& _out_rAdditionalFilterComponents,
+ ::std::vector< OUString >& _out_rAdditionalHavingComponents
);
/** finalizes our <member>m_pOuterParameters</member> so that it can be used for