Меню
RSS
модуль Highload-блоки (highloadblock)
 
На сайте случайно удалили модуль "Highload-блоки (highloadblock)" теперь в разделе Администрирование когда переходим в каталог, выдает такую ошибку
как решить проблему ?

Код
[Bitrix\Main\SystemException] 
Invalid highloadblock description ` string(23) =>
"ProductMarkingCodeGroup"
`. (0)
/home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/highloadblock/lib/highloadblock.php:372
#0: Bitrix\Highloadblock\HighloadBlockTable::compileEntity(NULL)
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/catalog/lib/product/systemfield.php:755
#1: Bitrix\Catalog\Product\SystemField::getMarkingCodeGroupAction()
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/catalog/lib/product/systemfield.php:170
#2: Bitrix\Catalog\Product\SystemField::getGroupActions()
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/catalog/lib/grid/panel/productgroupaction.php:104
#3: Bitrix\Catalog\Grid\Panel\ProductGroupAction->actionProductFieldPanel(array)
   
#4: call_user_func_array(array, array)
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/iblock/lib/grid/panel/groupaction.php:111
#5: Bitrix\Iblock\Grid\Panel\GroupAction->get(string, array)
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/iblock/lib/grid/panel/groupaction.php:85
#6: Bitrix\Iblock\Grid\Panel\GroupAction->getList(array)
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/modules/iblock/admin/iblock_section_admin.php:853
#7: require(string)
   /home/host1808962/sochiclimate.ru/htdocs/www/bitrix/admin/iblock_section_admin.php:1
Изменено: Михаил Базаров - 13.07.2023 10:54:54
 
Цитата
Adrian Lazarov написал:
На сайте случайно удалили модуль "Highload-блоки (highloadblock)" теперь в разделе Администрирование когда переходим в каталог, выдает такую ошибку

как решить проблему ?

Тут только искать резервную копию. Если удалили модуль вместе с таблицами.
Если, при удалении, не выбирали удаление таблиц- должна помочь просто установка модуля обратно.

Да и HL с маркировками нельзя удалять, он системный. Странно что в битрикс не позаботились об этом, запрещая его удаление (модуля) как модуля ui
Изменено: Михаил Базаров - 13.07.2023 10:54:35
 
Цитата
Adrian Lazarov написал:
[Bitrix\Main\SystemException] Invalid highloadblock description ` string(23) =>"ProductMarkingCodeGroup"`. (0)
Если вдруг возникла такая ситуация то можно просто опять создать Highload-блок с тем же именем что было раньше.

Название сущности ( ProductMarkingCodeGroup )
Название таблицы в БД ( b_hlsys_marking_code_group )
Russian ( Типы групп товаров )
English ( Product type groups )

И всё будет радость.
Изменено: Михаил Базаров - 13.07.2023 10:53:33
 
А если не создается по причине, что "b_hlsys_marking_code_group" уже есть в БД?
Столкнулся со следующей проблемой:
Понадобилась маркировка на сайте, в инструкциях везде указывают на Типы групп товаров в Highload-блок, но у меня их нету (версия битрикс 24.0.500.), следовательно нет выбора каталоге.
Из-за отсутствия познаний в битриксе попробовал импортировать его с начального шаблона и обнаружил, что в БД такое название есть. Но как вывести их в Highload-блок и получить строку выбора в Торговом каталоге инструкций нигде нет :(
P.S. временно нищеброд, коплю на актуальную лицензию, но вроде в моей вервии уже должен быть этот функционал :)
 
Попробуйте установить чистую демо версию битрикс, экспортировать из него HL блок маркировок и импортировать в свой сайт.
Если не поможет, проще обратиться в ТП битрикс, с не активной лицензией они отвечают- просто чуть подольше.

Совсем топорный способ, это выдернуть нужные таблицы из MysqL (демо версии) и дампом импортировать в свою БД. Конечно, лучше на копии
Изменено: Михаил Базаров - 07.02.2025 10:21:16
 
Вариант с импортом HL из демки как раз и пробовал, рабочая сказала, что экспортировать не может, т.к. b_hlsys_marking_code_group. уже существует, но с списке из админки не отображается.
На портале поддержки обращение не составить без активной лицензии :(. Перерыл кучу форумов, подобная проблема редкость. Вот нашел один ответ, сижу ищу информацию, что имел ввиду автор и как это реализовывать:
"Создать таблицу с таким именем через интерфейс не получилось, т.к. она присутствует и заполнена.
Необходимо было её описать в таблице b_hlblock_entity
ID =1 , NAME=ProductMarkingCodeGroup , TABLE_NAME = b_hlsys_marking_code_group"
 
Можно попробовать удалить все Highload-блоки, чтобы не возникало конфликтов. Для этого можно запустить:
Код
<?php
$hlblocks = HighloadBlockTable::getList();
while ($hlblock = $hlblocks->fetch()) {
    $hlblockId = $hlblock['ID'];
    if ($hlblockId !== '1') {
        Bitrix\Highloadblock\HighloadBlockTable::delete($hlblockId);
    }
}
?>
Код
HL блок с первым ID удалять нельзя, он системный используется для маркировок[1].
Иногда после таких сбоев нужно проверить системные таблицы на наличие "битых" ссылок. Но это уже более сложная задача, требующая доступа к базе данных и понимания структуры данных Битрикса.

Возможно, в шаблоне вашего каталога есть прямой вызов к Highload-блоку. Нужно проверить файлы шаблона и убрать или закомментировать этот код.
Изменено: Михаил Базаров - 19.02.2025 11:38:53
Читают тему
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 

Блог-note: заметки разработчика

Переключатель валюты в каталоге 1С-Битрикс

Задача: Дать пользователю возможность самостоятельно выбирать валюту, в которой он хочет видеть цены, в разделе каталога...

Fancybox в стандартном шаблоне детальной карточки товара, 1С-Битрикс, вместо всплывающего окна и лупы.

Задача: заменить работу с изображениями в стандартном или кастомном шаблоне детальной карточки (catalog.element)...

Заполнить свойство инфоблока ценой из торгового каталога

Если вам по какой-то причине нужно скопировать цену товара в свойство этого же инфоблока. Например, для вывода старой це...

Ленивая подгрузка картинок в компоненте, на vue js Битрикс

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

Удалить половину элементов инфоблока с помощью API

Задача: вот такая странная задача, нужно удалить из инфоблока половину элементов. Не важно каких, просто половину элемен...

Создание мобильного приложения на cordova, для любого сайта.

Если стоит задача разработки мобильного приложения для сайта, можете воспользоваться данной заметкой. Постарался сделать...

Вывести товары из того же раздела в детальной карточке товара

Задача: В детальной карточке элемента каталога необходимо отобразить товары, находящиеся в том же разделе, что и сам то...

Умный фильтр во всплывающей панели на мобильных.

Шаблон умного фильтра в Битриксе достаточно сложный, с точки зрения верстки и не очень красиво отображается на мобильных...

Заполнить картинки разделов каталога из картинок товаров

Задача: в каталоге, разделы и подразделы выводятся в виде плитки над товарами, с картинками разделов. Так как разделов и...