General information
Category:
Databases,Tables, Views, Indexing and SQL syntax
Environment versions
Network:
Windows 2000 Server
Hi, Stuart
You will need to make the CA not a local variable if you do not want it to disappear when the method is done. You can make the variable either part of the form, or a public variable - but you will need to remember to release it if public.
HTH
Beth
>I am using CA with ADO to access data on a SQL server database. I have a method on a form that calls links to the database and retreieves the data. I can see the alias created while the code is executing in the method. However, the minute the method terminates the cursor is gone. How can I prevent the cursor from closing once the method has terminated so that it is available through out the form like any other table or cursor.
>
>I have used the following code to create my cursor:
>LOCAL loConn AS ADODB.CONNECTION, ;
> loCommand AS ADODB.COMMAND, ;
> loException AS EXCEPTION, ;
> loCursor AS CURSORADAPTER, ;
> laErrors[1]
>
>SET MULTILOCKS ON
>
>lcFile = "FILE NAME=" + "my.udl"
>loConn = NEWOBJECT("adodb.connection")
>oRecordSet = NEWOBJECT("adodb.recordset")
>loCursor = CREATEOBJECT('CURSORADAPTER')
>loCommand = CREATEOBJECT('ADODB.COMMAND')
>
>lcStoreProc = "Get_cust_1"
>loConn.open(lcFile)
>oRecordSet.cursortype = 3
>oRecordSet.LockType = 2
>WITH loCommand
> .activeconnection = loConn
> .commandtext = lcStoreProc
> .commandtype = 4
> .parameters("@cl_cltype").value = ltCustType
> .parameters("@cl_language").value = ltLang
>ENDWITH
>
>oRecordSet = loCommand.Execute
>
>WITH loCursor
> .ALIAS = 'client'
> .DATASOURCETYPE = 'ADO'
> .DATASOURCE = oRecordSet
> .SELECTCMD = lcStoreProc
>
> IF .CURSORFILL (.F., .F., 0, oRecordSet)
> SELECT client
>
> ELSE
> AERROR(laErrors)
> MESSAGEBOX(laErrors[2])
> RETURN .F.
> ENDIF
> loCommand.ActiveConnection = loConn
>ENDWITH
>
>The cursor client is the cursor that terminates when the method is complete.
>
>Thanks in advance
Previous
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only