Introduction

This 15-minute hands-on tutorial shows you how to use an expression in a node type converter to find the parent of a node via a subscription request. You begin by creating a subscription and then add expressions to a node type converter to logically derive the node name and the parent name. Finally, you create and submit a request to test the logic, and sign in as the subscription assignee to view the subscription request results.

Background

When you add a node to the source, and submit the change via a subscription request, you want the Enterprise Data Management Cloud engine to find a specific parent in the target based on a property of the source node. You can accomplish this by creating an expression in the node type converter.

In the example in this tutorial, you are creating two expressions. The first expression calculates the node name in the target and the second epression finds the appropriate parent in the target. When you submit the change via a subscription request with auto-submit selected, and no approvals required, the change is automatically pushed to the target.

Prerequisites

Before starting this tutorial, you must:

  • Have Service Administrator access to your Enterprise Data Management Cloud environment.
  • Create a sample application. For more information, see the documentation.
  • Caution:

    Please note that creating the sample application will remove all existing applications and artifacts in the environment. Back up your current environment before creating the sample applicationt. For more information on backing up, uploading, and importing applications and artifacts, refer to the Administering Migration for Oracle Enterprise Performance Management Cloud documentation.
  • Create a user, and then add the user to the User group and to the Interactive User group. In this tutorial, this user is Barry Dylan.

Identifying the source and the target

  1. Sign in as a user with the Service Administrator role, navigate to Views, and open the Account Maintenance view. The Corporate Account viewpoint is your source, and the Plan Account viewpoint is your target.
    Account Maintenance View
  2. Select the Corporate Account viewpoint, navigate to and then expand the 11000 node.
    Corporate Account Viewpoint
  3. Click Side-by-Side Layout icon (Side-by-Side Layout) to view the Corporate Account and Plan Account viewpoints.
    Side by Side Layout
  4. With 11000 selected in the Corporate Account viewpoint, click Locate Node icon (Locate Node from Viewpoint Corporate Account) to locate the related node A_11000 in the Plan Account viewpoint.
    Locate Node from Viewpoint

    In this tutorial, you add a child node to the 11000 parent in the Corporate Account dimension, use separate expressions to calculate the target node name and to find the A_11000 parent in the Plan Account dimension, and then add the node to the parent in the target dimension via a subscription request.

Creating a subscription

  1. Click Tabbed Layout icon (Tabbed Layout) to turn off the Side-by-Side layout, and inspect the Plan Account viewpoint.
    Subaccounts Frame
  2. Select the Subscriptions tab, and then click Create.
    Subaccounts Frame
  3. Set the source viewpoint to Corporate Account in the Account Maintenance view, and then click Create.
    Subaccounts Frame
  4. Select the Definition tab.
    Subaccounts Frame
  5. On the Definition tab, click Edit.
    Subaccounts Frame
  6. Add Barry Dylan as the Default Assignee, and then select Enabled and Auto-Submit.
    Subaccounts Frame
  7. Save the subscription, and then select the Plan Account tab in the bottom left corner. Notice that the created subscription is listed on the Subscriptions tab
  8. Subscription tab

Setting up a node converter

  1. In the Plan Account viewpoint inspector, select the Data Chain tab.
    Subaccounts Frame
  2. Select the Node Types data chain object, and then select the Account node type.
    Subaccounts Frame
  3. On the General tab, notice that the node type includes the qualifier prefix A_.
    Subaccounts Frame
  4. Select Converters, and then click Edit.
    Subaccounts Frame

Creating an expression to calculate the node name

    In this section, you add the following expression to calculate the node name:
     return "A_".concat(sourceNode.properties.Core.Name)

    For example, you add a node named 11504 to the source dimension. The expression adds the A_ prefix qualifier to the node, and the node is added as A_11504 in the target.

    For more information about creating expressions, please view our tutorial video Transforming Properties Using Expression Builder.

  1. For the Name property, change operation from Copy to Transform.
    Subaccounts Frame
  2. For the Name node, click fx (Edit Expression) to open Expression Builder.
    Subaccounts Frame
  3. Download the expression from the Property_Transform_Name.json file, and then click Load from File (Load from File) button.
  4. Upload node name expression
  5. In the File Open dialog, select the downloaded JSON file, and then click Open.
  6. Node name expression
  7. Click Apply.
    Account node type inspector

