23
유엔진 유엔진 개발 개발 교육 교육 (액티비티 액티비티,워크아이템 워크아이템 핸들러 핸들러 실습 실습) ㈜유엔진솔루션즈 유엔진솔루션즈 2010 2010년 2월 23 23일 작성자 작성자 : : 김보상 김보상

유엔진 BPM 커스터마이징 개발 방법

Embed Size (px)

Citation preview

Page 1: 유엔진 BPM 커스터마이징 개발 방법

유엔진유엔진 개발개발 교육교육((액티비티액티비티,,워크아이템워크아이템 핸들러핸들러 실습실습))

㈜㈜유엔진솔루션즈유엔진솔루션즈20102010년년 22월월 2323일일작성자작성자 : : 김보상김보상

Page 2: 유엔진 BPM 커스터마이징 개발 방법

목차

1

2

Page § 2

5

3

4

Page 3: 유엔진 BPM 커스터마이징 개발 방법

2 31

액티비티 타입

대분류 (Group)소분류

커스텀 액티비티

1. 액티비티 팔레트

Page § 3

Page 4: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티

2. activitytypes.xml

Page § 4

org.uengine.processdesigner.activitytypes.xml

Page 5: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티

3. Activity Type

1

속성 선언

Page § 5

2

3

액티비티 명 지정

액티비티 로직 구현

Page 6: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티

4. uEngine process model

Page § 6

Page 7: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티

4. 시퀀스 다이어그램ActivityType

사용자

Process Designer Admin PortalEnactment Server

1 : 액티비티의편집()2 : 리플렉션을통해입력받을속성이름들을얻어옴()

3 : 액티비티속성편집폼의생성()4 : 리플렉션을통해액티비티속성값세팅()

ProcessInstance

디자인타임

Page § 7

5 : 프로세스를시작시킴()6 : 액티비티인스턴스생성로직을호출() 7 : 생성()

8 : 인스턴스를생성하여넘김()9 : 액티비티인스턴스를DB에보존시킴()

10 : 액티비티를수행시킴()

11 : 프로세스상태모니터링()12 : 상태보기()

ProcessInstance

13 : 상태데이터얻음()

14 : 상태맵을생성()

15 : UI를만들어상태보고()

실행타임

모니터링타임

Page 8: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 개발실습

1. FileGenerationActivity

Page § 8

Page 9: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 개발실습

2. activitytypes.xml

Page § 9

Page 10: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 개발실습

3. 액티비티 아이콘

1. 파일명은 액티비티 클래스명과 동일.Ex) FileGenerationActivity.svg

2. 파일종류는 *.svg.

3. 패키지 경로는 액티비티 패키지 +”images.svg”.Ex) com.defaultcompany.activities.images.svg

프로세스디자이너 아이콘

Page § 10

1. 파일명은 액티비티 클래스명과 동일.Ex) FileGenerationActivity.png

2. 파일종류는 *.png.

3. 액티비티 이미지 폴더는 \uengine-web\processmanager\images\

플로우차트 아이콘

Page 11: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 개발실습

4. 액티비티 속성UI

Page § 11

Page 12: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 개발실습

5. 실행 테스트(1)

Page § 12

Page 13: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 개발실습

5. 실행 테스트(2)

1 2

Page § 13

3 4

Page 14: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 확장

1. Metaworks callback method

Page § 14

Page 15: 유엔진 BPM 커스터마이징 개발 방법

커스텀 액티비티 확장

2. Validation

Page § 15

Page 16: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러

1. Workitem handler(WIH)

Page § 16

Page 17: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러

1. Workitem handler(WIH)

1. HumanActivity가 사용.

2. 모델링 시 액티비티에 설정 된 파라미터 타입에 따라서 자동으로 UI를 생성해준다.

3. 액티비티에 따른 비즈니스 로직을 사용하지 못하기 때문에 프로젝트에서는 사용하지 않음.

Default handler

Page § 17

1. FormActivity가 사용.

2. 액티비티마다 폼 정의가 필요함.

3. 폼 매니저에서 업무화면을 빠르게 개발 할 수 있고 폼 정의를 재활용 가능하다.

4. 화면 간단한 로직을 폼 정의 내에서 사용 할 수 있다.

Form handler

Page 18: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러

2. Worklist and Workitem handler

Page § 18

Page 19: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러

3. 액티비티의 WIH 지정

Page § 19

/was/webapps/uengine-web/wih/troubleticket/reportTrouble

Page 20: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러

4. index.jsp

Interface 객체 얻기

업무 정보 얻기

Page § 20

submit.jsp로 데이터 전달

플로우차트 옵션

플로우차트 소스 얻기

Page 21: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러

5. submit.jsp

업무 정보 얻기

Page § 21

인스턴스 얻기

액티비티 완료

서버에 적용

Page 22: 유엔진 BPM 커스터마이징 개발 방법

커스텀 워크아이템 핸들러 개발실습

1. 장애신고 프로세스

액티비티 역할 사용 파라미터

장애신고 intiator (장애신고자)trouble_class/text/out (장애분류)

trouble_desc/text/out (장애내용)

Page § 22

trouble_desc/text/out (장애내용)

장애처리자 지정 manager (장애관리자)

trouble_class/text/in (장애분류)

trouble_desc/text/in (장애내용)

rightPerson/role/out(장애처리자)

장애 해결 rightPerson (장애처리자)

trouble_class/text/in (장애분류)

trouble_desc/text/in (장애내용)

resolution/text/out (장애해결내용)

장애해결 보고 intiator (장애신고자)

trouble_class/text/in (장애분류)

trouble_desc/text/in (장애내용)

resolution/text/in (장애해결내용)

Page 23: 유엔진 BPM 커스터마이징 개발 방법

감사합니다!