Изначально на процесс для Всех сотрудников должны быть права "Добавление".
Не совсем понял, у нас публиковать документы будет ограниченное количество пользователей. И получается, что нужно всё-таки создать отдельный инфоблок? Я, кстати, на эту тему тоже думал, только не разобрался, как делать шаблон страницы отображения ИБ И ещё, где можно посмотреть API работы с диском?
Бизнес-процессы это обёртка над ИБ. Сам процесс в таком случае спрятать от всех не получится, но можно в init.php добавить подобного содержания:
Код
AddEventHandler("iblock", "OnBeforeIBlockElementAdd", Array("StopBP", "OnBeforeIBlockElementAddHandler"));
class StopBP
{
function OnBeforeIBlockElementAddHandler(&$arFields)
{
if($arFields["IBLOCK_ID"]==100){
global $USER;
if($USER->IsAdmin()!==1){
global $APPLICATION;
$APPLICATION->throwException("<b>Вам запрещено ознакамливать сотрудников!</b>");
return false;
}
}
}
}
Тем самым запретив добавлять элементы всем, кроме админов в данном случае. Шаблоны делать нужно. Вы можете использовать тип поля HTML/текст. Внутри работы БП записать в него всё что захотите. И оно будет отображать в списке.
Записать массив в переменную, Во множественную переменную Variable1 типа Пользователь получить массив активных пользователей из группы
Роман написал: Кстати, а для какого модуля создавать пользовательские поля? А то я не нашёл объекта DISK...
Нужно WEBDAV использовать или какой-то другой?
Помоему муть чистой воды.
Самая адекватная реализация это БП ознакомления + Диск Чтобы права применялись на элементах ИБ корректно, должно быть выполнено несколько условий: Изначально на процесс для Всех сотрудников должны быть права "Добавление". Сам процесс должен быть последовательным. Дать права через активити "Установка прав". Дать права через php-код на документ Диска, при необходимости.
В случае если нужен БП со статусами, то "Установка прав" не работает, но можно установить права через php-код.
В итоге имеем адекватный реестр, с возможностью вывода необходимых полей: