Our product uses Crystal Reports as our report designer. Since our customers want to be able to customize these reports, we are requiring them also to purchase Crystal Reports. We have a problem with one of our reports which is causing some difficulty with redeploying the program to another computer.
The database we are using is SQL Server; we are connecting via OLE DB. I know that Crystal Reports embeds a reference to both the SQL Server server and the database inside each report. We would like the reports to use the local SQL Server server and database for their data source.
The problem is that the reports work properly on the test machine but one of them fails when redeployed to another computer. All of our reports are based on tables or views except one which was based on a stored procedure. The stored procedure originally required two parameters. I managed to get this working on a deployed machine, but then the report would prompt the user with a dialog box for the parameters. I didn't want this to happen because the default dialog box was rather ungainly, and because one of the parameters was meaningless to the user anyway. I wanted to pass a single index value to the report and have it open a dataset based on a query on that value. Finally I bypassed the parameters problem by having the program store the value in a table and having the stored procedure read it from there. So now the stored procedure would be called without parameters. After making this change I got the report working on my test machine. After deploying it to another machine the report would fail with this error: "No rowset was returned for this table, query, or procedure." I thought that since this is the only report based on a stored procedure rather than a table or view, the problem was being caused by using a stored procedure. So I changed the stored procedure to write its data to a regular table and pointed the report to the table. After this fix, I still find it works on my test machine and fails with the "no rowset" error on a deployed machine. So that wasn't the answer.
Any ideas? I am still working on debugging this. Any suggestions you may have would be very helpful.
The database we are using is SQL Server; we are connecting via OLE DB. I know that Crystal Reports embeds a reference to both the SQL Server server and the database inside each report. We would like the reports to use the local SQL Server server and database for their data source.
The problem is that the reports work properly on the test machine but one of them fails when redeployed to another computer. All of our reports are based on tables or views except one which was based on a stored procedure. The stored procedure originally required two parameters. I managed to get this working on a deployed machine, but then the report would prompt the user with a dialog box for the parameters. I didn't want this to happen because the default dialog box was rather ungainly, and because one of the parameters was meaningless to the user anyway. I wanted to pass a single index value to the report and have it open a dataset based on a query on that value. Finally I bypassed the parameters problem by having the program store the value in a table and having the stored procedure read it from there. So now the stored procedure would be called without parameters. After making this change I got the report working on my test machine. After deploying it to another machine the report would fail with this error: "No rowset was returned for this table, query, or procedure." I thought that since this is the only report based on a stored procedure rather than a table or view, the problem was being caused by using a stored procedure. So I changed the stored procedure to write its data to a regular table and pointed the report to the table. After this fix, I still find it works on my test machine and fails with the "no rowset" error on a deployed machine. So that wasn't the answer.
Any ideas? I am still working on debugging this. Any suggestions you may have would be very helpful.