|
|
|
|
- Presentación
- Principio
- Recordatorio
- Implementación
Control Looper: Sincronización personalizada
Cómo gestionar la sincronización entre los archivos: - la página que aparece en el navegador. Esta página contiene una control Looper que muestra los registros encontrados en un archivo HFSQL.
- el contexto de la página correspondiente que se encuentra en el servidor.
Mediante una gestión personalizada de la sincronización, cuando se realiza una acción en una fila de la página (haga clic en un enlace para pedir un producto, por ejemplo), la información almacenada en el servidor se actualiza de acuerdo con el identificador que se encuentra en el fila actual del navegador. El método para la sincronización personalizada de los controles del looper se basa en una información oculta en la página: el identificador de la fila seleccionada. La sincronización consiste en enviar al servidor el identificador del fila actual en el navegador. Recordatorio El código de sincronización se activa cuando se cumplen las siguientes condiciones: - la página mostrada en el navegador ya no corresponde al contexto de la página en el servidor.
- el usuario de la Web ejecuta un código de servidor (haciendo clic en un enlace, un botón, una Image, una opción de menú, ...). No se ha desmarcado la opción "Llamar al proceso de sincronización de la página si el usuario utilizó el botón Atrás del navegador" en la pestaña "Avanzado" del control description que ejecuta el código del servidor.
Personalizar la gestión de la sincronización de los controles del looper de navegación: - Compruebe si el mecanismo de gestión de sincronización está habilitado.
- a nivel de página ("Usando el botón "Atrás" del navegador" correspondiente a "Permitido (ejecuta el código de sincronización)" en la pestaña "UI" de la página description).
- en cada botón para gestionar el looper o realizar una acción sobre la Record seleccionada en el looper ("Llamar al proceso de sincronización de la página si el usuario utilizó el botón Atrás del navegador" desmarcada en la pestaña "Avanzado" del control description).
- Crear un Invisible control en el control Looper.
- Definir un atributo sobre el valor de este control invisible (llamado "UNIKID" por ejemplo) en el description del control Looper. Este control debe contener el identificador del fila actual. La inicialización de esta control debe realizarse en el código de clic del enlace o botón que se encuentra en el control Looper.
- Personalizar el código de sincronización de la página actual. Este código de sincronización debe:
- leer el valor del control oculto para el fila actual.
- releer el Record correspondiente al identificador almacenado en el control oculto.
- realizar los procesos necesarios de acuerdo con la aplicación.
Un ejemplo de código de sincronización puede ser: Str is string Key is string Str = "_" + PageParameter(Looper1) + "_" + UNIKID // Str = name of UNIKID control in the current row Key = PageParameter(Str) // Key = content of UNIKID control in the current row // Find the selected record HReadSeek(PRODUCT, PRUNIKKEY, Key) IF HFound() THEN // Process to perform ... // Continues the application without displaying a message ChangeAction(caContinue) ELSE ChangeAction(caError) END
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|