August 16, 2023

tOracleSP – Docs for ESB 6.x

tOracleSP

Calls an Oracle database stored procedure.

tOracleSP offers a convenient way to
centralize multiple or complex queries in a database and call them easily.

tOracleSP Standard properties

These properties are used to configure tOracleSP running in the Standard Job framework.

The Standard
tOracleSP component belongs to the Databases family.

The component in this framework is generally available.

Basic settings

Use an existing connection

Select this check box and in the Component
List
click the relevant connection component to reuse the connection
details you already defined.

Note:

When a Job contains the parent Job and the child Job, if you need to share an
existing connection between the two levels, for example, to share the connection created by
the parent Job with the child Job, you have to:

  1. In the parent level, register the database connection to be shared
    in the Basic settings view of the
    connection component which creates that very database connection.

  2. In the child level, use a dedicated connection component to read
    that registered database connection.

For an example about how to share a database connection across Job levels, see


Talend Studio
User Guide
.

Connection type

Drop-down list of available drivers:

Oracle OCI: Select this connection
type to use Oracle Call Interface with a set of C-language software
APIs that provide an interface to the Oracle database.

Oracle Service Name: Select this
connection type to use the TNS alias that you give when you connect
to the remote database.

Oracle SID: Select this connection
type to uniquely identify a particular database on a system.

Oracle Custom: Select this
connection type to access a clustered database.

Property type

Either Built-in or
Repository
.

 

Built-in: No property data stored
centrally.

 

Repository: Select the repository
file in which the properties are stored. The fields that follow are
completed automatically using the data retrieved.

DB Version

Select the Oracle version in use.

Host

Database server IP address.

Port

Listening port number of DB server.

Database

Name of the database.

Schema

Name of the schema.

Username and
Password

DB user authentication data.

To enter the password, click the […] button next to the
password field, and then in the pop-up dialog box enter the password between double quotes
and click OK to save the settings.

Schema and Edit
Schema

A schema is a row description, it defines the number of fields to
be processed and passed on to the next component. The schema is
either Built-in or stored remotely
in the Repository.

Click Edit schema to make changes to the schema.
If the current schema is of the Repository type, three
options are available:

  • View schema: choose this option to view the
    schema only.

  • Change to built-in property: choose this
    option to change the schema to Built-in for
    local changes.

  • Update repository connection: choose this
    option to change the schema stored in the repository and decide whether to propagate
    the changes to all the Jobs upon completion. If you just want to propagate the
    changes to the current Job, you can select No
    upon completion and choose this schema metadata again in the [Repository Content] window.

 

Built-In: You create and store the
schema locally for this component only. Related topic: see
Talend Studio

User Guide.

 

Repository: You have already created
the schema and stored it in the Repository. You can reuse it in various projects and
Job designs. Related topic: see
Talend Studio

User Guide.

SP Name

Type in the exact name of the Stored Procedure (or
Function)

Is Function / Return result
in

Select this check box, if the stored procedure is a function and
one value only is to be returned.

Select on the list the schema column, the value to be returned is
based on.

Parameters

Click the Plus button and select the various Schema Columns that will be required by the
procedures. Note that the SP schema can hold more columns than there
are parameters used in the procedure.

 

Select the Type of
parameter:

IN: Input parameter.

OUT: Output parameter/return
value.

IN OUT: Input parameter is to be
returned as value, likely after modification through the procedure
(function).

RECORDSET: Input parameters is to
be returned as a set of values, rather than single value.

Note:

Check Scenario: Inserting data in mother/daughter tables if you want to analyze a set
of records from a database table or DB query and return single
records.

 

The Custom Type is used when a
Schema Column you want to use
is user-defined. Two Custom Type
columns are available in the Parameters table. In the first Custom Type column:

– Select the check box in the Custom Type
column when the corresponding Schema Column you want to use is of user-defined
type.

– If all listed Schema Columns
in the Parameters table are of
custom type, you can select the check box before Custom Type once for them all.

 

Select a database type from the DB
Type
list to map the source database type to the
target database type:

– Auto-Mapping: Map the source
database type to the target database type
automatically.(default)

– CLOB: Character large
object.

– BLOB: Binary large object.

– DECIMAL: Decimal numeric
object.

– NUMERIC: Character 0 to 9.

– XMLTYPE: XML schema
type.

Warning:

When mapping a column selected from the Return result in list box or set to the IN or
OUT type of parameter to XMLTYPE, make sure that the column is
of type String in the schema.

 

In the second Custom Type column,
you can precise what the custom type is. The type may be:

STRUCT: used for one element.

ARRAY: used for a collection
of elements.

 

In the Custom name column,
specify the name of the custom type that you have given to this
type.

Warning:

When an OUT parameter uses the custom type, make sure
that its corresponding Schema Column has chosen the Object
type in the schema table.

Specify a data source alias

Select this check box and specify the alias of a data source created on the
Talend Runtime
side to use the shared connection pool defined in the
data source configuration. This option works only when you deploy and run your Job in

Talend Runtime
. For a related use case, see Scenario: Deploying your Job on Talend Runtime to retrieve data from a MySQL database.

