Id: | 10649 |
Product: | finPOWER Connect |
Type: | NEW |
Version: | 1.06.05 |
Opened: | 10/09/2012 |
Closed: | 01/11/2012 |
Released: | 26/11/2012 |
Job: | J010360 |
![]() |
|
![]() |
Only disconnected datareaders can now be created from Scripts and external applications
Calling the finBL.Database.ExecuteDataReader method has always returned a 'disconnected' .NET datareader when used from a Script or external application. This is a safeguard since some databases only allow a certain number of 'connected' datareaders and will run into issues if the datareader is not closed correctly using the finBL.Database.DataReaderClose method.
Also, MS SQL Server may, under certain circumstances (e.g., when finPOWER Connect is running from Citrix or Terminal Services/ RDS), run into threading issues that may cause transactions to fail when using connected datareaders. An error message similar to the one shown below may occur:
New transaction is not allowed because there are other threads running in the session.
Previously, calling the ExecuteDataReader method of the ISSelectQueryBuilder object would, by default, use a connected datareader. Even though this method has a parameter to use a disconnected datareader, Scripts had to remember to specify this parameter which was not ideal.
Now, when calling the ExecuteDataReader method of the ISSelectQueryBuilder object from a Script or external application, a disconnected datareader is always used.