BookmarkSubscribeRSS Feed

[1-3] Macro - Introduction

Started ‎06-16-2020 by
Modified ‎06-16-2020 by
Views 102

[1-3] Macro - Introduction

 

 

 

안녕하세요^^

 

매크로 세 번째 시간입니다.

이번 시간에는, Macro Trigger에 대해 알아보겠습니다.

 

 

 

■ Macro trigger는 무엇일까요?

 

 

Word scanning 동안, 아래 두 토큰이 Macro Trigger로서 인식됩니다.

 

첫 번째는 [1] %name-token으로써 

             macro statement, macro function, macro call을 의미하고,

두 번째는 [2] &name-token으로써 

                macro variable reference(매크로변수 참조)를 의미합니다.

 

 

Word Scanner는 Macro Processor에 위 macro trigger를 통과시킵니다.

 

 

Macro Processor는 

macro statement, macro function, macro call, macro variable resolution을 포함하는

Macro Trigger들을 실행시킵니다.

(낯선 용어들이 나오는데요 

macro statement, macro function, macro call, macro variable resolution이 

무엇인지에 대해서는 앞으로 배워갈 것입니다^^)

 

 

SE22016071022014670.jpg

 

 

 

 

■ Macro Statement의 특징을 알아보겠습니다.

 

- Macro Statement는 %(퍼센트 표기)로 시작하며, ;(세미콜론)으로 마무리됩니다.

- 또한, Macro Statement는 Macro Trigger를 대표하고,

- Macro Processor에 의해 실행됩니다.

 

 

 

예시를 통해 Macro Trigger를 살펴볼텐데요.

그전에 예시에서 사용될 %PUT Statement에 대해 알아보겠습니다.

 

 

■ Statement 중의 하나인 %PUT Statement는 어떻게 쓰이는지 알아보겠습니다.

 

- %PUT Statement는 SAS log에 문자를 써주는 역할을 합니다.

 

 

 

%PUT Statement의 일반적인 형식은 다음과 같습니다.

 

SE22016071022021270.jpg

 

 

문자 앞뒤에 따옴표가 필요하지 않고, SAS Program 어느 위치에서 사용가능합니다.

 

 

 

(예시)를 위해, %PUT Statement을 사용하여 SAS log창에 문자를 써보겠습니다.

 

SE22016071022023270.jpg

 

 

 

SAS Program에 %PUT Hi Mom! ;이 입력되면

아래 그림처럼 Input Stack으로 보내지게 되고,

 

SE22016071022024870.jpg

 

 

 

그 다음아래 그림과 같이 %PUT Hi Mom! 문장이 토큰화됩니다.

 

SE22016071022030870.jpg

 

 

 

이후 Word scanner가 Macro Trigger를 만날 때 마다, 

Macro Trigger는 평가를 받기 위해 Macro Processor에 보내집니다.

 

SE22016071022032370.jpg

 

 

 

 

Macro Processor는 ;(세미콜론)이 나올 때까지 토큰을 계속 읽고,

;(세미콜론)이 나오면 Macro Statement를 실행합니다.

 

SE22016071022033370.jpg

 

 

 

 

위 같은 과정으로 매크로 문장을 실행하게 되는 것입니다.

 

 

감사합니다.^^ 

 

Version history
Last update:
‎06-16-2020 05:51 AM
Updated by:
Contributors

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

Article Labels
Article Tags