06-14-2023 08:25 AM
Hi,
We are trying to automate the File-based Import data, Validate data, and Load data to the cube process using the business rule. So, could you please let me know how I can procced as I am new to the business rules in OneStream?
Thanks
06-14-2023 08:48 AM
You should have a look at this code : https://community.onestreamsoftware.com/t5/Accepted-Code-Samples/Extender-Automate-Import-Validate-L...
'Set Processing Switches
Dim valTransform As Boolean = True
Dim valIntersect As Boolean = True
Dim loadCube As Boolean = True
Dim processCube As Boolean = False
Dim confirm As Boolean = False
Dim autoCertify As Boolean = False
Dim scenario As String = "Actual"
Dim timeperiod As String = "2017M3"
'Execute Batch
Dim batchInfo As WorkflowBatchFileCollection = BRAPi.Utilities.ExecuteFileHarvestBatch(si, scenario, timeperiod, valTransform, valIntersect, loadCube, processCube, confirm, autoCertify, False)
I would like to point at you that there is a solution that can also use the Task Scheduler - not the vanilla one, but an advanced version of it. Have a look at it, it is called the data import shedule manager :
https://solutionexchange.onestream.com/dashboard/home/browse
If it helps, please give a kuddo.
Thanks
08-10-2023 12:02 PM
Does it really work? How do we point to the workflow we want to execute? I tried this by opening the chosen workflow and no result after business rule execution.
I found in another topic that there is a formula BRApi.Import.Process.ExecuteParseAndTransform(), but I do not know how to define the source.
>>> Solved: Automating WF Execution - OneStream Community (onestreamsoftware.com)
08-10-2023 12:35 PM
Dim wfClusterPkBig As WorkflowUnitClusterPk = BRApi.Workflow.General.GetWorkflowUnitClusterPk(si, "WorkflowName", "Actual", "2023M1")
Dim wfClusterPk As WorkflowUnitClusterPk = BRApi.Workflow.General.GetWorkflowUnitClusterPk(si, "WorkflowName.Import", "Actual", "2023M1")
BRApi.Import.Process.ExecuteParseAndTransform(si, wfClusterPk, "DataSourceNameYouCanFindInOneStreamApplication", Nothing, TransformLoadMethodTypes.Replace, SourceDataOriginTypes.FromDirectConnection, False)
BRApi.Import.Process.ExecuteRetransform(si, wfClusterPk)
BRApi.Import.Process.ValidateTransformation(si, wfClusterPk, True)
BRApi.Import.Process.ValidateIntersections(si, wfClusterPk, True)
BRApi.Import.Process.LoadCube(si, wfClusterPk)
BRApi.Workflow.Status.GetWorkflowStatus(si, wfClusterPk, True)
BRApi.DataQuality.Process.StartProcessCube(si, wfClusterPkBig, stepClassificationTypes.ProcessCube, True)
My solution for a part of the problem (it works in case we defined Connector, not sure how to import files)
08-25-2023 04:17 AM
Hey, did you manage to solve this? I have the same wonder. All seems to work unless the Path= for source file.
08-25-2023 04:53 AM
Manage to find my issue. sourcedataorigintypes syntax was wrong.
06-14-2023 09:54 AM
I would rather use the API to do this vs. the Harvest file. If you use the search feature on the forum (search for automate workflow), you should see numerous topics with solutions to this same question.