private void ConvertGroups(Report report) { var reportGroupings = new List <GroupExp>(); foreach (var grouping in Base.GroupBy.Select().RowCast <GIGroupBy>() .Where(g => g.IsActive == true && !String.IsNullOrEmpty(g.DataFieldName))) { var reportGrouping = new GroupExp(NormalizeFieldName(grouping.DataFieldName)); reportGroupings.Add(reportGrouping); } if (reportGroupings.Count > 0) { var reportGroup = new Group() { Name = "group1" }; reportGroup.Headers.Add(new GroupHeaderSection() { Name = "groupHeaderSection1" }); reportGroup.Footers.Add(new GroupFooterSection() { Name = "groupFooterSection1" }); reportGroup.Grouping.AddRange(reportGroupings); report.Groups.Add(reportGroup); } }
public void OnGroup(GroupExp exp) { exp.exp1.Visit(this); if (exp.exp1.IsNullable) { exp.exp2.Visit(this); } }
public Expression OnGroup( GroupExp exp ) { Expression r1 = builder.CreateSequence(exp.exp1.Visit(this),exp.exp2); if( exp.exp1.IsNullable ) return builder.CreateChoice( r1, exp.exp2.Visit(this) ); else return r1; }
private static Exp ParseGroup(dynamic obj) { var group = new GroupExp(); group.Op = obj.op; group.Children = ((IEnumerable<dynamic>)obj.children) .Select(ParseExp) .ToList(); return group; }
public Expression OnGroup(GroupExp exp) { Expression r1 = builder.CreateSequence(exp.exp1.Visit(this), exp.exp2); if (exp.exp1.IsNullable) { return(builder.CreateChoice(r1, exp.exp2.Visit(this))); } else { return(r1); } }
public override Expression OnGroup(GroupExp exp) { Expression e1 = exp.exp1.Visit(this); Expression e2 = exp.exp2.Visit(this); if (e1 == Expression.NotAllowed) { return(builder.CreateSequence(exp.exp1, e2)); } if (e2 == Expression.NotAllowed) { return(builder.CreateSequence(e1, exp.exp2)); } return(builder.CreateChoice( builder.CreateSequence(exp.exp1, e2), builder.CreateSequence(e1, exp.exp2))); }
private static Dictionary<string, object> SerializeGroup(GroupExp g) { return new Dictionary<string, object> { { "type", 0 }, { "op", g.Op }, { "children", g.Children.Select(SerializeExpr) } }; }
public void T1() { var c1 = new ConditionExp { Field = new Field { Name = "Id" }, Op = FieldOp.Gt, Value = 1 }; var c2 = new ConditionExp { Field = new Field { Name = "Name" }, Op = FieldOp.Contains, Value = "shai" }; var c3 = new ConditionExp { Field = new ForeignField { Name = "Invitations", ForeignFieldName = "Date" }, Op = FieldOp.Eq, Value = DateTime.Now.Date }; var group = new GroupExp { Op = LogicalOp.And, Children = new List<Exp> { c1, c2, c3 } }; var tbl = new TableExp { Name = "Person", Exp = group }; var db = new DB(ConString); var queryableData = db.Persons.AsQueryable(); var results = queryableData.From(tbl).ToArray(); }
public virtual Expression OnGroup(GroupExp exp) { return(builder.CreateSequence( exp.exp1.Visit(this), exp.exp2.Visit(this))); }
public void OnGroup( GroupExp exp ) { OnBinExp(exp,","); }