Siebel Order Management Infrastructure Guide > PSP Waterfall > About Configuring Waterfall Output >

Creating a New Waterfall


You can add a new waterfall output to any PSP procedure. A PSP procedure can have multiple waterfall outputs.

NOTE:  It is recommended that you copy the configuration of the Net Price Waterfall when creating a new waterfall output.

The following topics contain information about creating new waterfalls:

Populating Child Waterfall Property Sets

When creating a new waterfall output, you first populate a child waterfall property set for each output row of the PSP procedure.

To populate a child waterfall property set for each output row of a PSP procedure

  1. Create new UMS message types to format text for your new waterfall output. See Creating Message Types.
  2. Define PSP actions to create the waterfall output in your PSP procedure.
    1. Use the {Row.Waterfall Name} += New() syntax to create a new waterfall record and append it to the desired waterfall property set. The New() function has the following syntax:

    New('Waterfall', Name 1 = Value 1, Name 2 = Value 2,.)

    Name n and Value n are the waterfall output field names and values; for example:

    Currency Code = USD

    1. Use the LookUpMessage function to format text in the appropriate language with variable values substituted through a call to the UMS business service, with the following syntax:

    LookUpMessage('Message Name', Name 1 = Value 1, Name 2 = Value 2,.)

    Name n and Value n are the payload field names and values that will be used by the UMS business service to construct the message text; for example:

    Price List = Americas Price List

Exposing the Waterfall Output

Next, you expose the waterfall output on the user interface.

To expose the waterfall output as a drilldown on a field in the UI

  1. Create a new virtual business component based on class CSSBCVWaterfall.
    1. Create fields for each waterfall output column.
    2. Create a field called Name, which is used internally to query the correct data by the waterfall name.
    3. Compile the virtual business component.
  2. Create a new pop-up applet based on class CSSSWEFrameListPopupWaterfall using the VBC created in Step 1.
    1. Set its search specification to query the field Name with a value of the created waterfall, such as:

    Name = "Cost Waterfall"

    1. Define the column layout.
    2. Compile the applet.
  3. Create a drilldown link to the new pop-up applet in each list applet that displays the field calculated by the PSP procedure.
    1. Add a drilldown object to the applet defining the field on which the drilldown is displayed and the drilldown name. Leave all other fields blank.

      Example:

    Name = "Waterfall Popup 2"; Field = "Cost"

    1. Add a user property to the applet indicating which waterfall pop-up applet to display upon each drill-down:

      Example:

    Name = "Waterfall Popup Applet 2"; Value = "Cost Waterfall Popup List Applet"

    NOTE:  Multiple waterfall drilldown links are supported by incrementing the index at the end of the Waterfall Popup Applet N drilldown name.

    Applet classes CSSSWEFrameListQuoteItemEC and CSSSWEFrameListWaterfall support waterfall drill-down.

    NOTE:  CSSSWEFrameListWaterfall is derived from class CSSSWEFrameListBase directly.

    1. Compile the applet.

Saving Waterfall Data

Waterfall data is saved using Data Transfer Utility (DTU). You can configure the application to save waterfall records manually or automatically as described in this topic.

To enable persistence of the new waterfall data in the database

  1. (One option is to do this by using a command.) In the Siebel application, navigate to the Administration - Order Management screen, then the Signals view, and add a new signal to save the waterfall output. Use SaveWaterfall-Order as an example.
    1. In Siebel Tools, add a command to invoke the signal when the user selects a menu option. Use SaveWaterfall-Order as an example. Values are described as follows:

      Display Name: [Name to be displayed]

      Name: [Name of the command]

      Method: [Signal Name]

    2. Create a custom table to store the waterfall output (for example, CX_COST_WATERFALL).
    3. Create a business component (BC) based on the table with the same field names as in the virtual business component used to display the waterfall.
    4. Create a data map object. Use Order Waterfall Data Map Object as an example.

      In the Siebel application, navigate to the Administration - Application screen, then the Data Map Administration view, and create a new data map object.

      The source is the VBC and the destination is the BC.

  2. (Another option is to save the waterfall data manually by using an applet menu button or an applet button.) As in Step 1, add a new signal to save the waterfall output.
    1. In Siebel Tools, add an applet menu button (call it Save Waterfall).
    2. Add an object to Applet Method Menu Item of the waterfall-triggering applet, and then expose it to the applet. Values are as follows:

      Command Name: [The command added to save this waterfall]

      Text: Save Waterfall

      Alternatively, you can add an applet button (Save Waterfall) in Siebel Tools by adding a control to the waterfall-triggering applet and then exposing it to the applet. Use the following values:

      Name: Save Waterfall

      Method Invoked: [The signal added to save this waterfall]

      Caption: Save Waterfall

For more information about creating and using signals, see Signals. For more information about DTU, see the topic about Data Transfer Utility in Siebel Finance Guide.

PSP Waterfall Business Service Methods

The PSP Waterfall business service provides the methods described in Table 27.

Table 27. PSP Waterfall Business Service Methods
Method
Arguments
Description

ShowWaterfallPopup

Name = Popup Applet Name

Value = the name of the waterfall popup applet

Example: "Quote Line Item Waterfall Popup List Applet"

Display the waterfall pop-up for the current line item.

SyncToDB

See SyncToDB Input Arguments

Generate waterfall records for the current quote, order, or agreement and write them to the database.

For more information, see Saving Waterfall Data.

SyncToDB Input Arguments

The SyncToDB method provides the input arguments described in Table 28.

NOTE:  You may prefer to use SyncToDB in a signal, rather than directly in a command, for synchronizing waterfall data to the database. If so, use the guidance provided in Saving Waterfall Data.

Table 28. SyncToDB Input Arguments
Argument
Type
Value

Pricing Output Row Set Type

String

RowSet

Waterfall Data Map Object

String

Quote Waterfall Data Map Object

Waterfall Name Field

String

Name

Waterfall Parent Id Field

String

Item Id

Waterfall Parent Id Variable

String

ID

Waterfall Signal

String

PSPWaterfallAll

Waterfall Synch Process

String

PSP Waterfall Synch to DB Workflow

Waterfall Sequence Number Field

String

Sequence Num

Siebel Order Management Infrastructure Guide Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Legal Notices.