Catálogos de proveedores

Cómo extraer el color desde YML param name="Color"

2026-06-29
Tarea

Las características YML se guardan en nodos param repetidos: Color, Material y otros. La importación necesita un campo separado <Color>, y la lista de origen param no debe mezclarse en el resultado.

Respuesta corta

Primero cree un nuevo nodo <Color> dentro de offer. En su configuración, indique: Valor actual cualquiera -> reemplazar por el valor de param, pero solo si @name es igual a Color o contiene la subcadena Color. La expresión regular ^Color$ solo comprueba coincidencia exacta completa.

Cómo hacerlo en Eofferix

  1. Dentro del offer repetido, cree un nuevo nodo hijo <Color>.

  2. Abra la configuración del valor del nuevo nodo <Color>.

    Apertura de color
    La configuración se aplica al nuevo campo de salida de color.
  3. Método 1: agregue la regla Valor actual cualquiera, acción Reemplazar por valor desde param; la condición es @name Igual a Color.

    Condición Igual a para color
    La comparación exacta sirve cuando el archivo usa el nombre corto Color.
  4. Método 2: si el proveedor escribe otro nombre con Color, use @name Contiene subcadena Color.

    Condición Contiene subcadena para color
    Esta variante evita una expresión regular para nombres más largos.
  5. Método 3: deje la expresión regular ^Color$ (coincide exactamente con Color) como opción estricta.

    Condición regex para color
    Regex solo hace una comprobación exacta estricta.
  6. En los param de origen, desactive la exportación de la fila de color o de toda la lista técnica de parámetros si ya no se necesita en el resultado.

Antes / después

Antes

datos de origen
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-11001">
        <name>Lampara Alba</name>
        <param name="Color">blanco</param>
        <param name="Material">acero</param>
      </offer>
      <offer id="YML-11002">
        <name>Sillon Costa</name>
        <param name="Color">negro</param>
        <param name="Material">madera</param>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Después

resultado
<offers>
  <offer id="YML-11001">
    <name>Lampara Alba</name>
    <Color>blanco</Color>
  </offer>
  <offer id="YML-11002">
    <name>Sillon Costa</name>
    <Color>negro</Color>
  </offer>
</offers>

Procesa datos más rápido con Eofferix

Crea una cuenta gratis para automatizar catálogos y listas de precios según tus reglas.

Registrarse