UMIhelp
Разработка сайта на UMI.CMS => Настройка системы и модулей => Тема начата: Babajka от 28 Сентября 2012, 16:19:59
-
Слышал о патче "mantis #13480", который помогает при загрузке большого объема данных. Но ни где найти его не могу. В частности, когда загружаю csv данные, выдает ошибку на какой либо строке. При этом по разному разбивал данные, все равно ошибки выдает. Кто нибудь подскажет где можно скачать этот патч или может подскажете решение данной проблемы?
-
а вы через что грузите свой csv? через контекстное меню в модулях типа каталог,новости и т.п. или через моуль "обмен данных"?
-
обмен данных
-
при загрузке происходит разбивка сплиттером на куски, так что ошибка скорее всего в синтаксисе самого csv файла.
Попробуйте загрузить 10 строк из этого файла, обратите внимание нет ли у вас ячеек с кириллицей не заключенные в кавычки, раньше этого было достаточно чтобы импорт споткнулся.
P.S. Вроде как при пересохранении в excel csv файла, кавычки пропадают
-
excel не пользуюсь принципиально как раз из-за этого. Но по какой то причине ошиби появляются.
-
Возникла мысль хоть и бредовая. В полях в csv фале если есть перенос строки на новую может возникнуть ошибка или все равно?
К примеру в одной ячейке вот такая строка:
"<p> Адресат <br />
</p>"
-
навряд ли, html поля спокойно скидывались. Вы попробовали импортировать файл с 2-3 строчками?
-
Все в порядке, загрузил 11 строк. Ни каких ошибок, все как было написано.
Конечно наверно лишняя информация, но на всякий... Я редактировал выгруженый csv файл, снес все товары и снова (отредактированные) заливаю обратно. Т.е. в excel они побывать точно не могли. Да и сильно измениться.
-
если время позволяет, попытайся исключить ошибочную строчку разбивая файл на части, в какой-то из них или в нескольких будут выскакивать ошибки.
Или можно подумать о том, чтобы поставить алерты в ядре в самом сплиттере csv
-
Пытался переносить проблемные строки в конец списка и продолжать загрузку. Но, через 100-200 строк опять ошибка появлялась. Да и страници грузилсь в корневую папку указаную при настройке импорта.
Или можно подумать о том, чтобы поставить алерты в ядре в самом сплиттере csv
А вот это мне вообще не понятно как это или хотя бы в каком направлении двигаться?
P.S.
И еще, на счет переносов строки в ячейках. Проверил удалив все, ошибки не прошли, но судя по ощущениям, грузятся быстрее, видимо не спотыкается на них.
-
Попался на стандартной ошибке. В ячейках в тексте, во вновь записаной информации были разделительные символы (в данном случае ";"). Из за этого ошибки были.
-
а сама ячейка, в которой был символ ;, была экранирована кавычками ? или даже с кавычками ошибка выводилась?
-
Была экранирована кавычками. В ячейках были спецсимволы HTML: quot; nbsp; ndash; из-за них он и ругался, но как то выборочно и не на все. Еще правда были вкрапления не в той кодировки (UTF-8) очень странно, но мелочи, ручками все легко правится.
Но вот вопрос, т.к. это ручками легко не правится. Есть ли прога или еще какой механизм, что бы заменять спецсимволы HTML на обычные символы?
PS: Если в ячейке учавствуют еще кавычки, это может как то не так трактоваться "системой"?
-
это уже вопрос к php, в одном проекте использовал целый комплекс обработки строки для последующей обработки через csv, но тут следует учитывать что я писал свой вариант csv экпорта и там была проверка на кавычки которые являются частью текста, плюс экранирование лишних символов
-
а сама ячейка, в которой был символ ;, была экранирована кавычками ? или даже с кавычками ошибка выводилась?
Так вот. Ячейка сама была экранирована. А символы как то можно экранировать, что бы его воспринимали UMI/csv как символ, а не как разделитель?