Найти тему

Сравнение прайсов.

Создана программа для MS Excel версий 2010 и моложе.
Обращайтесь и Вам сделаю, с учётом Ваших пожеланий.

=== ТЗ ===

Вступление

У нас есть прайс, который мы загружаем на сайт. Назовем его «Совместный прайс». Нужно сравнить его с двумя другими прайсами (не сразу, а по отдельности), двух наших поставщиков. Назовем их прайсы «Прайс Эквипа» и «Прайс Русского проекта». У Русского проекта есть еще отдельный мини прайс для Санкт-Петербурга. Назовем его «Мини прайс Русского проекта СПБ». В нем можно узнать только наличие некоторых позиций.

Выбор поставщика

Основным поставщиком каждой позиции может быть только один. Он обозначен в «Совместном прайсе» в столбце «Основной поставщик»:

Если основной поставщик – Эквип, то эту позицию мы сравниваем с позициями из «Прайса Эквипа», а остальные пропускаем, если основной поставщик – Русский проект, то эту позицию мы сравниваем с позициями из «Прайса Русского проекта» и «Мини прайса Русского проекта СПБ», а остальные пропускаем.

1. Алгоритм сравнения «Совместного прайса» с «Прайсом Эквип»

Сравниваем только те позиции, у которых в столбце «Основной поставщик» стоит значение «Эквип». Остальные игнорируем.

Поиск идентичных позиций будет производится по столбцу «Артикул поставщика» в «Совместном прайсе» и «АРТИКУЛ» в «Прайсе Эквип». Если значения в ячейках этих столбцов совпадает, то это означает, что это один и тот же продукт и надо обновить данные.

Первое, что обновляется – это цена. Алгоритм следующий:

Значение из столбца «ДИЛЕР РУБ» в «Прайсе Эквип» переносится в столбец «Закупочная цена» в «Совместном прайсе»:

Далее обновляется количество. Алгоритм следующий:

Значение из столбца «НА СКЛАДЕ МСК» в «Прайсе Эквип» переносится в столбец «Кол-во МСК» в «Совместном прайсе», а значение из столбца «НА СКЛАДЕ СПБ» в «Прайсе Эквип» переносится в столбец «Кол-во СПБ» в «Совместном прайсе»:

Далее обновляется срок поставки под заказ. Алгоритм следующий:

Значение из столбца «СРОК ПОСТАВКИ ПОД ЗАКАЗ ДНЕЙ» в «Прайсе Эквип» переносится в столбец «Срок поставки под заказ» в «Совместном прайсе». Причем

численное значение так и переноситься без изменений,

значение «не возим» из столбца «СРОК ПОСТАВКИ ПОД ЗАКАЗ ДНЕЙ» в «Прайсе Эквип» переносится в столбец «Срок поставки под заказ» в «Совместном прайсе» со значением «поставка невозможна»

значение «уточняйте» из столбца «СРОК ПОСТАВКИ ПОД ЗАКАЗ ДНЕЙ» в «Прайсе Эквип» переносится в столбец «Срок поставки под заказ» в «Совместном прайсе» со значением «требуется уточнение у менеджера»

Далее обновляется дата ближайшей поставки. Алгоритм следующий:

Значение из столбца «БЛИЖАЙШАЯ ПОСТАВКА» в «Прайсе Эквип» переносится в столбец «Дата ближайшей поставки» в «Совместном прайсе». Если ячейка в столбце «БЛИЖАЙШАЯ ПОСТАВКА» в «Прайсе Эквип» - пустая, то и в столбец «Дата ближайшей поставки» в «Совместном прайсе» тоже должно быть пусто. Если ячейка в столбце «БЛИЖАЙШАЯ ПОСТАВКА» в «Прайсе Эквип» - дата, то и в столбец «Дата ближайшей поставки» в «Совместном прайсе» тоже должна стоять эта дата.

Следующий этап – это выделение позиций, которые уже поставщик перестал возить. Алгоритм следующий: Если в столбце «Основной поставщик» стоит значение «Эквип», а в столбце «Артикул поставщика» в «Совместном прайсе» стоит значение, которого нет в столбце «АРТИКУЛ» в «Прайсе Эквип», то строка данного товара выделяется красным цветом для дальнейшей обработки менеджером и возможным удалением.