Creating an expression to derive the parent name

    In this section, you add the following expression to derive the parent node name:
    return "A_".concat(sourceNode.properties.Core.Name.substring(0, 2), "000")

    For example, you add a child node named 11504 to the 11000 parent node in the source dimension. To find the parent node in the target dimension, the expression adds the A_ prefix qualifier, identifies the first 2 characters of the parent node name in the source dimension (11 in this example), and adds 000 to identify the parent as A_11000 in the target.

  1. For the Parent property, in the Operation drop-down list, select Transform.
    Parent property operation
  2. For the Parent property, click fx (Edit Expression) to open Expression Builder.
    Account node type
  3. Download the expression from the Property_Transform_Parent.json file, and then click Load from File (Load from File) button.
  4. Upload node name expression
  5. In the File Open dialog, select the downloaded JSON file, and then click Open.
  6. Parent node name expression

Testing the parent name expression

In this section, you test the expression to derive the parent node name.
  1. Click Load from File (Test Expression) button..
    Expression Builder
  2. In the Test Expression pane, perform the following actions:
    • For Viewpoint, select Corporate Account from the Account Maintenance view.
    • For Node, select 11000 ( Cash and Short Term Investments).
    • Click Evaluate.
    Test parent node expression
  3. Review the expression evaluation result, A_11000, and confirm that the expression derives the parent node name in the target dimension correctly.
  4. Evaluate expression
  5. Close the Test Expression pane, and then click Apply.
    Account node type inspector
  6. Save and close the inspector.
  7. Click OK to confirm the view has been modified.
    Subaccounts Frame

Creating a request to test the expressions

  1. In the Account Maintenance view, click New Request.
    New Request
  2. In the Corporate Account viewpoint, expand T > 10000 > 11000.
    Subaccounts Frame
  3. Click Node menu (Node menu) to the right of the 11000 node to launch the context menu, and then select Add Child to create a new node as a child of the 11000 node.
    Subaccounts Frame
  4. Define the child properties:

    Property Definition
    Name 11504
    Description Clearing USBNK3 Checking Account
    Description US Clearing USBNK3 Checking Account
    Summary No
    Enabled Yes
    Allow Posting Yes
    Account Type Asset
    Financial Category Cash

    Subaccounts Frame
  5. In the request panel, next to All Items, click Request Items Menu icon (Request Items Menu), and then select Validate.
    Subaccounts Frame

    You should receive a message of successful validation.

    Subaccounts Frame

  6. Submit the request. You should receive a message that the request was successfully submitted.
    Subaccounts Frame
  7. Close the view.

Viewing the request results

  1. Navigate to Requests, set the Request Type filter to Subscription, and confirm a request was sent to the request assignee: Barry Dylan. Notice that the request status is Draft because there is an issue with the request.
    Subaccounts Frame
  2. Sign out and sign back in as Barry Dylan. On the Home page, select the Activity tab, and then click Requests assigned to me.
    Barry Dylan's Home page
  3. In the Request Activity page, click the Request ID link to review the request issue.
    Barry Dylan's Home page
  4. Notice a validation error with the A_11504 node.
    Validation error
  5. Fix the error by setting the A_11504 node properties as listed in the following table:
    Property Definition
    Data Type Currency
    Exchange Rate Type Average

    Confirm that the parent node is correctly calculated: Node A_11504 is added as a child to the A_11000 parent in the Plan Account viewpoint.
  6. Subaccounts Frame
  7. Validate and submit the request.
    Request submitted successfully
  8. Click Back to Requests. In the Request Activity page, set the Status filter to All and the My Activity filter to Submitted. Verify that the request status is Completed and the request stage is Closed.
    Request Activity