Etiqueta

20 junio 2014

jsClient: El objeto SQL (Sincronización con SQLite)

Si queremos hacer uso de SQLite en modo “off-line” y sincronizar una base de datos SQLite desde el dispositivo del cliente en lugar de usar Sybase UltraLite. Tendremos que tener en cuenta que dicha  sincronización está apoyada en bases de datos SQLite creadas al efecto e instaladas en el dispositivo cliente, estas guardan las tablas del usuario, así como información sobre el estado de la sincronización. El “SQLite Synchronization Server” utiliza estas tablas para pasar los datos a/de cada sincronización y para reenviar las solicitudes de sincronización. El proceso de sincronización SQLite es descrito en el manual “SQLite Synchronization Server”, puede ser descargado desde el sitio web Omnis: http://www.tigerlogic.com/omnis/download

Para poder utilizar el objeto de base de datos SQLite, en lugar del objeto UltraLite, la aplicación del dispositivo móvil, deberá estar unida a la librería dbSQLite en lugar de la dbUltraLite.

Aparte de esto, el funcionamiento y uso del objeto de SQL es esencialmente el mismo. Ta sólo los parámetros de inicialización difieren ligeramente, tal y como se muestra a continuación.

$syncinit()


Do oSQL.$syncinit(syncParams) Returns id

El módulo de SQLite actualmente reconoce los siguientes parámetros:

Username    Nombre de usuario de sincronización
            (definido en el servidor de sincronización)

Password    Contraseña de usuario de sincronización
            (definido en el servidor de sincronización)

HostString  URL del servidor de sincronización SQLite Omnis Web.

Timeout     Tiempo de espera en segundos para las operaciones
            de sincronización.

Al finalizar, se invocará el método $sqldone() pasando los siguientes parámetros:

  • El ID de la solicitud (el mismo que retornó el $syncinit()).

Ejemplo: 

Do config.$define(Username,Password,HostString,Timeout)
             ;; se define mediante el uso de variables locales
Do config.$assigncols('Usuario1','xxxxxx','http://192.168.0.10:7001/ultra?OmnisClass=rtSync&OmnisLibrary=SyncServer',5)
Do oSQL.$syncinit(config) Returns id

Consulte el manual de la "SQLite Synchronization Server" para obtener más información sobre el diseño, implementación y uso del servidor de sincronización. Si lo desa podrá descargar su manual desde la página web Omnis (www.tigerlogic.com/omnis).

No hay comentarios: