Оставьте сообщение в этой теме и вам откроются контакты пользователя
Часто бывает у одного продукта более 20-ти поставщиков, которые отличаюся не только Ценой но и Сроком поставки.
С отбором по Цене хорошо справляется алгоритм "Пересчет цен и наличия" где с помощью тонких настроек мы отбираем Активного поставщика.
Но порой главным критерием отбора является не Цена, а Срок поставки и вот здесь начинается ручной поиск Альтернативного поставщика с наилучшим показателем Срок.
Имея Активного и Альтернативного поставщиков продукта, их можно подать у виде Фильтров, Наценок, экспортировать в OpenCart как Опции..
Для этого необходимы доработки:
1. Алгоритм отбора "Альтернативный поставщик" можно реализовать отдельным действием с настройками - Условия запуска действия.png (Автоматизация для продуктов > При сохранении в карточке проодукта) или доработать действие "Посчитать значение по формуле и записать в указанное поле" (Автоматизация для продуктов > При сохранении в карточке проодукта), там уже есть все условия отбора продуктов для алгоритма.
Принцип:
1.1*) Ищем самую низкую Цену среди поставщиков и складов продукта, которая меньше цены Активного поставщика:
- если находим, то фиксируем ID этого поставщика или "Код склада" (если это склад) в доп. поле продукта, останавливаем алгоритм для текущего продукта;
- если не находит, то переходим к п.1.2;
1.2) Ищем Срок среди поставщиков и складов*, который меньше срока Активного поставщика:
- Если Срок Активного поставщика = 0, то фиксируем значение 0 в доп. поле продукта, останавливаем алгоритм для текущего продукта;
- если находим несколько подходящих вариантов, то выбираем тот который с наименьшей ценой и фиксируем ID этого поставщика или "Код склада" в доп. поле продукта, останавливаем алгоритм для текущего продукта;
2. Добавить в действие "Занести значение дополнительного поля в фильтр" (Автоматизация для продуктов > При сохранении в карточке проодукта) настройку:
2.1 "Удалить выбранные фильтра перед заполнением" - настройка удаляет у продукта выбранный фильтр (Удалить выбранные фильтра.png).
Данная настройка будет поддерживать фильтра с поставщиками в актуальном состоянии, удаляя старые фильтра перед вставкой новых.
2.2. Автоматически заполнить ID поставщиков в значениях фильтров продукта проблемы не составляет, необходимо действие которое Скопирует цену этого ID поставщика в Наценку с выбранным префиксом цены "равно" (Копировать цены поставщиков в наценки.png).
- желательно что бы цена копировалась в Наценку с учетом округление цен.
*Срок Склада = 0.
*Пункт №1.1 обязателен, так как Актиивный поставщик при пересчете может определяется разными методами в зависимости от "Приоритет выбора цены".
*Основным Тригером для перечисленных в ТЗ действий, является Сохранении в карточке проодукта (Автоматизация для продуктов)
[file]21897[/file]
[file]21898[/file]
[file]21899[/file]
Часто бывает у одного продукта более 20-ти поставщиков, которые отличаюся не только Ценой но и Сроком поставки. С отбором по Цене хорошо справляется алгоритм "Пересчет цен и наличия" где с помощью тонких настроек мы отбираем Активного поставщика. Но порой главным критерием отбора является не Цена, а Срок поставки и вот здесь начинается ручной поиск Альтернативного поставщика с наилучшим показателем Срок. Имея Активного и Альтернативного поставщиков продукта, их можно подать у виде Фильтров, Наценок, экспортировать в OpenCart как Опции..
Для этого необходимы доработки:
1. Алгоритм отбора "Альтернативный поставщик" можно реализовать отдельным действием с настройками - Условия запуска действия.png (Автоматизация для продуктов > При сохранении в карточке проодукта) или доработать действие "Посчитать значение по формуле и записать в указанное поле" (Автоматизация для продуктов > При сохранении в карточке проодукта), там уже есть все условия отбора продуктов для алгоритма. Принцип: 1.1*) Ищем самую низкую Цену среди поставщиков и складов продукта, которая меньше цены Активного поставщика: - если находим, то фиксируем ID этого поставщика или "Код склада" (если это склад) в доп. поле продукта, останавливаем алгоритм для текущего продукта; - если не находит, то переходим к п.1.2;
1.2) Ищем Срок среди поставщиков и складов*, который меньше срока Активного поставщика: - Если Срок Активного поставщика = 0, то фиксируем значение 0 в доп. поле продукта, останавливаем алгоритм для текущего продукта; - если находим несколько подходящих вариантов, то выбираем тот который с наименьшей ценой и фиксируем ID этого поставщика или "Код склада" в доп. поле продукта, останавливаем алгоритм для текущего продукта;
2. Добавить в действие "Занести значение дополнительного поля в фильтр" (Автоматизация для продуктов > При сохранении в карточке проодукта) настройку:
2.1 "Удалить выбранные фильтра перед заполнением" - настройка удаляет у продукта выбранный фильтр (Удалить выбранные фильтра.png). Данная настройка будет поддерживать фильтра с поставщиками в актуальном состоянии, удаляя старые фильтра перед вставкой новых.
2.2. Автоматически заполнить ID поставщиков в значениях фильтров продукта проблемы не составляет, необходимо действие которое Скопирует цену этого ID поставщика в Наценку с выбранным префиксом цены "равно" (Копировать цены поставщиков в наценки.png). - желательно что бы цена копировалась в Наценку с учетом округление цен.
*Срок Склада = 0. *Пункт №1.1 обязателен, так как Актиивный поставщик при пересчете может определяется разными методами в зависимости от "Приоритет выбора цены". *Основным Тригером для перечисленных в ТЗ действий, является Сохранении в карточке проодукта (Автоматизация для продуктов)
Упростил ТЗ, необходимо только действие отбора Альтернативного поставщика.
1. Алгоритм отбора "Альтернативный поставщик" можно реализовать отдельным действием с настройками - Условия запуска действия.png (Автоматизация для продуктов > При сохранении в карточке проодукта) или доработать действие "Посчитать значение по формуле и записать в указанное поле" (Автоматизация для продуктов > При сохранении в карточке проодукта), там уже есть все условия отбора продуктов для алгоритма. Принцип: 1.1) Ищем самую низкую Цену продажи среди поставщиков и складов продукта, которая меньше цены Активного поставщика: - если находим, то фиксируем ID этого поставщика или "Код склада" (если это склад) в доп. поле продукта, останавливаем алгоритм для текущего продукта; - если не находит, то переходим к п.1.2;
1.2) Ищем Время доставки среди поставщиков и складов*, который меньше Времени доставки Активного поставщика: - Если Время доставки Активного поставщика = 0, то останавливаем алгоритм для текущего продукта, а в доп. поле продукта фиксируем значение "0"; - если находим несколько вариантов с однаковым Временем доставки и меньшим чем у Активного поставщика, то выбираем тот который с наименьшей ценой и фиксируем ID этого поставщика или "Код склада" в доп. поле продукта, останавливаем алгоритм для текущего продукта;
Упростил ТЗ, необходимо только действие отбора Альтернативного поставщика.
1. Алгоритм отбора "Альтернативный поставщик" можно реализовать отдельным действием с настройками - Условия запуска действия.png (Автоматизация для продуктов > При сохранении в карточке проодукта) или доработать действие "Посчитать значение по формуле и записать в указанное поле" (Автоматизация для продуктов > При сохранении в карточке проодукта), там уже есть все условия отбора продуктов для алгоритма.
Принцип:
1.1) Ищем самую низкую Цену продажи среди поставщиков и складов продукта, которая меньше цены Активного поставщика:
- если находим, то фиксируем ID этого поставщика или "Код склада" (если это склад) в доп. поле продукта, останавливаем алгоритм для текущего продукта;
- если не находит, то переходим к п.1.2;
1.2) Ищем Время доставки среди поставщиков и складов*, который меньше Времени доставки Активного поставщика:
- Если Время доставки Активного поставщика = 0, то останавливаем алгоритм для текущего продукта, а в доп. поле продукта фиксируем значение "0";
- если находим несколько вариантов с однаковым Временем доставки и меньшим чем у Активного поставщика, то выбираем тот который с наименьшей ценой и фиксируем ID этого поставщика или "Код склада" в доп. поле продукта, останавливаем алгоритм для текущего продукта;
Пожалуйста, присоединяйтесь к диалогу. Если вам есть что сказать - пожалуйста, напишите комментарий. Для входа потребуется мобильный телефон и смс-код для идентификации.
Войти и написать комментарий