I am currently working on a system developed some 3 years ago by a developer who used to work for our company. It is an ASP/DHTML administration system for accident reporting. The main page of the site is written in HTML and consists of a set of forms providing the user with the ability to enter details of the accident.

On this page there are half a dozen RDS data controls which are bound to the various forms in order to establish a link with the SQL server back-end. The data source of these RDS data controls are a set of ASP pages which contain XML persisted versions of the recordsets used for the page.

The problem I am having is that after a period of inactivity of roughly 13 minutes, the save option on the page (which calls the RDS Update method) causes the following error to be displayed in a VBScript message box:

'The requested action cannot be performed when the object is closed.'

I have checked the timeout value for the ASP session to ensure that the asp session is not timing out, but this is currently set to 60 minutes and is hence not the problem.

I have checked the status of the RDS recordset prior to the update being called and it returns 0 (zero). The only thing I can think of is that the RDS data controls are timing out.

Is this the case, and is there any way to set this timeout period, as I cannot find a property that would accomplish this. The only property I could find is called InternetTimout, but this only seems to apply to the amount of time allowed to execute a query against the database.

Any advice would be greatly appreciated as I have a very disappointed customer and am pulling my hair out!!!!

you need to use the command timeout in your connection string as well as the internettimeout property
something like this:

RDSControl.Server = "http://yourdomain"
RDSControl.InternetTimeout = 1200000  
RDSControl.Connect = "Provider=sqloledb;" & _
  "Data Source=whatever;" & _
  "Initial Catalog=northwind;" & _
  "User Id=sa;" & _
  "Password=;" & _                      
  "Command Properties='Command Time Out=1200'"

This will set the timeout to 20 mins

This article has been dead for over six months. Start a new discussion instead.