Extend the Semantic Model Using the Branch Framework

You customize your semantic model in the non-production environments such as development or test by creating branches and adding steps to those branches.

Note:

Oracle recommends that you migrate to the semantic model extensions Sandbox framework because the Branch framework is planned to be deprecated in a future release.

You use a branch or version to publish your changes to the model. You can apply the model from the branch to a local service instance for testing. When the changes are correct, you can merge that branch with the main branch. You can merge multiple branches with the main branch over time. When you have a set of changes finalized, you can version the main branch and use the Bundles functionality to move the customizations to another environment. See the information regarding the Semantic Extensions Bundle in Bundle Your Application Artifacts.

You can copy the steps from the main branch, edit them directly, and later merge them with the main branch. However, you must ensure not to perform two or multiple levels of copies. For example, you must not copy steps from the main branch to another branch, then copy the steps over to yet another branch, and then merge the second branch with the main branch.

You can customize the model by extending prebuilt dimensions with additional attributes from another data source, by adding a fact to an existing subject area, and by reorganizing the prebuilt subject areas to create a new subject area to name a few. If you've merged an external application, then note that both external semantic model and semantic model extensions can co exist. On the Publish Model page, select "Yes" if you want the external semantic model to be included.

Don’t maintain changes in a local branch for long periods of time. Local branches can become out of synchrony when changes to the Oracle NetSuite Analytics Warehouse environment occur. Use a local branch for development, then merge to the main branch after user acceptance testing. Promote the main branch from Development to Production environments using the Semantic Extensions bundle. Whenever a system extension run is replaying the master branch, you must not edit the main branch during this time as that might cause a conflict leading to failure of the semantic extensions.

Migrate to the Sandbox Framework for Semantic Model Extensions

Prior to switching over to the Sandbox framework for semantic model extensions, note the tasks and ensure to take appropriate action where required in the suggested sequence.

Begin by validating and resolving all semantic model validation errors within the non-production instance. Subsequently, migrate the validated (error-free) semantic model to all other instances, including production, while all instances are still on the branch framework. If you have multiple instances such as development, stage, and production, prepare a semantic model extensions migration timeline for each instance. After the initial instance is migrated, it isn't possible to bundle the semantic model extensions until the target instance is on the same semantic model extension framework. It's recommended to complete the migration of the production instance promptly after migrating the lower instances to avoid bundle delays.

Perform the Pre-Migration Tasks

Prior to the migration, note these and take appropriate action:

  1. Ensure that you schedule or apply all the release updates prior to the migration to avoid not being able to rollback.
    The option to revert to the Branch framework gets disabled after 60 days from the migration date or an Application update, if it happens first post migration to the Sandbox framework.
  2. As a pre-clean up task, create a Semantic Model Extensions bundle of the published branch prior to making any semantic model extension changes.
  3. Delete or enable disabled steps in the Main branch to be migrated because the migration process migrates only the enabled steps.
  4. Delete or merge all unpublished branches because these won’t be migrated.
  5. Merge the published branch with the main branch.
  6. Publish the Main Branch, confirm that all steps are error free, and confirm that all the subject areas and security referenced in workbooks operate as expected.
  7. As a post-clean up task, create a Semantic Model Extensions bundle of the published Main Branch.
  8. If you have multiple instances such as development, stage, and production, prepare a semantic model extension migration timeline for each instance. After the initial instance is migrated, it won't be possible to bundle the semantic model extensions until the target instance is on the same semantic model extension framework. After successfully validating the main branch in the lower environment and resolving all validation report errors, bundle the validated semantic model and migrate it to production.

Validate the Main Branch

On the Semantic Model Extensions page, when you see the banner to schedule the migration, don't click Schedule now until you've validated the main branch successfully with no errors.

