식 평가기

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

속성

속성
설명
계산할 식입니다.
식에 변수를 추가하려면 연속된 숫자 또는
#
으로 시작하는 고유한 문자열을 중괄호
{}
안에 입력합니다. 예를 들어, 식에
{0}
을 입력한 다음 나중에
{1}
을 입력합니다. 각 변수에 해당하는
{#}
동적 링크
필드를 채웁니다.
식은 올바르게 열리고 닫힌 괄호
{}
를 무제한으로 포함할 수 있습니다. 식이 올바른 구문을 따르지 않으면 컨버터에서 계산을 수행하지 않습니다.
모드
동적 링크의 방향:
  • 소스 노드에서 상위로 읽습니다.
  • 상위에서 소스 노드로 씁니다.
  • 소스 노드에서 상위로 읽고 상위에서 소스 노드로 씁니다.

소스

다음으로 식별되는 하나 이상의 변수:
{
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

출력

식의 결과 값입니다.

예제

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