/// <summary> /// Convert a single item, Location is calculated as follows /// </summary> /// <param name="offset"> only Y value is used, gives the offset to Items location.Y </param> /// <param name="item">Item to convert</param> /// <returns></returns> private static void RenderLineItem(BaseReportItem item, Point offset, IExpressionEvaluatorFacade evaluator, ReportPageEventArgs rpea) { Point saveLocation = new Point(item.Location.X, item.Location.Y); PrintHelper.AdjustChildLocation(item, offset); IReportExpression epr = item as IReportExpression; string evaluatedValue = String.Empty; if (epr != null) { try { if (!String.IsNullOrEmpty(epr.Expression)) { evaluatedValue = evaluator.Evaluate(epr.Expression); } else { evaluatedValue = evaluator.Evaluate(epr.Text); } epr.Text = evaluatedValue; } catch (UnknownFunctionException ufe) { epr.Text = GlobalValues.UnkownFunctionMessage(ufe.Message); } } item.Render(rpea); item.Location = saveLocation; }
public void Evaluate (IReportExpression expressionItem) { if (expressionItem == null) { throw new ArgumentException("expressionItem"); } string expr = String.Empty; if (!String.IsNullOrEmpty(expressionItem.Expression)) { expr = expressionItem.Expression; } else { expr = expressionItem.Text; } expressionItem.Text = Evaluate(expr); }
public static void EvaluateRow(IExpressionEvaluatorFacade evaluator, ExporterCollection row) { foreach (BaseExportColumn column in row) { var container = column as IExportContainer; if (container != null) { EvaluateRow(evaluator, container.Items); } IReportExpression expressionItem = column as IReportExpression; if (expressionItem != null) { evaluator.Evaluate(expressionItem); } } }
public static void EvaluateReportItems(IExpressionEvaluatorFacade evaluator, ReportItemCollection items) { foreach (BaseReportItem column in items) { var container = column as ISimpleContainer; if (container != null) { EvaluateReportItems(evaluator, container.Items); } IReportExpression expressionItem = column as IReportExpression; if (expressionItem != null) { evaluator.Evaluate(expressionItem); } } }
public void Evaluate(IReportExpression expressionItem) { if (expressionItem == null) { throw new ArgumentException("expressionItem"); } string expr = String.Empty; if (!String.IsNullOrEmpty(expressionItem.Expression)) { expr = expressionItem.Expression; } else { expr = expressionItem.Text; } expressionItem.Text = Evaluate(expr); }
private static void EvaluateRecursive(IExpressionEvaluatorFacade evaluatorFassade, ExporterCollection items) { foreach (BaseExportColumn exportColumn in items) { IExportContainer ec = exportColumn as IExportContainer; if (ec != null) { if (ec.Items.Count > 0) { EvaluateRecursive(evaluatorFassade, ec.Items); } } IReportExpression expressionItem = exportColumn as IReportExpression; if (expressionItem != null) { evaluatorFassade.Evaluate(expressionItem); } } }