本文整理汇总了C#中ReportingCloud.Engine.Row类的典型用法代码示例。如果您正苦于以下问题:C# Row类的具体用法?C# Row怎么用?C# Row使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Row类属于ReportingCloud.Engine命名空间,在下文中一共展示了Row类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Evaluate
public object Evaluate(Report rpt, Row row)
{
object v = null;
if (row == null)
return null;
bool bSave=true;
RowEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return null;
Row crow=null;
bool bNext=false;
foreach (Row r in re)
{
if (bNext)
{
crow = r;
break;
}
if (r == row)
bNext = true;
}
if (crow != null)
v = _Expr.Evaluate(rpt, crow);
return v;
}
示例2: Evaluate
// Evaluate is for interpretation (and is relatively slow)
public object Evaluate(Report rpt, Row row)
{
double d = EvaluateDouble(rpt, row);
if (d.CompareTo(double.NaN) == 0)
return null;
return (object) d;
}
示例3: DynamicExpression
internal DynamicExpression(Report rpt, ReportLink p, string expr, Row row)
{
_Source=expr;
_Expr = null;
_rl = p;
_Type = DoParse(rpt);
}
示例4: Evaluate
//
public virtual object Evaluate(Report rpt, Row row)
{
if (row == null)
return null;
Field f;
string field = _ArgExpr.EvaluateString(rpt, row);
if (field == null)
return null;
f = _Fields[field] as Field;
if (f == null)
return null;
object o;
if (f.Value != null)
o = f.Value.Evaluate(rpt, row);
else
o = row.Data[f.ColumnNumber];
if (o == DBNull.Value)
return null;
if (f.RunType == TypeCode.String && o is char) // work around; mono odbc driver confuses string and char
o = Convert.ChangeType(o, TypeCode.String);
return o;
}
示例5: Evaluate
public object Evaluate(Report rpt, Row row)
{
bool bSave=true;
IEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return null;
object v = GetValue(rpt);
if (v == null)
{
object max_value=null;
object current_value;
foreach (Row r in re)
{
current_value = _Expr.Evaluate(rpt, r);
if (current_value == null)
continue;
else if (max_value == null)
max_value = current_value;
else if (Filter.ApplyCompare(_tc, max_value, current_value) < 0)
max_value = current_value;
}
v = max_value;
if (bSave)
SetValue(rpt, v);
}
return v;
}
示例6: Evaluate
public object Evaluate(Report rpt, Row row)
{
bool bSave=true;
IEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return null;
Row startrow=null;
foreach (Row r in re)
{
startrow = r; // We just want the first row
break;
}
object current_value = _Expr.Evaluate(rpt, row);
if (row == startrow)
{}
else
{
object v = GetValue(rpt);
if (current_value == null)
return v;
else if (v == null)
{} // use the current_value
else if (Filter.ApplyCompare(_tc, v, current_value) < 0)
{} // use the current_value
else
return v;
}
SetValue(rpt, current_value);
return current_value;
}
示例7: EvaluateDecimal
public decimal EvaluateDecimal(Report rpt, Row row)
{
double d = EvaluateDouble(rpt, row);
if (d.CompareTo(double.NaN) == 0)
return decimal.MinValue;
return Convert.ToDecimal(d);
}
示例8: Evaluate
//
public object Evaluate(Report rpt, Row row)
{
double di = _expr[0].EvaluateDouble(rpt, row);
int i = (int) di; // force it to integer; we'll accept truncation
if (i >= _expr.Length || i <= 0)
return null;
return _expr[i].Evaluate(rpt, row);
}
示例9: EvaluateBoolean
public bool EvaluateBoolean(Report rpt, Row row)
{
object left = _lhs.Evaluate(rpt, row);
object right = _rhs.Evaluate(rpt, row);
if (Filter.ApplyCompare(_lhs.GetTypeCode(), left, right) > 0)
return true;
else
return false;
}
示例10: EvaluateInt32
public int EvaluateInt32(Report rpt, Row row)
{
bool bSave=true;
RowEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return 0;
int count = re.LastRow - re.FirstRow + 1;
return count;
}
示例11: Evaluate
//
public virtual object Evaluate(Report rpt, Row row)
{
string o = _ArgExpr.EvaluateString(rpt, row);
if (o == null)
return null;
ReportParameter rp = _Parameters[o] as ReportParameter;
if (rp == null)
return null;
return rp.GetRuntimeValue(rpt);
}
示例12: EvaluateDouble
public double EvaluateDouble(Report rpt, Row row)
{
if (row == null || this._Scope == null)
return 0;
Grouping g = this._Scope as Grouping;
if (g == null || g.ParentGroup == null)
return 0;
// GroupEntry ge = row.R.CurrentGroups[g.Index]; // current group entry
return row.Level;
}
示例13: Evaluate
// Evaluate is for interpretation (and is relatively slow)
public object Evaluate(Report rpt, Row row)
{
bool result = _If.EvaluateBoolean(rpt, row);
if (result)
return _IfTrue.Evaluate(rpt, row);
object o = _IfFalse.Evaluate(rpt, row);
// We may need to convert IfFalse to same type as IfTrue
if (_IfTrue.GetTypeCode() == _IfFalse.GetTypeCode())
return o;
return Convert.ChangeType(o, _IfTrue.GetTypeCode());
}
示例14: Evaluate
//
public virtual object Evaluate(Report rpt, Row row)
{
if (row == null)
return null;
Textbox tb;
string t = _ArgExpr.EvaluateString(rpt, row);
if (t == null)
return null;
tb = _ReportItems[t] as Textbox;
if (tb == null)
return null;
return tb.Evaluate(rpt, row);
}
示例15: ChartBase
internal ChartBase(Report r, Row row, Chart c, MatrixCellEntry[,] m, Expression showTooltips, Expression showTooltipsX, Expression _ToolTipYFormat, Expression _ToolTipXFormat)
{
_ChartDefn = c;
_row = row;
_DataDefn = m;
_bm = null;
int width = _ChartDefn.WidthCalc(r, null);
int height = RSize.PixelsFromPoints(_ChartDefn.HeightOrOwnerHeight);
Layout = new ChartLayout(width, height);
_SeriesBrush = null;
_SeriesMarker = null;
_showToolTips = showTooltips.EvaluateBoolean(r, row);
_showToolTipsX = showTooltipsX.EvaluateBoolean(r, row);
_tooltipYFormat = _ToolTipYFormat.EvaluateString(r, row);
_tooltipXFormat = _ToolTipXFormat.EvaluateString(r, row);
}