Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Поддержка] Генерируемый ПРАЙСЛИСТ .XLS для OcStore 1.5.x


kur1977

Recommended Posts

интересует модуль. ссылки на демо битые. есть рабочие?

Ссылки поправил. Очень странно- они были совсем другие.

Вопрос к модераторам- как так могло получиться, что ссылки на демо побились?

Надіслати
Поділитися на інших сайтах

  • 3 weeks later...
  • 2 weeks later...

Почитайте описание. Там по этому поводу красным выделено.

А по существу - если у вас на хостинге не сильно режут лимит памяти и время выполнения скрипта - то все будет ок.

Надіслати
Поділитися на інших сайтах

Приобрел сей модуль.
Протестировал на чистой, оригинальной opencart всё работает ок, но перенёс на свой магазин и xls файл выдает ошибку:

<b>Notice</b>: iconv() [<a href='function.iconv'>function.iconv</a>]: Detected an illegal character in input string in <b>/var/www/user/data/www/electronicset.ru/catalog/controller/product/xls_pricelist.php</b> on line <b>527</b><b>Notice</b>: iconv() [<a href='function.iconv'>function.iconv</a>]: Detected an illegal character in input string in <b>/var/www/user/data/www/electronicset.ru/catalog/controller/product/xls_pricelist.php</b> on line <b>527</b>

 

товар не выгружает. Подскажите в чём косяк?

 

PS: в магазине чуть больше 250 наименований товара

Надіслати
Поділитися на інших сайтах


Перекачайте пожалуйста модуль. Специально для таких случаев, как ваш я там добавил папку ADD. Скопируйте ее содержимое на сервер с заменой.

Надіслати
Поділитися на інших сайтах

Уважаемый kur1977. Убил час - на изучения файла xls_pricelist.php

И в итоге понял что файл xls_pricelist.php в папке add/catalog/controller/product/ и тот же файл xls_pricelist.php в папке upload/catalog/controller/product/ идентичный.

В чём является различие этих файлов для исправления моей ошибки "Notice: iconv() : Detected an illegal character in input string" ??

Надіслати
Поділитися на інших сайтах


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

UPD: исправил. Перекачайте модуль.

Надіслати
Поділитися на інших сайтах

Купил модуль уже после пометки, что битый... Работает отлично, около 2500 товаров в магазине (правда, не требуются картинки в прайс-листе), лимит памяти 64М. Это плюс.

Теперь о минусах.

Для генерации .xls используется модуль PEAR  Spreadsheet_Excel_Writer, который поддерживает только BIFF5 (http://pear.php.net/package/SpreadSheet_Excel_writer - пруфлинк, выдержка из описания: "It currently supports the BIFF5 format (Excel 5.0), so functionality appeared in the latest Excel versions is not yet available."), это означает, что поддерживаются только строки длиной менее 255 символов, и, самое для меня важное: кириллица некорректно отображается в OpenOffice/LibreOffice (корректно только в MS Excel)...

Решение проблемы с кириллицей можно найти тут: http://forum.vingrad.ru/forum/s/3cf58d0639f4b50bd7090ae0dfa27fc0/topic-263846/anchor-entry1900244/0.html

Решить проблему с ограничением длины строки можно лишь продолжив разработку Spreadsheet_Excel_Writer, т.к. разработчик его забросил:D

Автор, почему Я пишу эти строки, а не Вы? Поправьте свой модуль.

Надіслати
Поділитися на інших сайтах


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

Заметьте - Microsoft Excell нормально работает с генерируемым файлом. А вот родной формат для OpenOffice Calc - это не .xls, а .ods. Так что предъявленные выше "минусы" не обоснованы.

Может предложите разработчикам сего пакета поправить его, чтоб читал BIFF5?

И да. Наверное напишу в описании, что поддержка каких-либо продуктов, отличных от Microsoft Excell не гарантируется. Дабы не было больше подобных постов.

Надіслати
Поділитися на інших сайтах

1. Я ваше авторство и ваш выбор не оспариваю (и даже о причинах догадываюсь);

2. Было бы странно, если бы MS Excel не имел обратной совместимости со своими же файлами. И столь же странно было бы просить разработчиков свободных офисных пакетов просить включить в свой продукт поддержку формата Microsoft Excel 95...

3. Попробуйте доказать необоснованность данных минусов заказчику, у которого везде OpenOffice стоит (заметьте, на 255 символов мне как-то пофиг, но нечитаемые русские символы...), и вы меня поймёте;

4. Если вам так трудно поправить 2 строчки в 2-ух файлах ради ОСТАЛЬНЫХ своих пользователей (ибо я в состоянии и сам поправить всё, что мне нужно), то тогда уж в описании, например, в скобках, дайте более чёткую формулировку: в OpenOffice/LibreOffice нечитабельна кириллица... Ибо без уточнения ваше "не гарантируется" можно трактовать как "может, работает, может, не работает"...

 

Всё, "подобных постов" больше не будет, потому что вступать в дискуссии у меня нет ни времени, ни желания. Надеюсь, что помог другим пользователям, столкнувшимся с данной проблемой.

Печально, что вы увидели в моём посте только критику и не увидели похвалы.

  • +1 1
Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

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

 

Как отследить поведение модуля? Может ли проблема быть в хостинге (т.е. в дополнениях которые нужны для генерации прайса)?

Надіслати
Поділитися на інших сайтах


Ну вобщем работает, но есть ньюанс. Если я включаю на хосте переключатель "PHP как CGI" то прайс удачно сохраняется при нажатии на кнопку, но если я ставлю переключатель в положение "PHP как модуль Apach" прайс не формируется. Я бы оставил в положении "PHP как CGI" но тогда ряд других модулей не работает. Жду Ваших рекомендаций.

 

У меня точно также. Удалось ли решить проблему?

Надіслати
Поділитися на інших сайтах


Полпробуйте следующее:

1) в файле catalog\controller\product\xls_pricelist.php

