113 Actualizar PRODUCTOS BORRADOS en la TABLA en el SISTEMA DE VENTAS (PHP y MySql) FullStack

Duración: 11 min
Módulo: 🧾 Cierre de Venta y Control de Inventario Lección 10 de 14

¡Contenido Exclusivo!

Adquiere este curso para tener acceso inmediato a esta y a **todas las lecciones Premium**.

Inscribirse Ahora por $10.00 Acceso instantáneo de por vida y código fuente incluido.

Descripción

Lección 113: Actualizar Productos Borrados en la Tabla de Inventario 🔄

Esta lección se centró en la implementación de la lógica crítica para revertir el stock de los productos antes de eliminar por completo un registro de venta, asegurando que el inventario se mantenga preciso.

1. Implementación de la Función actualizar_stock 💾

El objetivo principal fue crear el mecanismo para sumar la cantidad vendida de nuevo al stock actual, ya que es el paso más importante dentro de la transacción de borrado:

  • Mecanismo de Recorrido: Se utilizó una función llamada actualizar_stock dentro del script de delete.php. Esta función emplea un ciclo for (basado en el contador de productos del carrito) para iterar sobre cada artículo vendido en la transacción [00:26], [08:12].
  • Variables Necesarias: Para cada iteración, el sistema debe ser capaz de obtener:
    1. El ID del producto (para saber qué stock actualizar).
    2. La cantidad vendida (cantidad_carrito) (para saber cuánto sumar).
    3. El stock actual (stock_inventario) del producto en el almacén.

2. Corrección de la Lógica de Suma y Tipo de Datos ➕

Durante la prueba de la función, se identificaron y corrigieron dos problemas clave:

  • Suma Revertida: Se confirmó que, para revertir la venta, la operación debe ser una suma (+) entre el stock actual y la cantidad vendida, no una resta [09:05].

    Stock Calculado=Stock Actual+Cantidad Vendida

  • Error de Concatenación: Al intentar sumar el stock actual (ej. 96) con la cantidad vendida (ej. 2), el resultado era incorrecto (ej. "962") en lugar del valor numérico (98). Esto ocurrió porque jQuery/JavaScript trataba los valores recuperados como cadenas de texto (strings) y los concatenaba en lugar de sumarlos [09:30].
  • Solución: Se implementó el uso de funciones de conversión de tipo (como parseInt o parseFloat/parceFloor) para convertir explícitamente las variables (stock_inventario y cantidad_carrito) a números antes de realizar la suma, garantizando un cálculo correcto [09:48].

3. Siguientes Pasos ➡️

La lección concluyó con la lógica del stock calculado correctamente. La siguiente lección se enfocará en:

  1. Completar la consulta de UPDATE para guardar el Stock Calculado en la tabla de inventario.
  2. Implementar las consultas de DELETE para eliminar los registros de la tabla de carrito/detalle y la tabla tb_ventas dentro de la transacción de seguridad.