Free Trial

Repositorio de Retos

¡Resuelve el reto, comparte tu solución y asciende en las jerarquías de nuestra Comunidad Alteryx!

Reto Semanal #185: ¡LEGO® mis Datos! (Parte II)

olacey
Alteryx Alumni (Retired)

Puedes encontrar la solución al reto de la semana pasada aquí.

 

Este reto nos llega de la mano de @Sebastian_Chaieb2. ¡Gracias por tu aporte Sebastián!

 

lego-Image.pngEste reto es una versión avanzada de nuestro reto anterior ¡LEGO® mis Datos! (#163). En esta iteración, usaremos los mismos conjuntos de datos para generar un informe; sin embargo, esta vez incorporaremos imágenes de modelos LEGO en nuestro informe.

 

A diferencia del anterior, en la aplicación que desarrollarás para este reto, incorporarás un menú desplegable que permitirá a los usuarios seleccionar una colección de LEGO. Además, un menú con una lista de años facilitará la elección de uno o varios años de lanzamiento.

 

A continuación, se detallan las tareas que debes completar para solucionar este reto:

 

Unión de los conjuntos de datos y creación de tablas:

Combina los conjuntos de datos para construir una tabla completa con las siguientes columnas:

  • Número de modelo (este es el ID del conjunto).
  • Nombre del modelo
  • Año de lanzamiento
  • Número de piezas
  • Nombre de la colección

 

Desarrollo de aplicaciones:

 

  1. Crea un menú desplegable donde el usuario pueda seleccionar un nombre de colección único:
    • Usa la columna Nombre de la colección de la tabla creada en el paso anterior.
    • Usa únicamente colecciones con 50 o más entradas de nombres de modelos.
    • Filtra nombres de colecciones que contengan puntos (.), comas (,) y barras diagonales (/).
  2. Diseña una función de cuadro de lista para que el usuario seleccione uno o varios años de lanzamiento:
    • Usa la columna Año de publicación de la tabla creada en el paso anterior.

Filtrado y Selección de Modelo:

 

Usa los datos de entrada que proporcionara el usuario de la aplicación para filtrar tu tabla y seleccionar los números de modelo correspondientes al nombre de la colección seleccionada por el usuario y los años de lanzamiento.

 

Recuperación automatizada de imágenes:

 

  1. Crea una macro por lotes para obtener imágenes de cada modelo del siguiente sitio web: https://brickset.com/search?query=31100&scope=All
  2. Modifica la dirección web utilizando esta estructura: 'https://brickset.com/search?query=' + tostring([Número de modelo]) + '&scope=All'olacey_0-1694014732564.png
  3.  Extrae el contenido de la página e implemente un filtro para identificar filas que contengan https://images.brickset.com/sets/images/ junto con el campo [Número de modelo].
  4. Extrae la ruta a la imagen (JPG) y el número de modelo (ya que a veces la página tendrá imágenes adicionales adjuntas).
  5. Usa un filtro para tomar solo el enlace de la imagen cuando [Número de modelo] = [Número de modelo extraído].
  6. Usa una segunda herramienta de descarga y descargue la imagen como un blob. (Si una imagen JPG muestra el error de que tiene un formato de blob incorrecto, utilice los parámetros de carga útil Content-Typ: application/png y Content-Disposition: adjunto).

olacey_1-1694014732566.pngolacey_2-1694014732567.png

 

Salida final y visualización del PDF:

El resultado final debe mostrarse al final de la aplicación como un archivo PDF.

 

 

Fuente de Datos: 

https://www.kaggle.com/datasets/rtatman/lego-database?resource=download

https://brickset.com/search/

 

 

Omaira Lacey
Instructional Designer