jorgeprada johnnygarvizu yasuhikoroca proyectofinal

Upload: poulsen-guerrero

Post on 07-Jul-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    1/35

      Page: 1

    PROYECTO FINAL“BOMBONES CHITY” 

     ALUMNOS:  Jorge Andres PradaJohnny Angel GarvizuYasuhiko Roka

    DOCENTE:  Ing. Rolando Gonzales

     MATERIA:  Programacion de Base de Datos

    FECHA:  02/07/2012

    SANTA CRUZ - BOLIVIA

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    2/35

      Page: 2

    Planteamiento del problema.-

    BOMBONES CHITY:

    La chocolatería “BOMBONES CHITY”, dedicada a la producción de una variedad de

    productos basados en chocolates, desea implementar un sistema computarizado enla empresa con el propósito de optimizar su control de la empresa y la atenciónal cliente.

    Actualmente la chocolatería produce una variedad de chocolates que llegan alcliente por medio de promotores, los cuales tienen la obligación de entregarfactura. Actualmente cuenta con un almacén en el B/Conavi por la Av. Paragua lugardonde los promotores recogen el producto. Para ello requiere un sistema de controlde inventario, ventas y personal.

    Los se necesita establecer bien el producto ya que tienen una amplia variedad detamaños, colores, sabores, tipos y embalajes.

    Deben saber los productos que tienen en un color específico (tipo de producto,color y sabor) para poder promocionarlo.

    Necesitan conocer los datos más importante de sus empleados (nombre, apellidopaterno, apellido materno, cargo, y CI).

    Quien saber cuáles de sus clientes registrados han realizado una compra eindependientemente mostrar el total de facturas emitidas

    Requieren una lista de sus promotores por su mayor cantidad de ventas (nombre,apellido paterno, apellido materno y el número de ventas realizadas)

    Deben tener ciertas restricciones a la hora de introducir sus datos, los másnecesarios son:

    -  Verificar q los productos estén en buen estado.

    -  Que el teléfono sea un número fijo y no un número de celular.-  No aprobar una venta si es q no hay existencias.

    Para automatizar su control de ventas desean ir descontando los productos a medidaq realizan una venta.

    Desean saber la cuenta total de compra de un cliente (utilizando vistas,procedimientos de almacenado, cursores)

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    3/35

      Page: 3

    Tabla de Contenidos

    Detalle del Modelo ......................................................................................................................... 2

    Modelo de dominio ................................................................................................................... 2

    Cliente ...................................................................................................................................... 2Color ........................................................................................................................................ 4

    Embalaje .................................................................................................................................. 5

    Factura...................................................................................................................................... 6Funcionario .............................................................................................................................. 7

    Persona ..................................................................................................................................... 9

    Produccion ............................................................................................................................. 11

    Producto ................................................................................................................................. 13Promotor ................................................................................................................................ 16

    Sabor ...................................................................................................................................... 17

    Tamano .................................................................................................................................. 18

    TipoFuncionario ..................................................................................................................... 19TipoProducto.......................................................................................................................... 20

    Venta ...................................................................................................................................... 21Objetos del dominio ............................................................................................................. 24

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    4/35

      Page: 4

    Documentación del Modelo

    Detalle del ModeloEste documento provee una completa perspectiva general de los detalles de todos los elementos. Para reportes mas

    simples y enfocados, simplemente copie esta plantilla inicial y deseleccione las secciones no requeridas.

    Modelo de dominioTipo:  Paquete Estado:  Proposed. Versión . Fase 1.0. Paquete:  Model Detalle:  Creado el 02/07/2012. Última modificación el 02/07/2012 GUID:  {D2A30D6A-9CC8-4147-9D2F-A85799F16ECD}

    Modelo de dominio - (diagrama Lógico )Creado por:  Administrador el 02/07/2012Última modificación:  02/07/2012Versión:  1.0. Bloquedo: FalsoGUID:  {4C41ACC5-7511-4527-8AD1-56303711A687}

    Imagen: 1 

    ClienteTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0.

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    5/35

      Page: 5

     Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {81E739E6-17A1-49d6-BFF9-2BFD874EA386}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (idCliente =idCliente)

    Origen -> Destino

    PublicFK__Venta__idCliente

     __37A5467C

    Venta

    PublicPK__Cliente__885457

    EE1ED998B2

    Cliente

    Asociación (idPersona =

    idPersona)

    Origen -> Destino

    Public

    FK__Cliente__idPerso_ 

     _20C1E124

    Cliente

    Public

    PK__Persona__A47881

    411B0907CE

    Persona

    Atributos

    Atributo Notas Restricciones y etiquetas

    idCliente int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    idPersona int

    Public

    «column»

     Predeterminado:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    6/35

      Page: 6

    Atributo Notas Restricciones y etiquetas

    ObservacionCliente varchar

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Cliente__885457EE

    1ED998B2() Public 

    int [in] idCliente

    FK__Cliente__idPerso__ 

    20C1E124() Public 

    int [in] idPersona

    ColorTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {5D7E569A-BB7E-4767-8AD4-3791EE6A05DE}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (Color =

    idColor)

    Origen -> Destino

    Public

    FK__Producto__Color_ 

     _164452B1

    Producto

    Public

    PK__Color__504A3B8

    807020F21

    Color

    Atributos

    Atributo Notas Restricciones y etiquetas

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    7/35

      Page: 7

    Atributo Notas Restricciones y etiquetas

    idColor int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    nombreColor varchar

    Public

    «column»

     Predeterminado:

    OperacionesMetodo Notas Parámetros

    PK__Color__504A3B880

    7020F21() Public 

    int [in] idColor

    EmbalajeTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {BB52F70D-9BB1-4227-A065-CAD4CB82CA19}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (Embalaje =

    idEmbalaje)

    Origen -> Destino

    Public

    FK__Producto__Embal

    a__15502E78

    Producto

    Public

    PK__Embalaje__2071

    D65403317E3D

    Embalaje

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    8/35

      Page: 8

    Atributos

    Atributo Notas Restricciones y etiquetas

    idEmbalaje int

    Public

    «column»

     Predeterminado:

    [property =AutoNum=1;StartNum=1;Increment

    =1; ]

    nombreEmbalaje varchar

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Embalaje__2071D6

    5403317E3D() 

    Public 

    int [in] idEmbalaje

    FacturaTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {FDB99691-B2BA-448b-8975-A1E053E5CF55}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados  owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (idFactura =

    idFactura)

    Public

    FK__Venta__idFactura

    Public

    PK__Factura__3CD568

     

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    9/35

      Page: 9

    Conector Origen Destino Notas

    Origen -> Destino __3A81B327

    Venta

    7E31EC6D26

    Factura

    AtributosAtributo Notas Restricciones y etiquetas

    idFactura int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    NroFactura int

    Public

    «column»

     Predeterminado:

    NroAutorizacion int

    Public

    «column»

     Predeterminado:

    fechaVencFactura datePublic

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Factura__3CD5687

    E31EC6D26() Public 

    int [in] idFactura

    FuncionarioTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    10/35

      Page: 10

     Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {174EE7E4-8108-4727-84FC-181E03A71298}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación

    (idFuncionario =idFuncionario)

    Origen -> Destino

    Public

    FK__Produccio__idFun __403A8C7D

    Produccion

    Public

    PK__Funciona__B0A122952C3393D0

    Funcionario

    Asociación(idTipoFuncionario =

    idTipoFuncionario)

    Origen -> Destino

    Public

    FK__Funcionar__idTip

     __2F10007B

    Funcionario

    Public

    PK__TipoFunc__65659

    B96286302EC

    TipoFuncionario

    Asociación (idPersona =

    idPersona)

    Origen -> Destino

    Public

    FK__Funcionar__idPer 

     __2E1BDC42

    Funcionario

    Public

    PK__Persona__A47881

    411B0907CE

    Persona

    Atributos

    Atributo Notas Restricciones y etiquetas

    idFuncionario int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    idPersona intPublic

    «column»

     Predeterminado:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    11/35

      Page: 11

    Atributo Notas Restricciones y etiquetas

    idTipoFuncionario int

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Funciona__B0A122

    952C3393D0() Public 

    int [in] idFuncionario

    FK__Funcionar__idPer_ 

     _2E1BDC42() Public 

    int [in] idPersona

    FK__Funcionar__idTip_  _2F10007B() Public 

    int [in] idTipoFuncionario

    PersonaTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {2326F210-FEDA-4fe4-9D8B-138F8FEC67E3}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (idPersona =

    idPersona)

    Origen -> Destino

    Public

    FK__Promotor__idPers

     __25869641

    Promotor

    Public

    PK__Persona__A47881

    411B0907CE

    Persona

    Asociación (idPersona =

    idPersona)

    Public

    FK__Funcionar__idPer 

    Public

    PK__Persona__A47881

     

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    12/35

      Page: 12

    Conector Origen Destino Notas

    Origen -> Destino __2E1BDC42

    Funcionario

    411B0907CE

    Persona

    Asociación (idPersona =

    idPersona)

    Origen -> Destino

    Public

    FK__Cliente__idPerso_ 

     _20C1E124Cliente

    Public

    PK__Persona__A47881

    411B0907CEPersona

    Atributos

    Atributo Notas Restricciones y etiquetas

    idPersona int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    Nombre varchar

    Public

    «column»

     Predeterminado:

    apPaterno varchar

    Public

    «column»

     Predeterminado:

    apMaterno varchar

    Public

    «column»

     Predeterminado:

    Telefono intPublic

    «column»

     Predeterminado:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    13/35

      Page: 13

    Atributo Notas Restricciones y etiquetas

    Direccion varchar

    Public

    «column»

     Predeterminado:

    Email varchar

    Public

    «column»

     Predeterminado:

    CI int

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Persona__A4788141

    1B0907CE() Public 

    int [in] idPersona

    ProduccionTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {E2ABA18E-A443-41f7-AB3F-F63635A21E5F}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    14/35

      Page: 14

    Conecciones  

    Conector Origen Destino Notas

    Asociación (idProducto

    = idProducto)

    Origen -> Destino

    Public

    FK__Produccio__idPro

     __3F466844

    Produccion

    Public

    PK__Producto__07F4A

    1321273C1CD

    Producto

    Asociación(idFuncionario =

    idFuncionario)

    Origen -> Destino

    Public

    FK__Produccio__idFun

     __403A8C7D

    Produccion

    Public

    PK__Funciona__B0A1

    22952C3393D0

    Funcionario

    Atributos

    Atributo Notas Restricciones y etiquetas

    idProduccion int

    Public

    «column»

     Predeterminado:

    [property =AutoNum=1;StartNum=1;Increment

    =1; ]

    fechaProduccion date

    Public

    «column»

     Predeterminado:

    fechaVencimiento date

    Public

    «column»

     Predeterminado:

    cantidad int

    Public

    «column»

     Predeterminado:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    15/35

      Page: 15

    Atributo Notas Restricciones y etiquetas

    idProducto int

    Public

    «column»

     Predeterminado:

    idFuncionario int

    Public

    «column»

     Predeterminado:

    OperacionesMetodo Notas Parámetros

    PK__Producci__CB8825

    D83D5E1FD2() Public 

    int [in] idProduccion

    FK__Produccio__idFun_ 

     _403A8C7D() Public 

    int [in] idFuncionario

    FK__Produccio__idPro_ 

     _3F466844() Public 

    int [in] idProducto

    ProductoTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {1C793FBB-92B9-42d2-BC0F-DFFC015BAE5E}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    16/35

      Page: 16

    Conector Origen Destino Notas

    Asociación (idProducto

    = idProducto)

    Origen -> Destino

    Public

    FK__Venta__idProduct

     __38996AB5

    Venta

    Public

    PK__Producto__07F4A

    1321273C1CD

    Producto

    Asociación(TipoProducto =

    idTipoProducto)

    Origen -> Destino

    PublicFK__Producto__TipoPr 

     __182C9B23

    Producto

    PublicPK__TipoProd__2552C

    5A50EA330E9

    TipoProducto

    Asociación (Tamano =

    idTamano)

    Origen -> Destino

    Public

    FK__Producto__Taman

    o__145C0A3F

    Producto

    Public

    PK__Tamano__8284F1

    DB7F60ED59

    Tamano

    Asociación (Sabor =

    idSabor)

    Origen -> Destino

    Public

    FK__Producto__Sabor_ 

     _173876EA

    Producto

    Public

    PK__Sabor__B088378

    B0AD2A005

    Sabor

    Asociación (Embalaje =

    idEmbalaje)

    Origen -> Destino

    Public

    FK__Producto__Embal

    a__15502E78

    Producto

    Public

    PK__Embalaje__2071

    D65403317E3D

    Embalaje

    Asociación (Color =

    idColor)

    Origen -> Destino

    Public

    FK__Producto__Color_ 

     _164452B1

    Producto

    Public

    PK__Color__504A3B8

    807020F21

    Color

    Asociación (idProducto

    = idProducto)

    Origen -> Destino

    Public

    FK__Produccio__idPro

     __3F466844Produccion

    Public

    PK__Producto__07F4A

    1321273C1CDProducto

    Atributos

    Atributo Notas Restricciones y etiquetas

    idProducto int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    17/35

      Page: 17

    Atributo Notas Restricciones y etiquetas

    nombreProducto varchar

    Public

    «column»

     Predeterminado:

    Tamano int

    Public

    «column»

     Predeterminado:

    Embalaje int

    Public

    «column»

     Predeterminado:

    Color int

    Public

    «column»

     Predeterminado:

    Sabor int

    Public

    «column»

     Predeterminado:

    TipoProducto int

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Producto__07F4A1   int [in] idProducto

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    18/35

      Page: 18

    Metodo Notas Parámetros

    321273C1CD() Public 

    FK__Producto__Color__ 

    164452B1() Public 

    int [in] Color

    FK__Producto__Embala __15502E78() Public 

    int [in] Embalaje

    FK__Producto__Sabor__ 

    173876EA() Public 

    int [in] Sabor

    FK__Producto__Tamano

     __145C0A3F() Public 

    int [in] Tamano

    FK__Producto__TipoPr_ 

     _182C9B23() 

    Public 

    int [in] TipoProducto

    PromotorTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {68120C0F-9441-407f-B998-2B302C8648F9}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (idPromotor

    = idPromotor)

    Origen -> Destino

    Public

    FK__Venta__idPromot

    o__398D8EEEVenta

    Public

    PK__Promotor__719B7

    F88239E4DCFPromotor

    Asociación (idPersona =

    idPersona)

    Origen -> Destino

    Public

    FK__Promotor__idPers

     __25869641

    Promotor

    Public

    PK__Persona__A47881

    411B0907CE

    Persona

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    19/35

      Page: 19

    Atributos

    Atributo Notas Restricciones y etiquetas

    idPromotor int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    idPersona int

    Public

    «column»

     Predeterminado:

    ObservacionPromotor 

    varcharPublic

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Promotor__719B7F

    88239E4DCF() 

    Public 

    int [in] idPromotor

    FK__Promotor__idPers_ 

     _25869641() 

    Public 

    int [in] idPersona

    SaborTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.

    GUID:  {BCC308EB-5655-486a-BC18-73238A19679A}

    Propiedades Personal izadas

      isActive = Falso

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    20/35

      Page: 20

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino NotasAsociación (Sabor =

    idSabor)

    Origen -> Destino

    Public

    FK__Producto__Sabor_ 

     _173876EA

    Producto

    Public

    PK__Sabor__B088378

    B0AD2A005

    Sabor

    Atributos

    Atributo Notas Restricciones y etiquetas

    idSabor int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment=1; ]

    nombreSabor varchar

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Sabor__B088378B0

    AD2A005() Public 

    int [in] idSabor

    TamanoTipo:  Clase

     Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {4D86E89C-D502-4356-8DA2-A576F6C3DB9A}

    Propiedades Personal izadas

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    21/35

      Page: 21

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (Tamano =

    idTamano)

    Origen -> Destino

    Public

    FK__Producto__Taman

    o__145C0A3F

    Producto

    Public

    PK__Tamano__8284F1

    DB7F60ED59

    Tamano

    AtributosAtributo Notas Restricciones y etiquetas

    idTamano int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    nombreTamano varchar

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Tamano__8284F1D

    B7F60ED59() 

    Public 

    int [in] idTamano

    TipoFuncionarioTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {9A16F1E1-E3CF-436a-9F80-99999A3E5943}

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    22/35

      Page: 22

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación(idTipoFuncionario =

    idTipoFuncionario)

    Origen -> Destino

    Public

    FK__Funcionar__idTip

     __2F10007B

    Funcionario

    Public

    PK__TipoFunc__65659

    B96286302EC

    TipoFuncionario

    Atributos

    Atributo Notas Restricciones y etiquetas

    idTipoFuncionario int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    Nombre varcharPublic

    «column»

     Predeterminado:

    Cargo varchar

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__TipoFunc__65659B

    96286302EC() 

    int [in] idTipoFuncionario

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    23/35

      Page: 23

    Metodo Notas Parámetros

    Public 

    TipoProducto

    Tipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {E5F33531-B5E5-451b-A37C-7B10AD7FC93E}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación(TipoProducto =

    idTipoProducto)

    Origen -> Destino

    Public

    FK__Producto__TipoPr 

     __182C9B23

    Producto

    Public

    PK__TipoProd__2552C

    5A50EA330E9

    TipoProducto

    Atributos

    Atributo Notas Restricciones y etiquetas

    idTipoProducto int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    nombreTipoProducto varchar

    Public

    «column»

     Predeterminado:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    24/35

      Page: 24

    Operaciones

    Metodo Notas Parámetros

    PK__TipoProd__2552C5

    A50EA330E9() Public 

    int [in] idTipoProducto

    VentaTipo:  Clase Estado:  Propuesto. Versión 1.0.  Fase 1.0. Paquete:  Modelo de dominio  Palabras claves: Detalle:  Creado el  02/07/2012. Última modificación el 02/07/2012.GUID:  {225480D1-5120-4689-8CCF-0377F1A80551}

    Propiedades Personal izadas

      isActive = Falso

    Valores Et iquetados

      owner = dbo.

    Conecciones  

    Conector Origen Destino Notas

    Asociación (idPromotor

    = idPromotor)

    Origen -> Destino

    Public

    FK__Venta__idPromot

    o__398D8EEEVenta

    Public

    PK__Promotor__719B7

    F88239E4DCFPromotor

    Asociación (idProducto

    = idProducto)

    Origen -> Destino

    Public

    FK__Venta__idProduct

     __38996AB5

    Venta

    Public

    PK__Producto__07F4A

    1321273C1CD

    Producto

    Asociación (idFactura =

    idFactura)

    Origen -> Destino

    Public

    FK__Venta__idFactura

     __3A81B327

    Venta

    Public

    PK__Factura__3CD568

    7E31EC6D26

    Factura

    Asociación (idCliente =idCliente)

    Origen -> Destino

    PublicFK__Venta__idCliente

     __37A5467C

    Venta

    PublicPK__Cliente__885457

    EE1ED998B2

    Cliente

    Atributos

    Atributo Notas Restricciones y etiquetas

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    25/35

      Page: 25

    Atributo Notas Restricciones y etiquetas

    idVenta int

    Public

    «column»

     Predeterminado:

    [property =

    AutoNum=1;StartNum=1;Increment

    =1; ]

    Fecha date

    Public

    «column»

     Predeterminado:

    Cantidad int

    Public

    «column»

     Predeterminado:

    Precio decimal

    Public

    «column»

     Predeterminado:

    NIT int

    Public

    «column»

     Predeterminado:

    idCliente int

    Public

    «column»

     Predeterminado:

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    26/35

      Page: 26

    Atributo Notas Restricciones y etiquetas

    idProducto int

    Public

    «column»

     Predeterminado:

    idPromotor int

    Public

    «column»

     Predeterminado:

    idFactura int

    Public

    «column»

     Predeterminado:

    Operaciones

    Metodo Notas Parámetros

    PK__Venta__077D56143

    5BCFE0A() Public 

    int [in] idVenta

    FK__Venta__idCliente__ 37A5467C() Public 

    int [in] idCliente

    FK__Venta__idFactura_ 

     _3A81B327() Public 

    int [in] idFactura

    FK__Venta__idProduct_ 

     _38996AB5() 

    Public 

    int [in] idProducto

    FK__Venta__idPromoto_ 

     _398D8EEE() Public 

    int [in] idPromotor

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    27/35

      Page: 27

     MAPEO

    TAMAÑO(idTamaño(PK), nombreTamaño)EMBALAJE(idEmbalaje(PK), nombreEmbalaje)COLOR(idColor(PK), nombreColor)SABOR(idSabor(PK), nombreSabor)TIPOPRODUCTO(idTipoProducto(PK), nombreTipoProducto)PRODUCTO(idProducto(PK), nombreProducto, saldoProducto, idTamaño(FK),idEmbalaje(FK), idColor(FK), idSabor(FK), idtipoProducto(FK))PERSONA(idPersona(PK), Nombre, apPaterno, apMaterno, Telefono, Direccion, Email,CI)CLIENTE(idCliente(PK, idPersona(FK))PROMOTORES(idPromotores(PK), idPersona(FK))TIPOFUNCIONARIO(idTipoFuncionario(PK), Nombre, Cargo)FUNCIONARIO(idFuncionario(PK), idPersona(FK), idtipoFuncionario(FK))FACTURA(idFactura(PK), numeroFactura, numeroAutorizacion,fechaVencimientoFactura)VENTA(idVenta(PK), Fecha, Cantidad, Precio, NIT, idCliente(FK),idFuncionario(FK), idPromotores(FK), idFactura(FK))PRODUCCION(idProduccion(PK), fechaProduccion, fechaVencimiento, cantidad,

    idProducto(FK), idFuncionario(FK))

    SCRIP TABLAS

    create database BOMBONES_CHITYuse BOMBONES_CHITYgo create table Tamano(

    idTamano int not null identity,nombreTamano varchar(20) not null,primary key(idTamano)

    )gocreate table Embalaje(

    idEmbalaje int not null identity,nombreEmbalaje varchar(20) not null,primary key(idEmbalaje)

    )gocreate table Color(

    idColor int not null identity,nombreColor varchar(20) not null,primary key(idColor)

    )gocreate table Sabor(

    idSabor int not null identity,nombreSabor varchar(20) not null,primary key(idSabor)

    )gocreate table TipoProducto

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    28/35

      Page: 28

    (idTipoProducto int not null identity,nombreTipoProducto varchar(20) not null,primary key(idTipoProducto)

    )gocreate table Producto(

    idProducto int not null identity,nombreProducto varchar(30) not null,Tamano int not null,Embalaje int not null,Color int not null,Sabor int not null,TipoProducto int not null,primary key(idProducto),foreign key(Tamano)references Tamano(idTamano),foreign key(Embalaje)references Embalaje(idEmbalaje),foreign key(Color)references Color(idColor),foreign key(Sabor)references Sabor(idSabor),

    foreign key(TipoProducto)references TipoProducto(idTipoProducto))gocreate table Persona(

    idPersona int not null identity,Nombre varchar(30) not null,apPaterno varchar(30) not null,apMaterno varchar(30) not null,Telefono int not null,Direccion varchar(50) not null,Email varchar(30) not null,CI int not null,primary key(idPersona)

    )gocreate table Cliente(

    idCliente int not null identity,idPersona int not null,ObservacionCliente varchar(20) not null,primary key(idCliente),foreign key(idPersona)references Persona(idPersona)

    )gocreate table Promotor(

    idPromotor int not null identity,idPersona int not null,ObservacionPromotor varchar(20) not null,primary key(idPromotor),foreign key(idPersona)references Persona(idPersona)

    )gocreate table TipoFuncionario(

    idTipoFuncionario int not null identity,

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    29/35

      Page: 29

    Nombre varchar(20) not null,Cargo varchar(30) not null,primary key(idTipoFuncionario)

    )gocreate table Funcionario(

    idFuncionario int not null identity,idPersona int not null,idTipoFuncionario int not null,primary key(idFuncionario),foreign key(idPersona)references Persona(idPersona),foreign key(idTipoFuncionario)references 

    TipoFuncionario(idTipoFuncionario))gocreate table Factura(

    idFactura int not null identity,NroFactura int not null,

    NroAutorizacion int not null,fechaVencFactura date not null,primary key(idFactura)

    )gocreate table Venta(

    idVenta int not null identity,Fecha date not null,Cantidad int not null,Precio decimal(8,2) not null,NIT int not null,idCliente int not null,idProducto int not null,idPromotor int not null,idFactura int not null,primary key(idVenta),foreign key(idCliente)references Cliente(idCliente),foreign key(idProducto)references Producto(idProducto),foreign key(idPromotor)references Promotor(idPromotor),foreign key(idFactura)references Factura(idFactura)

    )gocreate table Produccion(

    idProduccion int not null identity, fechaProduccion date not null,

    fechaVencimiento date not null,cantidad int not null,idProducto int not null,idFuncionario int not null,primary key(idProduccion),foreign key(idProducto)references Producto(idProducto),foreign key(idFuncionario)references Funcionario(idFuncionario)

    )

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    30/35

      Page: 30

    SCRIP INSERT Y SELECT

    --insert tamano

    insert into Tamano values('Grande')insert into Tamano values('Mediano')insert into Tamano values('Pequeño')

    select * from Tamano

    --insert embalaje

    insert into Embalaje values('Caja de Carton')insert into Embalaje values('Caja de Madera')insert into Embalaje values('Emboltura Plastica')insert into Embalaje values('Emboltura Aluminio')

    select * from Embalaje

    --insert Color

    insert into Color values('Blanco')insert into Color values('Cafe')insert into Color values('Roja')insert into Color values('Verde')insert into Color values('Negro')

    select * from Color

    --insert Sabor

    insert into Sabor values('Amarula')insert into Sabor values('Almendra')insert into Sabor values('Coco')insert into Sabor values('Menta')insert into Sabor values('Toffee')

    select * from sabor

    --insert Tipo Productoinsert into TipoProducto values('Bombon')insert into TipoProducto values('Paleta')insert into TipoProducto values('Trufa')insert into TipoProducto values('Barra Energetica')

    select * from TipoProducto

    --insert Producto

    insert into Producto values ('Bombon Blanco De Amarrula',2,4,1,1,1)insert into Producto values ('Bombon Negro De Almendra',2,4,5,2,1)insert into Producto values ('Bombon Cafe De Toffee',1,4,2,5,1)insert into Producto values ('Bombon Blanco De Coco',1,4,1,3,1)insert into Producto values ('Bombon Blanco De Toffee',2,4,1,5,1)

    select * from Producto

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    31/35

      Page: 31

    -- Insert Factura

    insert into Factura  values (123456,2345,'23/02/2013')insert into Factura  values (123457,3456,'23/02/2013')insert into Factura  values (123458,4567,'23/02/2013')insert into Factura  values (123459,5678,'23/02/2013')insert into Factura  values (123460,6789,'23/02/2013')

    select * from Factura

    -- Insert Persona

    insert into Persona values('Marta','Barrios','Arguedas',3274365,'C/las macetas# 24','[email protected]',234521)insert into Persona values('Pablo','Loza','Carrasco',3523478,'C/las piñas #23','[email protected]',4534242)insert into Persona values('Jose','Ramos','Cuellar',3534231,'B/Guaracachi #75','[email protected]',2341243)insert into Persona values('Luis','Zambrana','Romero',3523462,'C/Claveles #35','[email protected]',2412351)

    insert into Persona values('Pedro','Garcia','Garvizu',3624524,'B/Callao #64','[email protected]',7778456)insert into Persona values('Laura','Mercado','Roma',3645672,'C/Begonias #45','[email protected]',8567843)insert into Persona values('Susana','Cardenas','Arnes',3958674,'C/Guapay #87','[email protected]',7467456)insert into Persona values('Romane','Cabrera','Parada',3567123,'Av Paragua #56','[email protected]',6987066)insert into Persona values('Jorge','Romera','Arauz',3998706,'Av. Brasil #644','[email protected]',7345634)insert into Persona values('Shauna','Barba','Aniston',3534693,'C/sauna #65','[email protected]',9998665)insert into Persona values('Bruno','Fernandez','Coronado',3235356,'C/ barbarosa# 87','[email protected]',9214253)insert into Persona values('Andres','Prada','Zegarra',3965872,'Av. Paragua #31','[email protected]',67745392)insert into Persona values('Carmen','Roca','Vargas',3645997,'La Ramada #23','[email protected]',6345212)insert into Persona values('Lucia','Franco','Saucedo',3523452,'Los Pozos #534','[email protected]',7764532)insert into Persona values('Laura','Bozo','Rodriguez',3654412,'B/ Las palmeras# 667','[email protected]',5656372)

    select * from Persona

    -- insert Cliente

    insert into Cliente values(1,'Mayorista') insert into Cliente values(2,'Mayorista')insert into Cliente values(3,'Minorista')insert into Cliente values(4,'Mayorista')insert into Cliente values(5,'Minorista')

    select * from Cliente

    -- insert TipoFuncionario

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    32/35

      Page: 32

    insert into TipoFuncionario values ('ventas','gerente')insert into TipoFuncionario values ('ventas','cajero')insert into TipoFuncionario values ('produccion','encargado')insert into TipoFuncionario values ('contabilidad','encargado')insert into TipoFuncionario values ('limpieza','encargado')

    select * from TipoFuncionario-- insert Funcionario

    insert into Funcionario values (1,1)insert into Funcionario values (2,2)insert into Funcionario values (3,3)insert into Funcionario values (4,4)insert into Funcionario values (5,5)

    select * from Funcionario

    -- insert Promotores

    insert into Promotor values (11,'cumple meta')insert into Promotor values (12,'no cumple meta')insert into Promotor values (13,'cumple meta')insert into Promotor values (14,'cumple meta')insert into Promotor values (15,'no cumple meta')

    select * from Promotor

    -- insert Venta

    insert into Venta values ('03/06/2012',4,10.00,87954683,1,1,1,1)insert into Venta values ('30/06/2012',5,23.40,9865598,2,2,2,2)insert into Venta values ('20/06/2012',6,2.50,8985529,3,3,3,3)insert into Venta values ('24/06/2012',2,5.20,9986429,3,4,3,4)insert into Venta values ('30/06/2012',4,26.50,1153246,4,5,4,5)

    select * from Venta

    -- insert Produccion

    insert into Produccion values ('05/06/2012','05/09/2012',30,1,3)insert into Produccion values ('06/06/2012','06/09/2012',20,2,3)insert into Produccion values ('07/06/2012','07/09/2012',30,3,3)insert into Produccion values ('08/06/2012','08/09/2012',40,4,3)insert into Produccion values ('09/06/2012','09/09/2012',50,5,3)

    select * from Produccion

    --------------------------------------------------------Mostrar datos principales de empleados------------------------------------------------------select t.Nombre,t.Cargo,p.Nombre,p.apPaterno,p.apMaterno,p.CI from TipoFuncionario t,Funcionario f,Persona p  where f.idPersona = p.idPersonaand f.idTipoFuncionario=t.idTipoFuncionario

    select * from Venta

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    33/35

      Page: 33

    ------------------------------------------------------------mostrar las listas de clientes que han realizados compras----------------------------------------------------------

    select p.nombre, p.apPaterno, p.apMaterno,p.Telefono,p.Direccion, v.Cantidadfrom Persona p inner join Cliente c on p.idPersona = c.idPersona inner join Venta v on c.idCliente=v.idClientewhere v.idCliente = c.idCliente 

    ------------------------------------------------------------mostrar promotores por mayor venta----------------------------------------------------------select * from ventaselect * from promotorselect * from persona

    select p.Nombre, p.apPaterno, p.apMaterno, COUNT (v.idPromotor)as NumeroVentasfrom Persona p inner join Promotor prom on p.idPersona=prom.idPersona inner join Venta v on prom.idPromotor=v.idPromotor 

    group by v.idPromotor,p.Nombre,p.apPaterno,p.apMaternoorder by NumeroVentas desc

    ------------------------------------------------------------mostrar la cantidad de facturas emitidas----------------------------------------------------------select COUNT_BIG (f.NroFactura) as TotalFacturas from Factura f inner join Venta v on f.idFactura = v.idFacturawhere f.idFactura = v.idFactura

    select * from Producto------------------------------------------------------------mostrar los productos de un color de chocolate espesifico----------------------------------------------------------

    select tp.nombreTipoProducto, c.nombreColor, s.nombreSaborfrom Producto p inner join Sabor s on p.Sabor = s.idSabor inner join Color c on c.idColor = p.Color 

    inner join TipoProducto tp on tp.idTipoProducto = p.TipoProductowhere c.nombreColor ='blanco'

    SCRIP TRIGGERS

    ----------------------------------------------Trigger para fecha de vencimiento--------------------------------------------

    create trigger tq_validarvencimiento6 on produccion for insertasdeclare @fecha datetime, @fecha_vencimiento dateselect @fecha= getdate()select @fecha_vencimiento = i.fechavencimiento from Inserted i

    if (@fecha>@fecha_vencimiento)commit tran

    elseRAISERROR ('El producto ya caduco.....!' , 16, 1)rollback tran

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    34/35

      Page: 34

    ----------------------------------------------Trigger para numero telefonico empieze en 3--------------------------------------------create trigger validacion_telefono3 on Persona for insertasdeclare @telefono integerselect @telefono= left(i.telefono,1) from inserted i

    if (@telefono=3)commit tran

    elseRAISERROR ('Ingrese un numero valido!' , 16, 1)rollback tran 

    ----------------------------------------------Trigger para ventas tras realizar una venta se reduce el total--------------------------------------------create trigger validacion_ventas3 on Venta for insertasdeclare @idproducto int, @cantidad int

    select @idproducto=i.idproducto from inserted i

    select @cantidad = i.cantidad from inserted iupdate produccion set cantidad=cantidad-@cantidad where 

    idproducto=@idproducto

    ---------------------------------------------No se puede vender si no tiene inventario-------------------------------------------create trigger validar_inventario on Venta for insertasdeclare @idproducto int, @cantidad int

    select @idproducto=i.idproducto from inserted iselect @cantidad = p.cantidad from produccion p where 

    p.idproducto=@idproductoif (@cantidad>0)commit tran

    elseRAISERROR ('No tiene producto en stock!' , 16, 1)rollback tran

    SCRIP PROCEDIMIENTO DE ALMACENADO

    Create view vis_Ventaasselect venta.*fromventa inner join Cliente on venta.idCliente=Cliente.idCliente

    go create  procedure sp_preciosSumaClientes@fechaVenta dateasdeclare @idventa intdeclare @precio decimal(8,2)declare cur_totalxCliente cursor forselect vis_Venta.idVenta,SUM(Venta.Cantidad*Venta.Precio)as  totalfrom vis_Venta inner join Ventaon vis_Venta.idVenta=Venta.idVenta

  • 8/19/2019 JorgePrada JohnnyGarvizu YasuhikoRoca ProyectoFinal

    35/35

      Page: 35

    where vis_Venta.fecha=@fechaVentagroup by vis_Venta.idVenta

    open cur_totalxClientefetch next from cur_totalxClienteinto @idventa,@preciowhile @@FETCH_STATUS=0beginif exists(select * from Venta where idVenta=@idventa)beginupdate Ventaset Precio=Precio + @preciowhere idVenta =@idventaendelsebegin insert into Venta values(@idventa,@precio)endfetch next from cur_totalxCliente into @idventa,@precioend