Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Как быстро импортировать более 50000 товаров???

Как быстро импортировать более 50000 товаров???
Решил импортировать 1900 наименований (там 3 столбика - артикул, описание и цена), выдает ошибку:

Файл загружен.
Имя временного файла: /tmp/php2fBkhY
Имя файла пользователя: EPA_VAG_538-19946.xls
Размер: 1493208

Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 71 bytes) in /home/etkgroup/public_html/baby/admin/easypopulate.php on line 692

если импортировать по частям то это очень долго, учитывая то что это нужно будет делать через день.

Подскажите пож-ста как решить такой вопрос???


у тебя привязка к 1с бухгалтерии есть??
Если все через 1 с то импорт проще простого...
http://www.shopos.ru/forum/index.php?topic=2519.0


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


Стандартными средствами никак. Это больной вопрос, поднимается уже давно и неоднократно. Разработчики его решить, похоже, не хотят или не могут.
Только отдельной доработкой.


я за раз импортировал 30000 строк с помощью phpmyadmin. Т.е. сделал сначала таблицу в Excel'е, сохранил, открыл с помощью notepad++ и привел к виду SQL файла... И все импортируется в раз )) Если хочешь, могу помочь...



я за раз импортировал 30000 строк с помощью phpmyadmin. Т.е. сделал сначала таблицу в Excel'е, сохранил, открыл с помощью notepad++ и привел к виду SQL файла... И все импортируется в раз )) Если хочешь, могу помочь...


Интересно очень. Особенно  "привел к виду SQL файла". Если несложно, напишите подробнее.




я за раз импортировал 30000 строк с помощью phpmyadmin. Т.е. сделал сначала таблицу в Excel'е, сохранил, открыл с помощью notepad++ и привел к виду SQL файла... И все импортируется в раз )) Если хочешь, могу помочь...


Интересно очень. Особенно  "привел к виду SQL файла". Если несложно, напишите подробнее.

;D


;D ;D если я не ошибаюсь в phpmyadmin есть функция импортирования из екселовского файла 2003-2007, зачем тогда подгонять под

привел к виду SQL файла...


В phpmyadmin есть функция ЭКСпортирования в разные форматы, в том числе в EXCEL файл, но функции ИМпортирования из таких же форматов не видно.


Я в курсе что в phpmyadmin есть экспорт из EXCEL, но у меня он почему, то постоянно выводил ошибку! Поэтому я передел в SQL.
Подробное описание операции на примере импорта большого количества атрибутов:
1) Экспортируем из админки товаров (скачивается файл EPA.txt)
2) Открываем файл в EXCEL, смотрим id товаров, к которым необходимо добавить атрибут
3) Добавляем ручками атрибут(ы) к одному товару через админку
4) Заходим в phpmyadmin->"ваша_база"->os_products_attributes
6) Нажимаем "обзор" таблицы
7) Находим id товара к которому добавили атрибут
8) id товара будут соответствовать id атрибута и id значения атрибута
9) Создаем EXCEL файл
10) Делаем в нем колонки (названия писать не надо)
    products_attributes_id, products_id, options_id, options_values_id, options_values_price, price_prefix, attributes_model, attributes_stock, options_values_weight, weight_prefix, sortorder
11) Заполняем их с помощью формул для ускорения работы. У меня уходит минуты 3.
12) После чего сохраняем в формате *.txt
13) Открываем файл notepad++
14) И путем операций замены приводим к виду:
(10257, 1566, 3, 34, 0.0000, '+', '', 0, 0.0000, '+', 0),
(10258, 1566, 3, 33, 0.0000, '+', '', 0, 0.0000, '+', 0),
(10259, 1566, 6, 185, 0.0000, '+', '', 0, 0.0000, '+', 0),
(10260, 1566, 6, 186, 0.0000, '+', '', 0, 0.0000, '+', 0);
15) добавляем в начало файла строки:
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- База данных: `u1360500_default`
--

-- --------------------------------------------------------

--
-- Структура таблицы `os_products_attributes`
--

