如何使用Acumatica报表设计器中的参数来使用存储过程SQL Server?

如何使用Acumatica报表设计器中的参数来使用存储过程SQL Server?,acumatica,Acumatica,当我创建报表设计器时,它有2个参数:StartDate和EndDate,所以如果我想在sql server存储过程中使用它,我该怎么做?如果您试图使用存储过程来构建临时表,则需要为报表构建一个屏幕,首先调用存储过程,然后再调用报表。如果您的报告可以添加到PXAction按钮下的现有页面,这也会起作用。请看VendorMaint以了解这方面的示例 有关调用存储过程的示例: sp_MySP_Parms = new PXSPParameter[2]; //spParm1 and spParm2 mu

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

如果您试图使用存储过程来构建临时表,则需要为报表构建一个屏幕,首先调用存储过程,然后再调用报表。如果您的报告可以添加到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);
Dictionary参数=新建Dictionary();
参数[“VendorID”]=vendor.acctd;
抛出新的PXReportRequiredException(参数“AP632500”、AP.Messages.BalanceByVendor);