12-07-2022, 05:28 PM
Oscar gracias por la rapidez en contestar,
disculpa pero discrepo de tu anterior mensaje.
Fíjate bién en el código de mi último mensaje porque lo que estoy guardando en 'precio' es el precio sin impuestos.
Código del mensaje anterior desglosado por partes:
1.- PVP a partir del precio de compra con márgen -> PVP = precio_compra*(1+(MARGEN/100)))*1.21
2.- redondear PVP --> ROUND ((precio_compra*(1+(MARGEN/100)))*1.21)/5,2)*5
3.- quitarle el iva al PVP y guardarlo como precio --> SET precio = (ROUND ((precio_compra*(1+(MARGEN/100)))*1.21)/5,2)*5)/1.21
Ejemplo práctico:
precio_compra = 60
margen = 120%
PVP = 60+120%+21% = 159,72€
PVP redondeado = 159,70€ (asumo el redondeo hacia abajo de la función ROUND en este caso)
SET precio = PVP redondeado - 21% = 131,983471
con un precio de 131,983471 sysme calcula un PVP de 159,70€ que es lo deseado
No sé qué pasa que ROUND no se ejecuta. Si lo logro, ya lo tendría!
Saludos,
disculpa pero discrepo de tu anterior mensaje.
Fíjate bién en el código de mi último mensaje porque lo que estoy guardando en 'precio' es el precio sin impuestos.
Código del mensaje anterior desglosado por partes:
1.- PVP a partir del precio de compra con márgen -> PVP = precio_compra*(1+(MARGEN/100)))*1.21
2.- redondear PVP --> ROUND ((precio_compra*(1+(MARGEN/100)))*1.21)/5,2)*5
3.- quitarle el iva al PVP y guardarlo como precio --> SET precio = (ROUND ((precio_compra*(1+(MARGEN/100)))*1.21)/5,2)*5)/1.21
Ejemplo práctico:
precio_compra = 60
margen = 120%
PVP = 60+120%+21% = 159,72€
PVP redondeado = 159,70€ (asumo el redondeo hacia abajo de la función ROUND en este caso)
SET precio = PVP redondeado - 21% = 131,983471
con un precio de 131,983471 sysme calcula un PVP de 159,70€ que es lo deseado
No sé qué pasa que ROUND no se ejecuta. Si lo logro, ya lo tendría!
Saludos,