SIMAI: Составное свойство для информационных блоков
Работа с модулем
После установки модуля simai.complexprop становится доступным новый тип свойства инфоблоков - "составное свойство", которое позволяет объединять значения обычных свойств.
Выбрать свойства, участвующие в составном свойстве ("подсвойства"), можно в настройке составного свойства.
Число подсвойств в данный момент ограничено: не более семи подсвойств.
Внимание: эти свойства должны быть уже созданы, чтобы их можно было выбрать, т.е. одновременно создать составное свойство и его подсвойства нельзя!
На данный момент из стандартных типов НЕЛЬЗЯ использовать как подсвойства: видео, карты Яндекс и Гугл, привязку к элементам по xml, cчетчик, SCU-привязку к товарам.
Перечисленные типы не будут предлагаться для выбора в качестве подсвойств, равно как и прочие составные свойства, если они есть (вложенность составных свойств невозможна).
Остальные стандартные типы (строка, дата, список, файл, привязка к пользователю, к элементу и к разделу, в т.ч. с автозаполнением, текст/html и т.д.) использовать можно.
Использование нестандартных типов в качестве подсвойств не запрещено, но их корректная работа не гарантируется, особенно если они используют в своей работе поле описания.
Среди выбранных подсвойств в настройках составного свойства можно отметить обязательные для заполнения. В этом случае нельзя будет создать или отредактировать значение составного свойства, не заполнив такие обязательные подсвойства.
Использовать стандартный механизм обязательных свойств битрикса (в общем списке свойств) для подсвойств тоже возможно, но категорически не рекомендуется, т.к. в этом случае нельзя будет полностью удалить значения составного свойства.
Аналогично, крайне не рекомендуется отмечать само составное свойство как обязательное.
Составное свойство может быть как одиночным, так и множественным. Множественность подсвойств должна соответствовать правилу: множественное составное - множественные подсвойства, одиночное составное - одиночные подсвойства.
Подсвойства, не удовлетворяющие этому правилу, не будут выведены среди полей редактирования значений составного свойства.
У множественного составного свойства значения добавляются с помощью кнопки "Добавить составное значение". Максимальное количество составных значений, добавляемых за раз, регулируется стандартным параметром "Количество полей для ввода новых множественных значений" в настройках составного свойства.
Удаляются значения множественного составного свойства с помощью галочки "Удалить это составное значение", присутствующей у каждого существующего значения.
Поля ввода подсвойств у каждого значения множественного составного свойства выглядят как поля одиночных свойств соответствующих типов.
Поля описания подсвойств используются в служебных целях, поэтому внутри составного свойства не выводятся. Если необходимо поле, аналогичное описанию для значения составного свойства, то это решается простым добавлением строкового подсвойства.
Настоятельно рекомендуется скрывать вывод полей подсвойств в форме редактирования элемента с помощью настроек вида этой формы, чтобы избежать дублирования ввода.
В общем случае заполнение полей подсвойства внутри значений составного свойства имеет приоритет над заполнением полей этого же свойства вне составного свойства.
В одном инфоблоке может быть два и более составных свойств.
Использование одних и тех же подсвойств разными составными свойствами не допускается! Для предупреждения этого при настройке составных свойств не предлагаются к выбору подсвойства, уже задействованные в других составных свойствах.
Структура значений составного свойства при использовании в компонентах публичной части выглядит таким образом:
ДЛЯ ОДИНОЧНОГО:
Массив VALUE:
Array
|
DISPLAY_VALUE выводится в виде html-таблицы со значениями подсвойств.
ДЛЯ МНОЖЕСТВЕННОГО:
VALUE:
Array
|
DISPLAY_VALUE:
Array
|
Следует отметить, что если у множественного составного свойства задано только одно значение, то массив DISPLAY_VALUE будет аналогичен таковому для одиночного составного свойства.
Работа через API
Начиная с версии 1.1.0 есть возможность устанавливать значения составного свойства через API Битрикс, используя методы CIBlockElement::Add и CIBlockElement::Update.
Для этого нужно в массиве PROPERTY_VALUES указывать значения составного свойства -- обязательно в виде массива значений.
Для каждого значения должен быть задан подмассив SUBPROP_VALUES, где должны быть указаны значения подсвойств, относящихся к данному значению составного свойства.
При этом можно использовать как числовые иды свойств, так и их мнемонические коды.
Пример:
CModule::IncludeModule("iblock");
|
Для метода CIBlockElement::Update массив PROPERTY_VALUES выглядит точно так же.
Что нужно знать касательно работы через API:
- При задании составных значений через API обязательность заполнения подсвойств по встроенному механизму составного свойства автоматически НЕ проверяется.
Проверка корректности заполнения подсвойств в этом случае - задача самого разработчика.
- Значения подсвойств следует задавать только через
SUBPROP_VALUES составных значений, задавать их как отдельные свойства в PROPERTY_VALUES не следует.
- При задании значений подсвойств и самого составного свойства не нужно задавать значения поле описания -- описание в составном свойстве используется в служебных целях.
- Такие методы битрикс, как CIBlockElement::SetPropertyValues и CIBlockElement::SetPropertyValueCode для работы с составным свойством использоваться НЕ ДОЛЖНЫ.
Подача обращения в техническую поддержку SIMAI
Если обнаружилась ошибка на сайте, перед отправкой обращения проверьте, пожалуйста, следующие моменты:
- Активна лицензия Битрикс и установлены последние обновления.
- Активна лицензия Симай и установлены последние обновления.
- На хостинге установлена актуальная версия PHP
- Нет ошибок при проверке системы.
- Ошибка повторяется в режиме невидимки (инкогнито) браузера.
- Ошибка повторяется после сброса всего кеша на сайте.
- Отключены все расширения браузера.
- Есть место на хостинге.
- Присутствует копирайт SIMAI.
При подаче обращения обязательно необходимо указать данные:
- Адрес сайта.
- Логин и пароль для доступа к сайту с правами администратора.
- Описание проблемы и алгоритм действий для ее воспроизведения.
- Ссылки на страницы с ошибками.
- Скриншоты или видеозапись подтверждения ошибки. Обязательно должна быть видна адресная строка браузера.
- Продукт SIMAI.
- Лицензионный ключ 1С-Битрикс.
- Лицензионный ключ SIMAI.
- Версия модуля 1С-Битрикс. Версию модуля 1С-Битрикс можно посмотреть на сайте в разделе Администрирование на Рабочем столе или в нижней части сайта
- Версия модуля решения SIMAI. Версию модуля решения SIMAI можно посмотреть на сайте в разделе Администрирование > Marketplace > Установленные решения
- Версия модуля SIMAI: Framework (для линейки SIMAI-SF4). Версию модуля SIMAI: Framework можно посмотреть на сайте в разделе Администрирование > Marketplace > Установленные решения
- Версия PHP. Версию PHP можно посмотреть на сайте в разделе Администрирование > Настройки > Производительность > PHP
- Сотрудники технической поддержки могут запросить дополнительные доступы:
- Сервер:
- адрес сервера (ip):
- Доступ по FTP:
- логин:
- пароль:
- Доступ по SSH с правами на чтение и запись:
- логин:
- пароль:
Возникновение ошибки на сайте
Вопрос соответствует регламенту подачи обращения
В регламенте технической поддержки описан порядок работы с обращениями.
- Общие положения
- Уровни обслуживания (SLA)
- Круг решаемых задач
- Порядок подачи и обработки обращений в службу технической поддержки
- Оценка качества работы службы технической поддержки
- Дополнительная информация
Активна лицензия 1С-Битрикс и установлены последние обновления
Активность лицензии 1С-Битрикс и доступные обновления можно посмотреть в Администрирование > Marketplace > Обновление платформы.
Нужную информацию смотреть на вкладке "Установка обновлений".
Дата доступности обновления:
Доступные обновления:

