Получаем все Комментарии таймлайна по исходной Сделке и создаем их в целевой сделке
- Этот этот код берет комментарии из исходной сделки и создает их копии в целевой сделке , сохраняя при этом информацию об авторе и времени создания.
use Bitrix\Crm\Timeline\CommentEntry;
use Bitrix\Crm\Timeline\Entity\TimelineBindingTable;
\Bitrix\Main\Loader::includeModule('crm');
$sourceDealId = 31496; // Здесь укажите ID сделки, для которой нужно получить комментарии
$targetDealId = 31495; // Здесь укажите ID сделки, в которую нужно создать комментарии
$authorId = 1; // Здесь укажите ID автора комментариев
// Получаем комментарии по исходной сделке
$obTimeLineEntity = Bitrix\Crm\Timeline\Entity\TimelineTable::getList([
'order' =>['CREATED' => 'DESC'],
'filter' =>[
'BINDINGS.ENTITY_ID' => $sourceDealId,
'!COMMENT' => false,
],
'limit' => 100,
'select' =>['*'],
]);
$commentData =[];
while ($arFields = $obTimeLineEntity->fetch()){
if (!empty($arFields['COMMENT'])){
$commentData[]= $arFields;
}
}
// Создаем комментарии в целевой сделке
foreach ($commentData as $comment){
$commentFields =[
'TEXT' => $comment['COMMENT'],
'AUTHOR_ID' => $authorId,
'BINDINGS' =>[
[
'ENTITY_TYPE_ID' => \CCrmOwnerType::Deal,
'ENTITY_ID' => $targetDealId,
],
],
];
$resId = CommentEntry::create($commentFields);
}$rootActivity = $this->GetRootActivity();
$rootActivity->SetVariable("CommentData", $commentData);
Cookie-файлы
Настройка cookie-файлов
Детальная информация о целях обработки данных и поставщиках, которые мы используем на наших сайтах
Аналитические Cookie-файлы
Отключить все
Технические Cookie-файлы
Другие Cookie-файлы
Мы используем файлы Cookie для улучшения работы, персонализации и повышения удобства пользования нашим сайтом. Продолжая посещать сайт, вы соглашаетесь на использование нами файлов Cookie.
Подробнее о нашей политике в отношении Cookie.
Принять все
Отказаться от всех
Настроить