protected SQLSelectStatement createSQLSelectStatementForUpdateAllForOracleAnonymousBlock(HashMap tables_databaseFieldsToValues) { ExpressionBuilder builder = ((UpdateAllQuery)getQuery()).getExpressionBuilder(); Expression whereClause = getSelectionCriteria(); ReportQuery reportQuery = new ReportQuery(getDescriptor().getJavaClass(), builder); reportQuery.setDescriptor(getDescriptor()); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); reportQuery.setShouldRetrievePrimaryKeys(true); Iterator itDatabaseFieldsToValues = tables_databaseFieldsToValues.values().iterator(); while(itDatabaseFieldsToValues.hasNext()) { HashMap databaseFieldsToValues = (HashMap)itDatabaseFieldsToValues.next(); Iterator itValues = databaseFieldsToValues.values().iterator(); while(itValues.hasNext()) { reportQuery.addAttribute("", (Expression)itValues.next()); } } SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForUpdateAllForOracleAnonymousBlock(HashMap tables_databaseFieldsToValues) { ExpressionBuilder builder = ((UpdateAllQuery)getQuery()).getExpressionBuilder(); Expression whereClause = getSelectionCriteria(); ReportQuery reportQuery = new ReportQuery(getDescriptor().getJavaClass(), builder); reportQuery.setDescriptor(getDescriptor()); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); reportQuery.setShouldRetrievePrimaryKeys(true); Iterator itDatabaseFieldsToValues = tables_databaseFieldsToValues.values().iterator(); while(itDatabaseFieldsToValues.hasNext()) { HashMap databaseFieldsToValues = (HashMap)itDatabaseFieldsToValues.next(); Iterator itValues = databaseFieldsToValues.values().iterator(); while(itValues.hasNext()) { reportQuery.addAttribute("", (Expression)itValues.next()); } } SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForUpdateAllForOracleAnonymousBlock(HashMap tables_databaseFieldsToValues) { ExpressionBuilder builder = ((UpdateAllQuery)getQuery()).getExpressionBuilder(); Expression whereClause = getSelectionCriteria(); ReportQuery reportQuery = new ReportQuery(getDescriptor().getJavaClass(), builder); reportQuery.setDescriptor(getDescriptor()); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); reportQuery.setShouldRetrievePrimaryKeys(true); Iterator itDatabaseFieldsToValues = tables_databaseFieldsToValues.values().iterator(); while(itDatabaseFieldsToValues.hasNext()) { HashMap databaseFieldsToValues = (HashMap)itDatabaseFieldsToValues.next(); Iterator itValues = databaseFieldsToValues.values().iterator(); while(itValues.hasNext()) { reportQuery.addAttribute("", (Expression)itValues.next()); } } SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForModifyAllForTempTable(HashMap databaseFieldsToValues) { ExpressionBuilder builder = ((ModifyAllQuery)getQuery()).getExpressionBuilder(); Expression whereClause = getSelectionCriteria(); ReportQuery reportQuery = new ReportQuery(getDescriptor().getJavaClass(), builder); reportQuery.setDescriptor(getDescriptor()); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); reportQuery.setShouldRetrievePrimaryKeys(true); if(databaseFieldsToValues != null) { Iterator itValues = databaseFieldsToValues.values().iterator(); while(itValues.hasNext()) { reportQuery.addAttribute("", (Expression)itValues.next()); } } SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForModifyAllForTempTable(HashMap databaseFieldsToValues) { ExpressionBuilder builder = ((ModifyAllQuery)getQuery()).getExpressionBuilder(); Expression whereClause = getSelectionCriteria(); ReportQuery reportQuery = new ReportQuery(getDescriptor().getJavaClass(), builder); reportQuery.setDescriptor(getDescriptor()); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); reportQuery.setShouldRetrievePrimaryKeys(true); if(databaseFieldsToValues != null) { Iterator itValues = databaseFieldsToValues.values().iterator(); while(itValues.hasNext()) { reportQuery.addAttribute("", (Expression)itValues.next()); } } SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForModifyAllForTempTable(HashMap databaseFieldsToValues) { ExpressionBuilder builder = ((ModifyAllQuery)getQuery()).getExpressionBuilder(); Expression whereClause = getSelectionCriteria(); ReportQuery reportQuery = new ReportQuery(getDescriptor().getJavaClass(), builder); reportQuery.setDescriptor(getDescriptor()); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); reportQuery.setShouldRetrievePrimaryKeys(true); if(databaseFieldsToValues != null) { Iterator itValues = databaseFieldsToValues.values().iterator(); while(itValues.hasNext()) { reportQuery.addAttribute("", (Expression)itValues.next()); } } SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForAssignedExpressionForUpdateAll(Expression value) { ReportQuery reportQuery = new ReportQuery(getQuery().getReferenceClass(), value.getBuilder()); reportQuery.setDescriptor(getQuery().getDescriptor()); reportQuery.setSession(getSession()); reportQuery.addAttribute("", value); SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForAssignedExpressionForUpdateAll(Expression value) { ReportQuery reportQuery = new ReportQuery(getQuery().getReferenceClass(), value.getBuilder()); reportQuery.setDescriptor(getQuery().getDescriptor()); reportQuery.setSession(getSession()); reportQuery.addAttribute("", value); SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForAssignedExpressionForUpdateAll(Expression value) { ReportQuery reportQuery = new ReportQuery(getQuery().getReferenceClass(), value.getBuilder()); reportQuery.setDescriptor(getQuery().getDescriptor()); reportQuery.setSession(getSession()); reportQuery.addAttribute("", value); SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false); reportQuery.setSession(null); return selectStatement; }
/** * Customary inheritance expression is required for DeleteAllQuery and UpdateAllQuery preparation. * Ability to switch off AdditionalJoinExpression is required for DeleteAllQuery. */ protected SQLSelectStatement createSQLSelectStatementForModifyAll(Expression whereClause, Expression inheritanceExpression, ClassDescriptor desc, boolean useCustomaryInheritanceExpression, boolean shouldUseAdditionalJoinExpression) { ExpressionBuilder builder; if(whereClause != null) { whereClause = (Expression)whereClause.clone(); builder = whereClause.getBuilder(); } else { builder = new ExpressionBuilder(); } ReportQuery reportQuery = new ReportQuery(desc.getJavaClass(), builder); reportQuery.setDescriptor(desc); reportQuery.setShouldRetrieveFirstPrimaryKey(true); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false, useCustomaryInheritanceExpression, inheritanceExpression, shouldUseAdditionalJoinExpression); reportQuery.setSession(null); return selectStatement; }
protected SQLSelectStatement createSQLSelectStatementForModifyAll(Expression whereClause, Expression inheritanceExpression, ClassDescriptor desc, boolean useCustomaryInheritanceExpression) { ExpressionBuilder builder; if(whereClause != null) { whereClause = (Expression)whereClause.clone(); builder = whereClause.getBuilder(); } else { builder = new ExpressionBuilder(); } ReportQuery reportQuery = new ReportQuery(desc.getJavaClass(), builder); reportQuery.setDescriptor(desc); reportQuery.setShouldRetrieveFirstPrimaryKey(true); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false, useCustomaryInheritanceExpression, inheritanceExpression); reportQuery.setSession(null); return selectStatement; }
/** * Customary inheritance expression is required for DeleteAllQuery and UpdateAllQuery preparation. * Ability to switch off AdditionalJoinExpression is required for DeleteAllQuery. */ protected SQLSelectStatement createSQLSelectStatementForModifyAll(Expression whereClause, Expression inheritanceExpression, ClassDescriptor desc, boolean useCustomaryInheritanceExpression, boolean shouldUseAdditionalJoinExpression) { ExpressionBuilder builder; if(whereClause != null) { whereClause = (Expression)whereClause.clone(); builder = whereClause.getBuilder(); } else { builder = new ExpressionBuilder(); } ReportQuery reportQuery = new ReportQuery(desc.getJavaClass(), builder); reportQuery.setDescriptor(desc); reportQuery.setShouldRetrieveFirstPrimaryKey(true); reportQuery.setSelectionCriteria(whereClause); reportQuery.setSession(getSession()); SQLSelectStatement selectStatement = ((ExpressionQueryMechanism)reportQuery.getQueryMechanism()).buildReportQuerySelectStatement(false, useCustomaryInheritanceExpression, inheritanceExpression, shouldUseAdditionalJoinExpression); reportQuery.setSession(null); return selectStatement; }
/** * INTERNAL: * Prepare the receiver for being printed inside a subselect. * This prepares the statement but not the call. */ public synchronized void prepareSubSelect(AbstractSession session, AbstractRecord translationRow, Map clonedExpressions) throws QueryException { if (isPrepared()) { return; } setIsPrepared(true); setSession(session); setTranslationRow(translationRow); checkDescriptor(getSession()); if (descriptor.isAggregateDescriptor()) { // Not allowed throw QueryException.aggregateObjectCannotBeDeletedOrWritten(descriptor, this); } try { for (ReportItem item : getItems()) { item.initialize(this); } } catch (QueryException exception) { exception.setQuery(this); throw exception; } prepareObjectAttributeCount(clonedExpressions); getQueryMechanism().prepareReportQuerySubSelect(); setSession(null); setTranslationRow(null); }
setSession(session); setTranslationRow(translationRow); setSession(null); setTranslationRow(null);
/** * INTERNAL: * Prepare the receiver for being printed inside a subselect. * This prepares the statement but not the call. */ public synchronized void prepareSubSelect(AbstractSession session, AbstractRecord translationRow, Map clonedExpressions) throws QueryException { if (isPrepared()) { return; } setIsPrepared(true); setSession(session); setTranslationRow(translationRow); checkDescriptor(getSession()); if (descriptor.isAggregateDescriptor()) { // Not allowed throw QueryException.aggregateObjectCannotBeDeletedOrWritten(descriptor, this); } try { for (ReportItem item : getItems()) { item.initialize(this); } } catch (QueryException exception) { exception.setQuery(this); throw exception; } prepareObjectAttributeCount(clonedExpressions); getQueryMechanism().prepareReportQuerySubSelect(); setSession(null); setTranslationRow(null); }