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

04.06.2009 15:08

dimon


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

Количество сообщений   10
Зарегистрирован:   23-05-2009, 13:39:17
Разделитель целой и дробной части числа
При импорте прайса поставщика, на стадии просмотра втянутых позиций (после нажатия кнопки Просмотреть), цена позиций отображается, но в прайс поставщика не затягивается. Видимо дело в разделителе целой и дробной части.
По сему вопрос:

А нельзя ли оператор CAST, преобразующий текст означающий число с разделителем - точкой (цена) в число, вставить в ту функцию, что уже у вас штатно заносит данные из таблицы #TEMP в прайс поставщика? Это добавило бы универсальности.
Пользователь оффлайн Распечатать
 

04.06.2009 15:53

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Автоматическое преобразование чисел
Этот вопрос несколько более широк, т.к. разделитель зависит от настроек самого сервера. Хотя идея с автоматическим преобразованием данных колонки цена хорошая.

На данныей момоент вы можете воспользоваться следующим SQL-скриптом для преобразования:
Код

update #TMP_PRICE
set PRICE = REPLACE(IsNull(LTRIM(RTRIM(CAST(PRICE as varchar(100)))), '0'), '.', ',');


Приведённый выше текст нужно вставить в поле Скрипт обработки суммарный схемы импорта прайса
Пользователь оффлайн Распечатать
 

04.06.2009 16:19

dimon


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

Тема начата

Количество сообщений   10
Зарегистрирован:   23-05-2009, 13:39:17
Стандартные вопросы
Хорошо бы рассмотреть кратко основные вопросы по этим скриптам. К примеру замена одного слова на другое, или получение в переменную значения поля, его модификация и запись обратно.

Кратко.

Кому нужно - разберется дальше.

Нужен первый шаг.
Пользователь оффлайн Распечатать
 

04.06.2009 16:34

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Скрипты обработки прайсов
Импортированный прайс записывается во временную таблицу формата:
Код

TABLE #TMP_PRICE(
[ID] [int] IDENTITY (1, 1) NOT NULL,
[ROW_NUMB] [int] NULL ,
[NAME] [text] COLLATE Cyrillic_General_CI_AS NULL,
[BRAND] [text] COLLATE Cyrillic_General_CI_AS NULL,
[SID] [text] COLLATE Cyrillic_General_CI_AS NULL,
[ARTIKUL] [text] COLLATE Cyrillic_General_CI_AS NULL,
[DESCRIPTION] [text] COLLATE Cyrillic_General_CI_AS NULL,
[NOTES] [text] COLLATE Cyrillic_General_CI_AS NULL,
[PRICE] [text] COLLATE Cyrillic_General_CI_AS NULL,
[WARRANTY] [text] COLLATE Cyrillic_General_CI_AS NULL,
[PRESENT] [text] COLLATE Cyrillic_General_CI_AS NULL,
[REST] [text] COLLATE Cyrillic_General_CI_AS NULL,
[CATEGORY] [text] COLLATE Cyrillic_General_CI_AS NULL,
[URL] [text] COLLATE Cyrillic_General_CI_AS NULL,
[IMAGE_URL] [text] COLLATE Cyrillic_General_CI_AS NULL,
[DESC_FULL] [text] COLLATE Cyrillic_General_CI_AS NULL,
[CURRENCY] [text] COLLATE Cyrillic_General_CI_AS NULL,
[CURRENCY_RATE] [text] COLLATE Cyrillic_General_CI_AS NULL,
[PRICE2] [text] COLLATE Cyrillic_General_CI_AS NULL,
[CURRENCY2] [text] COLLATE Cyrillic_General_CI_AS NULL,
[CURRENCY_RATE2] [text] COLLATE Cyrillic_General_CI_AS NULL,
[SERIES] [text] COLLATE Cyrillic_General_CI_AS NULL,
[PRODUCER_CODE] [text] COLLATE Cyrillic_General_CI_AS NULL,
[PARTY] [text] COLLATE Cyrillic_General_CI_AS NULL,
[COUNT_IN_PACKING] [text] COLLATE Cyrillic_General_CI_AS NULL,
[COLLECTION] [text] COLLATE Cyrillic_General_CI_AS NULL,
[SEASON] [text] COLLATE Cyrillic_General_CI_AS NULL,
[MIN_ORDER] [text] COLLATE Cyrillic_General_CI_AS NULL,
[DELIVERY] [text] COLLATE Cyrillic_General_CI_AS NULL,
[PRODUCER_COUNTRY] [text] COLLATE Cyrillic_General_CI_AS NULL
);


Назначения полей этой временной таблици надеемся понятны и соответствуют полям таблици товаров справочника товаров поставщиков.

Всё остальное - чистый Transact-SQL (T-SQL), литературы и информации по которому полно. В поставке самого MS SQL Server есть обширная справочная документауия именуемая Books online - которой обычно вполне хватает для начала, но она на английском.

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

17.03.2015 22:59

mora-85


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

Количество сообщений   17
Зарегистрирован:   29-07-2013, 17:46:32
Добрый вечер, есть проблемный прайс лист у которого цена разделена пробелом вида "7 000".
При загрузке данного прайса цену вроде видит, но при сравнении с товарами данного поставщика пишет что цена равна 0. Добавив в схему импорта, в скрипт суммарной обработки прайса запрос вида
UPDATE #TMP_PRICE
SET PRICE = REPLACE(CAST(PRICE as varchar(100)), ' ', '');

никакого эффекта не дало, пробел из цены не убирался.
Пользователь оффлайн Распечатать
 

17.03.2015 23:01

mora-85


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

Количество сообщений   17
Зарегистрирован:   29-07-2013, 17:46:32
кусочек проблемного прайса
Прикрепленные файлы
проблемный прайс.zip   ( 7 Просмотров | 6 KB )
Пользователь оффлайн Распечатать
 

18.03.2015 13:29

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Удаление/замена символа в цене при импорте прайс-листа
Обычно символ пробела имеет код 32, но так же есть другие символы, которые выглядят как пробел но имею другой код. В вашем случае "пробел" в цене имеет код 160, потому его можно удалить так:
Код

UPDATE #TMP_PRICE SET PRICE = REPLACE(CAST(PRICE as varchar(100)), CHAR(160), '');
Пользователь оффлайн Распечатать
 

18.03.2015 17:43

mora-85


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

Количество сообщений   17
Зарегистрирован:   29-07-2013, 17:46:32
Заменить пробел в цене
спасибо за ответ.
Пользователь оффлайн Распечатать
 

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

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


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