Не работает импорт из csv

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



Импортирую прайс 350 строк. Импорт, из ошибок, на все мои «пустые» товары, показывает следующее:

[2014-02-22 00:52:47] (ERROR @ /core/components/minishop2/import/csv.php)

Error on create: 
Array
(
    [0] => uri: Ресурс с идентификатором 547 уже использует URI diski/disk-replay-b111-s017511.html. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI» чтобы вручную заменить его.
    [1] => alias: Ресурс с идентификатором 547 уже использует URI diski/disk-replay-b111-s017511.html. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI» чтобы вручную заменить его.
)

Из ошибок, если не считать отсутствующую картинку на сервере, это все.

Ну, во первых, ресурс с идентификатором 547, это и есть диск replay-b111 с алиасом disk-replay-b111-s017511. Все артикулы в прайсе, псевдонимы — они все уникальные, повторений нет, я трижды проверил. Прайс заливался, на этом сайте, впервые. Откуда взяться этой ошибке?

Подскажите, пожалуйста, что к чему.
Пашкович Дмитрий
21 февраля 2014, 21:19
modx.pro
3 492
0

Комментарии: 33

Василий Наумкин
22 февраля 2014, 08:31
0
Видимо, очень срочная проблема, раз ты и на почту 2 раза написал, и здесь тему создал.

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

Доступы для сайта отправил тебе на почту.

