Page 1 of 1
error de ADO consultando XBrowse
Posted: Tue Apr 28, 2009 3:07 pm
by jfafive
Hola!
Estoy haciendo un XBRowse que a medida que avance o retroceda por el XBrowse,
también lo hace un recordset ajeno al XBrowse.
Ambos recordset son de la misma tabla.
La finalidad, es que el recordset tenga la misma posición que el browse.
El código de ejemplo es este:
Code: Select all
REDEFINE XBROWSE oXbr ;
RECSET oRs ID ID_BRW OF oDlg AUTOSORT ;
ON CLICK oRs2:Move( oXbr:nRowSel )
Pero no sé que ocurre, porque me dá un error que dice:
Code: Select all
Error description: Error ADODB.RecordSet/6 DISP_E_UNKNOWNNAME: MOVE
Args:
[ 1] = N 10
Es muy raro. Ya que los dos recordset como he dicho antes, son gemelos.
Re: error de ADO consultando XBrowse
Posted: Tue Apr 28, 2009 3:29 pm
by jfafive
Me respondo a mi mismo.
Parece ser que me estaba haciendo un lío con rs:move.
Ahora parece que funciona bien.
Dejo el código por si a alguien le sirve.
Un saludo.
Code: Select all
REDEFINE XBROWSE oXbr ;
RECSET oRs ID ID_BRW OF oDlg AUTOSORT ;
ON CLICK oRs2Form:AbsolutePosition := oRs:BookMark
Re: error de ADO consultando XBrowse
Posted: Tue Apr 28, 2009 5:12 pm
by mchumpitazv
Hola Javier
Al ver que estas trabajando con Ado tal vez puedas ayudarme con el siguiente problema:
#include "Ado.ch"
FUNCTION MainCmd()
LOCAL oConexionAdo := TOLEAUTO():New("adodb.connection")
LOCAL oComando := TOLEAUTO():New("adodb.command")
LOCAL oRecordset , reg1
LOCAL aDatos := {}
oConexionAdo:Open("Provider=SQLOLEDB.1;Password=;Persist Security Info=False;User ID=Martin;Initial Catalog=APPLOCAL;Data Source=PERLIM_SYS_LCH")
oComando:ActiveConnection(oConexionAdo)
oComando:CommandType:= 4
oComando:CommandText := "sp_Menu"
oRs := TOleAuto():New( "ADODB.Recordset" )
oRs:CursorType := adOpenKeyset
oRs:CursorLocation := adUseClient
oRs:LockType := adLockOptimistic
oRs:Open(oComando:Execute())
reg1:=oRs:bookMark() ------------------> esta linea me muestra el error Error ADODB.Recordset/6 DISP_E_UNKNOWNNAME: BOOKMARK
DO WHILE .NOT. oRs:Eof()
AADD(aDatos,oRs:Fields(0):value)
oRs:MoveNext()
ENDDO
MsgList(aDatos)
RETURN (.T.)mchumpitazv
Te agradecere me puedas orientar a como solucionar el impase , si tuvieses algun ejemplo tambien ayudaria
Saludos
Luis
Re: error de ADO consultando XBrowse
Posted: Wed Apr 29, 2009 12:02 pm
by jfafive
Luis,
ten en cuenta que
, BookMark es una propiedad nó un método.
Por tanto, sobran los paréntesis.
Lo correcto sería:
Espero haberte ayudado.
Un saludo,
Javier.
Re: error de ADO consultando XBrowse
Posted: Wed Apr 29, 2009 3:56 pm
by mchumpitazv
Hola Javier
Gracias por responder, aun quitandole los parentesis el error es el mismo, por lo que procedi a evaluar si el recordset acepta bookmark y el resultado fue FALSO
y no le encuentro logica ya que el recordset esta definido de la sgte manera:
oRs := TOleAuto():New( "ADODB.Recordset" )
oRs:CursorType := adOpenKeyset ------> se supone que acepta bookmark
oRs:CursorLocation := adUseClient
oRs:LockType := adLockOptimistic
oRs:Open(oComando:Execute())
oRs:Supports(adbookmark) ----------------------> retorna False
Espero puedas seguir apoyandome,por cierto trabajo con FWH 8.10 , SQL 2000 y Xharbour
Saludos
Luis
Re: error de ADO consultando XBrowse
Posted: Wed Apr 29, 2009 4:59 pm
by jfafive
Luis,
En la línea
,
yo utilizo un cursor dinamico.
A ver si así te sirve.