Streams

This chapter covers the following topics:

Streams Overview

A stream is a schedule of amounts and associated dates. Oracle Lease and Finance Management uses stream generation to recover a lessor's investment through a series of scheduled payments. The generated streams are associated with expense and income flows for the lessor. Streams are also used in billing, accounting, and other processes. Oracle Lease and Finance Management generates yields simultaneously with stream generation.

Streams consist of the following main components:

Stream Type

The stream type provides a functional name for a stream and relates the stream to attributes used to process streams in Oracle Lease and Finance Management procedures. The specific attributes carried by stream types define how Oracle Lease and Finance Management processes or utilizes the associated stream elements. Examples of stream types in Oracle Lease and Finance Management include Rental Income, Principal Balance, and Interest Payment.

For a complete list of Oracle Lease and Finance Management stream types, see Streams Appendix, Oracle Lease and Finance Management Implementation Guide.

Stream Purpose

A stream purpose is an important attribute of a stream type that determines how Oracle Lease and Finance Management processes the stream. Oracle Lease and Finance Management recognizes streams based on their stream purpose name.

Stream Header

Steam types are associated to stream elements through the stream header. The stream header defines the overall status of the stream as well as the object the stream elements relate to, such as a contract, quote, or asset. A stream header includes the stream type, status, contract ID, optional contract line ID, and a valid date range.

Stream Elements

The stream elements are a series of dates and amounts that represent a flow with financial impact, not necessarily just for billing and cash purposes. Stream elements include the date, the amount, the date billed, and the header ID.

The following table provides an example of a stream where the stream type is Rent and the Contract ID is 22738.

Oracle Lease and Finance Management Stream Example
Date Amount
15-Jan-04 100
15-Feb-04 100
15-Mar-04 100
15-Apr-04 100
15-May-04 100
15-Jun-04 100
15-Jul-04 100
15-Aug-04 100
15-Sep-04 100
15-Oct-04 100
15-Nov-04 100
15-Dec-04 100

Stream Use In Oracle Lease and Finance Management

Oracle Lease and Finance Management uses streams for the following purposes:

Pricing

In pricing, streams are used to calculate specific yields in relationship to the object being priced, such as a contract, quote, or asset. Streams represent cash flows that are the primary element used in determining the payment or a yield for a sales quote or contract.

Billing

The billing program generates invoice transactions from active, billable streams. Users create billable streams for assets, fees, and services or for the entire contract by creating payments for those objects during contract authoring. When users activate a contract, the billable streams become active.

When users run the billing program, the procedure uses the streams to determine which stream elements to bill. After a stream element is billed, it is marked with a date to identify and separate it from unbilled elements.

Accrual

The accrual program uses streams as a source for accounting transactions. During stream generation, either the internal stream generation program or an external pricing engine creates streams for accruing income and expenses. The specific accrual stream generated depends on the financial product and what users have entered on the contract.

The accrual program does not automatically accrue each accrual stream. Instead, it references user-defined setups on the contract's financial product to determine which stream types to accrue. Once a stream element has been accrued, it is marked with a date to identify and separate it from unaccrued elements.

Stream Generation Overview

The stream generation process is dependent on the method of stream generation used and the functional process during which streams are generated. The actual streams generated depend on the contract values, the stream generation method, and the setup steps completed during implementation.

Oracle Lease and Finance Management generates streams through an internal process, by an interface with third party pricing software, or by both methods depending on the stream type and usage. Users must determine, by financial product, whether to use the internal or external stream generation method.

The following table shows key Oracle Lease and Finance Management business processes, the business function, and the sources for stream generation:

Oracle Lease and Finance Management Streams and Business Processes
Business Process Business Function Stream Sources
Booking
Rebooking
Contract Import
Mass Rebooking
Reamortization
Generate Streams External Stream Generation and Internal Stream Generation
Authoring
Customer Service
Accept Insurance Policy Activation Insurance Program
Variable Rate Processing Calculate Variable Interest Internal Stream Generation

This section includes the following topics:

Internal Stream Generation

Oracle Lease and Finance Management generates streams internally during contract activation. This process works in coordination with the calculation of the contract yield to produce all required billing and accounting streams. Internal stream generation is designed for less complex transactions.

External Stream Generation

Oracle Lease and Finance Management integrates with an external pricing engine to generate streams. The external pricing engine can handle complex and structured pricing scenarios and provide a large number of pricing and stream related attributes that impact the generation of streams not available in Oracle Lease and Finance Management. The external pricing engine produces pricing-related schedules needed for standard business processing with Oracle Lease and Finance Management. The pricing schedules are retrieved during stream generation along with the pricing result set from the external pricing engine.

The external stream generation process of Oracle Lease and Finance Management uses a series of APIs and Oracle Workflows to interface, through the Oracle XML Gateway application, to the external pricing engine. Before external stream generation can begin, users must complete the necessary implementation steps.

To set up external stream generation, see Set Up Streams, Oracle Lease and Finance Management Implementation Guide.

Insurance Activation Program

