Failed to open a rowset. Details: 42000:[IBM][iSeries Access ODBC Driver]Statement violates access rule: Connection is set to read only. Failed to open a rowset.

Failed to open a rowset. Details: 42000:[IBM][iSeries Access ODBC Driver]Statement violates access rule: Connection is set to read only. Failed to open a rowset.

This is very common error when you try to deploy your Crystal Report reports in production environment. But most of the time people doesn't have proper solution. This error can be raised due to various reasons. But as I feel Crystal report gives very generic errors rather giving specic error message. So that most of the time we need to spend lot of time to figure out the exact issue. As of my experience this error gives when your crystal report unable to retrive data from your database properly. Here in this case iSeries Acess ODBC Driver has used. You might use some other driver to communicate with your database. But you will get very similar error with respect to your driver. Whether you are using stored procedure to retive data or directly access the database table; doesn't matter this error might occur.

First thing that you can try out is check whether you have configured "AllowProcCalls" registry entry. You can check this, go to start button, then run. In run dialog box type "regedit" and enter. In the RegEdit you need to locate HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI. Then find your ODBC data source that your crystal report retrive data from. Verify that there is an entry called "AllowProcCalls" with a value of "1". If AllowProcCalls entry doesn't exists you can create it by right click on your ODBC data source, then select New : String Value. Enter in AllowProcCalls and enter. If AllowProcCalls entry has value other than 1 you can change its value by double clicking on that entry or right click on the entry and select modify. Enter 1 and press "OK".

LinkWithin

Related Posts with Thumbnails

Twitter Updates

    follow me on Twitter