Категории

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

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

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

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

Расширения

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

Модули

Шаблоны

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

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

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

Бизнес книги

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

Магазины на ShopOS

Хостинг для ShopOS

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

Курилка

Вот, конвертер в помощ

Доброго времени суток.
Столкнувшись с проблемой конвертирования Excel-вского прайса в удобоваримый формат для Shopos-а. Я написал на java такой вот конвертер и предлагаю его вашему вниманию в свободное пользование для ТЕСТИРОВАНИЯ на локальных серверах (пока не рекомендую ее для полноценного использования).
Данная версия очень проста и подходит, пока, только для первого заполнения. Для ее работы необходимо установить jre - http://www.oracle.com/technetwork/java/javase/downloads/index.html.
Не претендую на уникальность - просто вдруг кому поможет.
Обязательно прочтите README.txt!!!

Если выявите баги, ну и ваще будут вопросы или пожелания, пишите, чем смогу помогу.

В перспективе планирую дополнить функцией сверки прайсов для выявления изменения цен и появления новых позиций.

Удачных удач всем.

P.S. Вдогонку есть один глюк, который я не решил пока  - при экспорте дата в поле v_date_added выводит в магазине в таком виде 0000-00-00 00:00:00. Хотя в исходном файле для экспорта все ок.


Вы б написали поподробнее.
Что такое "удобоваримый формат для Shopos-а". В админке есть уже ДВА разных импорта...
Привести хотя б один пример пары  примеров файлов - исходного и полученного. А то, чтобы узнать результат, надо возиться с установкой ...
Чтоб для начала можно было понять, в чем польза предлагаемого средства.
По Вашему README  вроде бы выходит, что только два столбца можно обрабатывать, странно...
И как Вы считаете, простой пользователь сможет установить требуемое по данной ссылке?



Вы б написали поподробнее.
Что такое "удобоваримый формат для Shopos-а". В админке есть уже ДВА разных импорта...
Привести хотя б один пример пары  примеров файлов - исходного и полученного. А то, чтобы узнать результат, надо возиться с установкой ...
Чтоб для начала можно было понять, в чем польза предлагаемого средства.
По Вашему README  вроде бы выходит, что только два столбца можно обрабатывать, странно...
И как Вы считаете, простой пользователь сможет установить требуемое по данной ссылке?

Спасибо за внимание к данной фиче.  8)
А если серьезно, то все очень просто.
Большинство прайсов от компьютерных фирм идут в формате экселя, это первое. Последовательность в этих прайсах приблизительно такова:
                Шапка (название фирмы ну и прочее...)
код товара  | Наименование товара  |    цена |  кол-во
====================================
Ноутбуки   
====================================
Ноутбуки SAMSUNG
====================================
1277nb        |  Ноутбук Samsung        |  600    | 12
                  |    RV410 (NP-RV410-    |            |
                  |      A01UA) Black, 14"    |            |
                  |    (1366x768), Intel        |            |
                  |    Celeron DC T3500        |            |
====================================
И т.д. и т.п.
Исходя из этого мы имеем:
Категория - Ноутбуки
Под-категория - Ноутбуки SAMSUNG
Код - 277nb
Наименование товара - Ноутбук Samsung RV410 (NP-RV410-A01UA) Black, 14" (1366x768), Intel Celeron DC T3500 ...
Цена - 600
Количество - 12

Когда этих позиций 100, то понемногу можно это и ручками вбить в новый магазин, но когда из 5 000.

Согласно README.txt ЛЮБОЙ может подготовить себе файл для импорта.
Две позиции - НАИМЕНОВАНИЕ и ЦЕНА, потому, что мне большего и не надо было, но могу добавить и все остальное (если кому нужно).
Еще раз спасибо grig.  ;)



Согласно README.txt ЛЮБОЙ может подготовить себе файл для импорта.


В основном непонятно.

Смотрим README.txt . Там три части
1. Описание формата файла categories.txt
2.  Определение файла ignore.txt
3.  Формирование файла price.txt

