Як замінити текст у назвах і описах товарів

12 хв

Elbuz міняє частину тексту в одній колонці всіх потрібних товарів одним запуском: слово в назвах, домен у посиланнях, одиницю виміру в характеристиках.

Коли це знадобиться:

  • У назвах цілої категорії зайве слово — заміна на порожньо прибере його з усіх назв.
  • Одне слово написане по-різному — регулярний вираз не зважає на регістр і знайде всі варіанти.
  • Виробник записаний двома способами — заміна в колонці «Виробник» переведе товари на правильний запис довідника.
  • Замінили не те — «Повернути назад» відкотить заміну протягом доби.

З чого почати: клацніть по комірці потрібної колонки й у меню правої кнопки виберіть «Знайти та замінити».

Що вміє «Знайти та замінити»

  • Заміна підрядка в будь-якій текстовій колонці, зокрема в характеристиках.
  • Регулярний вираз — пошук за шаблоном без урахування регістру й вставка знайдених частин.
  • Колонка «Виробник» — перейменування цілком із привʼязкою до довідника.
  • Відкат кнопкою «Повернути назад» або з «Останніх дій».

Де це і хто має доступ

Меню
Довідники → Базовий каталог товарів → Товари
Інші входи
меню правої кнопки по комірці колонки, панель масових дій («Замінити»), бургер
Право доступу
вікно «Товари»; поле тільки для читання заміна не змінить
Підготувати
позначені товари або обрана категорія — область заміни

Як замінити частину тексту в колонці

Операція міняє частину значення, а не все поле: знаходить у колонці підрядок і підставляє замість нього інший. Колонка береться так само — та, по якій ви клацнули; її назву діалог показує в заголовку.

Без позначених рядків заміна йде по всій вибраній категорії з підкатегоріями, а в корені дерева — по всьому каталогу. Як діалог від цього захищає — у розділі «Знайти та замінити» без позначок.

Типові приклади: прибрати з назв зайве слово (замінити його на порожньо), поправити назву виробника в описах, замінити старий домен у посиланнях, підчистити одиниці виміру в характеристиках.

«Знайти та замінити» в колонці «Найменування»: «Braun Silk» → «Епілятор Braun Silk» в усіх позначених товарах
Без позначених рядків при увімкненому пошуку чи фільтрі діалог не відкривається. Далі три перевірки до запису: порожнє «Знайти», непідтверджена область і помилка в шаблоні зупиняють заміну. Колонка «Виробник» іде окремою гілкою — перейменуванням цілком
такнітакніні, і галочку області непоставленотак, або галочкупоставленотакнітак, шаблон з помилкоютак, шаблон правильнийніВибрано пункт «Знайти тазамінити»Рядки не позначено, а в сітціувімкнено пошук або фільтр?Червоне повідомлення «У сітціувімкнено пошук або фільтр,а рядки не позначено…»діалог не відкриваєтьсяНатиснуто «Застосувати» у«Знайти та замінити»Поле «Знайти» порожнє?«Необхідно ввести значення!»діалог лишається відкритимТовари позначені?Нагадування підтвердити областьзаміни немаєКолонка «Виробник»?Товарам із точно такою назвоюставиться новий виробникякщо його немає в довіднику —створюєтьсяПрапорець «Використовуєтьсярегулярний вираз»?«Регулярний вираз записано зпомилкою —заміну не виконано»Заміна за шаблономбез урахування регіструЗаміна тексту буквальноз урахуванням регістру«Змінено N товарів» і «Повернутиназад»якщо щось змінилося
  • Дія або результат
  • Розвилка: далі шлях залежить від відповіді

Заміна в характеристиках рахується мовою інтерфейсу, у якій ви зараз працюєте. Значення тієї самої характеристики іншою мовою лишаться недоторканими — щоб поправити й їх, перемкніть мову й повторіть.

Як замінити за шаблоном

Без прапорця програма шукає введений текст буквально й з урахуванням регістру: «Кабель» і «кабель» — різні рядки. З прапорцем поле «Знайти» стає шаблоном: \d+ знаходить будь-яке число, \s+см — одиницю виміру разом із пробілами перед нею. Синтаксис той самий, що в регулярних виразах прайсу.

