Столкнулся с проблемой, что на странице настроек кастомного модуля не работает сохранение полей.
Страница настроек у модуля оформляется в виде одного скрипта, где указывается массив с ключами полей, их наименованием и параметра поля ввода.
array(
'IS_ACTIVE',
Loc::getMessage('PRMEDIA_FREEDELIVERYACTION_IS_ACTIVE'),
false,
array(
'checkbox'
)
),
Далее по скрипту реализовывается вывод формы и обработка POST-запроса с процессом сохранения значений через функцию __AdmSettingsSaveOptions($moduleId, $arOptions);
Так вот. Если вы столкнулись с тем, что значения ну никак не сохраняются, то знайте, что проблема может быть в длине ключей, которые вы указывается в массиве опций. Возможно, это где-то описано в документации, но как всегда не каждый раз получается на это выйти.