如何使用Acumatica Report Designer中的参数在存储过程SQL Server中使用?

时间:2016-02-27 04:30:33

标签: acumatica

当我创建报表设计器时,它有2个参数:StartDate和EndDate所以如果我想在sql server store过程中使用它,那我该怎么办?

1 个答案:

答案 0 :(得分:0)

如果您尝试使用存储过程来构建临时表,则需要为报表构建一个屏幕,该屏幕首先调用存储过程然后再调用报表。如果您的报告可以添加到PXAction按钮下的现有页面,这也可以。请查看VendorMaint的示例。

有关调用存储过程的示例:

sp_MySP_Parms = new PXSPParameter[2];

//spParm1 and spParm2 must match your stored procedure parm names
PXSPInParameter parm1 = new PXSPInParameter("spParm1", "SomeValue1");
PXSPInParameter parm2 = new PXSPInParameter("spParm2", "SomeValue2");

sp_MySP_Parms[0] = parm1;
sp_MySP_Parms[1] = parm2;

object[] ret = PXDatabase.Execute("MySqlSPName", sp_MySP_Parms);

有关从屏幕图调用报表的示例,您可以在源代码中搜索PXReportRequiredException。以下是供应商维护调用供应商平衡报告的示例:

Dictionary<string, string> parameters = new Dictionary<string, string>();
parameters["VendorID"] = vendor.AcctCD;
throw new PXReportRequiredException(parameters, "AP632500", AP.Messages.BalanceByVendor);