---
title: "새로운 기능: 스타일비전(StyleVision)에서 제공하는 오센틱(Authentic) 스크립팅 기능"
date: "2010-10-14"
tags: 
  - "authentic"
  - "authentic-scripting"
  - "stylevision"
  - "v2011"
description: StyleVision 2011에서 새롭게 추가된 강력한 스크립팅 기능을 통해, JavaScript 및 VBScript를 통합 지원하는 견고한 데이터 입력 애플리케이션을 개발할 수 있습니다.
---
Status: #blog

Tags:  #authentic #authentic-scripting #stylevision #v2011

Categories: [Altova](/blog/ko/category/altova.md) 
# 새로운 기능: 스타일비전(StyleVision)에서 제공하는 오센틱(Authentic) 스크립팅 기능

StyleVision은 최근 출시된 버전과 현재 개발 중인 버전에서 새롭게 추가된 매우 유용한 기능들 덕분에 많은 발전을 이루었습니다 [절대 위치 지정](https://www.altova.com/ko/stylevision/stylesheet-designer.html), [편집 가능한 변수들](https://www.altova.com/ko/stylevision/electronic-forms.html) eForms에서, [글로벌 템플릿](https://www.altova.com/ko/stylevision/stylesheet-designer.html), 그리고 당연히, [도표 작성, 데이터 시각화, 차트 작성](https://www.altova.com/ko/stylevision/charts.html), 보고서 작성 및 전자 양식 디자인에 강력한 기능과 유연성을 제공합니다. 저희는 2011년에 출시된 제품에 [통합 스크립트 환경](https://www.altova.com/ko/stylevision/authentic-scripting.html) 기능을 추가하여 이러한 기능들을 더욱 확장했습니다. 이를 통해 Authentic 사용자를 위한 강력한 데이터 입력 애플리케이션을 개발할 수 있게 되었습니다. 스크립트 기능은 StyleVision 디자인(SPS)에 직접 내장되어 있어, Authentic 사용자는 XML 및 데이터베이스 소스를 업데이트하기 위해 단순히 전자 양식을 열면 됩니다. 이벤트 처리기 및 매크로 구성 요소는 지원되는 스크립트 언어, 자바스크립트 또는 VBScript를 사용하여 작성할 수 있으며, 또한 드래그 앤 드롭 기능을 활용하여 입력 양식을 시각적으로 디자인할 수도 있습니다. StyleVision 디자인(SPS)에 스크립트 기능을 추가하려면, "Authentic | Edit Authentic Scripts" 메뉴를 선택하거나, 디자인 탭의 컨텍스트 메뉴에서 "Authentic Script"를 선택하여 스크립트 편집기 창을 열어주세요. 

[![스타일 비전 스크립트](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/stylevision_script_thumb.jpg "stylevision_script")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/stylevision_script.jpg) 

스크립트 편집기는 다음 네 가지 주요 구성 요소를 생성할 수 있는 인터페이스를 제공합니다

- **글로벌 선언** - 폼, 이벤트 핸들러 및 매크로에서 사용할 수 있는 변수와 함수를 포함하는 스크립트입니다.
- **매크로** - 사용자가 정의한 기능을 디자인 요소, 도구 모음 버튼 또는 컨텍스트 메뉴 항목에 할당하는 데 사용되는 스크립트입니다.
- ** 이벤트 핸들러 ** - 인증 양식 내의 사용자 인터페이스 요소에 연결될 수 있는 스크립트입니다. 다양한 이벤트(예: 저장 시, 유효성 검사 시 등)와 연동되며, 스크립트의 반환 값은 일반적으로 애플리케이션이 어떻게 추가 작업을 수행해야 하는지 지시합니다.
- **폼(Form)** - 텍스트 입력 필드, 버튼 등으로 구성된 간단한 그래픽 요소입니다. 폼은 스크립트 내에서 이벤트 처리기나 매크로로 사용될 때, 대화 상자를 표시하거나 추가적인 사용자 입력을 요청하는 데 사용됩니다.

**글로벌 선언** "글로벌 선언" 구성 요소는 기본적으로 모든 스크립트 프로젝트에 포함됩니다. 변수와 함수는 프로젝트에 연결된 스크립트 언어(JScript 또는 VBScript)로 작성된 코드 조각을 사용하여 추가됩니다. 아래에 "StartChangingAddress"라는 예시 함수가 나와 있습니다 

[![스크립트 1](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script1_thumb.gif "script1")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script1.gif) 

글로벌 선언 스크립트에서 생성된 변수 또는 함수는 스크립트 프로젝트 내의 모든 폼, 이벤트 핸들러 및 매크로에서 접근할 수 있습니다. **매크로** 매크로는 다른 스크립트나 이벤트 핸들러에서 호출될 수 있는 함수를 생성할 수 있게 해줍니다. 예를 들어, 아래에 제시된 매크로는 `GlobalDeclarations`를 사용하여, 특히 `StartChangingAddress` 함수를 활용하여 활성 XML 문서에 정보를 추가하는 폼을 만듭니다. 

[![스크립트 2](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script2_thumb.gif "script2")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script2.gif) 

매크로는 스타일 비전 디자인 요소와 연결되어 있으며, 속성 창의 "Authentic" 그룹에서 지정할 수 있습니다. 매크로에서 지원하는 객체 이벤트는 다음과 같습니다

- 변경 작업이 시작되기 전에 실행되는 이벤트
- 변경 후 실행
- 링크 클릭 전에 실행될 이벤트
- 클릭 시 실행
- (화면의) 포커스(초점)를 설정
- 포커스 해제 시 발생

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image003_thumb.gif "clip_image003")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image003.gif) 