After creating insurance quotes, the customer's acceptance of the quotes is indicated in the Origination insurance pages, in the Lease Center, or by an activation program. Upon acceptance, the insurance activation program creates an insurance policy and generates streams for billing, payment, and accounting accruals.

Users create insurance quotes during contract authoring in the Lease Center, or by running the Automatic Insurance Placement Program. If users create the quote, the quote must be accepted before a policy is created. During the insurance placement program, the quotes are automatically accepted. The acceptance of an insurance quote creates a policy and initiates the stream generation process.

A billable stream is generated for the premium due from the insured lessee. A stream is generated for the payable premium due to the insurance provider and a separate insurance concurrent program runs to pick up the stream and move it to a transaction table or import into Oracle Payables.

Two accrual streams are also generated, one to amortize the revenue and the other to amortize the premium expense. All other related insurance transactions such as paying the premium to the insurance provider, providing cancellation credits to the insured lessee, or retrieving a cancellation credit from the insurance provider are performed through a transaction rather than a stream.

Booking

Users must generate streams in order to activate, or book, a contract. The Oracle Lease and Finance Management activation process requires streams to derive the correct booking entries.

Stream generation assigns stream types to streams based on the user selection during payment, fee, and service creation and based on the streams template associated with the contract's financial product.

Rebooking

Users can book a revised contract by either selecting the contract and modifying it directly from the Revisions menu option in the Contracts subtab of the Origination tab, or by performing a Mass Rebook. Although the rebooking types follow different revision processes, the stream generation process for both rebooking types is the same.

When a contract is rebooked, the old streams are cancelled as of the date of the rebook, and all of the accrual entries and billing records are reversed. When the new version of the contract is rebooked, the new streams become active. When users run the accrual and billing programs, the net adjustment of the booking, or old versus new streams, is booked to the subledgers and general ledger for the same period.

A new stream element is created during rebooking to reverse or credit all of the original billings. This stream, with the stream type purpose of Billing Adjustment, is the total of all billed stream elements for all billable streams as on the date of the rebook. Additional processing is required to apply any associated credits to new invoices so the contract does not become overbilled.

The following processes leverage rebooking:

Variable Rate Processing

For contracts with variable rate terms and conditions, a program can be run to process them for variable interest charges. Based on the contract's terms and conditions, the program determines the interest rate to be applied if the terms specify that a new interest rate requires reamortization and stream generation, and calculates a new billable stream for variable rate interest. The income accrual for the interest adjustment is processed through a transaction rather than an accrual stream.

View Streams

You can view details of generated streams for a particular contract. This function allows you to see the schedule of payments by stream type, along with the corresponding amount for each date for the lifetime of the contract.

For accounting purposes, this feature allows you to review all the generated financial streams and verify that they meet the needs of your organization.

Depending upon the details of the contract, you can view three types of streams:

You can search and view streams at both summary and detail level. Initially the searches and reports start at the summary level. You can then drill down to see the details of the stream and the stream amount for each due date.

Note that you can see streams generated for multi-GAAP reporting. They appear in the results tables with a purpose of REPORT.

Prerequisites

You must have generated streams for a contract.

Steps

Perform the following steps in the Streams page:

  1. Enter the contract number, or part of the contract number containing the streams you want to view, in the Contract Number field and click the Go button.

    The results table contains all the contracts that meet your search criteria. The table also includes the status of the contract, such as complete, booked, and so on.

  2. Click the hyperlink contract number of the contract that contains the streams you want to view.

    At this point, the Contract Streams Summary page appears.

    Summary searches

    From this page, you can either search directly for contract level streams, or click one of the two buttons:

    • Asset Streams Summary

    • Service or Fee Streams Summary

      and then enter search criteria to see the streams summary at the appropriate level.

      The search criteria for each of the three options include the following:

      Stream Type: If you know the particular stream type you want to view, you can choose it from the list of values. Leave the value blank if you want to see all streams.

      Status: The status of the stream. The default is All. Other possibilities include Current, History, Hold, and Working.

      For asset streams, an additional search parameter is Asset, where you can request to view streams for a particular asset.

  3. Go to the relevant Streams Summary page, enter the appropriate search criteria, then click Go.

    The results of the search are displayed in a table, which shows a summary of the streams, at the appropriate level (Contract, Asset, or Service or Fee.)

    The table includes stream type, the status of the stream, the purpose, the total amount for each stream type, and a Details icon.

    If you click the Details icon, the appropriate page appears, which displays one of the following:

    • Contract Level Streams

    • Asset Level Streams

    • Service or Fee Streams

      The results show details of stream type, the due date, the amount, the status, and the purpose (which is "REPORT" for multi-GAAP reporting streams).

      For asset level streams, you also see the asset number.

      For service or fee streams, you also see the service or fee name.

Detail searches

Guidelines

Each of the three possible stream searches (Contract, Asset, Service or Fee) returns only those streams relevant for that particular search. You cannot see asset level streams, for example, when doing a search for contract level streams.

Run Stream Generation Purge Program