Note these and take applicable action prior to initiating the validation process:

  • Don't perform any development or administrative activities that effect the semantic model extensions during validation or while the migration is in process. This includes modifying existing data augmentation or creating new data augmentation that have the semantic model extensions.
  • Remove leading and trailing spaces from the object names.
  • Remove special characters such as parenthesis from the object names.
  • Ensure all keys are present on the join columns.
  • Confirm all referenced source database objects and columns exist in Autonomous Data Warehouse.
  • Confirm grants are applied on all referenced source database objects using
    GRANT SELECT ON "OAX_USER".“TABLE_VIEW" TO "OAX$OAC";
  • Resolve any duplicate object names.
  1. On the Semantic Model Extensions page, click the Actions Menu for the Main Branch, and then click Validate to produce the Validation report.

    Validate option in the Action menu for the Main branch

  2. Click the Activity tab on the Semantic Model Extensions page and wait for the validation of the main branch to complete. If the State is Failed, then don't proceed with the migration until you've resolved all of the errors.

    Validation of main branch displaying Failed state

  3. Click the Actions Menu for the Main Branch, and then click Validation Report to download and review the validation report.

    Note:

    The validation report is enabled only if the validation fails with errors.
  4. Resolve all errors in the validation report and repeat Validate and Validation Report steps until you've resolved all errors. For any errors that you can't resolve, contact Oracle Support before proceeding.
  5. Click the Activity tab on the Semantic Model Extensions page and wait for the validation of the main branch to complete. If the State is Done and the report is error free, then proceed with scheduling the migration.

    Validation of main branch displaying Done state

    Note:

    To avoid migration issues, resolve all errors and deploy the validated semantic model bundle to all instances, including production, while maintaining the branch framework, before initiating the migration.

Deploy Validated Branch to Production

After successfully validating the main branch in the lower environment and resolving all validation report errors, bundle the validated semantic model and deploy it to the production environment.

See Deploy a Bundle.

It's not possible to validate or produce a validation report in the production environment. Before scheduling the migration of the lower instance, it's crucial to perform a final user acceptance test in the production environment. After you migrate the lower instance, bundling between the migrated sandbox and the production branch instances isn't possible, until you migrate the production environment to the Sandbox framework.

Schedule the Migration

You can initiate migration of your extensions to the Sandbox framework by submitting the request from the banner message on the Semantic Model Extensions page when you click User Extensions.

Set up the migration to happen automatically by scheduling it from the banner message. Ensure that you schedule the migration during a low usage period to avoid reporting outages.

Note:

You can't use the semantic model extensions capability during the migration process.
  1. On the Semantic Model Extensions page, in the banner announcing the ability to schedule the migration, click Schedule now.

    Banner displaying option to migrate from Branch to Sandbox framework

  2. In the Migrate dialog, specify the date and time for the migration to begin.

    Migrate dialog

  3. Track the progress of the migration in the Activity tab on the Semantic Model Extensions page when the migration starts.

Perform the Post Migration Verifications

After the migration is complete, in non-production instances, note these and take appropriate action:

The migration process converts the single Main Branch to a single Semantic Model Extensions Sandbox. It migrates the existing customizations to the new framework. The security configurations remain unchanged in the new framework, hence no action from you is required.
  1. On the Semantic Model Extensions page, click the Activity tab and monitor the status of the migration.
    Once the migration is complete, you receive a notification on the Console. If the migration fails, click the Failed state in the Activity tab for the applicable task and resolve the issues. For any unresolvable issues, reach out to Oracle Support.
  2. After the migration is completed successfully, on the Semantic Model Extensions page, click Migration Details.

    Migration details option

  3. In Migrated Sandboxes, click the download icon to download the migration report.
    This report shows which customizations are available for which object with the Main branch object to the Main sandbox object mapping. This enables you to see all your customizations that have been brought over. In most cases, operations like Add Dim, Add Fact, Add Variable, Extend Dimension, and Add Columns have 1:1 correspondence between the old and the new framework. The Main sandbox is published and ready for use. All your subject areas, visualizations, and reports remain unchanged.
    Download the migration report

  4. Sign in and sign out of your service after the migration completes. Confirm that all the subject areas and security referenced in the workbooks operate as expected.

Revert to the Branch Framework for Semantic Model Extensions

Post migration, an option to revert to the Branch framework if customizations aren't as expected is available. The migration rollback option gets disabled after 60 days from the migration date or an Application update, if it happens first post migration to the Sandbox framework.

Note these:
  • Ensure to complete the reversal process within this period if you must revert. If you choose to revert, then the semantic model rolls back to the state prior to the migration being initiated. You can't rollback the migration if you've completed an Application update after completion of the migration process.
  • Oracle maintains a backup of the existing semantic model extensions at the time the migration is initiated. If you encounter issues during or after migration, Oracle uses the backup to troubleshoot and enable required extensions on the new framework. Should you choose to revert to the previous state, the semantic model is restored from this backup.
  • If you've made further changes to the semantic model in the new framework before choosing to revert, these customizations can't be migrated to the previous semantic model extensions framework.
  1. On the Semantic Model Extensions page, click the Activity tab and verify that the status of the scheduled migration task Upgraded to Revamped UI is Done.

    Upgraded to Revamped UI task displaying Done state

  2. On the Semantic Model Extensions page, click Migration Details.
  3. In Migrated Sandboxes, click Revert to rollback the migration.

    Revert migration

