Filenet - ПОЛУЧИТЬ имя пользователя от F_Originator
Я использую файловую систему BPM для системы одобрения, и я хочу извлечь имя пользователя из F_Originator, чтобы я мог отправить электронное письмо отправителю о состоянии утвержденного или отклоненного документа. Как я могу извлечь имя пользователя из F_Originator в рабочем процессе (не используя код Java)?
3 ответа
Я думаю, что нашел способ получить имя пользователя, хотя он не использует F_Originator. Я создал строковое поле с именем username, а затем на этапе запуска на вкладке Assignment я назначил имя пользователя с помощью userid(), и оно дает вам имя пользователя. Я думаю, что это не лучший способ получить имя пользователя, но в моем случае это сработало.
Отвечать в соответствии с точным требованием
- На этапе запуска назначьте вывод userid () в поле данных рабочего потока.
- Используйте опцию OOTB для отправки электронной почты (CE_Operations) и редактирования шаблонов OOTB или
- Имейте очередь компонента и установите VWSession (или вы можете иметь собственный модуль входа в систему, чтобы получить VWSession)
- Вызовите yourVWSession.convertIdtoUserName(int userId), чтобы получить имя пользователя
- затем вызвать yourVWSession.fetchUserInfo(имя пользователя), он возвращает VWUserInfo
- из VWUserInfo вы можете использовать getEMailAddress(), чтобы получить идентификатор электронной почты пользователя.
Надеюсь это поможет
Я не думаю, что есть способ сделать это в рабочем процессе или, по крайней мере, я не знаю.
Я бы посоветовал вам иметь очередь компонентов, такую как ce_operations, передать F_Originator и использовать vwSession.convertIdToUserName (userId)
************** обновленный ответ ************
Вы можете использовать метод userid(), чтобы получить пользователя, который обработал рабочий процесс. но здесь есть ловушка, если в обработке рабочего процесса участвует более одного пользователя, userid() всегда будет возвращать последнего пользователя. Чтобы получить имя пользователя, запустившего рабочий процесс, попробуйте
- Определите поле данных в рабочем процессе и присвойте ему значение userid() на этапе запуска
- Если вы запускаете рабочий процесс из кода, вы можете установить значение имени пользователя в поле данных