после строчек

if($method=='view'){ 
			$workbook = new Spreadsheet_Excel_Writer(); 
			$workbook->send("price_".$this->xls_pricelist_language['code'].".xls"); 
		}else{
			$workbook = new Spreadsheet_Excel_Writer(DIR_DOWNLOAD."price_".$this->xls_pricelist_language['code'].".xls"); 
		}

 

добавьте 

$workbook->setTempDir(ini_get('upload_tmp_dir'));

 

Если это не поможет - 

 

2) Отключите open_basedir на сервере.

 

А вообще скорее всего проблема с правами на запись в папку tmp.

Поидее оба из предложенных мною варианта должны помочь.

  • +1 1
Надіслати
Поділитися на інших сайтах

Полпробуйте следующее:

1) в файле catalog\controller\product\xls_pricelist.php

после строчек

if($method=='view'){ 
			$workbook = new Spreadsheet_Excel_Writer(); 
			$workbook->send("price_".$this->xls_pricelist_language['code'].".xls"); 
		}else{
			$workbook = new Spreadsheet_Excel_Writer(DIR_DOWNLOAD."price_".$this->xls_pricelist_language['code'].".xls"); 
		}

 

добавьте 

$workbook->setTempDir(ini_get('upload_tmp_dir'));

 

Если это не поможет - 

 

2) Отключите open_basedir на сервере.

 

А вообще скорее всего проблема с правами на запись в папку tmp.

Поидее оба из предложенных мною варианта должны помочь.

 

Огромное спасибо!

Мне помог первый способ, а то на виртуальном хостинге все работало, а на VPS ничего не генерилось и в предпросмотре создавался пустой файл.

Надіслати
Поділитися на інших сайтах

Автору: купил, весьма полезное дополнение!

 

Мысли-предложения.

 

1 Мысль. Чем больше в магазине товаров и категорий - тем более потребность в подобном функционале и тем менее подходит сегодняшняя реализация. Поскольку:

- хостер лимитирует время (нагрузку) на генерацию большого прайса (особенно с картинками),

- большой файл получается неудобочитаемым, в том числе из-за НЕВОЗМОЖНОСТИ сейчас отразить в нём подкатегории в категориях.

1 Предложение. 

- реализовать (настраиваемые админом по длительности) паузы при генерации прайса,

- реализовать генерацию большого прайса с отображением подкатегорий в категориях

  а) на листе прайса,

  б) на вкладках документа xls, подкатегории - на листах вкладок категорий (настройка из админки "категории на вкладках"- да-нет).

 

2 Мысль. Одним юзерам сайта нужен прайс с картинками, другим  - нет.

2 Предложение. Реализовать генерацию и хранение в /download одновременно двух прайсов: price.xls и price_image.xls

 

3 Мысль. Чем больше в магазине товаров и категорий - тем больше юзеры склонны к заказу товаров через прайс xls (с колонкой "Заказ.кол-во" и встроенными в формулами авторасчёта суммы и скидок), а не корзину сайта.

3 Предложение. Реализовать. Возможно - с интеграцией модуля https://opencartforum.com/files/file/414-skidki-ot-summy-zakaza-modul

 

Спасибо!

Надіслати
Поділитися на інших сайтах


Купил модуль, спасибо автору. Есть один момент. Мне надо, чтобы выводились целиком аттрибуты товара (их немало). Однако колонка, где выводится аттрибуты, просто режется. Как можно снять ограничение у поля?

Надіслати
Поділитися на інших сайтах


Купил модуль, спасибо автору. Есть один момент. Мне надо, чтобы выводились целиком аттрибуты товара (их немало). Однако колонка, где выводится аттрибуты, просто режется. Как можно снять ограничение у поля?

https://opencartforum.com/topic/13332-generiruemyi-praislist-xls-dlia-ocstore-15x/page-7#entry145419

 

оно?

Надіслати
Поділитися на інших сайтах

нет, этот фикс я уже попробовал. решил проблему с картинками, но моя проблема и без картинок появляется.

 

Например во втором столбце вижу следующее:

Apple iPhone 5
 (Процессор:  Тип процессора - Apple A6, Тактовая частота (МГц) - 1000)
 (Память:  Тип процессора - Apple A6, Тактовая частота (МГц) - 1000, Оперативная память (Мб): - 1024, Flash-память (Гб) - 16)
 (Коммуникации:  Тип процессора - Apple

 

Как сделать, чтобы не обрезало?

 

Да и я не пойму немного, похоже что-то с аттрибутами..

 

Надеюсь, что моя проблема будет решена.

Змінено користувачем olegfusion
Надіслати
Поділитися на інших сайтах


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

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.