Решаем проблему сортировки в Битриксе
Задачи по поддержке сайтов на битрикса бывают разные и достаточно интересные. Например у нас в libercode встретилась вот какая :
"В модуле заказов битрикса надо сделать сортировку по полю "Дата доставки/самовывоза"
У заказчика это поле не работает по неизвестной на тот момент причине (не кликабельно). Задача осложнена тем , что внутри много стороннего кода, который не относится к ядру, а дорабатывался сторонними разработчиками с различной квалификацией.
На фото представлено поле для сортировки
Общие сведения о сайте
cms- bitrix
версия - 2011 год.
лицензия -бизнес.
Какие подводные камни такой задачи. Правки должны задеть ядро bitrix, а это требует высокой квалификации исполнителя.
В результате длительного анализа кода, выявлено место где нужно доработать код. И воооля! Час на дописку и тестирование. Теперь у нас поле сортировки работает как надо.
Вот такой фрагмент кода в итоге решил проблему.
foreach ($arOrderPropsCode as $key => $value)
{
//debug($value);
$sort='';
if($key=='f10'){
$sort='PROPERTY_VAL_BY_CODE_F10';
}
$arHeaders[] = array("id" => "PROP_".$key, "content" => $value["NAME"], "sort" => $sort, "default" => false);
$arColumn2Field["PROP_".$key] = array();
}
Итого: время выполнения -5 часов.
Далее разработчик отписывается клиенту в bitrix24 и скайп о завершении задачи. Происходит проверка , и задача закрыта.
Ах да! Чуть не забыл- работа происходила на тестовом сайте . Основной сайт заказчика был в полной безопасности и продолжал работать исправно. После принятия задачи- правки были оперативно перенесены на основной сайт..