Администраторы группы

  • Аватар

Модераторы группы

  • Аватар

Обновления Vtiger CRM

Открытая группа активность: 1 нед., 2 дн. назад

В данной группе публикуются и обсуждаются обновления SalesPlatform Vtiger CRM.

Ошибки при изменении полей и сохранении обработчиков в версиях 701-201707 и 701-201711 [РЕШЕНО] (записей: 9)

← Форум группы   Все форумы
  • Аватар Nik - 3 мес., 3 нед. назад:

    Приветствую всех!

    Пожалуйста, помогите исправить ошибку, которая появилась после миграции на версию 7.0.1.

    В логе миграции последних версий ошибок нет:
    650-201707 ==> 701-201707
    701-201707 ==> 701-201711
    а вот при миграциях предыдущих версий ошибок много, но система работала нормально, а в последних версиях проявились ошибки.

    СОКРАЩЕННЫЙ файл migration_log, в котором выбросил лишнее и оставил ошибки:
    https://www.dropbox.com/s/16wvalbecwjrhbf/migration_log.pdf?dl=0

    Проявления ошибок:
    1. НЕКРИТИЧНАЯ для меня ошибка. При изменении любого поля любой записи любого модуля после нажатия «галочки» (сохранить изменение) сразу появляется всплывающее окно ошибки:
    «! Ошибка
    Error: Unexpected token k in JSON at position 0″
    скриншот всплывающего окна ошибки:
    https://www.dropbox.com/s/b5ioxdpdjzcdfgm/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%821.png?dl=0

    Далее:
    Окно ошибки исчезает, а окно записи зависает в процессе сохранения навсегда, спасает обновление окна кнопкой F5. Интересно, что после обновления мы видим: ВСЕ ВНЕСЕННЫЕ ИЗМЕНЕНИЯ в записи СОХРАНЕНЫ!

    2.Следующая ошибка (КРИТИЧНАЯ для меня) возникает при нажатии на кнопку «сохранить» на странице создания любого нового обработчика. Текст ошибки:
    «! Ошибка
    Недопустимое выражение»
    Никаких выражений составлялось, просто написали имя обработчика и нажали «Сохранить»

    Но при этом поведение ошибки другое:
    1. Новый обработчик не создается вообще ни при каких условиях.
    2. Зависание окна сохранения не происходит – но и нет никаких результатов после нажатия на кнопку «Сохранить»
    Все старые обработчики работают как положено, но изменить их невозможно из-за этой ошибки. Работает только включение-отключение обработчиков.

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

    Ну совсем невозможно дальше работать без развития системы обработчиками!

    Можно было бы для решения проблемы:
    1. откатить систему и мигрировать как-то заново, но не факт, что ошибки не вернутся со временем;
    2. сделать экспорт записей на систему с нуля, но обработчики никак не перенесешь, а заново настраивать все обработчики довольно трудоемко.

    Заранее благодарен за любую помощь или подсказку!

  • Аватар Алексей - 3 мес., 3 нед. назад:

    Желательно получить logs/application.log в моменты когда происходят ошибки и error_log веб-сервера

  • Аватар Nik - 3 мес., 3 нед. назад:

    Алексей!

    Спасибо за ответ!

    Что получилось зафиксировать logs/application.log:

    1. При ошибках а) при изменения записи и б) при создании обработчика в logs/application.log НИЧЕГО не записывается. Пробовал много раз.

    2. Каким-то чудом удалось создать обработчик БЕЗ возникновения ОШИБКИ, возможно, что обработчик создавался не для обращений, а для сделок. Но при ИЗМЕНЕНИИ этого нового обработчика сразу в окне обработчика возникла строка:

    «Этот обработчик был создан в предыдущей версии. Условия, созданные в предыдущих версиях не могут быть изменены. Вы можете создать новые условия или использовать существующие условия без их изменения.»

    Но ведь я создал этот обработчик только что в этой версии!
    Что-то мне подсказывает, что где-то неправильно прописалась версия, например, в vtigerversion.php (у меня версия 7.0.1-201711) записано:

    ?php
    /************************************************************************************
    * The contents of this file are subject to the vtiger CRM Public License Version 1.1
    * («License»); You may not use this file except in compliance with the License
    * The Original Code is: vtiger CRM Open Source
    * The Initial Developer of the Original Code is vtiger.
    * Portions created by vtiger are Copyright (C) vtiger.
    * All Rights Reserved.
    ************************************************************************************/
    $patch_version = ’20170606′; // -ve timestamp before release, +ve timestamp after release.
    $modified_database = »;
    $vtiger_current_version = ’7.0.1-201711′;
    $_SESSION['vtiger_version'] = $vtiger_current_version;
    ?

    Далее при нажатии СОХРАНИТЬ в этом обработчике возникает ошибка:
    «! Ошибка
    Error: Unexpected token k in JSON at position 0″

    logs/application.log – опять пустой

    !!! А ВОТ ПРИ УДАЛЕНИИ ОБРАБОТЧИКА удалось один раз поймать в logs/application.log запись:

    [2018-02-02 16:57:28] Error on process request. Details:
    Code – 64
    Message – Cannot redeclare class SalesPlatform_PDF_SPHeaderViewer
    File – /home/comfo214/.12/3/include/SalesPlatform/PDF/viewers/SPHeaderViewer.php
    Line – 55

    Повторить эту запись не удается никак. Ошибки возникают, но в лог ничего не пишется.

    И вот еще весь лог ошибок (наверно за всю историю моей системы):
    https://www.dropbox.com/s/0irt568biafbkzt/application_old.log?dl=0

    Готов провести любые тесты и прислать отчеты.

  • Аватар Алексей - 3 мес., 3 нед. назад:

    1. Для ситуации когда возникает ошибка «Error: Unexpected token k in JSON at position 0″ – откройте консоль разработчика в веб-браузере, перейдите на вкладку сеть. Осуществите действия, которые приводят к этой ошибке (как написано выше – сохранение записи). После этого нужны будут скрины:
    * http-запросов с заголовками
    * ответ веб-сервера на этот запрос

    2. Если установить чистый дистрибутив 7.0.1-201711 и с помощью meld сравнить файлы есть отличия? (за исключением каталогов test/ user_privileges/ storage/ cache/ и файлов tabdata.php parent_tabdata.php и config.inc.php)

    3. Сделать дамп структуры БД (без данных) смигрированной и чистой системы и сравнить на отличия: mysqldump -d -u someuser -p mydatabase
    Могут быть отличия в виде дополнительных колонок в смигрированном дампе (если добавлялись пользовательские поля) они не критичны.

  • Аватар Nik - 3 мес., 3 нед. назад:

    Провел тест 1 (для ошибки: !Ошибка: Unexpected token k in JSON at position 0).
    Скриншоты по ссылке:
    https://www.dropbox.com/sh/kk2e6vvz929xbck/AACQSvIUMYFV_G7hvJN0JPpya?dl=0

    Отмечу следующие моменты:
    - т.к запросов много на каждый не делал скриншот, но могу открыть любой и прислать.
    - отснял перечень запросов (первый Get 1210 мс на первом скриншоте – последний Post без времени – и далее в процессе того как окно «висит» добавляются такие же Post запросы)
    - все последние POST запросы со статусом 200 имеют СПРАВА ВВЕРХУ выделенную браузером лиловым цветом ошибку:
    SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

    Сейчас еще добавлю ссылку на скриншоты запрос-ответ для типовых запросов с ошибками.

    Тесты 2 и 3 для меня посложнее поэтому сделаю не сразу.

  • Аватар Nik - 3 мес., 3 нед. назад:

    Скриншоты типовых запросов-ответов, первый запрос-ответ без ошибки, а остальные с ошибками:
    https://www.dropbox.com/sh/3jtmnlby3bnqqbw/AADKdLG2QIEzFdsuZPPUXV5ka?dl=0

    Если нужны скриншоты других запросов-ответов, пожалуйста, напишите, и я пришлю.

  • Аватар Nik - 3 мес., 3 нед. назад:

    Вот еще скриншоты закладки «сеть-заголовки-необработанные_ заголовки» для нескольких запросов с ошибками:

    https://www.dropbox.com/sh/64hykj0u2czgrl2/AACNBOa_Vet3R73yFhUN4uREa?dl=0

  • Аватар Алексей - 3 мес., 3 нед. назад:

    Видно что в ответе всегда первым символом идет «k». Случайно не было каких-то доработок кода/отладки где могли оставить конструкцию вроде echo «k»?
    Возможно получится найти это место, если поискать по подстроке echo ‘к или echo «к (могу ошибаться но на скриншоте вроде как русская буква к) или просто по этой букве.

  • Аватар Nik - 3 мес., 3 нед. назад:

    Алексей, огромное спасибо за помощь!

    Все верно – символ «к» был самым первым в файле config.inc.php. Это давало так много ошибок. Убрал символ и система стала нормально работать – исчезли ВСЕ ошибки. Искал не долго – вспомнил файлы, которые открывал для настройки системы и практически в 3-м или 4-м файле нашел этот символ, видимо, случайно нажал на клавиатуре кнопку и сохранил файл с символом. А ведь я видел этот странный символ в самом первом POST запросе и даже обратил на него внимание, но почему-то не стал выяснять.

    Еще раз большое спасибо за подсказку и уделённое время!