Page 1 of 1

xBrowse y ADO

Posted: Sat May 04, 2013 4:53 pm
by Miguel Salas
Hola a todos:
Estoy usando un browse con setado, el problema es que navego en el y al editar el registro simpre me abre el primero, no en el que estoy posicionado con el puntero. alguna pista

Code: Select all

oBrwDet:SetAdO( oRsDetOrdSrv, .t., .t., { "contenedor", "tipo" } )

oBrwDet:CreateFromResource (117)
oDlg:oClient := oBrwDet
oBrwDet:bLDblClick := { || msginfo( oRsDetOrdSrv:absoluteposition()) }

 
en el dobleclick simpre muestra 1

saludos

Re: xBrowse y ADO

Posted: Sat May 04, 2013 5:14 pm
by Armando
Miguel:

En el msginfo pídele que te muestre el contenido de algún campo de la tabla, a ver que te muestra?
o con esto otro MsgInfo(oRsTuRecordSet:BookMark())


Saludos

Re: xBrowse y ADO

Posted: Sat May 04, 2013 6:43 pm
by Miguel Salas
Gracias por responder Armando.

el bookmark muestra 1.0000 en todos los registros

Re: xBrowse y ADO

Posted: Sat May 04, 2013 6:48 pm
by Armando
Miguel:

Y el Msginfo con algún campo de tu tabla?
El browse te lo muestra bien?

Ojala pudieras mostrar la parte del código donde creas el recordset

Saludos

Re: xBrowse y ADO

Posted: Sat May 04, 2013 6:49 pm
by Miguel Salas
Te comento que antes de esto tenía definido el browse con las columnas que necesito únicamente, pero me mostraba el primer registro en todos _ es decir como si estuviera repetido el registro tantas veces como registros había en el detalle. Ahora que lo puse "abierto" con todas las columnas ya me aparecen los datos correctos, únicamente al querer editarlo sube siempre el primero.

saludos y gracias

Re: xBrowse y ADO

Posted: Sat May 04, 2013 6:54 pm
by Miguel Salas

Code: Select all

      cSQL := "SELECT * FROM  DETORDSRV  WHERE  ordensrv = " + cClave2


          oRsDetOrdSrv := TOleAuto():New( "ADODB.Recordset" )
          oRsDetOrdSrv:CursorType := 1 // opendkeyset
          oRsDetOrdSrv:CursorLocation := 3 // local cache
          oRsDetOrdSrv:LockType := 3 // lockoportunistic

          TRY
           oRsDetOrdSrv:Open(cSQL,oApp:oCon )
          CATCH oErr
           MsgInfo( "Error al abrir la tabla DEtOrdSrv 2" )
           ShowError(oErr)
           RETURN(.F.)
          END TRY
 

Este es el codigo donde lo creo, curiosamente tengo la tabla maestra en un browse antes y alli no hay problema...

Re: xBrowse y ADO

Posted: Sat May 04, 2013 7:02 pm
by Antonio Linares
Miguel,

Has comprobado el numero de registros del recordset ?

MsgInfo( oRsDetOrdSrv:RecordCount() )

Re: xBrowse y ADO

Posted: Sat May 04, 2013 7:10 pm
by Miguel Salas
Hola Antonio:
si, de hecho muestra todos correctamente si recorro el recordset , no se si tenga que indicarle algo al editar?

saludos gracias

Re: xBrowse y ADO

Posted: Sat May 04, 2013 7:22 pm
by Antonio Linares
Prueba esto a ver si sigue mostrando 1:

oBrwDet:bLDblClick := { || msginfo( oBrwDet:oRs:absoluteposition()) }

Re: xBrowse y ADO

Posted: Sun May 05, 2013 1:03 am
by Armando
Miguel:

Otra sugerencia, cambia estas líneas

Code: Select all

oRsEmp:CursorLocation   := adUseClient
oRsEmp:LockType         := adLockOptimistic
oRsEmp:CursorType       := adOpenDynamic
 
Saludos

Re: xBrowse y ADO

Posted: Fri May 10, 2013 5:50 pm
by Miguel Salas
Funcionó con lo de Antonio.
lo que no me queda claro es porque en el primer browse si funciona y en el otro ya no. Voy empezando en esto del recordset.

muchas gracias saludos

Re: xBrowse y ADO

Posted: Sat May 11, 2013 4:09 pm
by Armando
Miguel:

Tienes alguna dirección de correo?

Saludos