Для того чтобы организовать торговлю в Интернет-магазине компании потребуется наличие всего одного Менеджера, контролирующего процесс автоматической работы магазина как из офиса компании, так и из любого места в Сети.
Каталог прайсов интернет магазинов - разместите свой прайс бесплатно
  Главная  |    О компании  |    Новости  |    Статьи  |    Форум  |    Клиенты  |    Обратная связь  |    Карта сайта
Добро пожаловать, Гость. Для того, чтобы отвечать на сообщения и создавать новые темы, Вам необходимо зарегистрироваться, если Вы уже зарегистрированы, то войдите используя Ваши E-Mail и Пароль.
Запомнить
Пароль
   
Запрос

22.11.2015 19:35

maxtelt


Пользователь iNETsHOP

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
Здравствуйте, подскажите пожалуйста возможно создать такой запрос?
Есть поставщики по ним определяется мин цена, есть поставщик "конкурент" по нему стоит не учитывать цену. Как сравнить эти две цены, и если при вычете из моей мин цены 5% цена будет выше цены поставщика "конкурент", то оставить эту цену, если ниже, то сделать на 100 руб дешевле поставщика "конкурент".(и при этом учитывать наличие товара)
Или это можно сделать с помощью интерфейса программы?
Пользователь оффлайн Распечатать
 

22.11.2015 23:40

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Учет цен конкурентов
В free-версии программы нет возможность прямо влиять на цену продажи манипулируя ценами товаров поставщиков/конкурентов. В общем виде алгоритм следующий:
1. Значение из колонки "Цена прайса" справочника товаров поставщиков умножается на курс валюты прайса (колонка из этого же справочника) если он есть (по умолчанию равен 1), умножается значение курса валюты из справочника валют если валюта явно установлена пользователем в товаре поставщика (колонка из этого же справочника) и после применения формулы расчета скидки записывается в колонку "Цена закупки"
2. При изменения цены закупки или признака наличия у товаров поставщиков, инициируется пересчет колонки "Цена поставщика" в справочнике товаров по указанному в товаре алгоритму. Сам алгоритм выбора цен поставщика настраивается в справочнике "Приоритеты поставщиков". По умолчанию автоматически берется минимальная цена закупки у товара который есть в наличии у поставщика. Вы можете указать рейтинг поставщиков от которых брать цену закупки в первую очередь или выстроить любую последовательность. Так же вы можете обработать цену закупки или выполнить практически любые манипуляции с данными для ее расчета.
3. При изменении колонки "Цена поставщика" в справочнике товаров инициируется пересчет всех трех цен продажи путем применения к цене поставщика соответствующих формул наценки.

В вашей версии вы не имеете возможности влиять на цены продажи непосредственно при измении цен закупки, это можно делать только в полной версии, где добавлены обширные возможности для работы с РРЦ и расчетов цен продажи дополнительными произвольными SQL-скриптами. Или вы потеряете возможность применять формулу наценки.

Пользователь оффлайн Распечатать
 

23.11.2015 00:03

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
Может я не так написал попробую проще при таком запросе
SELECT
G_SID as "product_sku",
G_NAME as "product_name",
price as "product_price1",
(SELECT TOP 1 SG_PRICE FROM TBL_SUPPLIERS_GOODS WHERE SG_G_ID = G_ID AND SG_S_ID = 7 AND G_PRESENT = 1) as "спектр"
FROM TBL_GOODS
WHERE G_ACTIVE = 1
AND G_PRESENT = 1

я получаю
product_sku product_name product_price1 спектр
45643 Beko HIZG 64121 AR 8188,00 7470,00

как добавить условие product_price1*0.95>спектр, то product_price1*0.95
если product_price1*0.95<=спектр, то спектр-100

Пользователь оффлайн Распечатать
 

23.11.2015 00:17

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Цена продажи в зависимости от цены конкурента
Ваш SQL-запрос экспорта будет выглядеть так (колонка product_pricesell):
Код

select
product_sku,
product_name,
case when product_price1*0.95 > product_price2 then product_price1*0.95 else product_price2-100 end as product_pricesell,
product_price1,
product_price2
FROM
(
SELECT
G_SID as "product_sku",
G_NAME as "product_name",
price as "product_price1",
(SELECT TOP 1 SG_PRICE FROM TBL_SUPPLIERS_GOODS WHERE SG_G_ID = G_ID AND SG_S_ID = 7 AND G_PRESENT = 1) as "product_price2"
FROM TBL_GOODS
WHERE G_ACTIVE = 1
AND G_PRESENT = 1
) t

