The following catalog highlights the Chain Templates developed by OneCloud. This catalog provides a summary description for the intended use of each Template, an overview of any Template Variables, and nodes that may require updates when the Template is deployed as a Chain.

Available Templates

Available Solution Examples


Add Missing Columns

This Template is used to add columns to a data file. This was created since certain systems require a set number of columns, even if the field values are blank, but the data file being processed may not have those fields available.

This Template was originally deployed to support loading journals to the interface table of Oracle Financials Cloud but can be used for any integration that requires a fixed number of fields, some of which may be missing from the data file being processed.

Variables

Variable Name

Intended Use

CV_Default Value

Chain Variable that holds the default value to fill in the missing columns added. To insert a blank value, enter two single quotes ('').

DCV_Fields

Dynamic Chain Variable that is used to determine which fields are missing. There is no need to populate this with an initial value.

WSR_Field List

A Workspace Resource that contains the list of all fields expected in the data file. Each field requires a row number as well. The file should be comma delimited whenever possible. The headers required in the file are Name and Row. See example file format below.

Click here to download the Oracle Financials Cloud fields list.

Name,Row
Status Code,1
Ledger ID,2
Effective Date of Transaction,3
Journal Source,4
Journal Category,5
Currency Code,6

Configurable Nodes

  • Advanced Query - Get Fields in Raw Data: Assumes the data file to which fields are being added is comma-delimited. If using a different delimiter, then update the input delimiter.

  • Render Text Template - Create SQL to Add Missing Fields: Can be modified per the Render Text Template - Create SQL to Reorder notes below only if not reordering the output.

  • Render Text Template - Create SQL to Reorder: The Template parameter can be updated to account for any fields that need to be formatted during the query execution in the subsequent Advanced Query Command.

Sample modification for formatting a specific field

This syntax will output the Segment9 field as four digits with leading zeros

