Búsquedas (¿Donde estan las Select en Velneo?) y Cargar Lista y otros

Ir a la página principal: Fundamentos en Velneo, análisis en el Modelo Real


En Velneo, en la mayoría de los casos accedes a la información por navegacion, ya que en Velneo en muchos momentos estas situado en distintos puntos de la base de datos, estas en una lista o estas en una ficha y desde ella si has definido correctamente la base de datos o modificandola a tu nueva conveniencia, puedes acceder a otras listas o fichas, sin necesidad de hacer un “Select” o de tener que resolver de una forma u otra algo que la base de datos ya conoce.

Ya hemos visto la potencia de los punteros, y como para acceder a cualquier registro con el que podamos llegar mediante relaciones n a 1 , no nos hace falta resolver nada, simplemente accedemos o utilizamos el dato relacionado en cualquier punto del programa.

Pero en el caso de relaciones 1 a N, todavía no, para ello hay que entender los conceptos de Flujo, y Origen (Ficha o Lista) y navegación. Pero esto lo dejaremos para el final

Para no crear inquietudes innecesarias y sobre todo dar facilidades al que viene de otras plataformas, aunque no sea en muchos casos la solución ideal veremos lo más parecido a una Select que hay en Velneo, las búsquedas.

Las búsquedas en Velneo se utilizan y mucho, el problema es recurrir a ellas por paralelismo con otras Bases de datos, haciendo las cosas aunque funcionales mucho más complejas de lo que en Velneo son, aunque para el nuevo puedan resultar de forma erronea “Su primera y evidente solución”. Pero esto para la próxima

Una “Búsqueda” se utiliza en Velneo, cuando pretendemos cargar una serie de registros de una tabla y no partimos de un origen, o el punto en el que estamos , por ejemplo Clientes, no nos permite llegar a una lista de registros de otra tabla, o simplemente partimos de una opción de menú.

Una Búsqueda es lo más parecido a una “Select tradicional”

La búsqueda