Advanced settings

Additional JDBC parameters

Specify additional connection properties for the DB connection you
are creating. This option is not available if you have selected the
Use an existing connection
check box in the Basic
settings
.

NLS Language

In the list, select the language used for the data that are not
used in Unicode.

NLS Territory

Select the conventions used for date and time formats. The default
value is that of the operating system.

tStatCatcher Statistics

Select this check box to gather the job processing metadata at a
Job level as well as at each component level.

Usage

Usage rule

This component is used as intermediary component. It can be used
as start component but only input parameters are thus
allowed.

Dynamic settings

Click the [+] button to add a
row in the table and fill the Code field
with a context variable to choose your database connection dynamically from
multiple connections planned in your Job. This feature is useful when you
need to access database tables having the same data structure but in
different databases, especially when you are working in an environment where
you cannot change your Job settings, for example, when your Job has to be
deployed and executed independent of
Talend Studio
.

The Dynamic settings table is
available only when the Use an existing
connection
check box is selected in the Basic settings view. Once a dynamic parameter is
defined, the Component List box in the
Basic settings view becomes unusable.

For examples on using dynamic parameters, see Scenario: Reading data from databases through context-based dynamic connections and Scenario: Reading data from different MySQL databases using dynamically loaded connection parameters. For more information on Dynamic
settings
and context variables, see
Talend Studio User Guide
.

Limitation

The Stored Procedures syntax should match the Database
syntax.

When the parameters set in this component are of Custom Type, the tJava family components should be placed before the
component in order for users to define values for the custom-type
parameters, or after the component so as to read and output the
Out-type custom
parameters.

Scenario: Checking number format using a stored procedure

The following job aims at connecting to an Oracle Database containing Social Security
Numbers and their holders’ name, calling a stored procedure that checks the SSN format
of against a standard ###-##-#### format. Then the verification output results, 1 for
valid format and 0 for wrong format get displayed onto the execution console.

Use_Case_tOracleSP1.png
  • Drag and drop the following components from the Palette: tOracleConnection,
    tOracleInput, tOracleSP and tLogRow.

  • Link the tOracleConnection to the tOracleInput using a Then
    Run
    connection as no data is handled here.

  • And connect the other components using a Row
    Main
    link as rows are to be passed on as parameter to the SP
    component and to the console.

  • In the tOracleConnection, define the details
    of connection to the relevant Database. You will then be able to reuse this
    information in all other DB-related components.

  • Then select the tOracleInput and define its
    properties.

Use_Case_tOracleSP3.png
  • Select the Use an existing connection check
    box and select the tOracleConnection component
    in the list in order to reuse the connection details that you already
    set.

  • Select Repository as Property type as the Oracle schema is defined in the DB Oracle
    connection entry of the Repository. If you haven’t recorded the Oracle DB
    details in the Repository, then fill in the
    Schema name manually.

  • Then select Repository as Schema, and retrieve the relevant schema
    corresponding to your Oracle DB table.

Use_Case_tOracleSP2.png
  • In this example, the SSN table has a four-column schema that includes
    ID, NAME,
    CITY and SSNUMBER.

  • In the Query field, type in the following
    Select query or select it in the list, if you stored it in the
    Repository.

    select ID, NAME, CITY, SSNUMBER from SSN

  • Then select the tOracleSP and define its
    Basic settings.

Use_Case_tOracleSP4.png
  • Like for the tOracleInput component, select
    Repository in the Property type field and select the Use an
    existing connection
    check box, then select the relevant entries
    in the respective list.

  • The schema used for the tOracleSP slightly
    differs from the input schema. Indeed, an extra column
    (SSN_Valid) is added to the Input schema. This column
    will hold the format validity status (1 or
    0) produced by the procedure.

Use_Case_tOracleSP5.png
  • In the SP Name field, type in the exact name
    of the stored procedure (or function) as called in the Database. In this use
    case, the stored procedure name is is_ssn.

  • The basic function used in this particular example is as follows:

  • As a return value is expected in this use case, the procedure acts as a
    function, so select the Is function check box.

  • The only return value expected is based on the ssn_valid
    column, hence select the relevant list entry.

  • In the Parameters area, define the input and
    output parameters used in the procedure. In this use case, only the
    SSNumber column from the schema is used in the
    procedure.

  • Click the plus sign to add a line to the table and select the relevant column
    (SSNumber) and type (IN).

  • Then select the tLogRow component and click
    Sync Column to make sure the schema is passed on from the preceding tOracleSP component.

Use_Case_tOracleSP6.png
  • Select the Print values in cells of a table
    check box to facilitate the output reading.

  • Then save your job and press F6 to run it.

Use_Case_tOracleSP7.png

On the console, you can read the output results. All input schema columns are
displayed even though they are not used as parameters in the stored procedure.

The final column shows the expected return value, whether the SS Number checked is
valid or not.

Note:

Check Scenario: Inserting data in mother/daughter tables if you want to analyze a set of records from a
database table or DB query and return single records.


Document get from Talend https://help.talend.com
Thank you for watching.
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x