Пошук за шаблоном не зважає на регістр: шаблон кабель замінить і «Кабель», і «КАБЕЛЬ». Тому прапорець корисний і без службових символів — коли одне слово в назвах написане по-різному.

У полі «Замінити» можна вставити знайдені частини шаблону: \1 — те, що в перших дужках, \2 — у других. «Знайти» (\d+)x(\d+) і «Замінити» \1 × \2 перетворять «60x90» на «60 × 90».

У шаблоні крапка, дужки, плюс і зірочка — службові символи. Крапка означає будь-який символ, тому шаблон 2.5 зачепить не лише «2.5», а й «205» усередині «2050». Щоб шукати сам символ, поставте перед ним зворотну скісну риску: 2\.5.

Помилку в шаблоні — незакриту дужку, зірочку на початку — програма помічає до заміни: з'являється повідомлення «Регулярний вираз записано з помилкою — заміну не виконано», і жоден товар не змінюється.

Як обʼєднати написання виробника

Заміна в колонці «Виробник» працює не як заміна підрядка, а як перейменування цілком: програма шукає товари, у яких виробник дорівнює введеному рядку, і ставить їм нового.

  • Якщо виробника з новою назвою в довіднику ще немає, він створюється автоматично — тому одруківка в полі «Замінити» додасть у довідник зайвий запис.
  • Прапорець регулярного виразу тут не діє: назва виробника шукається цілком, без урахування регістру — «samsung» знайде й «Samsung», але не «Samsung Electronics».
  • Заміна відкочується, як і в інших полях, але виробник, заведений нею в довіднику, після відкату там лишається.

Що буде, якщо заміна обірвалася

Заміна по категорії чи по всьому каталогу — це кілька окремих запитів підряд, спільного «все або нічого» між ними немає. Порядок такий:

  1. Програма запамʼятовує для відкату старі значення тих товарів, у яких заміна щось змінить.
  2. Записує нові значення: для назви, описів, мета-полів і тегів — окремо в самому товарі й окремо в текстах товару поточної мови каталогу.
  3. Знімає «Прапор: вивантажено» зі змінених товарів (нове значення характеристики записується вже після цього кроку).
  4. Перебудовує дані, з яких читає сітка, і тільки наприкінці рахує, скільки товарів змінено.

Звідси три наслідки обриву:

  • записане до обриву лишається; назва чи опис можуть уже змінитися в одному місці збереження й ще не змінитися в іншому;
  • на товарах, які встигли змінитися, може лишитися «Прапор: вивантажено» — тоді шаблон із «Вивантажувати лише нові дані» їх не візьме, доки товари не змінять ще раз;
  • якщо обрив стався вже після того, як програма запамʼятала старі значення, операція зʼявиться в «Останніх діях» із числом товарів, для яких ці значення запамʼятано, і відкат по ній працює: він повертає ті товари, які встигли змінитися. Товари, до яких заміна не дійшла, підсумок відкату покаже як «(пропущено N — змінені пізніше)» — вони й так лишилися без змін. Туди ж потрапить товар, у якого назва чи опис встигли змінитися лише в одному місці збереження: змінене відкат у ньому все одно поверне. Смужки з «Повернути назад» при цьому не буде.

Повторити заміну з тими самими «Знайти» і «Замінити» безпечно, якщо текст заміни не містить шуканого. Товари, у яких заміна вже пройшла, шуканого тексту більше не мають, і повтор їх не чіпає.

Якщо ж заміна містить шукане (наприклад, «Intel» → «Intel Core»), повтор допише текст удруге там, де заміна вже пройшла; для регулярного виразу те саме станеться, коли результат знову підпадає під шаблон. У такому разі не повторюйте заміну, а відкотіть обірвану операцію з «Останніх дій» і запустіть заново.

Повтор записується в «Останні дії» окремою операцією — тільки з тими товарами, які змінив він сам.

Сценарії

Прибрати зайве слово з назв товарів однієї категорії

Що увімкнути. Виберіть категорію в дереві, вимкніть у сітці пошук і всі фільтри й товарів не позначайте. Клацніть по колонці «Найменування», викличте «Знайти та замінити». У «Знайти» — слово, «Замінити» лишіть порожнім. Діалог попередить, що заміна піде на всю категорію з підкатегоріями, і не виконає її без галочки «Так, застосувати до всіх товарів цієї області».

