PC SOFT

AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente. Haga clic aquí para ver la versión en inglés.
  • Presentación
  • Principio
  • Recordatorio
  • Implementación
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 App
Otros
Procedimientos almacenados
Control Looper: Sincronización personalizada
Presentación
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.
Principio
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ú, ...). La opción "Llamar al proceso de sincronización de la página si el usuario utilizó el botón Atrás del navegador" no ha sido desmarcada en la pestaña "Avanzado" del control description que ejecuta el código del servidor.
Implementación
Personalizar la gestión de la sincronización de los controles del looper de navegación:
  1. 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 manejar el looper o realizar una acción sobre el Record seleccionado en el looper ("Llamar al proceso de sincronización de la página si el usuario utilizó el botón Atrás del navegador" desmarcado en la pestaña "Advanced" del control description).
  2. Crear un Invisible control en el control Looper.
  3. 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.
  4. 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
Versión mínima requerida
  • Versión 9
Comentarios
Haga clic en [Agregar] para publicar un comentario