[Erp5-report] r24943 - /erp5/trunk/products/ZSQLCatalog/SQLCatalog.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Fri Dec 19 11:27:37 CET 2008
Author: vincent
Date: Fri Dec 19 11:27:33 2008
New Revision: 24943
URL: http://svn.erp5.org?rev=24943&view=rev
Log:
When query_table was explicitely given a None value, prevent joins from happening.
Other uses in that function are None-safe:
- first use checks that query_table exavuates to True before using
- (this fix applied to the second use)
- third use is to provide related keys with a query_tabe parameter. So when using a related key it is either meaningless (if related key ignores that parameter, it means that it hadcodes its "source" table) or fixable (by making related key handle a None query_table nicely, if not already the case).
Modified:
erp5/trunk/products/ZSQLCatalog/SQLCatalog.py
Modified: erp5/trunk/products/ZSQLCatalog/SQLCatalog.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SQLCatalog.py?rev=24943&r1=24942&r2=24943&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SQLCatalog.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SQLCatalog.py [utf8] Fri Dec 19 11:27:33 2008
@@ -2060,9 +2060,10 @@
select_expression_list.extend(query_result['select_expression_list'])
# Calculate extra where_expression based on required joins
- for k, tid in from_table_dict.items():
- if k != query_table:
- where_expression_list.append('%s.uid = %s.uid' % (query_table, tid))
+ if query_table:
+ for k, tid in from_table_dict.items():
+ if k != query_table:
+ where_expression_list.append('%s.uid = %s.uid' % (query_table, tid))
# Calculate extra where_expressions based on related definition
for (table_list, method_id) in related_methods.keys():
related_method = getattr(self, method_id, None)
More information about the Erp5-report
mailing list