Designing Intelligent Event Processor (IEP) Projects

External Table Polling Stream

The External Table Polling Stream operator enables you to retrieve records from an external database table at a specified interval, and to output the records as a stream.

The property editor includes a wizard that you use to specify the various properties, including the table columns, the polling interval, and the number of records to retrieve.

After using the wizard, you can update the values for most of the properties from the property editor. However, if you want to add or remove table columns, then you must go through the wizard again.

In the event process, you can link the output of the External Table Polling Stream operator to more than one operator.

One of the properties is the JNDI name of the database resource. Before you deploy the event process, ensure that the JNDI name is configured in the application server to point to a valid database connection. For detailed instructions on configuring JNDI names, see the application server documentation.

ProcedureTo Create an External Table Polling Stream Operator

  1. Drag an External Table Polling Stream operator from the Palette to the Design view.

  2. Double-click the External Table Polling Stream operator.

    The property editor opens.

  3. Click Select Table.

    The Select External Table To Poll wizard appears.

  4. In step 1 of the wizard, do the following:

    1. Select the data source.


      Note –

      Data sources are configured in the Databases node of the Services window.


    2. Select the table from which you want to poll.

    3. Click Next.

  5. In step 2 of the wizard, do the following:

    1. Select the column or columns that you want to retrieve from the table.

    2. (Optional) Add a condition to the Where Clause area (for example, amount > 100).

    3. Click Next.

  6. In step 3 of the wizard, do the following:

    1. The wizard displays the column or columns that you specified in step 2. Select the one or more columns that uniquely identify each record.


      Note –

      The operator uses this information to keep track of the last record that was retrieved. If you do not select any of the columns, then each fetch will start at the beginning of the table.


    2. In the Interval field and drop-down list, specify how often you want to retrieve records from the table.

    3. In the Record Size field, specify the number of records to retrieve each time.

    4. If you want to delete the records from the table after they have been fetched, then select the Delete Records check box.


      Note –

      If you do not select the one or more columns that uniquely identify each record, then selecting the Delete Records check box will ensure that you do not keep retrieving the same records.


    5. In the JNDI Name field, type the JNDI name of the database resource (for example, jdbc/iepseDerbyNonXA).

    6. Click Finish. The property editor displays the values that you specified.

  7. By default, the Preserve Last Fetched Record check box is selected. This setting indicates that if the event process is redeployed, then the operator starts retrieving records where it left off.

    If you leave the Preserve Last Fetched Record check box selected, then you must specify a table name in the Last Fetched Record Table field. This table will be created in the IEP database, not in the external database table.

    If you want the operator to go back to the beginning of the table instead, then clear the Preserve Last Fetched Record check box.

  8. If you are retrieving records from an Oracle external database, then examine the Data Type column. If a data type is not one of the supported IEP data types, then change the data type to a supported IEP data type. For example, change the DECIMAL data type to the INTEGER data type.

  9. (Optional) In the SELECT area, modify any of the default expressions by adding a SQL function.

  10. (Optional) Click the Documentation tab and supply notes on this component.

  11. Click OK.