Вікно «Знайти та замінити - Найменування» без позначених товарів: попередження про область і прапорець підтвердження
1Область заміни — уся категорія з підкатегоріями
2Без цієї галочки заміна не запуститься
  1. Область заміни — уся категорія з підкатегоріями: якщо товари не позначені, заміна піде на всю обрану категорію.
  2. Без цієї галочки заміна не запуститься: прапорець підтверджує, що заміну застосовано до всіх товарів області.

Що вийде. Слово зникне з назв усіх товарів категорії й підкатегорій, які бачить ваша група. Внизу з'явиться «Змінено N товарів» із посиланням «Повернути назад» — лише для товарів, у яких назва справді змінилася; їм же знімається прапорець «Вивантажено».

Чого не буде. Назви іншими мовами лишаться як були. Без прапорця «Використовується регулярний вираз» слово з великої літери не знайдеться, якщо ви ввели його з малої.

Об'єднати два написання одного виробника

Що увімкнути. Клацніть по колонці «Виробник», викличте «Знайти та замінити». У «Знайти» — назва, яку треба прибрати, повністю, у «Замінити» — правильна назва, як вона записана в довіднику.

Що вийде. Товари, у яких виробник точно дорівнює введеній назві (без урахування регістру), отримають правильного виробника. Заміну можна повернути кнопкою «Повернути назад».

Чого не буде. Товари з довшою назвою, наприклад «Samsung Electronics» при пошуку «Samsung», не зміняться, і прапорець регулярного виразу тут не допоможе. Старий запис із довідника виробників не видаляється — приберіть його там вручну. З порожнім «Замінити» не зміниться нічого.

Що робити, коли заміна пішла не так

Що ви бачитеЧому такЩо зробити
Замість діалогу «Знайти та замінити» червоне повідомлення «У сітці увімкнено пошук або фільтр, а рядки не позначено…»рядки не позначено, а пошук чи фільтр у сітці увімкнено — без позначок заміна пішла б на всю категорію, а не на видимі товарипозначте потрібні рядки («Вибрати всі товари» враховує фільтр) або вимкніть пошук і фільтри, якщо заміна справді потрібна на всю категорію
Заміна не знайшла слово, хоча воно єне збігся регіструвімкніть «Використовується регулярний вираз» — пошук за шаблоном не зважає на регістр
З прапорцем регулярного виразу замінилося більше, ніж требау шаблоні крапка, дужки чи плюс — вони працюють як службові символипоставте перед ними зворотну скісну риску: \., \(, \+
«Регулярний вираз записано з помилкою — заміну не виконано»незакрита дужка або службовий символ не на своєму місцівиправте шаблон і повторіть — жоден товар не змінився
У довіднику виробників з'явився дубльу полі «Замінити» була одруківка — програма завела нового виробникаприберіть зайвий запис у довіднику виробників
«Необхідно ввести значення!»У діалозі «Знайти та замінити» порожнє поле «Знайти»Заповнити, що саме шукати

Часті запитання

Як замінити число чи шматок тексту за шаблоном?

Увімкніть «Використовується регулярний вираз»: поле «Знайти» стане шаблоном, пошук — нечутливим до регістру, а в «Замінити» можна вставляти знайдені частини через \1, \2. Крапку, дужки й плюс, які треба знайти буквально, екрануйте зворотною скісною рискою. Шаблон із помилкою програма не виконує й повідомляє про це.

Заміна враховує великі й малі літери?

Без прапорця регулярного виразу — так: «Кабель» і «кабель» різні рядки. З прапорцем — ні (заміна за шаблоном).

Чому назви іншою мовою не змінилися?

Назви й описи заміна змінює в текстах поточної мови каталогу, характеристики — мовою інтерфейсу. Перемкніть мову й повторіть заміну.

Як відкотити заміну?

Кнопкою «Повернути назад» у смужці «Змінено N товарів» або з «Останніх дій» у тулбарі — протягом доби, серед пʼяти останніх операцій (що можна повернути).

Скільки товарів зміниться, якщо нічого не позначати?

Уся вибрана категорія з підкатегоріями, у корені дерева — весь каталог, і тільки після галочки «Так, застосувати до всіх товарів цієї області» (заміна без позначок).

Суміжні теми

Чи була стаття корисною?