public override Net.Vpc.Upa.Impl.Uql.Compiledexpression.DefaultCompiledExpression Copy() { Net.Vpc.Upa.Impl.Uql.Compiledexpression.DefaultCompiledExpression[] left2 = new Net.Vpc.Upa.Impl.Uql.Compiledexpression.DefaultCompiledExpression[left.Length]; for (int i = 0; i < left2.Length; i++) { left2[i] = left[i].Copy(); } Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledInSelection o = new Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledInSelection(left2, (Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledSelect)query.Copy()); o.SetDescription(GetDescription()); o.GetClientParameters().SetAll(GetClientParameters()); return(o); }
public override string GetSQL(object oo, Net.Vpc.Upa.Persistence.EntityExecutionContext qlContext, Net.Vpc.Upa.Impl.Persistence.SQLManager sqlManager, Net.Vpc.Upa.Impl.Uql.ExpressionDeclarationList declarations) /* throws Net.Vpc.Upa.Exceptions.UPAException */ { Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledInSelection o = (Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledInSelection)oo; Net.Vpc.Upa.Impl.Uql.Compiledexpression.DefaultCompiledExpression[] left = o.GetLeft(); Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledSelect query = o.GetSelection(); if (left.Length == 1) { string q = sqlManager.GetSQL(left[0], qlContext, declarations) + " in (" + sqlManager.GetSQL(query, qlContext, declarations) + ")"; return('(' + q + ')'); } Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledUplet uplet = new Net.Vpc.Upa.Impl.Uql.Compiledexpression.CompiledUplet(left); System.Text.StringBuilder stringBuffer = new System.Text.StringBuilder(sqlManager.GetSQL(uplet, qlContext, declarations)); stringBuffer.Append(" In ("); stringBuffer.Append(sqlManager.GetSQL(query, qlContext, declarations)); stringBuffer.Append(")"); return('(' + stringBuffer.ToString() + ')'); }