459 |
|
|
460 |
|
|
461 |
class DBSIG_DataObject(GDataObjects.DataObject): |
class DBSIG_DataObject(GDataObjects.DataObject): |
462 |
|
import re |
463 |
|
|
464 |
|
reJoinToTable = re.compile("(?:^[( ]*|JOIN\s)\s*(\w+(?:\s+as\s+\w+)?)", re.I) |
465 |
|
|
466 |
conditionElements = { |
conditionElements = { |
467 |
'add': (2, 999, '(%s)', '+' ), |
'add': (2, 999, '(%s)', '+' ), |
555 |
|
|
556 |
if self._outerJoinCondition and not self._outerJoin: |
if self._outerJoinCondition and not self._outerJoin: |
557 |
self._outerJoin = self._outerJoinConditionToSQL(self._outerJoinCondition) |
self._outerJoin = self._outerJoinConditionToSQL(self._outerJoinCondition) |
558 |
|
import re |
559 |
|
auxStr = self._outerJoin[:] |
560 |
|
self.table = ", ".join(self.reJoinToTable.findall(auxStr)) # Extrae las tablas a partir del self._outerJoin mediante |
561 |
|
# una expresión regular (gentileza de John) |
562 |
|
|
563 |
# Used by drivers with a unique id (like rowid) |
# Used by drivers with a unique id (like rowid) |
564 |
if not self._primaryIdChecked: self._checkForPrimaryId() |
if not self._primaryIdChecked: self._checkForPrimaryId() |