Заключительный этап – это выделение новых позиций в «Прайсе Эквип», которые еще не были добавлены в «Совместный прайс». Если в столбце «АРТИКУЛ» в «Прайсе Эквип» стоит значение, которого нет в столбце «Артикул поставщика» в «Совместном прайсе», то строка данного товара выделяется зеленым цветом для дальнейшей обработки менеджером и возможным добавлением в «Совместный прайс».

2. Алгоритм сравнения «Совместного прайса» с «Прайсом Русского проекта»

Сравниваем только те позиции, у которых в столбце «Основной поставщик» стоит значение «Русский проект». Остальные игнорируем.

Поиск идентичных позиций будет производится по столбцу «Артикул поставщика» в «Совместном прайсе» и «КОД» в «Прайсе Русского проекта». Если значения в ячейках этих столбцов совпадает, то это означает, что это один и тот же продукт и надо обновить данные:

Первое, что обновляется – это цена. Алгоритм следующий:

Значение из столбца «ЦЕНА» в «Прайсе Русского проекта» переносится в столбец «Закупочная цена» в «Совместном прайсе», а значение из столбца «ВАЛЮТА» в «Прайсе Русского проекта» переносится в столбец «Валюта» в «Совместном прайсе»:

Далее обновляется количество. Алгоритм следующий:

Значение из столбца «ЗАКУПКИ» в «Прайсе Русского проекта» переносится в столбец «Кол-во МСК» в «Совместном прайсе». Причем

значение «под заказ» из столбца «ЗАКУПКИ» в «Прайсе Русского проекта» переносится в столбец «Кол-во МСК» в «Совместном прайсе» со значением «0»

значение «на складе» из столбца «ЗАКУПКИ» в «Прайсе Русского проекта» переносится в столбец «Кол-во МСК» в «Совместном прайсе» со значением «1»

Следующий этап – это выделение позиций, которые уже поставщик перестал возить. Алгоритм следующий: Если в столбце «Основной поставщик» стоит значение «Русский проект», а в столбце «Артикул поставщика» в «Совместном прайсе» стоит значение, которого нет в столбце «КОД» в «Прайсе Русского проекта», то строка данного товара выделяется красным цветом для дальнейшей обработки менеджером и возможным удалением.

Следующий этап – это выделение новых позиций в «Прайсе Русского проекта», которые еще не были добавлены в «Совместный прайс». Если в столбце «КОД» в «Прайсе Русского проекта» стоит значение, которого нет в столбце «Артикул поставщика» в «Совместном прайсе», то строка данного товара выделяется зеленым цветом для дальнейшей обработки менеджером и возможным добавлением в «Совместный прайс».

3. Алгоритм сравнения «Совместного прайса» с «Мини прайсом Русского проекта СПБ»

Сравниваем только те позиции, у которых в столбце «Основной поставщик» стоит значение «Русский проект». Остальные игнорируем.

Поиск идентичных позиций будет производится по столбцу «Артикул поставщика» в «Совместном прайсе» и «Код» в «Мини прайсе Русского проекта СПБ». Если значения в ячейках этих столбцов совпадает, то это означает, что это один и тот же продукт и надо обновить данные:

Работа с «Мини прайсом Русского проекта СПБ» заключается только в обновлении количества товара на складе в СПб.

Значение из столбца «ПР_наличие» в «Мини прайсе Русского проекта СПб» переносится в столбец «Кол-во СПб» в «Совместном прайсе». Причем

значение «есть» из столбца «ПР_наличие» в «Мини прайсе Русского проекта СПб» переносится в столбец «Кол-во СПб» в «Совместном прайсе» со значением «1»

значение «уточняйте у менеджера» из столбца «ПР_наличие» в «Мини прайсе Русского проекта СПб» переносится в столбец «Кол-во СПб» в «Совместном прайсе» со значением «0»

Важно!!!! Если в столбце «Основной поставщик» стоит значение «Русский проект», а в столбце «Артикул поставщика» в «Совместном прайсе» стоит значение, которого нет в столбце «Код» в «Мини прайсе Русского проекта СПб», то в столбце «Кол-во СПб» в «Совместном прайсе» устанавливается «0».