ER/Studio [매크로활용] 용어사전 활용

2012.04.10 20:40

문효섭 조회 수:11869

  용어사전의 표준 용어를 논리 모델(한글명), 물리 모델(영문명)에 자동으로 반영합니다

Download : Auto Naming.bas (Auto Naming 매크로 소스파일)

※ 매크로 소스는 별도 문의 (ask@embarcadero.kr)


생산성 향상을 위한 매크로

ER/Studio Enterprise에는 데이터모델링 시 반복되는 작업을 자동화하기 위해 많은 유용한 매크로(macro)를 제공한다.

내장된 매크로 중 바로 업무에 적용할 수 있는 유용한 매크로의 사용법을 하나하나 실습을 통해 익혀보자.

<매크로를 활용한 명명 자동변환>

사례 1 : 논리 모델링 -> 용어사전 적용 -> 물리 모델링 변환 
사례 2 : 논리 모델링 내용 변경 -> 용어사전 새로 적용 -> 물리 모델링에 변경된 내용만 반영 
사례 3 : 운영DB에서 리버스(논리/물리 모두 영문) -> 논리 모델링 한글로 변환

Auto_Naming 매크로 추가하기 

①먼저, 화면 왼편 모델링개체 탐색기의 하단 네 번째 탭을(Macro) 선택한 후, 매크로를 추가한다.

Macros 영역을 선택하고, 오른쪽 마우스 버튼을 눌러서 팝업 메뉴에서 Add Macro를 클릭한다. 

②코드 영역에 Auto_Naming.bas 파일의 내용을 모두 복사하여 붙혀넣기 한 후 Auto_Naming 으로 저장한다. 

③추가한 매크로를 사용하기 편하도록 Shortcuts 메뉴를 설정할 수 있다. 

매크로를 메인 메뉴를 통해서 접근할 수도 있고, 다이어그램에서 바로 오른쪽 마우스 버튼을 클릭하여 접근할 수도 있다. 

Auto_Naming 매크로를 선택한 후 오른쪽 마우스 버튼을 클릭, Add/Remove to Shortcuts > Main Menu 를 선택한다. 

④Macro Shortcuts 메인 메뉴에 위에서 등록한 매크로가 추가된 것을 확인할 수 있다. 
 

사례1 : 논리 모델링 -> 용어사전 적용 -> 물리 모델링 변환

용어사전을 활용해 논리 모델링의 엔티티명/속성명을 물리 모델링의 테이블명/컬럼명으로 대응시키는 방법에 대해 알아보자. 

①다음과 같이 논리 모델링을 작성한다. 

※  단어와 단어 사이는 스페이스로 구분한다. 

②다음과 같이 예제에서 사용되는 용어에 대한 논리명과 물리명을 작성한 후, C:\temp 디렉토리 아래에 “Dictionary.txt” 파일로 저장한다. 

③화면 왼편 모델링개체 탐색기의 하단 네 번째 탭을 선택한 후, Auto_Naming 매크로를 선택한 후

마우스 오른쪽 버튼을 클릭하여 Run Macro 메뉴를 실행한다. 

④그럼, 다음과 같은 실행화면이 나타난다. 

-    Target names : 용어사전을 논리명, 물리명에 적용할지를 선택한다.

-    Target Entities : 전체 엔티티, 또는 선택 엔티티에만 적용할지를 선택한다.

-    Target Objects : 엔티티, 속성, 도메인 등 용어사전을 적용할 개체를 선택한다.

-    Word separation : 변환한 단어의 구분자를 무엇으로 할지를 선택한다.

예를 들어 논리명 “한글 명”에 해당하는 용어사전이 “한글,KOR”과 “명,NM”로 나누어져 있는 경우, 단어 구분자를 No로 지정하면 물리명은 “KORNM”으로, 단어 구분자를 Yes, _ 로 지정하면 물리명은 “KOR_NM”으로 변환된다.

-    Case sensitive : 대문자, 소문자, 또는 그대로 변환할지를 선택한다. 

⑤[Open] 버튼을 클릭하여 “Dictionary.txt” 파일을 선택한 후 [Excute] 버튼을 클릭하면 물리명이 자동으로 변환된다. 

 

(1)   [Open] 버튼을 클릭하여 “Dictionary.txt”파일을 선택하면 파일의 내용이 보여진다.

(2)   [Execute] 버튼을 클릭하여 실행하면 (2)에는 용어사전에 없는 논리명들이 보여지며, (3)에는 변환된 결과가 보여진다. 

⑥물리명이 제대로 변환되었는지를 확인하기 위해 논리 모델을 선택한 후 오른쪽 버튼을 클릭하여

Naming Standards Utility를 선택하면 다음과 같이 유틸리티 대화상자가 나타난다. 

Source Name이 자동으로 생성된 것을 볼 수 있으며, 이는 물리 모델링 변환시의 명으로 사용된다. 

⑦논리 모델링 단계가 완료되면 물리 모델링 단계로 변환해 보도록 하자.

Data Model 창에서 Logical을 선택하고 오른쪽 마우스 버튼을 눌러서 팝업 메뉴를 띄워도 되고, 아니면

Model 메뉴에서 Generate Physical Model메뉴를 선택해도 된다.  

 
위와 같이 물리 모델링의 테이블명과 컬럼명이 자동으로 생성된 것을 볼 수 있다. 

지금까지 논리 모델링 작업이 끝나고, 매크로를 활용해 용어사전을 적용한 후, 물리 모델링 작업을 완료하였다. 
 

사례 2 : 논리 모델링 내용 변경 -> 용어사전 새로 적용 -> 물리 모델링에 변경된 내용만 반영