Пользователь оффлайн Распечатать
 

23.11.2015 00:23

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
Спасибо большое, то что надо.
Пользователь оффлайн Распечатать
 

23.11.2015 20:48

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
Хочу немного усложнить условие, но ругается на оператор OR
select
product_sku,
product_name,
case when product_price2/product_price1<0.91 then product_price2-50 OR product_price2/product_price1>0.91 AND product_price2/product_price1<0.94 then product_price2*0.99 else product_price2*0.99 end as product_pricesell,
product_price1,
product_price2
Пользователь оффлайн Распечатать
 

23.11.2015 21:16

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
В вашем SQL-запросе как минимум синтаксическая ошибка с лишним оператором then, и может быть логическая при product_price1 = 0 (деление на ноль). Так же по вашему логическому выражению не понятно при каком условии должна выдаваться та или иная цена. Т.е. для того чтобы дать вам ответ, ваш код - бесполезен. Лучше опишите своими словами.
Пользователь оффлайн Распечатать
 

23.11.2015 21:34

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
product_sku product_name product_price1(мин цена моих поставщиков) product_price2(цена определенного поставщика-конкурент)

1) условие product_price2/product_price1<0.91 то product_price2-100
2) условие product_price2/product_price1>0.91 но <0,94 то product_price2*0,99
3) условие product_price2/product_price1>0.94 но <0,96 то product_price2*0,98
4) условие product_price2/product_price1>0.96 то product_price2*0,97
Пользователь оффлайн Распечатать
 

23.11.2015 21:58

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
product_price1(мин цена моих поставщиков и плюс наценка)
Пользователь оффлайн Распечатать
 

23.11.2015 21:58

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Учет цены конкурента
Ваш SQL-запрос для экспорта товаров с учетом указанного конкурента будет выглядеть приблизительно так:
Цитата
select
product_sku,
product_name,
case
when product_price2 < product_price1*0.91 then product_price2-100
when product_price2 >= product_price1*0.91 and product_price2 < product_price1*0.94 then product_price2*0.99
when product_price2 >= product_price1*0.94 and product_price2 < product_price1*0.96 then product_price2*0.98
when product_price2 >= product_price1*0.96 then product_price2*0.97
end as product_pricesell,
product_price1,
product_price2
FROM
(
SELECT
G_SID as "product_sku",
G_NAME as "product_name",
price as "product_price1",
(SELECT TOP 1 SG_PRICE FROM TBL_SUPPLIERS_GOODS WHERE SG_G_ID = G_ID AND SG_S_ID = 7 AND SG_PRESENT = 1) as "product_price2"
FROM TBL_GOODS
WHERE G_ACTIVE = 1
AND G_PRESENT = 1
) t


Так же рекомендуем вам ознакомится с какой-нибудь литературой по T-SQL для лучшего понимания работы системы управления базами данных Microsoft SQL Server. Данную информацию достаточно легко найти в интернете, т.к. это одна из самых распространённых СУБД.
Пользователь оффлайн Распечатать
 

23.11.2015 22:04

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
Спасибо за помощь, уже обложился книжками изучаю.
Пользователь оффлайн Распечатать
 

23.11.2015 22:54

maxtelt


Пользователь iNETsHOP

Тема начата

Количество сообщений   115
Зарегистрирован:   03-12-2014, 12:33:15
Заметил неточность в запросе мы указывали наличие товара(SG_S_ID = 7 AND G_PRESENT = 1), а по факту товара у этого поставщика нет а выводе появляется. Скрин прилагаю.
Прикрепленные файлы
Пример1.jpg   ( 4 Просмотров | 243.2 KB )
Пользователь оффлайн Распечатать
 

23.11.2015 22:57

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Расчет цены продажи с учетом конкурента
Да, ошибка. G_PRESENT - это признак наличия у товара каталога, SG_PRESENT - признак наличия у товара поставщика.
Пользователь оффлайн Распечатать
 

Распечатать  |  Следующая тема  |  Предыдущая тема
Перейти
 

Статистика форума
Тем: 506, Сообщений: 3222, Пользователей: 2257
Приветствуем новичка по имени L9800708
Ближайшие дни рождения
Сегодня именинников нет


iNETsHOP - программа для формирования каталога товаров интернет-магазина и обработки прайсов Copyright 2007-2015 "Программа iNETsHOP - работа с прайс-листами поставщиков для интернет магазинов ®" iNETsHOP - обработка, объединение, анализ прайсов поставщиков и конкурентов