Добавьте, плз, передачу
$eventParameters задания, иначе очень сложно добираться до данных в обработчике.
Взять тот же комментарий пользователя к заданию - попробуйте его потом выцепить в обработчике... В b_bp_task_user комментарии отсутствуют, доставать из b_bp_task_history однозначно нельзя (нет привязки к id задания, только ACTION_NAME, к которому привязка неоднозначна, так как одно активити в течение процесса может выполняться несколько раз, да и вообще... выцеплять комментарий из процесса - ... Плюс всё это ресурсоёмко, тогда как все данные совсем рядом с вызовом обработчика и передать их туда - не проблема)
Либо добавьте комментарий в b_bp_task_user. А почему нет? Комментарии используются для всех заданий и порой они не менее, а то и более важны, нежели нажатая кнопка (статус выполнения).
Зачем?: Чтобы иметь возможность сохранять и выдавать пользователям реально значимую информацию о выполнении процесса. Например, при согласовании документов значимой информацией является как раз кто, когда, с каким результатом (утвердил, отклонил) и с каким комментарием выполнил задание:Пользователь | Время | Результат | Комментарий |
Начальник отдела | 27.10.18 12:20 | Утвердил | |
Директор | 28.10.18 14:30 | Отклонил | Вы офигели? Дорого |
PS. На текущий момент уже более 7 лет использую кастомные задания, которые пишут в отдельную таблицу результат задания (наименование выбранной операции/кнопки, для простой интерпретации) и комментарий. Применение - вывод различных отчётов и листов согласования к процессам. В штатном функционале этого не сделать.
Сохранение истории заданий в b_bp_task_user вы в каком-то виде сделали несколько лет назад, добавив статус задания, вместо его удаления, но этого недостаточно, нужны как минимум комментарии, а лучше ещё и наименование выбранной операции, а не только как сейчас - константы CBPTaskUserStatus (Почему? Потому что это лучше отражает суть, мы можем использовать задание утверждения для запроса, например, "Сделано/Не сделано", "Продолжить/Прекратить", и видеть вместо этих значений в результате только "Одобрил/Отклонил" - согласитесь, суть не отражает вовсе. Возможность задания текста кнопки помогает только пользователям при выполнении задания, но совершенно не помогает при его интерпретации в логе).