fdo#48807 autofilter should not use LIKE operator
This demonstrates a confusion between *values* and *patterns* Change-Id: I207aa53950166e915bbad22b022c88d07ee6300d
This commit is contained in:
@@ -225,23 +225,7 @@ void SAL_CALL OQueryComposer::appendFilterByColumn( const Reference< XPropertySe
|
|||||||
|
|
||||||
m_xComposerHelper->setQuery(getQuery());
|
m_xComposerHelper->setQuery(getQuery());
|
||||||
m_xComposerHelper->setFilter(::rtl::OUString());
|
m_xComposerHelper->setFilter(::rtl::OUString());
|
||||||
sal_Int32 nOp = SQLFilterOperator::EQUAL;
|
m_xComposerHelper->appendFilterByColumn(column, sal_True, SQLFilterOperator::EQUAL);
|
||||||
if ( column.is() )
|
|
||||||
{
|
|
||||||
sal_Int32 nType = 0;
|
|
||||||
column->getPropertyValue(PROPERTY_TYPE) >>= nType;
|
|
||||||
switch(nType)
|
|
||||||
{
|
|
||||||
case DataType::VARCHAR:
|
|
||||||
case DataType::CHAR:
|
|
||||||
case DataType::LONGVARCHAR:
|
|
||||||
nOp = SQLFilterOperator::LIKE;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
nOp = SQLFilterOperator::EQUAL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
m_xComposerHelper->appendFilterByColumn(column,sal_True,nOp);
|
|
||||||
|
|
||||||
FilterCreator aFilterCreator;
|
FilterCreator aFilterCreator;
|
||||||
aFilterCreator.append(getFilter());
|
aFilterCreator.append(getFilter());
|
||||||
|
@@ -2216,22 +2216,7 @@ void SbaXDataBrowserController::Execute(sal_uInt16 nId, const Sequence< Property
|
|||||||
|
|
||||||
sal_Bool bParserSuccess = sal_False;
|
sal_Bool bParserSuccess = sal_False;
|
||||||
|
|
||||||
sal_Int32 nOp = SQLFilterOperator::EQUAL;
|
const sal_Int32 nOp = SQLFilterOperator::EQUAL;
|
||||||
if ( xField.is() )
|
|
||||||
{
|
|
||||||
sal_Int32 nType = 0;
|
|
||||||
xField->getPropertyValue(PROPERTY_TYPE) >>= nType;
|
|
||||||
switch(nType)
|
|
||||||
{
|
|
||||||
case DataType::VARCHAR:
|
|
||||||
case DataType::CHAR:
|
|
||||||
case DataType::LONGVARCHAR:
|
|
||||||
nOp = SQLFilterOperator::LIKE;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
nOp = SQLFilterOperator::EQUAL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( bHaving )
|
if ( bHaving )
|
||||||
{
|
{
|
||||||
|
@@ -1685,23 +1685,7 @@ namespace frm
|
|||||||
void FormOperations::impl_appendFilterByColumn_throw( const void* _pActionParam ) const
|
void FormOperations::impl_appendFilterByColumn_throw( const void* _pActionParam ) const
|
||||||
{
|
{
|
||||||
const param_appendFilterByColumn* pParam = static_cast< const param_appendFilterByColumn* >( _pActionParam );
|
const param_appendFilterByColumn* pParam = static_cast< const param_appendFilterByColumn* >( _pActionParam );
|
||||||
sal_Int32 nOp = SQLFilterOperator::EQUAL;
|
m_xParser->appendFilterByColumn( pParam->xField, sal_True, SQLFilterOperator::EQUAL );
|
||||||
if ( pParam->xField.is() )
|
|
||||||
{
|
|
||||||
sal_Int32 nType = 0;
|
|
||||||
pParam->xField->getPropertyValue(PROPERTY_FIELDTYPE) >>= nType;
|
|
||||||
switch(nType)
|
|
||||||
{
|
|
||||||
case DataType::VARCHAR:
|
|
||||||
case DataType::CHAR:
|
|
||||||
case DataType::LONGVARCHAR:
|
|
||||||
nOp = SQLFilterOperator::LIKE;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
nOp = SQLFilterOperator::EQUAL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
m_xParser->appendFilterByColumn( pParam->xField, sal_True,nOp );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user