In this tutorial, we’ll show you how to derive properties using custom business logic in Oracle Enterprise Data Management. When you create properties, you provide default values that are literal, inherited, or derived. Derived properties are defined with custom business logic in Expression Builder, and are recalculated based on their expression when you browse to display values, compare, validate, import, or export. Let’s look at examples of deriving properties using expressions. In both cases, we’ll build the expression and test it to demonstrate how it works. Let’s start with copying one property’s value to another. When I add a node to this Financials Cloud application, it requires a value for Description US. Instead of manually adding this value, let’s automatically derive it from the Description property. First, navigate to properties. Click the property to open it, then select the application. If the property applies to multiple applications, you can define different derived value expressions for each. Edit the property, and select Derived for the default. Now you can click the Define Expression icon to open Expression Builder. For this expression, I’ll use a simple return statement. You can build out the default statement in the editor. You can click and drag statements, objects, and operators from the palette to the editor. I’ll start with the Node object. Notice that the statement box turns red to indicate an invalid statement. In this case, the statement is looking for a string value, and I’m currently returning a Node object. Click the dot after the object to see properties related to the object. I’ll select properties, and then add the Core.Description property, which is a string data type property. When your statement is complete, click Apply. Notice that under Common Parameters, you can leave the property editable, or not. I also need to select an option for Case before I save and verify my changes. Now when I add a node to a Financials Cloud dimension, the Description US property is derived automatically from the Description property. Some properties are dependent on the values of other properties. For such dependent properties, you can create expressions with Boolean tests to return the values you want. An example of this is the Time Balance account property in Planning type applications. For asset, liability, and equity accounts, the Time Balance property is Balance, and for income or expense accounts it’s Flow. Let’s create an expression to derive the correct values for Time Balance based on the account type. First, I’ll remove the default return statement, then use the arrow to insert a new if statement. The condition expression term requires a Boolean test to be valid. In this example, I need multiple Boolean tests: the account type is Asset OR Liability OR Equity. First, set up the template for your Boolean tests. Start by adding the first OR operator. Now you have two Boolean condition expression terms. For more conditions, continue to add operators. Now create tests for each Boolean expression term. I’ll add the method “equals” to the Account Type property, and enter Asset to complete the Boolean test. Then I’ll complete similar expression terms for the other tests, using Liability and Equity. The next part of the statement is the return value if the tests are true. Finally, I’ll add an else statement for any other account type to return a value of Flow. You can also add comments to your expressions. Apply the expression, and save the property. To test the expression, let’s add an account to the Corporate Planning hierarchy. By default, the Account Type is Revenue, and the Time Balance property is derived as Flow. If I change the account type to Asset, the Time Balance property is derived as Balance. In this tutorial, you saw how to derive properties using business logic in Expression Builder. To learn more, visit docs.oracle.com.