Ошибки при обновлении Битрикс
Последние записи
1. [Ux11] Ошибка описания модуля "название.модуля".
Не установлено соединение с сервером обновлений. [Ux11] Ошибка описания модуля "название.модуля"
Попробуйте обновить модуль до последней версии. Если не помогло, то в /bitrix/modules/название.модуля/install/index.php
замените function название_модуля()
на function __construct()
2. call_user_func_array(): Argument #1 ($function) must be a valid callback, non-static method НазваниеМодуля::МетодКласса() cannot be called statically (0)
Найдите модуль по пути /bitrix/modules/название.модуля
, а в нем метод класса, который вызывает ошибку и добавьте к вызову static
3. Call to undefined method CAllCurrencyLang::CurrencyFormat()
В файле /bitrix/modules/aspro.next/classes/general/CNext.php
или аналогичном меняем CAllCurrencyLang::CurrencyFormat
на CCurrencyLang::CurrencyFormat
4. Fatal error: Cannot declare class Bitrix\Iblock\ElementTable, because the name is already in use
или Fatal error: Cannot declare class Bitrix\Iblock\SectionTable, because the name is already in use
Проверьте наличие файла /bitrix/modules/iblock/lib/elementtable.php
и если он существует, то удалите файл /bitrix/modules/iblock/lib/element.php
Для SectionTable
переименуйте или удалите файл /bitrix/modules/iblock/lib/section.php
5. Undefined class constant 'INFO_NOT_AVAILABLE' (0)
Часто возникает в файле /home/bitrix/www/bitrix/modules/aspro.max/classes/general/CMaxCache.php:523
и аналогичных ему
Переходим в класс Аспро с ошибкой, находим \Bitrix\Main\Service\GeoIp\Manager::INFO_NOT_AVAILABLE
и меняем на null
Было:
if($obBitrixGeoIPResult !== \Bitrix\Main\Service\GeoIp\Manager::INFO_NOT_AVAILABLE){
Стало:
if($obBitrixGeoIPResult !== null){
6. Call to undefined method CMain::reinitPath()
Было:
$APPLICATION->reinitPath();
Стало:
$APPLICATION->sDocPath2 = GetPagePath(false, true);
$APPLICATION->sDirPath = GetDirPath($APPLICATION->sDocPath2);;
7. Mysql query error: (1146) Table '#DB_NAME#.b_sale_trading_platform' doesn't exist
Ошибка возникает при некорректном обновлении ядра. Вам нужно перейти в /bitrix/modules/sale/lib/
и удалить или закомментировать tradingplatform.php
8. Fatal error: Cannot declare class Bitrix\Highloadblock\HighloadBlockLangTable, because the name is already in use in /home/restoll/data/www/bitrix/modules/highloadblock/lib/highloadblocklang.php on line 6
Очередная ошибка некорректного обновления ядра. Переходим в /bitrix/modules/highloadblock/lib
, убеждаемся, что есть оба файла highloadblocklang.php
и highloadblocklangtable.php
. Удаляем тот, что без table
в названии
9. После обновления - из списка заказов в админке пропало отображение всех свойств заказа. Причем это произошло только с заказами которые были до обновления.
В моем случае причиной ошибки стало отсутствии записи ORDER
в поле ENTITY_TYPE
в таблице b_sale_order_props_value
БД. Пишем простой скрипт
$rs = $DB->Query("SELECT * FROM b_sale_order_props_value WHERE ENTITY_TYPE = ''");
while ($prop = $rs->Fetch()) {
$IDS[] = $prop['ID'];
}
$connection = Bitrix\Main\Application::getConnection('default');
$sqlHelper = $connection->getSqlHelper();
$connection->queryExecute("UPDATE b_sale_order_props_value SET ENTITY_TYPE = '".$sqlHelper->forSql ('ORDER')."' WHERE ID IN (".implode(",", $IDS).")");
Комментарии