Aldeag Posted May 16, 2021 Share Posted May 16, 2021 Hola: Tengo Prestashop 1.7.7.0 Creé un conjunto de valores para determinado atributo que he llamado "COLOR de producto X" el cual tiene 101 variables o valores Son valores de color DARK GREY, GRAPHITE BLACK, FUCHSIA MULTICOLOR...etc así hasta 101 El caso es que quiero usar el módulo de Facebook-Prestashop, y me da mensaje de error pues está escrito todo en mayúscula. Los colores se han importado así en mayúscula desde el proveedor. Quizá debiera exportar a csv esos valores, modificar en Excel mediante sus fórmulas a que me aparezca así: Dark Grey, Graphite Black, Fuchsia Multicolor, pero me da miedo fastidiarlo y no sé o no encuentro como exportar y luego importar desde Atributos y Valores. O a lo peor es que ni se hace así. ¿Alguna recomendación? Gracias de antemano. Link to comment Share on other sites More sharing options...
w3bsolutions Posted May 25, 2021 Share Posted May 25, 2021 (edited) No hace falta que exportes, modifiques e importes de nuevo para ese cambio. Si lo que quieres es que TODOS los valores de tus atributos tengan la primera letra de cada palabra en mayúscula y el resto en minúsculas puedes ejecutar estas consultas directamente en la base de datos (con phpMyAdmin por ejemplo), cambiando el [prefijo] de la tabla (en la última línea) al que corresponda según tu base de datos: DROP FUNCTION IF EXISTS CAP_FIRST; DELIMITER $$ CREATE FUNCTION CAP_FIRST (input VARCHAR(255)) RETURNS VARCHAR(255) DETERMINISTIC BEGIN DECLARE len INT; DECLARE i INT; SET len = CHAR_LENGTH(input); SET input = LOWER(input); SET i = 0; WHILE (i < len) DO IF (MID(input,i,1) = ' ' OR i = 0) THEN IF (i < len) THEN SET input = CONCAT( LEFT(input,i), UPPER(MID(input,i + 1,1)), RIGHT(input,len - i - 1) ); END IF; END IF; SET i = i + 1; END WHILE; RETURN input; END$$ DELIMITER ; UPDATE [prefijo]_attribute_lang SET name = CAP_FIRST(name); Nunca está de más exportar la tabla [prefijo]_attribute_lang primero por si algo sale mal y la quieres volver a importar después (lo puedes hacer también con phpMyAdmin, pero yo lo acabo de probar en mi tienda de pruebas y ha funcionado a la perfección Edited May 25, 2021 by w3bsolutions (see edit history) Link to comment Share on other sites More sharing options...
Aldeag Posted May 29, 2021 Author Share Posted May 29, 2021 Gracias por la respuesta. ¿Se aplicaría eso solamente a los valores del tipo de atributo (Color de Marca X) o a todos los valores de todos los atributos? Al hacer algunas importaciones de combinaciones, si un color no existía, se creaba, y si existía se usaba el existente. Eso creo que era así. Pues hice una importación y ya tenía el valor BLACK. El artículo importado tenía el valor Black. Pues ahora me encuentro que tengo entre todos los valores BLACK y Black. Creía que se iba a tomar como el mismo. ¿Me explicarías como se hace exactamente esa consulta en la base de datos? Muchas gracias por el esfuerzo. Link to comment Share on other sites More sharing options...
w3bsolutions Posted May 30, 2021 Share Posted May 30, 2021 On 5/29/2021 at 8:51 PM, Aldeag said: ¿Se aplicaría eso solamente a los valores del tipo de atributo (Color de Marca X) o a todos los valores de todos los atributos? Tal cual te la he puesto, se aplicaría a todos los valores de todos los atributos. On 5/29/2021 at 8:51 PM, Aldeag said: Pues hice una importación y ya tenía el valor BLACK. El artículo importado tenía el valor Black. Pues ahora me encuentro que tengo entre todos los valores BLACK y Black. Creía que se iba a tomar como el mismo. Sí, al importar se distingue entre mayúsculas y minúsculas. On 5/29/2021 at 8:51 PM, Aldeag said: ¿Me explicarías como se hace exactamente esa consulta en la base de datos? En el panel de control de tu alojamiento deberías tener una herramienta que se llama phpMyAdmin, con eso puedes ejecutar consultas SQL en la base de datos. Link to comment Share on other sites More sharing options...
Aldeag Posted June 2, 2021 Author Share Posted June 2, 2021 Gracias por tu respuesta, que leí ahora. ¿Qué ocurriría con los artículos si importo de nuevo con combinación Black o BLACK? ¿Los artículos y sus combinaciones tendrán alguna diferencia una vez cambiados o como imagino la ID del color es la misma? ¿Hay alguna forma para que al realizar la importación de color y talla siempre importe los colores con la primera letra en mayúscula independientemente de si es con todo mayúscula o no? Muchas gracias por tu interés. Link to comment Share on other sites More sharing options...
w3bsolutions Posted June 2, 2021 Share Posted June 2, 2021 Just now, Aldeag said: ¿Qué ocurriría con los artículos si importo de nuevo con combinación Black o BLACK? Los que importes con "Black" cogerán el id de tu valor "Black" y los que importes con "BLACK" cogerán el id del valor "BLACK", siempre respetando minúsculas y minúsculas. Si ejecutas mi consulta, el valor "BLACK" se cambiará a "Black" con lo que tendrás 2 valores "Black". Si vuelves a importar productos con "BLACK" se creará de nuevo un valor así en mayúsculas. 3 minutes ago, Aldeag said: ¿Los artículos y sus combinaciones tendrán alguna diferencia una vez cambiados o como imagino la ID del color es la misma? Tras ejecutar la consulta, la ID de los valores es la misma que antes de la consulta, sólo se cambia el texto. 3 minutes ago, Aldeag said: ¿Hay alguna forma para que al realizar la importación de color y talla siempre importe los colores con la primera letra en mayúscula independientemente de si es con todo mayúscula o no? Sin cambiar el código que se encarga de la importación, no. Es más fácil hacerlo antes en Excel. 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