Вообще, на будущее — все сообщения об ошибке URI генерирует MODX, а не скрипт импорта. И раз генерирует, значит ошибка есть.
    Пашкович Дмитрий
    22 февраля 2014, 13:55
    0
    Видимо, очень срочная проблема, раз ты и на почту 2 раза написал, и здесь тему создал.
    Не понимаю, зачем нужно было это писать.

    Вообще, на будущее — все сообщения об ошибке URI генерирует MODX, а не скрипт импорта. И раз генерирует, значит ошибка есть.
    Т.е. импорт работает как надо, а раз и настройки ms2 у меня такие же, значит проблема не в них? Я правильно интерпретировал Ваш ответ?
      Василий Наумкин
      22 февраля 2014, 15:10
      0
      Не понимаю, зачем нужно было это писать.
      По моему, очевидно, что я выражаю недовольство. Могу делать это в еще более очевидной форме.

      Я правильно интерпретировал Ваш ответ?
      Я потратил время, взял ваш csv файл, создал сайт, продемонстрировал, что все работает и прислал вам доступы от него, чтобы вы самостоятельно могли это проверить.

      Не знаю, чем еще могу вам быть полезен и что в этой ситуации нужно интерпретировать.
        Пашкович Дмитрий
        22 февраля 2014, 15:32
        0
        Не понимаю, зачем нужно было это писать.
        Вы не отвечали мне лично, хорошо, мало ли чем Вы заняты, у Вас нет сейчас на меня времени, или желания.
        На то, что проблема срочная, я намекал в каждом из своих писем, именно поэтому я не стал дальше Вас дергать, и создал тему на блоге, где другие специалисты тоже смогут мне помочь.

        Я все еще не понимаю, чем вызвал Ваше недовольство, и все еще не понимаю, зачем было упоминать о личной переписке здесь, на блоге.

        Я потратил время, взял ваш csv файл, создал сайт, продемонстрировал, что все работает и прислал вам доступы от него, чтобы вы самостоятельно могли это проверить.
        Спасибо Вам за это. Я получил доступы, «прошерстил» все настройки, импортировал файл самостоятельно — но все это не помогло, к сожалению, решить мою проблему. Я не понимаю логики ошибки, если так можно выразиться. Все что я для себя отметил, это то, что на тестовом сайте отсутствует расширение полей у товаров.

        Я правильно интерпретировал Ваш ответ?
        Вы — специалист. Я — неуч, надо признать. Мы говорим, иногда, на разных языках, и я изо всех сил стараюсь правильно понимать то, что Вы пишете, чтобы найти решение для своей проблемы. Перестаньте, пожалуйста, думать что я язвлю Вам.
          Василий Наумкин
          22 февраля 2014, 16:28
          0
          Все что я для себя отметил, это то, что на тестовом сайте отсутствует расширение полей у товаров.
          Это никак не влияет. Ошибка в том, что при создании новых товаров получаются одинаковые uri.

          Так что копать надо в то, как у вас генерируются uri для страниц. На тестовом сайте нет никаких расширений для этого, даже translit.

          Ради интереса можно попробовать создать «глючный» товар вручную. И если словится такая же проблема с uri — то надо что-то менять в настройках friendly urls.
            Пашкович Дмитрий
            22 февраля 2014, 16:52
            0
            Ошибка в том, что при создании новых товаров получаются одинаковые uri.
            Просто я думал, что если в прайсе, указать для импорта все эти «конфликтные» поля, то проблем с этим возникать не должно.

            Так что копать надо в то, как у вас генерируются uri для страниц.
            Да, теперь я понимаю проблему, и её логику, спасибо Вам. И судя по всему, для моего сайта, единственное решение, которое я вижу, это метод предложенный Владимиром ниже: позволять системе, на стадии создания товара, без проблем генерировать псевдонимы по id, а потом следующим импортом (предварительно отключив «id товара как псевдоним») перезалить псевдонимы на нужные. Потому что, как вы верно отметили ниже, псевдонимы очень важны для оптимизации, и они никому не нужны вида: 764.

            В любом случае, если Вы видите способ проще — пожалуйста, расскажите.
      Александр
      02 марта 2015, 09:11
      0
      Василий, нужна Ваша помощь.
      Думаю этот вопрос много кого будет интересовать, при импорте товара.
      https://modx.pro/help/4730/
      Олег Сергеевич
      22 февраля 2014, 14:39
      0
      Писал уже на эту тему, но видимо никто не сталкивался modx.pro/help/2042/
      Причем не импорт, а простое копирование категории с товарами.
      В логе такие же ошибки связанные с URI. Отключение ЧПУ не помогает. Так и не решил проблему.
      Сделал вывод, что категории с товарами лучше не копировать.
        Пашкович Дмитрий
        22 февраля 2014, 15:00
        0
        Скажите, Вы, для твоих товаров, добавляли новые поля? bezumkin.ru/modx/minishop2/classes/910/
        Просто для сравнения ситуаций интересуюсь, авось натолкнет на что-нибудь.
          Василий Наумкин
          22 февраля 2014, 15:12
          0
          Ну если ресурсы называются одинаково, то и alias для них будет сгенерирован одинаковый.

          Отключи ЧПУ и не будет этой проблемы.
            Пашкович Дмитрий
            22 февраля 2014, 15:35
            0
            Чтобы не возникало проблем с одинаковыми названиями, уникальный alias, в моем случае, генерируется еще в прайсе, и товар его получает при импорте. Key, у меня, это article, и он тоже, у каждого товара, уникальный, даже у товаров с одинаковыми названиями.

            Все это делалось для того, чтобы могли существовать одинаковые по названию товары, но с разными параметрами.
          Володя
          22 февраля 2014, 15:43
          +1
          Поставьте в настройках minishop2 — генерировать alias товаров из id… на 99 процентов уверен что проблемы при импорте не будет.
            Василий Наумкин
            22 февраля 2014, 16:29
            0
            С одной стороны — да.

            С другой, человеку нужны friendly urls.
              Володя
              22 февраля 2014, 16:44
              0
              ну я уже мучался с импортом товаров, правда не через твой скрипт, а через msklad и ошибка эта — она то есть, то ее как бы нет. Зависимости когда она появляется не нашел. Скорее всего это какие внутренние дела MODX и мне пока трудно понять в чем дело… Понятно что связанно с генерацией алиаса ресурса…
              Пашкович Дмитрий
              22 февраля 2014, 16:36
              0
              Поставил, помогло. Только я не знаю, не хватило ли мне процессорного времени или еще чего, но импорт выдал 502 Bad Gateway и успел только 247 строк обработать. Зато пустых товаров нет. Так как мне нужен alias определенного вида, для оптимизации, я следом сделал еще один импорт, где (предварительно отключил «id товара как псевдоним») и перезалил псевдонимы. И даже в таком случае, пустых, по прежнему, не появилось. Видимо «суматоха» возникает именно на этапе создания товара.

              В любом случае, огромное спасибо!
                Володя
                22 февраля 2014, 16:47
                0
                ну если у вас товаров не много, то поставьте customurl — им можно обработать псевдонимы…
                Если же товаров за несколько тысяч — то не стоит…
              Пашкович Дмитрий
              22 февраля 2014, 17:18
              0
              По поводу 502 ошибки, которая сбрасывает импорт. Еще на старом сайте, я обратился к службе поддержки своего хостинга, и поначалу мы размышляли об увеличении процессорного времени, чтобы я мог нормально заливаться, не по 200 товаров со сбросом, но потом мне кинули это:



              Объясните, пожалуйста, что это точно значит, и как мне лучше всего поступить, чтобы добиться хороших объемов при импорте?
              Пашкович Дмитрий
              23 февраля 2014, 18:08
              0
              Не знаю как мне быть. Перепробовал трех разных хостеров, самые мощные тарифы, которые должны выдерживать колоссальную нагрузку.
              На одном хостинге, в импорте нет пустых товаров, да и вообще в целом ошибок, но заливаться нормально невозможно, пока не купишь самый расширенный, по процессорному времени, памяти и таймаутам ожидания, тариф.
              На других хостингах, импорт выдает пустые хоть ты тресни: ставь id как псевдоним, или еще чего не делай. Да и вообще, работает крайне невнятно, хотя все условия для него созданы. Плюс ко всему, крашится админка МОДХ, но это другой разговор.
              И все, как один, мне говорят следующее: скрипт не оптимизирован, и процессорное время, и вообще ресурсы, потребляет неравномерно, и через чур много.

              Не поймите меня не правильно, но что мне делать?
                Володя
                23 февраля 2014, 18:18
                0
                Свой сервер, выставите таймауты как вам нужно, настройки как нужно… только там все в ваших руках…
                  Пашкович Дмитрий
                  23 февраля 2014, 18:26
                  0
                  Ну не хватит мне сейчас «своих знаний» для всего этого, включая его поддержку, если понадобится.
                  Да и тем более, я же написал: мне предоставили протестировать тариф, на котором «слон бы мог поселиться», т.е. со всевозможными максимальными условиями для импорта — и все равно, импорт показывал себя, как минимум, странно. 700 наименований, при таких условиях, за 218 секунд… ну, честно, я не знаю. По этому и хочу спросить, может мне и сервер свой не поможет? Может «загвоздки» в другом?
                    Володя
                    23 февраля 2014, 19:03
                    0
                    Ну разговор ни о чем… какие то максимальные условия, какой то слон…
                    Вы говорите про 700 наименований, но опять же что там еще в импорте? возможно у вас там 100 картинок к единице товара, возможно свойств километр…
                    Нет конкретики и никто вам в даннном случае не поможет…
                    нет знаний и желания разобраться в своем импорте — наймите за деньги…
                      Пашкович Дмитрий
                      23 февраля 2014, 19:24
                      0
                      но опять же что там еще в импорте?
                      Если бы в моем импорте, было бы что-то сверхъестественное, я бы не тратил столько времени на обсуждения, и давно бы заплатил специалисту.
                      Расширенных, вручную, полей несколько штук, стандартная таблица свойств ms2 и картинка, специально обработанная для web. Никаких километров, никаких сотен.
                      Знаний нет, желания предостаточно. Конкретикой я, вроде, делюсь, только вот это не помогает, пока что.
                        Володя
                        23 февраля 2014, 19:59
                        0
                        ну как вы описали, то вполне пойдет любой серв, только таймауты увеличить… ничего сверъестественного.
                Пашкович Дмитрий
                23 февраля 2014, 20:46
                0
                Немного не по теме, но все же. Подскажите, поле article максимально вмешает 50 символов, если я правильно понял, можно это как-то расширить?
                  dapin
                  12 марта 2015, 11:53
                  0
                  Интересно, а за прошедший год решить проблему как-то удалось?
                    Ilya Ev
                    03 сентября 2015, 15:26
                    0
                    Подскажите может кто сталкивался. Делаю импорт скриптом. Все ок, товары создаются но вот с картинками странная беда. файл заливается но превьюшки на него не создаются и в консоли вот такая бяка.

                    [2015-09-03 12:21:02] (ERROR @ ./core/components/minishop2/import/csv.php) Could not generate thumbnail for "/images/products/190/ee8dc207268de08658577c4aa3eb65d189f0bb18.jpg". Array
                    (
                        [0] => phpThumb() v1.7.13-201406261000 in file "phpthumb.class.php" on line 220
                        [1] => setCacheDirectory() starting with config_cache_directory = "/var/www/site/www/core/cache/phpthumb/" in file "phpthumb.class.php" on line 961
                        [2] => setting config_cache_directory to realpath(/var/www/site/www/core/cache/phpthumb) = "/var/www/site/www/core/cache/phpthumb" in file "phpthumb.class.php" on line 989
                        [3] => setSourceFilename(/var/www/site/www/ms_XyPDWY) set $this->sourceFilename to "/var/www/site/www/ms_XyPDWY" in file "phpthumb.class.php" on line 271
                        [4] => $AvailableImageOutputFormats = array(text;ico;bmp;wbmp;gif;png;jpeg) in file "phpthumb.class.php" on line 925
                        [5] => $this->thumbnailFormat set to $this->config_output_format "jpeg" in file "phpthumb.class.php" on line 936
                        [6] => $this->thumbnailFormat set to $this->f "jpeg" in file "phpthumb.class.php" on line 943
                        [7] => $this->thumbnailQuality set to "90" in file "phpthumb.class.php" on line 953
                        [8] => $this->sourceFilename set to "/var/www/site/www/ms_XyPDWY" in file "phpthumb.class.php" on line 849
                        [9] => SetCacheFilename() _src set from md5($this->sourceFilename) "/var/www/site/www/ms_XyPDWY" = "7e14e76592195a2eb1a3a6a7d6eed58c" in file "phpthumb.class.php" on line 3443
                        [10] => SetCacheFilename() _par set from md5(_bgffffff_farC_h180_w180_dpi150_q90) in file "phpthumb.class.php" on line 3476
                        [11] => starting ExtractEXIFgetImageSize() in file "phpthumb.class.php" on line 3236
                        [12] => GetImageSize(/var/www/site/www/ms_XyPDWY) says image is 1008x813 in file "phpthumb.class.php" on line 3246
                        [13] => $this->useRawIMoutput=false because "bg" is set in file "phpthumb.class.php" on line 1502
                        [14] => $this->useRawIMoutput=false after checking $UnAllowedParameters in file "phpthumb.class.php" on line 1508
                        [15] => ImageMagickThumbnailToGD() aborting because ImageMagickCommandlineBase() failed in file "phpthumb.class.php" on line 2203
                        [16] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3286
                        [17] => SetOrientationDependantWidthHeight() starting with "1008"x"813" in file "phpthumb.class.php" on line 3215
                        [18] => SetOrientationDependantWidthHeight() setting w="180", h="180" in file "phpthumb.class.php" on line 3231
                        [19] => EXIF thumbnail extraction: (size=0; type=""; 0x0) in file "phpthumb.class.php" on line 3343
                        [20] => starting SourceImageToGD() in file "phpthumb.class.php" on line 3603
                        [21] => Not using EXIF thumbnail data because $this->exif_thumbnail_data is empty in file "phpthumb.class.php" on line 3674
                        [22] => $this->gdimg_source is still empty in file "phpthumb.class.php" on line 3726
                        [23] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3728
                        [24] => phpThumb() v1.7.13-201406261000
                    http://phpthumb.sourceforge.net
                    
                    Error messages disabled.
                    
                    edit phpThumb.config.php and (temporarily) set
                    $PHPTHUMB_CONFIG['disable_debug'] = false;
                    to view the details of this error in file "phpthumb.class.php" on line 4050
                        [25] => phpThumb() v1.7.13-201406261000
                    http://phpthumb.sourceforge.net
                    
                    Error messages disabled.
                    
                    edit phpThumb.config.php and (temporarily) set
                    $PHPTHUMB_CONFIG['disable_debug'] = false;
                    to view the details of this error in file "phpthumb.class.php" on line 4050
                        [26] => SourceImageToGD() failed in file "phpthumb.class.php" on line 351
                    )
                    Если потом зайти в товар и сделать перегенерировать превью все ок, они создаются.
                    Раньше делал импорт не было проблем, даже не знаю как решать (

                    и в корне сайта создаються странные файлы вида ms_XyPDWY
                      Ilya Ev
                      03 сентября 2015, 15:47
                      1
                      0
                      попробовал обновить превьюхи скриптом bezumkin.ru/modx/minishop2/solutions/1465/ таже самая ошибка ((
                        Ilya Ev
                        03 сентября 2015, 16:20
                        0
                        нашел, может кому полезно будет

                        /etc/php5/cli/php.ini
                        memory_limit =-1
                        было((
                      yrkaseo
                      02 мая 2018, 12:13
                      -2
                      Добрый день. Может кто-нибудь для примера сможет сбросить прайс для загрузки.
                        Uladzislau
                        10 июня 2021, 23:05
                        0
                        Array
                        (
                        [0] => uri: Ресурс с ID 306 уже использует URI test-current. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI», чтобы вручную заменить его.
                        [1] => alias: Ресурс с ID 306 уже использует URI test-current. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI», чтобы вручную заменить его.
                        )

                        таже самая ошибка. товар удалил кэш почистил. id убрал чтоб новый товар заполняло с новыми id.
                        может кто уже решил проблему?
                          Uladzislau
                          10 июня 2021, 23:17
                          0
                          Message:
                          Array
                          (
                          [0] => uri: Ресурс с ID 307 уже использует URI test-current. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI», чтобы вручную заменить его.
                          [1] => alias: Ресурс с ID 307 уже использует URI test-current. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI», чтобы вручную заменить его.
                          )

                          добавил новый с уникальным id и все равно тоже самое! Как решить проблему?
                            Uladzislau
                            10 июня 2021, 23:43
                            0
                            [2021-06-10 23:42:59] (ERROR @ /home/######/public_html/core/components/msimportexport/model/msimportexport/msie.class.php: 5222) Ошибка для create:
                            Array
                            (
                            [id] =>
                            [article] => 111
                            [pagetitle] => Test current
                            [options-pets_size] => 1
                            [options-pets_age] => 1
                            [options-testimony] => 1
                            [options-taste] => 1
                            [options-appointment] => 1
                            [options-material] => 1
                            [options-structure] => 1
                            [options-petheight] => 1
                            [options-petweight] => 1
                            [options-features] => 1
                            [options-length] => 1
                            [options-wooltype] => 1
                            [options-season] => 1
                            [options-releaseform] => 1
                            [options-for_whom] => 1
                            [options-petview] => 1
                            [options-aquavol] => 1
                            [content] => 1
                            [vendor] => 19
                            [options-importer] => test
                            [made_in] => test
                            [price] => 100
                            [old_price] =>
                            [new] => 1
                            [popular] => 1
                            [favorite] => 1
                            [parent] => 3
                            [template] => 3
                            [published] => 1
                            [weight] => 10
                            [options-weights] => Array
                            (
                            [0] => 10
                            [1] => 20
                            [2] => 30
                            )

                            [class_key] => msProduct
                            [context_key] => web
                            [tvs] =>
                            )
                              Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                              33