Create a Branch

To begin customizing your semantic model, create a branch of the main semantic model.

You add customizations to the production environment. After you have added and tested your customizations, you can publish them to the model in the production environment.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, for Customization Branches, click Create Branch to create a branch as an empty container.
  5. In Create a Branch, enter a name for your branch, for example, Add Cost Center.
  6. Optional: Add a description and click Done.
    You see the Add Step dialog. You can continue to add the steps or you can add steps to the new branch container later using the Add Step button. See Add a Step to a Branch. You see the new branch on the Semantic Model Extensions page under Customization Branches.

Edit a Branch

Before you apply a branch to the main branch of your semantic model, you can edit the branch description to make it more meaningful.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
  4. In the User Extensions region, under Customization Branches, hover over a branch to viewActions.
    You see the actions that are applicable to the branch.
  5. From Actions, click Edit Description to update the branch description, and then click Done.

Add a Step to a Branch

You can add customization types such as "Extend a Dimension" as a step to an existing unapplied branch or a new branch that you create.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to open the Branch page.
  5. On the Branch page, click Add Step.
  6. In Add Step, select a customization type such as Extend a Dimension.
    You see the wizard sequence to add details for the selected customization type.

Add a Dimension

You can create a custom dimension, join it to the prebuilt or custom facts, and add the custom dimension to any subject area to meet your business requirements.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to open the Branch page.
  5. On the Branch page, click Add Step.
  6. In Add Step, select Add a Dimension.
    You see the wizard sequence to add a dimension.
  7. In step 1 of the wizard, enter a name for your customization step, for example, Add Point of Sale Dimension and add a brief description.
  8. In step 2 of the wizard, select the schema, and then select the dimension table in Object. For example, COST_CENTER_VIEW1.

    Note:

    If you don’t see the schema or table, then ensure that you have granted select permission to the OAX$OAC schema in the autonomous data warehouse. For example, grant select on <schema>.<table> to OAX$OAC. See Load Customization Data to the Autonomous Data Warehouse.

    You see the attributes available in the selected dimension table. You can use the Search and Filter fields to limit the attributes displayed for the dimension table.

  9. Select the attributes that you want to use from the dimension table and indicate an attribute to be used as the key for joining with a fact table in the target subject area.
  10. If any of the selected attributes have been removed or modified in the source table since the last refresh, then you see such columns highlighted and a message asking whether you want to update the table. Select OK in the message to reload the source columns. If you want to review the changes to the source columns, then click Cancel in the message, and later click Refresh to reload the source columns. If any of the attributes that you haven’t selected have been removed or modified in the source table, then you see the refreshed list of source columns. If any of the custom columns fail validation during the refresh, then you see a message asking you to resolve the cause of failure and revalidate.
  11. Optional: Click Create Column to add another column to your dimension table in the target subject area using these instructions:
    1. In Create Column, enter a display name.
    2. Under Data Elements, search for a data element from the physical table of the selected dimension table.
    3. From the search results, double-click the data element to place it in the text pane.
    4. Under Functions, search for a function to construct a column using expressions. For example, search for functions like "substring" or "concatenate" to construct new expression-based columns. From the search results, double-click the applicable result to add it to the central text pane.
    5. Click Validate, and then click Save.
  12. In step 3 of the wizard, select, drag, and drop available data elements into the Selected Data elements pane to design a hierarchy for the dimension and then click Next. In the Selected Data Elements pane, click a level to update its primary key and set its display attribute in the Properties pane.
    You can add multiple levels in your hierarchy by right-clicking at a level and selecting Add Child or Add ‘n’ Child Levels. For example, your Region Hierarchy can have Region Total at Level 1, Region at Level 2, Country at Level 3, State at Level 4, and City at Level 5.
  13. In step 4 of the wizard, select Skip Joins if you don’t want to join the selected dimension table to any facts. To join the selected dimension table to a fact, select the fact table, fact key, and join type. Click Content Level to specify the content level for your fact.
    You can join a single fact key column to multiple dimension keys.

    Note:

    Ensure that the data types of the join key pairs match. If your data types don't match but you want to proceed, then click Yes in the message. However, if the data types can't be absolutely matched, then the server-side validation rejects that join completely and you must change the data type of custom key column to match the factory data type.
  14. Optional: Click Add Fact Table to select another fact table to link your dimension to and define the join.
  15. Click Next.
  16. Optional: In step 5 of the wizard, select the subject areas to include the new dimension and click Finish.
You see a message that your step is being applied to the customization branch. After it's applied, you see the new customization step in the customization branch. You can now apply the customization branch to the main branch or edit it to add more steps.

Note:

If you’ve created Add a Dimension steps using the previous functionality, you can still edit and reapply through the Edit option.

Add a Fact Table

Add a fact table to an existing subject area.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to open the Branch page.
  5. On the Branch page, click Add Step.
  6. In Add Step, select Add a Fact.
    You see the wizard sequence to add a fact.
  7. In step 1 of the wizard, enter a name for your customization step, for example, Add Travel Expense and add a brief description.
  8. Select a target subject area to which you want to add the fact. For example, Financials - AP Expense.
    You see the details of the selected subject area.
  9. Click Next.
  10. In step 2 of the wizard, select the schema, and then select a view or table or synonym as the object. For example, FCT_CALC_Extensions.
    You see the fact table for the selected object.
  11. In the details of the fact table for the selected source table, click the Select Fact and Use for Key check boxes for the source columns that you want to add to your new fact table in the target subject area.
  12. Optional: In the details of the fact table for the selected source table, under Select Degen Attribute, click the check boxes for the attributes for which you need the degenerate dimension to be created.
  13. If any of the selected attributes have been removed or modified in the source table since the last refresh, then you see such columns highlighted and a message asking whether you want to update the table. Select OK in the message to reload the source columns. If you want to review the changes to the source columns, then click Cancel in the message, and later click Refresh to reload the source columns. If any of the attributes that you haven’t selected have been removed or modified in the source table, then you see the refreshed list of source columns. If any of the custom columns fail validation during the refresh, then you see a message asking you to resolve the cause of failure and revalidate.
  14. Optional: Click Create Column to add a new column to your new fact table in the target subject area using these instructions:
    1. In Create Column, enter a display name.
    2. Under Data Elements, search for a data element from the physical table of the selected dimension table.
    3. From the search results, double-click the data element to place it in the text pane.
    4. Under Functions, search for a function to construct a column using expressions. For example, search for functions like "substring" or "concatenate" to construct new expression-based columns. From the search results, double-click the applicable result to add it to the central text pane.
    5. Click Validate, and then click Save.
  15. Click Next.
  16. In step 3 of the wizard, use the Diagram or Tabular tabs to specify the joins to link your new fact table to the dimensions in the selected subject area.
    Follow these instructions to specify the joins using the Diagram tab:
    1. Click Add Table.
    2. In Add Table, select the dimensions to add and click OK.
    3. Drag from the dimension's port (dark green circle) to the fact table's port (brown circle) to create a join link. You see the Join dialog.
    4. In the Join dialog, select the type of join, the fact table column, and the dimension key column. Click Add Join Condition to add multiple join conditions and then click Join. If you want to provide expressions as join conditions, then click Complex Join and in Create Joins, click Add Joins, select the target and source logical tables, enter the join condition as an expression, and click OK.
    Follow these instructions to specify the joins using the Tabular tab:
    1. Click Add Join.
    2. In Add Table, select the dimension to add and click OK. You see the Join dialog.
    3. In the Join dialog, select the type of join, the fact table column, and the dimension key column. Click Add Join Condition to add multiple join conditions and then click Join. If you want to provide expressions as join conditions, then click Complex Join and in Create Joins, click Add Joins, select the target and source logical tables, enter the join condition as an expression, and click OK.
  17. Optional: Click Skip Joins if you don’t want to join a dimension now.
  18. Click Next.
  19. In step 4 of the wizard, select the aggregation rule for each fact column to set the aggregation behaviors.
  20. Optional: You can set the time-balanced aggregation rule for a time dimension and hierarchy level-based aggregation rule for a dimension using these steps:
    1. For a fact column, click the Time-Balanced Aggregation icon.
    2. In the Time-Balanced Aggregation dialog, click Add Time Dimension, adjust the aggregation rule, and then click OK.
    3. For a fact column, click the Hierarchy Level-Based Aggregation icon, select the dimension and level. Click Add Dimension to add more dimensions. Click OK.

    Use a time-balanced aggregation when the added measure mustn't be "aggregated" by default across a time dimension. Oracle NetSuite Analytics Warehouse supports non-aggregation types like "Last" or "First" in place of the "SUM" aggregation type when required. Use a level-based aggregation when the underlying measure must always be calculated to a specific level of a predefined dimensional hierarchy. For example, in a product hierarchy that has the Product Total, Product Category, Product Sub-Category, and Product Details levels, you add a new measure called "Revenue" and need this "Product Category Revenue" measure to be aggregated to Product Category, then you must use the level-based aggregation and choose the right level of the Product Dimension. This setting enables Oracle NetSuite Analytics Warehouse to always aggregate and show the value of the measure at the Product Category level. This is useful when you need to calculate Product Revenue as a % of Category Revenue.

  21. Click Next.
  22. Optional: Select additional subject areas to add the fact.
  23. Click Finish.
    You see a message that your step is being applied to the customization branch. After it's applied, you see the new customization step in the customization branch. You can now apply the customization branch to the main branch or edit it to add more steps.

