User: vg Date: 05/03/23 02:53:52 Modified: /dba/dbaccess/source/ui/querydesign/ QueryDesignView.cxx
Log: INTEGRATION: CWS dba27 (1.71.20); FILE MERGED 2005/03/15 11:52:39 fs 1.71.20.2: RESYNC: (1.71-1.72); FILE MERGED 2005/03/10 14:39:42 oj 1.71.20.1: #i44704# check if table is already known from join File Changes: Directory: /dba/dbaccess/source/ui/querydesign/ =============================================== File [changed]: QueryDesignView.cxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/querydesign/QueryDesignView.cxx?r1=1.72&r2=1.73 Delta lines: +13 -1 -------------------- --- QueryDesignView.cxx 10 Mar 2005 16:52:55 -0000 1.72 +++ QueryDesignView.cxx 23 Mar 2005 10:53:49 -0000 1.73 @@ -1181,6 +1181,7 @@ ::rtl::OUString aTableListStr; // wird gebraucht um sicher zustelllen das eine Tabelle nicht doppelt vorkommt + map< ::rtl::OUString,sal_Bool,::comphelper::UStringMixLess> aTableNames; // generate outer join clause in from if(!pConnList->empty()) @@ -1200,6 +1201,18 @@ if(aJoin.getLength()) { + // insert tables into table list to avoid double entries + OQueryTableWindow* pEntryTabFrom = static_cast<OQueryTableWindow*>(pEntryConn->GetSourceWin()); + OQueryTableWindow* pEntryTabTo = static_cast<OQueryTableWindow*>(pEntryConn->GetDestWin()); + + ::rtl::OUString sTabName(BuildTable(_xConnection,pEntryTabFrom)); + if(aTableNames.find(sTabName) == aTableNames.end()) + aTableNames[sTabName] = sal_True; + sTabName = BuildTable(_xConnection,pEntryTabTo); + if(aTableNames.find(sTabName) == aTableNames.end()) + aTableNames[sTabName] = sal_True; + + // create join sal_Bool bUseEscape = ::dbtools::isDataSourcePropertyEnabled(_xConnection,PROPERTY_OUTERJOINESCAPE,sal_True); ::rtl::OUString aStr; if ( bUseEscape ) @@ -1214,7 +1227,6 @@ } // and now all inner joins - map< ::rtl::OUString,sal_Bool,::comphelper::UStringMixLess> aTableNames; aIter = pConnList->begin(); for(;aIter != pConnList->end();++aIter) { --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
