Functions supported for optimization
To ensure that your strategy can be optimized for better performance, use strategy components that contain only functions supported for optimization.
The following table provides a list of functions supported for optimization by default:
Functions supported for optimization
Function Name | Library | Ruleset | Return Type | Parameter Type list |
and | (Built-In) | --- | boolean | {boolean} |
If | (Built-In) | --- | boolean | {boolean,then,otherwise} |
or | (Built-In) | --- | boolean | {boolean} |
addDays | BusinessCalendar | Pega-RULES | String | {String, int, boolean, String, String} |
addCalendar | DateTime | Pega-RULES | String | {String, String, String, String, String, String, String, String} |
addToDate | DateTime | Pega-RULES | String | {String, String, String, String, String} |
CompareDates | DateTime | Pega-RULES | boolean | {String, String, boolean} |
CompareDates | DateTime | Pega-RULES | boolean | {String, String} |
compareDatesByDays | DateTime | Pega-RULES | boolean | {String, String, int} |
CompareDateTimeStamp | DateTime | Pega-RULES | boolean | {String, String} |
CurrentDate | DateTime | Pega-RULES | String | {String, String} |
CurrentDateTime | DateTime | Pega-RULES | String | {---} |
date | DateTime | Pega-RULES | BigDecimal | {int, int, int} |
DateTimeDifference | DateTime | Pega-RULES | double | {String, String, String} |
DateTimeDuration | DateTime | Pega-RULES | String | {String, String, String} |
dateValue | DateTime | Pega-RULES | BigDecimal | {String} |
day | DateTime | Pega-RULES | int | {double} |
day | DateTime | Pega-RULES | int | {BigDecimal} |
FormatDateTime | DateTime | Pega-RULES | String | {String, String, String, String} |
FormatElapsedTime | DateTime | Pega-RULES | String | {int} |
getCurrentDateStamp | DateTime | Pega-RULES | String | {---} |
getCurrentTimeOfDayOnlyStamp | DateTime | Pega-RULES | String | {---} |
getCurrentTimeOfDayStamp | DateTime | Pega-RULES | String | {---} |
getCurrentTimeStamp | DateTime | Pega-RULES | String | {---} |
getCurrentTimeStampUnique | DateTime | Pega-RULES | String | {---} |
GetDate | DateTime | Pega-RULES | Date | {String} |
getTimeStampAsDateStamp | DateTime | Pega-RULES | String | {String} |
hour | DateTime | Pega-RULES | int | {double} |
hour | DateTime | Pega-RULES | int | {BigDecimal} |
isWithinDaysOfNow | DateTime | Pega-RULES | boolean | {String, String} |
millisecond | DateTime | Pega-RULES | int | {BigDecimal} |
minute | DateTime | Pega-RULES | int | {double} |
minute | DateTime | Pega-RULES | int | {BigDecimal} |
month | DateTime | Pega-RULES | int | {double} |
month | DateTime | Pega-RULES | int | {BigDecimal} |
parseDateString | DateTime | Pega-RULES | long | {String} |
parseDateTimeStamp | DateTime | Pega-RULES | Date | {String} |
pxDateTimeisPastOrFuture | DateTime | Pega-RULES | boolean | {String, boolean} |
pxGetSpecifiedTimeOnDate | DateTime | Pega-RULES | String | {String, int, int, int, String} |
pxGetSystemNanoTime | DateTime | Pega-RULES | String | {---} |
pxIsDefaultDateTime | DateTime | Pega-RULES | boolean | {BigDecimal} |
second | DateTime | Pega-RULES | int | {double} |
second | DateTime | Pega-RULES | int | {BigDecimal} |
time | DateTime | Pega-RULES | BigDecimal | {int, int, int} |
TimeDifference | DateTime | Pega-RULES | String | {String, int, int, int, int} |
timevalue | DateTime | Pega-RULES | BigDecimal | {String} |
today | DateTime | Pega-RULES | BigDecimal | {---} |
toGMT | DateTime | Pega-RULES | double | {double, String} |
toGMT | DateTime | Pega-RULES | BigDecimal | {BigDecimal, String} |
toLOCAL | DateTime | Pega-RULES | double | {double, String} |
toLOCAL | DateTime | Pega-RULES | BigDecimal | {BigDecimal, String} |
weekday | DateTime | Pega-RULES | int | {double} |
weekday | DateTime | Pega-RULES | int | {BigDecimal} |
year | DateTime | Pega-RULES | int | {double} |
year | DateTime | Pega-RULES | int | {BigDecimal} |
addToNow | Default | Pega-ProCom | String | {String, String, String, String} |
Base64Decode | Default | Pega-RULES | String | {String} |
Base64Encode | Default | Pega-RULES | String | {String} |
convertYNtoInt | Default | Pega-RULES | String | {String} |
CreateUniqueID | Default | Pega-RULES | String | {---} |
Decode | Default | Pega-RULES | String | {String} |
DoesFileExist | Default | Pega-RULES | boolean | {String} |
Encode | Default | Pega-RULES | String | {String} |
GenerateID | Default | Pega-RULES | String | {String} |
getCheckBoxBoolean | Default | Pega-RULES | String | {String} |
GetRuleSetVersion | Default | Pega-RULES | String | {String} |
isIntGreaterThanZero | Default | Pega-RULES | boolean | {String} |
isInThePast | Default | Pega-RULES | boolean | {String} |
IsJavaReservedWord | Default | Pega-RULES | boolean | {String} |
isNumber | Default | Pega-RULES | boolean | {String} |
pxFetchClassType | Default | Pega-RulesEngine | boolean | {String, String} |
pxFormatBytesToString | Default | Pega-IntegrationEngine | String | {int} |
pxGetClassType | Default | Pega-RULES | boolean | {String, String} |
pxLogMessage | Default | Pega-RULES | boolean | {String} |
pyEscapeIntoJavaScript | Default | Pega-IntegrationEngine | String | {String} |
pyFormatCMISErrorMessages | Default | Pega-IntegrationEngine | String | {String} |
pyFormatQueryStringPart | Default | Pega-IntegrationEngine | String | {String} |
pyFormatResourcePathPart | Default | Pega-IntegrationEngine | String | {String} |
quote | Default | Pega-RULES | String | {String} |
quoteAndEscape | Default | Pega-RULES | String | {String} |
removeParens | Default | Pega-RULES | String | {String} |
removeSpecialChars | Default | Pega-RULES | String | {String} |
SendEmailText | Default | Pega-ProCom | String | {String, String, String, String, String, String, String, String, String, String, String, String} |
SendEmailText | Default | Pega-ProCom | String | {String, String, String, String, String, String, String, String, String, String, String} |
unquote | Default | Pega-RULES | String | {String} |
ValidateIdentifier | Default | Pega-RULES | boolean | {String} |
ValidateIdentifierVB | Default | Pega-RULES | boolean | {String} |
ValidateJavaIdentifier | Default | Pega-RULES | boolean | {String} |
ValidateJavaIdentifier | Default | Pega-RULES | boolean | {String, boolean} |
ValidateUnicodeIdentifier | Default | Pega-RULES | boolean | {String, boolean} |
abs | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
average | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
ceil | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
CompareToBoolean | ExpressionEvaluators | Pega-RULES | boolean | {String, String} |
compareTwoNumbers | ExpressionEvaluators | Pega-RULES | boolean | {double, String, double} |
compareTwoStrings | ExpressionEvaluators | Pega-RULES | boolean | {String, String, String} |
compareTwoValues | ExpressionEvaluators | Pega-RULES | boolean | {double, String, double} |
compareTwoValues | ExpressionEvaluators | Pega-RULES | boolean | {String, String, String} |
exp | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
floor | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
max | ExpressionEvaluators | Pega-RULES | double | {double, double} |
max | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
median | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
min | ExpressionEvaluators | Pega-RULES | double | {double, double} |
min | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
mode | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
round | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
sqr | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
sqrt | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal} |
stdev | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
sum | ExpressionEvaluators | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
cumipmt | Financial | Pega-DecisionEngine | double | {double, double, double, double, double} |
cumprinc | Financial | Pega-DecisionEngine | double | {double, double, double, double, double} |
db | Financial | Pega-DecisionEngine | double | {double, double, double, double, double} |
ddb | Financial | Pega-DecisionEngine | double | {double, double, double, double, double} |
fv | Financial | Pega-DecisionEngine | double | {double, double, double, double} |
ipmt | Financial | Pega-DecisionEngine | double | {double, double, double, double, double} |
nper | Financial | Pega-DecisionEngine | double | {double, double, double, double} |
pmt | Financial | Pega-DecisionEngine | double | {double, double, double, double} |
ppmt | Financial | Pega-DecisionEngine | double | {double, double, double, double, double} |
pv | Financial | Pega-DecisionEngine | double | {double, double, double, double} |
rate | Financial | Pega-DecisionEngine | double | {double, double, double, double} |
sln | Financial | Pega-DecisionEngine | double | {double, double, double} |
syd | Financial | Pega-DecisionEngine | double | {double, double, double, double} |
vdb | Financial | Pega-DecisionEngine | double | {double, double, double, double, double, double, boolean} |
BoundInteger | Math | Pega-RULES | int | {int, int, int} |
divide | Math | Pega-RULES | BigDecimal | {BigDecimal, BigDecimal} |
equals | Math | Pega-RULES | boolean | {String, String} |
Exp | Math | Pega-RULES | double | {double} |
greaterThan | Math | Pega-RULES | boolean | {double, double} |
greaterThanEqualTo | Math | Pega-RULES | boolean | {double, double} |
lessThan | Math | Pega-RULES | boolean | {double, double} |
lessThanEqualTo | Math | Pega-RULES | boolean | {double, double} |
Log | Math | Pega-RULES | double | {String} |
notEqual | Math | Pega-RULES | boolean | {double, double} |
Sqrt | Math | Pega-RULES | double | {String} |
Square | Math | Pega-RULES | double | {String} |
pyescapeSpecialCharsAndQuote | NLPUtility | Pega-NLP | String | {String} |
hashToProportion | Random | Pega-DecisionEngine | double | {String} |
normal | Random | Pega-DecisionEngine | double | {---} |
normal | Random | Pega-DecisionEngine | double | {double,double} |
random | Random | Pega-DecisionEngine | double | {---} |
random | Random | Pega-DecisionEngine | double | {double,double} |
sampleAdaptiveProportion | Random | Pega-DecisionEngine | double | {double, double} |
compareStrings | Sort | Pega-RULES | int | {String, String} |
compareWorkIDs | Sort | Pega-RULES | int | {String, String} |
defaultCompareBooleans | Sort | Pega-RULES | int | {String, String} |
defaultCompareDecimals | Sort | Pega-RULES | int | {String, String} |
defaultCompareNumbers | Sort | Pega-RULES | int | {String, String} |
defaultCompareStrings | Sort | Pega-RULES | int | {String, String} |
pow | StrategyUtils | Pega-DecisionEngine | double | {double, double} |
pzIsInSimulation | StrategyUtils | Pega-DecisionEngine | boolean | {---} |
contains | String | Pega-RULES | boolean | {String, String} |
endsWith | String | Pega-RULES | boolean | {String, String} |
equals | String | Pega-RULES | boolean | {String, String} |
equalsIgnoreCase | String | Pega-RULES | boolean | {String, String} |
escapeAsHTML | String | Pega-RULES | String | {String} |
escapeForXSL | String | Pega-RULES | String | {String} |
escapeToIdentifier | String | Pega-RULES | String | {String} |
indexOf | String | Pega-RULES | int | {String, String} |
inString | String | Pega-RULES | int | {String, String} |
isDouble | String | Pega-RULES | boolean | {String} |
isInteger | String | Pega-RULES | boolean | {String} |
isLiteral | String | Pega-RULES | boolean | {String} |
isVersionLessThan | String | Pega-RULES | boolean | {String, String} |
length | String | Pega-RULES | int | {String} |
notEquals | String | Pega-RULES | boolean | {String, String} |
notEqualsIgnoreCase | String | Pega-RULES | boolean | {String, String} |
parseRuleSetName | String | Pega-RULES | String | {String} |
parseRuleSetVersion | String | Pega-RULES | String | {String} |
pxContainsSpecialCharacters | String | Pega-RulesEngine | boolean | {String} |
pxContainsViaRegex | String | Pega-RulesEngine | boolean | {String, String, boolean} |
pxIsBlank | String | Pega-RULES | boolean | {String} |
pxIsInGRSFormat | String | Pega-RULES | boolean | {String} |
pxIsInListOfValues | String | Pega-RULES | boolean | {String, String} |
pxIsNotInListOfValues | String | Pega-RULES | boolean | {String, String} |
pxRemoveJavaComments | String | Pega-RulesEngine | String | {String} |
pxReplaceAllViaRegex | String | Pega-RulesEngine | String | {String, String, String} |
pzContainsIgnoreCase | String | Pega-RULES | boolean | {String, String} |
pzEndsWithIgnoreCase | String | Pega-RULES | boolean | {String, String} |
pzStartsWithIgnoreCase | String | Pega-RULES | boolean | {String, String} |
replaceAll | String | Pega-RULES | String | {String, String, String} |
startsWith | String | Pega-RULES | boolean | {String, String} |
stripCharsOffEnd | String | Pega-RULES | String | {String, String} |
stripNonAlphabeticChars | String | Pega-RULES | String | {String} |
substring | String | Pega-RULES | String | {String, int, int} |
substring | String | Pega-RULES | String | {String, int} |
toDate | String | Pega-RULES | BigDecimal | {String} |
toDecimal | String | Pega-RULES | BigDecimal | {String} |
toInt | String | Pega-RULES | int | {String} |
toJavaIdentifier | String | Pega-RULES | String | {String} |
toJavaIdentifierNoReplacing | String | Pega-RULES | String | {String} |
toLowerCase | String | Pega-RULES | String | {String} |
toUpperCase | String | Pega-RULES | String | {String} |
trim | String | Pega-RULES | String | {String} |
TrimNumber | String | Pega-RULES | String | {String} |
truncateLongText | String | Pega-RULES | String | {String, int} |
ConnectWithHyphen | Utilities | Pega-AppDefinition | String | {String, String} |
crossScriptingFilter | Utilities | Pega-RULES | String | {String} |
decodeURLParameter | Utilities | Pega-RULES | String | {String} |
encodeURL | Utilities | Pega-RULES | String | {String} |
encodeURLParameter | Utilities | Pega-RULES | String | {String} |
escapeSpecialCharsAndQuote | Utilities | Pega-RULES | String | {String} |
filterRichText | Utilities | Pega-RULES | String | {String} |
getCachedDataSystemSetting | Utilities | Pega-RULES | String | {String, String} |
getClassLocation | Utilities | Pega-RULES | String | {String} |
GetEmbeddedPropertyPageClass | Utilities | Pega-RULES | String | {String, String} |
getExtensionType | Utilities | Pega-AppDefinition | String | {String} |
getJavaPropertyFromFile | Utilities | Pega-RULES | String | {String, String} |
getJavaSystemProperty | Utilities | Pega-RULES | String | {String} |
getJNDIEntry | Utilities | Pega-RULES | String | {String} |
getJSEncodedValue | Utilities | Pega-RULES | String | {String} |
getNextRuleSetVersion | Utilities | Pega-AppDefinition | String | {String, String} |
getPMFDSSRuleSetName | Utilities | Pega-RULES | String | {---} |
getWorkPrefix | Utilities | Pega-AppDefinition | String | {String} |
lookup | Utilities | Pega-RULES | String | {String, String, String, String, String} |
lookup | Utilities | Pega-RULES | String | {String, String, String, String, String, String} |
pxConvertToDoubleQuote | Utilities | Pega-RULES | String | {String} |
pxEncodeXML | Utilities | Pega-RULES | String | {String} |
pxGetBuildInfoString | Utilities | Pega-RULES | String | {boolean, boolean} |
pxGetNewGUID | Utilities | Pega-RulesEngine | String | {---} |
pxGetNextRuleSetVersion | Utilities | Pega-RulesEngine | String | {String, String} |
pxGetParentPath | Utilities | Pega-AppDefinition | String | {String} |
pxGetRandomName | Utilities | Pega-ProcessArchitect | String | {String, String} |
samePassword | Utilities | Pega-RULES | boolean | {String, String} |
Previous topic Optimizing strategies with allow list functions Next topic Strategy canvas accelerators and keyboard shortcuts