REFramwork의 구성 4단계
Initialization
: 프로세스를 실행하는데 필요한 사항들을 준비하는 과정
> 정상적으로 작업한 경우 Get Transaction Data로 이동
> Error 가 발생한 경우 End Process 이동
> 추후에 Process Transcation에서 Error 발생하면 다시 돌아오는 곳이기도 함
> System Error = Nothing으로 초기화하고 시작
- 준비작업 (주로 dtTransaction설정, 작업할 사이트 Login_필요에 따라 사이트 Login을 다른 곳에서 진행할 수 있음)
- 초기화
- Config 생성
Get Transaction Data (반복)
: 다음 트랜잭션 데이터를 가져옴, 트랜잭션 item은 기본적으로 Queue Item 이나, 다른형태의 컬렉션도 쓸 수 있어서 필요에 따라 쉽게 변경가능, 다음에 처리할 데이터가 없는 경우 프로세스를 종료시키기 위한 조건을 설정해야함
> 작업할 dtTransaction을 intTransactionNumber에 맞게 전환해주는 곳, TransactionITem 생성(자르는)하는 작업만 수행하는 것이 일반적
> 정상적 작업한 경우 Process Transaction이동
작업할 데이터가 없으면 End Process로 이동
> Error 가 발생한 경우 실패한 Log 남기고 End Process로 이동
> Process Transaction에서 정상적으로 작업한 경우와 Business Exception이 발생한 경우에 돌아오는 곳이기도 함
- 데이터 가져오기
- Process Transaction에 데이터 전달
- 반복문+조건문 (데이터가 있냐 없냐 판단)으로 구성
Process Transaction (반복)
: Get Transaction Data 에서 가져온 데이터를 가지고 처리
Try - Catch
> Business Exception(개발자가 컨트롤할 수 있는 에러) = Nothing (초기화)
> 정상적 작업한 경우 Get Transaction Data로
> Error 가 발생한 경우 System Exc > Init로
Buseinss Exc> Get TrasactionData로 이동
> System Exc(그 이외의 에러) 발생하면 Init부터 다시 작업 재시도
> Bueinss Exc 하면 Get Transaction Data로 이동하여 기존 Item을 Continue 하여 계속 수행
Finally
> Process Transaction 작업 완료 후 후속 처리 하는 곳
> 해당 장소에서 intTransactionNumber가 바뀌며
> Excp에 대한 스샷 찍고
> 각 Exc에 맞게 IntTransactionNumber 조정 가능
- 핵심 프로세스 진행
End Process
: 프로세스 종료시키는 과정
> Sys Exc발생했는지 여부에 따라 마지막 작업이 다름
> Sys Exc 발생시 전체 화면 스샷 찍고 실패 메일 보내고 모든 프로그램의 프로세스를 Kill하고 종료
> Sys Exc 없을 시 마무리 작업 후 성공 메일 보내고 Kil Processs
> 만약 End Process에서 Erro가 발생하면 실패 Log만 남기고 종료
- 작업정리
- 응용프로그램 닫기
- 이메일발송
* 용어 설명:
Config파일
- Uipath의 설정정보 웹 애플리케이션에 접근하기 위한 url, 오케스트레이터의 Queue이름, 로그인 아이디, 폴더나 파일의 경로, 운영자의 이메일 주소 등이 있음.
- REFramework에서는 이러한 설정 정보를 Config파일(Config.xlsx)로 부터 읽어옴
- 이렇게 읽어 온 정보는 각 State Machine간에 공유되는 Dictionary에 저장하여 사용함.
- 이것은 설정 정보가 변경되는 경우 워크플로우를 직접 수정하지 않고 설정파일에서 쉽게 변경해줌으로써 유지, 관리가 쉽기 때문임.
Queue 데이터처리방식
: 선입선출(FIFO, First In First Out)
큐는 데이터를 순차적으로 처리하는데 이는 은행에서 번호표에 따라 업무처리를 하는 원리와 같다.
(참고)
Initialization
- 브라우저 여는 작업이 "반복"이 되면 Process Transaction에서 작업하도록
'UiPath' 카테고리의 다른 글
[UiPath] RE Framework 이론 및 실습3 (0) | 2023.10.31 |
---|---|
[UiPath] REFramework 이론 및 실습 (0) | 2023.10.30 |
[UiPath] Gmail 자동화2 (0) | 2023.10.25 |
[UiPath] Gmail 자동화 (0) | 2023.10.24 |
[UiPath] 이메일 자동화 1 (0) | 2023.10.24 |