Нигде не написано с заботой о читателе "Чтобы подготовить  файл для импорта, поделайте действия: 1, 2, 3".
Написаны какие-то разрозненные отрывочные сведения.
Например, с самого начала непонятно, какова роль  файла categories.txt. Его самим  готовить надо своими силами, или он создается предлагаемой программой?
В нескольких местах упоминается некий таинственный shopos.txt.  В дистрибутиве образца нет, объяснений нет. Простому пользователю самому догадываться надо?

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



Надеюсь, что понял вас grig
1. (из readme)
Формирование файла price.txt

Для формирования файла price.txt необходимо открыть Excel-левский прайс (ред. прайс вашего поставщика).

Отредактировать - осавить только

1-ая колонка наименования товара или категория или под-категория.

2-ая колонка цена

(пока только так)

Сохранить в текстовом формате с разделением табуляцией и именем price.txt
2. Теперь начинаем разбирать price.txt.
Последовательно изучая файл price.txt создаем файл categories.txt.
Пример:

НОУТБУКИ, НЕТБУКИ, ПЛАНШЕТНЫЕ ПК, сумки и аксессуары к ноутбукам|Ноутбуки|Ноутбуки|v_categories_name_1|

Ноутбуки SAMSUNG|Ноутбуки|SAMSUNG|v_categories_name_2|



Разделителем является вертикальная черта "|".

Первый столбик соответствует категории в прайсе price.txt

Второй столбик соответствует его варианту в shopos.txt

Третий столбик категория или под-категория товара в shopos.txt . Это выбирается согласно четвертому столбику:

v_categories_name_1 - категория

v_categories_name_2 - под-категория

Завершающая является вертикальная черта "|" обязательна.



Разборка примера:

Первая строка.

НОУТБУКИ, НЕТБУКИ, ПЛАНШЕТНЫЕ ПК, сумки и аксессуары к ноутбукам - категория в price.txt

Ноутбуки - категория в shopos.txt

Ноутбуки - категория в shopos.txt (обязательна для повтора в строке категорий)

v_categories_name_1 - определитель категории

Вторая строка.

Ноутбуки SAMSUNG - под-категория в price.txt

Ноутбуки - определение соответсвия категории в shopos.txt

SAMSUNG - под-категория в shopos.txt

v_categories_name_2 - определитель под-категории

shopos.txt - итоговый наш файл для импорта в shopos (он создается автоматически (это я упустил в README))

3. Определение файла ignore.txt

В данный файл необходимо вписывать строки, которые нужно пропускать в файле price.txt
Пример:

s. 1155

s. 1156

s. 1366

s. AM2

Кидаем price.txt, ignore.txt и categories.txt в папку с xls2shopos.jar и start.bat.
Запускаем start.bat и получаем shopos.txt, его родимого мы и импортируем в наш магазин.

И, во избежание недоразумения, привожу пример эксельского файла и итогового  shopos.txt


Теперь хотя бы понятна Ваша цель. 

1. Открываю файл-источник price.xls. В нем примерно 1300 строк. Часть из них заняты категориями, поэтому товаров должно быть никак не меньше 650.
А в файле-результате  shopos.txt  имеем всего 400 строк. Похоже, не все товары записывает Ваша программа.
2. первый товар в файле-источнике 32" Philips 32PFL5605H, LCD, 16:9, 1920x1080, 100Гц, 3xHDMI, SCART, PC-видео, audio 2x10Вт.  В файле-результате  таким и не пахнет. Поиск на фразу "LCD" дает нулевой результат. В частности, ни один их пяти первых товаров из первой категории в исходном прайсе  в итоговый файл не попал.
3. Если я правильно понял, файл categories.txt  Вы предлагаете формировать вручную. Просматривать файл, в котором порядка сотни категорий и выписывать их все и по определенным  правилам!  Это ж несерьезно - работа утомительная, и наверняка ошибки будут!  А для чего ж тогда программисты?
4. И не понятно, зачем для такой сравнительно несложной задачи  задействовать такие сложные системы программирования, что даже пользователю надо что-то дополнительно устанавливать.  С такой задачей вполне справился бы макрос в EXCEL или скрипт PHP - средства, которыми располагают сейчас практически все пользователи.



