Что мы делали по проекту
Для початку нам потрібно було попрацювати із самою програмою обліку. Для цього ми налаштовуємо такі параметри:
- Тип файлу, який вивантажуватимемо на сервер із сайтом. Це буде xml-yml;
- Вказуємо поля з картки товару, які ми хочемо, щоб потрапляли у вивантаження;
- Вказуємо підключення до сервера, куди вивантажуватиметься файл. Налаштовуємо параметри post-запиту. За цим запитом відразу після вивантаження файлу на сервер сайт буде знати, що необхідно розпочати оновлення;
- Налаштовуємо розклад – щоб кожні n-години відбувалося вивантаження без участі людини.
Єдиний момент для роботи необхідно щоб працювала програма торгософт на тій машині, яка вказана в налаштуваннях.
У нашому випадку ми налаштували всі поля, крім тих товарів, які не мають зображень. Тому що таких товарів у нас немає.
Інструкцію з налаштування ми брали на ютуб-каналі Торгософт.
У результаті ми отримали потрібний нам XML-файл на сервері з сайтом. Це стандартний XML-файл, з тими полями, які ми налаштували в адмінці ТоргСофта.
Коли налаштування на стороні системи Торгософт закінчено переходимо на сайт.
З чим ми зіткнулися і що довелося доопрацьовувати на стороні сайту:
По-перше, необхідно було визначити за якими параметрами потрібно проводити звіряння товарів. Унікальними виявились артикули. Однак пізніше з’ясувалося, що товари мають і додаткові опції – розміри. Тобто один артикул може мати кілька розмірів і цей розмір має свою ціну і свою кількість на складі. Це означає, що потрібно звіряти ще й за розмірами.
І в адмінці у кожного розміру йде своя ціна щодо основної ціни товару – наприклад, розмір M коштує 1300 грн, розмір L коштує 1200 грн. У картці товару це реалізовано додаванням або забиранням від базової ціни (+/-);
Ще пізніше з’ясувалося, що, крім варіацій розмірів, є ще й відмінність по підлогах. І приналежність до статі визначається не атрибутом товару, а категорією. Значить – звіряти ще потрібно не лише за артикулом та розміром, а й за статтю. Причому у розвантаженні підлога йде як окремий атрибут – а на сайті цього атрибуту немає. Товар просто прикріплений до категорії із відповідною назвою.
Що ми зробили? Переробили адмінку сайту, щоб ціна кожної опції була не +/- а так само = щоб ми могли безпосередньо записувати ціну з вивантаження в адмінку. Після цього додали до кожного товару атрибут „Для кого“ та прописали туди потрібні значення.
Усі можна синхронізувати! А ще ми налаштували хостинг, тому що антивірус хостингу не пропускав запит із Торгософту – той самий, який сигналізував про завершення вивантаження. Не пропускав, бо антивірус блокував. Це стандартна практика хостингу для захисту сайтів.
Какой результат получили
У результаті ми створили систему, яка вивантажує файл з товарами на сервер, автоматично обробляє його і оновлює ціни та залишки у товарів на сайті.