Post by lineados » Sat Apr 19, 2014 12:11 am

Necesitaría saber de que forma se pueden subir productos de forma practica, me lleva mucho tiempo cargarlos por el panel de administración y sospecho que puede haber una forma mas ágil, también en el caso de actualizar precios, como hacer para no tener que modificarlos uno a uno si quizás tengo que subir por ejemplo un 20% a todos, lei algo de modulos para esto, pero tampoco se como cargarlos, bueno si alguien me puede ayudar, agradecido, Saludos

New member

Posts

Joined
Sat Jan 25, 2014 9:56 pm

Post by e-slap » Sat Apr 19, 2014 6:29 am

Hola lineados,

perdona mi atrevimiento, pero quiero decirte que el solo hecho de cargar productos lleva muuuuuuucho tiempo, lo hagas por medio del administrador de la tienda, lo hagas por medio de hojas de calculo, todo va a dar a lo mismo, tienes que hacerlo de forma manual.

Tendras que colocar el título, descripción, etiquetas meta, palabras claves, categorias y imagenes, entre otros puntos de interes que están relacionados a la hora de cargar un producto.

Si quieres ser competitivo, así sea para ti mismo, vas a tener que respetar basicamente todos los pasos que envuelven crear un nuevo producto.

PD: Hace 4 meses estoy creando una tienda, solo tienes que poner manos a la obra.

Diviertete Trabajando!

User avatar
Active Member

Posts

Joined
Fri Jul 22, 2011 12:22 am
Location - Portugal - Argentina

Post by lineados » Mon Apr 21, 2014 11:39 pm

E-slap,
en hoja de cálculos, sospecho que la actualización de precios tiene que ser mucho mas ágil, estamos de acuerdo que la carga inicial de la tienda llevara tiempo, yo hablaba mas que nada una vez cargada para las actualizaciones y concretamente el cambio de precios. Te pongo un ejemplo en el tema imágenes de productos encontré la forma de subirlas en una carpeta del ftp y me ayudo a ganar mucho tiempo, evitando un paso en el panel de admin, Igualmente gracias por tu recomendación

New member

Posts

Joined
Sat Jan 25, 2014 9:56 pm

Post by Pitagoras999 » Sun Apr 27, 2014 12:18 am

Hola, respondiendo a la pregunta inicial, lamentablemente no hay un modo de carga batch (por lotes) en el cual puedas dar de alta nuevos productos, como bien menciona el compañero e-slap. Es un proceso manual del que no tienes escape fácilmente.

En cambio, realizar modificaciones a los productos, dependiendo de tus conocimientos en MySQL, puede ser un proceso rapidísimo y hasta trivial.

En mi caso, yo trabajo la mayor parte del tiempo con bases de datos de MySql, por lo que para mi es algo relativamente fácil el subir medio millón de artículos a la base de datos de mi tienda, y tardo alrededor de 5 minutos en total. El trabajo de clasificar, capturar, modificar y adaptar la información a subir la realiza el personal del área de compras de mi empresa, y ellos me entregan todo en hojas de excel listo para que yo lo procese y lo suba a la tienda. Pero por el momento, no pienso ayudarte con eso, puesto que necesitas buenas bases de SQL para poder realizarlo con relativa facilidad.

Sin embargo, si puedo ayudarte con el cambio de precios (y por extensión con otros cambios a los datos ya existentes).

Por ejemplo, suponiendo que quieres aumentar el 20% a todos tus artículos (es lo mismo que multiplicar su precio actual por 1.20), todo lo que tendrías que hacer sería conectarte a la base de MySQL que corresponde a tu tienda con el analizador de consultas de MySql (conocido como MySql Workbench), y ejecutar la consulta:
update product set price = price * 1.20;
y listo!!! menos de 1 segundo de ejecución para todos tus productos!!!

Toma en cuenta que mi base de datos no lleva prefijos de tablas, así que tengo los nombres directos. Posiblemente si instalaste todo por default en tu instalación de OpenCart y MySql, tu tabla de productos se llame "oc_products".

¿Quieres hacerlo solo para algunos artículos? En ese caso, hay que agregar una cláusula "where" para filtrar solo aquellos productos que necesites cambiar.

Si tienes una lista en excel donde tengas por ejemplo, el número de id del producto en la tabla, el código de tu producto con el mismo nombre que en la tabla, y el nuevo precio ya calculado (por decir algo, precio de compra + gastos de importación + porcentaje de utilidad + porcentaje de seguridad + etc....), podrías usar una fórmula de concatenar en el mismo excel para construir cada consulta de actualización, copiarla a cada renglón que vas a actualizar, y el texto resultante copiarlo a tu analizador de consultas de MySql para ejecutar todas las consultas de una sola vez.

