Перейти к содержимому


Фотография
- - - - -

Импорт/Экспорт

импорт импорт csv импорт материалов 220v

  • Закрытая тема Тема закрыта
Сообщений в теме: 65

#41 SmetDenis

SmetDenis

Отправлено 10 March 2015 - 08:47

| 113 uah | 41 | XXS | Синий | цена 2 |остаток 2 |  размер 2 | цвет 2|

А если у нас 10 вариаций? Как их отличать (читать как "отделять") другу друга?

 

Учтем что набор внутри вариации не постоянный, например в одной из них есть остаток и цена, а в другом их нет, зато есть цвет и размер.

В итоге, вашу строку можно трактовать десятками (если не сотнями) способами.

И это только одна строка, а что если будет 10 вариаций?

 

Пока что такой вариант не приемлем. Слишком большая каша.


  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#42 rihter2001

rihter2001

Отправлено 10 March 2015 - 09:58

Пока что такой вариант не приемлем. Слишком большая каша.

я понимаю что пока..

надеюсь в будущем будет адекватный импорт

т.к. тогда получается выгодно только для магазинчиков с небольшим количеством товара.  т.к . даже 200 позиций ручками вбивать упреешь или Csv перепиливать, что тоже не айс, а если надо цены массово поменять, опять ручками извращаться


  • 0

#43 Евгения

Евгения

Отправлено 10 March 2015 - 10:09

я понимаю что пока..

надеюсь в будущем будет адекватный импорт

т.к. тогда получается выгодно только для магазинчиков с небольшим количеством товара.  т.к . даже 200 позиций ручками вбивать упреешь или Csv перепиливать, что тоже не айс, а если надо цены массово поменять, опять ручками извращаться

Спорно оно все. Даже если вылизать csv, один фиг руками править приходится. У меня девочки сидят на связке exel+openoffice и.. не то чтоб совсем счастливы, но вполне довольны жизнью, потому что бывает на МНОГО хуже :)

 

З.Ы. Денис огромное спасибо за код в категориях. Работает :))) И от девочек вам тоже спасибо :)

 

И наверное его стоит выложить в рецепты. На новой версии еще не тестировала, но протестирую и выложу, хорошо? Штука очень полезная.


Сообщение отредактировал Евгения: 10 March 2015 - 10:11

  • 0

"Это бессмысленно" - сказал разум. "Это нелепо" - заметил опыт. "Это бесполезно" - отрезал здравый смысл. "О! Вот так нормально!" - обрадовался клиент.

Что, где лежит (тема-сборник про пути к файлам)


#44 rihter2001

rihter2001

Отправлено 10 March 2015 - 10:16

сидят на связке exel+openoffice

я на такой же связке сижу, но перебивать ручками около 1000 позиций это ппц , а цены массово как меняете?


  • 0

#45 Евгения

Евгения

Отправлено 10 March 2015 - 11:07

Формулами. :)

 

То есть у нас разложены товары по категориям. Выгружаем категорию, открываем exel, пишем формулу, сохраняем, перекодируем, выгружаем. 

 

Как вариант выгружаем производителя. Цены как правило по их прайсам меняются.


Сообщение отредактировал Евгения: 10 March 2015 - 11:08

  • 0

"Это бессмысленно" - сказал разум. "Это нелепо" - заметил опыт. "Это бесполезно" - отрезал здравый смысл. "О! Вот так нормально!" - обрадовался клиент.

Что, где лежит (тема-сборник про пути к файлам)


#46 rihter2001

rihter2001

Отправлено 10 March 2015 - 11:18

Формулами

пардоньте как вот это

value:113 uah; _balance:41; Размер:XXS; Цвет:Синий

можно запихнуть в формулу экселя?


создал тестовый вариант

2015-03-10_13-13-28.jpg

но ни при варианте

2015-03-10_13-10-57.jpg

ни при

2015-03-10_13-10-08.jpg

варианты цены не импортирует


  • 0

#47 Евгения

Евгения

Отправлено 10 March 2015 - 18:52

пардоньте как вот это

value:113 uah; _balance:41; Размер:XXS; Цвет:Синий

 

можно запихнуть в формулу экселя?

 

Колонки Value, значение, _balance, значение, Размер, значение, Цвет, значение и последняя колонка с сложением всех предыдущих с разделителем.

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

 

Сохраняем соответственно только те колонки, которые нам нужны.

 

Проблема возникает только один раз - создать вот такую здоровую дуру, а она получается реально здоровая, поэтому мы и делили на производителей и категории. Зато потом с выгрузками, сменами цен и т.п. проблем нет. Точнее они есть конечно, но в пределах разумного.

 

Еще с одними я извращалась в np++ и регулярными выражениями. Аналогично, один раз пишем регулярки, сохраняем и не имеем себе мозг.


Сообщение отредактировал Евгения: 10 March 2015 - 18:55

  • 0

"Это бессмысленно" - сказал разум. "Это нелепо" - заметил опыт. "Это бесполезно" - отрезал здравый смысл. "О! Вот так нормально!" - обрадовался клиент.

Что, где лежит (тема-сборник про пути к файлам)


#48 SmetDenis

SmetDenis

Отправлено 16 March 2015 - 06:09

