0.4El concepto de análisis (base de datos)
Lo esencial en 30 segundos
- El análisis es el modelo (esquema) de la base de datos; vocabulario WinDev: fichero = tabla, rúbrica = columna, enlace = relación.
- Todo se deriva de él: el RAD genera ventanas e informes desde el análisis, y los campos se vinculan a las rúbricas.
- Clave primaria = identificador único; regla de oro: cuidar el análisis antes de dibujar las ventanas.
Mini-caso hilado — Yacine dibuja el análisis de su comercio
Antes de dibujar la menor ventana, Yacine concibe el análisis de su gestión de comercio de material eléctrico en Orán. En el editor de análisis crea los ficheros correspondientes a las entidades de su oficio: Cliente, Producto, Pedido, LineaPedido, Factura y Existencia. Para cada uno describe las rúbricas (nombre, tipo, tamaño) — CodigoCliente, Nombre, Ciudad; Referencia, Designacion, PrecioUnitarioHT; NumeroPedido, FechaPedido, CodigoCliente — y fija la clave primaria (el identificador único, a menudo automático). Después traza los enlaces que traducen las reglas reales: un cliente realiza varios pedidos, un pedido contiene varias líneas, un pedido da una factura. Retiene la regla de oro: si el análisis es defectuoso, todo lo que sigue (ventanas, consultas, informes) también lo será — y corregir después cuesta muy caro.
Caso autónomo de esta sección: vuelve en el curso, el esquema, el guion y el reto de 48 h de la sección 0.4.
1. El análisis, modelo de los datos
El análisis es EL concepto central de WinDev: es la descripción de la estructura de los datos, es decir, el modelo (el esquema) de la base de datos. En él se describen los ficheros (el equivalente de las «tablas»), las rúbricas (el equivalente de las «columnas») y los enlaces (las relaciones entre ficheros). Atención al vocabulario propio de PC SOFT: lo que otras herramientas llaman tabla / columna / relación aquí se llama fichero / rúbrica / enlace. Yacine describe allí clientes, productos, pedidos y existencias.
2. Por qué todo se deriva de él
El análisis es determinante porque todo se deriva de él. El RAD se apoya en él y puede generar ventanas, informes y código a partir de él. Los campos de las ventanas se vinculan directamente a las rúbricas: la introducción, la lectura y el guardado se vuelven casi automáticos. Las consultas y los informes se basan en los ficheros y los enlaces. Un modelo correcto ahorra muchísimo tiempo; un modelo defectuoso contamina toda la aplicación, como comprueba Yacine.
3. Clave primaria, enlaces y regla de oro
Dos nociones fundamentales: la clave primaria (la rúbrica que identifica de forma única cada registro, a menudo un identificador automático) y los enlaces, que expresan las relaciones reales del oficio (un cliente tiene varios pedidos). Regla de oro: se cuida el análisis ANTES de dibujar las ventanas. Es la inversión más rentable de todo el proyecto: corregir una estructura después obliga a rehacer ventanas, consultas, informes y código, y a migrar los datos existentes.
🔎 Ejemplo concreto — 🔎 Ejemplo concreto — recorrer los pedidos de un cliente
Gracias al enlace Cliente → Pedido, Yacine enumera los pedidos del cliente buscado:
// Listar los pedidos del cliente seleccionado (enlace 1-N)
TableSupprimeTout(TAB_Commandes)
POUR TOUT Commande
SI Commande.CodeClient = Client.CodeClient ALORS
TableAjouteLigne(TAB_Commandes, Commande.Numero, Commande.DateCommande, Commande.MontantHT)
FIN
FIN
Lectura: el enlace traduce la regla «un cliente tiene varios pedidos» y permite navegar entre los ficheros.
Lección: un buen enlace evita duplicados y totales falsos — los peores errores, porque no fallan, mienten.
Vocabulario de la sección
- Análisis
- Modelo (esquema) de la base de datos: descripción de la estructura de los datos.
Ejemplo sencillo: Yacine describe allí sus clientes, productos y pedidos.
Lo que no es: una ventana de introducción de la aplicación.
Reflejo: estructura de datos → análisis.
- Fichero (= tabla)
- Conjunto de registros de la misma naturaleza en el análisis (por ejemplo, el fichero Cliente).
Ejemplo sencillo: Yacine crea el fichero Producto.
Lo que no es: un documento en el disco duro.
Reflejo: tabla de datos → fichero.
- Rúbrica (= columna)
- Información elemental descrita en un fichero, con un nombre, un tipo y un tamaño.
Ejemplo sencillo: Yacine describe la rúbrica Existencia como tipo numérico.
Lo que no es: una ventana entera de la aplicación.
Reflejo: columna de una tabla → rúbrica.
- Enlace (= relación)
- Vínculo entre dos ficheros que traduce una realidad de negocio y garantiza la coherencia.
Ejemplo sencillo: Un cliente tiene varios pedidos en Yacine.
Lo que no es: un simple color de campo.
Reflejo: relación de negocio → enlace.
- Clave primaria
- Rúbrica que identifica de forma única cada registro de un fichero (a menudo automática).
Ejemplo sencillo: Yacine fija CodigoCliente como clave primaria.
Lo que no es: una rúbrica sin función de identificación.
Reflejo: identificador único → clave primaria.
En la práctica — En la práctica — comprender y crear un análisis
- Abra el editor de análisis y cree sus ficheros (= tablas) correspondientes a las entidades de su oficio: Cliente, Producto, Pedido…
- Describa las rúbricas de cada fichero (nombre, tipo, tamaño) eligiendo el tipo correcto para cada información.
- Defina la clave primaria de cada fichero (a menudo un identificador automático) para identificar cada registro.
- Trace los enlaces entre ficheros traduciendo las reglas de negocio reales (como hace Yacine entre Cliente y Pedido), y luego genere el análisis antes de construir las ventanas.
Guion paso a paso — describir el análisis de Yacine
// Análisis de la gestión de comercio de Yacine // Fichero Cliente : CodigoCliente (clave primaria), Nombre, Ciudad, Saldo // Fichero Producto : Referencia (clave primaria), Designacion, Existencia // Fichero Pedido : Numero (clave primaria), FechaPedido, CodigoCliente // Fichero Factura : NumeroFactura (clave primaria), NumeroPedido // Enlaces: Cliente → Pedido → Factura; Pedido → LineaPedido // Regla de oro: generar el análisis ANTES de dibujar las ventanas
El vocabulario es propio de WinDev: fichero = tabla, rúbrica = columna, enlace = relación.
Modelo para copiar y pegar — añadir un cliente (clave primaria automática)
// Modelo de Yacine — botón BTN_Ajouter de la ventana FEN_Clients
HRAZ(Client)
Client.Nom = SAI_Nom
Client.Ville = SAI_Ville
Client.Telephone = SAI_Telephone
Client.Solde = 0
HAjoute(Client)
Info("Cliente añadido, código = " + Client.CodeClient)
Ficheros de negocio
Yacine crea Cliente, Producto, Pedido, LineaPedido, Factura y Existencia en el análisis.
Clave primaria
Yacine fija CodigoCliente como identificador único, a menudo automático.
Enlace de negocio
Yacine traduce la regla «un cliente tiene varios pedidos» mediante un enlace 1-N.
Regla de oro
Yacine termina y genera el análisis antes de dibujar la primera ventana.
✓ Buenas prácticas
- Partir del negocio: cada fichero corresponde a una entidad real.
- Fijar una clave primaria por fichero (a menudo automática).
- Cuidar el análisis antes de las ventanas: es la inversión más rentable.
✗ Errores frecuentes
- Confundir un fichero del análisis con un fichero del disco.
- Dibujar las ventanas antes de haber estabilizado el análisis.
- Descuidar los enlaces: de ahí surgen duplicados y totales falsos.
Puntos clave
- El análisis es el modelo de la base: ficheros (= tablas), rúbricas (= columnas), enlaces (= relaciones).
- Todo se deriva de él: el RAD genera ventanas e informes desde el análisis, y los campos se vinculan a las rúbricas.
- La clave primaria identifica de forma única cada registro; los enlaces traducen las reglas de negocio.
- Regla de oro: cuidar el análisis antes de dibujar las ventanas.
Reto 48 h — aplícalo mañana
Como Yacine, dibuje un mini-análisis en un borrador: tres o cuatro ficheros (por ejemplo, Cliente, Producto, Pedido), sus rúbricas principales con un tipo, una clave primaria por fichero y al menos un enlace que traduzca una regla de negocio. No toque todavía las ventanas: el ejercicio consiste en pensar el modelo antes de la interfaz.
- Sé qué es el análisis y su vocabulario (fichero, rúbrica, enlace).
- Comprendo por qué todo se deriva del análisis en WinDev.
- Fijo una clave primaria y enlaces antes de construir las ventanas.
Preguntas frecuentes
¿Por qué hay que cuidar el análisis antes de empezar las ventanas?
Porque en WinDev todo se deriva del análisis: el RAD genera ventanas e informes a partir de él, los campos se vinculan a las rúbricas, y las consultas e informes se apoyan en él. Un modelo defectuoso contamina toda la aplicación, y corregir la estructura después impone un efecto dominó más una migración arriesgada de los datos. Es la inversión más rentable del proyecto, como hace Yacine.
¿Por qué WinDev habla de «ficheros» y «rúbricas» en lugar de tablas y columnas?
Es una elección de vocabulario histórica de PC SOFT: los conceptos son los de las bases relacionales clásicas (fichero = tabla, rúbrica = columna, registro = fila, enlace = relación, análisis = esquema). Hay que conocer esta correspondencia para no perderse — y sobre todo no confundir el «fichero» del análisis (= una tabla de datos) con un fichero del disco.
¿Qué se denomina el análisis en WinDev?