Нет доступных обновлений:

Активны лицензии SIMAI и установлены последние обновления
Активность лицензии 1С-Битрикс и доступные обновления можно посмотреть в Администрирование > Marketplace > Установленные решения.

Нужную информацию смотреть в блоке "Доступные решения".
Дата доступности обновления:

Доступные обновления:

Как понять, что обновления установлены?
Если уведомления "Доступные обновления" нет, значит все последние установлены.

Что делать, если нет даты "Обновления до"?

В этом случае необходимо проверить нет ли ошибок в модулях. Для этого перейти в раздел Администрирование > Marketplace > Обновление решений.

Если отображается ошибка, необходимо обратиться к разработчику этого модуля.
Например:
На хостинге установлена актуальная версия PHP
Шаг 1. Перейти Администрирование > Marketplace > Обновление платформы.
Шаг 2. Если в этом разделе отображается уведомление о том, что используется устаревшая версия PHP, то необходимо осуществить переход на актуальною по инструкции Переход на PHP.
Нет ошибок при проверке системы
Некоторые ошибки возникают из-за некорректного взаимодействия 1С-Битрикс и хостингом, на котором размещен сайт.
Форма "Проверка системы" предназначена для всесторонней проверки соответствия параметров системы, на которой осуществляется функционирование проекта, минимальным и рекомендуемым техническим требованиям продукта.
Для запуска проверки системы необходимо перейти в Администрирование > Настройки > Инструменты > Проверка системы.

