식 평가기

정수, 소수, 숫자 변수, 문자열 비교를 위한 문자열 변수, 산술 및 부울 연산자 또는 함수 집합을 사용하여 식의 결과를 계산합니다.

속성

속성
설명
계산할 식입니다.
식은 올바르게 열리고 닫힌 괄호를 무제한으로 포함할 수 있습니다. 식이 올바른 구문을 따르지 않으면 컨버터에서 계산을 수행하지 않습니다.
모드
동적 링크의 방향:
  • 소스 노드에서 상위로 읽습니다.
  • 상위에서 소스 노드로 씁니다.
  • 소스 노드에서 상위로 읽고 상위에서 소스 노드로 씁니다.

소스

다음으로 식별되는 하나 이상의 변수:
{
index_number
}
자리 표시자
0보다 크거나 같은 연속적인 정수입니다. 예시:
{1}
{#
placeholder_identifier
}
자리 표시자
#
으로 시작하는 문자열. 예시:
{#speed}
팁: 순서에 관계없이 자리 표시자 조합을 사용합니다. 식에 자리 표시자를 원하는 수만큼 사용할 수 있습니다.

리터럴

  • 부울
  • 정수
  • 소수 구분 기호가 점이어야 하는 소수 자릿수
  • 접두사
    0x
    가 있는 16진수
  • 큰따옴표로 구분된 문자열과 같은 텍스트
    팁: 두 번 반복되는 큰따옴표(
    ""
    )는 이스케이프 시퀀스로 해석됩니다.
  • 날짜 및 시간. 예를 들어,
    2017-06-28T15:26:06.0790910
    입니다.

연산자

범주
연산자
결합성
설명
단항
단항 마이너스:
-
비트 NOT:
~
캐스트 연산자:
(type)
오른쪽에서 왼쪽
캐스트 연산자
(type)
은 모든 숫자 데이터 유형에 적용되며 부울에만 적용됩니다.
곱셈
*
,
/
,
%
왼쪽에서 오른쪽
덧셈
+
,
-
왼쪽에서 오른쪽
시프트
<<
,
>>
왼쪽에서 오른쪽
시프트 및 관계 연산자는 다음 데이터 유형에 적용됩니다.
  • Numeric
  • DateTime
  • Duration
관계
<
,
<=
,
>
,
>=
왼쪽에서 오른쪽
등호
==
,
!=
왼쪽에서 오른쪽
등호 연산자는 다음 데이터 유형에 적용됩니다.
  • Numeric
  • DateTime
  • Duration
  • String
  • LocalizedText
비트 단위 AND, XOR, OR
&
,
^
,
|
왼쪽에서 오른쪽
논리 AND
&&
왼쪽에서 오른쪽
논리 OR
||
왼쪽에서 오른쪽

데이터 유형

식 평가기의 데이터 유형 규칙:
  • 리터럴 정수는 Int32입니다.
  • 10진수 리터럴은 Double입니다.
  • 숫자 값은 Int32로 간주됩니다.
  • 리터럴 참 및 거짓은 Boolean으로 해석됩니다.
  • / 연산자는 항상 Double 값을 반환합니다.
  • % 연산자는 모듈 0으로 나눗셈이 있는 경우 예외를 생성합니다.
  • % 연산자는 Float 및 Double 피연산자를 허용합니다.
  • Int32 값을 반환하는 부호를 제외한 모든 함수는 Double 값을 반환합니다.
단항 캐스트 연산자의
type
은 다음 데이터 유형일 수 있습니다.
  • bool, Boolean
  • sbyte, SByte
  • short, Int16
  • int, Int32
  • long, Int64
  • byte, Byte
  • ushort, UInt16
  • uint, UInt32
  • ulong, UInt64
  • float, Float
  • double, Double
연산자는 다음의 특정 데이터 유형에 적용됩니다.
연산자
피연산자1
피연산자2
설명
Plus
DateTime
정수
Operand2
는 밀리초로 해석됩니다.
Plus
정수
DateTime
Operand1
는 밀리초로 해석됩니다.
Plus
DateTime
TimeZone (Struct)
Operand2
는 분(TimeZone.Offset)으로 해석됩니다.
Plus
TimeZone (Struct)
DateTime
Operand1
는 분(TimeZone.Offset)으로 해석됩니다.
Plus
TimeZone
정수
Operand1
는 분(TimeZone.Offset)으로 해석됩니다.
Operand2
는 분으로 해석됩니다.
Plus
정수
TimeZone
Operand1
는 분으로 해석됩니다.
Operand2
는 분(TimeZone.Offset)으로 해석됩니다.
Minus
DateTime
정수
Operand2
는 밀리초로 해석됩니다.
Minus
DateTime
TimeZone (Struct)
Operand2
는 분(TimeZone.Offset)으로 해석됩니다.
Minus
TimeZone
정수
Operand1
는 분(TimeZone.Offset)으로 해석됩니다.
Operand2
는 분으로 해석됩니다.

함수

식 평가기에서 사용할 함수:
함수
구문
설명
반환 데이터 유형
max
max(
value1
,
value2
,
value3
, ...)
가장 큰 값을 반환합니다.
Double
min
min(
value1
,
value2
,
value3
, ...)
가장 낮은 값을 반환합니다.
Double
avg
avg(
value1
,
value2
,
value3
, ...)
주어진 값의 평균을 반환합니다.
Double
abs
abs(
value
)
주어진 숫자의 절대값을 반환합니다.
Double
trunc
trunc(
value
)
10진수의 정수 부분을 반환합니다.
Double
ceil
ceil(
value
)
올림한 근사값을 반환합니다.
Double
floor
floor(
value
)
내림한 근사값을 반환합니다.
Double
round
round(
value
)
가장 가까운 정수로의 근사값을 반환합니다.
Double
sqrt
sqrt(
value
)
주어진 숫자의 제곱근을 반환합니다.
Double
sign
sign(
value
)
주어진 부동 소수점 수가 음수인지 확인합니다. 참이면
0
을, 거짓이면
1
을 반환합니다.
Int32
like
like(
string_value
,
pattern
)
String, QualifiedName 및 LocalizedText
데이터 유형에만 적용됩니다.
string_value
매개 변수가
pattern
과 일치하면
을 반환합니다.
패턴
은 시작 또는 끝에
%
와일드카드를 허용합니다.
예:
  • like("motor23", "motor%")
    으로 평가됩니다.
  • like("machine_2", "motor%")
    거짓
    으로 평가됩니다.
Boolean
isempty
isempty(
variable
)
주어진 NodeID, String, LocalizedText 또는 DataTime이 비어 있는지 확인합니다.
Boolean
if
if(
condition
,
value_if_true
,
value_if_false
)
condition
이 참이고
value_if_true
또는
value_if_false
를 반환하는지 확인합니다.
구문은 다음 요구 사항을 충족해야 합니다.
  • value_if_true
    value_if_false
    의 경우 데이터 유형이 동일한 매개 변수를 사용합니다.
  • 부울 값에는 소문자
    true
    또는
    false
    를 사용합니다.
  • 색상의 경우 색상 값에 연결하거나
    0x
    AA
    RR
    GG
    BB
    구문을 사용합니다. 여기서:
    • 0x
      는 16진수 표기법입니다.
    • AA
      는 알파 채널(투명도)입니다.
    • RR
      은 빨간색 채널입니다.
    • GG
      는 녹색 채널입니다.
    • BB
      는 파란색 채널입니다.
value_if_true
데이터 유형
left_of
left_of(string, pattern)
정규식 패턴의 첫 번째 발생 왼쪽에 있는 부분 문자열을 반환합니다.
중요: 패턴에 와일드카드를 사용하지 마십시오.
String
right_of
right_of(string, pattern)
정규식 패턴의 첫 번째 발생 오른쪽에 있는 부분 문자열을 반환합니다.
중요: 패턴에 와일드카드를 사용하지 마십시오.
String
like(string_value, pattern)
String
,
QualifiedName
LocalizedText
데이터 유형에만 적용됩니다.
string_value
매개 변수가 지정된
패턴
과 일치하면 참을 반환합니다.
패턴
은 시작 또는 끝에
%
와일드카드를 허용합니다.
예제
  • like("motor23", "motor%")
    으로 평가됩니다.
  • like("machine_2", "motor%")
    거짓
    으로 평가됩니다.

출력

식의 결과 값입니다.

예제

변수의 절대값 반환
변수 값이 40보다 크면 그래픽 개체의 표시 여부가 전환됩니다.
변수 값이 50보다 크면 그래픽 개체의 배경색이 파란색으로 변경됩니다.
변수 값이 30에서 40 사이이면 활성 상태일 때 녹색 LED 개체가 깜박입니다.
텍스트 상자 테두리 색상이 빨간색이면 버튼이 활성화됩니다.
레이블 텍스트가 "WARNING"이면 레이블 텍스트 색상이 빨간색으로 변경됩니다.
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal