本文整理汇总了C#中fyiReporting.RDL.Report类的典型用法代码示例。如果您正苦于以下问题:C# Report类的具体用法?C# Report怎么用?C# Report使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Report类属于fyiReporting.RDL命名空间,在下文中一共展示了Report类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DynamicExpression
internal DynamicExpression(Report rpt, ReportLink p, string expr, Row row)
{
_Source=expr;
_Expr = null;
_rl = p;
_Type = DoParse(rpt);
}
示例2: EvaluateString
public string EvaluateString(Report rpt, Row row)
{
if (rpt == null || rpt.UserID == null)
return Environment.UserName;
else
return rpt.UserID;
}
示例3: 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 || (current_value is double && double.IsNaN((double)current_value)))
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;
}
示例4: EvaluateDouble
public double EvaluateDouble(Report rpt, Row row)
{
bool bSave=true;
IEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return double.NaN;
ODouble v = GetValueDouble(rpt);
if (v != null)
return v.d;
double sum=0;
int count=0;
double temp;
foreach (Row r in re)
{
temp = _Expr.EvaluateDouble(rpt, r);
if (temp.CompareTo(double.NaN) != 0)
{
sum += temp;
count++;
}
}
double result;
if (count > 0)
result = (sum/count);
else
result = double.NaN;
if (bSave)
SetValue(rpt, result);
return result;
}
示例5: EvaluateInt32
public int EvaluateInt32(Report rpt, Row row)
{
bool bSave=true;
IEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return int.MinValue;
Row startrow=null;
foreach (Row r in re)
{
startrow = r; // We just want the first row
break;
}
int count;
object currentValue = _Expr.Evaluate(rpt, row);
int incr = currentValue == null? 0: 1;
if (row == startrow)
{
// must be the start of a new group
count = incr;
}
else
{
count = GetValue(rpt) + incr;
}
SetValue(rpt, count);
return count;
}
示例6: 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;
}
示例7: EvaluateDouble
public double EvaluateDouble(Report rpt, Row row)
{
bool bSave=true;
IEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return 0;
int v = GetValue(rpt);
if (v < 0)
{
object temp;
int count=0;
foreach (Row r in re)
{
temp = _Expr.Evaluate(rpt, r);
if (temp != null)
{
count++;
}
}
v = count;
if (bSave)
SetValue(rpt, v);
}
return (double) v;
}
示例8: GetX2
internal float GetX2(Report rpt)
{
float x2=GetOffsetCalc(rpt)+LeftCalc(rpt);
if (Width != null)
x2 += Width.Points;
return x2;
}
示例9: 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;
}
示例10: CleanUp
internal void CleanUp(Report rpt) // closes any connections
{
foreach (DataSourceDefn ds in _Items.Values)
{
ds.CleanUp(rpt);
}
}
示例11: GetFileBytes
public byte[] GetFileBytes(Report report)
{
var pages = report.BuildPages();
int width = (int)report.PageWidthPoints;
int height = (int)report.PageHeightPoints;
string filename = string.Format("gen-{0}.pdf", Guid.NewGuid());
try
{
using (Cairo.PdfSurface pdf = new Cairo.PdfSurface(filename, width, height))
{
using (Cairo.Context g = new Cairo.Context(pdf))
{
var render = new fyiReporting.RdlGtkViewer.RenderCairo(g);
render.RunPages(pages);
}
}
byte[] bytes = File.ReadAllBytes(filename);
return bytes;
}
finally
{
if (File.Exists(filename))
{
File.Delete(filename);
}
}
}
示例12: RenderXml
TextWriter tw; // where the output is going
#endregion Fields
#region Constructors
public RenderXml(Report rep, IStreamGen sg)
{
r = rep;
tw = sg.GetTextWriter();
stkReportItem = new Stack();
stkContainers = new Stack();
}
示例13: EvaluateString
public string EvaluateString(Report rpt, Row row)
{
if (rpt == null || rpt.ClientLanguage == null)
return CultureInfo.CurrentCulture.ThreeLetterISOLanguageName;
else
return rpt.ClientLanguage;
}
示例14: RenderExcel
IStreamGen _sg; // stream generater
#endregion Fields
#region Constructors
public RenderExcel(Report rep, IStreamGen sg)
{
r = rep;
_sg = sg; // We need this in future
_Excel = new ExcelValet();
}
示例15: EvaluateDouble
public double EvaluateDouble(Report rpt, Row row)
{
bool bSave=true;
RowEnumerable re = this.GetDataScope(rpt, row, out bSave);
if (re == null)
return 0;
int v = GetValue(rpt);
if (v < 0)
{
object temp;
int count = Math.Max(2, re.LastRow - re.FirstRow);
Hashtable ht = new Hashtable(count);
foreach (Row r in re)
{
temp = _Expr.Evaluate(rpt, r);
if (temp != null)
{
object o = ht[temp]; // search for it
if (o == null) // if not found; add it to the hash table
{
ht.Add(temp, temp);
}
}
}
v = ht.Count;
if (bSave)
SetValue(rpt, v);
}
return (double) v;
}