Для запуска тестирования нужно нажать кнопку "Начать тестирование".

Если при проверке системы возникает ошибка структуры базы данных.



Для устранения данной ошибки потребуется перейти в в Администрирование > Настройки > Инструменты > SQL запрос.

И выполнить запрос
alter table b_iblock_element_property modify ID bigint not null auto_increment;

При возникновении иных ошибок необходимо написать в техническую поддержку вашего хостинга.
Более подробная информация о данном функционале описана в уроке от 1С-Битрикс "Проверка системы"
Ошибка повторяется после сброса кеша браузера, удаления файлов cookie и в режиме невидимки (инкогнито) браузера
Кеш браузера
Некоторые ошибки возникают из-за сохранения кеша в браузере.
Чтобы сбросить кеш браузера для открытой страницы сайта, необходимо нажать на клавиатуре сочетание клавиш CTRL+F5.
Файлы cookie
Также возможно возникновение ошибок из-за сохранения файлов cookie.
Очистить cookie в браузере для конкретного сайта можно следующим образом:
Шаг 1. Найти настройки coockie в браузере. Приводим путь до настройки в популярных браузерах, который можно скопировать и вставить в адресную строку браузера, далее нажать Enter на клавиатуре.
Например:

Google chrome - chrome://settings/content/all
Яндекс.Браузер - browser://settings/siteData
Opera - opera://settings/content/all
Mozilla Firefox - about:preferences#privacy
Шаг 2. В разделе настройки найти нужный сайт и удалить сохраненные для него файлы cookie.
P.S. Если ошибка возникала под доступом администратора, после удаления файлов cookie авторизоваться на сайте нужно будет заново.
Приватное окно браузера
После сброса кеша и очистки cookie проверьте повторение ошибки через приватное окно браузера.
Как открыть приватное окно в популярных браузерах:
Google Chrome:
Яндекс.Браузер:
Opera:

Mozilla Firefox:
Ошибка повторяется после сброса всего кеша на сайте
Использование технологии Автокеширования позволяет быстро подготовить сайт и компоненты проекта к работе в условиях стрессовых нагрузок или адаптировать сайт к работе. Некоторые ошибки воспроизводятся как раз из-за остатков старого кода в кеше.
Очистка файлов кеша
Настройки кеширования расположены на странице Настройки кеширования (Настройки > Настройки продукта > Автокеширование).
На вкладке "Очистка файлов кеша" необходимо выбрать пункт "Все" и нажать кнопку "Начать".

