생성일자, 수정일자, 수정한 사람 등 모든 테이블에서 반드시 가져야 하는 공통 컬럼을 규정으로 있을 경우
주로 물리 모델의 테이블에 컬럼으로 추가하고 특정 도메인에 연결하는 것이 일반적입니다.

본 아티클에서는
물리 모델에 Physical Only로 시스템 컬럼을 추가한 후 그 결과를 매크로 창에 표시하는 Sample 매크로와,
논리 모델에 Logical Only로 어트리뷰트에 추가하는 Sample 매크로를 제공합니다.

소스가 간단하므로 필요에 따라 쉽게 편집하여 사용할 수 있을 것입니다.


Download : AddSystemColumn.bas , AddDefaultAttribute.bas

ER/Studio는 데이터모델링 시 반복되는 작업을 자동화하는 많은 매크로(macro)가 제공된다. (매크로 - 편리한 자동화)

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

 

모든 엔티티에서 가져야 어트리뷰트를 원클릭으로 일괄 반영

생성일자, 수정일자, 수정한 사람 등 모든 테이블에서 반드시 가져야 하는 공통 컬럼을 규정으로 있을 경우,
주로 물리 모델링에서 시스템 컬럼에 사용될 수 있다. (위 소스 코드 참조: 메모장에서 열거나 ER/Studio에서 바로 실행)

또한, 향후 도메인을 생성하고 이 도메인에 묶인 시스템 컬럼을 물리 모델에 반영하도록 보완하도록 하겠다.)

아래는 논리 모델 어트리뷰트를 일괄반영하는 코드이다. 
(보다 실무적인 Sample은 위에서 "소스 코드 다운로드" 참고)

이때 Debug.Print를 사용하여 추가된 엔티티의 어트리뷰트를 매크로 창에 출력한다.

Sub Main 

  Dim MyDiagram As Diagram 
  Dim MyModel As Model 
  Dim MyEntity As Entity 
  Dim MyAttribute As AttributeObj 
  Dim Logical As Boolean 

  Const LogProcPersonNo = "처리자번호" 
  Const LogProcDateTime ="처리일시" 

  Set MyDiagram = DiagramManager.ActiveDiagram 
  Set MyModel = MyDiagram.ActiveModel 

  Logical = MyModel.Logical 
  For Each MyEntity In MyModel.Entities 
    If Logical = True Then 
    '디펄트 attribute 추가 
      If MyEntity.Attributes(LogProcPersonNo) Is Nothing Then 
        Set MyAttribute = MyEntity.Attributes.Add(LogProcPersonNo, False) 
        Debug.Print MyEntity.EntityName + "에 " + LogProcPersonNo + " 추가" 
      End If 
      If MyEntity.Attributes(LogProcDateTime) Is Nothing Then 
        Set MyAttribute = MyEntity.Attributes.Add(LogProcDateTime, False) 
        Debug.Print MyEntity.EntityName + "에 " + LogProcDateTime + " 추가" 
        MyAttribute.Datatype = "Date" 'Datatype 지정
        MyAttribute.DeclaredDefault = "sysdate" '디펄트 지정
      End If 
    End If 
  Next MyEntity 
End Sub
번호 제목 글쓴이 날짜 조회 수
공지 [기술 보고서 다운로드] IDC Technology Spotlight: 모델 기반 데이터 설계를 통한 비즈니스 민첩성 확보 방안 관리자 2015.08.24 8328
공지 ER/Studio Team Server(ER/Studio 용 웹포탈) 설치 및 사용자 가이드 손보라 2014.07.15 39527
공지 Repository 설치 및 사용 가이드 손보라 2014.05.27 50259
공지 ER/Studio Data Architect 설치 및 사용자가이드 관리자2 2012.01.27 52671
33 CONNECT API로 당신의 데이터에 손쉽게 접근하기. [1] file 관리자2 2014.05.08 4038
32 ER/Studio DA에서 ODBC를 이용한 리버스 엔지니어링 file 손보라 2014.05.22 3320
31 리파지토리 서버를 MSSQL Server 또는 Oracle로 설치 시 설정변경이 필요한 속성('BULK INSERT' 에러 및 한글 깨짐 현상과 관련) file 손보라 2014.05.26 3198
30 ER/Studio DA에서 ODBC를 이용한 포워드 엔지니어링 file 손보라 2014.06.25 2053
29 ER/Studio 기본 가이드 #1. ER/Studio Data Architect로 데이터모델링 시작하기 손보라 2014.08.01 1345
28 ER/Studio 기본 가이드 #2. ER/Studio Data Architect로 논리/물리 모델링 시작하기 손보라 2014.08.01 1329
27 ER/Studio 기본 가이드 #3. ER/Studio Data Architect로 기존 데이터베이스 문서화하기 손보라 2014.08.04 1340
26 ER/Studio 기본 가이드 #4. ER/Studio Data Architect로 모델 간 비교 및 차이점 반영하기 손보라 2014.08.05 1308
25 ER/Studio 기본 가이드 #5. ER/Studio Data Architect의 데이터 딕셔너리 사용하기 손보라 2014.08.06 1279
24 ER/Studio 기본 가이드 #6. ER/Studio Data Architect로 메타데이터 import & export하기 손보라 2014.08.07 1248
23 ER/Studio 기본 가이드 #7. 모델의 변경사항을 데이터베이스에 반영하기(Forward Engineer) 손보라 2014.08.08 1617
22 ER/Studio 기본 가이드 #8. 데이터베이스로부터 데이터모델 리버스엔지니어링하기(Reverse Engineer) 손보라 2014.08.08 1428
21 ER/Studio XE6에 새로운 기능! file 손보라 2014.09.18 1563
20 [매크로활용] 엔터티/테이블 자동 생성 손보라 2014.10.08 3740
19 [매크로활용] 엔터티/테이블 엑셀로 추출 손보라 2014.10.11 2874
18 [기술백서] ER/Studio를 활용한 데이터 표준화 시스템 구축방안 관리자 2014.11.12 1141
17 [기술백서] ERwin이 아닌 ER/Studio를 선택하는 10가지 이유 관리자 2014.11.12 1328
16 ERwin으로 작성된 모델을 ER/Studio로 마이그래이션하기 file 손보라 2015.01.12 2531