Crystal report превышает лимит рабочих мест обработки
я получаю ошибку :
Достигнут максимальный лимит заданий обработки отчетов, настроенный системным администратором."
Изучив тему Онлайн, я нашел какое-то решение,установил значение реестра, в частности HKEY_LOCAL_MACHINE\SOFTWARE\Business Objects\Suite 12.0\Report Application Server\InprocServer\PrintJobLimit на "-1" ,но это решение не работает,если я добавлю функцию crystal report dispose и close в свой код,то сгенерированный мной crystal report будет пустым. Ниже приведен мой код aspx:
<asp:DropDownList ID="dllselection" onchange="javascript:return dropdown(this);" runat="server" Style="border: groove" CssClass="form-control" AutoPostBack="true"> <asp:ListItem Text="On Job Training" Value="3"></asp:ListItem> <asp:ListItem Text="Training Effectiveness Form" Value="4"></asp:ListItem> </asp:DropDownList> <asp:Button ID="Button1" runat="server" Text="Generate" CssClass="btn btn-success" OnClick="Button1_Click" /> <div id="dvReport"> <CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" AutoDataBind="true" ToolPanelView="None" EnableDatabaseLogonPrompt="False" PrintMode="Pdf" /> </div>
<pre lang="C#">protected void Page_Load(object sender, EventArgs e) { Response.Clear(); Response.Buffer = true; if (IsPostBack) { if (dllselection.SelectedValue == "3") { ReportDocument myDataReport = new CrystalDecisions.CrystalReports.Engine.ReportDocument(); myDataReport.Load(Server.MapPath("OJT.rpt")); myDataReport.SetDatabaseLogon("intranet", "cpgintranet@2016", "192.168.2.5", "INTRANET"); myDataReport.SetParameterValue("T-ID", TextBox1.Text); CrystalReportViewer1.ReportSource = myDataReport; CrystalReportViewer1.DataBind(); } else if (dllselection.SelectedValue == "4") { ReportDocument myDataReport = new CrystalDecisions.CrystalReports.Engine.ReportDocument(); myDataReport.Load(Server.MapPath("TEFF.rpt")); myDataReport.SetDatabaseLogon("intranet", "cpgintranet@2016", "192.168.2.5", "INTRANET"); myDataReport.SetParameterValue("T-ID", TextBox1.Text); CrystalReportViewer1.ReportSource = myDataReport; CrystalReportViewer1.DataBind(); } } } protected void Button1_Click(object sender, EventArgs e) { Response.Clear(); Response.Buffer = true; if (dllselection.SelectedValue == "3") { ReportDocument myDataReport = new CrystalDecisions.CrystalReports.Engine.ReportDocument(); myDataReport.Load(Server.MapPath("OJT.rpt")); myDataReport.SetDatabaseLogon("intranet", "abc@2016", "192.168.2.88", "INTRANET"); myDataReport.SetParameterValue("T-ID", TextBox1.Text); CrystalReportViewer1.ReportSource = myDataReport; CrystalReportViewer1.DataBind(); } else if (dllselection.SelectedValue == "4") { ReportDocument myDataReport = new CrystalDecisions.CrystalReports.Engine.ReportDocument(); myDataReport.Load(Server.MapPath("TEFF.rpt")); myDataReport.SetDatabaseLogon("intranet", "abc@2016", "192.168.2.88", "INTRANET"); myDataReport.SetParameterValue("T-ID", TextBox1.Text); CrystalReportViewer1.ReportSource = myDataReport; CrystalReportViewer1.DataBind(); } }
Что я уже пробовал:
Having researched the topic online i found some solution,set registry value, specifically HKEY_LOCAL_MACHINE\SOFTWARE\Business Objects\Suite 12.0\Report Application Server\InprocServer\PrintJobLimit to "-1" ,but this solution is not working,if i adding crystal report dispose and close function in my code,the crystal report i generated will be empty