31-12-2020, 09:34 AM
Buenos días Pepe, si claro, antes que nada HAZ UNA COPIA DE SEGURIDAD por si te equivocas en algún script:
Para cambiar el iva de toda una categoría:
update complementog set avgiva = NUEVOIVA where id_tipo_comg = "IDCATEGORIA";
Donde NUEVOIVA es el % del iva a aplicar y IDCATEGORIA es el ID de la categoría (hay que ponerlo entre comillas)
Una vez cambiado el iva tienes que decidir si quires mantener el mismo precio final que tenías antes o quieres subirlo
Si quieres mantener el precio:
UPDATE complementog SET precio = pvp / (1 + (avgiva / 100));
Si quieres subir el precio:
UPDATE complementog SET pvp = precio * (1 + (avgiva / 100));
En cuanto al stock, si, también te puedo ayudar en esto, tienes que ejecutar estos scripts uno a uno (lógicamente antes habrémos hecho copia de seguridad jeje):
create table temporal select id_complementog,sum(cantidad) as stock from almacen_complementg group by 1;
update almacen_complemeng set cantidad = 0 where id_complementog in (select id_complementog from temporal where stock < 0);
drop table temporal;
Con esto lo deberías tener.
Para cambiar el iva de toda una categoría:
update complementog set avgiva = NUEVOIVA where id_tipo_comg = "IDCATEGORIA";
Donde NUEVOIVA es el % del iva a aplicar y IDCATEGORIA es el ID de la categoría (hay que ponerlo entre comillas)
Una vez cambiado el iva tienes que decidir si quires mantener el mismo precio final que tenías antes o quieres subirlo
Si quieres mantener el precio:
UPDATE complementog SET precio = pvp / (1 + (avgiva / 100));
Si quieres subir el precio:
UPDATE complementog SET pvp = precio * (1 + (avgiva / 100));
En cuanto al stock, si, también te puedo ayudar en esto, tienes que ejecutar estos scripts uno a uno (lógicamente antes habrémos hecho copia de seguridad jeje):
create table temporal select id_complementog,sum(cantidad) as stock from almacen_complementg group by 1;
update almacen_complemeng set cantidad = 0 where id_complementog in (select id_complementog from temporal where stock < 0);
drop table temporal;
Con esto lo deberías tener.