В любом случае CSV будет накладывать свои ограничения.

И основное из них - это двумерная таблица (колонки x столбцы).

 

И все бы хорошо для простых полей, пока мы не пытаемся затолкать туда чуть больше чем просто строку.

Например - путь до картинки - без проблем даже для множественного поля.

А вот путь до картинки, где есть описание, alt, title и так чтобы множественное - уже большой вопрос.

 

Когда мы говорим о цене, то перед разработчиками встает головная боль, как вот это

<?php
$varName = array(
    '8ab2212c-520a-4b65-a4a4-8d093aea1744' => array(
        'variations'      => array(
            0  => array(
                '_value'    => array(
                    'value' => '10 usd',
                ),
                '_sku'      => array(
                    'value' => 'tshirt-first-base',
                ),
                '_balance'  => array(
                    'value' => '-1',
                ),
                '_discount' => array(
                    'value' => '0 eur',
                ),
                '_image'    => array(
                    'value' => 'images/tshirt-white.png',
                ),
            ),
            1  => array(
                '_value'                               => array(
                    'value' => '15 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-black-s',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-black.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 's',
                ),
            ),
            2  => array(
                '_value'                               => array(
                    'value' => '15 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-white-s',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-white.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 's',
                ),
            ),
            3  => array(
                '_value'                               => array(
                    'value' => '20 usd',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-black-m',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-black.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'm',
                ),
            ),
            4  => array(
                '_value'                               => array(
                    'value' => '20 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-white-m',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-white.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'm',
                ),
            ),
            5  => array(
                '_value'                               => array(
                    'value' => '25 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-black-l',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-black.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'l',
                ),
            ),
            6  => array(
                '_value'                               => array(
                    'value' => '25 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-white-l',
                ),
                '_balance'                             => array(
                    'value'  => '-1',
                    '_basic' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-white.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'l',
                ),
            ),
            7  => array(
                '_value'                               => array(
                    'value' => '30 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-black-x',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-black.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'x',
                ),
            ),
            8  => array(
                '_value'                               => array(
                    'value' => '30 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-white-x',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-white.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'x',
                ),
            ),
            9  => array(
                '_value'                               => array(
                    'value' => '35 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-black-xl',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-black.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'xl',
                ),
            ),
            10 => array(
                '_value'                               => array(
                    'value' => '35 eur',
                ),
                '_sku'                                 => array(
                    'value' => 'tshirt-first-white-xl',
                ),
                '_balance'                             => array(
                    'value' => '-1',
                ),
                '_discount'                            => array(
                    'value' => '0 eur',
                ),
                '_image'                               => array(
                    'value' => 'images/tshirt-white.png',
                ),
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'xl',
                ),
            ),
        ),
        'values'          => array(
            1  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 's',
                ),
            ),
            2  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 's',
                ),
            ),
            3  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'm',
                ),
            ),
            4  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'm',
                ),
            ),
            5  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'l',
                ),
            ),
            6  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'l',
                ),
            ),
            7  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'x',
                ),
            ),
            8  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'x',
                ),
            ),
            9  => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'черный',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'xl',
                ),
            ),
            10 => array(
                '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                    'value' => 'белый',
                ),
                '621c68de-a995-4302-acc6-543596657cf5' => array(
                    'value' => 'xl',
                ),
            ),
        ),
        'selected'        => array(
            '61ea0db8-ad23-4dd2-a2dc-d2f38c5cc970' => array(
                'черный' => 'черный',
                'белый'  => 'белый',
            ),
            '621c68de-a995-4302-acc6-543596657cf5' => array(
                's'  => 's',
                'm'  => 'm',
                'l'  => 'l',
                'x'  => 'x',
                'xl' => 'xl',
            ),
        ),
        'default_variant' => '6',
    ),
);

Затолкать в CSV и всем угодить :)

 

Этот код не с потолка. Это простейшая футболка №1 с бета сайта.

 

И тут есть небольшое но крайне важное условие. Импорт должен без проблем распознать каждое поле и положить его в нужную вариацию.

Шаг в право-влево => Расстрел на месте :)

 

Пока что положить каждое поле вариации в отдельную ячейку CSV -  не вариант.

 

PS Формулы очень удобная вещь, яб сказал это минимум необходимый для пользования таблицами.

А мой скромный опыт говорит, что 1С может в любом формате загружать и выгружать данные. Вот только 1С-ники ленятся...


  • 2
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#49 Na_uM

Na_uM

Отправлено 26 March 2015 - 17:03

Кто нить делал экспорт с последним обновлением? как результаты?

у меня данные что то в пляс пошли - как пример в материалах два строки адрес и телефон, в экспорте в графе адрес для одного материала правильно - адрес, для другого в той же графе - телефон, а в админке все правильно


  • 0

#50 flart

flart

Отправлено 06 April 2015 - 17:47

Тестирую экспорт. У меня никак не получается выгрузить корректно "Пользовательские поля"

Файл сбивается (все поля в данные в разброс идут), пробовал с разными разделителями.

 

Если не выбирать Пользовательские поля то тогда все ок. Подскажите как сделать экспорт этих полей ? 


  • 0

flart-small.png






Темы с аналогичным тегами импорт, импорт csv, импорт материалов, 220v

Click to return to top of page in style!