Demetriodm Posted March 3, 2021 Share Posted March 3, 2021 Hola, estoy queriendo hacer una actualización de precios masiva en determinados productos. Por lo que he investigado hay que hacer una consulta sql, ya que la exportación directa que se hace desde el catalogo solo coge la información que aparece en pantalla. Ya que no tengo idea de hacer estas consultas os quería pedir ayudar para ver como se hace la consulta para que me exporte los productos con una determinada característica y que exporte tanto el precio como el precio unitario para poder hacer la actualización masiva de los precios. p.d utilizo prestashop 1.7.6.4 Gracias de antemano. Un saludo. Link to comment Share on other sites More sharing options...
HackID1 Posted March 3, 2021 Share Posted March 3, 2021 Buenas tardes, para lo que pides tendrás que realizar una query que contemple la tabla de producto extraer su precio, precio unitario y indicar en el WHERE la característica que deseas. Luego hacer Join entre tablas. SELECT p.id_product, p.price FROM ps_product p joins WHERE condicion /* El precio es sin IVA */ Aquí tienes la relación: prestashop tabla Luego revisa la relación entre las tablas de Características ps_feature ps_feature_lang ps_feature_value ps_feature_value_lang ps_feature_product Sería buscar la característica y realizar el filtro, luego creas un UPDATE y actualizas los precios y listo Saludos! Link to comment Share on other sites More sharing options...
Demetriodm Posted March 3, 2021 Author Share Posted March 3, 2021 30 minutes ago, HackID1 said: Buenas tardes, para lo que pides tendrás que realizar una query que contemple la tabla de producto extraer su precio, precio unitario y indicar en el WHERE la característica que deseas. Luego hacer Join entre tablas. SELECT p.id_product, p.price FROM ps_product p joins WHERE condicion /* El precio es sin IVA */ Aquí tienes la relación: prestashop tabla Luego revisa la relación entre las tablas de Características ps_feature ps_feature_lang ps_feature_value ps_feature_value_lang ps_feature_product Sería buscar la característica y realizar el filtro, luego creas un UPDATE y actualizas los precios y listo Saludos! Uff...me suena todo a chino jajaja no se si sería mucho pedir que escribieras la consulta... Sería exportar Precio (imp. excl.) y Precio unitario (Impuestos excl.) Y la condición es: Características > Material > Polipropileno Claro, yo puedo entender una terminada, y luego adaptar los nombres a mis tablas o lo que sea, ya que se que los prefijos pueden cambiar y cosas así; pero me hablas de revisar la relación entre tablas, realizar el filtro, etc...y ya escapa a mi entendimiento. Muchas gracias por tu pronta respuesta. Link to comment Share on other sites More sharing options...
lumondes Posted March 6, 2021 Share Posted March 6, 2021 (edited) Hola Demetriodm, prueba esta consulta: select p.`id_product` as `ID`, p.`reference` as `Referencia`, p.`price` as `Precio neto (imp. excl)`,round((p.`price`/p.`unit_price_ratio`),6) as `Precio_unitario (imp. excl)` from `ps_product` p left join `ps_feature_product` fp ON fp.`id_product` = p.`id_product` where fp.`id_feature` = 5 and fp.`id_feature_value` = 3 Te debe devolver el id del producto, su referencia, el precio de venta sin impuestos y el precio unitario sin impuestos ( normalmente de productos que son pack). El número del id_feature tiene que ser el que corresponda en el back al número que tiene la característica "material" a su izquierda y el id_feature_value corresponde al número a la izquierda del material "polipropileno". Ya nos cuentas que tal.... Sólo para ver datos, para actualizar es otra historia... Saludos Edited March 6, 2021 by lumondes (see edit history) Link to comment Share on other sites More sharing options...
Demetriodm Posted March 10, 2021 Author Share Posted March 10, 2021 On 3/6/2021 at 7:26 PM, lumondes said: Hola Demetriodm, prueba esta consulta: select p.`id_product` as `ID`, p.`reference` as `Referencia`, p.`price` as `Precio neto (imp. excl)`,round((p.`price`/p.`unit_price_ratio`),6) as `Precio_unitario (imp. excl)` from `ps_product` p left join `ps_feature_product` fp ON fp.`id_product` = p.`id_product` where fp.`id_feature` = 5 and fp.`id_feature_value` = 3 Te debe devolver el id del producto, su referencia, el precio de venta sin impuestos y el precio unitario sin impuestos ( normalmente de productos que son pack). El número del id_feature tiene que ser el que corresponda en el back al número que tiene la característica "material" a su izquierda y el id_feature_value corresponde al número a la izquierda del material "polipropileno". Ya nos cuentas que tal.... Sólo para ver datos, para actualizar es otra historia... Saludos Perfecto! muchísimas gracias! Con esto me sirve para entender un poco más el funcionamiento y poder adaptar la consulta por si me hace falta hacer otras. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now