Usando los datos de ejemplo del OpenCart, copia y pega en un excel los siguientes renglones (toma en cuenta que es posible que tengas que modificar la fórmula de CONCATENAR para cambiar el nombre de la tabla "products" por "oc_products", dependiendo de como esté configurada tu base de datos de OpenCart en MySql):

product_id model price Fórmula
28 Product 1 120 =CONCATENAR("update products set price=",C2," where product_id=",A2,";")
29 Product 2 299.99 =CONCATENAR("update products set price=",C3," where product_id=",A3,";")
30 Product 3 120 =CONCATENAR("update products set price=",C4," where product_id=",A4,";")
31 Product 4 88 =CONCATENAR("update products set price=",C5," where product_id=",A5,";")
32 Product 5 120 =CONCATENAR("update products set price=",C6," where product_id=",A6,";")
33 Product 6 240 =CONCATENAR("update products set price=",C7," where product_id=",A7,";")
34 Product 7 120 =CONCATENAR("update products set price=",C8," where product_id=",A8,";")
35 Product 8 120 =CONCATENAR("update products set price=",C9," where product_id=",A9,";")
36 Product 9 120 =CONCATENAR("update products set price=",C10," where product_id=",A10,";")
40 product 11 121 =CONCATENAR("update products set price=",C11," where product_id=",A11,";")
41 Product 14 120 =CONCATENAR("update products set price=",C12," where product_id=",A12,";")
42 Product 15 120 =CONCATENAR("update products set price=",C13," where product_id=",A13,";")
43 Product 16 600 =CONCATENAR("update products set price=",C14," where product_id=",A14,";")
44 Product 17 1200 =CONCATENAR("update products set price=",C15," where product_id=",A15,";")
45 Product 18 2400 =CONCATENAR("update products set price=",C16," where product_id=",A16,";")
46 Product 19 1200 =CONCATENAR("update products set price=",C17," where product_id=",A17,";")
47 Product 21 120 =CONCATENAR("update products set price=",C18," where product_id=",A18,";")
48 product 20 120 =CONCATENAR("update products set price=",C19," where product_id=",A19,";")
49 SAM1 219.99 =CONCATENAR("update products set price=",C20," where product_id=",A20,";")


Ya que lo hayas pegado en excel, verás que la columna de "Fórmula" contiene las consultas necesarias para hacer la actualización directamente en la base de datos de MySql. Todo lo que habría que hacer es copiar el contenido de la columna "Fórmula" al analizador de consultas de MySql y ejecutarla, y listo... el cambio de precios de esos productos queda resuelto en un tris!!!!

Te preguntarás por qué no usé el código del producto (model) en lugar del identificador del producto (product_id). Esto se debe a que el identificador del producto es un valor único que al mismo tiempo identifica para MySql el número de renglón dentro de la tabla de productos, lo que lo hace identificable con mayor velocidad y precisión que usando el texto del modelo.

Si no has usado nunca un sistema de gestión de bases de datos, te recomiendo que busques algún tutorial de SQL y realices algunas prácticas ANTES de intentar el ejemplo que te doy aquí. O si te vas a aventar bajo la premisa de que "echando a perder, SE APRENDE!!!", primero haz un respaldo de toda tu tienda y tu base de datos, y luego echa a perder pero en un ambiente de pruebas.... No hagas, por favor, el cambio de nada en la base de datos de tu tienda hasta que hayas comprendido como funciona la consulta y hayas hecho al menos alguna prueba en una base de datos de pruebas.

Finalmente, te comento que hay otra forma para hacer el cambio de precios directamente desde el mismo excel, pero eso ya requiere de que puedas usar muy bien el Microsoft Query, que va incluido en todas las distribuciones de Office.

Suerte con tus pruebas!!! 8)

Newbie

Posts

Joined
Sat Apr 26, 2014 11:17 pm
Location - México City, México

Post by lineados » Mon Apr 28, 2014 10:54 pm

Muchas Gracias Pitagoras999 por la respuesta tan completa !!!! , intentare hacer las pruebas, gracias nuevamente !! ;)

New member

Posts

Joined
Sat Jan 25, 2014 9:56 pm
Who is online

Users browsing this forum: No registered users and 1 guest