Каталоги поставщиков

Как вытащить штрихкод из ЗначенияРеквизитов в CommerceML

2026-06-29
Задача

В CommerceML штрихкод лежит не отдельным тегом, а в ЗначенияРеквизитов рядом с другими реквизитами. Нужно получить только штрихкод.

Короткий ответ

Откройте Значение внутри ЗначениеРеквизита и добавьте условие по Наименование: регулярное выражение ^Штрихкод$ (находит значение, которое целиком равно Штрихкод).

Как сделать в Eofferix

  1. В XML/YML-снапшоте выберите значение Значение.

  2. Откройте настройки значения.

    Открытие настроек значения
    Анимация показывает открытие настроек конкретного значения.
  3. Способ 1: по соседнему Наименование поставьте Равно Штрихкод.

    Условие значения
    Это один из вариантов настройки условия; остальные варианты добавлять не нужно.
  4. Способ 2: если 1С пишет Штрихкод EAN, используйте Наименование Содержит подстроку Штрихкод.

    Условие значения
    Это один из вариантов настройки условия; остальные варианты добавлять не нужно.
  5. Способ 3: регулярное выражение ^Штрихкод$ (находит значение, которое целиком равно Штрихкод) оставьте как строгий вариант.

    Условие значения
    Это один из вариантов настройки условия; остальные варианты добавлять не нужно.

Было / стало

Было

исходные данные
<КоммерческаяИнформация ВерсияСхемы="2.10">
  <Каталог>
    <Товары>
      <Товар>
        <Ид>SKU-19001</Ид>
        <Наименование>Лампа Ладога</Наименование>
        <ЗначенияРеквизитов>
          <ЗначениеРеквизита>
            <Наименование>Штрихкод</Наименование>
            <Значение>4601234567890</Значение>
          </ЗначениеРеквизита>
          <ЗначениеРеквизита>
            <Наименование>Страна</Наименование>
            <Значение>Россия</Значение>
          </ЗначениеРеквизита>
        </ЗначенияРеквизитов>
      </Товар>
      <Товар>
        <Ид>SKU-19002</Ид>
        <Наименование>Кресло Волга</Наименование>
        <ЗначенияРеквизитов>
          <ЗначениеРеквизита>
            <Наименование>Штрихкод</Наименование>
            <Значение>5901234123457</Значение>
          </ЗначениеРеквизита>
          <ЗначениеРеквизита>
            <Наименование>Страна</Наименование>
            <Значение>Польша</Значение>
          </ЗначениеРеквизита>
        </ЗначенияРеквизитов>
      </Товар>
    </Товары>
  </Каталог>
</КоммерческаяИнформация>

Стало

результат
<Товары>
  <Товар>
    <Ид>SKU-19001</Ид>
    <Наименование>Лампа Ладога</Наименование>
    <Штрихкод>4601234567890</Штрихкод>
  </Товар>
  <Товар>
    <Ид>SKU-19002</Ид>
    <Наименование>Кресло Волга</Наименование>
    <Штрихкод>5901234123457</Штрихкод>
  </Товар>
</Товары>

Обрабатывайте данные быстрее с Eofferix

Создайте бесплатный аккаунт, чтобы автоматизировать каталоги и прайс-листы под ваши правила.

Зарегистрироваться