Добро пожаловать, Гость. Для того, чтобы отвечать на сообщения и создавать новые темы, Вам необходимо зарегистрироваться, если Вы уже зарегистрированы, то войдите используя Ваши E-Mail и Пароль.
Количество сообщений
135
Зарегистрирован:
23-08-2007, 09:03:21
Установите тип приоритета поставщиков как "Поставщики + SQL-запрос", сейчас у вас наверное стоит только SQl-запрос который устанавливает только два поля - наличие и цену. Но тогда желательно товары поставщика с РРЦ снять с наличия Отредактировано Admin: 20.01.2014, 11:45:51
Количество сообщений
24
Зарегистрирован:
14-01-2014, 15:57:17
SET @Price = (SELECT price from TBL_SUPPLIERS_GOODS WHERE SG_G_ID = @G_ID AND SG_S_ID = 376);
SET @G_PRESENT = 0;
SET @S_ID = (SELECT TOP 1 SG_S_ID from TBL_SUPPLIERS_GOODS WHERE SG_G_ID = @G_ID AND SG_PRESENT = 1 AND SG_S_ID <> 376 ORDER BY price ASC);
IF EXISTS(
SELECT 1
FROM TBL_SUPPLIERS_GOODS
WHERE SG_G_ID = @G_ID AND SG_PRESENT = 1 AND SG_S_ID <> 376
)
BEGIN
SET @G_PRESENT = 1;
END;
Поставщик начал отображаться, но я заметил, что в товарах в которых не прикреплён прайс РРЦ цена выгружаеться по стоимости наценки. А в инет шопе в колонке "Цена поставщика" не отображаеться.
Количество сообщений
1199
Зарегистрирован:
11-04-2008, 19:11:57
Цитата
Написал: cifrosvit
И ещё из РРЦ прайса нужно брать товары которые только есть в наличии, если нету то выгружать самую минимальную цену.
Данный скрипт сделан по вашему изначальному требованию - взять цену с одного поставщика, а наличие с других и полностью выполняет возложенные на него функции. Ничего более он делать не может и предназначен только для такой ситуации.
Если вас интересует иной алгоритм расчета - составляйте описание вашего алгоритма и заказывайте новый скрипт.
Количество сообщений
1199
Зарегистрирован:
11-04-2008, 19:11:57
Добавлен справочник приоритетов поставщиков (для клиентов с сетевой версией программы), в котором пользователь может указать приоритеты по которым будет определяться цена товара.
Что касается вызова произвольных SQL-запросов при определении цены поставщиков, то они вызываются для типов расчета "Поставщики + SQL-запрос" и "SQL-запрос". Список передаваемых параметров:
@G_ID int - код товара @Price money OUTPUT - цена товара @S_ID int OUTPUT - код поставщика @G_Present int(1) OUTPUT - признак наличия @G_Warranty varchar(50) OUTPUT - гарантия @G_Rest float OUTPUT - остаток @G_PR_ID int - ID приоритета поставщиков @iCaltType int - Тип расчета цены @iCaltType2 int - Тип работы
Значения параметров с типом передачи OUTPUT записываются в таблицу товаров TBL_GOODS
Количество сообщений
1199
Зарегистрирован:
11-04-2008, 19:11:57
При помощи этого функционала можно сделать очень многое, если правильно поставить и описать задачу с учетом всевозможных вариантов использования и возможности применения на предполагаемые товары. Если же поставить задачу как "взять цену у одного поставщика, а наличие у других" то скрипт именно так и будет работать, но он не будет учитывать какие-то дополнительные нюансы, т.к. он сам по себе не является искусственным интеллектом.
В данном случае, например, можно поступить следующим образом:
1. Поставщика, у которого берутся рекомендованные цены продажи делаем не активным, чтобы обычный штатный алгоритм выбора цен и наличия его не учитывал.
2. Ставим тип расчета цены как "Поставщики + SQL-скрипт"
2. В SQL-скрипт добавляем только изменение цены, но при условии, что привязанный товар с РРЦ есть в наличии и вообще привязан.
Но, обратно же, не зная всех механизмов внутренней работы магазина с ценами нет никакой гарантии, что этот механизм выбора цены можно применить ко всем товарам, скорее всего конечно же НЕЛЬЗЯ!!!