Add a Hierarchy

Add a hierarchy to a dimension table in an existing subject area.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to open the Branch page.
  5. On the Branch page, click Add Step.
  6. In Add Step, select Add a Hierarchy.
    You see the wizard sequence to add a hierarchy.
  7. In step 1 of the wizard, enter a name for your customization step, for example, Add Region Hierarchy and add a brief description.
  8. Select the subject area, the folder of the dimension table, and the dimension table to which you want to add a hierarchy.
    You see the existing hierarchies and the hierarchy levels in the selected dimension. If there aren’t any hierarchies, then you see a message informing you that there are no hierarchies in the selected dimension.
  9. Click Next.
  10. In step 2 of the wizard, assemble the product hierarchy using the attributes from this dimension table with these instructions:
    1. Enter a hierarchy name. For example, Region Hierarchy.
    2. Select, drag, and drop available data elements into the Selected Data elements pane to design a hierarchy that you want. You can add multiple levels in your hierarchy by right-clicking at a level and selecting Add Child or Add ‘n’ Child Levels. For example, your Region Hierarchy can have Region Total at Level 1, Region at Level 2, Country at Level 3, State at Level 4, and City at Level 5.
    3. In the Selected Data Elements pane, click a level to update its primary key and set its display attribute in the Properties pane.
  11. Click Next.
  12. Optional: In step 3 of the wizard, select additional subject areas to include the new hierarchy.
  13. Click Finish.
    You see a message that your step is being applied to the customization branch. After it's applied, you see the new customization step in the customization branch. You can now apply the customization branch to the main branch or edit it to add more steps.

Add Session Variables

Add custom session variables that you can include in the analyses. After merging this step to the Main branch and publishing it, the custom session variables are available in the custom security configuration user interface only.

The SQL query that you define is executed by user OAX$OAC. If you're using another schema in the query, then you must mention the schema name as prefix. You must ensure to grant user OAX$OAC access to all the database objects used in the query.
  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to open the Branch page.
  5. On the Branch page, click Add Step.
  6. In Add Step, select Add Session Variables.
    You see the wizard sequence to add the session variables and a list of existing session variables.
  7. In step 1 of the wizard, check if any of the existing session variables serve your purpose.
    If yes, then you can exit the wizard and use the applicable existing session variables in your analyses. If no, then continue with the next steps to create the session variables that you require.
  8. Enter a name for your customization step, for example, Add a Session variable using Invoice Received Date and add a brief description. Click Row-wise Initialization to configure cache settings.
  9. Click Next.
  10. In step 2 of the wizard, define the SQL query and create the initialization block using these instructions:
    1. Enter a name and description for the initialization block.
    2. Select a preceding initialization block.
    3. Enter the SQL query that would be executed in the autonomous data warehouse and return a value that you can use in the reports. For example, if you want to get the Exchange Rate Type that's defined in Oracle NetSuite Analytics Warehouse into a session variable, then you can use the following SQL script:
      SELECT PARAMETER_VALUE FROM DW_CONTENT_PARAM_CONFIG WHERE
       PARAMETER_CODE='PARAM_GLOBAL_EXCHANGE_RATE_TYPE' 
  11. Click Next.
  12. In step 3 of the wizard, create the session variables using the output of the initialization block created in step 2 of the wizard.
  13. Click Finish.
    You see a message that your step is being applied to the customization branch. After it's applied, you see the new customization step in the customization branch. You can now apply the customization branch to the main branch or edit it to add more steps.

Extend Dimension

Extend prebuilt dimensions with additional attributes from another data source. For example, you can create a category column that isn't available in the prebuilt dimensions.

