diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs
index 46aea1941f..ec830ebc5a 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs
@@ -216,10 +216,8 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
foreach (BaseExportColumn element in items) {
ExportContainer cont = element as ExportContainer;
if (cont != null) {
- Console.WriteLine("-------Container ----{0}-----",cont.StyleDecorator.Location);
ShowLocations(cont.Items);
}
- System.Console.WriteLine ("{0} - {1}",element.ToString(),element.StyleDecorator.Location.ToString());
}
}
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ChildNavigator.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ChildNavigator.cs
index f31455795c..355615eb9e 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ChildNavigator.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ChildNavigator.cs
@@ -91,8 +91,8 @@ namespace ICSharpCode.Reports.Core
public CurrentItemsCollection GetDataRow
{
get {
- var ss = this.indexList[this.indexList.CurrentPosition].ListIndex;
- return dataStore.FillDataRow(ss);
+ var position = this.indexList[this.indexList.CurrentPosition].ListIndex;
+ return dataStore.FillDataRow(position);
}
}
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/TableStrategy.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/TableStrategy.cs
index ab0e93ed80..5a44355fb3 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/TableStrategy.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/TableStrategy.cs
@@ -13,7 +13,7 @@ namespace ICSharpCode.Reports.Core
///
/// Description of TableStrategy.
///
- internal class TableStrategy: BaseListStrategy,IEnumerable
+ internal class TableStrategy: BaseListStrategy,IEnumerable
{
private DataTable table;
@@ -87,6 +87,36 @@ namespace ICSharpCode.Reports.Core
}
+ public override CurrentItemsCollection FillDataRow(int pos)
+ {
+ //this.table.Rows[pos];
+ DataRow row = (DataRow) CurrentFromPosition(pos);
+ return FillCurrentRow(row);
+ }
+
+
+ public override CurrentItemsCollection FillDataRow()
+ {
+ DataRow row =this.Current as DataRow;
+ return FillCurrentRow(row);
+ }
+
+
+ CurrentItemsCollection FillCurrentRow( DataRow row)
+ {
+ CurrentItemsCollection ci = new CurrentItemsCollection();
+ if (row != null) {
+ CurrentItem c = null;
+ foreach (DataColumn dc in table.Columns) {
+ c = new CurrentItem();
+ c.ColumnName = dc.ColumnName;
+ c.DataType = dc.DataType;
+ c.Value = row[dc.ColumnName];
+ ci.Add(c);
+ }
+ }
+ return ci;
+ }
public override bool MoveNext()
{
return base.MoveNext();
@@ -176,26 +206,7 @@ namespace ICSharpCode.Reports.Core
#region Test
- public override CurrentItemsCollection FillDataRow()
- {
- CurrentItemsCollection ci = base.FillDataRow();
- DataRow row = this.Current as DataRow;
-
- if (row != null) {
- CurrentItem c = null;
- foreach (DataColumn dc in table.Columns)
- {
- c = new CurrentItem();
- c.ColumnName = dc.ColumnName;
- c.DataType = dc.DataType;
- c.Value = row[dc.ColumnName];
- ci.Add(c);
- }
- }
- return ci;
- }
-
public override object CurrentFromPosition (int pos)
{
return this.table.Rows[pos];
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs
index da678bdee8..0ab418e150 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs
@@ -78,7 +78,6 @@ namespace ICSharpCode.Reports.Core.Exporter
if (row == null) {
throw new ArgumentException("row");
}
-// Console.WriteLine("\tFireRowRendering");
RowRenderEventArgs rrea = new RowRenderEventArgs(row,currentNavigator.Current);
EventHelper.Raise(RowRendering,this,rrea);
}
@@ -86,7 +85,6 @@ namespace ICSharpCode.Reports.Core.Exporter
protected void FireGroupHeaderRendering (GroupHeader groupHeader)
{
-// Console.WriteLine("\tFireGroupHeaderRendering");
GroupHeaderEventArgs ghea = new GroupHeaderEventArgs(groupHeader);
EventHelper.Raise(GroupHeaderRendering,this,ghea);
}
@@ -182,56 +180,52 @@ namespace ICSharpCode.Reports.Core.Exporter
return new ExporterCollection();;
}
- public Point CurrentPosition {get;set;}
+
#endregion
+ public Point CurrentPosition {get;set;}
+
public Rectangle ParentRectangle {get;private set;}
public ISinglePage SinglePage {get;private set;}
public SectionBounds SectionBounds {get; private set;}
-
public IDataNavigator DataNavigator {get;private set;}
-
public ILayouter Layouter {get; private set;}
-
public Graphics Graphics {get;set;}
-
protected IExpressionEvaluatorFacade Evaluator{get;private set;}
protected int DefaultLeftPosition {get;set;}
-
protected void SaveSectionSize(Size size)
{
this.saveSize = size;
}
-
protected Size RestoreSectionSize
{
get {return this.saveSize;}
}
-
protected void PrepareContainerForConverting(BaseSection section,ISimpleContainer simpleContainer)
{
FireSectionRendering(section);
LayoutHelper.SetLayoutForRow(Graphics,Layouter,simpleContainer);
}
- protected Point ConvertStandardRow(ExporterCollection mylist, ISimpleContainer simpleContainer)
+ protected Point ConvertStandardRow(ExporterCollection mylist,ISimpleContainer simpleContainer)
{
var rowSize = simpleContainer.Size;
Point curPos = new Point(DefaultLeftPosition, CurrentPosition.Y);
ExporterCollection ml = BaseConverter.ConvertItems (simpleContainer, curPos);
EvaluationHelper.EvaluateRow(Evaluator,ml);
+
mylist.AddRange(ml);
curPos = new Point (DefaultLeftPosition,CurrentPosition.Y + simpleContainer.Size.Height);
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
index 8e9babe3ec..a6d6d6d3aa 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
@@ -82,9 +82,7 @@ namespace ICSharpCode.Reports.Core.Exporter
IDataNavigator childNavigator = base.DataNavigator.GetChildNavigator;
base.Evaluator.SinglePage.IDataNavigator = childNavigator;
- //Console.WriteLine("Header start {0}",base.CurrentPosition);
base.CurrentPosition = ConvertGroupHeader(exporterCollection,section,base.CurrentPosition);
- //Console.WriteLine("Header end {0}",base.CurrentPosition);
section.Size = base.RestoreSectionSize;
section.Items[0].Size = groupSize;
section.Items[1].Size = childSize;
@@ -94,10 +92,9 @@ namespace ICSharpCode.Reports.Core.Exporter
//Convert children
if (childNavigator != null) {
-// StandardPrinter.AdjustBackColor(simpleContainer,GlobalValues.DefaultBackColor);
StandardPrinter.AdjustBackColor(simpleContainer);
do
- {
+ {
section.Size = base.RestoreSectionSize;
section.Items[0].Size = groupSize;
section.Items[1].Size = childSize;
@@ -105,11 +102,12 @@ namespace ICSharpCode.Reports.Core.Exporter
FillRow(simpleContainer,childNavigator);
FireRowRendering(simpleContainer,childNavigator);
PrepareContainerForConverting(section,simpleContainer);
+// base.Evaluator.SinglePage.IDataNavigator = childNavigator;
base.CurrentPosition = ConvertStandardRow(exporterCollection,simpleContainer);
CheckForPageBreak(section,exporterCollection);
}
while ( childNavigator.MoveNext());
- //Console.WriteLine("child end {0}",base.CurrentPosition);
+
// GroupFooter
base.ConvertGroupFooter(section,exporterCollection);
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ExpressionEvaluatorFacade.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ExpressionEvaluatorFacade.cs
index 1043c33489..5e6d74c7f1 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ExpressionEvaluatorFacade.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ExpressionEvaluatorFacade.cs
@@ -36,15 +36,18 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
try {
if (CanEvaluate(expression)) {
IExpression compiled = compiler.CompileExpression(expression);
+
this.context.ContextObject = this.SinglePage;
if (compiled != null) {
return (compiled.Evaluate(context)).ToString();
}
}
} catch (Exception e) {
-
-// Console.WriteLine("error");
expression = e.Message;
+ Console.WriteLine("");
+ Console.WriteLine("ExpressionEvaluatorFacade.Evaluate");
+ Console.WriteLine(e.Message);
+ Console.WriteLine("");
}
return expression;
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/AggregateFunctions/AggregateFunction.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/AggregateFunctions/AggregateFunction.cs
index 07aaece72d..428e736bda 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/AggregateFunctions/AggregateFunction.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/AggregateFunctions/AggregateFunction.cs
@@ -109,8 +109,6 @@ namespace SimpleExpressionEvaluator.Compilation.Functions.AggregateFunctions
private List