Яка ціна й опис підуть у вивантаження

6 хв

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

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

  • Майданчику потрібна РРЦ, а клієнту — звичайна ціна — кожен шаблон бере своє цінове поле або формулу «РРЦ, якщо заповнена».
  • У файлі ціна 0 — вивантаження нічого не досчитує, тож нуль означає порожнє поле в картці товару.
  • Характеристики заповнені, а опису немає — генератор збере опис з атрибутів тільки у вивантаження, картка не зміниться.

З чого почати: картка шаблону → тег ціни в XML-шаблоні або колонка «Формула» в прайс-листі.

Що вміє шаблон з ціною й описом

  • Поле ціни — будь-яке цінове поле каталогу: «Ціна», «Ціна РРЦ», «Стара ціна», «Ціна акція».
  • Формула й курс — «РРЦ, якщо заповнена», перерахунок за курсом прямо в шаблоні.
  • Генератор описів — опис із характеристик товару, тільки у вивантаженні.

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

Меню
Довідники → Операції → Вивантаження даних → картка шаблону
Інші входи
секція «Додатково» картки шаблону → «Генератор описів»
Право доступу
вікно «Детальне налаштування шаблону вивантаження»
Підготувати
ціни й характеристики товарів у базовому каталозі

Ціна у вивантаженні

Націнки на етапі вивантаження немає. У жодному з форматів немає ні відсотка, ні коефіцієнта, ні правил: у файл іде значення поля рівно таким, як воно лежить у базовому каталозі. Націнка застосовується раніше, коли каталог оновлюється з прайсів постачальників, — це правила ціноутворення для прайс-листа.

Що з ціною можна зробити тут:

  1. Вибрати, яке поле є ціною. У шаблоні доступні всі цінові поля товару: «Ціна», «Ціна РРЦ», «Ціна собівартість», «Стара ціна», «Ціна акція», а поруч із ними «Валюта», «Фіксована ціна» і «Динаміка ціни». Для оптового прайса зазвичай беруть одне поле, для маркетплейса — інше. У XML-шаблоні звичайна ціна з картки — це підстановка {price}, вона й стоїть у шаблоні за замовчуванням. Будь-яке інше цінове поле ставиться макросом з його назвою: {Товар БК: Ціна РРЦ}, {Товар БК: Ціна акція}, {Товар БК: Стара ціна}.
  2. Написати формулу. У XML-шаблоні формула береться у подвійні квадратні дужки: [[IF({Товар БК: Ціна РРЦ}>0, {Товар БК: Ціна РРЦ}, {Товар БК: Ціна})]] — «якщо заповнена, бери її, інакше звичайну ціну». У прайс-листі XLSX/CSV те саме робить колонка «Формула» у списку обраних полів.
  3. Перерахувати за курсом. {CURRENCY_RATE_USD} підставляє поточний курс із довідника валют — і в шапку шаблону, і всередину формули. Курс підставляється заокругленим до двох знаків: для валют із дрібним курсом (гривня до долара, тенге) це помітно спотворює перерахунок.

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

Код валюти у файл завжди йде один — основної валюти акаунта. Ціни в каталозі зберігаються в ній же, тому «складання різних валют» у вивантаженні статися не може.

Помилка у формулі поводиться по-різному, і другий випадок небезпечніший. Якщо формула не пройшла перевірку на безпеку, прогін іде далі, а обчислювані поля у файлі виходять порожніми.

Якщо ж у формулі синтаксична помилка — забули кому в IF, не закрили дужку, — ламається весь запит до бази: файл не формується взагалі, на посиланні лишається минулий файл, журнал закінчується рядком «Вивантаження даних НЕ завершено: файл не сформовано», а дата вивантаження в списку лишається старою.

Майданчик, який забирає файл сам за розкладом, при цьому й далі отримує минулий файл — для нього це виглядає як «ціни не змінювалися». Тому будь-яку правку формули проганяйте кнопкою «Перевірити»: там видно і текст помилки, і фрагмент файла.

Генератор описів: таблиця характеристик замість ручної роботи

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

У вікні два прапорці й поле шаблону. «Генератор увімкнено» вмикає роботу, «Фільтр: порожній опис» звужує її до товарів, у яких повний опис порожній, — тобто не чіпає те, що ви вже написали. Саме поле шаблону — це HTML із підстановками, з підсвіткою й підказкою по полях каталогу.

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

Крім самих атрибутів, у шаблон вставляють поля товару:

ПідстановкаЩо підставляє
{{ product_head.name }}Назву товару
{{ product_head.mpn }}Артикул виробника
{{ product_head.ean }}Штрихкод EAN
{{ product_head.description_short|raw }}Короткий опис
{{ product_head.description_full|raw }}Повний опис із картки
{{ product_head.tag }}Мітки товару

Приписка |raw потрібна там, де значення саме містить HTML: без неї теги приїдуть у файл текстом.