You can define a sort order column to control the sorting order of a logical column, especially when the desired sort order doesn't match the natural sort order of the data. This is useful for situations like sorting months in a specific chronological order or sorting descriptive columns based on a code or hierarchy. Refer to Extend Dimension in the Extending section in Recommendations and Tips to Extend the Semantic Model.

  1. In step 1 of the Extend a Dimension wizard, select a schema and table from the database.
  2. Select the columns that you want to expose or use as a key for creating the join, or sort by.
  3. Click in the Display Name table field to enter a new name for the column or to edit an existing one and then click Enter to accept or click Esc to cancel.
  4. In Sort Order Column, select applicable values in Sort Order Column for the columns that you selected to expose or use as a key.
    Ensure that the sort order column is within the same hierarchical level as the display column. For columns not requiring a custom sort, leave the sort order column in the default Select state.
  5. If any of the selected attributes have been removed or modified in the source table since the last refresh, then you see such columns highlighted and a message asking whether you want to update the table. Select OK in the message to reload the source columns. If you want to review the changes to the source columns, then click Cancel in the message, and later click Refresh to reload the source columns.
    If any of the attributes that you haven’t selected have been removed or modified in the source table, then you see the refreshed list of source columns. If any of the custom columns fail validation during the refresh, then you see a message asking you to resolve the cause of failure and revalidate.
  6. Optional: Click Create Column to add another column to your dimension table in the target subject area using these instructions:
    1. In Create Column, enter a display name.
    2. Under Data Elements, search for a data element from the physical table of the selected dimension table.
    3. From the search results, double-click the data element to place it in the text pane.
    4. Under Functions, search for a function to construct a column using expressions. For example, search for functions like "substring" or "concatenate" to construct new expression-based columns. From the search results, double-click the applicable result to add it to the central text pane.
    5. Click Validate, and then click Save.
  7. Click Next.
  8. In step 2 of the wizard, select the join type, and then select the dimension keys to join them with the extended dimension keys. If you want to provide expressions as join conditions, then click Complex Join and in Create Joins, click Add Joins, select the target and source logical tables, enter the join condition as an expression, and click OK.
  9. Click Finish.

Add Derived Columns

Add a derived column to an existing subject area.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to open the Branch page.
  5. On the Branch page, click Add Step.
  6. In Add Step, select Add a Column.
    You see the wizard sequence to add a column.
  7. In step 1 of the wizard, enter a name for your customization step, for example, Regional Revenue and add a brief description.
  8. Select a target subject area to which you want to add the column. For example, Profitability.
    You see the details of the selected subject area.
  9. Select the presentation folder within the selected subject area and the logical table to which you want to add the column.
  10. Click Next.
    You see the Create Column dialog in step 2 of the wizard.
  11. In step 2 of the wizard, define your new column using these instructions:
    1. In Create Column, enter a display name.
    2. Under Data Elements, search for a data element from the subject area that you had selected previously.
    3. From the search results, double-click the data element to place it in the text pane.
    4. Under Functions, search for a function to construct a column using expressions. From the search results, double-click the applicable result to add it to the central text pane. For example, search for functions like "Filter" or "Avg" to construct expression-based columns. A sample expressions to derive the average supplier payment days is avg(ROUND(((CASE WHEN Invoice Received Date is not null THEN (Financials - AP Payments.Payment Date.Payment Date - Invoice Received Date) ELSE (Financials - AP Payments.Payment Date.Payment Date - Financials - AP Invoices.Invoice Date.Invoiced Date) END)/Financials - AP Payments.Facts - Analytics Currency.Total Payment Count),0)).
    5. Click Validate, and then click Save.
  12. Optional: If you want the underlying measure of the column to be calculated to a specific level of a predefined dimensional hierarchy, then complete these steps:
    1. Click the Hierarchy Level-Based Aggregation icon.
    2. In the Hierarchy Level-Based Aggregation dialog, select the dimension, level, and then click OK.
    3. Click Add Dimension to add more dimensions.
  13. Click Next.
  14. Optional: Select additional subject areas to add the fact.
  15. Click Finish.
    You see a message that your step is being applied to the customization branch. After it's applied, you see the new customization step in the customization branch. You can now apply the customization branch to the main branch or edit it to add more steps.

Create Subject Area