CREATE TABLE IF NOT EXISTS `os_products_attributes` (
  `products_attributes_id` int(11) NOT NULL auto_increment,
  `products_id` int(11) NOT NULL,
  `options_id` int(11) NOT NULL,
  `options_values_id` int(11) NOT NULL,
  `options_values_price` decimal(15,4) NOT NULL,
  `price_prefix` char(1) NOT NULL,
  `attributes_model` varchar(255) default NULL,
  `attributes_stock` int(4) default NULL,
  `options_values_weight` decimal(15,4) NOT NULL,
  `weight_prefix` char(1) NOT NULL,
  `sortorder` int(11) default NULL,
  PRIMARY KEY  (`products_attributes_id`),
  KEY `PRODUCTS_ID_INDEX` (`products_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=10261 ;

--
-- Дамп данных таблицы `os_products_attributes`
--

INSERT INTO `os_products_attributes` (`products_attributes_id`, `products_id`, `options_id`, `options_values_id`, `options_values_price`, `price_prefix`, `attributes_model`, `attributes_stock`, `options_values_weight`, `weight_prefix`, `sortorder`) VALUES
16) Сохраняем в формате sql
17) Импортируем
18) Радуемся
Таким образом можно импортировать и товары. У меня все приготовления занимают 15-20 минут.



9) Создаем EXCEL файл
10) Делаем в нем колонки (названия писать не надо)
    products_attributes_id, products_id, options_id, options_values_id, options_values_price, price_prefix, attributes_model, attributes_stock, options_values_weight, weight_prefix, sortorder
11) Заполняем их с помощью формул для ускорения работы. У меня уходит минуты 3.


Если я правильно понял, вы создаете файл с данными по атрибутам с чистого листа за 3 минуты. Это для скольких же товаров? Неужели для 30000 товарных единиц?


Если я правильно понял, вы создаете файл с данными по атрибутам с чистого листа за 3 минуты. Это для скольких же товаров? Неужели для 30000 товарных единиц?

Вы правильно поняли. Я пишу 1-2 строчки вручную. Следующие строки пишу формулами, а потом размножаю на сколько мне надо. Это стандартые функции EXCEL. А когда сохраняете в *.txt формулы автоматом заменяются на числа.


Можете для примера приложить готовый файл с формулами, где заполнены атрибуты, скажем, на 100 товаров?


Держите ) Первые 4 строки написаны в ручную, следующие 4 формулой и размножены...


Так у Вас все товары получают ОДИНАКОВЫЙ набор атрибутов. Видимо, Вам это подходит. А в реальных ситуациях чаще у разных товаров РАЗНЫЕ наборы атрибутов. НЕ пойдет Ваш способ, когда атрибуты у товаров РАЗНЫЕ. 


Таким образом можно импортировать и товары. У меня все приготовления занимают 15-20 минут.


И как же Вы будете так готовить 30000 товаров за 15-20 минут?  Может, приведете и пример файла для товаров, где  все формулами заполнено. Интересно посмотреть, как для многих товаров будете названия формулой писать.



Так у Вас все товары получают ОДИНАКОВЫЙ набор атрибутов. Видимо, Вам это подходит. А в реальных ситуациях чаще у разных товаров РАЗНЫЕ наборы атрибутов. НЕ пойдет Ваш способ, когда атрибуты у товаров РАЗНЫЕ.

С этим я полностью согласен... У меня магазин виниловых наклеек и там одинаковые атрибуты для всех товаров. http://the-s.ru/


И как же Вы будете так готовить 30000 товаров за 15-20 минут?  Может, приведете и пример файла для товаров, где  все формулами заполнено. Интересно посмотреть, как для многих товаров будете названия формулой писать.

И названия у меня тоже практически одинаковые (Наклейка на ноутбук Цветы №1, Наклейка на ноутбук Цветы №2...). Конечно такой вариант подойдет не всем.
Формула: =ТЕКСТ("Наклейка на ноутбук ";0)&U2&ТЕКСТ(" №";0)&AK2
где U2 - v_categories_name_2,  AK - порядковый номер 1, 2, 3 (после сохранения файла, столбец удаляем)
Аналогичная формула для картинок:
=ТЕКСТ("flowers_";0)&AK&("_0.jpg";0)


Вам можно только  позавидовать. Редко у кого названия товаров подчиняются простой арифметической закономерности.


Это да )) Но вот импорт атрибутов таким способом, по-моему, намного быстрее чем через админку.


По моим наблюдениям, практически любой  импорт намного быстрее, чем через админку ShopOs.


так а Импорт 2 совсем не работает?


Импорт 2  работает,  но не  совсем.
Точнее говоря,  Импорт 2  СОВСЕМ  НЕ  РАБОТАЕТ  в простейших ситуациях.


А где можно почитать о других способах импорта, не через админку Шопос?
Требуется импорт полей, которые не загружаются через админку.



А где можно почитать о других способах импорта, не через админку Шопос?
Требуется импорт полей, которые не загружаются через админку.


Вряд ли что-то готовое в природе существует.


Источник



Copyright ShopOS