| Цитата |
|---|
Ахат Баязи написал: Пишу активити для использования в БП, для ЭЦП. Задача: Необходимо разработать активити для использования в БП в виде самостоятельного действия в редакторе БП, которое: 1. отправляет прикрепленный документ на подпись одному или нескольким подписантам через постановку задания БП; 2. при выполнении задания БП подписант должен подписывать документ посредством ЭЦП; 3. после прохождения аутентификации ЭЦП, по данные подписанта сгенерировать QR-код; 4. внедрить QR-код в подписываемый документ. В данном посте буду описывать процесс реализации и проблемы, с которыми столкнулся. |
Реализация:1. Для своего активити взял за основу штатное активити: "Утверждение документа" (
approveactivity)
2. создал свое активити:
w4aecpapproveactivity
Результат:
Активити появилось в конструкторе БП и вполне рабочее (со штатным функционалом "Утверждение документа")
Не пойму как:
1. добавить свою кнопку в задании БП
2. как подключить свой JS-логику в задании БП.
Делаю так:
1. добавить свою кнопку в задании БП
в файле: local/activities/w4aecpapproveactivity/w4aecpapproveactivity
.php
метод: ShowTaskForm, добавил HTML-код доп. кнопки, но она не выводится в задании БП
Скрытый текст |
|---|
| Код |
|---|
public static function ShowTaskForm($arTask, $userId, $userName = "")
{
$form = '';
if (!array_key_exists("ShowComment", $arTask["PARAMETERS"]) || ($arTask["PARAMETERS"]["ShowComment"] != "N"))
{
$required = '';
if (isset($arTask['PARAMETERS']['CommentRequired']))
{
switch ($arTask['PARAMETERS']['CommentRequired'])
{
case 'Y':
$required = '<span>*</span>';
break;
case 'YA':
$required = '<span style="color: green;">*</span>';
break;
case 'YR':
$required = '<span style="color: red">*</span>';
break;
default:
break;
}
}
$form .=
'<tr><td valign="top" width="40%" align="right" class="bizproc-field-name">'
.($arTask["PARAMETERS"]["CommentLabelMessage"] <> '' ? $arTask["PARAMETERS"]["CommentLabelMessage"] : GetMessage("BPAA_ACT_COMMENT"))
.$required
.':</td>'.
'<td valign="top" width="60%" class="bizproc-field-value">'.
'<textarea rows="3" cols="50" name="task_comment"></textarea>'.
'</td></tr>';
$form .=
'<tr><td valign="top" width="40%" align="right" class="bizproc-field-name">'
.($arTask["PARAMETERS"]["CommentLabelMessage"] <> '' ? $arTask["PARAMETERS"]["CommentLabelMessage"] : GetMessage("BPAA_ACT_COMMENT"))
.$required
.':</td>'.
'<td valign="top" width="60%" class="bizproc-field-value">'.
'<textarea rows="3" cols="50" name="task_comment">егеге-2</textarea>'.
'</td></tr>';
}
$buttons =
'<input type="submit" name="approve" value="'.($arTask["PARAMETERS"]["TaskButton1Message"] <> '' ? $arTask["PARAMETERS"]["TaskButton1Message"] : GetMessage("BPAA_ACT_BUTTON1")).'"/>'.
'<input type="submit" name="nonapprove" value="'.($arTask["PARAMETERS"]["TaskButton2Message"] <> '' ? $arTask["PARAMETERS"]["TaskButton2Message"] : GetMessage("BPAA_ACT_BUTTON2")).'"/>';
$buttons .='<input type="submit" name="ecp_sign" value="Подписать ЭЦП"/>';
return array($form, $buttons);
} |
|
[CODE][/CODE]