Документация для разработчиков
Темная тема

update

Описание и параметры

bool
CTaskItem::Update(
 array arFields
);

Нестатический метод изменяет параметры задачи с идентификатором ID.

Параметры метода

Параметр Описание С версии
arFields Массив Array("поле"=>"значение", ...). Содержит значения всех полей задачи. Обязательные поля должны быть заполнены. 16.0.0

Возвращаемое значение

При возникновении ошибки в исключениях будет содержаться текст ошибки.

Примеры использования

// смена ответственного в задаче

CModule::IncludeModule('tasks');

global $USER;

$userId = $USER->GetID();
$taskId = 85;

$oTaskItem = new CTaskItem($taskId, $userId);

try
{
   $rs = $oTaskItem->Update(array("RESPONSIBLE_ID" => 480));
}
catch(Exception $e)
{
   print('Error');
}



// прикрепление файла к задаче

CModule::IncludeModule('tasks');

$storage = Bitrix\Disk\Driver::getInstance()->getStorageByUserId($USER_ID);
$folder = $storage->getFolderForUploadedFiles();
$arFile = CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"]."/upload/wlog.txt");
$file = $folder->uploadFile($arFile, array(
   'NAME' => $arFile["name"],
   'CREATED_BY' => $USER_ID
), array(), true);
$FILE_ID = $file->getId();

$oTaskItem = new CTaskItem($taskId, $userId);
$rs = $oTaskItem->Update(array("UF_TASK_WEBDAV_FILES" => Array("n$FILE_ID")));



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
2
Рушан Зарипов
Если стоит задача прикрепления не одного, а нескольких файлов, то подойдет такой пример:
$oTask = CTaskItem::add($arNewTaskData, $responsible);
                           
Код
    //Текущая задача
                $cur_task = $oTask->getData(); 
                
                //Определеяем класс для работы с Bitrix диском
                $USER_ID = $USER->GetID(); 
                $storage = Bitrix\Disk\Driver::getInstance()->getStorageByUserId($USER_ID);
                $folder = $storage->getFolderForUploadedFiles();
                
                //Массив с файлами
                $newFiles = array();
                
                //копируем файлы в Bitrix диск
                foreach($linked_files_array as $k=>$val){
                    $arFile = CFile::MakeFileArray($val);
                    $file = $folder->uploadFile($arFile, array(
                       'NAME' => $arFile["name"],
                       'CREATED_BY' => $USER_ID
                    ), array(), true);
                    
                    //Добавляем id файлов в массив с префиксом n
                    $newFiles[] = "n".$file->getId();
                     
                }
                //Прикрепляем файлы к задаче
                if(!empty($newFiles)){
                    $oTaskItem = new CTaskItem($cur_task["ID"], $responsible);
                    try
                    {
                       $rs = $oTaskItem->Update(array("UF_TASK_WEBDAV_FILES" => $newFiles));
                    }
                    catch(Exception $e)
                    {
                       print(GetMessage("TASK_FILES_LINKED_ERROR"));
                    }
                     
                }
© «Битрикс», 2001-2021, «1С-Битрикс», 2021
Наверх