如何将参数发送到Stimulsoft
本文关键字:Stimulsoft 参数 | 更新日期: 2023-09-27 18:37:03
public virtual ActionResult GetReportSnapshot()
{
var data = (ComparativeBalanceReportDS) TempData["ComparativeSession"];
StiReport report = new StiReport();
report.Load(Server.MapPath("~/Content/StimulReports/SampleReport.mrt"));
report.Compile();
report["fromDocumentNumber"] = "1";
report["toDocumentNumber"] = "85";
return StiMvcViewer.GetReportSnapshotResult(HttpContext, report);
}
我有存储过程并在设计器中执行,但我不向其发送参数以及何时运行应用程序,我收到以下错误:
错误:SqlCommand.Prepare 方法要求所有可变长度参数具有显式设置的非零大小。
我该怎么办?
我的问题已使用以下代码解决:
public virtual ActionResult GetReportSnapshot()
{
var data = (ComparativeBalanceReportDS) TempData["ComparativeSession"];
StiReport report = new StiReport();
report.Dictionary.DataStore.Clear();
report.Load(Server.MapPath("~/Content/StimulReports/SampleReport.mrt"));
report["@enterpriseId"] = data.EnterpriseId;
report["@toDocumentNumber"] = data.NumberFilter.FromDocumentDocumentNumber;
report["@fromDocumentNumber"] = data.NumberFilter.ToDocumentDocumentNumber;
report["@fromDate"] = data.DateFilter.FromDocumentDate.Value;
report["@toDate"] = data.DateFilter.ToDocumentDate.Value;
return StiMvcViewer.GetReportSnapshotResult(HttpContext, report);
}
在编译报告之前,可以使用以下代码:
report.Dictionary.DataSources["DataSourceName"].Parameters["ParameterName"].Value = ""
您也可以在参数表达式中使用其他变量。在这种情况下,应在呈现报表之前设置变量的值。