После удаление файлов кеша появится сообщение:

Отключены все расширения браузера
В браузерах предусмотрена установка различных приложений и расширений.
Некоторые расширения могут конфликтовать с функционалом на сайте.
Для проверки повторения ошибки без расширений:
Вариант 1 - отключить все расширения
Вариант 2 - отключить все расширения для режима невидимки/инкогнито/приватном и проверить повторение ошибки в режиме невидимки/инкогнито/приватном.
Пример в браузере Google Chrome:
chrome://extensions/
Вариант 1. Отключить все расширения.

Вариант 2:
Перейти в сведения каждого расширения.
Отключить использование в режиме инкогнито.

Проверить повторение ошибки в режиме невидимки.
Есть место на хостинге
Некоторые ошибки, например, такие, как ошибка при создании или восстановлении резервной копии, загрузка файлов, сохранение информации на сайте, могут возникнуть из-за отсутствия места на вашем хостинге.
Что делать, если на хостинге не хватает места?
Присутствует копирайт SIMAI
Согласно п. 2.5. Пользователь не может ни при каких условиях удалять или делать малозаметными информацию и сведения об авторских правах, правах на товарные знаки или патенты, указанные в Программе.
https://simai.ru/about/docs/litsenzionnoe_soglashenie_s_konechnym_polzovatelem_na_ispolzovanie_progr...
Если на сайте отсутствует копирайт разработчика решения, то исходя из этого можно предположить, что в код решения вами самостоятельно вносились изменения. На основании этого гарантийная техническая поддержка не может быть оказана.
Если копирайт был удалён нашими сотрудниками, то сообщите, пожалуйста, номер и дату обращения.
По умолчанию копирайт размещен в подвале сайта, пример:

Ошибка при обновлении
При установке обновлений модулей 1С-Битрикс и/или модулей SIMAI на сайте может возникнуть ошибка.
Также в разделе Администрирование > Marketplace > Установленные решения может отсутствовать дата "Обновления до".
Некоторые ошибки возникают из-за некорректного взаимодействия с сервером обновлений 1С-Битрикс.
Шаг 1. Для проверки необходимо перейти в Администрирование > Настройки > Настройки продукта > Настройки модулей > Главный модуль.
Шаг 2. На открывшейся странице перейти во вкладку "Система обновлений".
Шаг 3. И проверить или заполнить (при необходимости) адрес в поле "Имя сервера, содержащего обновления". Корректным является www.1c-bitrix.ru.
Шаг 4. Применить изменения.

Шаг 5. Установить обновления модулей 1С-Битрикс по инструкции и модулей SIMAI по инструкции.
При повторении ошибки необходимо написать в техническую поддержку 1С-Битрикс https://www.1c-bitrix.ru/support/.
Ошибка при создании или восстановлении резервной копии средствами 1С-Битрикс
При возникновении ошибок при создании или восстановлении резервной копии, например ошибка сервера 500, если ваш сайт размещен на хостинге TIMEWEB, вы можете откатить копию по инструкции Резервная копия на хостинге Timeweb.
ВНИМАНИЕ! Перед созданием резервной копии средствами 1С-Битрикс проверьте свободное место на вашем хостинге!!! Т.е. свободного места должно быть как минимум столько же, сколько занимает сейчас сайт.
Дополнительная разработка функционала, перенос данных, кастомизация (расчет стоимости)
Дополнительные разработки на сайте выполняются при заключении договора на них.
Предварительно необходимо отправить список желаемых доработок с примерами для оценки предварительной стоимости на почту отдела продаж sale@simai.ru.
Какую информацию необходимо предоставить для оценки стоимости дополнительных услуг?