Создание инфоблока Bitrix средствами API странная работа параметра SECTION_PROPERTY это баг или что?, Создание инфоблока Bitrix средствами API странная работа параметра SECTION_PROPERTY это баг или что?
Поскольку у Bitrix нет штатного механизма миграций инфоблоков между сайтами, решил разобраться начиная с API типов и так далее, чтобы возможно написать свой мигратор, в том числе для случаев когда между инфоблоками установлены связи. Разбираясь с API создания информационных блоков планировал добиться передачи таких параметров, чтобы в результате создавался инфоблок аналогичный тому что создаётся из админки, то-есть если ничего не менять с параметрами по-умолчанию. Код который я использовал доступен по ссылке http://blog.ivru.net/?id=141 (данную документацию по мере возможности возможно буду дописывать, а так же что то менять), листинги кода дублировать в топик не буду, при необходимости посмотрите по ссылке.
Если коротко, создаём экземпляр объекта: $ib = new CIBlock;
Далее создаём массив $arFields с параметрами (опять же по ссылке какой именно передавал видно, копировать не буду) Так вот если в этом массиве не указывать параметр SECTION_PROPERTY, то если таким образом создать инфоблок $ID = $ib->Add($arFields); а затем посмотреть информацию по $res = CIBlock::GetByID($ID); $ar_res = $res->GetNext(); var_dump($ar_res); То SECTION_PROPERTY будет установлен в NULL, а если зайти в админке в созданный инфоблок и просто нажать сохранить то SECTION_PROPERTY будет установлен в N.
А если при создании инфоблока методами API в $arFields указать SECTION_PROPERTY как пустую строку("") или false или 0 (причем не важно строковой или числовой) или N, то сразу после создания SECTION_PROPERTY будет установлен в Y, а после пересохранения из админки в N.
Почему такое поведение? Как сделать чтобы после вызова $ID = $ib->Add($arFields); значение SECTION_PROPERTY сразу было установлено в "N"
Тестировалось всё это на редакции Старт. Ядру месяца 2(достаточно свежее).
И ещё по теме: SECTION_PROPERTY - признак наличия привязки свойств к разделам. Можно подробнее о смысле этого параметра? В каких случаях он должен быть N а в каких Y и для чего?
Моё резюме и мои контакты на SuperJob -> перейти Верефицированный WMID 274708912937 -> проверить