데이터 테이블(Data Table)이란 행과 열이 있는 단순한 스프레스 시트로 데이터를 저장할 수 있는 변수 유형입니다. 행과 열을 기반으로 각 데이터가 식별될 수 있는데, 규칙적인 관습(열은 대문자로, 행은 숫자로 식별한다.)이 적용됩니다. Uipath Studio에서 데이터 테이블 활용하는 방법에 대해 좀 더 자세히 알아보겠습니다.

 

 

데이터 테이블(Data Table) vs. 워크시트(Worksheet)

 

데이터 테이블은 행과 열 집합이 있는 단일 데이터베이스 테이블의 메모리 내의 표현이라면, 엑셀 워크시트는 다양한 시각화 옵션과 광범위한 그래픽 사용자 인터페이스를 사용하는 데이터의 시각적 표현이라는 차이점이 있습니다.

 

Uipath 데이터 테이블 액티비티

 

RPA로 데이터 테이블을 만드는 것은 아래 5가지 액티비티(Activities)를 통해 가능합니다.

 

  • Build Data Table : 열(Column)의 수와 열의 데이터 유형을 선택할 수 있고 숫자, 문자, null 값 등 특정 옵션을 사용해서 각 열을 설정할 수 있다.
  • Read Range : 워크시트(WorkSheet) 또는 워크시트에서 선택한 내용을 가져와서 데이터 테이블(DataTable) 변수로 저장한다.
  • Read CSV : CSV 파일의 내용을 캡처해서 데이터 테이블 변수로 저장한다. 일반적으로 사용되지는 않지만, 아직도 사용하는 애플리케이션이 있다.
  • Data Scraping : 브라우저, 애플리케이션 또는 문서에서 구조화된 데이터를 추출해서 데이터 테이블로 만들 수 있다.
  • Generate Data Table : 사용자(User)가 행과 열 구분자를 표시하도록 해서 비구조화된 데이터로부터 데이터 테이블을 만들 수 있다. 

 

썸네일

 

Uipath데이터 테이블 액티비티 (활용)

 

액티비티를 통해 데이터 테이블을 활용하는 방법에 대해 알아보겠습니다. 대략적으로 살펴보더라도 14개가 넘는 액티비티가 있기 때문에 이 수많은 액티비티들 중에서도 Join Data Tables에 대해 중점적으로 알아보겠습니다.

 

Join Data Tables

 

Join Data Tables는 "일치하지 않는 데이터를 어떻게 해야 하는가?"라는 질문에 답하는 결합 규칙(Join Rule)에 따라 서로 공통된 값을 사용하여 두 테이블의 행(Row)을 결합합니다. 

 

Join Rule

 

결합 규칙(Join Rule)을 적용할 때는 3가지 옵션이 있는데요, 상황에 맞게 설정할 수 있습니다.

 

  1. Inner : 결합 규칙을 충족하는 두 테이블의 모든 행을 유지하고 규칙을 충족하지 않는 행은 결과에서 제거된다.
  2. Left : 데이터 테이블 1의 모든 행과 데이터 테이블 2의 결합 규칙을 충족하는 행만 유지하고 데이터 테이블 2에서 일치하지 않는 행에 대한 열에는 Null 값이 삽입된다.
  3. Full : 결합 규칙 충족 여부와 관계없이 데이터 테이블 1과 2의 모든 행을 유지하고 일치하지 않는 두 테이블의 행에 Null 값이 추가된다.

 

 

Uipath 데이터 테이블 예제

 

신한은행 홈페이지의 금, 은 가격을 일자별로 조회하여 일자별 금 시세 데이터 테이블과 일자별 은 시세 데이터 테이블을 합치는 Join Data Tables 프로세스를 만들어보겠습니다.

 

1) 새로운 프로젝트를 만들고 Open Browser 액티비티의 경로를 신한은행 금 시세 사이트로 지정한다.

 

2) Uipath Studio 상단 메뉴바에 있는 Data Scraping 클릭 → Extract Wizard - Select Element 팝업창이 뜨면 Next 클릭 → 마우스 포인터가 손가락 모양으로 바뀌면 신한은행 금 시세 사이트 표(Table)에서 고시회 차 셀을 클릭한다.

 

신한은행 금 시세 사이트
신한은행 금시세 사이트

 

3) Would you like to extract the data from the whole table? 팝업창이 뜨면 Yes 클릭 → Finish 클릭 → Is data spanning multiple pages? 팝업창이 뜨면 다음 페이지가 없으므로 "No" 클릭

 

여기까지 진행하셨다면, 아래의 화면처럼 Uipath Studio 우측 Properties Panel에 Output 값으로 데이터 테이블 타입의 변수, ExtractDataTable가 들어가 있다는 사실을 확인하실 수 있습니다. 즉, 신한은행 금 시세 사이트에서 데이터를 긁어와서 데이터 테이블 타입의 변수로 저장한 것이죠. 변수명은 주어진대로 그대로 ExtractDataTable를 사용하셔도 되고 편의에 따라 "Ctrl + K"를 누르고 새로 생성하여 부여해주셔도 됩니다. 저는 편의를 위해 dtGold라는 변수명을 지정했습니다.

 

Uipath Studio Data Scraping
Uipath Studio Data Scraping

 

4) 같은 방법으로 신한은행 은 시세 사이트에서도 데이터를 스크랩한다.

 

여기까지 진행하셨다면, dtGold와 dtSilver라는 2개의 데이터 테이블 타입의 변수가 생성되었을 텐데요, 이제 이 2개의 데이터 테이블을 Join Data Tables 액티비티를 통해 합쳐보겠습니다.

 

 

5) Join Data Tables 액티비티의 Join Wizard에서 Input DataTable에 2개의 데이터 테이블 변수를 넣어주고, Output DataTAble에는 새로운 데이터 테이블 타입의 변수를 생성해준다.

 

6) 상황에 맞게, Column Table 1과 Column Table 2에 결합 규칙(Join Rule)을 걸어준다.

 

Join Wizard

 

여기까지 진행하신 후, 프로젝트를 실행해보시면 결과 패널에 금 시세와 은 시세 모두 출력됩니다. 숫자가 많아서 복잡해 보일 수도 있지만, Remove Data Column이나 Remove Data Row 액티비티를 추가로 사용하시면 더욱 깔끔하게 결과 값을 출력하실 수 있습니다. 다음 포스팅에서는 조금 더 심화해서 "엑셀 워크시트(Excel WorkSheet)"에 대해서 알아보도록 하겠습니다.

 

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기