Jorge, no se si ya hayas resuelto el problema de lectura y actualizacion de una 
tabla en una base access, pero bueno revisando entre mis trabajos encontre algo 
que te va a servir, asi no te complicas con eso de los cursor adapter, que 
quisas suena mejor, pero yo no soy partidario de usarlos, no opino si son 
mejores ni peores, igualmente todo me funciona bien y seguro.

Bueno, este ejemplo que te dejo es totalmente funcional y trabaja por ODBC. 
Fijate que son 2 metodos.

Saludos 

Alejandro

 

**************************************************************************************************

METODO 1 : Lee la tabla en access, recorre y llama al otro metodo que actualiza 
la tabla en access

lcArchivoMDB=cIntranet

lcConnString="Driver={Microsoft Access Driver 
(*.mdb)};Dbq="+lcArchivoMDB+";Uid=;Pwd=;"

lnHandle = SQLStringConnect(lcConnString)

IF lnHandle < 1

   MESSAGEBOX('No se pudo conectar a la base de datos',16,'Atencion')

   RETURN

ENDIF

lcQuery="SELECT * FROM novedades_web WHERE no_baja=0 ORDER BY no_desde, 
le_codigo"

IF SQLEXEC(lnHandle,lcQuery,"Crs_Novedades") > 0

   SELECT Crs_Novedades

   SCAN

       * Aca yo recorro la tabla access, y hace lo que necesitas

       * Llamar al metodo 2, para eliminar o actualizar registro 

   ENDSCAN

ENDIF

USE IN Crs_Novedades

=SQLDISCONNECT(lnHandle)

*******************************************************************************************

METODO 2: Recibe el Id del registro a Actualizar tabla en access

PARAMETERS nId

lcArchivoMDB=cIntranet

lcConnString="Driver={Microsoft Access Driver 
(*.mdb)};Dbq="+lcArchivoMDB+";Uid=;Pwd=;"

lnHandle = SQLStringConnect(lcConnString)

IF lnHandle < 1

   MESSAGEBOX('No se pudo conectar a la base de datos,16,'Atencio')

   RETURN

ENDIF

lcQuery="UPDATE novedades_web SET no_baja=1 WHERE id=" + ALLTRIM(STR(nId,10,0))

IF SQLEXEC(lnHandle,lcQuery) < 0

   MESSAGEBOX('No se pudo actualizar la base en intranet.',16,MyTitle)

ENDIF

=SQLDISCONNECT(lnHandle)


 

_________________________________________________________________
Windows Live Hotmail now works up to 70% faster.
http://windowslive.com/Explore/Hotmail?ocid=TXT_TAGLM_WL_hotmail_acq_faster_112008

Responder a