La solución de ejemplo 01-AddRecord.mtd (imagen siguiente) está en la carpeta (Mis) Documentos: Altova\MobileTogetherDesigner8\MobileTogetherDesignerExamples\Tutorials\OfflineUsage. Abra el archivo en MobileTogether Designer y ejecute una simulación (F5) para ver cómo funciona.
La solución permite introducir los registros en un dispositivo cliente uno a uno de forma que se vayan guardando en una base de datos SQLite en el servidor, Addresses.sqlite, antes de que se introduzca el siguiente. Durante el proceso de edición, el registro se almacena en la fuente de página $PERSISTENT en el cliente (imagen siguiente). El acceso al servidor de la solución se restringe con la opción Bajo demanda, que configura la aplicación para que solo se comunique con el servidor cuando es necesario y se ha indicado de forma explícita en el flujo de trabajo de la solución. Hasta ese momento, la solución permanece sin conexión y la información del registro se introduce también mientras la solución está sin conexión. Cuando un usuario hace clic en Cargar en la BD ahora, la solución del cliente se conecta con el servidor para cargar el registro en la base de datos SQLite en el servidor.
Más abajo explicamos la configuración de la solución 01-AddRecord.mtd y cómo trabajar sin conexión.
La opción Cargar datos no afecta a esta solución porque solo tiene una fuente de página, $PERSISTENT, que está en el cliente y para la que, por tanto, no hay que cargar datos. (Como solo queremos mostrar el registro nuevo en el cliente y no todos los registros de la BD, no necesitamos más fuentes de página para contener los registros de la BD.)
La opción Guardar datos no afecta a las fuentes de página $PERSISTENT.
La opción Acceso al servidor está configurada como Bajo demanda. Esto significa que solo se contacta con el servidor cuando se quiere cargar el registro nuevo en el servidor.
Para ello debe hacer clic en Cargar en la BD ahora. El evento AlHacerClicEnBotón del botón desencadena estas acciones:
1.Una acción Ejecutar en (BD) que ejecuta una instrucción SQL para insertar los datos de la estructura $PERSISTENT como un registro nuevo en la BD del servidor.
2.Una acción Actualizar nodos para restaurar cada uno de los nodos de la estructura $PERSISTENT a una cadena vacía. Este paso es necesario para permitir la entrada de datos del registro siguiente.
Nota: En el diseño haga clic en el icono Acciones del evento (dentro de un círculo rojo en la imagen anterior) para ver cómo se han definido las acciones para actualizar la BD (descritas más arriba).