wapform_expression library
The WapForm expression engine (WapEvaluator): variables, operators and
the built-in function library used by WML $(...), cnd= and value=.
Classes
- ExprDataSet
- Corresponds to Pascal TmyParser Corresponds to Delphi's TDataSet/TField: the evaluator can register datasets, and expressions read values via Dataset.COUNT / .BOF / .EOF / .STATE / .field (FindField).
- IdentRecord
- Corresponds to Pascal TStIdentRec
- MyParser
- The expression parser behind WapEvaluator; use WapEvaluator instead.
- WapEvaluator
-
Evaluates WapForm expressions (WML
$(...),cnd=,value=).
Functions
-
COB_ABS(
dynamic value) → dynamic -
COB_ACOS(
dynamic value) → dynamic -
COB_ANNUITY(
dynamic v1, dynamic v2) → dynamic - ANNUITY(rate, periods)
-
COB_ASIN(
dynamic value) → dynamic -
COB_ATAN(
dynamic value) → dynamic -
COB_BOOLEAN_OF_INTEGER(
dynamic v1, dynamic v2) → dynamic - BOOLEAN-OF-INTEGER(n, len): converts an integer to a bit string
-
COB_BYTE_LENGTH(
dynamic value) → dynamic -
COB_CHAR(
dynamic value) → dynamic - CHAR(n): ordinal n → character (COBOL ordinal = ASCII + 1)
-
COB_COMBINED_DATETIME(
dynamic v1, dynamic v2) → dynamic - COMBINED-DATETIME(date_int, time_secs)
-
COB_CONCATENATE(
List values) → dynamic -
COB_COS(
dynamic value) → dynamic -
COB_CURRENCY_SYMBOL(
) → dynamic -
COB_CURRENT_DATE(
) → dynamic - CURRENT-DATE (returns a full timestamp string yyyyMMddHHmmsscc+HHmm)
-
COB_DATE_OF_INTEGER(
dynamic value) → dynamic - DATE-OF-INTEGER(n) → YYYYMMDD
-
COB_DATE_TO_YYYYMMDD(
dynamic v1, dynamic v2) → dynamic - DATE-TO-YYYYMMDD(yymmdd, pivot)
-
COB_DAY_OF_INTEGER(
dynamic value) → dynamic - DAY-OF-INTEGER(n) → YYYYDDD
-
COB_E(
) → dynamic -
COB_EXP(
dynamic value) → dynamic -
COB_EXP10(
dynamic value) → dynamic -
COB_FACTORIAL(
dynamic value) → dynamic - FACTORIAL:n!
-
COB_FRACTION_PART(
dynamic value) → dynamic - FRACTION-PART: the fractional part
-
COB_HIGHEST_ALGEBRAIC(
dynamic value) → dynamic - HIGHEST-ALGEBRAIC: the type's maximum value (based on the runtime type)
-
COB_INTEGER(
dynamic value) → dynamic - INTEGER: rounds down (floor)
-
COB_INTEGER_OF_BOOLEAN(
dynamic value) → dynamic - INTEGER-OF-BOOLEAN(s): converts a bit string to an integer
-
COB_INTEGER_OF_DATE(
dynamic value) → dynamic - INTEGER-OF-DATE(YYYYMMDD) → integer day
-
COB_INTEGER_OF_DAY(
dynamic value) → dynamic - INTEGER-OF-DAY(YYYYDDD) → integer day
-
COB_INTEGER_PART(
dynamic value) → dynamic - INTEGER-PART: truncates toward zero
-
COB_LENGTH(
dynamic value) → dynamic -
COB_LOCALE_COMPARE(
dynamic v1, dynamic v2) → dynamic - LOCALE-COMPARE(s1, s2) → '<' '=' '>'
-
COB_LOCALE_DATE(
dynamic value) → dynamic -
COB_LOCALE_TIME(
dynamic value) → dynamic -
COB_LOG(
dynamic value) → dynamic -
COB_LOG10(
dynamic value) → dynamic -
COB_LOWER_CASE(
dynamic value) → dynamic -
COB_LOWEST_ALGEBRAIC(
dynamic value) → dynamic - LOWEST-ALGEBRAIC: the type's minimum value
-
COB_MAX(
List values) → dynamic -
COB_MEAN(
List values) → dynamic -
COB_MEDIAN(
List values) → dynamic -
COB_MIDRANGE(
List values) → dynamic -
COB_MIN(
List values) → dynamic -
COB_MOD(
dynamic v1, dynamic v2) → dynamic - MOD: result's sign matches the divisor (COBOL standard)
-
COB_MONETARY_DECIMAL_POINT(
) → dynamic -
COB_NUMERIC_DECIMAL_POINT(
) → dynamic -
COB_NUMVAL(
dynamic value) → dynamic -
COB_NUMVAL_C(
dynamic v1, dynamic v2) → dynamic -
COB_NUMVAL_F(
dynamic value) → dynamic -
COB_ORD(
dynamic value) → dynamic - ORD(c): character → ordinal (= ASCII + 1)
-
COB_ORD_MAX(
List values) → dynamic - ORD-MAX: returns the 1-based index of the maximum value
-
COB_ORD_MIN(
List values) → dynamic - ORD-MIN: returns the 1-based index of the minimum value
-
COB_PI(
) → dynamic -
COB_PRESENT_VALUE(
List values) → dynamic - PRESENT-VALUE(rate, amt1, amt2, ...)
-
COB_RANDOM(
dynamic value) → dynamic -
RANDOM(
seed): doesn't reset when seed=0 -
COB_RANGE(
List values) → dynamic -
COB_REM(
dynamic v1, dynamic v2) → dynamic - REM: result's sign matches the dividend
-
COB_REVERSE(
dynamic value) → dynamic -
COB_SECONDS_PAST_MIDNIGHT(
) → dynamic - SECONDS-PAST-MIDNIGHT
-
COB_SIGN(
dynamic value) → dynamic -
COB_SIN(
dynamic value) → dynamic -
COB_SQRT(
dynamic value) → dynamic -
COB_STANDARD_COMPARE(
dynamic v1, dynamic v2) → dynamic - STANDARD-COMPARE(s1, s2) → '<' '=' '>'
-
COB_STANDARD_DEVIATION(
List values) → dynamic -
COB_STORED_CHAR_LENGTH(
dynamic value) → dynamic -
COB_SUBSTITUTE(
List values) → dynamic - SUBSTITUTE(str, from1, to1, from2, to2, ...)
-
COB_SUBSTITUTE_CASE(
List values) → dynamic - SUBSTITUTE-CASE (case-insensitive)
-
COB_SUM(
List values) → dynamic -
COB_TAN(
dynamic value) → dynamic -
COB_TEST_DATE_YYYYMMDD(
dynamic value) → dynamic - TEST-DATE-YYYYMMDD: 0=valid
-
COB_TEST_DAY_YYYYDDD(
dynamic value) → dynamic - TEST-DAY-YYYYDDD: 0=valid
-
COB_TEST_NUMVAL(
dynamic value) → dynamic -
COB_TEST_NUMVAL_C(
dynamic v1, dynamic v2) → dynamic -
COB_TEST_NUMVAL_F(
dynamic value) → dynamic -
COB_TRIM(
dynamic v1, dynamic v2) → dynamic - TRIM(str, mode) mode: 'LEADING' | 'TRAILING' | '' (both ends)
-
COB_UPPER_CASE(
dynamic value) → dynamic -
COB_VARIANCE(
List values) → dynamic -
COB_WHEN_COMPILED(
) → dynamic - WHEN-COMPILED: same as CURRENT-DATE
-
COB_YEAR_TO_YYYY(
dynamic v1, dynamic v2) → dynamic - YEAR-TO-YYYY(yy, pivot)
-
decrypt(
dynamic value1, dynamic value2) → dynamic - XOR decrypt; returns an empty string directly for an empty password
-
encrypt(
dynamic value1, dynamic value2) → dynamic - XOR encrypt; returns an empty string directly for an empty password
-
extADDWORKDAYS(
dynamic v1, dynamic v2) → dynamic - ADDWORKDAYS(date, n): adds n working days (skips Sat/Sun)
-
extAGE(
dynamic v1, dynamic v2) → dynamic - AGE(birthdate, asofdate): calculates age in full years from a birthdate
-
extARRAVG(
List values) → dynamic - ARRAVG(values): the average of several values
-
extARRCONTAINS(
List values) → dynamic - ARRCONTAINS(values, target): the last argument is target
-
extARRJOIN(
List values) → dynamic - ARRJOIN(values, delim): the last argument is delim
-
extARRMAX(
List values) → dynamic - ARRMAX(values): the maximum of several values
-
extARRMIN(
List values) → dynamic - ARRMIN(values): the minimum of several values
-
extARRSUM(
List values) → dynamic - ARRSUM(values): the sum of several values
-
extARRUNIQ(
List values) → dynamic - ARRUNIQ(values): removes duplicate values, returns joined by commas
-
extAs10(
dynamic value) → dynamic - As10(v):Boolean → '1'/'0'
-
extAsBit(
dynamic value) → dynamic - AsBit(v): integer → '1'/'0'
-
extAsBool(
dynamic value) → dynamic - AsBool(v):Variant → Boolean
-
extAsCsv(
List values) → dynamic - AsCsv(values): multiple values → a single CSV line
-
extAsCurr(
dynamic v1, dynamic v2) → dynamic - AsCurr(v, d): thousands-separated currency string
-
extAsDate(
dynamic value) → dynamic - AsDate(v): Variant → date (DateTime)
-
extAsDateTime(
dynamic value) → dynamic - AsDateTime(v): Variant → date-time
-
extAsDefault(
dynamic v1, dynamic v2) → dynamic - AsDefault(v, default): uses the default value when Null
-
extAsDQuoted(
dynamic value) → dynamic - AsDQuoted(v): wrapped in double quotes, internal quotes backslash-escaped
-
extAsFixed(
dynamic v1, dynamic v2) → dynamic - AsFixed(v, d): fixed-decimal-place string
-
extAsFloat(
dynamic value) → dynamic - AsFloat(v):Variant → Float
-
extAsHex(
dynamic v1, dynamic v2) → dynamic - AsHex(v, width): integer → hexadecimal
-
extAsInt(
dynamic value) → dynamic - AsInt(v):Variant → Integer
-
extAsISO(
dynamic value) → dynamic - AsISO(v): ISO 8601 date string
-
extAsJson(
dynamic value) → dynamic - AsJson(v): a single value → a plain JSON value
-
extAsLower(
dynamic value) → dynamic - AsLower(v): all lowercase
-
extAsNullable(
dynamic value) → dynamic - AsNullable(v): empty→NULL, otherwise quoted
-
extAsOct(
dynamic value) → dynamic - AsOct(v): integer → octal
-
extAsPct(
dynamic v1, dynamic v2) → dynamic - AsPct(v, d): percentage string
-
extAsQuoted(
dynamic value) → dynamic - AsQuoted(v): wrapped in single quotes, internal quotes doubled (escaped)
-
extAsRDate(
dynamic value) → dynamic - AsRDate(v): ROC-calendar-year date
-
extAsRDateTime(
dynamic value) → dynamic - AsRDateTime(v): ROC-calendar-year date-time
-
extAsSci(
dynamic v1, dynamic v2) → dynamic - AsSci(v, d): scientific-notation string, formatted as 1.23E+04 (uppercase E, exponent zero-padded to 2 digits)
-
extAsSlug(
dynamic value) → dynamic - AsSlug(v):URL slug
-
extAsSQLStr(
dynamic value) → dynamic - AsSQLStr(v): SQL-safe string (inside single quotes, ' becomes '')
-
extAsString(
dynamic value) → dynamic - AsString(v):Variant → String
-
extAsTF(
dynamic value) → dynamic - AsTF(v):Boolean → 'T'/'F'
-
extAsTime(
dynamic value) → dynamic - AsTime(v): Variant → time
-
extAsTrimmed(
dynamic value) → dynamic - AsTrimmed(v): trims whitespace from both ends
-
extAsUpper(
dynamic value) → dynamic - AsUpper(v): all uppercase
-
extAsYN(
dynamic value) → dynamic - AsYN(v):Boolean → 'Y'/'N'
-
extBETWEEN(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
BETWEEN(value, lo, hi): whether a value is within the
lo, hirange -
extBITAND(
dynamic v1, dynamic v2) → dynamic - BITAND(a, b): bitwise AND
-
extBITNOT(
dynamic value) → dynamic - BITNOT(a): bitwise NOT (uses the pure-arithmetic equivalent -x-1 instead of the ~ operator, to guard against possible bitwise-op discrepancies under Web compilation)
-
extBITOR(
dynamic v1, dynamic v2) → dynamic - BITOR(a, b): bitwise OR
-
extBITSHL(
dynamic v1, dynamic v2) → dynamic - BITSHL(a, n): shift left n bits
-
extBITSHR(
dynamic v1, dynamic v2) → dynamic - BITSHR(a, n): shift right n bits
-
extBITXOR(
dynamic v1, dynamic v2) → dynamic - BITXOR(a, b): bitwise XOR
-
extBOMDATE(
dynamic v1, dynamic v2) → dynamic - BOMDATE(year, month): the first day of the given year/month
-
extBR2CRLF(
dynamic value) → dynamic -
BR2CRLF(str):
→ newline -
extBYTESIZE(
dynamic value) → dynamic - BYTESIZE(n): returns how many bytes are needed to store n bits
-
extCAPWORDS(
dynamic value) → dynamic - CAPWORDS(str): capitalizes the first letter of each word
-
extCBRT(
dynamic value) → dynamic - CBRT(x): cube root
-
extCHARAT(
dynamic v1, dynamic v2) → dynamic - CHARAT(str, n): gets the nth character (1-based)
-
extCHECKSUM(
dynamic value) → dynamic - CHECKSUM(str): XOR checksum
-
extCHOOSE(
List values) → dynamic - CHOOSE(index, values): picks a value from the list by (1-based) index
-
extCLAMP(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
CLAMP(value, lo, hi): clamps a value to the
lo, hirange -
extCOALESCE(
List values) → dynamic - COALESCE: returns the first non-Null value (variadic)
-
extCOMMAFMT(
dynamic value) → dynamic - COMMAFMT(value): adds thousands separators to a number (integer)
-
extCONTAINS(
dynamic v1, dynamic v2) → dynamic - CONTAINS(str, substr): whether the string contains the substring
-
extCOUNTSTR(
dynamic v1, dynamic v2) → dynamic - COUNTSTR(substr, str): counts occurrences of a substring
-
extCRLF2BR(
dynamic value) → dynamic -
CRLF2BR(str): newline →
-
extCUMIPMT(
List values) → dynamic - CUMIPMT(rate, nper, pv, startPeriod, endPeriod): cumulative interest
-
extDATEADD(
dynamic v1, dynamic v2, dynamic v3) → dynamic - DATEADD(date, n, unit): adds/subtracts from a date; unit='D'/'M'/'Y'/'W'
-
extDATEDIFF(
dynamic v1, dynamic v2, dynamic v3) → dynamic - DATEDIFF(date1, date2, unit): date difference
-
extDATEEND(
dynamic v1, dynamic v2) → dynamic - DATEEND(date, unit): end of a period; unit='M'=end of month/'Y'=end of year
-
extDATESERIAL(
dynamic v1, dynamic v2, dynamic v3) → dynamic - DATESERIAL(y, m, d): builds a DateTime from year/month/day
-
extDATESTART(
dynamic v1, dynamic v2) → dynamic - DATESTART(date, unit): start of a period; unit='M'=start of month/'Y'=start of year/'W'=Monday
-
extDAYNAME(
dynamic value) → dynamic - DAYNAME(date): weekday name (returned in Chinese — this is a data value used by WML output, not a comment, so it is intentionally left untranslated; translating it would change the function's runtime behavior)
-
extDECODE(
List values) → dynamic - DECODE(val, case1, result1, ..., default):Oracle DECODE
-
extDEG2RAD(
dynamic value) → dynamic - DEG2RAD(deg): degrees → radians
-
extELLIPSIS(
dynamic v1, dynamic v2) → dynamic - ELLIPSIS(str, maxLen): truncates and adds '...'
-
extENDSWITH(
dynamic v1, dynamic v2) → dynamic - ENDSWITH(str, suffix): whether the string ends with suffix
-
extEOMDATE(
dynamic v1, dynamic v2) → dynamic - EOMDATE(year, month): the last day of the given year/month
-
extEVEN(
dynamic value) → dynamic - EVEN(n): the smallest even number ≥ n
-
extFIB(
dynamic value) → dynamic - FIB(n): the nth Fibonacci number (0-based)
-
extFISCALQUARTER(
dynamic v1, dynamic v2) → dynamic - FISCALQUARTER(date, fiscalStartMonth): fiscal quarter
-
extFISCALYEAR(
dynamic v1, dynamic v2) → dynamic - FISCALYEAR(date, fiscalStartMonth): fiscal year
-
extFROMBIN(
dynamic value) → dynamic - FROMBIN(str): converts a binary string to an integer
-
extFROMHEX(
dynamic value) → dynamic - FROMHEX(str): converts a hex string to an integer
-
extFV(
dynamic v1, dynamic v2, dynamic v3, dynamic v4) → dynamic - FV(rate, nper, pmt, pv): future value
-
extGCD(
dynamic v1, dynamic v2) → dynamic - GCD(a, b): greatest common divisor
-
extGEOMEAN(
List values) → dynamic - GEOMEAN(values): geometric mean
-
extGUID(
) → dynamic - GUID: generates a new GUID string
-
extHARMEAN(
List values) → dynamic - HARMEAN(values): harmonic mean
-
extHASH(
dynamic value) → dynamic - HASH(str): a simple djb2 hash (32-bit, returned as a hex string)
-
extHTMLDECODE(
dynamic value) → dynamic - HTMLDECODE(str): HTML special-character decoding
-
extHTMLENCODE(
dynamic value) → dynamic - HTMLENCODE(str): HTML special-character encoding
-
extHYPOT(
dynamic v1, dynamic v2) → dynamic - HYPOT(a, b): hypotenuse of a right triangle, sqrt(a²+b²)
-
extINDEXOF(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
INDEXOF(str, sub, start): finds a substring starting from
start(1-based) -
extIPMT(
dynamic v1, dynamic v2, dynamic v3, dynamic v4) → dynamic - IPMT(rate, per, nper, pv): interest portion of payment n
-
extIRR(
List values) → dynamic - IRR(values, guess): internal rate of return (Newton-Raphson iteration)
-
extISPRIME(
dynamic value) → dynamic - ISPRIME(n): whether n is prime
-
extISWEEKDAY(
dynamic value) → dynamic - ISWEEKDAY(date): whether it's a weekday (Monday~Friday)
-
extISWEEKEND(
dynamic value) → dynamic - ISWEEKEND(date): whether it's Saturday or Sunday
-
extJOIN(
dynamic v1, dynamic v2) → dynamic - JOIN(values, delim): merges after cleaning up extra whitespace
-
extKEEPCHARS(
dynamic v1, dynamic v2) → dynamic - KEEPCHARS(str, chars): keeps only the given set of characters
-
extLASTINDEXOF(
dynamic v1, dynamic v2) → dynamic - LASTINDEXOF(str, sub): finds a substring searching from the right (1-based)
-
extLCM(
dynamic v1, dynamic v2) → dynamic - LCM(a, b): least common multiple
-
extLERP(
dynamic v1, dynamic v2, dynamic v3) → dynamic - LERP(a, b, t): linear interpolation a + (b-a)*t
-
extLOG2(
dynamic value) → dynamic - LOG2(x): base-2 logarithm
-
extLOGN(
dynamic v1, dynamic v2) → dynamic -
LOGN(base, x): logarithm base
base -
extLPAD(
dynamic v1, dynamic v2, dynamic v3) → dynamic - LPAD(str, len, ch): left-pads with the given character to width len
-
extMASK(
dynamic v1, dynamic v2, dynamic v3) → dynamic - MASK(str, mask, placeholder): mask formatting (placeholder defaults to '#')
-
extMONTHNAME(
dynamic value) → dynamic - MONTHNAME(date): month name (returned in Chinese — see the note on DAYNAME above)
-
extNEXTWDAY(
dynamic v1, dynamic v2) → dynamic - NEXTWDAY(date, dow): finds the next occurrence of the given weekday from date (dow=1 Mon..7 Sun)
-
extNPER(
dynamic v1, dynamic v2, dynamic v3) → dynamic - NPER(rate, pmt, pv): number of payment periods
-
extNPV(
List values) → dynamic - NPV(rate, values): net present value
-
extNUMFMT(
dynamic v1, dynamic v2) → dynamic - NUMFMT(value, decimals): numeric formatting, thousands separator + decimal places
-
extNVL(
dynamic v1, dynamic v2) → dynamic - NVL(value, default): returns default if value is Null
-
extNVL2(
dynamic v1, dynamic v2, dynamic v3) → dynamic - NVL2(value, notNullVal, nullVal):Oracle NVL2
-
extODD(
dynamic value) → dynamic - ODD(n): the smallest odd number ≥ n
-
extONLYALPHA(
dynamic value) → dynamic - ONLYALPHA(str): keeps only English letters
-
extONLYDIGITS(
dynamic value) → dynamic - ONLYDIGITS(str): keeps only digits
-
extPADC(
dynamic v1, dynamic v2) → dynamic - PADC(str, len): center-pads with spaces to width len
-
extPADL(
dynamic v1, dynamic v2) → dynamic - PADL(str, len): left-pads with spaces to width len
-
extPADR(
dynamic v1, dynamic v2) → dynamic - PADR(str, len): right-pads with spaces to width len
-
extPERCENT(
dynamic v1, dynamic v2) → dynamic - PERCENT(part, total): percentage calculation
-
extPMT(
dynamic v1, dynamic v2, dynamic v3) → dynamic - PMT(rate, nper, pv): the equal payment amount
-
extPPMT(
dynamic v1, dynamic v2, dynamic v3, dynamic v4) → dynamic - PPMT(rate, per, nper, pv): principal portion of payment n
-
extPREVWDAY(
dynamic v1, dynamic v2) → dynamic - PREVWDAY(date, dow): finds the previous occurrence of the given weekday before date
-
extPRODUCT(
List values) → dynamic - PRODUCT(values): product of the values Π(xᵢ)
-
extPV(
dynamic v1, dynamic v2, dynamic v3) → dynamic - PV(rate, nper, pmt): present value
-
extQUARTER(
dynamic value) → dynamic - QUARTER(date): gets the quarter (1~4)
-
extQUARTILE(
List values) → dynamic - QUARTILE(values, q): quartile; q=1 Q1, q=2 median, q=3 Q3
-
extRAD2DEG(
dynamic value) → dynamic - RAD2DEG(rad): radians → degrees
-
extRANDOMSTR(
dynamic v1, dynamic v2) → dynamic - RANDOMSTR(len, chars): generates a random string of the given length
-
extRATE(
dynamic v1, dynamic v2, dynamic v3) → dynamic - RATE(nper, pmt, pv): interest rate per period (Newton-Raphson approximation)
-
extRDATE(
dynamic value) → dynamic - RDATE(date): ROC-calendar-year date string YYY/MM/DD
-
extRDATETIME(
dynamic value) → dynamic - RDATETIME(date): ROC-calendar-year date-time string YYY/MM/DD HH:MM:SS
-
extREMOVECHARS(
dynamic v1, dynamic v2) → dynamic - REMOVECHARS(str, chars): removes the given set of characters
-
extREPEAT(
dynamic v1, dynamic v2) → dynamic - REPEAT(str, n): repeats the string n times
-
extROUNDBANK(
dynamic v1, dynamic v2) → dynamic - ROUNDBANK(value, decimals): banker's rounding (round half to even)
-
extRPAD(
dynamic v1, dynamic v2, dynamic v3) → dynamic - RPAD(str, len, ch): right-pads with the given character to width len
-
extSLUGIFY(
dynamic value) → dynamic - SLUGIFY(str): converts to a URL slug
-
extSPLIT(
dynamic v1, dynamic v2, dynamic v3) → dynamic - SPLIT(str, delim, n): splits and takes the nth token (1-based)
-
extSPLITCOUNT(
dynamic v1, dynamic v2) → dynamic - SPLITCOUNT(str, delim): number of tokens after splitting
-
extSTARTSWITH(
dynamic v1, dynamic v2) → dynamic - STARTSWITH(str, prefix): whether the string starts with prefix
-
extSUMSQ(
List values) → dynamic - SUMSQ(values): sum of squares Σ(xᵢ²)
-
extSWITCH(
List values) → dynamic - SWITCH(val, case1, result1, case2, result2, ..., defaultVal)
-
extTIMESERIAL(
dynamic v1, dynamic v2, dynamic v3) → dynamic - TIMESERIAL(h, m, s): builds a DateTime from hour/minute/second
-
extTOBIN(
dynamic v1, dynamic v2) → dynamic - TOBIN(n, width): converts an integer to a binary string
-
extTODATE(
dynamic value) → dynamic - TODATE: safely converts to date
-
extTOFLOAT(
dynamic value) → dynamic - TOFLOAT: safely converts to float
-
extTOHEX(
dynamic value) → dynamic - TOHEX(n): converts an integer to a hex string (no padding)
-
extTOINT(
dynamic value) → dynamic - TOINT: safely converts to integer
-
extTOKENAT(
dynamic v1, dynamic v2, dynamic v3) → dynamic - TOKENAT(str, delims, n): takes a token using multi-character delimiters (1-based)
-
extTRUNCWORDS(
dynamic v1, dynamic v2) → dynamic - TRUNCWORDS(str, n): truncates to the first n words
-
extTYPENAME(
dynamic value) → dynamic - TYPENAME: the type's name
-
extUNMASK(
dynamic v1, dynamic v2, dynamic v3) → dynamic - UNMASK(str, mask, placeholder): removes the mask, keeping only the characters at placeholder positions (placeholder defaults to '#')
-
extURLENCODE(
dynamic value) → dynamic - URLENCODE(str): URL percent-encoding
-
extWORKDAYS(
dynamic v1, dynamic v2) → dynamic - WORKDAYS(date1, date2): counts working days (excludes Sat/Sun)
-
extWRAP(
dynamic v1, dynamic v2) → dynamic - WRAP(str, width): inserts a line break (CRLF) every width characters
-
extYEARFRAC(
dynamic v1, dynamic v2) → dynamic - YEARFRAC(date1, date2): the fraction of a year between two dates (Actual/365)
-
extZFILL(
dynamic v1, dynamic v2) → dynamic - ZFILL(n, width): zero-pads an integer to width digits
-
fnAbs(
dynamic value) → dynamic -
Expression function
ABS(x): Absolute value. -
fnAddWorkDaysSerial(
dynamic v1, dynamic v2) → dynamic -
fnAnnuity(
dynamic v1, dynamic v2) → dynamic - Annuity(rate, periods): present-value annuity factor per period (capital recovery factor)
-
fnANSI(
dynamic value) → dynamic -
Expression function
ANSI(s): UTF-8 to ANSI. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnAnsiCompareStr(
dynamic v1, dynamic v2) → dynamic -
Expression function
AnsiCompareStr(a,b): ANSI case-sensitive comparison. -
fnAnsiCompareText(
dynamic v1, dynamic v2) → dynamic -
Expression function
AnsiCompareText(a,b): ANSI case-insensitive comparison. -
fnAnsiDelete(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
AnsiDelete(s,p,n): Deletes a substring (ANSI count). -
fnAnsiInsert(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
AnsiInsert(s,p,new): Inserts a string (ANSI count). The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnAnsiLength(
dynamic value) → dynamic -
Expression function
AnsiLength(s): ANSI byte length. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnAnsiLowerCase(
dynamic value) → dynamic -
Expression function
AnsiLowerCase(s): ANSI convert to lowercase. -
fnAnsiMid(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
AnsiMid(s,p,n): Extracts a substring (ANSI count). -
fnAnsiPos(
dynamic v1, dynamic v2) → dynamic -
Expression function
AnsiPos(sub,s): Finds a substring's position (ANSI count). -
fnAnsiUpperCase(
dynamic value) → dynamic -
Expression function
AnsiUpperCase(s): ANSI convert to uppercase. -
fnArcCos(
dynamic value) → dynamic -
Expression function
ArcCos(x1): Arc cosine (same as ACOS). -
fnArcSin(
dynamic value) → dynamic -
Expression function
ArcSin(x1): Arc sine (same as ASIN). -
fnArcTan(
dynamic value) → dynamic -
Expression function
ArcTan(x1): Arc tangent (same as ATAN). -
fnARRAY(
dynamic value) → dynamic -
Expression function
ARRAY(s): Splits a string on whitespace, composing a display string resembling an array literal (description corrected to match the actual source behavior, verified via testing). -
fnAsc(
dynamic value) → dynamic -
Expression function
ASC(c): Character to code point. -
fnAssigned(
dynamic value) → dynamic -
Expression function
Assigned(x): Whether the object has been assigned. -
fnAsSqlStr(
dynamic value) → dynamic - AsSqlStr(v): escapes single quotes (doesn't add the surrounding quotes)
-
fnBDATE(
dynamic value) → dynamic -
Expression function
BDATE(x1): Date conversion (for compatibility). -
fnBomDateSerial(
dynamic v1, dynamic v2) → dynamic -
fnByteLength(
dynamic value) → dynamic - ByteLength(str): the string's UTF-8 byte length
-
fnCeil(
dynamic value) → dynamic -
Expression function
CEIL(x): Rounds up. -
fnCELL(
dynamic v1, dynamic v2) → dynamic -
Expression function
CELL(x1, x2): Crosstab cell value (for compatibility). -
fnCHR(
dynamic value) → dynamic -
Expression function
CHR(n): Code point to character. -
fnCODE(
dynamic value) → dynamic -
Expression function
CODE(s): Parses the "code" portion of a formatted field. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnColorToHex(
dynamic value) → dynamic -
Expression function
ColorToHex(n): Converts a color value to hex. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnCombinedDateTime(
dynamic v1, dynamic v2) → dynamic - CombinedDateTime(dateInt, seconds): combines a COBOL internal date integer and seconds into a serial
-
fnCompareStr(
dynamic v1, dynamic v2) → dynamic -
Expression function
CompareStr(a,b): String comparison (case-sensitive). -
fnCompareText(
dynamic v1, dynamic v2) → dynamic -
Expression function
CompareText(a,b): Locale-aware string comparison. -
fnConcatenateStr(
List values) → dynamic - ConcatenateStr(values): concatenates multiple strings (no separator)
-
fnCOPY(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
COPY(x1, x2, x3): Substring (same as Pascal Copy). -
fnCos(
dynamic value) → dynamic -
Expression function
COS(x): Cosine. -
fnCOUNT(
List values) → dynamic -
Expression function
count: (opt.). -
fnCPU(
) → dynamic -
Expression function
CPU: (no matching registration/use found in the source). -
fnDATE(
) → dynamic -
Expression function
DATE: Current date (no parameters, changes with the run date). -
fnDateAddValueSerial(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
fnDateOfInteger(
dynamic value) → dynamic - DateOfInteger(cobolInt): converts a COBOL internal date integer to YYYYMMDD
-
fnDatePeriodEndSerial(
dynamic v1, dynamic v2) → dynamic -
fnDatePeriodStartSerial(
dynamic v1, dynamic v2) → dynamic -
fnDateSerialValue(
dynamic y, dynamic m, dynamic d) → dynamic -
Expression function
DateSerialValue(y, m, d): Combines year, month, day into a TDateTime. In this Dart engine it returns a date serial number (days since 1899-12-30); see the manual, Appendix C.2. -
fnDateTimeToStr(
dynamic value) → dynamic -
Expression function
DateTimeToStr(d): Converts a date/time to a string (formatted per the system's regional settings). -
fnDateToStr(
dynamic value) → dynamic -
Expression function
DateToStr(d): Converts a date to a string (formatted per the system's regional settings). -
fnDateToYyyymmdd(
dynamic v1, dynamic v2) → dynamic - DateToYyyymmdd(yymmdd, pivot): converts a 6-digit date to 8 digits using a pivot year
-
fnDAY(
dynamic value) → dynamic -
Expression function
DAY(d): Extracts the day. -
fnDayOfInteger(
dynamic value) → dynamic - DayOfInteger(cobolInt): converts a COBOL internal date integer to YYYYDDD
-
fnDAYOFMONTH(
dynamic value) → dynamic -
Expression function
DAYOFMONTH(d): Extracts the "day" of a date (same as DAY). -
fnDAYOFWEEK(
dynamic value) → dynamic -
Expression function
DAYOFWEEK(d): Extracts the day of the week (uses DateUtils.DayOfTheWeek underneath, 1=Monday...7=Sunday). -
fnDAYOFYEAR(
dynamic value) → dynamic -
Expression function
DAYOFYEAR(d): Extracts the day of the year. -
fnDaysInAMonth(
dynamic v1, dynamic v2) → dynamic -
Expression function
DaysInAMonth(y,m): Gets the number of days in a given year and month. -
fnDBX(
) → dynamic -
Expression function
DBX: The multi-tier architecture flag. -
fnDECVal(
dynamic v1, dynamic v2) → dynamic -
fnDEFINE(
dynamic value) → dynamic -
Expression function
DEFINE(request.foo): Checks whether a request parameter exists. -
fnDELETE(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
DELETE(s,p,n): Deletes a substring (byte). -
fnEomDateSerial(
dynamic v1, dynamic v2) → dynamic -
fnEulerNumber(
) → dynamic - EulerNumber: Euler's number e (no arguments)
-
fnExp(
dynamic value) → dynamic -
Expression function
EXP(x): e raised to the power. -
fnExp10Value(
dynamic value) → dynamic - Exp10Value(n): 10 raised to the argument's power
-
fnExtractFileDir(
dynamic value) → dynamic -
Expression function
ExtractFileDir(s): Gets the directory path. -
fnExtractFileDrive(
dynamic value) → dynamic -
Expression function
ExtractFileDrive(s): Gets the drive letter. -
fnExtractFileExt(
dynamic value) → dynamic -
Expression function
ExtractFileExt(s): Gets the file extension. -
fnExtractFileName(
dynamic value) → dynamic -
Expression function
ExtractFileName(s): Gets the file name (including extension). -
fnExtractFileNameNoExt(
dynamic value) → dynamic -
Expression function
ExtractFileNameNoExt(s): Gets the file name (without extension). -
fnExtractFilePath(
dynamic value) → dynamic -
Expression function
ExtractFilePath(s): Gets the full path. -
fnFactorial(
dynamic value) → dynamic - Factorial(n): factorial n!
-
fnFALSE(
) → dynamic -
Expression function
FALSE: The boolean false constant. -
fnFillChar(
dynamic v1, dynamic v2) → dynamic - FillChar(count, ch): fills a string of length count with the given character
-
fnFloat(
dynamic value) → dynamic -
Expression function
FLOAT(x): Forces conversion to a float type. -
fnFloatToStr(
dynamic value) → dynamic -
Expression function
FloatToStr(n): Converts a float to a string. -
fnFloor(
dynamic value) → dynamic -
Expression function
FLOOR(x): Rounds down. -
fnFORMAT(
dynamic v1, dynamic v2) → dynamic -
Expression function
FORMAT(fmt,x): Formatted output. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnFormatDateTime(
dynamic v1, dynamic v2) → dynamic -
Expression function
FormatDateTime(fmt,d): Formats a date/time according to a custom pattern string. -
fnFormatFloat(
dynamic v1, dynamic v2) → dynamic -
Expression function
FormatFloat(fmt,n): Formats a floating-point number according to a custom pattern string. -
fnFrac(
dynamic value) → dynamic -
Expression function
FRAC(x): Takes the decimal portion. -
fnGetFreeRes(
) → dynamic -
Expression function
GetFreeRes: Gets the available resources. -
fnGetMacPhysicalAddress(
) → dynamic -
Expression function
GetMacPhysicalAddress: Gets the MAC physical address. -
fnGetPhysMem(
) → dynamic -
Expression function
GetPhysMem: Gets the physical memory size. -
fnGetUrlContent(
dynamic value) → dynamic -
Expression function
GetUrlContent(url): Fetches the content of a URL. -
fnHex(
dynamic v1, dynamic v2) → dynamic -
Expression function
HEX(n,d): Converts an integer to a hex string. -
fnHexToColor(
dynamic value) → dynamic -
Expression function
HexToColor(s): Converts hex to a color value. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnHexToInt(
dynamic value) → dynamic -
Expression function
HexToInt(s): Converts a hex string to an integer. -
fnHexToStr(
dynamic value) → dynamic -
Expression function
HexToStr(s): Converts hex encoding to a string. -
fnHIGH(
List values) → dynamic - HIGH(values): the array's maximum index (0-based)
-
fnHigh(
dynamic value) → dynamic -
Expression function
high(arr): Returns the array's upper-bound index. -
fnHighestAlgebraic(
dynamic value) → dynamic - HighestAlgebraic(n): returns the maximum value representable by the argument's data type (this engine's numeric types can't be reliably distinguished, so it always returns the Int32 upper bound)
-
fnHOUR(
dynamic value) → dynamic -
Expression function
HOUR(d): Extracts the hour. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnHTML(
dynamic value) → dynamic -
Expression function
HTML(s): HTML special-character escaping. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnImg(
dynamic v1, dynamic v2) → dynamic -
Expression function
IMG(name,size): Image path handling. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnINCVal(
dynamic v1, dynamic v2) → dynamic -
fnINSERT(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
INSERT(s,p,n,new): Inserts a string (byte). The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnINSTR(
dynamic v1, dynamic v2) → dynamic -
Expression function
INSTR(s,sub): Finds a string's position. -
fnInt(
dynamic value) → dynamic -
Expression function
INT(x): Takes the integer part (truncated toward zero). -
fnIntegerOfDate(
dynamic value) → dynamic - IntegerOfDate(yyyymmdd): converts YYYYMMDD to a COBOL internal date integer
-
fnIntegerOfDay(
dynamic value) → dynamic - IntegerOfDay(yyyyddd): converts YYYYDDD to a COBOL internal date integer
-
fnIntToHex(
dynamic v1, dynamic v2) → dynamic -
Expression function
IntToHex(n,d): Converts an integer to a hex string. -
fnIntToStr(
dynamic value) → dynamic -
Expression function
IntToStr(n): Converts an integer to a string. -
fnIsLeapYear(
dynamic value) → dynamic -
Expression function
IsLeapYear(y): Whether it's a leap year. -
fnISNULL(
dynamic value) → dynamic -
Expression function
ISNULL(x): Whether it's NULL. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnISNUMBER(
dynamic value) → dynamic -
Expression function
ISNUMBER(x): Whether it's a numeric type. -
fnISODD(
dynamic value) → dynamic -
Expression function
ISODD(x): Whether it's odd. -
fnISSEVEN(
dynamic value) → dynamic -
fnLastMonth(
) → dynamic -
Expression function
last-month(): The first day of last month. -
fnLastNight(
) → dynamic -
Expression function
last-night(): The time point corresponding to last night. -
fnLastWeek(
) → dynamic -
Expression function
last-week: The same day last week. -
fnLastYear(
) → dynamic -
Expression function
last-year(): The first day of last year. -
fnLeadByte(
dynamic v1, dynamic v2) → dynamic -
Expression function
LEADBYTE(s,p): Determines whether it's the lead byte of a double-byte character. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnLENGTH(
dynamic value) → dynamic -
Expression function
LENGTH(s): String length. -
fnLIKE(
dynamic v1, dynamic v2) → dynamic -
Expression function
LIKE(s,pat): Wildcard pattern matching. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnLn(
dynamic value) → dynamic -
Expression function
LN(x): Natural logarithm. -
fnLoCaseInsensitive(
) → dynamic -
Expression function
loCaseInsensitive: Locate option: case-insensitive. -
fnLOCATE(
dynamic v1, dynamic v2) → dynamic -
Expression function
LOCATE(sub,s): Position of a substring. -
fnLog10Value(
dynamic value) → dynamic - LOG(n): base-10 logarithm
-
fnLoPartialKey(
) → dynamic -
Expression function
loPartialKey: Locate option: partial key. -
fnLOW(
List values) → dynamic - LOW(values): the array's minimum index (always 0)
-
fnLow(
dynamic value) → dynamic -
Expression function
low(arr): Returns the array's lower-bound index. -
fnLOWER(
dynamic value) → dynamic -
Expression function
LOWER(s): Converts to lowercase. -
fnLowestAlgebraic(
dynamic value) → dynamic - LowestAlgebraic(n): returns the minimum value representable by the argument's data type (this engine's numeric types can't be reliably distinguished, so it always returns the Int32 lower bound)
-
fnLTRIM(
dynamic value) → dynamic -
Expression function
LTRIM(s): Removes leading whitespace. -
fnMax(
dynamic v1, dynamic v2) → dynamic -
Expression function
MAX(a,b): Returns the larger of the two. -
fnMD5(
dynamic value) → dynamic -
Expression function
MD5(s): Computes the MD5 hash of a string. -
fnMeanValue(
List values) → dynamic - MeanValue(values): arithmetic mean
-
fnMedianValue(
List values) → dynamic - MedianValue(values): median
-
fnMID(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
MID(s,p,n): Extracts a substring (byte count). -
fnMidRangeValue(
List values) → dynamic - MidRangeValue(values): (max + min) / 2
-
fnMin(
dynamic v1, dynamic v2) → dynamic -
Expression function
MIN(a,b): Returns the smaller of the two. -
fnMINUTE(
dynamic value) → dynamic -
Expression function
MINUTE(d): Extracts the minute. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnMONTH(
dynamic value) → dynamic -
Expression function
MONTH(d): Extracts the month. -
fnMyDate(
dynamic value) → dynamic -
Expression function
MyDate(d): Custom date formatting (ROC-calendar format). The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnMyDateTime(
dynamic value) → dynamic -
Expression function
MyDateTime(d): Custom date/time formatting (ROC-calendar format). The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnNAME(
dynamic value) → dynamic -
Expression function
name: (optional). The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnNBSP(
) → dynamic -
Expression function
NBSP: Non-breaking space. -
fnNextWeekDaySerial(
dynamic v1, dynamic v2) → dynamic -
fnNOW(
) → dynamic -
Expression function
NOW: The current date and time (in a different format). -
fnNULL(
) → dynamic -
Expression function
NULL: The Null constant. -
fnNumValC(
dynamic v1, dynamic v2) → dynamic - NumValC(str, currencySymbol): converts a string with a currency symbol and thousands-separator commas to a number
-
fnNumValF(
dynamic value) → dynamic - NumValF(str): converts a floating-point string in scientific notation to a number
-
fnOdd(
dynamic value) → dynamic -
Expression function
Odd(n): Whether it's odd. -
fnORD(
dynamic value) → dynamic -
Expression function
ORD(c): Character's ordinal value (same as ASC). -
fnOrd(
dynamic value) → dynamic - Ord(v): converts a character to its ordinal value; returns as-is if already an integer
-
fnOrdMax(
List values) → dynamic - OrdMax(values): the 1-based position of the maximum value in the argument list
-
fnOrdMin(
List values) → dynamic - OrdMin(values): the 1-based position of the minimum value in the argument list
-
fnPi(
) → dynamic -
Expression function
PI: The constant pi. -
fnPOS(
dynamic v1, dynamic v2) → dynamic -
Expression function
POS(sub,s): Finds a substring's position (byte count). -
fnPower(
dynamic v1, dynamic v2) → dynamic -
Expression function
POWER(x,n): x raised to the power n. -
fnPrevWeekDaySerial(
dynamic v1, dynamic v2) → dynamic -
fnRandom(
dynamic value) → dynamic -
Expression function
RANDOM(lo,hi): Random integer in [lo,hi). -
fnRandomRange(
dynamic v1, dynamic v2) → dynamic -
Expression function
RANDOMRANGE(lo,hi): Random integer in [lo,hi). -
fnRangeValue(
List values) → dynamic - RangeValue(values): range (max - min)
-
fnRemainderValue(
dynamic v1, dynamic v2) → dynamic - RemainderValue(a, b): floating-point remainder, with the same sign as the dividend
-
fnREPLACE(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
REPLACE(s,old,new): Replaces text within a string. -
fnReplaceAt(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
Expression function
REPLACEAT(s,p,new): Replaces at a specified position. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnReverseStr(
dynamic value) → dynamic - ReverseStr(str): reverses a string
-
fnRound(
dynamic v) → dynamic -
Expression function
ROUND(x,d): Rounds to d decimal places (standard rounding). -
fnRoundTo(
dynamic v1, dynamic v2) → dynamic -
Expression function
ROUNDTO(x,digits): Rounds to digits decimal places. -
fnRTRIM(
dynamic value) → dynamic -
Expression function
RTRIM(s): Removes trailing whitespace. -
fnSECOND(
dynamic value) → dynamic -
Expression function
SECOND(d): Extracts the second. -
fnSignOf(
dynamic value) → dynamic - SignOf(n): returns -1, 0, or 1
-
fnSin(
dynamic value) → dynamic -
Expression function
SIN(x): Sine. -
fnSqr(
dynamic value) → dynamic -
Expression function
SQR(x): Square. -
fnSqrt(
dynamic value) → dynamic -
Expression function
SQRT(x): Square root. -
fnStandardCompare(
dynamic v1, dynamic v2) → dynamic - StandardCompare(a, b): ordinal string comparison, returns '<'/'='/'>'
-
fnStandardDeviation(
List values) → dynamic - StandardDeviation(values): standard deviation (population)
-
fnStoredCharLength(
dynamic value) → dynamic - StoredCharLength(str): the effective length after trimming trailing whitespace
-
fnSTR(
dynamic value) → dynamic -
Expression function
STR(n): Converts a number to a string. -
fnStrToDate(
dynamic value) → dynamic -
Expression function
StrToDate(s): Converts a string to a date. In this Dart engine it returns a date serial number (days since 1899-12-30); see the manual, Appendix C.2. -
fnStrToDateTime(
dynamic value) → dynamic -
Expression function
StrToDateTime(s): Converts a string to a date/time. In this Dart engine it returns a date serial number (days since 1899-12-30); see the manual, Appendix C.2. -
fnStrToFloat(
dynamic value) → dynamic -
Expression function
StrToFloat(s): Converts a string to a float. -
fnStrToHex(
dynamic value) → dynamic -
Expression function
StrToHex(s): Converts a string to hex encoding. -
fnStrToInt(
dynamic value) → dynamic -
Expression function
StrToInt(s): Converts a string to an integer. -
fnStrToTime(
dynamic value) → dynamic -
Expression function
StrToTime(s): Converts a string to a time. In this Dart engine it returns a date serial number (days since 1899-12-30); see the manual, Appendix C.2. -
fnSubstituteCaseStr(
List values) → dynamic - SubstituteCaseStr(values): same as SubstituteStr, but case-insensitive matching
-
fnSubstituteStr(
List values) → dynamic -
SubstituteStr(values):
str, old1, new1, old2, new2, ...replaces each pair in sequence, case-sensitive -
fnTan(
dynamic value) → dynamic -
Expression function
TAN(x): Tangent. -
fnTDATE(
) → dynamic -
Expression function
TDATE: An alias for the system date. -
fnTestDateYyyymmdd(
dynamic value) → dynamic - TestDateYyyymmdd(yyyymmdd): validates whether it's a legal date; 0=valid, 1=invalid
-
fnTestDayYyyyddd(
dynamic value) → dynamic - TestDayYyyyddd(yyyyddd): validates whether it's a legal year-day; 0=valid, 1=invalid
-
fnTestNumVal(
dynamic value) → dynamic - TestNumVal(str): tests whether a string can safely convert to a number; 0=yes, 1=no
-
fnTestNumValC(
dynamic v1, dynamic v2) → dynamic - TestNumValC(str, currencySymbol): the currency-symbol-aware version of the safety test
-
fnTIME(
) → dynamic -
Expression function
TIME: The current time (the time portion of CURRENT_DATE). -
fnTimeSerialValue(
dynamic h, dynamic m, dynamic s) → dynamic -
Expression function
TimeSerialValue(h, m, s): Combines hour, minute, second into a TDateTime. In this Dart engine it returns a date serial number (days since 1899-12-30); see the manual, Appendix C.2. -
fnTimeToStr(
dynamic value) → dynamic -
Expression function
TimeToStr(t): Converts a time to a string. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnTODAY(
) → dynamic -
Expression function
TODAY: Today's date. -
fnToFloatSafe(
dynamic value) → dynamic - ToFloatSafe(v): safely converts to a float, returning 0 on failure
-
fnToIntegerValue(
dynamic value) → dynamic - ToIntegerValue(n): the largest integer not exceeding the argument (rounds down)
-
fnToIntSafe(
dynamic value) → dynamic - ToIntSafe(v): safely converts to an integer, returning 0 on failure
-
fnTRIM(
dynamic value) → dynamic -
Expression function
TRIM(s): Removes leading and trailing whitespace. -
fnTrimLeft(
dynamic value) → dynamic -
Expression function
TrimLeft(x1): Removes leading spaces. -
fnTrimRight(
dynamic value) → dynamic -
Expression function
TrimRight(x1): Removes trailing spaces. -
fnTRUE(
) → dynamic -
Expression function
TRUE: The boolean true constant. -
fnTrunc(
dynamic value) → dynamic -
Expression function
TRUNC(x): Truncates the decimal portion, rounding toward zero (regardless of sign). -
fnUPPER(
dynamic value) → dynamic -
Expression function
UPPER(s): Converts to uppercase. -
fnUPPERA(
dynamic value) → dynamic -
Expression function
UPPERA(s): Converts to uppercase (Ansi version). -
fnUTF8(
dynamic value) → dynamic -
Expression function
UTF8(s): ANSI to UTF-8. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnVALUE(
dynamic value) → dynamic -
Expression function
value: (optional). -
fnVarianceValue(
List values) → dynamic - VarianceValue(values): variance (population, divided by N)
-
fnVarIsNull(
dynamic value) → dynamic -
Expression function
VarIsNull(x): Whether the Variant is Null. The Dart result differs from the Windows engine; see the manual, Appendix C.3. -
fnVarToStr(
dynamic value) → dynamic -
Expression function
VarToStr(v): Converts a Variant to a string. -
fnVarType(
dynamic value) → dynamic -
Expression function
VARTYPE(v): Returns the type name as a string (same as TYPE). -
fnWEEK(
dynamic value) → dynamic -
Expression function
WEEK(d): Extracts the week number. -
fnYEAR(
dynamic value) → dynamic -
Expression function
YEAR(d): Extracts the year. -
fnYearToYyyy(
dynamic v1, dynamic v2) → dynamic - YearToYyyy(yy, pivot): converts a 2-digit year to 4 digits using a pivot year
-
fnYesterday(
) → dynamic -
Expression function
yesterday: Yesterday's date. -
hexToStr(
String source) → String - UTF-8 hex string → string
-
iif(
dynamic condition, dynamic trueVal, dynamic falseVal) → dynamic - IIF(condition, trueVal, falseVal)
-
kiriage(
double x, int n) → double - Round up / ceiling (corresponds to Pascal Kiriage)
-
kirisute(
double x, int n) → double - Round down / truncate (corresponds to Pascal Kirisute)
-
mySimpleRoundTo(
double value, int digit) → double - Simple rounding (corresponds to Pascal MySimpleRoundTo)
-
shisha(
double x, int n) → double - Round to nearest (corresponds to Pascal Shisha)
-
stdABS(
dynamic value) → dynamic -
Expression function
ABS(x): absolute value. -
stdACOS(
dynamic value) → dynamic -
Expression function
ACOS(x): arc cosine. -
stdANNUITY(
dynamic v1, dynamic v2) → dynamic - ANNUITY(rate, periods)
-
stdASIN(
dynamic value) → dynamic -
Expression function
ASIN(x): arc sine. -
stdATAN(
dynamic value) → dynamic -
Expression function
ATAN(x): arc tangent. -
stdBOOLEAN_OF_INTEGER(
dynamic v1, dynamic v2) → dynamic - BOOLEAN-OF-INTEGER(n, len): converts an integer to a bit string
-
stdBYTE_LENGTH(
dynamic value) → dynamic -
Expression function
BYTE_LENGTH(s): length in bytes. -
stdCHAR(
dynamic value) → dynamic - CHAR(n): ordinal n → character (COBOL ordinal = ASCII + 1)
-
stdCOMBINED_DATETIME(
dynamic v1, dynamic v2) → dynamic - COMBINED-DATETIME(date_int, time_secs)
-
stdCONCATENATE(
List values) → dynamic -
Expression function
CONCATENATE(...): joins all arguments. -
stdCOS(
dynamic value) → dynamic -
Expression function
COS(x): cosine. -
stdCURRENCY_SYMBOL(
) → dynamic -
Expression function
CURRENCY_SYMBOL: the currency symbol. -
stdCURRENT_DATE(
) → dynamic - CURRENT-DATE (returns a full timestamp string yyyyMMddHHmmsscc+HHmm)
-
stdDATE_OF_INTEGER(
dynamic value) → dynamic - DATE-OF-INTEGER(n) → YYYYMMDD
-
stdDATE_TO_YYYYMMDD(
dynamic v1, dynamic v2) → dynamic - DATE-TO-YYYYMMDD(yymmdd, pivot)
-
stdDAY_OF_INTEGER(
dynamic value) → dynamic - DAY-OF-INTEGER(n) → YYYYDDD
-
stdE(
) → dynamic -
Expression function
E: the constant e. -
stdEXP(
dynamic value) → dynamic -
Expression function
EXP(x): e to the power x. -
stdEXP10(
dynamic value) → dynamic -
Expression function
EXP10(x): 10 to the power x. -
stdFACTORIAL(
dynamic value) → dynamic - FACTORIAL:n!
-
stdFRACTION_PART(
dynamic value) → dynamic - FRACTION-PART: the fractional part
-
stdHIGHEST_ALGEBRAIC(
dynamic value) → dynamic - HIGHEST-ALGEBRAIC: the type's maximum value (based on the runtime type)
-
stdINTEGER(
dynamic value) → dynamic - INTEGER: rounds down (floor)
-
stdINTEGER_OF_BOOLEAN(
dynamic value) → dynamic - INTEGER-OF-BOOLEAN(s): converts a bit string to an integer
-
stdINTEGER_OF_DATE(
dynamic value) → dynamic - INTEGER-OF-DATE(YYYYMMDD) → integer day
-
stdINTEGER_OF_DAY(
dynamic value) → dynamic - INTEGER-OF-DAY(YYYYDDD) → integer day
-
stdINTEGER_PART(
dynamic value) → dynamic - INTEGER-PART: truncates toward zero
-
stdLENGTH(
dynamic value) → dynamic -
Expression function
LENGTH(s): string length. -
stdLOCALE_COMPARE(
dynamic v1, dynamic v2) → dynamic - LOCALE-COMPARE(s1, s2) → '<' '=' '>'
-
stdLOCALE_DATE(
dynamic value) → dynamic -
Expression function
LOCALE_DATE(d): date formatted for the locale. -
stdLOCALE_TIME(
dynamic value) → dynamic -
Expression function
LOCALE_TIME(t): time formatted for the locale. -
stdLOG(
dynamic value) → dynamic -
Expression function
LOG(x): natural logarithm. -
stdLOG10(
dynamic value) → dynamic -
Expression function
LOG10(x): base-10 logarithm. -
stdLOWER_CASE(
dynamic value) → dynamic -
Expression function
LOWER_CASE(s): lower-case copy. -
stdLOWEST_ALGEBRAIC(
dynamic value) → dynamic - LOWEST-ALGEBRAIC: the type's minimum value
-
stdMAX(
List values) → dynamic -
Expression function
MAX(...): largest value. -
stdMEAN(
List values) → dynamic -
Expression function
MEAN(...): arithmetic mean. -
stdMEDIAN(
List values) → dynamic -
Expression function
MEDIAN(...): median. -
stdMIDRANGE(
List values) → dynamic -
Expression function
MIDRANGE(...): average of the largest and smallest value. -
stdMIN(
List values) → dynamic -
Expression function
MIN(...): smallest value. -
stdMOD(
dynamic v1, dynamic v2) → dynamic - MOD: result's sign matches the divisor (COBOL standard)
-
stdMONETARY_DECIMAL_POINT(
) → dynamic -
Expression function
MONETARY_DECIMAL_POINT: monetary decimal point. -
stdMONETARY_THOUSANDS_SEPARATOR(
) → dynamic -
Expression function
MONETARY_THOUSANDS_SEPARATOR: monetary thousands separator. -
stdNUMERIC_DECIMAL_POINT(
) → dynamic -
Expression function
NUMERIC_DECIMAL_POINT: numeric decimal point. -
stdNUMERIC_THOUSANDS_SEPARATOR(
) → dynamic -
Expression function
NUMERIC_THOUSANDS_SEPARATOR: numeric thousands separator. -
stdNUMVAL(
dynamic value) → dynamic -
Expression function
NUMVAL(s): string to number. -
stdNUMVAL_C(
dynamic v1, dynamic v2) → dynamic -
Expression function
NUMVAL_C(s, symbol): string with a currency symbol to number. -
stdNUMVAL_F(
dynamic value) → dynamic -
Expression function
NUMVAL_F(s): floating-point string (e.g.1.5E2) to number. -
stdORD(
dynamic value) → dynamic - ORD(c): character → ordinal (= ASCII + 1)
-
stdORD_MAX(
List values) → dynamic - ORD-MAX: returns the 1-based index of the maximum value
-
stdORD_MIN(
List values) → dynamic - ORD-MIN: returns the 1-based index of the minimum value
-
stdPI(
) → dynamic -
Expression function
PI: the constant pi. -
stdPRESENT_VALUE(
List values) → dynamic - PRESENT-VALUE(rate, amt1, amt2, ...)
-
stdRANDOM(
dynamic value) → dynamic -
RANDOM(
seed): doesn't reset when seed=0 -
stdRANGE(
List values) → dynamic -
Expression function
RANGE(...): largest minus smallest value. -
stdREM(
dynamic v1, dynamic v2) → dynamic - REM: result's sign matches the dividend
-
stdREVERSE(
dynamic value) → dynamic -
Expression function
REVERSE(s): reversed string. -
stdSECONDS_PAST_MIDNIGHT(
) → dynamic - SECONDS-PAST-MIDNIGHT
-
stdSIGN(
dynamic value) → dynamic -
Expression function
SIGN(x): -1, 0 or 1. -
stdSIN(
dynamic value) → dynamic -
Expression function
SIN(x): sine. -
stdSQRT(
dynamic value) → dynamic -
Expression function
SQRT(x): square root. -
stdSTANDARD_COMPARE(
dynamic v1, dynamic v2) → dynamic - STANDARD-COMPARE(s1, s2) → '<' '=' '>'
-
stdSTANDARD_DEVIATION(
List values) → dynamic -
Expression function
STANDARD_DEVIATION(...): standard deviation. -
stdSTORED_CHAR_LENGTH(
dynamic value) → dynamic -
Expression function
STORED_CHAR_LENGTH(s): length without trailing spaces. -
stdSUBSTITUTE(
List values) → dynamic - SUBSTITUTE(str, from1, to1, from2, to2, ...)
-
stdSUBSTITUTE_CASE(
List values) → dynamic - SUBSTITUTE-CASE (case-insensitive)
-
stdSUM(
List values) → dynamic -
Expression function
SUM(...): sum. -
stdTAN(
dynamic value) → dynamic -
Expression function
TAN(x): tangent. -
stdTEST_DATE_YYYYMMDD(
dynamic value) → dynamic - TEST-DATE-YYYYMMDD: 0=valid
-
stdTEST_DAY_YYYYDDD(
dynamic value) → dynamic - TEST-DAY-YYYYDDD: 0=valid
-
stdTEST_NUMVAL(
dynamic value) → dynamic -
Expression function
TEST_NUMVAL(s): 0 when stdNUMVAL can convert the string. -
stdTEST_NUMVAL_C(
dynamic v1, dynamic v2) → dynamic -
Expression function
TEST_NUMVAL_C(s, symbol): 0 when stdNUMVAL_C can convert the string. -
stdTEST_NUMVAL_F(
dynamic value) → dynamic -
Expression function
TEST_NUMVAL_F(s): 0 when stdNUMVAL_F can convert the string. -
stdTRIM(
dynamic v1, dynamic v2) → dynamic - TRIM(str, mode) mode: 'LEADING' | 'TRAILING' | '' (both ends)
-
stdUPPER_CASE(
dynamic value) → dynamic -
Expression function
UPPER_CASE(s): upper-case copy. -
stdVARIANCE(
List values) → dynamic -
Expression function
VARIANCE(...): variance. -
stdWHEN_COMPILED(
) → dynamic - WHEN-COMPILED: same as CURRENT-DATE
-
stdYEAR_TO_YYYY(
dynamic v1, dynamic v2) → dynamic - YEAR-TO-YYYY(yy, pivot)
-
strToHex(
String source) → String - String → UTF-8 hex string
-
tt_ADDWORKDAYS(
dynamic v1, dynamic v2) → dynamic - tt_ADDWORKDAYS(date, n): adds n working days (skips Sat/Sun)
-
tt_AGE(
dynamic v1, dynamic v2) → dynamic - tt_AGE(birthdate, asofdate): calculates age in full years from a birthdate
-
tt_ARRAVG(
List values) → dynamic - tt_ARRAVG(values): the average of several values
-
tt_ARRCONTAINS(
List values) → dynamic - tt_ARRCONTAINS(values, target): the last argument is target
-
tt_ARRJOIN(
List values) → dynamic - tt_ARRJOIN(values, delim): the last argument is delim
-
tt_ARRMAX(
List values) → dynamic - tt_ARRMAX(values): the maximum of several values
-
tt_ARRMIN(
List values) → dynamic - tt_ARRMIN(values): the minimum of several values
-
tt_ARRSUM(
List values) → dynamic - tt_ARRSUM(values): the sum of several values
-
tt_ARRUNIQ(
List values) → dynamic - tt_ARRUNIQ(values): removes duplicate values, returns joined by commas
-
tt_As10(
dynamic value) → dynamic - tt_As10(v):Boolean → '1'/'0'
-
tt_AsBit(
dynamic value) → dynamic - tt_AsBit(v): integer → '1'/'0'
-
tt_AsBool(
dynamic value) → dynamic - tt_AsBool(v):Variant → Boolean
-
tt_AsCsv(
List values) → dynamic - tt_AsCsv(values): multiple values → a single CSV line
-
tt_AsCurr(
dynamic v1, dynamic v2) → dynamic - tt_AsCurr(v, d): thousands-separated currency string
-
tt_AsDate(
dynamic value) → dynamic - tt_AsDate(v): Variant → date (DateTime)
-
tt_AsDateTime(
dynamic value) → dynamic - tt_AsDateTime(v): Variant → date-time
-
tt_AsDefault(
dynamic v1, dynamic v2) → dynamic - tt_AsDefault(v, default): uses the default value when Null
-
tt_AsDQuoted(
dynamic value) → dynamic - tt_AsDQuoted(v): wrapped in double quotes, internal quotes backslash-escaped
-
tt_AsFixed(
dynamic v1, dynamic v2) → dynamic - tt_AsFixed(v, d): fixed-decimal-place string
-
tt_AsFloat(
dynamic value) → dynamic - tt_AsFloat(v):Variant → Float
-
tt_AsHex(
dynamic v1, dynamic v2) → dynamic - tt_AsHex(v, width): integer → hexadecimal
-
tt_AsInt(
dynamic value) → dynamic - tt_AsInt(v):Variant → Integer
-
tt_AsISO(
dynamic value) → dynamic - tt_AsISO(v): ISO 8601 date string
-
tt_AsJson(
dynamic value) → dynamic - tt_AsJson(v): a single value → a plain JSON value
-
tt_AsLower(
dynamic value) → dynamic - tt_AsLower(v): all lowercase
-
tt_AsNullable(
dynamic value) → dynamic - tt_AsNullable(v): empty→NULL, otherwise quoted
-
tt_AsOct(
dynamic value) → dynamic - tt_AsOct(v): integer → octal
-
tt_AsPct(
dynamic v1, dynamic v2) → dynamic - tt_AsPct(v, d): percentage string
-
tt_AsQuoted(
dynamic value) → dynamic - tt_AsQuoted(v): wrapped in single quotes, internal quotes doubled (escaped)
-
tt_AsRDate(
dynamic value) → dynamic - tt_AsRDate(v): ROC-calendar-year date
-
tt_AsRDateTime(
dynamic value) → dynamic - tt_AsRDateTime(v): ROC-calendar-year date-time
-
tt_AsSci(
dynamic v1, dynamic v2) → dynamic - tt_AsSci(v, d): scientific-notation string, formatted as 1.23E+04 (uppercase E, exponent zero-padded to 2 digits)
-
tt_AsSlug(
dynamic value) → dynamic - tt_AsSlug(v):URL slug
-
tt_AsSQLStr(
dynamic value) → dynamic - tt_AsSQLStr(v): SQL-safe string (inside single quotes, ' becomes '')
-
tt_AsString(
dynamic value) → dynamic - tt_AsString(v):Variant → String
-
tt_AsTF(
dynamic value) → dynamic - tt_AsTF(v):Boolean → 'T'/'F'
-
tt_AsTime(
dynamic value) → dynamic - tt_AsTime(v): Variant → time
-
tt_AsTrimmed(
dynamic value) → dynamic - tt_AsTrimmed(v): trims whitespace from both ends
-
tt_AsUpper(
dynamic value) → dynamic - tt_AsUpper(v): all uppercase
-
tt_AsYN(
dynamic value) → dynamic - tt_AsYN(v):Boolean → 'Y'/'N'
-
tt_BETWEEN(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
tt_BETWEEN(value, lo, hi): whether a value is within the
lo, hirange -
tt_BITAND(
dynamic v1, dynamic v2) → dynamic - tt_BITAND(a, b): bitwise AND
-
tt_BITNOT(
dynamic value) → dynamic - tt_BITNOT(a): bitwise NOT (uses the pure-arithmetic equivalent -x-1 instead of the ~ operator, to guard against possible bitwise-op discrepancies under Web compilation)
-
tt_BITOR(
dynamic v1, dynamic v2) → dynamic - tt_BITOR(a, b): bitwise OR
-
tt_BITSHL(
dynamic v1, dynamic v2) → dynamic - tt_BITSHL(a, n): shift left n bits
-
tt_BITSHR(
dynamic v1, dynamic v2) → dynamic - tt_BITSHR(a, n): shift right n bits
-
tt_BITXOR(
dynamic v1, dynamic v2) → dynamic - tt_BITXOR(a, b): bitwise XOR
-
tt_BOMDATE(
dynamic v1, dynamic v2) → dynamic - tt_BOMDATE(year, month): the first day of the given year/month
-
tt_BR2CRLF(
dynamic value) → dynamic -
tt_BR2CRLF(str):
→ newline -
tt_BYTESIZE(
dynamic value) → dynamic - tt_BYTESIZE(n): returns how many bytes are needed to store n bits
-
tt_CAPWORDS(
dynamic value) → dynamic - tt_CAPWORDS(str): capitalizes the first letter of each word
-
tt_CBRT(
dynamic value) → dynamic - tt_CBRT(x): cube root
-
tt_CHARAT(
dynamic v1, dynamic v2) → dynamic - tt_CHARAT(str, n): gets the nth character (1-based)
-
tt_CHECKSUM(
dynamic value) → dynamic - tt_CHECKSUM(str): XOR checksum
-
tt_CHOOSE(
List values) → dynamic - tt_CHOOSE(index, values): picks a value from the list by (1-based) index
-
tt_CLAMP(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
tt_CLAMP(value, lo, hi): clamps a value to the
lo, hirange -
tt_COALESCE(
List values) → dynamic - tt_COALESCE: returns the first non-Null value (variadic)
-
tt_COMMAFMT(
dynamic value) → dynamic - tt_COMMAFMT(value): adds thousands separators to a number (integer)
-
tt_CONTAINS(
dynamic v1, dynamic v2) → dynamic - tt_CONTAINS(str, substr): whether the string contains the substring
-
tt_COUNTSTR(
dynamic v1, dynamic v2) → dynamic - tt_COUNTSTR(substr, str): counts occurrences of a substring
-
tt_CRLF2BR(
dynamic value) → dynamic -
tt_CRLF2BR(str): newline →
-
tt_CUMIPMT(
List values) → dynamic - tt_CUMIPMT(rate, nper, pv, startPeriod, endPeriod): cumulative interest
-
tt_DATEADD(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_DATEADD(date, n, unit): adds/subtracts from a date; unit='D'/'M'/'Y'/'W'
-
tt_DATEDIFF(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_DATEDIFF(date1, date2, unit): date difference
-
tt_DATEEND(
dynamic v1, dynamic v2) → dynamic - tt_DATEEND(date, unit): end of a period; unit='M'=end of month/'Y'=end of year
-
tt_DATESERIAL(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_DATESERIAL(y, m, d): builds a DateTime from year/month/day
-
tt_DATESTART(
dynamic v1, dynamic v2) → dynamic - tt_DATESTART(date, unit): start of a period; unit='M'=start of month/'Y'=start of year/'W'=Monday
-
tt_DAYNAME(
dynamic value) → dynamic - tt_DAYNAME(date): weekday name (returned in Chinese — this is a data value used by WML output, not a comment, so it is intentionally left untranslated; translating it would change the function's runtime behavior)
-
tt_DECODE(
List values) → dynamic - tt_DECODE(val, case1, result1, ..., default):Oracle DECODE
-
tt_DEG2RAD(
dynamic value) → dynamic - tt_DEG2RAD(deg): degrees → radians
-
tt_ELLIPSIS(
dynamic v1, dynamic v2) → dynamic - tt_ELLIPSIS(str, maxLen): truncates and adds '...'
-
tt_ENDSWITH(
dynamic v1, dynamic v2) → dynamic - tt_ENDSWITH(str, suffix): whether the string ends with suffix
-
tt_EOMDATE(
dynamic v1, dynamic v2) → dynamic - tt_EOMDATE(year, month): the last day of the given year/month
-
tt_EVEN(
dynamic value) → dynamic - tt_EVEN(n): the smallest even number ≥ n
-
tt_FIB(
dynamic value) → dynamic - tt_FIB(n): the nth Fibonacci number (0-based)
-
tt_FISCALQUARTER(
dynamic v1, dynamic v2) → dynamic - tt_FISCALQUARTER(date, fiscalStartMonth): fiscal quarter
-
tt_FISCALYEAR(
dynamic v1, dynamic v2) → dynamic - tt_FISCALYEAR(date, fiscalStartMonth): fiscal year
-
tt_FROMBIN(
dynamic value) → dynamic - tt_FROMBIN(str): converts a binary string to an integer
-
tt_FROMHEX(
dynamic value) → dynamic - tt_FROMHEX(str): converts a hex string to an integer
-
tt_FV(
dynamic v1, dynamic v2, dynamic v3, dynamic v4) → dynamic - tt_FV(rate, nper, pmt, pv): future value
-
tt_GCD(
dynamic v1, dynamic v2) → dynamic - tt_GCD(a, b): greatest common divisor
-
tt_GEOMEAN(
List values) → dynamic - tt_GEOMEAN(values): geometric mean
-
tt_GUID(
) → dynamic - tt_GUID: generates a new GUID string
-
tt_HARMEAN(
List values) → dynamic - tt_HARMEAN(values): harmonic mean
-
tt_HASH(
dynamic value) → dynamic - tt_HASH(str): a simple djb2 hash (32-bit, returned as a hex string)
-
tt_HTMLDECODE(
dynamic value) → dynamic - tt_HTMLDECODE(str): HTML special-character decoding
-
tt_HTMLENCODE(
dynamic value) → dynamic - tt_HTMLENCODE(str): HTML special-character encoding
-
tt_HYPOT(
dynamic v1, dynamic v2) → dynamic - tt_HYPOT(a, b): hypotenuse of a right triangle, sqrt(a²+b²)
-
tt_INDEXOF(
dynamic v1, dynamic v2, dynamic v3) → dynamic -
tt_INDEXOF(str, sub, start): finds a substring starting from
start(1-based) -
tt_IPMT(
dynamic v1, dynamic v2, dynamic v3, dynamic v4) → dynamic - tt_IPMT(rate, per, nper, pv): interest portion of payment n
-
tt_IRR(
List values) → dynamic - tt_IRR(values, guess): internal rate of return (Newton-Raphson iteration)
-
tt_ISPRIME(
dynamic value) → dynamic - tt_ISPRIME(n): whether n is prime
-
tt_ISWEEKDAY(
dynamic value) → dynamic - tt_ISWEEKDAY(date): whether it's a weekday (Monday~Friday)
-
tt_ISWEEKEND(
dynamic value) → dynamic - tt_ISWEEKEND(date): whether it's Saturday or Sunday
-
tt_JOIN(
dynamic v1, dynamic v2) → dynamic - tt_JOIN(values, delim): merges after cleaning up extra whitespace
-
tt_KEEPCHARS(
dynamic v1, dynamic v2) → dynamic - tt_KEEPCHARS(str, chars): keeps only the given set of characters
-
tt_LASTINDEXOF(
dynamic v1, dynamic v2) → dynamic - tt_LASTINDEXOF(str, sub): finds a substring searching from the right (1-based)
-
tt_LCM(
dynamic v1, dynamic v2) → dynamic - tt_LCM(a, b): least common multiple
-
tt_LERP(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_LERP(a, b, t): linear interpolation a + (b-a)*t
-
tt_LOG2(
dynamic value) → dynamic - tt_LOG2(x): base-2 logarithm
-
tt_LOGN(
dynamic v1, dynamic v2) → dynamic -
tt_LOGN(base, x): logarithm base
base -
tt_LPAD(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_LPAD(str, len, ch): left-pads with the given character to width len
-
tt_MASK(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_MASK(str, mask, placeholder): mask formatting (placeholder defaults to '#')
-
tt_MONTHNAME(
dynamic value) → dynamic - tt_MONTHNAME(date): month name (returned in Chinese — see the note on tt_DAYNAME above)
-
tt_NEXTWDAY(
dynamic v1, dynamic v2) → dynamic - tt_NEXTWDAY(date, dow): finds the next occurrence of the given weekday from date (dow=1 Mon..7 Sun)
-
tt_NPER(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_NPER(rate, pmt, pv): number of payment periods
-
tt_NPV(
List values) → dynamic - tt_NPV(rate, values): net present value
-
tt_NUMFMT(
dynamic v1, dynamic v2) → dynamic - tt_NUMFMT(value, decimals): numeric formatting, thousands separator + decimal places
-
tt_NVL(
dynamic v1, dynamic v2) → dynamic - tt_NVL(value, default): returns default if value is Null
-
tt_NVL2(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_NVL2(value, notNullVal, nullVal):Oracle NVL2
-
tt_ODD(
dynamic value) → dynamic - tt_ODD(n): the smallest odd number ≥ n
-
tt_ONLYALPHA(
dynamic value) → dynamic - tt_ONLYALPHA(str): keeps only English letters
-
tt_ONLYDIGITS(
dynamic value) → dynamic - tt_ONLYDIGITS(str): keeps only digits
-
tt_PADC(
dynamic v1, dynamic v2) → dynamic - tt_PADC(str, len): center-pads with spaces to width len
-
tt_PADL(
dynamic v1, dynamic v2) → dynamic - tt_PADL(str, len): left-pads with spaces to width len
-
tt_PADR(
dynamic v1, dynamic v2) → dynamic - tt_PADR(str, len): right-pads with spaces to width len
-
tt_PERCENT(
dynamic v1, dynamic v2) → dynamic - tt_PERCENT(part, total): percentage calculation
-
tt_PMT(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_PMT(rate, nper, pv): the equal payment amount
-
tt_PPMT(
dynamic v1, dynamic v2, dynamic v3, dynamic v4) → dynamic - tt_PPMT(rate, per, nper, pv): principal portion of payment n
-
tt_PREVWDAY(
dynamic v1, dynamic v2) → dynamic - tt_PREVWDAY(date, dow): finds the previous occurrence of the given weekday before date
-
tt_PRODUCT(
List values) → dynamic - tt_PRODUCT(values): product of the values Π(xᵢ)
-
tt_PV(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_PV(rate, nper, pmt): present value
-
tt_QUARTER(
dynamic value) → dynamic - tt_QUARTER(date): gets the quarter (1~4)
-
tt_QUARTILE(
List values) → dynamic - tt_QUARTILE(values, q): quartile; q=1 Q1, q=2 median, q=3 Q3
-
tt_RAD2DEG(
dynamic value) → dynamic - tt_RAD2DEG(rad): radians → degrees
-
tt_RANDOMSTR(
dynamic v1, dynamic v2) → dynamic - tt_RANDOMSTR(len, chars): generates a random string of the given length
-
tt_RATE(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_RATE(nper, pmt, pv): interest rate per period (Newton-Raphson approximation)
-
tt_RDATE(
dynamic value) → dynamic - tt_RDATE(date): ROC-calendar-year date string YYY/MM/DD
-
tt_RDATETIME(
dynamic value) → dynamic - tt_RDATETIME(date): ROC-calendar-year date-time string YYY/MM/DD HH:MM:SS
-
tt_REMOVECHARS(
dynamic v1, dynamic v2) → dynamic - tt_REMOVECHARS(str, chars): removes the given set of characters
-
tt_REPEAT(
dynamic v1, dynamic v2) → dynamic - tt_REPEAT(str, n): repeats the string n times
-
tt_ROUNDBANK(
dynamic v1, dynamic v2) → dynamic - tt_ROUNDBANK(value, decimals): banker's rounding (round half to even)
-
tt_RPAD(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_RPAD(str, len, ch): right-pads with the given character to width len
-
tt_SLUGIFY(
dynamic value) → dynamic - tt_SLUGIFY(str): converts to a URL slug
-
tt_SPLIT(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_SPLIT(str, delim, n): splits and takes the nth token (1-based)
-
tt_SPLITCOUNT(
dynamic v1, dynamic v2) → dynamic - tt_SPLITCOUNT(str, delim): number of tokens after splitting
-
tt_STARTSWITH(
dynamic v1, dynamic v2) → dynamic - tt_STARTSWITH(str, prefix): whether the string starts with prefix
-
tt_SUMSQ(
List values) → dynamic - tt_SUMSQ(values): sum of squares Σ(xᵢ²)
-
tt_SWITCH(
List values) → dynamic - tt_SWITCH(val, case1, result1, case2, result2, ..., defaultVal)
-
tt_TIMESERIAL(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_TIMESERIAL(h, m, s): builds a DateTime from hour/minute/second
-
tt_TOBIN(
dynamic v1, dynamic v2) → dynamic - tt_TOBIN(n, width): converts an integer to a binary string
-
tt_TODATE(
dynamic value) → dynamic - tt_TODATE: safely converts to date
-
tt_TOFLOAT(
dynamic value) → dynamic - tt_TOFLOAT: safely converts to float
-
tt_TOHEX(
dynamic value) → dynamic - tt_TOHEX(n): converts an integer to a hex string (no padding)
-
tt_TOINT(
dynamic value) → dynamic - tt_TOINT: safely converts to integer
-
tt_TOKENAT(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_TOKENAT(str, delims, n): takes a token using multi-character delimiters (1-based)
-
tt_TRUNCWORDS(
dynamic v1, dynamic v2) → dynamic - tt_TRUNCWORDS(str, n): truncates to the first n words
-
tt_TYPENAME(
dynamic value) → dynamic - tt_TYPENAME: the type's name
-
tt_UNMASK(
dynamic v1, dynamic v2, dynamic v3) → dynamic - tt_UNMASK(str, mask, placeholder): removes the mask, keeping only the characters at placeholder positions (placeholder defaults to '#')
-
tt_URLENCODE(
dynamic value) → dynamic - tt_URLENCODE(str): URL percent-encoding
-
tt_WORKDAYS(
dynamic v1, dynamic v2) → dynamic - tt_WORKDAYS(date1, date2): counts working days (excludes Sat/Sun)
-
tt_WRAP(
dynamic v1, dynamic v2) → dynamic - tt_WRAP(str, width): inserts a line break (CRLF) every width characters
-
tt_YEARFRAC(
dynamic v1, dynamic v2) → dynamic - tt_YEARFRAC(date1, date2): the fraction of a year between two dates (Actual/365)
-
tt_ZFILL(
dynamic v1, dynamic v2) → dynamic - tt_ZFILL(n, width): zero-pads an integer to width digits
-
varToDateTime(
dynamic v) → DateTime? - Converts an expression value to a DateTime, or null.
-
varToDouble(
dynamic v) → double - Converts an expression value to a double (0 when not numeric).
-
varToInt(
dynamic v) → int - Converts an expression value to an int (0 when not numeric).
-
varToStr(
dynamic v) → String - Converts an expression value to a string (null becomes '').
Typedefs
- Func0 = dynamic Function()
- Function type aliases
- Func1 = dynamic Function(dynamic value)
- A custom function taking one argument (see WapEvaluator.addFunction1Param).
- Func2 = dynamic Function(dynamic v1, dynamic v2)
- A custom function taking two arguments.
- Func3 = dynamic Function(dynamic v1, dynamic v2, dynamic v3)
- A custom function taking three arguments.
- Func4 = dynamic Function(dynamic v1, dynamic v2, dynamic v3, dynamic v4)
- A custom function taking four arguments.
- FuncA = dynamic Function(List values)
- A custom function taking any number of arguments, passed as a list.