sábado, 2 de junio de 2018

ACCESS: Práctica 7

Tienda de ropa en Microsoft Access completa

Estructura  5 tablas.

ESTRUCTURA

1. Proveedores

CampoTipo de dato en Access
idProveedorNumérico (Entero largo, Clave primaria)
NombreProveedorTexto corto (50)
DireccionTexto largo
TelefonoTexto corto (15)
EmailTexto corto (50)
CiudadTexto corto (50)
PaisTexto corto (30)

2. Clientes

CampoTipo de dato en Access
idClienteNumérico (Entero largo, Clave primaria)
NombreClienteTexto corto (30)
ApellidoClienteTexto corto (30)
DireccionTexto largo
TelefonoTexto corto (15)
EmailTexto corto (50)
FechaRegistroFecha/Hora

3. Vendedores

CampoTipo de dato en Access
idVendedorNumérico (Entero largo, Clave primaria)
NombreVendedorTexto corto (30)
ApellidoVendedorTexto corto (30)
TelefonoTexto corto (15)
EmailTexto corto (50)
FechaContratacionFecha/Hora

4. Categorías de productos

CampoTipo de dato en Access
idCategoriaNumérico (Entero largo, Clave primaria)
NombreCategoriaTexto corto (30)
DescripcionTexto largo

5. Productos

CampoTipo de dato en Access
idProductoNumérico (Entero largo, Clave primaria)
NombreProductoTexto corto (50)
CategoriaTexto corto (30) (o Numérico si lo relacionas con idCategoria)
TallaTexto corto (5)
ColorTexto corto (20)
PrecioMoneda
StockNumérico (Entero)
idProveedorNumérico (Entero largo)

6. Ventas

CampoTipo de dato en Access
idVentaNumérico (Entero largo, Clave primaria)
FechaVentaFecha/Hora
idClienteNumérico (Entero largo)
idVendedorNumérico (Entero largo)
TotalVentaMoneda

7. DetallesVenta

CampoTipo de dato en Access
idDetalleNumérico (Entero largo, Clave primaria)
idVentaNumérico (Entero largo)
idProductoNumérico (Entero largo)
CantidadNumérico (Entero)
PrecioUnitarioMoneda
SubtotalMoneda

3. Relaciones

  • Proveedores → Productos (1 a muchos)

  • Clientes → Ventas (1 a muchos)

  • Vendedores → Ventas (1 a muchos)

  • Ventas → DetallesVenta (1 a muchos)

  • Productos → DetallesVenta (1 a muchos)

  • CategoríasProductos → Productos (1 a muchos)

    Diagrama de Relaciones (Tienda de Ropa)

  • Proveedores (idProveedor) → Productos (idProveedor)
    Un proveedor puede suministrar muchos productos.

  • CategoriasProductos (idCategoria) → Productos (Categoria/idCategoria)
    Cada producto pertenece a una categoría.

  • Clientes (idCliente) → Ventas (idCliente)
    Un cliente puede realizar muchas ventas.

  • Vendedores (idVendedor) → Ventas (idVendedor)
    Un vendedor puede gestionar muchas ventas.

  • Ventas (idVenta) → DetallesVenta (idVenta)
    Cada venta puede incluir varios productos.

  • Productos (idProducto) → DetallesVenta (idProducto)
    Un producto puede aparecer en muchos detalles de venta.

  •  Notas importantes:

    • Las claves primarias deben ser Entero largo con incremento automático (Autonumérico) si quieres que Access las genere solo.

    • Los campos relacionados (claves foráneas) deben tener el mismo tipo de dato que su clave primaria correspondiente.

    • Para texto, “Texto corto” es suficiente; “Texto largo” solo para direcciones o descripciones.





    SEGUNDA PARTE DE LA BASE DE DATOS

    1. Consultas (Queries)

    Permiten analizar los datos y automatizar cálculos sin modificar las tablas.

    • Productos más vendidos → sumar la cantidad vendida por producto.

    • Ventas por cliente → total comprado por cliente en un período.

    • Stock bajo → productos con inventario menor a un mínimo.

    • Ventas por vendedor → rendimiento de cada vendedor.

    • Ingresos mensuales → sumar TotalVenta por mes.


    2. Formularios (Forms)

    Para facilitar la captura de datos y la navegación.

    • Formulario de clientes → agregar, editar o eliminar clientes.

    • Formulario de ventas → registrar una venta con selección de productos y cantidades.

    • Formulario de productos → actualizar stock, precios, tallas.

    • Formulario de proveedores → registrar nueva información de proveedores.

    Se pueden hacer formularios con subformularios, por ejemplo, un formulario de ventas con subformulario para DetallesVenta.


    3. Informes (Reports)

    Para presentar los datos de manera profesional.

    • Informe de ventas diarias/mensuales/anuales

    • Informe de inventario → productos con su stock actual.

    • Informe de clientes frecuentes → clientes que más compran.

    • Informe de proveedores y productos suministrados


    4. Macros o botones

    • Botones en formularios para guardar, eliminar o imprimir registros.

    • Macros automáticas para actualizar el stock después de registrar ventas.


    5. Validaciones y reglas

    • Limitar que cantidad vendida no supere el stock disponible.

    • Validar formatos de correo electrónico o teléfono.

    • Campos obligatorios para no dejar registros incompletos.


    6. Tablas adicionales opcionales

    • Devoluciones → registrar productos regresados por clientes.

    • Promociones o descuentos → gestionar campañas de descuento por producto o categoría.

    • Métodos de pago → efectivo, tarjeta, transferencia.

    • Gastos de la tienda → para un control financiero más completo.



















                                      

viernes, 1 de junio de 2018

ACCESS: Práctica 5 A

1.- Crear un formulario en Opción Automática, Ligado a una Tabla.
2.- Cambiar a Vista Diseño, desactivar la opción propiedades del formulario  -opción formato, SELECTORES de REGISTRO y BOTONES DE NAVEGACIÓN, Activar (no) e Insertar Los Botones Correspondientes
3.-Crear los Botones Paso a paso
a) Insertar Botón, Cancelar el asistente, propiedades del botón, opción TODAS, poner Nombre cmd_nuevo, Poner Título Nuevo, Opción Eventos, Selleccionar AL HACER CLIC,  procedimiento, ingresar o clikear en los puntos ... y agregar el código correspondiente a cada botón.
b) Se crea una macro en la opción Menú Insertar módulo. más adelante indicare el códigpo para la macro

 CÓDIGO PARA BOTONES
Option Compare Database

Private Sub cmd_Anterior_Click()
Me.Recordset.MovePrevious
    If Me.Recordset.BOF Then
        Me.Recordset.MoveNext
        MsgBox "Ya Estas en el Primer Registro"
    End If
End Sub

Private Sub cmd_Final_Click()
Me.Recordset.MoveLast
End Sub

Private Sub cmd_Guardar_Click()
DoCmd.RunCommand acCmdSaveRecord
    Call HabilitarBotones
    Me.cmd_Guardar.Enabled = False
End Sub

Private Sub cmd_inicio_Click()
Me.Recordset.MoveFirst
End Sub

Private Sub cmd_Nuevo_Click()
DoCmd.GoToRecord , , acNewRec
    Call DeshabilitarBotones
    Me.cmd_Guardar.Enabled = False
    Me.Cod.SetFocus
End Sub

Private Sub cmd_Siguiente_Click()
Me.Recordset.MoveNext
    If Me.Recordset.EOF Then
        Me.Recordset.MovePrevious
        MsgBox "Ya Estas en el Último Registro"
    End If
End Sub

Private Sub Form_Load()
Me.cmd_Guardar.Enabled = False
End Sub

CÓDIGO PARA MACRO
Option Compare Database

Sub DeshabilitarBotones()
With Form_Agregar_Productos
    .cmd_inicio.Enabled = False
    .cmd_Siguiente.Enabled = False
    .cmd_Anterior.Enabled = False
    .cmd_Final.Enabled = False
    .cmd_Nuevo.Enabled = False
    .cmd_Guardar.Enabled = False
End With
End Sub
Sub HabilitarBotones()
With Form_Agregar_Productos
    .cmd_inicio.Enabled = True
    .cmd_Siguiente.Enabled = True
    .cmd_Anterior.Enabled = True
    .cmd_Final.Enabled = True
    .cmd_Nuevo.Enabled = True
    .cmd_Guardar.Enabled = True
End With
End Sub