6.69 User Function Editor

Use to define your customized functions.

User functions enable you to define customized functions that can be used in mappings or procedures. These functions are implemented in one or more technologies.

A function can be created as a global function or in a project. In the first case, it is common to all projects, and in the second, it is attached to the project in which it is defined.

The User Function Editor has the following tabs:

6.69.1 Definition

This tab lets you declare the generic properties for the user function

Properties Description
Name Name of the user function. Example: NullValue.
Group Group of the user function. If you type a group name that does not exist, a new group is created with this group name when the function is saved.
Syntax Syntax of the user function that appears in the Expression Editor. The arguments of the function must be specified in this syntax. The function's syntax is expressed in one of the following ways:
function_name($(arg_name)arg_type, $(arg_name)arg_type, ... )
function_name($(arg_name), $(arg_name), ... )
function_name()
function_name

arg_type is used to give a type to the arguments and is not mandatory. It may be equal to s (string), n (numeric) or d (date).

For instance, to declare the function NullValue, use:

NullValue($(variable), $(default))

Description Detailed description of the function.

6.69.2 Implementations

This tab enables you define the implementations of the function for each technology, or for groups of technologies.

Properties Description
Implementations Technologies or groups of technologies for which the function is implemented.
Add - Edit - Delete Enables you to delete an implementation, to create a new implementation, or to change an existing one.
Technologies with no implementations (for information) Technologies for which the function is not implemented.

If you change or create an implementation the Implementation Editor opens.

Properties Description
Implementation syntax Syntax of the function, in the language of the selected technologies. The arguments of the functions are used with the syntax $(arg_name).

For instance, the two implementations of the function NullValue($(variable), $(default)) are:

Oracle : nvl($(variable), $(default))

Microsoft SQL Server : case when $(variable) is null then $(default) else $(variable) end

Linked Technologies List of the technologies associated to this implementation. There can be only one implementation per technology.
Automatically include new technologies If this check box is selected, the new technologies are automatically added to this implementation. Only one implementation may have this check box selected.

"Working with User Functions" in the "Creating and Using Procedures, Variables, Sequences, and User Functions" chapter in Oracle Fusion Middleware Developing Integration Projects with Oracle Data Integrator