CRM: вывести код артикула в счет Есть решение
В CRM в печатной форме счета нужно в отдельную колонку вывести код артикула товара (если таковой имеется). Судя по шпаргалке, отдельной переменной для этого не предусмотрено. Но в массиве из которого выводятся позиции в счете есть [product_id]. При помощи него можно вытащить данные по коду артикула. Как мне правильно это сделать?

10 ответов
Внутри цикла
добавьте
Спасибо, получилось!
Подскажите еще пожалуйста. Нужно у этого артикула удалить лишние символы, оставив только буквы "У", "Т" и цифры. Грубо говоря из артикула "УТ000003247Д" надо сделать "УТ000003247". Пытаюсь сделать через так: {$product.skus[$sku_id].sku|regex_replace:"/[^УТ0123456789]/":""}
но в конце добавляется какой-то спецсимвол со знаком вопроса. Что-то я походу делаю не так...
Модификатор U (либо сразу iuxs, но кмк это уже перебор, хотя в примере так).
Удаляем последний символ, если он не число.
на выходе вот такое
Спасибо!
Не буду отдельно создавать тему, в догонку к предыдущему. Подскажите еще пожалуйста, как в в переменной названия товара правильно удалить название артикула (все что идет в круглых скобках).
...включая скобки удалить
На вход подаем строку (в примере ставим даже две пары скобок)
Применяем
На выходе получаем
Если же не прибегать к косметике через регулярные выражения, то следует уже сразу в коде взять $product.name, а не $_item.name, которая есс-но идет в связке с названием артикула как это принято во всяких $items.
Тем более код Михаила уже доставляет вам нужный ID товара, вынимая его из строки вида wa_app:product_id:sku_id и организует возможность заглянуть в массив $product, поэтому просто берите имя в лоб.
Как поведет себя состав счета при переименовании товара в магазине в таком случае вы уже сами посмотрите т.к. это живое имя, влияющее напрямую на состав счетов даже уже выставленных, а не замороженный на момент создания и по сути неизменный слепок в виде $item.name. Если вам это подойдет, то ок.
Спасибо! Это прям гениальное решение! )