Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!
В модуле документооборота есть нужный функционал, но он не документирован.
CIBlockElement::WF_Lock, CIBlockElement::WF_UnLock, поле LOCK_STATUS в полях элемента.
Спасибо, Дмитрий. Немного не то (если я не ошибся с использованием этих методов).
Мне бы решить такую задачу: два клиента одновременно наращивают счетчик ИБ по 100 раз. И вместо ожидаемых 200 получаем, например, 49. Скорее всего, это нужно решать средствами mysql. Хотя, наверное, еще модуль sale нужно глянуть.
Если вам нужно хранить какое-то увеличивающееся число у *элемента* инфоблока, то для этого есть поле SHOW_COUNTER и метод CIBlockElement::CounterInc().
А, точно, он на сессию завязан.
Ну, беда-то небольшая:
Код
CIBlockElement::CounterInc($ID);
if (is_array($_SESSION['IBLOCK_COUNTER']))
if ($key = array_search($ID, $_SESSION['IBLOCK_COUNTER']))
unset($_SESSION['IBLOCK_COUNTER'][$key]);