• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Прикрепить объект к Бизнес-Процессу. AddBPDocument

Автор Chipollino, 10.10.13, 16:56:59

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Chipollino

Есть необходимость автоматически добавить основной объект на который создан БП в прикреплённые. Написал автооперацию с использованием WF api, но на ней сам БП зависает не выдавая никаких сообщений.
Пробовал создать простенький процесс вроде: Инициатор -> Автооперация -> Участник -> Конец.

Program Main;
begin
inRetCode := nil;
stErrMess := nil;
ParentID := nil;

  RunMethod('WFAddBPDocument', [Route.inID, PDMObject.inID, ParentID, inRetCode, stErrMess]);
  MsgBox( inRetCode, stErrMess, MB_OK);
end;


Сообщение из автооперации выдаёт нули и всё, к участнику задание так и не приходит. В чём может быть ошибка или как иначе прикрепить к БП объект?

Chaa

В автооперации всегда нужно вызывать SetResultOperation, чтобы разрешить процессу двигаться дальше. Подробнее см. в справке по этой функции.
Т.е. добавьте в конец автооперации:
SetResultOperation(True);
+ Благодарностей: 1

Chipollino

Да, я про это не подумал. Теперь процесс движется, но результат всё равно не достигнут - объект так и не виден в списке прикреплённых.

Пробовал создать новую операцию и ставить её в обработчик перед поступлением к пользователю, но к заданию объект всё равно не прикрепляется.

Program Main;
begin
inRetCode := nil;
stErrMess := nil;
ParentID := nil;
Stage := Route.Stage(Route.inAssignedStageIndex);

  RunMethod('WFAddStageDocument', [Stage.inID, PDMObject.inID, ParentID, inRetCode, stErrMess]);
  MsgBox(inRetCode, stErrMess, MB_OK);
  SetResultOperation(True);
end;


inRetCode и stErrMess выдают нули.


Как вообще лучше реализовать автоматическое прикрепление документа к заданию, чтобы участник БП не искал документ в базе, а смог к нему перейти из процесса?

Chaa

Если у вас версия 2013, то попробуйте функцию AddStageDocumentSimple.

Цитата: Chipollino от 11.10.13, 09:18:11
Как вообще лучше реализовать автоматическое прикрепление документа к заданию, чтобы участник БП не искал документ в базе, а смог к нему перейти из процесса?
Где-то должна быть кнопка перехода к основному документу процесса.

Chipollino

Да, 2013.
А кнопка есть в письме из рассылки, которую сегодня при помощи СТП всё таки удалось заставить работать.

За AddStageDocumentSimple  спасибо, буду пробовать.