или скрипт PHP - средства, которыми располагают сейчас практически все пользователи.
А о каком скрипте речь идет?



Теперь хотя бы понятна Ваша цель. 

1. Открываю файл-источник price.xls. В нем примерно 1300 строк. Часть из них заняты категориями, поэтому товаров должно быть никак не меньше 650.
А в файле-результате  shopos.txt  имеем всего 400 строк. Похоже, не все товары записывает Ваша программа.
2. первый товар в файле-источнике 32" Philips 32PFL5605H, LCD, 16:9, 1920x1080, 100Гц, 3xHDMI, SCART, PC-видео, audio 2x10Вт.  В файле-результате  таким и не пахнет. Поиск на фразу "LCD" дает нулевой результат. В частности, ни один их пяти первых товаров из первой категории в исходном прайсе  в итоговый файл не попал.
3. Если я правильно понял, файл categories.txt  Вы предлагаете формировать вручную. Просматривать файл, в котором порядка сотни категорий и выписывать их все и по определенным  правилам!  Это ж несерьезно - работа утомительная, и наверняка ошибки будут!  А для чего ж тогда программисты?
4. И не понятно, зачем для такой сравнительно несложной задачи  задействовать такие сложные системы программирования, что даже пользователю надо что-то дополнительно устанавливать.  С такой задачей вполне справился бы макрос в EXCEL.

Есть не мало нюансов использования такого подхода.
1. наименование ваших категорий и под-категорий могут отличаться от прайса поставщика (я например переименовал категорию и разделил ее на несколько под-категорий).
2. в прайсе поставщика могут быть тоже ошибки - xEROX вместо Xerox иди XEROX.
О как.



или скрипт PHP - средства, которыми располагают сейчас практически все пользователи.
А о каком скрипте речь идет?

О том, который МОЖНО БЫЛО БЫ создать для решения этой задачи вместо того сложного решения, которое ВЫ предлагаете.



Есть не мало нюансов использования такого подхода.
1. наименование ваших категорий и под-категорий могут отличаться от прайса поставщика (я например переименовал категорию и разделил ее на несколько под-категорий).
2. в прайсе поставщика могут быть тоже ошибки - xEROX вместо Xerox иди XEROX.
О как.

Я же спрашиваю про КОНКРЕТНЫЙ ПРИМЕР, который Вы сами предложили.  В ДАННОМ КОНКРЕТНОМ СЛУЧАЕ  Ваша программа не замечает примерно половину товаров.  Специально выбрал и указал конкретный товар. Ожидалось, что Вы выясните на примере одного товара, почему Ваша программа работает неправильно.
И совсем толку никакого от общих фраз типа "Есть не мало нюансов", "наименование категорий и под-категорий могут отличаться", "в прайсе поставщика могут быть тоже ошибки".

Выходит, даже Вам самим трудно разобраться в своем же конкретном примере. А что ж делать тому, кто решит использовать Ваше произведение и наткнется на ошибки?




Есть не мало нюансов использования такого подхода.
1. наименование ваших категорий и под-категорий могут отличаться от прайса поставщика (я например переименовал категорию и разделил ее на несколько под-категорий).
2. в прайсе поставщика могут быть тоже ошибки - xEROX вместо Xerox иди XEROX.
О как.

Я же спрашиваю про КОНКРЕТНЫЙ ПРИМЕР, который Вы сами предложили.  В ДАННОМ КОНКРЕТНОМ СЛУЧАЕ  Ваша программа не замечает примерно половину товаров.  Специально выбрал и указал конкретный товар. Ожидалось, что Вы выясните на примере одного товара, почему Ваша программа работает неправильно.
И совсем толку никакого от общих фраз типа "Есть не мало нюансов", "наименование категорий и под-категорий могут отличаться", "в прайсе поставщика могут быть тоже ошибки".

Выходит, даже Вам самим трудно разобраться в своем же конкретном примере. А что ж делать тому, кто решит использовать Ваше произведение и наткнется на ошибки?

