You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.0 KiB
C#
63 lines
2.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using Mesnac.Action.Base;
|
|
using Mesnac.Codd.Session;
|
|
using System.Data;
|
|
using Mesnac.Controls.Default;
|
|
using Mesnac.Controls.Base;
|
|
|
|
namespace Mesnac.Action.Feeding.Report
|
|
{
|
|
#region 通用报表绑定
|
|
public class ReportCommon : FeedingAction, IAction
|
|
{
|
|
public void Run(RuntimeParameter runtime)
|
|
{
|
|
base.RunIni(runtime);
|
|
IBaseControl report1 = this.GetComponentContral("MCReport1").FirstOrDefault();
|
|
if (report1 == null)
|
|
{
|
|
base.LogError("{报表} 缺少name值为MCReport1表格控件...");
|
|
return;
|
|
}
|
|
DbHelper dbHelper = NewDbHelper(Mesnac.Basic.DataSourceFactory.MCDbType.Local);
|
|
if (dbHelper == null)
|
|
{
|
|
return;
|
|
}
|
|
if (report1.ActionDataSource==null)
|
|
{
|
|
if (report1 is MCReport)
|
|
{
|
|
MCReport mcreport = report1 as MCReport;
|
|
mcreport.Load(mcreport.FilePath);
|
|
mcreport.Show();
|
|
}
|
|
}
|
|
else
|
|
{
|
|
dbHelper.ClearParameter();
|
|
dbHelper.CommandType = CommandType.Text;
|
|
string sqlstr = report1.ActionDataSource;
|
|
dbHelper.CommandText = sqlstr;
|
|
DataTable table = dbHelper.ToDataTable();
|
|
if (report1 is MCReport)
|
|
{
|
|
MCReport mcreport = report1 as MCReport;
|
|
if (mcreport.SourceName == null)
|
|
{
|
|
base.LogError("{报表} MCReport1表格控件的[数据源名称]属性值为空,请赋值...");
|
|
return;
|
|
}
|
|
mcreport.Load(mcreport.FilePath);
|
|
mcreport.RegisterData(table, mcreport.SourceName);
|
|
mcreport.Show();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
}
|