①다음과 같이 논리 모델링에서 사원 엔티티에 비고 속성이 추가되었다. 

②Auto_Naming 매크로를 실행한 후, “Dictionary.txt” 파일을 [Open] 한 후 [Execute] 버튼을클릭해보자. 

위와 같이 Unmatch words에 비고가 보여질 것이다. 이는 새로 추가한 비고 속성이 용어사전 “Dictionary.txt”에 없기 때문이다. 

③“Dictionary.txt” 파일을 직접 열어 변경한 후 다시 사용할 수 도 있지만, 다음과 같이  버튼을 클릭하여 왼쪽 영역으로 이동 후, 바로 추가한 후 다시 [Execute] 버튼을 클릭하면, 추가된 속성에 대한 물리명도 쉽게 적용이 가능하다.

④변경된 용어사전을 [Save] 버튼을 클릭하여 “Dictionary.txt”에 저장한다. 

⑤마지막으로 논리 모델링의 변경된 내용을 물리 모델링 단계로 통합해 보기로 하자.

Data Model 창에서 Logical을 선택한 후 오른쪽 마우스 버튼을 눌러 팝업메뉴에서 Compare and Merge Utility를

선택하면  Compare and Merge Utility 대화상자가 나타난다.  
 

논리 모델링의 변경된 내용을 물리 모델링에 모두 반영하기 위해서 중간의 Set All Resolutions 콤보상자에서

Set All to Merge into Target을 선택한 후 [Finish] 버튼을 클릭하면 다음과 같이 변경된 내용이 물리 모델링 단계에 적용된 모습을 볼 수 있다. 

사례 3 : 운영DB에서 리버스(논리/물리 모두 영문) -> 논리 모델링 한글로 변환

①현재 운영중인 데이터베이스에서 스키마 정보를 ER/Studio로 가지고 오면 논리 모델링과 물리 모델링의 엔티티/테이블, 속성/컬럼 명이 모두 영문으로 변환된다.

Auto_Naming 매크로를 활용하여 논리 모델링의 엔티티명과 속성명을 한글명으로 변환해 보도록 하자. 

②Auto_Naming 매크로를 실행한다.

위와 같이 Target names는 Logical names를 선택, [Open] 버튼을 클릭하여 “Dictionary.txt” 파일을 연 다음 [Execute] 버튼을 클릭해보자.

③논리 모델링 영역의 엔티티명과 속성명이 용어사전에 있는 한글명으로 일괄 변경된 것을 확인할 수 있다. 

이는 현재 운영중인 데이터베이스에서 스키마 정보를 ER/Studio로 가지고 와 한글명으로 논리 모델링을 작업하려고 할 때 유용하게 사용될 수 있다. 

 

번호 제목 글쓴이 날짜 조회 수
공지 [기술 보고서 다운로드] IDC Technology Spotlight: 모델 기반 데이터 설계를 통한 비즈니스 민첩성 확보 방안 관리자 2015.08.24 8230
공지 ER/Studio Team Server(ER/Studio 용 웹포탈) 설치 및 사용자 가이드 손보라 2014.07.15 39436
공지 Repository 설치 및 사용 가이드 손보라 2014.05.27 50157
공지 ER/Studio Data Architect 설치 및 사용자가이드 관리자2 2012.01.27 52568
21 [기술백서] DB툴 선택시 고려사항 top10 관리자 2014.11.12 1632
20 [기술백서] 하루에 1시간을 벌 수 있는 10가지 방법 관리자 2014.11.12 1820
19 ERwin으로 작성된 모델을 ER/Studio로 마이그래이션하기 file 손보라 2015.01.12 2523
18 ER/Studio vs ERwin, 그 차이점을 발견해보세요! file 손보라 2015.02.06 5002
17 20150305 [온라인세미나] 스마트한 데이터모델링 with ER/Studio 발표자료 관리자 2015.03.09 4196
16 Embarcadero의 웹포탈인 TeamServer를 경험해보세요! 손보라 2015.03.17 4439
15 ER/Studio DA와 Team Server 연동하기 손보라 2015.03.17 4143
14 ER/Studio! MongoDB 지원 손보라 2015.03.19 4787
13 ER/Studio의 웹포탈인 TeamServer Core 사용해보기(호스팅/트라이얼) file 손보라 2015.04.08 4433
12 [매크로활용] [MySQL] 컬럼의 Definition을 DB Comment에 추가하기 file 손보라 2015.08.06 5431
11 [매크로활용] 매크로 사용방법 file 손보라 2015.08.11 4147
10 리버스 엔지니어링 후 엔터티/속성 논리명의 영문을 한글 변환 작업 [1] file 손보라 2015.08.12 4292
9 ER/Studio DA 네이밍 표준 템플릿(NST) 파일 생성 방법 file 손보라 2015.08.12 4515
8 자동 네이밍 스탠다드 기능으로 논리명<->물리명 자동 변환 file 손보라 2015.08.13 4445
7 MSSQL Server에 리파지토리 설치 시 "##tmp[테이블명] table could not initialize bulk insert" 문제 관리자 2015.09.04 5079
6 [발표자료] 20151203 엔터프라이즈 환경의 데이터모델 관리방안 관리자 2015.12.04 3941
5 ER/Studio 2016 출시 - 더욱 강력해진 엔터프라이즈 급 데이터모델링 도구 ER/Studio 2016 발표 손보라 2016.02.02 4775
4 ER/Studio 2016 출시 세미나 - 비즈니스 중심의 데이터 아키텍처 구축 손보라 2016.02.02 5096
3 [발표자료] 20160908 효과적인 데이터모델링을 위한 14가지 방법 [2] 관리자 2016.09.08 5319