;D Если бы Вы были более внимательны, то заметили, что товар Плазмы, LCD Телевизоры умышленно игнорируется в categories.txt.
Это показывает, что конвертация может начинаться не с начала, а с пропуском части прайса по усмотрению.
Я вверху указывал, что ента прога для тестирования (кому нужно, что то более конкретное от ее - скажите, если смогу помогу).
Я не крутой программер в php чтобы писать плагин под shopos, тем паче, что я только-только стал разбираться с его внутренним кодом.
И чего Вы уважаемы такой слой  ;).
Если чего не ндравится, напиши свою ОЧЕНЬ правильную версию  8) и будешь молодец.



И, во избежание недоразумения, привожу пример эксельского файла и итогового  shopos.txt


Прошу прощения а что делать если код товара и его название в одной ячейке (пример прилагается) да и как вообще лучше всего это сделать



Если бы Вы были более внимательны, то заметили, что товар Плазмы, LCD Телевизоры умышленно игнорируется в categories.txt.

Получается дополнительно, что через categories.txt  можно что-то игнорировать, просто не указав какие-то категории. Наверное, это хорошо. В READme  только не написано про это.


Я не крутой программер в php чтобы писать плагин под shopos, тем паче, что я только-только стал разбираться с его внутренним кодом.

Зачем же тогда выбираете такие сложные средства? Не хотите PHP использовать - есть еще макрос в Excel.

5. Подхожу с другого конца. В файле-результате первый товар называется "Фотокамера Nikon CoolPix ...".  В файле-источнике такого нет. Пробовал поиск на слово Nikon, на слово CoolPix, ничего не найдено. Что бы это значило?



Прошу прощения а что делать если код товара и его название в одной ячейке (пример прилагается) да и как вообще лучше всего это сделать


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




И, во избежание недоразумения, привожу пример эксельского файла и итогового  shopos.txt


Прошу прощения а что делать если код товара и его название в одной ячейке (пример прилагается) да и как вообще лучше всего это сделать

Тебе код нужно удалить?





И, во избежание недоразумения, привожу пример эксельского файла и итогового  shopos.txt


Прошу прощения а что делать если код товара и его название в одной ячейке (пример прилагается) да и как вообще лучше всего это сделать

Тебе код нужно удалить?


Вот как вариант:
1. скачай прогу ниже.
2. в своем прайсе удали заголовок и последнюю строку.
3. сохрани его с названием delcode.txt в каталоге с распакованной прогой
4. после запуска батнике будет создан файл nocode.txt - в нем кода нет.
Сорри что задержал с ответам, малёха занят был.
Прога написана на java, для ее работы нужен jdk.


grig ты конечно Ветеран и все такое прочее. Но почему ты сам не написал кучу макросов и скриптов в помощь людям  ???.
Я как то уже задавал вопрос http://www.shopos.ru/forum/index.php?topic=4679.0  и ты чё ... по умничал и съехал с темы  8).
Научись или давать дельные ответы или не совать свой пятак, о как.  :D
В догонку к твоему вопросу:
удали файл shopos.txt
создай свои собственные ignore.txt и categories.txt
с генерируй  price.txt и будет тебе счастье  ;)

И вопросов не будешь задавать, все сам поймешь.
Если моя прога никому не нужна, удалим ее всем миро на...  ;D
Кстати, иногда создается впечатление, что на многие вопросы отвечает один и тот же человек но под разными никами. С чего бы то это. :o


Пересмотрел весь топик, grig я не прав.


Нет. Отделить код от названия



Нет. Отделить код от названия

Готово  ;)
Единственный нюанс (точнее два):
1. начальный файл будет с именем code.txt
2. на выходе получим tabcode.txt
(примеры в архиве)

Отпишитесь чего у Вас получилось.


Вопрос к разработчику, как на счет v_categories_name_3...4...5 и т.п. ?
Или работает только до v_categories_name_2. Просто понадобилось дерево категорий глубже двух, и скрипт вячески отказывается заносить в файл shopos.txt v_categories_name_3
Если всё же данная функция работает, то может подскажете как правильно это указать в categories.txt.... уже по всякому перепробывал, ничего не получилось.


здравствуйте подскажите как его установить? за ранние спасибо!


Источник



Copyright ShopOS