You can create a subject area as a container and later add facts and dimensions to your new subject area or create a subject area based on an existing one. The subject area enables you to organize all entities and attributes available for reporting.

  1. On the Semantic Model Extensions page, under Customizations Sandbox, hover over an applicable sandbox to view Actions, and then click View Sandbox.
  2. On the selected sandbox Details page, click Perform Action, and then select Manage Subject Areas.

    Perform Action dialog

  3. In Perform Action, select Create a Subject Area, and then click Next.

    Manage Subject Areas option in Perform Action dialog

  4. In step 1 of the wizard, create a subject area using one of the methods:
    • Select Create a Subject Area to create a subject area container, and provide these details:
      1. Enter a name without any leading or trailing white spaces, add a description, and then click Next.
      2. In step 2 of the wizard, click Add Elements, and then click either New Custom Elements to select custom elements that you created or Pre-built Custom Extensions to select factory data elements to rearrange the subject area elements that are delivered by Oracle.
      3. Click Add Subject Area to select and add data elements from multiple subject areas.
      4. In step 3 of the wizard, organize and rename the data elements in your new subject area, and then click Next.
      5. In step 4 of the wizard, review your new subject area and click Finish to create it.
    • Select Create a Subject Area based on an existing one to create a subject area using an existing one in the system, select an existing subject area, name your subject area, and then click Next. Complete steps 2, 3, and 4 of the wizard.

Modify Subject Area

You can modify custom and prebuilt subject areas. Modify a custom subject area to change the previously selected data elements or add more data elements and modify a prebuilt subject area to add more data elements.

Ensure to create custom elements if you want to add them to the custom subject area and add additional columns to the prebuilt subject area prior to modifying either of them.
  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
  4. On the Semantic Model Extensions page, under Customizations Sandbox, hover over an applicable sandbox to view Actions, and then click View Sandbox.
  5. On the selected sandbox Details page, click Perform Action, and then select Manage Subject Areas.
  6. In Perform Action, select Modify a Subject Area, select a custon or prebuilt subject area that you want to modify, and then click Next.

    Modify a subject area option

  7. In step 1 of the wizard, view the selected subject area details and click Next.
  8. In step 2 of the wizard,
    • If you're modifying a custom subject area, click Add Elements and then click New Custom Elements to select custom elements that you created.
    • If you're modifying a prebuilt subject area, click Add Elements and then click Pre-built Custom Extensions to select the prebuilt elements that you extended.

    Add Elements options

  9. Click Add Subject Area, select a subject area, and click Add to display the elements from the selected subject area under Available Data Elements. Select the elements to add them to the Selected Data Elements list.
  10. Click Finish.

Edit or Delete a Branch Step

As the owner of the branch or an user with the Modeler Administrator role, you can edit a step to modify the details or delete it if it's no longer required. You can delete multiple steps together.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
  4. In the User extensions region, under Customization Branches, click a branch to display the steps.
  5. Hover over a step to view Actions.
  6. Click Edit and update the details.
  7. Click Delete to remove it from the branch.

Reapply a Branch Step

As the owner of a branch or a user with the Modeler Administrator role, you can reapply a failed step after resolving any issues that might have occurred with tables or columns in the autonomous data warehouse.

You can reapply the steps from the Branch details page without opening the steps.
  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to display the steps.
  5. Hover over a step to view Actions.
  6. Click Reapply.

Disable and Enable the Disabled Steps

You can disable and enable the disabled steps in the main and customization branches in the development and production environments. This helps you in troubleshooting issues in the branches.

You can perform these actions on the steps in the User Extensions and Security Configurations regions. You can disable and enable individual steps or select multiple steps using the Manage Steps, Enable, and Disable buttons on the branch details page. You can’t disable a published step.
  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, click Main to view the details.
  5. On the Main branch page, hover over a step to display the options.
  6. Click Disable.
  7. In Confirm Disable Steps, click Disable.
  8. On the Main branch page, click Manage Steps, select the check box for the disabled steps, and then click Enable.
  9. In Confirm Enable Steps, click Enable.
  10. Perform these actions for steps in the customization branches.

Copy Steps from One Branch to Another

Use these instructions to copy steps from a customization branch to another customization branch.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User extensions region, under Customization Branches, click a branch whose steps you want to copy.
  5. On the Branch page, click Manage Steps.
  6. Select the check box for the steps that you want to copy and click Copy.
  7. In Copy Steps, select the target branch to which you want to copy the selected steps and click OK.
    Alternately, you can create a branch using the "Create Branch" option available in the Copy Steps dialog and copy the steps into this new branch in a single action.
    You see a confirmation message that the steps have been successfully copied.

View Details of Failed Branch Steps

You can view the reasons why a branch step had failed and then correct the errors.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User extensions region, under Customization Branches, click the branch with the Failed icon to view the details.
  5. On the Branch page, click the Failed status for a step that has failed and view the error details.

Merge the Customization Branches with the Main Branch

Merge the customization branches with the main branch to use the customization steps as the sequence of steps.