La búsqueda es mucho mas potente de lo que a priemra vista puede parecer, si dominamos todas las posibilidades de los índices.

  • La búsqueda es un Objeto, lo cual permite ser lanzado directamente desde un menú, una toolbar, un formulario, una rejilla o también desde un proceso. Por lo cual es totalmente reutilizable en cualquier punto de nuestra aplicación.
  • Es el objeto que utilizaremos por defecto , para desde un menu obtener por ejemplo los Clientes, las facturas entre fechas, y todo este tipo de listas habituales.
  • La opción más sencilla de la búsqueda es elegir un índice, por ejemplo código y decirle que nos muestre todos los registros
  • El Objeto búsqueda, puede utilizar parametros, estos pueden provenir de variables locales, globales, campos de la base de datos o ser alimentados desde un formulario especial asociado al objeto Búsqueda
  • El Objeto Busqueda puede a su vez ser incluido en una función o un proceso, lo que nos permitirá infinidad de combinaciones
  • Tienes la información de sus posibilidades en Búsqueda en el manual del vDevelop

    Tienes un Tutor de Búsquedas

    Cuando profundices en velneo, no descuides las posibilidades que te da ejecutar las búsquedas en tercer plano, es decir en el servidor, de momento no te compliques, pero te dejo el Tutor de Busquedas en tercer plano

    Finalmente dos consejos :

  • Un defecto que puedes traer de tu antigua Base de Datos es no crear tantos índices como necesites, en Velneo debes crear los indices que sean necesarios, aunque siempre con ciertas precauciones. Crea tantos como necesites
  • El defecto contrario es crear no solo multitud de indices , sino multitud de indices compuestos que son combinaciones de ellos. No te emociones creando miles de combinaciones, ten en cuenta que en la propia búsqueda puedes utilizar dos índices simples o compuestos y combinar entre ellos cruzando, añadiendo o eliminando registros y lo mismo en cualquier proceso que gestione listas.
  • Es fundamental por tanto descubrir las posibilidades de los Índices en Velneo

    El rendimiento de las búsquedas por índices es altísimo al trabajar solo con índices y en memoria

    Veamos unos ejemplos

    Queremos obtener una lista de factura entre un rango determinado de vencimientos y además que su saldo sea mayor que cero.

    Os dejo 3 opciones distintas y todas válidas

    1º Crear una Búsqueda utilizando un indice por fecha de vencimiento, definirla entre limites, darle valor inicial y final y en la misma búsqueda utilizar la opción Filtrar, para filtrar las que el saldo sea mayor que cero. Evidentemente en cuanto utilizamos un filtrado, el rendimiento disminuye, pues supone leer secuencialmente una serie de registros para ver cuales lo cumplen.

    2º Crear un nuevo indice que denominaríamos “Fecha Vencimiento con Saldo”, condicionando que solo indexe si el saldo es mayor que cero . La busqueda sería igual con un solo índice, resolviendo el (desde,hasta).

    3º Hacerla con dos Indices y cruzando ambos. Mantentríamos el indice Vencimiento, sin condicionar y creamos un nuevo indice “Saldo”.

  • Resolveríamos Vencimiento , entre limites, desde y hasta
  • Cruzariamos con la resolución del indice Saldo, entre límites, saldo desde, saldo hasta
  • Siendo en todos los casos una lista de facturas que podemos visualizar en una rejilla, informe o cualquier objeto de interface de origen Lista, Facturas.

    Cargar Lista

    En el caso de querer obtener un conjunto de registros de una tabla resolviendo un Rango , la opción ideal es siempre una búsqueda.

    Pero en ocasiones y cuando estamos en un proceso, no se trata de un rango, desde hasta, sino por ejemplo las facturas de un cliente, los clientes de un país, los apuntes de una empresa o simplemente todos puede que nos resulte mas cómodo utilizar el comando Cargar Lista, en lugar de llamar a un objeto búsqueda.

    Estas son las funcionalidades del comando de proceso Cargar Lista.

    Ejemplo :

    Por tanto si queremos obtener las facturas a un vencimiento determinado

    Nos bastara Cargar Lista, utilizando el indice Fecha de vencimiento y solucionando el Dia que deseamos en concreto.

    o bién utilizar si como en el caso anterior queremos solo las que tienen saldo creando un nuevo índice Vencimiento y condicionando este indice por el saldo mayor que 0

    En cualquier caso

    Si utilizas un proceso para cargar una lista o una busqueda, es posible que necesites manipularla después en el mismo proceso, para ello tienes los comandos de lista.

    Por tanto puedes cruzar ,añadir, multipartir, etc

    Este funcionamiento y estas operaciones son siempre instantaneas pues estamos trabajando con indices y en memoria. (Salvo el filtrado que trabaja con Datos)

    Y todavía nos queda algo muy importante pra todas esta combinación de posibilidades comandos cargar Plurales y Cargar Maestros que nos van a dar mucho, pero que mucho juego.

    Y sobre todo, el resultado será que con muy pocas lineas y de forma muy lógica, cualquiera pueda entender y mantener tu software , incluso tu mismo.

    Una vez saciada tu inquietud para los casos mas simple vamos con el concepto de Origen, Flujo y navegación.



    Ir a la página principal: Fundamentos en Velneo, análisis en el Modelo Real

    Anuncios

    Acerca de Miguel Pérez Oliver
    Un abuelo en esto del negocio del software, habiendo recorrido en estos 30 años de todo : Programador, analista, consultor, implantador y ahora en el lado oscuro. Coordinador del departamento comercial en Velneo y viajero.

    3 Responses to Búsquedas (¿Donde estan las Select en Velneo?) y Cargar Lista y otros

    1. MTovar says:

      Muy didactico Miguel.
      Gracias por tu esfuerzo
      Saludos cordiales
      Manuel Tovar
      Barranquilla COLOMBIA

    2. Pingback: Fundamentos de Velneo : El Modelo Real de Base de Datos « Miguel Pérez Oliver

    3. Rick Marquez says:

      Que tal Miguel, muy completo el articulo… exploras brevemente todas las posibilidades… nos toca nosotros caminarlas… un abrazo.

    Responder

    Introduce tus datos o haz clic en un icono para iniciar sesión:

    Logo de WordPress.com

    Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

    Imagen de Twitter

    Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

    Foto de Facebook

    Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

    Google+ photo

    Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

    Conectando a %s

    A %d blogueros les gusta esto: