Cesta de la compra
Se trata de un objeto que se utiliza para guardar una serie de registros de una tabla de datos para su posterior utilización en otras partes de la aplicación. El contenido de las mismas se almacena en memoria y, por tanto, se borrará una vez finalice la ejecución de la misma.La utilidad de este objeto es diversa:
- Una cesta de registros para que el usuario que vaya navegando por la aplicación pueda ir guardando aquellos que le interesen para finalmente hacer algo con ellos (lanzar un proceso sobre ellos, leerlos, editarlos, imprimirlos, etc.),
- Un sistema de mensajería que muestra en tiempo real los últimos mensajes recibidos en una cesta incrustada en un dock, a medida que van llegando, mostrando en la barra de estado una previsualización del último mensaje y el origen.
- Un sistema de facturación que muestre el avance del proceso añadiendo las facturas realizadas a la cesta incrustada en un formulario por medio de un control objeto, mostrando en la barra de estado cómo se está desarrollando el proceso, etc.
- ...
En el catálogo de Velneo Open Apps tienes un tutor que ejemplifica el uso de las cestas, los comandos de instrucción relacionados con cestas y cómo incluir un objeto cesta en un Dock.
El objeto Cesta
Para crear un objeto de este tipo debemos seleccionar su icono
en la galería de objetos de Velneo vDevelop.Una cesta de la compra podrá ser manejada o bien de forma directa por los usuarios finales del proyecto (ver el capítulo Manejo de cestas de la compra) o bien a través de procesos, usando los comandos de instrucción de Cestas.Las propiedades del objetoCesta son:Identificador: Etiqueta alfanumérica que identifica de forma unívoca al objeto dentro del proyecto. Este identificador será el que usemos para referenciarlo en otras propiedades de otros objetos.El identificador constará de mayúsculas y números exclusivamente. Al identificar de forma unívoca un objeto no puede haber duplicidad.Nombre: Etiqueta alfanumérica que servirá como descriptor del objeto. Se usará para presentar información del objeto en otros objetos y en los inspectores.Podemos definir una etiqueta por cada idioma presente en el proyecto.Estilos: Podemos definir el estilo Privado que limita el acceso del usuario final al objeto desde puntos donde no se haya programado el acceso al mismo.Comentarios: Esta propiedad nos permite documentar el uso del objeto. Tabla asociada: Tabla de un proyecto de datosheredado cuyos registros podrán ser enviados a la cesta de la compra.Rejilla: Rejilla del proyecto en curso o de un proyecto heredado que será usada para mostrar el contenido de la cesta de la compra.Una cesta de la compra puede ser disparada como dock de un marco, también en un formulario con un control objeto. El contenido de la misma será refrescado automáticamente por el sistema, a medida que vayamos operando con la misma en una misma sesión de Velneo vClient V7, o bien a través de procesos, o bien por su manejo por parte del usuario final.
Manejo de cestas de la compra
Desde rejillas de Velneo vClient V7 podremos interactuar con cestas de la compra declaradas en un proyecto.Si en la aplicación existe alguna cesta de la compra asociada a la misma tabla de datos que la rejilla, en el menú de contexto que se abre al pulsar el botón derecho del ratón sobre una rejilla, aparecerán las siguientes opciones:
Enviar seleccionadas a la cesta: Envía el/los registros seleccionados en la rejilla a la cesta de la compra activa. A una misma cesta se podrán enviar registros desde cualquier rejilla de una misma tabla de datos. Si se añade un registro a una cesta y ésta ya lo contenía, no se incluirá.Enviar todas a la cesta: Envía todos los registros de la lista a la cesta de la compra activa.Abrir cestas: Abre una ventana que mostrará todas las cestas de la compra disponibles para esa tabla, cada una en una pestaña diferente, y su contenido:
Para ver el contenido de una cesta concreta, pulsaremos sobre la pestaña correspondiente a la misma.Desde esa ventana podremos realizar las siguientes operaciones con la cesta activa:
Mover los seleccionados: Mueve los registros seleccionados en la cesta de la compra a la rejilla activa. Si alguno de los registros seleccionados ya existe en la rejilla de destino, no lo incluirá.
Copiar los seleccionados: Copia los registros seleccionados en la cesta de la compra a la rejilla activa. Si alguno de los registros seleccionados ya existe en la rejilla de destino, no lo incluirá.
Quita los seleccionados: Quita los registros seleccionados de la cesta de la compra. Los registros serán quitados de la lista, no borrados de la base de datos.
Seleccionar todos: Selecciona todos los registros de la cesta de la compra activa.
Salir: Cierra la ventana.En el caso de existir más de una cesta asociada a la misma tabla de datos, para indicar al sistema sobre qué cesta queremos trabajar, tendremos que ejecutar en previamente la opción Abrir cestas del menú de contexto de la rejilla y acceder a la pestaña correspondiente a la cesta deseada.Es posible que en la aplicación se haya programado una vista permanente de una cesta de la compra; en ese caso, cada vez que interactuemos durante nuestra sesión de Velneo vClient V7 con la cesta de la compra, su contenido será refrescado automáticamente.La persistencia de la cestas es en memoria, esto quiere decir dos cosas:1) Que al cerrar nuestra sesión de Velneo vClient V7 su contenido desaparecerá.2) Que su contenido no es compartido por otros usuarios u otras sesiones de Velneo vClient V7 que estén ejecutando el mismo proyecto.
Comandos de instrucción de Cestas
Hay un conjunto de comandos de proceso que permite interactuar con cestas de listas de registros de una tabla. Este conjunto de comandos de proceso permite tanto el manejo de Cestas locales al proceso como globales. Son los siguientes:
Cesta: Agregar fichaEsta función guarda la ficha procesada en la cesta de la compra especificada en su parámetro.
Cesta: Agregar listaEsta función guarda la lista procesada en la cesta de la compra especificada en su parámetro.
Cesta: Crear cesta localEsta función permite crear una cesta de la compra local de un proceso. Si va a crear cestas en un proceso, éstas deben ser declaradas al principio del mismo.
Cesta: ¿Está la ficha en la cesta?Esta función devuelve la posición de la ficha actual dentro de la cesta de la compra especificada como parámetro.
Cesta: LimpiarEsta función vacía el contenido en la cesta de la compra especificada en su parámetro. Los registros eliminados se quitan unicamente de la cesta, permaneciendo igual que antes en la base de datos.
Cesta: ProcesarEsta función genera un subproceso. Todas las funciones que se incluyan dentro de dicho subproceso se ejecutarán sobre la lista de registros contenidos en la cesta. El origen del subproceso, lógicamente, será una lista de la tabla de datos de la cesta.
Cesta: Quitar fichaEsta función quita la ficha procesada de la cesta de la compra especificada en su parámetro. El registro eliminado se quita unicamente de la cesta, permaneciendo igual que antes en la base de datos.
Cesta: Quitar listaEsta función elimina la lista procesada de la cesta de la compra especificada en su parámetro. Los registros eliminados se quitan unicamente de la cesta, permaneciendo igual que antes en la base de datos.
Cesta: Cruzar listaEsta función Cruza la lista actual con los registros contenidos en una cesta. El resultado será que deja en la cesta los registros que coincidan en ambas listas. Los registros se quitan unicamente de la cesta, permaneciendo igual que antes en la base de datos.
Cesta: Enviar mensajeEsta función enviar un mensaje a la barra de tareas de una cesta de la compra que es usada como dock de un marco. Para facilitar la especificación del mensaje podemos hacer uso del asistente para edición de fórmulas.