CRUD RELACION (1-N Y N-N) CON LLAVES FORANEAS

Slides:



Advertisements
Presentaciones similares
Las Barras La barra de título Contiene el nombre del documento sobre el que se está trabajando en ese momento. Cuando creamos un libro nuevo se le asigna.
Advertisements

Entidades (Unidades de Análisis): Viviendas Hogares Personas 1 AYUDA MEMORIA No.1: Creando relaciones ENTRE las tablas de datos NOTA: Fuente de datos Cuestionario.
Normalización Consiste en designar y aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad- relación al modelo relacional.
Introducción a las Bases de Datos Ing. Atzimba G. López M.
Aplicación con Angular, Ionic y PHP Por: Luis Salvador.
AL INICIAR EN EL SITIO, NOS MOSTRARÁN LAS PÁGINAS WEB CREADAS SI NECESITO CREAR UNA NÚEVA PÁGINA, HAGO CLIC AQUÍ:
OpenOffice.org Writer CILA: Marzo Formatos abiertos ● Nos aseguran que siempre podremos acceder a los datos ● Posibilita que exista competencia.
Manual Formulario Registro de Cajas Para el envío de Cajas en crecimiento.
INFORMATICA PAULA CADAVID 10°B.  A en el momento en el que elegimos crear una base da datos, antes de trabajar con ella. Debemos elegir su nombre y ubicación.
CREACION DE ESTRUCTURA BASE
MANEJO DE TEXTO Y OBJETOS AVANZADOS ENCABEZADOS Y PIES DE PÁGINA
Clases y Objetos.
CONTABILIDAD PROFESSIONAL DHARMA USAHA
Instructivo de usuario final
Informes B-KIN CRM -1-.
Base de Datos Conjunto de información, la cual ha sido organizada y presentada para servir un propósito específico.
Programación orientada a objetos
¿Qué es una consulta? En bases de datos, una consulta es el método para acceder a los datos en las bases de datos. Con las consultas se puede modificar,
Programación Orientada a Eventos
Statistic Package for Social Sciencies
Creación de Aviso.
Practica de tablas 1. Crear una carpeta que se llame AMISTAD
Generacion de reportes con Crystal Reports
Curso de Moodle IES PADRE FEIJOO.
NORMALIZACION MsC (c) Esp. Alexis Ovany Torres Ch.
Programación orientada a objetos
CONEXIÓN A BASE DE DATOS
EL ESCRITORIO El Escritorio es la primera pantalla que nos aparece una vez se haya cargado el Sistema Operativo. La teclas rápidas o atajo para acceder.
Introducción a programación web Martin Esses
Serie: Cómo hacer con EpiInfoTM
Prof. Daniel Obando Fuentes
Presentación de como virtualizar Ubuntu en virtual box
Agustín J. González ELO-329
Autofiltro en Excel.
MANEJO DE ARCHIVOS DIGITALES
Generacion de reportes con Crystal Reports
Tablas y Relaciones Computación 1
TÓPICOS AVANZADOS DE PROGRAMACIÓN
Hacer un Módulo en Drupal 8
En esta presentación aprenderemos lo siguiente:
Customización en ADempiere
Diseño de una Base de datos
INSTALACION DE MOODLE.
Introducción a Access Juan Alberto Sigüenza Escuela Técnica Superior de Informática.
Excel Macros Macros Automáticas.
CREAR CARPETAS FICHA RESUMEN
Generaciones de Bases de Datos
Bases para una Tienda Online  En internet hay muchas posibilidades de negocios, desde ofrecer servicios hasta la venta de productos.  Usando el sistema.
helppeople Single Sign -On
ARQUITECTURA DEL PROYECTO. La estructura modelo vista controlador se muestra en la siguiente ilustración : ESTRUCTURA DE PROYECTOS DE MVC.
Base de datos simples, relaciones Cardinalidad Claves.
Descarga de Formatos Una vez que descargues y llenes los formatos, asegúrate tener a la mano también los documentos que están en el recuadro azul.
CC Bases de Datos Otoño Clase 3: Modelo Entidad-Relación (II)
CRUD.
CREANDO OTRA VISTA.
TÓPICO DE DISEÑO DE RIGGS EXPOSITOR: PIEDAD SOTOMAYOR PERALTA
Reportes Utilizando la librería DomPDF
Google Classroom. Bienvenidos a Google Classroom.
Explicacion Del ejercicio.
Funciones principales de Excel Online
LISTAR DATOS.
Agustín J. González ELO-329
Agustín J. González ELO-329
ANÁLISIS Y DISEÑO DESDE UNA PERSPECTIVA ORIENTADA A OBJETOS Alan Vargas.
EDITAR y Eliminar DATOS
CRUD CON MODALS GUARDAR
Access Este programa permite manipular datos en forma de tablas, realizar cálculos complejos con fórmulas y funciones, incluso dibujar distintos tipos.
2. PRINCIPIOS BASICOS DE MICROSOFT ACCESS. -Sistema que tiene la capacidad de realizar tareas de distinta índole utilizando herramientas que interactúan.
EXCEL INTERMEDIO FILTROS AVANZADOS – TABLA DINAMICA – AUDITORIA DE FORMULAS JORGE LUIS AGUILAR ALCALDE.
Transcripción de la presentación:

CRUD RELACION (1-N Y N-N) CON LLAVES FORANEAS

Creamos el resto de tablas faltantes

RELACIONES DE MODELOS

