# 블록 유형

블록의 카테고리: 트리거 블록, 동작 블록, 값 블록, 로직 블록 및 표현식. 삭제 라이브러리에서 이러한 블록을 끌어다 놓아 스크립트를 작성할 수 있습니다.

블록은 스크립트/글로벌 스크립트에 사용됩니다.

카테고리 | 스크립트 | 글로벌 스크립트
트리거 |  |
오퍼레이션 |  |
값 |  |
로직 |  |
표현식 |  |

#### 한도

- 화면, 콘텐츠 및 전역 스크립트당 최대 1000개의 동작

- 동작 또는 스크립트 구역당 최대 1000개의 작업

## 트리거 블록

트리거는 작업을 실행하는 이벤트입니다. 또한 하나의 트리거에 대해 실행할 여러 연산을 설정할 수 있습니다.

자세한 내용은 트리거 목록를 참조하십시오.

메모: 각 스크립트는 단 하나의 트리거만 사용할 수 있습니다.

블록 | 설명
| [When] - 트리거 조건을 설정합니다. [Do] - 실행할 동작 블록을 추가합니다. 메모: 각 트리거에 대한 블록들은 다릅니다. 트리거 블록에 따라 값 블록의 콘텐츠를 조건으로 설정합니다.

(예제 1)

5초마다 동작을 실행합니다.

(예제 2)

Var1 값삭제 변경 시 동작을 실행합니다.

## 동작 블록

동작 블록은 정의된 기능을 실행하기 위해서입니다.

자세한 내용은 작업 목록를 참조하십시오.

블록 | 설명
| 실행할 동작을 설정합니다. 메모: 각 동작에 대한 블록들은 다릅니다. 동작 블록에 따라 값 블록과 로직 블록을 결합하고 실행할 수 있습니다.

(예제 1)

동작이 실행되면 부저에서 부저음이 울립니다.

(예제 2)

동작이 실행되면 1이 Var1에 할당됩니다.

메모:

- 연산 블록에서 품질이 불량한 변수를 포함하는 값 블록 또는 논리 블록을 사용하는 경우 연산은 다음과 같이 작동합니다.

- 변수가 쓰기 작업의 대상으로 사용되는 경우 연산이 실행되고 오퍼레이션 결과가 참이 됩니다.

- 변수값이 읽기 작업에 사용되는 경우 연산을 건너뛰고 오퍼레이션 결과는 거짓입니다.

- 스크립트 연산은 한 번에 하나씩 순서대로 실행됩니다. 그러나 다음 연산은 완료하는 데 다소 시간이 걸릴 수 있으므로 다른 트리거 작업에 의해 중단될 수 있고 따라서 연산이 동시에 실행될 수 있습니다.

- [알람 데이터 내보내기]

- [로그 데이터 내보내기]

- [조작 로그 내보내기]

- [데이터 로깅] - [로깅 지우기]

- [레시피]

- [보안] - [Export]

- [보안] - [Import]

- [배열]*

- [Azbil]

- [파일 관리]

- [원격 파일 관리]

- [지연]

- [블록 트렌드] - [Clear And Draw]*

- [블록 트렌드] - [Draw]*

- [장비]

*지역 변수만 사용하는 경우 해당 작업은 또 다른 트리거 작업에 의해 중단되지 않고 완료됩니다.

- 일반적으로 다음 연산은 중단할 수 없습니다. 그러나 이러한 연산 중 하나를 간접적으로 지정된 배열 요소와 함께 사용하면 다른 트리거 작업에 의해 연산이 중단될 수 있고 따라서 연산이 동시에 실행됩니다.

- [값 변경]

- [문자열 변경]

- [숫자를 문자열로 변환]

- [Float를 문자열로 변환]

- [문자열을 숫자/Float로 변환]

- [문자열 길이 받기]

- [문자열 왼쪽/오른쪽 추출]

- [문자열 중간 추출]

- [검색 문자열]

- [탐색 변경]

- [콘텐츠 전환]

- [사용자 메시지 기록]

- [언어 변경]

- [파일 관리]

- [디버그 표시]

동일한 연산을 실행하는 트리거가 여러 개 있는 경우 다른 트리거 작업에 의해 중단된 연산으로 인해 연산 순서가 변경되어 출력이 달라질 수 있습니다.

예를 들어 아래 다이어그램에서 트리거 Operation 2 Trigger 2 Trigger 1 Operation 2 먼저 실행됩니다. Trigger 1 Operation 2 Export Log 완료된 후에야 실행됩니다.

## 값 블록

값 블록은 지정된 변수 또는 속성의 값을 가리킵니다. 값 블록을 사용하여 저장된 값을 읽거나 덮어쓸 수 있습니다.

자세한 내용은 값을 참조하십시오.

메모: 값 블록에서 속성을 지정하려면 마침표 (.)를 사용합니다. 예를 들어, NumericDisplay1에서 텍스트 색을 지정하려면 "NumericDisplay1.TextColor"를 설정합니다.

## 로직 블록

If / If Else 블록은 지정된 조건에 따라 작업을 실행합니다.

다음 로직 블록은 정의된 계산 또는 논리적 비교를 실행하여 결과를 출력합니다.

- Math
- 비교 조건
- 논리적 조건
- Not

자세한 내용은 논리를 참조하십시오.

## 표현식

표현식 블록은 표현식의 결과를 반환합니다. 식 블록에 관한 자세한 내용은 식을 참조하십시오.

식 변환기에 관한 자세한 내용은 식을 참조하십시오.