{{#if (equal Name "Segment9") }} printf('%04d',[{{Name}}]) as [{{Name}}]{{#unless @last}},{{/unless}} {{else}} Trim([{{Name}}]) as [{{Name}}]{{#unless @last}},{{/unless}} {{/if}}


HFM Data Protection

This Template can be used to create a Chain to extract data from HFM and append it to the data file to be loaded. This allows data to be loaded to HFM for a given Entity, Scenario, Year, and Period using replace without overwriting data manually input or loaded from another source.

Variables

Variable Name

Intended Use

WSV_HFM App Name

This Variable can be created as a Workspace or Chain Variable and should hold the name of the HFM application.

WSV_HFM Dimension Header

This Variable contains a semi-colon delimited string of the HFM dimension names and should include a Data field. See below for an example format.

Scenario;Year;Period;View;Entity;Value;Account;ICP;Custom1;Custom2;Custom3;Custom4;Amount

Configurable Nodes

  • Render Text Template - HFM Extract Parameters (Single Period): The Template parameter needs to be updated for the Custom dimensions in the HFM application. Be sure to use the alias of the custom dimensions if assigned in HFM, otherwise use CustomX where X is the number of the custom dimension.

  • Smart Filter Rows - Data Protection (Single Period): The criteria which will be used to filter the data extracted from HFM needs to be specified. Make sure the column name matches the column name from the dimension header Variable.


Collect GroundRunner Logs

This Template is used to gather the GroundRunner logs, zip them, and email them to the identified recipients. This is useful for OneCloud administrators or power users that do not have access to the OneCloud GroundRunner installation directory but need access to the GroundRunner logs for debugging or support purposes.

As configured, this Template requires the Email BizApp to be configured with a valid Connection. If the Email BizApp is not able to be configured, then the Send Email Command may be replaced with a Command to upload the zipped archive to a cloud or network storage location to which the administrator or power users have access.

Variables

Variable Name

Intended Use

DCV_GR_Root_Directory

Dynamic Chain Variable that is used to store the installation directory of the GroundRunner. There is no need to populate this with an initial value.

DCV_ArchiveName

Dynamic Chain Variable that is used to store the full path to the zipped archive that is created by the Template. There is no need to populate this with an initial value.

CV_Email_From

Chain Variable to store the email address of the user from which the email is sent. This can also be mapped to a Workspace Variable if an existing Variable is in use.

CV_Email_To

Chain variable to store the email addresses to which the zipped archive should be sent. Depending on the SMTP server, this is usually a comma (,) or semi-colon (;) delimited list when specifying multiple email addresses.

CV_Email_CC

Chain variable to store the email addresses that should be carbon copied (CC) on the email containing the zipped archive. Leave this blank if no emails needed to be copied.

CV_Email_BCC

Chain variable to store the email addresses that should be blind carbon copied (BCC) on the email containing the zipped archive. Leave this blank if no emails needed to be blind copied.

CV_Email_Message

Chain Variable used to store the text of the email message body. If no message is needed, this can be left blank. HTML tags can be utilized in the message creation if desired.

📓 If the GroundRunner is deployed to a Windows machine, the email message length must be less than 2048 characters.

Configurable Nodes

  • Email Log: The Subject field can be updated as needed. As noted in the Template description, this node may be replaced by a command that moves the zipped archive to a cloud or network directory if desired.


Enable Disable Chain Execution

This Template allows users that do not have publish rights to a Chain to temporarily disable the Chain execution by creating a "disabled" trigger file for a specific Chain. When used in combination with the Check for Disabled Trigger snippet, Chain execution can be disabled regardless of the enabled and/or scheduled status of the Chain.

In the Chain which has been configured with the Check for Disabled Trigger snippet, when the disabled trigger file is found, the Chain simply exits execution. When a trigger file is not found, then the Chain continues its normal processing.

📓 This Template assumes the use of a GroundRunner since the trigger file is created using the File Utilities BizApp. If using a CloudRunner, the Chain deployed from this Template will need to be reconfigured to utilize a cloud storage technology in which the disabled trigger file can be created.

Variables

Variable Name

Intended Use

DCV_TriggerFilePath

Dynamic Chain Variable that is used to store the full path to the disabled trigger file. There is no need to populate this with an initial value.

WSV_Trigger_Root_Dir

Workspace Variable that specifies the base directory where the disabled trigger will be created. Additional subdirectories are created by the Chain within this directory.

This Variable is also used by the Check for Disabled Trigger Snippet.

Configurable Nodes

  • Runtime Input - Chain State: The Chain Name dropdown field needs to be updated with the name of the Chains for which this process can be utilized. Click the Add Option button to add Chain Names. The Value and Display Name must exactly match the Chain name.

  • Notate the State Specified: This node is optional and can be removed if desired. The Output Text can also be modified as needed.


Delete Less Days

This Template provides a mechanism to systematically purge files from directories that are older than X number of days. This Template is designed to use a Runtime Input for the directory to be maintained (files deleted) as well as specify an optional backup operation with a location.

The Chain created from this Template would be executed by a Run Chain Event or interactively allowing a user to specify the directory to be purged.

📓 This Template assumes the use of a GroundRunner since CloudRunner directories are not accessible. When enabling the backup option, the backup location must be on the same drive to which the GroundRunner is deployed.

Variables

Variable Name

Intended Use

DCV_Processing Subdirectory Name

Dynamic Chain Variable that is used to derive the processing subdirectory that will be created when the backup option is enabled. There is no need to populate this with an initial value.

Configurable Nodes

  • Set Dynamic Chain Variable - Processing Subdirectory: The Dynamic Chain Variable used to specify the processing subdirectory is defined by this Event. By default, the folder is named archive_YYYYMMDD_HHMMSS but this value can be modified as needed to align to organizational standards.

  • Conditional - Is File Older than X Days - This Conditional is used to evaluate if the object being processed is more than X (default = 30) days older than the current system date and time AND is also a file and not a subdirectory. The System.DateTime Variable in the first condition utilizes Variable transformation to specify the number of days after which a file should be archived/deleted. This can be changed as needed simply by clicking the System.DateTime Variable and adjusting the Amount and/or Unit fields. Do not change the operation (subtract). All other settings of the conditional should not be changed.

  • Zip Processing Directory: This Command is optional and can be removed if desired; however, the subsequent Delete Processing Directory Command should also be removed if this Command is removed otherwise the backup will be deleted.

  • Delete Processing Directory - This Command works in concert with the Zip Processing Directory Command to save disk space on the backup destination. This Command is optional and can be removed if desired. Please note, if the Zip Command is removed, this Command should also be removed otherwise the file backups will be deleted.


Get Anaplan Workspace and Model Information

This Template is used to show how the Anaplan BizApp Commands List Workspaces and List Models can be used to retrieve the Anaplan Workspace or Model ID based on the object name.

This Template shows several different approaches for retrieving the Anaplan ID from the Workspace/Model. Each method is highlighted to illustrate platform capability. The approach that is appropriate for a particular use case will depend on the requirements. In the event that a single ID needs to be retrieved for an Anaplan component, the Handlebars Render Text Template Command would be preferred while a need to retrieve multiple IDs based on some filtering criteria would dictate that the JSON to CSV Command is more appropriate.

Please feel free to utilize any of the methods highlighted in this Template as needed and remove those that are not needed.

This Template also illustrates how to retrieve the Anaplan Workspace size and generate email notification alerts when the size exceeds certain thresholds. This capability is enabled with the Advanced Query - Check Workspace Size Usage Command.

Variables

Variable Name

Intended Use

WSV_Anaplan Workspace Name

Workspace Variable that specifies the Anaplan Workspace Name for which the ID needs to be retrieved. This is used in the Array to CSV - Anaplan Workspace Command.

WSV_Anaplan Model Name

Workspace Variable that specifies the Anaplan Model Name for which the ID needs to be retrieved. This is used in the Array to CSV - Anaplan Model ID Command.

WSV_Anaplan Workspace Size Allowance (GB)

Workspace Variable that specifies the Anaplan Workspace Size Allowance. This should be input in gigabytes (GB) and is used in the Advanced Query - Check Workspace Size Usage Command to create alerts when Workspace utilization is nearing the allowance.

Configurable Nodes

  • Advanced Query - Check Workspace Size Usage: This Command is used to calculate the percentage of the Workspace allowance in use across all models relative to the Anaplan license. A notification can be added to this Command to send alerts when the Command result is in a Warning state. The Warning state is controlled by the Dynamic Output utilized in the Output Interpretation on the Error Handling section of the Command. The thresholds can be adjusted in the Query parameter of the Command.

  • Array to CSV - Anaplan Workspace: This Command can be modified to retrieve additional elements from the JSON output of the List Workspaces Command by updating the Columns parameter section. Do not remove the id or size columns!

  • Array to CSV - Anaplan Model ID: This Command can be modified to retrieve additional elements from the JSON output of the List Models Command by updating the Columns parameter section. Do not remove the id column!


Get & Set Anaplan Current Periods

This template illustrates how to set the current time period in Anaplan based on end user input when the Chain is run.

This Template shows the power of Runtime Inputs, Handlebars, Variable transformation, and iteration as well as the native functionality of the Anaplan BizApp.

The Template includes Commands to show the Period value in the Anaplan model before and after the update. These are optional and can be removed if desired; however, it is recommended that they be preserved as an audit mechanism.

Variables

Variable Name

Intended Use

WSV_Anaplan Workspace ID

Workspace Variable that specifies the Anaplan Workspace ID for which the date needs to be updated. This is used in the Get Current Period - Before Update, Set Current Period, and Get Current Period - After Update Commands.

WSV_Anaplan Model IDs

Workspace Variable that specifies a comma-delimited list of the Anaplan Model IDs for which the date needs to be updated. The list should not include any spaces before or after the comma. The list of IDs is transformed into a JSON array that is used to iterate (loop) over each of the models to update the current date. This Variable is used in the Render Text Template - Parse Model IDs Command.

Configurable Nodes

  • Runtme Input - Set Current Period: This Event is used to prompt the user for the current month and year that will be used to set the current date in Anaplan. This Event is configured to account for leap years and as such the Values for the Current Period (e.g., 01-01, 02-01, 03-01, etc) should not be modified as this will impact the logic in the Render Text Template - Last day of the month node. The Default, Min, and Max Values for the Current Year input can be adjusted as needed to align to the Anaplan deployment.

Optional Removable Nodes

  • Get Current Period - Before Update: This Command is retrieve the current Anaplan date setting prior to the update performed by the Chain. This is an optional step that is useful for audit history but not required for the Chain to execute.

  • Render Text Template - Preview Current Date before Update: If the Get Current Period - Before Update Command is removed, this Command must also be removed.

  • Get Current Period - After Update: This Command is retrieve the Anaplan date setting after the update performed by the Chain. This is an optional step that is useful for verification and audit history purposes but not required for the Chain to execute.

  • Render Text Template - Preview Current Date after Update: If the Get Current Period - After Update Command is removed, this Command must also be removed.


Keep Anaplan Model Alive

This template illustrates how to keep one or more Anaplan models loaded into memory (alive) by running a blank Anaplan Process. The invocation of the process ensures that the model is loaded into memory.

This Template shows the power of Handlebars, Variable transformation, and iteration as well as the native functionality of the Anaplan BizApp.

📓 To schedule the Chain created from this Template, another Chain should be created that uses a Run Chain Event and that Chain can be scheduled.

Variables

Variable Name

Intended Use

WSV_Anaplan Workspace ID

Workspace Variable that specifies the Anaplan Workspace ID in which models need to be kept alive. This is used in the Run Export Process - Keep Alive (Select) and Run Process - Keep Alive (All) Commands.

WSV_Anaplan Model IDs

Workspace Variable that specifies a comma-delimited list of the Anaplan Model IDs for which the date needs to be updated. The list should not include any spaces before or after the comma. The list of IDs is transformed into a JSON array that is used to iterate (loop) over each of the models to update the current date. This Variable is used in the Render Text Template - Parse Model IDs Command.

CV_Anaplan Process Name

Chain Variable that specifies the name of the Anaplan Process Name that can be invoked to keep a model alive. This Variable is used in the Run Export Process - Keep Alive (Select) and Run Process - Keep Alive (All) Commands.

Configurable Nodes

  • Runtime Inputs - All or Select Models: This Runtime Input should not be changed or removed; however, the Display Name, Description, and Default Value settings can be modified as desired.

  • Render Text Template - Model Information [All or Select]: These Commands are used to display information about the model being processed within the iteration. These Commands are optional and can be removed if desired or configured to return different model information.


Set Anaplan Dates in Multiple Time Zones

This Template is used to illustrate how to dynamically derive an Anaplan loadable date format across different time zones.

This Template shows the power of Handlebars and Variable transformation as well as the native functionality of the Anaplan BizApp.

This Template illustrates how to invoke an Anaplan Import Action or Process after the date file is uploaded as an Import Data Source. Depending on the specific requirements of the organization, at least one of these Commands should be removed as necessary. For example, if an Anaplan process exists that invokes multiple actions, then the Import Action would be removed from the Chain created by this Template.

Variables

Variable Name

Intended Use

WSV_Anaplan Workspace

Workspace Variable that specifies the Anaplan Workspace ID for which the date needs to be updated. This is used in the Upload File - Date File, Run Import Action - Set Dates, and Run Process - Anaplan Dates Commands.

WSV_Anaplan Model

Workspace Variable that specifies the Anaplan Model ID for which the date needs to be updated. This is used in the Upload File - Date File, Run Import Action - Set Dates, and Run Process - Anaplan Dates Commands.

CV_Anaplan File Name

Chain Variable that specifies the name of the file to be created on the Anaplan server when uploading. This is used in the Upload File - Date File Command.

CV_Anaplan Import Action/Process

Chain Variable that specifies the Anaplan Import Action OR Process that needs to be run after for which the date needs to be updated. This is used in the Run Import Action - Set Dates, and Run Process - Anaplan Dates Commands.

Configurable Nodes

  • Render Text Template - Generate Dates: This Command is used to derive the date in YYY-MM-DD format across different time zones using Integration Studio Runtime Variables (Chain.ExecutionDateTime) in concert with Variable Transformation. The result is used to create a data load file that is uploaded to an Anaplan Import Data Source. Time zones can be added or removed as needed. If the Template input is modified to add or remove time zones, be sure to update the Variables input of this Command as well.


Dynamic Iteration

This example solution illustrates how to create an iteration that utilizes a range of values. This mimics a for x = 1 to some_value approach.

This snippet can be used whenever the iteration can be bound by a numeric range but the upper limit is subject to change. For example, when using the HTTP BizApp and using the GET Command the response may contain multiple pages of data where OneCloud needs to iterate over the response to get all of the data.

Variables

Variable Name

Intended Use

WSR_DummyFile

This Template variable can be mapped to a delimited file Workspace resource which can be loaded in the Tabular Transformation BizApp Advanced Query Command. The contents of this file are irrelevant as the Command uses recursive SQL to produce a range of numbers for the iteration regardless of the contents of the table produced by the Advanced Query Command.

DCV_MaxValue

This Template Variable can be mapped to a Dynamic Chain Variable. The Set Dynamic Chain Variable Event would need to be added to the Chain to populate the max value if mapping to a Dynamic Chain Variable.

Configurable Nodes

  • GET - Sample HTTP Data Retrieval: This Command can be removed and replaced by any Commands that need to use the numeric value of the iteration loop. Take note of the Variable Transformation assigned to the JSON File Iteration in the Query String parameter. This provides an overview of how the iteration numeric value is applied in a Command.


Check for Disabled Trigger

This example solution is used to show how a Chain execution can be disabled dynamically without needing to adjust or disable the Chain schedule or Enable Chain settings. The snippet looks for a file that indicates that the Chain execution should be disabled.

When the trigger file is found, a note is added to the Chain execution history, and the Chain exits.

When the trigger file is not found, the remaining Commands in the Chain are executed as created.

Variables

Variable Name

Intended Use

WSV_Trigger_Root_Dir

Workspace Variable that specifies the base directory where the disabled trigger will be created. This Variable is also used by the Enable-Disable Chain Execution Template.

CV_Result Text

Chain Variable used to store the Chain Result Text that is added to the Chain execution when the Chain is exited because the Disabled trigger file is found. This

Configurable Nodes

  • Notate that the Chain is disabled: This Command can be removed if notation of the Chain being exited is not desired. Please note, if this Command is removed, the link from the Disable flag found? Conditional to the replacement Command must be for a failure (red) state. If this Command is removed, the CV_Result Text Variable can be removed from the Chain as well.

  • Set Chain Result for disabled execution: The Condition specified in this Event can be updated as required by customer requirements.

  • REMOVE ME: This is a placeholder node. This Command should be removed when the snippet is deployed and the Chain Commands that need to be executed when the Chain is not disabled should replace this Command. Please note, the link from the Disable flag found? Conditional to the replacement Command must be for a success (green) state. This Command and its subsequent Commands will execute when the disabled flag is not found.


Variables from a File Resource

This example is used to show how data can be stored as a Workspace File Resource and accessed via a OneCloud Chain.

In this example, the Template utilizes a Resource that has two columns - Key and Value. Each row of the Resource specifies a given key and its associated value.

The Template illustrates how this Resource is transformed into a JSON object using the CSV to JSON Command and then each of the branches shows different ways to access the data in the JSON object.

Variables

Variable Name

Intended Use

WSR_Variables

Workspace Resource that stores the information that needs to be accessed via a OneCloud Clain.

Sample Resource file for Testing:

Key,Value
Company,OneCloud
Location,New York City

Configurable Nodes

Each node in this example can be modified as needed. Be sure to review the Command description for important information about the configuration of each Command.


Derive Anaplan Workspace & Model ID for use in Anaplan Commands

This solution example illustrates how to use the List Workspaces and List Models Anaplan Commands to retrieve the Workspace and Model ID based on the name of the Anaplan Workspace and Model. The Workspace and Model IDs can be used in subsequent Anaplan Commands.

Variables

Variable Name

Intended Use

WSV_Anaplan Workspace Name

Workspace Variable that specifies the Anaplan Workspace Name for which the ID needs to be retrieved. This is used in the Array to CSV - Anaplan Workspace Command.

WSV_Anaplan Model Name

Workspace Variable that specifies the Anaplan Model Name for which the ID needs to be retrieved. This is used in the Array to CSV - Anaplan Model ID Command.

Configurable Nodes

  • List Processes: This is a sample Anaplan Command that shows how to use the Workspace and Model IDs that are derived from the Workspace and Model names specified. This Command can be removed as needed but make note of the Outputs used in the Workspace and Model inputs.

Did this answer your question?