Редактор шаблона вміє підказувати назви полів каталогу у фігурних дужках — {Товар: Назва} і подібні. У генераторі описів вони не працюють: він розуміє тільки підстановки з таблиці вище та самі атрибути. Вставите таку підказку — вона так і залишиться в описі текстом. Макроси у фігурних дужках працюють в інших місцях програми, наприклад у шаблоні XML-фіда.

Якщо для товару згенерована посадкова сторінка, її код вставляється в опис конструкцією {% if product_head.landing_url %}{{ product_head.landing_embed|raw }}{% endif %}. Набирати руками не треба: у самому вікні генератора ця конструкція лежить готовою, поруч кнопка «Скопіювати конструкцію».

Умова всередині не випадкова — код підставиться лише тим товарам, у яких посадкова справді є, і саме мовою вивантаження.

Генератор бере не кожен атрибут товару. Рядок зʼявиться лише тоді, коли виконані всі умови:

  • значення атрибута непорожнє;
  • у довіднику атрибутів увімкнена «Активність» і «Відображати на сайті у картці товару»;
  • сам атрибут не є опцією товару.

Тому характеристики, заведені як опції — розмір, колір, — у згенерований опис не потраплять принципово: вони описують варіант, а не товар.

Сценарії

Оптовий клієнт хоче прайс на пошту, з РРЦ там, де вона є

Що налаштувати: «Додати» → «Файл прайс-листа» → «Прайс-лист (XLSX, CSV)». Для колонки ціни в колонці «Формула» напишіть умову: якщо «Ціна РРЦ» більша за нуль — вона, інакше «Ціна». Заповніть «Шаблон розсилки».

Що вийде: після кожного прогону файл піде вкладенням у лист за цим шаблоном розсилки, у журналі зʼявиться рядок «Розсилка листів ел. поштою». Чого не станеться: націнки не буде — лише те, що дає формула. Категорія без назви мовою вивантаження вирізає з цього прайса всі свої товари, хоча у фідах така категорія просто їде без назви.

Характеристики заповнені, а повного опису в товарів немає

Що налаштувати: у секції «Додатково» картки шаблону відкрийте «Генератор описів», поставте «Генератор увімкнено» і «Фільтр: порожній опис», у полі шаблону розставте атрибути й підстановки.

Що вийде: товари з порожнім повним описом поїдуть у файл з описом, зібраним із характеристик. Описи, які ви написали самі, не зміняться. Чого не станеться: у картці товару поле «Повний опис» лишиться порожнім, а характеристики-опції в опис не потраплять.

Майданчику потрібна стара ціна, щоб показати знижку

Що налаштувати: у XML-шаблоні в тег старої ціни, якого вимагає майданчик, поставте макрос {Товар БК: Стара ціна}.

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

Що робити, коли у файлі не та ціна

Що ви бачитеЧому такЩо зробити
«Макроси не розпізнано, і вони будуть вирізані з файлу: ‹список›» У шаблоні макрос із помилкою в назві поля У редакторі шаблону натисніть Ctrl+Space й оберіть поле зі списку
У файлі ціна (наприклад, у тегу price_prom) — 0 або порожня Вивантаження нічого не досчитує: у полі, на яке посилається тег шаблону, в картці товару справді лежить 0 або порожньо Відкрити шаблон і подивитися, яке поле стоїть у тегу ціни; перевірити це поле в картці товару; якщо поле заповнює формула каталогу — спершу застосувати її (ціна у вивантаженні)

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

Чи додає вивантаження націнку до ціни?

Ні. У файл іде значення поля рівно таким, як воно лежить у базовому каталозі. Іншу ціну задають або формулою в шаблоні, або раніше — правилами ціноутворення при оновленні каталогу з прайсів постачальників.

Чи можна в шаблоні вивантаження писати {Товар БК: …}?

Так. У XML-шаблоні це звичайний спосіб звернутися до будь-якого поля базового каталогу, зокрема до власних полів: {Товар БК: Ціна РРЦ}, {Товар БК: ‹назва вашого поля›}. Макрос працює і в тексті шаблону, і всередині формули в подвійних квадратних дужках.

Пише «Макроси не розпізнано» або в додатковому полі у вивантаженні 0. Що не так?

Назва після двокрапки в {Товар БК: Назва поля} має збігатися з назвою колонки в сітці товарів символ у символ. Не друкуйте її руками: у редакторі шаблону натисніть Ctrl+Space й оберіть поле. Якщо макрос розпізнано, а у файлі 0, — порожнє саме поле в товарі.

Чому у вивантаженні за шаблоном ціна (наприклад, price_prom) приходить нулем?

У полі, на яке посилається тег ціни, у картці товару справді лежить 0 або порожньо. Подивіться в шаблоні, яке поле стоїть у тегу, і перевірте його в картці товару. Якщо поле заповнює формула каталогу, спершу застосуйте її (формули для полів каталогу).

Чому в згенерованому описі немає розміру й кольору?

Генератор пропускає атрибути, заведені як опції товару, а також ті, у яких у довіднику вимкнено «Активність» чи «Відображати на сайті у картці товару» (генератор описів).

Суміжні теми

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