Algunos registros de producto del XML de origen no tienen código de proveedor y otros contienen un código de barras que no tiene exactamente 13 dígitos. El resultado debe conservar solo los registros que cumplan ambos requisitos.
Busque el nodo repetido que representa un producto y abra su configuración. Aplique las condiciones al elemento completo, exija que su campo de código de proveedor no esté vacío y compruebe su campo de código de barras con ^\d{13}$.
Cómo hacerlo en Eofferix
En la instantánea XML, busque el nodo repetido que representa un producto. En el XML de ejemplo se llama
product.
En el ejemplo se selecciona product. En su XML, seleccione el nodo repetido de un registro aunque se llame offer, item, position o de otra manera. Relacione los nodos del ejemplo con los nodos o atributos correspondientes de su XML. No es necesario cambiar los nombres de los nodos del XML de origen.
Los nombres de este artículo son solo ejemplos.product,supplierCodeygtinno son nombres obligatorios de Eofferix. Utilice las rutas reales de su XML.En este artículo En su XML productEl elemento repetido de un registro, por ejemplo offer,item,positionu otro nombre.supplierCodeSu campo de código de proveedor, por ejemplo vendorCode,sku,articleo el atributo correspondiente.gtinSu campo de código de barras, por ejemplo barcode,ean,gtino el atributo correspondiente.Abra la configuración del nodo repetido, despliegue Condiciones de exportación y seleccione Para el elemento completo. Añada dos condiciones:
- su campo de código de proveedor — Antes de transformaciones → no vacío;
- su campo de código de barras — Antes de transformaciones → expresión regular →
^\d{13}$.

El marco rojo abarca toda la configuración: supplierCode, gtin y Para el elemento completo. Estos nombres solo pertenecen al XML de ejemplo. Compruebe varios registros con Otros valores o la vista previa. Las condiciones se combinan: si falla una de ellas, se excluye todo el elemento repetido.
Pulse Guardar en la configuración del nodo, guarde la plantilla y continúe con la transformación. Después de ejecutarla, revise el XML final y no solo la instantánea.
Qué comprueba la expresión regular
^\d{13}$ significa que el valor completo, de principio a fin, debe contener exactamente 13 dígitos.
- Coincide:
4006381333931. - No coincide:
bad-code,12345678ni400-638-1333931. - En la configuración mostrada, ambas condiciones se ejecutan Antes de transformaciones y comprueban los valores de origen. Si cambia el momento de la comprobación, vuelva a verificar el resultado en la vista previa.
Antes / después
Los nombres product, supplierCode y gtin se usan solo en esta demostración. El resultado conserva el único registro que supera ambas comprobaciones.
Antes
datos de origen<catalog>
<products>
<product id="1001">
<supplierCode>VN-1001</supplierCode>
<gtin>4006381333931</gtin>
<name>Lámpara Alba</name>
<price>24.90</price>
</product>
<product id="1002">
<supplierCode></supplierCode>
<gtin>4601234567893</gtin>
<name>Sillón Costa</name>
<price>139.00</price>
</product>
<product id="1003">
<supplierCode>VN-1003</supplierCode>
<gtin>bad-code</gtin>
<name>Estante Norte</name>
<price>16.40</price>
</product>
</products>
</catalog>Después
resultado<catalog>
<products>
<product id="1001">
<supplierCode>VN-1001</supplierCode>
<gtin>4006381333931</gtin>
<name>Lámpara Alba</name>
<price>24.90</price>
</product>
</products>
</catalog>