1.1Crear el análisis: archivos, rúbricas y enlaces
Lo esencial en 30 segundos
- Una entidad de negocio = un archivo: Cliente, Producto, Pedido se convierten en archivos del análisis, cada uno mezclando un solo concepto.
- El tipo de una rúbrica es capital: una fecha en tipo fecha, un importe en monetario — nunca todo en texto, de lo contrario las ordenaciones, los cálculos y los controles resultan falsos.
- No repetir nunca una información: el nombre del cliente vive en el único archivo Cliente; los pedidos se refieren a él mediante un enlace (clave externa).
Mini-caso guiado — Yacine dibuja el análisis de su aplicación de comercio
Yacine es desarrollador WinDev en una PYME de comercio de material eléctrico en Orán. Debe entregar una aplicación de gestión (clientes, productos, pedidos, facturas, existencias). Empieza por listar las «cosas» del negocio: un Cliente, un Producto (cable, disyuntor, cuadro…), un Pedido y sus líneas. Convierte cada entidad en un archivo. Después describe las rúbricas con el tipo correcto: Nombre en texto, PrixUnitaireHT en monetario, DateCommande en fecha — no todo en texto. Da a cada archivo una clave primaria (identificador automático). Por último, traza el enlace: un Cliente tiene varios Pedidos, un Pedido pertenece a un único Cliente. Está a punto de copiar el nombre del cliente en cada pedido, pero se corrige: esa información debe vivir una sola vez, en el archivo Cliente. Yacine ha construido el fundamento de su aplicación: un análisis coherente, sin duplicados.
Caso autónomo de esta sección: vuelve en el curso, el esquema, el script y el reto 48 h de la sección 1.1.
1. De las entidades a los archivos
El enfoque del análisis es siempre el mismo. Primero identificar las ENTIDADES del negocio: las «cosas» que manipula la aplicación (el Cliente, el Producto, el Pedido). Cada entidad se convierte en un ARCHIVO. Yacine crea así los archivos Cliente, Producto, Pedido y LíneaPedido.
Regla simple: una entidad = un archivo. Nunca se mezclan dos conceptos en un mismo archivo — el producto y el pedido son dos cosas distintas, por tanto dos archivos.
2. Rúbricas bien tipadas
Después se describen las RÚBRICAS de cada archivo: las informaciones elementales (Nombre, Ciudad, PrixUnitaireHT, DateCommande). Para cada una se elige un NOMBRE claro, un TIPO adecuado y un TAMAÑO.
La elección del tipo es capital: una fecha se almacena en tipo fecha (no en texto), un importe en monetario (para calcular, ordenar, totalizar). Ponerlo todo en texto hace que las ordenaciones sean falsas, los cálculos imposibles y los controles inoperantes.
3. Claves primarias y enlaces
Cada archivo necesita una CLAVE PRIMARIA: el identificador único de cada registro. En la práctica, se utiliza muy a menudo un identificador automático generado por el motor — simple, estable y fiable.
Por último, se trazan los ENLACES, que traducen las reglas de negocio. El más habitual es el uno a varios (1,n): un Cliente tiene varios Pedidos. El archivo del lado «varios» (Pedido) lleva una rúbrica que apunta a la clave del otro: es la clave externa. Las reglas de integridad deciden finalmente el comportamiento al suprimir (prohibir o suprimir en cascada) para proteger la coherencia.
🔎 Ejemplo concreto — 🔎 Ejemplo concreto — El análisis «NegoceElec»
El esqueleto de datos que Yacine dibuja en el editor de análisis:
// Analyse "NegoceElec" — extrait
Client : IDClient (identifiant automatique), Nom, Ville, Telephone
Produit : IDProduit (auto), Libelle, Famille, PrixUnitaireHT (monétaire)
Commande : IDCommande (auto), IDClient (clé étrangère), DateCommande (date)
LigneCommande : IDLigne (auto), IDCommande, IDProduit, Quantite (entier), PrixHT
Liaison : Client (1) ──── (n) Commande // un client a plusieurs commandes
Règle d'intégrité : supprimer un client ayant des commandes → interdit
Lectura: Yacine tipa cada rúbrica (monetario, fecha, entero) y une Pedido a Cliente por la clave IDClient, sin copiar el nombre.
Reflejo: una entidad = un archivo; una información = un solo lugar; el resto pasa por el enlace.
Vocabulario de la sección
- Entidad → Archivo
- Cada «cosa» del negocio (Cliente, Producto, Pedido) se convierte en un archivo del análisis; una entidad = un archivo, sin mezclar los conceptos.
Ejemplo sencillo: Yacine crea un archivo Cliente, un archivo Producto y un archivo Pedido.
Lo que no es: guardarlo todo en un solo archivo «Diversos» que mezcla clientes y productos.
Reflejo: un concepto de negocio → un archivo.
- Rúbrica y tipo
- Información elemental de un archivo (Nombre, Precio, Fecha), declarada con un nombre claro, un tipo adecuado y un tamaño razonable.
Ejemplo sencillo: Yacine almacena PrixUnitaireHT en monetario y DateCommande en fecha.
Lo que no es: almacenar un precio y una fecha en texto, y luego intentar calcular u ordenar.
Reflejo: tipo correcto → cálculos y ordenaciones correctos.
- Clave primaria
- Rúbrica que identifica cada registro de forma única y estable; en la práctica, un identificador automático generado por el motor.
Ejemplo sencillo: Yacine da al archivo Cliente un IDClient como identificador automático.
Lo que no es: utilizar como clave un código de negocio que cambia (correo electrónico, código de cliente renumerado).
Reflejo: clave primaria → identificador automático.
- Enlace 1,n (uno a varios)
- Relación más habitual: un Cliente tiene VARIOS Pedidos, un Pedido pertenece a UN SOLO Cliente; el lado «varios» lleva la clave externa.
Ejemplo sencillo: El enlace Cliente (1,n) Pedido mediante IDClient lleva la regla de negocio de Yacine.
Lo que no es: copiar el nombre del cliente en cada pedido en lugar de enlazar.
Reflejo: dos archivos enlazados → una clave externa, no una copia.
- Regla de integridad
- Comportamiento del motor cuando se suprime o modifica un registro enlazado (prohibir, suprimir en cascada), para proteger la coherencia.
Ejemplo sencillo: Yacine prohíbe suprimir un cliente que todavía tiene pedidos.
Lo que no es: permitir suprimir un cliente y dejar pedidos huérfanos.
Reflejo: supresión enlazada → una regla de integridad.
En la práctica — En la práctica — Construir el análisis Cliente / Pedido
- Enumere las ENTIDADES del negocio y cree un ARCHIVO para cada una (Cliente, Producto, Pedido, LíneaPedido).
- Describa las RÚBRICAS con el TIPO correcto (texto para un nombre, fecha para una fecha, monetario para un precio) y un tamaño razonable.
- Dé a cada archivo una CLAVE PRIMARIA (preferiblemente un identificador automático).
- Trace los ENLACES según las reglas de negocio (un Cliente → varios Pedidos), defina las REGLAS DE INTEGRIDAD y después GENERE el análisis.
Script paso a paso — dibujar el análisis como Yacine (5 min)
1) Enumere las entidades del comercio (Cliente, Producto, Pedido, LíneaPedido) y cree un archivo por entidad. 2) Describa las rúbricas con el tipo correcto (Nombre en texto, PrixUnitaireHT en monetario, DateCommande en fecha). 3) Añada una clave primaria por archivo (identificador automático). 4) Trace el enlace Cliente (1) → Pedido (n) con IDClient como clave externa, sin copiar el nombre del cliente. 5) Ajuste las reglas de integridad y genere el análisis.
Guarde este análisis: alimentará las ventanas (1.2), el WLangage (1.3), los campos vinculados (1.4) y el RAD (1.5).
Modelo para copiar y pegar — la lista de comprobación del análisis de Yacine
[ ] Un archivo por entidad de negocio (Cliente, Producto, Pedido…)
[ ] Rúbricas nombradas con claridad y bien TIPADAS (fecha, monetario…)
[ ] Una clave primaria por archivo (preferiblemente identificador automático)
[ ] Ninguna información repetida de un archivo a otro
[ ] Enlaces trazados (Cliente 1,n Pedido mediante clave externa)
[ ] Reglas de integridad decididas (supresión prohibida / en cascada)
[ ] Análisis generado
Estructura pequeña
Yacine empieza con tres archivos (Cliente, Producto, Pedido) y mantiene a pesar de todo una clave primaria y un enlace limpios.
Líneas de pedido
Para gestionar varios productos por pedido, Yacine añade LíneaPedido, unido a la vez a Pedido y a Producto.
Clave de negocio
Cuando la dirección impone una referencia de producto oficial, Yacine la conserva como rúbrica indexada pero mantiene el identificador automático como clave primaria.
Integridad estricta
En las existencias, Yacine prohíbe suprimir un producto que todavía está referenciado en una línea de pedido.
✓ Buenas prácticas
- Un archivo por entidad de negocio, sin mezclar los conceptos.
- Tipar siempre las rúbricas (fecha, monetario, entero).
- Almacenar cada información una sola vez y enlazarla mediante un enlace.
✗ Errores frecuentes
- Copiar un dato (nombre del cliente) en varios archivos.
- Ponerlo todo en texto: ordenaciones falsas y cálculos imposibles.
- Elegir una clave primaria inestable (código de negocio que cambia).
Puntos clave
- Enfoque: identificar las ENTIDADES (→ archivos), describir las RÚBRICAS (nombre + tipo + tamaño), definir la CLAVE PRIMARIA, trazar los ENLACES y después GENERAR el análisis.
- La elección del TIPO es capital: una fecha en fecha, un importe en monetario — nunca en texto.
- El enlace más frecuente es el uno a varios (1,n); el lado «varios» lleva la clave externa y las reglas de integridad protegen la coherencia.
- Principio fundamental: NO repetir NUNCA una información; se hace referencia a ella mediante el enlace.
Reto 48 h — aplícalo mañana
Tome un ámbito que conozca (o el comercio de Yacine) y dibuje su análisis: enumere las entidades, cree un archivo para cada una, type las rúbricas, añada una clave primaria y trace al menos un enlace 1,n. Escriba en una frase por qué nunca se copia una información de un archivo a otro.
- Puedo transformar las entidades de negocio en archivos del análisis.
- Sé tipar las rúbricas y elegir una clave primaria.
- Sé trazar un enlace 1,n sin repetir información.
Preguntas frecuentes
¿Por qué no hay que repetir una información en varios archivos?
Porque todo dato repetido acaba divergiendo: modificado en un lugar y no en otro, produce incoherencias, totales falsos y errores difíciles de corregir. Si el nombre de un cliente se almacena en Cliente Y se copia en cada Pedido, un cambio de nombre obliga a actualizarlo todo en todas partes — y un olvido muestra dos nombres distintos para el mismo cliente. El papel de los enlaces es precisamente evitar esa duplicación: la información vive una sola vez y los demás archivos se refieren a ella por la clave.
¿Hace falta una clave automática o una clave «de negocio»?
Privilegie casi siempre el identificador automático: es único por construcción, estable (ningún significado de negocio, por tanto ninguna razón para cambiar) y eficaz para los índices y las uniones. Las claves «de negocio» (código de cliente, correo electrónico, referencia) parecen prácticas pero cambian, pueden duplicarse o faltar en el momento de la creación — y modificar una clave primaria obliga a propagar el cambio en todos los archivos enlazados. Para Yacine, el identificador automático es la clave por defecto.
¿Qué principio fundamental se respeta al crear un análisis?