Задача
Поставщик отдает в XML несколько складов внутри одного offer: warehouse/stock для северного и южного склада. Для импорта нужен один общий stock_total.
Короткий ответ
Откройте настройки значения stock_total и добавьте правило суммы значений по пути {/catalog/offers/offer/warehouse/stock}. Eofferix сложит все stock внутри текущего товара.
Как сделать в Eofferix
В XML-снапшоте выберите значение
stock_totalвнутри повторяющегосяoffer.Откройте настройки значения.

Анимация показывает выбор поля, куда записывается общий остаток. Добавьте правило: условие
Любое значение, действиеСумма значений, источник{/catalog/offers/offer/warehouse/stock}.
Правило суммирует складские остатки текущего товара.
Было / стало
Было
исходные данные<catalog>
<offers>
<offer id="2001">
<sku>SKU-2001</sku><name>Лампа Ладога</name>
<warehouse code="north"><stock>4</stock></warehouse>
<warehouse code="south"><stock>8</stock></warehouse>
<stock_total>0</stock_total>
</offer>
<offer id="2002">
<sku>SKU-2002</sku><name>Кресло Волга</name>
<warehouse code="north"><stock>0</stock></warehouse>
<warehouse code="south"><stock>3</stock></warehouse>
<stock_total>0</stock_total>
</offer>
</offers>
</catalog>Стало
результат<catalog>
<offers>
<offer id="2001">
<sku>SKU-2001</sku><name>Лампа Ладога</name>
<warehouse code="north"><stock>4</stock></warehouse>
<warehouse code="south"><stock>8</stock></warehouse>
<stock_total>12</stock_total>
</offer>
<offer id="2002">
<sku>SKU-2002</sku><name>Кресло Волга</name>
<warehouse code="north"><stock>0</stock></warehouse>
<warehouse code="south"><stock>3</stock></warehouse>
<stock_total>3</stock_total>
</offer>
</offers>
</catalog>Что важно помнить
- Суммирование должно выполняться внутри текущего
offer, а не по всему XML-файлу. - Если у поставщика часть складов нужно исключить, сначала добавьте условия по коду склада.
- Оставьте стартовое значение
stock_totalтехническим, например0, чтобы поле было явно выбрано в снапшоте.