매크로는 스크립트 프로젝트 트리에서 마우스 오른쪽 버튼을 클릭하여 나타나는 메뉴를 통해 관리할 수 있으며, 이 메뉴에서 매크로를 추가하거나 이름을 변경할 수 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image004_thumb.gif "clip_image004")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image004.gif) 

**이벤트 핸들러** 이벤트 핸들러는 "속성 및 이벤트" 창의 도구 모음에서 "이벤트" 아이콘을 선택하여 정의할 수도 있습니다. 여기서 특정 동작이 시작되거나 완료될 때 애플리케이션이 어떻게 반응해야 하는지 정의할 수 있습니다. 제어할 수 있는 이벤트에는 마우스 움직임 및 클릭, 드래그 앤 드롭, 키 입력 등이 있습니다. 2011 버전부터 추가된 "오토매틱 뷰" 이벤트 스크립트에는 다음과 같은 것들이 포함됩니다

- AuthenticLoad: Authentic 프로그램이 사용자가 파일을 사용하기 전에 필요한 기능을 설정할 수 있도록 합니다
- "On_AuthenticBeforeSave" 기능은 예를 들어 입력된 데이터가 완전하지 않은 경우, 저장 작업을 방지할 수 있도록 해줍니다
- `On_AuthenticToolbarButtonClicked` 이벤트는 툴바 버튼 클릭 시 동작을 확장하거나 수정할 수 있도록 지원합니다
- `On_AuthenticUserAddedXMLNode` 이벤트는 Authentic 모듈이 새로 추가된 XML 노드에 필요한 경우 자식 노드나 텍스트 내용을 추가할 수 있도록 합니다. 이를 통해 폼이 데이터로 미리 채워질 수 있습니다

스크립트 편집기는 이벤트 처리기 스크립트를 작성할 수 있는 모든 이벤트들을 포함하는 폴더를 제공합니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image005_thumb.gif "clip_image005")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image005.gif)

**폼(Form)** 오센틱 스크립팅 에디터는 텍스트 입력 필드, 버튼, 레이블 등 다양한 객체 팔레트를 사용하여 시각적으로 폼을 디자인할 수 있습니다. 폼의 크기, 배경색, 글꼴 스타일 등 일반적인 속성은 속성 창에서 정의할 수 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image006_thumb.gif "clip_image006")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image006.gif) 

폼 객체 팔레트는 사용 가능한 모든 객체를 제공합니다. 또한, 오른쪽 클릭 메뉴에서 "ActiveX 컨트롤 추가" 명령을 선택하여 등록된 ActiveX 컨트롤을 추가할 수도 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image007_thumb.gif "clip_image007")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image007.gif) 

디자인에 객체를 삽입한 후, 속성 창에서 해당 객체의 모양 관련 속성(예: 정렬, 테두리, 스크롤바 등)을 설정할 수 있습니다.

### 실제 스크립트 작성 방법

Authentic View 스크립팅은 StyleVision 디자이너에게 사용자 인터페이스의 다양한 측면에 대한 완벽하고 유연한 제어 기능을 제공합니다. 또한, 기존 COM API에 대한 확장을 통해 스크립팅 및 인터랙티브 전자 양식 디자인에 대한 더 많은 유연성을 제공합니다. 예를 들어: **인터랙티브 객체별 디자인 요소** - 버튼 클릭, 양식 요소 수정, 필드 간 포커스 변경 등 -는 Authentic 인터페이스를 통해 접근할 수 있습니다. 사용자 동작에는 OnClick, OnBeforeLinkClick, OnBeforeChange, OnAfterChange, OnSetFocus, 그리고 OnKillFocus 등이 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image008_thumb.gif "clip_image008")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image008.gif) 

** 입력 지원 창**은 표시되지 않도록 설정하여, 실제 사용자가 의도된 요소, 속성 및 개체에 대해서만 수정 작업을 수행할 수 있도록 제한할 수 있습니다. ** 컨텍스트 메뉴 (오른쪽 클릭 메뉴)**는 기존 명령을 제거하거나 새로운 명령을 추가하여 완전히 사용자 정의할 수 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image009_thumb.gif "clip_image009")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image009.gif) 

새로운 **도구 모음 버튼**을 만들고 **매크로**와 연결하여, 디자이너는 도구 모음에 완전히 새로운 **명령**을 추가할 수 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image010_thumb.gif "clip_image010")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image010.gif) 

맞춤 제작 및 표준 제품 **도구 모음** 사용자가 접근해서는 안 되는 버튼들을 비활성화하여 인터페이스를 수정할 수 있습니다. 

[![(이미지 삽입)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image011_thumb.gif "clip_image011")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image011.gif) 

**COM API** 또한 새로운 인터페이스와 추가적인 메서드 및 속성들을 포함하여 확장되었습니다. 이러한 추가 기능에는 다음이 포함됩니다

- **AuthenticView** (즉, CreateXMLNode, EvaluateXPath, GetToolbarButtonState)
- **실제 범위** (예: 선택 여부, 변수 값 가져오기)
- **XMLData** (즉, GetChildElement, InsertChildAfter 함수 사용)`
- **실제 이벤트 컨텍스트** (예: XML 노드 가져오기, 변수 값 설정)`
- **진정한 컨텍스트 메뉴** (예: 항목 수 계산, 항목 삭제, 항목 텍스트 가져오기)

**새로운 기능들을 확인해 보세요. 지금 바로 [30일 무료 체험판](https://www.altova.com/ko/download/stylevision/db_xslt_stylesheet_designer_enterprise.html)을 다운로드하고 StyleVision을 경험해 보세요!**
