ignition-expressions
Ignition expression language reference — 104 functions. Use when writing tag expressions or Perspective binding expressions.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Ignition expression language reference — 104 functions. Use when writing tag expressions or Perspective binding expressions.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Ignition Perspective e2e testing reference — Playwright page objects, gateway API helpers, and Perspective DOM conventions. Use when writing or debugging Playwright browser tests for Perspective views.
Ignition testing framework reference — writing and running Jython gateway tests. Use when writing tests, debugging test failures, or working with the testing.* modules.
Scaffold Playwright e2e tests for Perspective views into an Ignition project. Usage — /ignition-scada:init-e2e [--force]
Run Jython gateway tests or Playwright e2e tests. Usage — /ignition-scada:test [module|package|ui|e2e|smoke]
Ignition system.* API reference — 14 modules, 239 functions. Use when writing Ignition Jython scripts.
Run ignition-lint on files or the whole project. Usage — /ignition-scada:ignition-lint [file|directory|profile]
| name | ignition-expressions |
| description | Ignition expression language reference — 104 functions. Use when writing tag expressions or Perspective binding expressions. |
| user-invocable | false |
Ignition expressions are used in tag expression bindings and Perspective property bindings. They are NOT Python — they use a distinct function-based syntax.
if({[.]value} > 100, "High", "Normal")
dateFormat(now(5000), "HH:mm:ss")
tag("[default]Path/To/Tag")
runScript("project.library.myFunc", 5000, arg1)
Property references: {this.props.value}, {view.custom.myProp}, {view.params.x}, {[.]tagProperty}
abs(value) — Absolute valueceil(value) — Round upfloor(value) — Round downlog(value) — Natural logarithmmax(a, b) — Greater of two valuesmin(a, b) — Lesser of two valuesmod(dividend, divisor) — Remainderpow(base, exponent) — Exponentiationrand() — Random double 0.0-1.0round(value) — Round to nearest integersignum(value) — Sign (-1, 0, 1)sqrt(value) — Square rootconcat(str1, str2, ...) — Concatenate stringsendsWith(string, suffix) — Suffix checkindexOf(string, substring) — First occurrence index (-1 if not found)left(string, count) — Leftmost characterslen(string) — String lengthlower(string) — To lowercaseltrim(string) — Remove leading whitespacemid(string, start, length) — Substring by position and lengthnumberFormat(value, format) — Format number (Java DecimalFormat)regexExtract(string, pattern) — Extract regex matchrepeat(string, count) — Repeat stringreplace(string, search, replacement) — Replace all occurrencesreverse(string) — Reverse charactersright(string, count) — Rightmost charactersrtrim(string) — Remove trailing whitespacesplit(string, delimiter) — Split into arraystartsWith(string, prefix) — Prefix checksubstring(string, start, end) — Substring by indicestoStr(value) — Convert to stringtrim(string) — Remove surrounding whitespaceunicodeNormalize(string, form) — Unicode normalization (NFC, NFD, NFKC, NFKD)upper(string) — To uppercaseurlDecode(string) — URL decodeurlEncode(string) — URL encodedateArith(date, field, amount) — Add/subtract from date field ("hour", "day", "month")dateDiff(date1, date2, field) — Difference in field unitsdateExtract(date, field) — Extract field ("year", "month", "day", "hour")dateFormat(date, format) — Format date (Java SimpleDateFormat)dateParse(string, format) — Parse string to datedaysBetween(date1, date2) — Days between dateshoursBetween(date1, date2) — Hours between datesmillisBetween(date1, date2) — Millis between datesminutesBetween(date1, date2) — Minutes between datesmonthsBetween(date1, date2) — Months between datesnow(pollRate) — Current date/time. Always specify rate: now(5000) or now(0)secondsBetween(date1, date2) — Seconds between datessetTime(date, hour, minute, second) — Set time componentstoDate(value) — Convert to date (epoch millis or string)weeksBetween(date1, date2) — Weeks between datesyearsBetween(date1, date2) — Years between dateschoose(index, value0, value1, ...) — Select by 0-based indexcoalesce(value1, value2, ...) — First non-null valuehasChanged(value) — True if value changed since last evaluationif(condition, trueValue, falseValue) — ConditionalisNull(value) — Null checkpreviousValue(value) — Previous evaluation's valuequalify(tagPath) — Qualify tag path with current providerswitch(value, case1, result1, ..., default) — Case matchingtoBool, toColor(r,g,b), toDataSet, toDouble, toFloat, toInt, toLong
avg(values...) — AveragecolumnCount(dataset) — Column countdataSetToJSON(dataset) — Dataset to JSON stringforEach(dataset, expression) — Evaluate per rowgetColumn(dataset, columnIndex) — Column as arrayhasRows(dataset) — Has at least one rowjsonToDataSet(json) — JSON to datasetlookup(dataset, lookupCol, lookupVal, resultCol) — Column lookuprowCount(dataset) — Row countsum(values...) — SumjsonDecode(json) — Parse JSONjsonDelete(json, path) — Remove at pathjsonEncode(value) — Serialize to JSONjsonKeys(json) — Object keysjsonLength(json) — Array/object lengthjsonMerge(json1, json2) — Deep merge (json2 wins)jsonSet(json, path, value) — Set at pathjsonValueByKey(json, key) — Get by keyhasQuality(value, quality) — Check quality codeisBad(value) — Bad qualityisGood(value) — Good qualityisNotGood(value) — Not good qualityisUncertain(value) — Uncertain qualitytag(tagPath) — Read tag valuetagCount(folderPath) — Count tags in folderchooseColor(index, color0, color1, ...) — Select color by indexcolorMix(color1, color2, bias) — Blend colors (0.0=color1, 1.0=color2)binDecode(string, encoding) — Decode binary (Base64, Hex)binEncode(data, encoding) — Encode binaryforceQuality(value, qualityCode) — Set quality codegetMillis() — Current epoch millishtmlToPlain(html) — Strip HTML tagsisAuthorized(requiredRoles...) — Security role checkmapLat(value) — Latitude from map coordinatemapLng(value) — Longitude from map coordinaterunScript(scriptPath, pollRate, args...) — Call project scripttypeOf(value) — Type name stringnow() defaults to 1000ms polling — always use now(5000) or now(0)runScript("project.library.func", 5000, arg1) calls project scripts from expressionsgetSibling(), getParent(), getChild(), getComponent() — break on restructure{this.props.X} (own), {view.custom.X} (view), {view.params.X} (params)