Oracle FastFormula provides functions that manipulate data in different ways. Some functions work on only one type of data, some can work on two, others work on all three data types.
The functions are described below, separated into the three data types and functions that convert between data types. Where a function returns a different data type result than the data type of its operands, the description explains this.
Some functions retrieve data from Oracle Applications tables. These are described in the sections: Functions To Get Values from Tables, and Functions for Accrual Type Formulas. Some functions enable you to set and use globals in SQL*Plus. They are described in the section: Functions to Set and Get Globals.
The general form of a function is:
NAME OF FUNCTION(operand, operand, . .)
Notice that, as with the operators, the operands of a function can be variables, constants, or complete expressions. If the operand is a text string, you must enclose it in quote marks.
CHR(n)
The CHR function returns the character having the binary equivalent to number operand n in the database character set.
Example
/* CHR (10) used to add a newline to the end of REPORT_TEXT2. */
REPORT_TEXT2 = 'Warning the Transaction Limit has been exceeded'
DEBUG(expr)
This function accepts a string and uses a DBMS_OUTPUT statement to output the string to the console. Use this function when you are testing a new formula to track its processing and identify where it is failing.
GREATEST(expr, expr [, expr] . . .)
GREATEST_OF(expr, expr [, expr] . . .)
The GREATEST function compares the values of all the text string operands. It returns the value of the operand that is alphabetically last. If there are two or more operands that meet the criteria, Oracle FastFormula returns the first.
INITCAP(expr)
The INITCAP function returns the expression expr with the first letter of each word in uppercase, all other letters in lowercase. Words are delimited by white space or characters that are not alphanumeric.
INSTR(expr1,expr2[,n[,m]])
The INSTR searches expr1 beginning with its nth character for the nth occurrence of expr2 and returns the position of the character in expr1 that is the first character of this occurrence. If n is negative, Oracle FastFormula counts and searches backward from the end of expr1. The value of m must be positive. The default values of both n and m are 1, meaning Oracle FastFormula begins searching at the first character of expr1 for the first occurrence of expr2. The return value is relative to the beginning of expr1, regardless of the value of n, and is expressed in characters. If the search is unsuccessful (if expr2 does not appear m times after the nth character of expr1) the return value is 0.
INSTRB(expr1,expr2[,n[,m]])
The same as INSTR, except that n and the return value are expressed in bytes, rather than in characters. For a single-byte database character set, INSTRB is equivalent to INSTR.
LEAST(expr, expr [, expr] . . .)
LEAST_OF(expr, expr [, expr] . . .)
The LEAST function compares the values of all the text string operands. It returns the value of the operand that is alphabetically first. If there are two or more operands that meet the criteria, Oracle FastFormula returns the first.
LENGTH(expr)
The LENGTH function returns the number of characters in the text string operand expr.
Note: The data type of the result of this function is numeric.
LENGTHB(char)
The LENGTHB function returns the length of char in characters. If char has datatype CHAR, the length includes all trailing blanks. If char is null, this function returns null.
LOWER(expr)
The LOWER function returns the string operand expr with all letters lowercase. The return value has the same datatype as the argument expr.
(expr, n [,pad])
The LPAD function returns the text string operand expr left-padded to length n with the sequence of characters in pad. The default for pad is a blank. If expr is longer than n, then LPAD returns the portion of expr that fits in n.
Examples:
/* A is set to 'XYXYXhello' */
A = LPAD ('hello, 10, 'XY')
/* A is set to 'hell' */
A = LPAD ('hello', 4 )
(expr [,set])
The LTRIM function returns the text string operand expr with all the leftmost characters that appear in set removed. The default for set is a blank. If none of the leftmost characters of expr appear in set then expr is returned
Examples:
/* A is set to 'def' */
A = LTRIM ('abcdef','abc')
/* A is set to 'abcdef' */
A = LTRIM ('abcdef','bc')
(expr, search_string [,replacement_string])
The REPLACE function returns the text string operand expr with every occurrence of search_string replaced with replacement_string. If replacement_string is omitted or null, all occurrences of search_string are removed. If search_string is NULL, expr is returned. REPLACE allows you to substitute one string for another as well as to remove character strings.
Example:
SELECT REPLACE ('JACK and JUE','J','BL') "Changes"
FROM DUAL
Changes
-------
BLACK and BLUE
(expr, n [,pad])
The RPAD function returns the text string operand expr right-padded to length n with the sequence of characters in pad. The default for pad is a blank. If expr is longer than n, then RPAD returns the portion of expr that fits in n.
Examples:
/* A is set to 'helloXYXYX' */
A = RPAD ('hello, 10, 'XY')
/* A is set to 'hell' */
A = RPAD ('hello', 4 )
(expr [,set])
The RTRIM function returns the text string operand expr with all the rightmost characters that appear in set removed. The default for set is a blank. If none of the rightmost characters of expr appear in set then expr is returned
Examples:
/* A is set to 'abc' */
A = RTRIM ('abcdef','def')
/* A is set to 'abcdef' */
A = RTRIM ('abcdef','de')
SUBSTR(expr, m [,n])
SUBSTRING(expr, m [,n])
The SUBSTRING function returns a substring of the text string operand expr of length n characters beginning at the mth character. If you omit the third operand, the substring starts from m and finishes at the end of expr.
Note: The first operand is a text operand. The second and third operands are numeric operands. The resulting data type of this function is text.
Suggestion: Always check string length before you start to substring. For example:
/* Check that the tax code starts with GG */
IF length(Tax_code) <= 2
THEN
(message = 'Tax code is too short'
RETURN message
)
IF substr( Tax_code, 1, 2) = 'GG' THEN ...
Or, to check if Tax_code is a string of at least two characters starting with 'GG':
IF Tax_code LIKE 'GG%' THEN ...
(expr, m [,n])
The same as SUBSTR, except that the arguments m and n are expressed in bytes, rather than in characters. For a single-byte database character set, SUBSTRB is equivalent to SUBSTR.
(expr, from, to)
The TRANSLATE function returns the text string operand expr with all occurrences of each character in from replaced by its corresponding character in to. Characters in expr that are not in from are not replaced. The argument from can contain more characters than to. In this case, the extra characters at the end of from have no corresponding characters in to. If these extra characters appear in expr, they are removed from the return value. Oracle FastFormula interprets the empty string as null, and if this function has a null argument, it returns null.
TRIM(trim_character FROM trim_source)
The TRIM function allows you to trim heading or trailing characters (or both) from a character string. If trim_character or trim_source is a character literal, you must enclose it in single quotes. You can specify LEADING or TRAILING to remove leading or trailing characters. If you specify none of these, both leading and trailing characters are removed equal to trim_character.
UPPER(expr)
The UPPER function converts a text string to upper case.
ABS(n)
The ABS function returns the magnitude of a numeric operand n as a positive numeric value.
If the value of the operand is positive, its value returns unchanged. If the operand is negative then the value's sign inverts, and the value returns as a positive number.
Example:
ABS (-17) returns 17
CALCULATE_HOURS_WORKED(n, date1, date2, standard_frequency)
The CALCULATE_HOURS_WORKED function returns the total number of hours worked in a given date range.
The function works by calculating the total number of hours worked for an employee between date1 and date2, taking into account that the employee works n hours in the standard working period standard_frequency. This parameter gives the unit of measurement for the standard working period. It can be one of:
W (weekly)
M (monthly)
Y (yearly)
Example:
CALCULATE_HOURS_WORKED (40, 01-FEB-2003, 28-FEB-2003, W) returns 160
This indicates that the employee has worked 160 hours in the month of February 2003, based on a 40-hour week and taking into account the number of working days in that month.
FLOOR(n)
The FLOOR function returns the integer part of a numeric operand n.
If the value of the operand contains information after the decimal point, Oracle FastFormula discards that information and returns a whole number.
Example:
FLOOR(35.455) returns 35
GREATEST(n, n [, n] . . .)
GREATEST_OF(n, n [, n] . . .)
The GREATEST function compares all the operands and returns the largest value.
LEAST(n, n [, n] . . .)
LEAST_OF(n, n [, n] . . .)
The LEAST function compares all the operands and returns the smallest value.
POWER(m,n)
Returns m raised to the nth power. The base m and the exponent n can be any numbers, but if m is negative, n must be an integer.
ROUND(n [, m])
The ROUND function rounds off a numeric value n to m decimal places and a date depending on the format of m. For numeric values, the first operand is the value Oracle FastFormula rounds off, the second the number of places Oracle FastFormula rounds off to. For dates, ROUND returns n rounded to the unit specified by the format model of m such as Year or Day. Refer to the SQL Language Reference Manual for details of the valid formats you can specify.
Examples:
ROUND(2.3401, 2) returns 2.34
ROUND (2.3461, 2) returns 2.35
ROUND (TO_DATE('27-OCT-1992', 'DD-MON-YYYY'), 'YEAR') returns 01-JAN-1993
ROUNDUP(n [, m])
ROUND_UP(n [, m])
The ROUNDUP function rounds a numeric value n up to m decimal places. The first operand is the value to be rounded up, the second the number of places to round to. If the digits after the rounding point are zero, the value is unchanged. If the digits are not zero, the value is incremented at the rounding point.
Examples:
ROUND_UP(2.3401, 2) returns 2.35
ROUND_UP(2.3400, 2) returns 2.34.
TRUNC(n [, m])
TRUNCATE(n [, m])
The TRUNC function rounds a numeric value n down to m decimal places. The first operand is the value to be rounded down, the second the number of places to round to. TRUNC also returns n with the time portion of the day truncated to the unit specified by the format model of m. If you omit m, d is truncated to the nearest day The default model, 'DD', returns the date rounded or truncated to the day with a time of midnight.
Oracle FastFormula drops all digits (if any) after the specified truncation point.
Examples:
TRUNC(2.3401, 2) returns 2.34.
TRUNC(TO_DATE('27-OCT-1992', 'DD-MON-YYYY'), 'YEAR') returns 01-JAN-1992
ADD_DAYS(date, n)
The ADD_DAYS function adds a number of days to a date. The resulting date accords with the calendar.
Note: Oracle FastFormula ignores any fractional part of the number n.
Example:
ADD_DAYS ('30-DEC-1990' (date), 6) returns 5 JAN 1991
ADD_MONTHS(date, n)
The ADD_MONTHS function adds a number of months to a date. The resulting date accords with the calendar.
Note: Oracle FastFormula ignores any fractional part of the number n.
ADD_YEARS(date, n)
The ADD_YEARS function adds a number of years to a date. The resulting date accords with the calendar.
Note: Oracle FastFormula ignores any fractional part of the number n.
GREATEST(date1, date2[, date3] . . .)
The GREATEST function compares all the operands and returns the latest date.
LAST_DAY(d)
The LAST_DAY function returns the date of the last day of the month that contains d. You might use this function to determine how many days are left in the current month.
LEAST(date1, date2 [, date3] . . .)
The LEAST function compares all the operands and returns the earliest date.
DAYS_BETWEEN(date1, date2)
The DAYS_BETWEEN function returns the number of days between two dates. If the later date is first, the result is a positive number. If the earlier date is first, the result is a negative number. The number returned is also based on the real calendar.
Note: The result is a numeric data type.
Example:
DAYS_BETWEEN('1995/06/27 00:00:00' (date), '1995/07/03 00:00:00' (date)) returns -5
MONTHS_BETWEEN(date1, date2)
The MONTHS_BETWEEN function returns the number of months between two dates. If the later date is first, the result is a positive number. If the earlier date is first, the result is a negative number. The number returned is also based on the real calendar.
If the result is not a whole number of months (that is, there are some days as well), the days part is shown as a decimal.
Note: The result is a numeric data type.
NEW_TIME(d, zl, z2)
Returns the date and time in zone z2 when the date and time in zone z1 are d. The arguments z1 and z2 can be any one of these text strings:
| AST or ADT | Atlantic Standard or Daylight Time |
| BST or BDT | Bering Standard or Daylight Time |
| CST or CDT | Central Standard or Daylight Time |
| EST or EDT | Eastern Standard or Daylght Time |
| GMT | Grenwich Mean Time |
| HST or HDT | Alaska-Hawaii Standard Time or Daylight Time |
| MST or MDT | Mountain Standard or Daylight Time |
| NST | Newfoundland Standard Time |
| PST or PDT | Pacific Standard or Daylight Time |
| YST or YDT | Yukon Standard or Daylight Time |
NEXT_DAY(d, expr)
The NEXT_DAY function returns the date of the first weekday named by expr that is later than the date d. The argument expr must be a day of the week in your session's date language. The return value has the same hours, minutes, and seconds component as the argument d.
Use data conversion functions to convert from one data type to another data type. For example, you could have an expression returning a number value for salary, which you want to include in a printed message (that is, a character value). To print the number as part of the message, you need to convert the value of salary from a number to a character value, using the TO_TEXT function.
(expr, dest_char_set [,source_char_set])
The CONVERT function converts a character string from one character set to another. The expr argument is the value to be converted. The dest_char_set argument is the name of the character set to which expr is converted. The source_char_set argument is the name of the character set in which expr is stored in the database. The default value is the database character set.
(expr1,expr2[,n[,m]])
The INSTR function searches expr1 beginning with its nth character for the mth occurrence of expr2 and returns the position of the character in expr1 that is the first character of this occurrence. If n is negative, Oracle FastFormula counts and searches backwards.
NUM_TO_CHAR(n, format)
Converts the number n from number data type to text data type using the specified format. This function is equivalent to the SQL TO_CHAR function. For example:
NUM_TO_CHAR(amount, '$9,990.99')
This returns the amount with a leading dollar sign, commas every three digits, and two decimal places. Refer to the SQL Language Reference Manual for a full list of the valid number formats you can specify.
TO_DATE (expr [, format])
Converts the expression expr of text data type to a date data type. The text expression must be of the form 'YYYY/MM/DD HH24:MI:SS' if no format is provided. The day and year must be in numeric form. For example:
/* legal */
date_1 = TO_DATE ('12 January 89', 'DD Month YY')
/* illegal */
date_1 = TO_DATE ('12 January Nineteen-Eighty-Nine',
'DD Month Year')
Note: When assigning date variables from constants it is much more efficient to say:
date_1 = '1989/01/12 00:00:00'(date)
Note: The text expression must be in the format of either YYYY/MM/DD HH24:MI:SS or DD-MON-YYYY if no format is provided.
TO_NUM(expr)
TO_NUMBER(expr)
Converts the expression expr of text data type to a number data type. The expression must represent a valid number. So for example, you cannot convert an expression such as `Type 24' but you can convert the text expression `1234'. For decimal values, you must always use a period as a decinal point, for example '4.5'.
TO_TEXT(n) TO_TEXT (date1 [, format])
TO_CHAR(n) TO_CHAR(date1 [, format])
DATE_TO_TEXT(n) (date1 [, format])
The TO_TEXT function converts:
the number n from number data type to text data type. The default number format has the decinal point as a period, for example '4.5'.
the date date1 from date data type to text data type. The optional format should be a text string like 'DD/MM/YYYY'. The default format is 'YYYY/MM/DD HH24:MI:SS'.
For example:
birthdate = '21-JAN-1960' (date)
mesg = 'Birthdate is: ' + TO_CHAR (birthdate)
/* sets mesg to 'Birthdate is: 1960/01/21 00:00:00' */
mesg = 'Birthdate is: ' + TO_CHAR (birthdate,
'DD-MON-YY')
/* sets mesg to 'Birthdate is: 21-JAN-60' */
mesg = 'Birthdate is: ' + TO_CHAR (birthdate,
'DD Month Year')
/* sets mesg to 'Birthdate is: 21 January Nineteen-Sixty' */
GET_LOOKUP_MEANING(lookup_type , lookup_code)
The GET_LOOKUP_MEANING function enables Oracle FastFormula to translate a lookup code into a meaning. This can be used for any descriptive flexfield items or developer flexfield items that are based on lookups.
Example:
GET_LOOKUP_MEANING ('ETH_TYPE', PEOPLE_GB_ETHNIC_ORIGIN)
GET_TABLE_VALUE(table_name, column_name, row_value [,effective date])
The GET_TABLE_VALUE function returns the value of a cell in a user-defined table. The three text operands, which identify the cell (table_name, column_name, and row_value), are mandatory. The date operand is optional. If it is not supplied, the function returns the cell value as of the effective date.
You cannot use this function in formulas for user table validation or QuickPaint reports.
Example:
GET_TABLE_VALUE('WAGE RATES', 'Wage Rate', Rate_Code)
RAISE_ERROR(application_ID, message name)
This function allows you to raise a functional error message from within a formula. It accepts an Application ID and the message_name of an Oracle Applications error message to raise.
Example:
ERROR = RAISE_ERROR(800, 'error_name')
RATES_HISTORY(element or rate type name, date, element or rate type indicator, time dimension)
This function uses information stored in the UK Element Attribution Information EIT and information about the assignment's contract type to calculate a payment rate as of the given date and expressed for the selected time dimension (such as hourly or annual). If the element or rate type indicator is R, the function sums the rates for all elements classified with the given rate type (which is stored against the element in the Rate Type Information EIT).
The time dimension parameter must be A (annual), D (daily), H (hourly), or P (periodic). The element or rate type parameter must be R (rate type) or E (element).
The function can also adjust the returned rate for FTE and length of service, if these factors are set to Yes in the Element Attribution Information.
In addition to the standard FastFormula functions, you may find the following functions useful for your Accrual and Carry Over formulas.
This function takes no parameters; it uses the payroll id context. It calculates the number of payroll periods in one year for that payroll, and sets the global variable PAYROLL_YEAR_NUMBER_OF_PERIODS to that value. For example, the function would set the global variable to 12 for a calendar month payroll.
Example:
E = CALCULATE_PAYROLL_PERIODS
GET_ABSENCE(calculation date, start date)
This function calculates the total amount of absence contributing to an accrual plan between two dates. It counts the whole of any absence that:
has a start date and an end date, and
starts on or between the two dates given as inputs
Example:
TOTAL_ABSENCE = GET_ABSENCE('01-JAN-1999'(date), '31-DEC-1999'(date))
GET_CARRY_OVER(calculation date, start date)
This function returns the number of days or hours recorded on the Carry Over element entry with an effective date on or between the two input dates. If more than one element entry is effective between these dates, the function sums the hours or days.
Carry Over element entries may also have an expiry date, after which any unused carry over is lost. If the calculation date is after the expiry date, the function checks the absences taken between start and calculation date. If the person took absences totaling the carry over, the function returns total carry over because it was all used before it expired. If absences total less than the carry over, the function returns total absence time; the rest of the carryover is lost.
For example, if the carry over is 10 days and 6 days absence were taken up to the expiry date, the function returns 6. The other four days of carry over have expired and been lost.
GET_NET_ACCRUAL(calculation date, plan id, accrual start date, accrual latest balance)
This function calls the accrual formula defined in the accrual plan to return the net accrual at the calculation date. The following contexts must be available to a formula calling this function: assignment id, payroll id, business group id, and assignment action id.
GET_OTHER_NET_CONTRIBUTION(calculation date, start date)
This function calculates the total amount of net contribution other than absences or carry over between two dates. It looks for element entries for all elements that have been added in the Net Calculation Rules window. It sums the days or hours from all entries with an effective date on or between the two input dates.
GET_PAYROLL_PERIOD(date)
This function determines the payroll period spanning the input date and sets global variables containing the start and end date and the period number. It returns 0 if successful, and otherwise error.
This example shows how to use this function then use the GET_DATE and GET_NUMBER functions to retrieve the values it sets in the global variables:
E = GET_PAYROLL_PERIOD(Calculation_date)
Calculation_Period_SD = GET_DATE('PAYROLL_PERIOD_START_DATE')
Calculation_Period_ED = GET_DATE('PAYROLL_PERIOD_END_DATE')
Calculation_Period_PNUM = GET_NUMBER('PAYROLL_PERIOD_NUMBER')
GET_ACCRUAL_BAND(number)
This function determines the appropriate accrual band for the specified length of service. It sets global variables containing the ANNUAL_RATE, UPPER_LIMIT and CEILING values for the band. ANNUAL_RATE is the amount that should accrue this accrual term. UPPER_LIMIT is the length of service that must be completed for the employee to go to the next accrual band. CEILING is the maximum number of hours or days the employee can accrue at any time. The function returns 0 if successful, and otherwise error.
This example shows how to use this function then use the GET_NUMBER function to retrieve the values it sets in the global variables:
IF (GET_ACCRUAL_BAND(Years_Service) = 0 THEN
(
Annual_Rate = GET_NUMBER('ANNUAL_RATE')
Upper_Limit = GET_NUMBER('UPPER_LIMIT')
Ceiling = GET_NUMBER('CEILING')
ELSE
( ... [processing for error] ....)
)
GET_ASSIGNMENT_STATUS(date)
This function determine the assignment status at a given date. It populates the globals ASSIGNMENT_EFFECTIVE_SD, ASSIGNMENT_EFFECTIVE_ED and ASSIGNMENT_SYSTEM_STATUS. It returns 0 if successful, and otherwise error.
Example:
ERROR = GET_ASSIGNMENT_STATUS('01-JAN-1999'(date))
GET_ASG_INACTIVE_DAYS(period start date, period end date)
This function checks the assignment status on each day from period start date to period end date. It calls the function GET_WORKING_DAYS to calculate the total number of working days in the period (Mondays to Fridays) and subtracts the number of working days when the assignment was inactive. It returns the number of inactive working days.
GET_PERIOD_DATES(date1, unit, date2, number)
This function determines the start and end dates of a period of time with the duration specified by the unit input and the number (such as 2 months). Valid units are D (days), M, (months), and W (weeks). The period spans date1 and starts on a date that is a multiple of the unit duration on from date2 (or backwards from date2).
The function populates the globals PERIOD_START_DATE and PERIOD_END_DATE. It returns 0 if successful, and otherwise error.
Example:
Error = GET_PERIOD_DATES('1-FEB-1999'(date), 'M', '15-DEC-1998'(date), 1)
This example populates PERIOD_START_DATE with 15-JAN-1999 and PERIOD_END_DATE with 14-FEB-1999.
An example where the period starts before date2:
Error = GET_PERIOD_DATES('1-FEB-1999'(date), 'M', '15-APR-1999'(date), 2)
This example populates PERIOD_START_DATE with 15-JAN-1999 and PERIOD_END_DATE with 14-MAR-1999.
GET_START_DATE(accrual start date, start of accrual term)
This function returns the date at which the accrual formula should start calculating accruals.
If there is no payroll balance holding gross accruals, the date is always the start of the accrual term.
If there is a payroll balance and there are retrospective absence entries that have not already been used in an accrual calculation, the function returns the start date of the earliest of these entries.
If there is a payroll balance and there are no unprocessed retrospective absence entries, the function returns accrual start date.
This date, which is passed into the accrual formula, is the day after either the Date Earned or the Date Paid of the last payroll period in which the assignment was processed--depending on the PTO Balance Type set for the business group.
Note: Although GET_START_DATE returns the start date of the earliest of any unprocessed retrospective element entries, this date is not currently used in the seeded accrual formulas. If GET_START_DATE finds any unprocessed retrospective element entries, the formula always calculates accruals from the beginning of the accrual term.
GET_WORKING_DAYS(start date, end date)
This function returns the number of working days (Mondays to Fridays) in the period from start date to end date.
PUT_MESSAGE(expr)
This function adds a message to the stack to be output at the end of the formula by the Accruals form.
Example:
E = PUT_MESSAGE('The assignment is not yet eligible for accrual')
These functions allow you to call another formula, either once or in a loop. They require all the contexts available to the Accruals formula type.
CALL_FORMULA(formula name)
This function runs a named formula with no inputs and no outputs.
LOOP_CONTROL(formula name)
This function repeatedly calls another formula, which must have the return parameter 'CONTINUE_LOOP'. The loop continues until the function detects a value other than 'Y' in CONTINUE_LOOP. If it detects 'N', the function returns 0 (success); if it detects another value, the function returns 1 (error).
Using the following functions, you can set and use globals in SQL*Plus from within your formulas.
SET_TEXT(variable name, value)
SET_NUMBER(variable name, value)
SET_DATE(variable name, value)
These functions accept the name of a global variable and the value to be set. They determine whether the global exists and, if not, create a new global. They return 0 if successful and 1 if not successful.
Examples:
E = SET_NUMBER('UPPER_LIMT', 0)
E = SET_DATE('CONTINUOUS_SERVICE_DATE', service_start_date)
GET_TEXT(variable name)
GET_NUMBER(variable name)
GET_DATE(variable name)
These functions accept the name of a global variable and return its value. If they cannot find the global, they return NULL.
Example:
Calculation_Period_SD = GET_DATE('PAYROLL_PERIOD_START_DATE')
This function sets to NULL the value of all global variables that were set using SET_TEXT, SET_NUMBER, and SET_DATE. There are no inputs. It returns 0 if successful and 1 if not successful.
This function removes all global variables. There are no inputs. It returns 0 if successful and 1 if not successful.
ISNULL(variable name)
A set of three functions that test whether a text, numeric, or date value is NULL. Returns Y if the value is NULL and N otherwise.
Example:
IF IS_NULL(VARIABLE_NAME) = 'Y' THEN ERROR = SET_NUMBER(VARIABLE_NAME, 0)
Use the Rate By Criteria (RBC) function within the Payroll formula attached to the element to return the RBC rate for which the employee is eligible. The element must be associated with a criteria rate definition.
RBC_Rate_Retrieval
The function evaluates the eligible rate for an employee by processing the rate matrixes in the employee's business group.
To call the seeded RBC_Rate_Retrieval function from a formula, declare a local variable within the Element formula text:
<local variable1> = RBC_Rate_Retrieval()
The function includes predefined contexts, so you include no additional parameters.