UiPath Robotic Enterprise Framework
-
Proper exceptions Handling: 가능한 모든 예외 상황을 처리할 수 있게
-
Recovery abilities
-
Effective logging
-
Reporting functionalities
-
High maintainability
-
Extensibility
-
Reusability
-
Ease of development
초기 Github에서 받을 수 있었으나, 지금은 UiPath Studio에 Template이 추가되어 있음.
- 일부는 그대로 사용하고 일부는 변경해서 사용해야 함
- Main.xaml 파일이 배포되고 시작하면 실행하는 파일임
- State-Machine을 사용하였고 4가지 단계를 가짐
- Init
- Get Transaction Data
- Process Transaction
- End Process
Config 파일
- Settings: 프로세스와 관련된 모든 구성 정보 (ex. URL, 파일 경로, 자격증명, 프로세스 큐 이름 등) / Name, Value, Description 으로 구성되어 있음.
- Constants: 개발자에게 유용한 "기술적인" 설정이 저장, Name, Value, Description으로 구성되어 있음 (재시도 횟수, 제한 시간, 지연 시간, 이미지 정확도 설정, 정적 로그 메시지 부분 등)
- MaxRetryNumber: 실패한 트랜잭션을 재시도하는 데 사용, 기본값은 0
- Name은 String, Value는 Object(String, Int32, DateTime 등이 들어갈 수 있음)
- Assets
Get Transaction Data
- TransactionNumber: 트랜잭션을 실행할때마다 번호가 매겨짐. 기본값 1
- TransactionItem: QueueItem 형식(변경 가능)
- TransactionID: 트랜잭션마다 고유해야 함. 기본값: 현재 시스템의 타임스탬프 비즈니스 프로세스의 트랜잭션 고유 ID가 있는 경우 그 값을 사용(예 티켓 넘버)
Process Transaction
세가지 상태 중 하나를 가지게 됨
- BusinessRuleException
- SystemError
- 성공적으로 끝난 경우
Finally에서는 SetTransactionStatus를 호출함. 트랜잭션을 완료한 즉시 호출되며 로깅 및 상태를 설정하는 중요한 역할을 수행함
- RetryNumber와 TransactionNumber를 In/Out Arguments로 받음
End Process
CloseAllApplications과 KillAllProcess를 실행시킴