Stream generation can cause large amounts of redundant data to populate the interface tables. Large amounts of redundant data can cause slower stream generation performance. You can improve performance of stream generation by running the Purge Streams Interface Tables program. The Purge Streams Interface Tables program removes redundant data preceding a date that you specify.

Use the Purge Streams Interface Tables concurrent program to delete data that is not required by Oracle Lease & Finance Management from the following tables.

To run this program, you must specify the Last Creation Date of the stream data that you want to purge. You can also specify when you want to schedule the program to run.

Prerequisites

You must have generated streams for a contract.

Steps

Perform the following steps in the Schedule Request pages:

  1. In the Name field, select Purge Streams Interface Tables.

  2. Click Next to add details in the Schedule Request sub pages. Repeat this step for each sub page.

  3. In the Parameters field, enter the date before which you want all data deleted in the Last Creation Date prompt.

  4. Click Submit to run the request.

View Stream Generation Log File

In order to track and identify potential errors during stream generation, each transaction creates a log file. You can view the log file to identify the cause of the error, in the event one is generated. Errors are generated either from the third-party lease price modeling software that you are using, or internally from the Oracle Lease and Finance Management system.

The log file is kept in the path specified in the "OKL: Stream Generation Log File Directory" profile option and can be accessed by a system administrator with any standard text editor application (Notepad, for example). The file name includes the transaction number created during stream generation (that is, OKLSTXMLG_<transaction number>.log).

Manage History Streams

Many stream elements that are not required are often generated when contracts are updated, during rebooks, for partial terminations and other relevant transactions. There are generated streams which are currently historized and are also no longer required. This causes large volumes of unnecessary stream-related data to be stored in the application. This slows down the application. To minimize the volume of stream-related data and reduce the number of stream elements being stored in the application, you can use the Master Program - Purge History Streams concurrent program. This program allows you to purge history streams on a demand basis.

The following table shows the stream elements from history tables which are eligible for purging.

Stream Elements Eligible for Purging from History Tables
History Table Stream Elements from History Table Eligible for Purging?
okl_streams Yes
okl_strm_elements Yes
okl_streams_h No
okl_strm_elements_h No

The stream elements that are eligible for purging should meet the following criteria:

Note: No history sets are retained for the following contracts:

The following procedure shows how to enable purge of history stream elements for a stream type.

Prerequisites

None

Responsibility

Lease Super User

Steps

Perform the following steps in the Pricing tab of the Setup page.

  1. From the Stream Types menu region, search for the stream type for which you want to enable purge of history streams.

  2. Click Update.

  3. In the Update Stream Type page, select the Purge Allowed checkbox.

  4. Click Apply.

Purge History Streams

After enabling the Purge Allowed checkbox, you can run the Master Program - Purge History Streamsconcurrent program.

The following procedure shows how to purge history stream elements for a stream type.

Prerequisites

Steps

Perform the following steps in the Purge History Streams program on the forms interface:

  1. Select the Operating Unit. This is a mandatory parameter.

  2. Enter the appropriate option for each of the following parameters for the eligible stream types:

    • Mode: Enter Review or Final.

      • Review: This displays the count of stream elements which are eligible for purging.

      • Final: This will purge the streams elements.

    • Output Report: Enter Summary or Detailed.

      • Summary: This displays a summary report having the following information:

        • Date: The date when the program is run.

        • Program Parameters: The parameters entered by the user.

        • Contracts: The number of contracts included with the purged streams.

        • Stream Elements: The number of stream elements purged.

      • Detailed: This displays a detailed report which includes the number of stream elements which are eligible for purging for each stream type. The following information is displayed:

        • Contract Number

        • Contract Status

        • Contract Effective From

        • Contract Effective To

        • Contract Termination Date

        • Stream Types Name

        • Stream Type Element Count

    • Contract Status: Select one of the following options:

      • Abandoned

      • Active

      • Not Booked

      • Terminated/ Expired

    • Contract Ended Before Date: This parameter is applicable for terminated and expired contracts. Enter the termination or expiration dates.

    • Contract Number: Select the contract number in which the streams that you want to purge are present. Streams present only in the selected contract are purged.

    • Customer Account: Select the customer account in which the streams that you want to purge are present. Streams present only in the selected customer account are purged.

  3. Select the Final mode to submit the request for purging.

The child program is spurned and the history streams are then purged.

Note: The OKL: Parallel jobs per workerprofile option has been provided for Purge History Streams program to control the number of parallel jobs per worker. If no value is specified, the system will default the parallel jobs to 1.

Restore Purged History Streams

You can use the Master Program - Restore History Streams concurrent program to restore history streams that have been purged.

Prerequisites

Steps

Perform the following steps in the Restore History Streams program on the forms interface:

  1. You can use the following parameters to select the streams that needs to be restored:

    • Operating Unit

    • Output Report

    • Contract Status

    • Contract Number

    For more information on each of these parameters, see "Purge History Streams" in this chapter.

  2. Click Submit.

The history streams are restored.

Note: Streams for abandoned and cancelled contracts cannot be restored.