When you edit a branch, the system automatically locks it to prevent another user from simultaneously editing the same branch. As you complete each step or reorder the steps, the system unlocks the branch, saves it, and notes the change in the change log tab.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, hover over a branch to view Actions.
  5. From Actions, click Merge to Main Branch, and then click Ok.
    When a branch gets merged into Main, the other branches go out of synchronization and you must resynchronize them with the Main branch.

Reorder Steps of Customization Branches

You can reorder the steps in a branch that has been applied or is yet to be applied to the main branch.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. In the User Extensions region, under Customization Branches, click a branch to display the steps.
  5. On the Branch page, click Manage Steps.
  6. Select the check box for the steps that you want to reorder and click Reorder.
  7. In Reorder Steps, use the drag handles to drag and drop the steps in the new order that you want, and then click Reorder.

Delete a Main Branch Step

As a modeler administrator, you can delete all steps of a main branch that have been either applied or have failed. With modeler permissions, you can delete only failed steps of a main branch.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
  4. In the User Extensions region, click Main to view the details.
  5. On the Main Branch page, hover over a step to display the options.
  6. Click Delete to remove it from the main branch.

Tag the Main Branch's Steps

You can create tags on the "Applied" steps of the Main branch as a snapshot at a given point in time.

When you have a set of customizations ready for promotion and merged them with the Main branch, you can tag the Main branch's steps with “Applied” status using the Create Tag option for the Main branch or tag any of it's steps with “Applied” status directly on the Main branch detail page using the Tag option. When you tag a step directly on the Main branch details page or include a step while tagging using the Create Tag option for the Main branch, the steps prior to the selected step are included in the tag too. You can untag the tags that you create for the Main branch's steps using the Untag option.

  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click User Extensions.
    You see the main and existing customization branches.
  4. To create a tag for a step in the Main branch, in the User Extensions region, click Create Tag.
  5. In Create a Tag, enter a name for the tag and a description.
  6. Select a merged step that you want to include in this tag.
  7. Click Done.
  8. To tag a step directly, hover over the Main branch to view Actions and then click View Details.
  9. On the Main branch details page, hover over a step to view Actions and then click Tag.
  10. In Create a Tag, enter a name for the tag and a description.
  11. Click Done.
  12. To untag a tag for the Main branch and the step included in the Tag, on the Main branch details page, hover over a step to view Actions and then click Untag.
  13. In Confirm Untag, click Untag.

    Note:

    If there're multiple tags on the same step, then you can select the check boxes for the applicable tags in the Confirm Untag dialog.

Publish Model

You can publish the sandbox in the non-production environments such as development or test to ensure that there are no errors.

While publishing the data model, you can select the user extensions and security configurations that you added as part of customizing the semantic model. If you select the security configurations, then the system applies them on the user extensions that you selected. If the security configurations refer to elements in the model that aren't part of the user extensions, then the system excludes them at the time of publishing the model.
  1. Sign in to your service.
  2. In Oracle NetSuite Analytics Warehouse Console, click Semantic Model Extensions under Application Administration.
  3. On the Semantic Model Extensions page, click Publish Model.
  4. In Publish Model, select a sandbox, select the user extensions and security configurations that you want to publish.

    Note:

    You can publish a specific sandbox or the main sandbox. If you select None - Unpublish custom extensions, the semantic model reverts to factory configuration.

    Publish model dialog

  5. Click Publish.

Load Customization Data to the Autonomous Data Warehouse

You can load your customization data to the autonomous data warehouse provisioned with your Oracle NetSuite Analytics Warehouse instance.

You need the autonomous data warehouse wallet and credentials of the administrator.

  1. Connect to the autonomous data warehouse corresponding to your Oracle NetSuite Analytics Warehouse instance.
  2. Create a custom schema to store the customization data.

    Syntax: create user <custom_schema-name> identified by <custom_schema-password>;

    Example: create user example_schema identified by abcDEF123654;

  3. Create one or more tables in the custom schema that you created.

    Syntax: CREATE TABLE <custom_schema-name>.<custom_extent_table_name> (<parameters>));

    Example: CREATE TABLE example_schema.ABC_EXTN ("DATE" DATE, "CATEGORY" VARCHAR2(1024 BYTE) , "MANAGER" VARCHAR2(1024 BYTE) );

  4. Populate the required data and grant select permissions to the OAX$OAC schema in the autonomous data warehouse using this script:

    Syntax: grant select on <custom_schema-name> to OAX$OAC;

    Example: grant select on example_schema.ABC_EXTN to OAX$OAC;

  5. Commit the changes to the autonomous data warehouse and disconnect.