Tag: cws_src680_qiq
User: fs      
Date: 2006/07/06 00:13:15

Modified:
   dba/dbaccess/source/core/api/query.cxx

Log:
 #i46159# when retrieving composer columns, also use our own fallback when 
there is an _empty_ columns collection

File Changes:

Directory: /dba/dbaccess/source/core/api/
=========================================

File [changed]: query.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/core/api/query.cxx?r1=1.29.124.6&r2=1.29.124.7
Delta lines:  +5 -3
-------------------
--- query.cxx   3 Jul 2006 19:48:47 -0000       1.29.124.6
+++ query.cxx   6 Jul 2006 07:13:12 -0000       1.29.124.7
@@ -4,9 +4,9 @@
  *
  *  $RCSfile: query.cxx,v $
  *
- *  $Revision: 1.29.124.6 $
+ *  $Revision: 1.29.124.7 $
  *
- *  last change: $Author: fs $ $Date: 2006/07/03 19:48:47 $
+ *  last change: $Author: fs $ $Date: 2006/07/06 07:13:12 $
  *
  *  The Contents of this file are made available subject to
  *  the terms of GNU Lesser General Public License Version 2.1.
@@ -210,16 +210,18 @@
             Reference< XSingleSelectQueryComposer >( xFactory->createInstance( 
SERVICE_NAME_SINGLESELECTQUERYCOMPOSER ), UNO_QUERY_THROW ) );
 
         Reference< XNameAccess > xColumns;
+        Reference< XIndexAccess > xColumnsIndexed;
         try
         {
                        xComposer->setQuery( m_sCommand );
                    Reference< XColumnsSupplier > xCols( xComposer, 
UNO_QUERY_THROW );
                    xColumns.set( xCols->getColumns(), UNO_QUERY_THROW );
+            xColumnsIndexed.set( xColumns, UNO_QUERY_THROW );
         }
         catch( const SQLException& ) { }
 
         SharedUNOComponent< XPreparedStatement, DisposableComponent > 
xPreparedStatement;
-        if ( !xColumns.is() )
+        if ( !xColumns.is() || ( xColumnsIndexed->getCount() == 0 ) )
         {   // the QueryComposer could not parse it. Try a lean version.
             xPreparedStatement.set( m_xConnection->prepareStatement( 
m_sCommand ), UNO_QUERY_THROW );
                    Reference< XResultSetMetaDataSupplier > xResMetaDataSup( 
xPreparedStatement, UNO_QUERY_THROW );




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to