User: ihi     
Date: 2006/10/18 06:06:49

Modified:
   dba/connectivity/source/drivers/adabas/BColumns.cxx

Log:
 INTEGRATION: CWS dba205b (1.19.18); FILE MERGED
 2006/08/04 09:17:35 oj 1.19.18.1: #b5007781# overload isAutoIncrement

File Changes:

Directory: /dba/connectivity/source/drivers/adabas/
===================================================

File [changed]: BColumns.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/adabas/BColumns.cxx?r1=1.20&r2=1.21
Delta lines:  +21 -1
--------------------
--- BColumns.cxx        17 Sep 2006 02:05:25 -0000      1.20
+++ BColumns.cxx        18 Oct 2006 13:06:46 -0000      1.21
@@ -107,6 +107,26 @@
                                ::rtl::OUString sTypeName       = 
xRow->getString(6);
                                sal_Int32 nPrec                         = 
xRow->getInt(7);
                                
OAdabasCatalog::correctColumnProperties(nPrec,nType,sTypeName);
+                sal_Bool bAutoIncrement = sal_False;
+                if ( !_rName.equalsAscii("DEFAULT") && 
!m_pTable->getSchema().equalsAscii("DOMAIN") && 
!m_pTable->getTableName().equalsAscii("COLUMNS") )
+                {
+                    Reference< XStatement > xStmt = 
m_pTable->getMetaData()->getConnection()->createStatement(  );
+                    ::rtl::OUString sQuery(RTL_CONSTASCII_USTRINGPARAM("SELECT 
\"DEFAULT\" FROM DOMAIN.COLUMNS WHERE OWNER = '"));
+                    sQuery += m_pTable->getSchema();
+                    sQuery += ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("' 
AND TABLENAME = '"));
+                    sQuery += m_pTable->getTableName() + 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("' AND COLUMNNAME = '"));
+                    sQuery += _rName + 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("'"));
+                    try
+                    {
+                        Reference< XResultSet > xResult2 = 
xStmt->executeQuery(sQuery);
+                        Reference< XRow > xRow2(xResult2,UNO_QUERY);
+                        if ( xRow2.is() && xResult2->next() )
+                            bAutoIncrement = xRow2->getString(1) == 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DEFAULT STAMP"));
+                    }
+                    catch(const Exception&)
+                    {
+                    }
+                }
 
                                xRet = new OColumn(_rName,
                                                                                
        sTypeName,
@@ -115,7 +135,7 @@
                                                                                
        nPrec,
                                                                                
        xRow->getInt(9),
                                                                                
        nType,
-                                                                               
        sal_False,sal_False,sal_False,sal_True);
+                                                                               
        bAutoIncrement,sal_False,sal_False,sal_True);
                                break;
                        }
                }




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

Reply via email to