Las tablas de una base de datos a menudo están relacionadas unas con otras (llaves foráneas). Las relaciones entre tablas son de 1 a 1, 1 a N y de N a N. Utilizando el ORM Eloquent podemos hacer que este proceso sea mucho más fácil, trabajando con las relaciones directamente dentro de nuestros modelos (usando Programación Orientada a Objetos) y creando métodos personalizados que nos evitarán tener que construir consultas de forma manual.

Creamos el modelo respectivo de ficha dentro del directorio app/Models/Ficha. Y agregamos lo siguientes códigos.

Relaciones en el modelo ficha.

Explicación del modelo ficha El método belongsTo nos permite trabajar con relaciones N – 1. Este método acepta como primer argumento el nombre de la clase que queremos vincular y el segundo argumento se pasa el nombre de la columna de la llave foránea

Explicación del modelo ficha Una relación de 1 – N es utilizada cuando un modelo puede tener muchos otros modelos relacionados.

Explicación del modelo ficha las relaciones de tipo belongsToMany (muchos a muchos) Se utiliza en las relaciones N - N entre ellas, como primer parámetro le pasamos el modelo con quien se relaciona, el segundo parámetro seria la tabla pivote o intermedia, como tercer parámetro la llave primaria con la que se relaciona el modelo donde se esta creando la relación, en este caso desde el modelo Ficha y el cuarto parámetro seria la llave foránea del modelo con el que se relacionara, en este caso el de Producto. En withPivot aquellos otros atributos que se quieren acceder desde la tabla pivote o intermedia

Agregando métodos de las relaciones Modelo cliente con ficha archivo Cliente.php Modelo producto con ficha archivo Producto.php

Agregando métodos de las relaciones modelo vendedor con ficha archivo Vendedor.php

Una vez modificado los respectivos modelos nos dirigimos al directorio resource/Views y crearemos la carpeta ficha y dentro de ella creamos los archivos index.blade.php y créate.blade.php

Vista index.blade.php de Ficha

Continuacion index.blade.php de Ficha Observe como a través de la relación de modelos podemos dirigirnos directamente al campo nombre_cliente para identificar el cliente al que le pertenece dicha ficha, de igual forma podemos identificar al vendedor que realizo la venta.

Final index.blade.php de Ficha

Vista create.blade.php

Continuación create.blade.php :

Continuación create.blade.php : El input codigocliente invocara un modals donde escogeremos un cliente

Continuación create.blade.php : El input codigovendedor invocara un modals donde escogeremos un vendedor En esta sección creamos un input que invocara un modals para escoger los productos que se almacenaran en la tabla detalle, por esta razón se crea inputs de tipo array que contendrán todos los productos que hemos escogidos, juntos con las cantidades y el valor unitario que le asignemos a los campos.

Incluiremos los modals que crearemos mas adelante Continuación create.blade.php : btnAdd le daremos funcionamiento con Jquery para duplicar los campos de productos, cantidad y valores unitarios, para almacenar tantos productos queramos Incluiremos los modals que crearemos mas adelante

Continuación create.blade.php: Creamos unos datatable para las tablas de clientes, vendedores y productos. ¿Qué es un datatable?, información aquí: http://rubenjgarcia.es/jquery-datatables-ejemplo-de-uso/ En esta sección lo que hacemos es identificar la fila al cual le hemos dado click de la tabla (Cliente, Vendedor o Producto) y capturar el valor id o codigo para enviárselo al input correspondiente

Continuación create.blade.php: Aquí nos encargamos de duplicar los campos de productos, cantidades y valores unitarios cada vez que presionamos el botón de +, con um máximo de 10 duplicaciones

Final vista create.blade.php Finalizamos la vista créate, la función escogerProducto realiza las misma función de identificar el producto escogido, solo que esta vez debemos indicar cual de los campos duplicados le vamos a enviar dicho código del producto, por esta razón creamos una función a parte para este proceso.

En el archivo layouts. blade En el archivo layouts.blade.php de la carpeta layouts, nos dirigimos al principio y al final donde anexaremos los css y js para los datatables.

Creamos nuestro controlador FichaController Creamos nuestro controlador FichaController.php y añadimos lo siguiente

Continuación FichaController Continuación FichaController.php : en la primera parte del método store estamos creando el encabezado de la ficha La primera parte del método store es similar a un guardar normal visto anteriormente.

Con este ciclo se almacenan todos los datos de la tabla detalle. Continuación FichaController.php : en la segunda parte del método store estamos creando el detalle de la ficha, y el método destroy de eliminar , una vez terminado nuestro controlador vamos a crear los respectivos modal para las tablas de clientes, productos y vendedores Con este ciclo se almacenan todos los datos de la tabla detalle.

Agregamos al menú (menú. blade Agregamos al menú (menú.blade.php) los link para acceder al listar ficha y crear una nueva ficha creamos las rutas (route/web.php)

Creamos los modals: modal_listar_clientes. blade Creamos los modals: modal_listar_clientes.blade.php, modal_listar_productos.blade.php y modal_listar_vendedores.blade.php

Modal de cliente: modal_listar_clientes.blade.php NOTA: Para los demás modals vendedor y producto después de la etiqueta de cierre de </table> son 4 </div> de cierre los que le siguen. Para evitar fallos en el maquetado de estos.

Modal de productos: modal_listar_productos.blade.php

Modal de vendedores: modal_listar_vendedores.blade.php

Probar listar Observe que trae el nombre del cliente y el nombre del vendedor.

Pruebe Registro de fichas

Prueba de modals