Business Rules for new OS implementation
Hi, we are implementing OS at present, and this is our first-ever project in OneStream; I need guidance on Business Rules. I am not sure what business rules we need to consider after and before we import the data from the Client system to match the client's legacy system data with OneStream numbers. Thanks, Preeti37Views0likes2Commentsperformance issue.
Hello OneStream Community, I am working with a Cube View where I need to display the Income Statement data for the end of every year (December). The data should show up as the beginning balance for the January month in the subsequent year. To achieve this, I used a Row Override1 member filter with the formula T#povprioryearm12. The Cube View includes four dimensions: Entity, Division, Cost Center, and Accounts. However, I am experiencing slow loading times when the view is being accessed. it is not exporting to Excel to validate. I would like to know if there are any best practices or strategies for improving the performance of the Cube View in this scenario. Are there specific optimizations I should consider for the member filter, the dimensions, or the Cube View configuration to reduce loading times? Any advice or recommendations would be greatly appreciated! Thank you in advance!18Views0likes1CommentData Quality Event Handler Rule
Hello, I recently had help modifying a rule so it would only run once for a multi year scenario, now I am having an issue trying to run the rule on other scenarios. How would I tell this rule to ignore the time condition for the budget scenario. The data management job set up on the workflow profile won't currently run due to line of code added: ' NEW CHECK TO ONLY RUN ON THE START YEAR OF WF RANGE TIME. If I remove it, then the calculation doesn't work for my forecast scenario properly. I basically somehow need to tell it to ignore that line for the budget scenario. Below is the full code. Public Function Main(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As Object, ByVal args As DataQualityEventHandlerArgs) As Object Try 'Define a switch to control event processing, since many of these are reference examples we do not want them to run all the time Dim processEvents As Boolean = False 'Set the default return values Dim returnValue As Object = args.DefaultReturnValue args.UseReturnValueFromBusinessRule = False args.Cancel = False 'Evaluate the operation type in order to determine which subroutine to process Select Case args.OperationName Case Is = BREventOperationType.DataQuality.ProcessCube.NoCalculate 'Execute a Data Management job after process cube runs Me.XFR_HandleProcessCubeNoCalculate(si, globals, api, args) 'Case Is = BREventOperationType.DataQuality.Certify.FinalizeSetCertifyState 'Send an email after a workflow profile executes its certification 'Me.XFR_HandleFinalizeSetCertifyState(si, globals, api, args) End Select Return returnValue Catch ex As Exception Throw ErrorHandler.LogWrite(si, New XFException(si, ex)) End Try End Function #Region "ProcessCube.NoCalculate Helpers" Private Sub XFR_HandleProcessCubeNoCalculate(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As Object, ByVal args As DataQualityEventHandlerArgs) '------------------------------------------------------------------------------------------------------------ 'Reference Code: XFR_HandleProcessCubeNoCalculate ' 'Description: Run a DataMgmt Sequence after the workflow process cube task is run. ' Note: the DataMgmt sequence name is assigned to a Workflow Profile CalcDef filter field ' so this event does not have to be modified, the user can simply edit the CalcDef grid ' for a workflow profile and this business rule will execucte the specified sequence. ' 'Usage: Used to supplement the standard "ProcessCube" functionality associated with a ' workflow profile by allowing a DataManagement sequence to be executed for the workflow profile ' as well. ' 'Created By: Tom Shea 'Date Created: 1-30-2013 '------------------------------------------------------------------------------------------------------------ Try 'Get the DataUnitInfo from the Event arguaments so that we can get the name of the DataManagement sequence to process. Dim calcInfo As DataUnitInfo = DirectCast(args.Inputs(2), DataUnitInfo) If Not calcInfo Is Nothing Then 'Make sure that a Sequence name as assigned to the filter value of the Calc Definition of the executing Workflow Profile If calcInfo.FilterValue <> String.Empty Then ' NEW CHECK TO ONLY RUN ON THE START YEAR OF WF RANGE TIME If timedimhelper.GetYearFromId(calcInfo.DataUnitIds.TimeId).Equals(timedimhelper.GetYearFromId(brapi.Finance.Scenario.GetWorkflowStartTime(si,calcInfo.DataUnitIds.ScenarioId))) 'Now, execute the DataMgmt Sequence that was specified in the FilterValue (In a background thread) BRApi.Utilities.ExecuteDataMgmtSequence(si, calcInfo.FilterValue, Nothing) End If End If End If Catch ex As Exception Throw ErrorHandler.LogWrite(si, New XFException(si, ex)) End Try End Sub #End Region End Class End Namespace Any help would be greatly appreciated. Thank you!23Views0likes1CommentPassing parameters from a user defined workspace to a DM process and Business Rule
When creating a dashboard in the default workspace you are able to pass dashboard parameter values to the data management sequence through the parameter section of the execution script: You can also use an Input Value parameter and create an extender process to populate the Input Value and then retrieve that value for a DM sequence or BR. However, when using user defined workspaces, I have only been able to successfully pass parameter values from a dashboard using a literal value (process on combo box executes a rule to populate a literal value with the most recent user selection, literal value is read by DM and BR processes). The issue with this literal value process is that the value is left at the value from the last execution of combo box selection so it requires the user to change the value to some other value, then reset the value to ensure the literal value has a valid stored value. Additionally, this process if being used by multiple users, may cause confusion if two users are changing combo boxes thus resetting literal values without knowing that the other users is changing the value. Is there no other way to reference user defined workspace parameter values like in the argument selections in the Server Task settings? I have seen some instances where the workspace ID can be referenced, however I don't see an examples of using some type of similar format for parameters (e.g. WorkspaceID.|!SomeParameter!|).27Views0likes0CommentsError saving a data buffer in Custom Calculate
Hi Community, I try to save a simple data buffer within a Custom Calculate and receive a cryptic error message. Dim sourceDataBuffer1 As New DataBuffer sourceDataBuffer1 = api.Data.GetDataBufferUsingFormula("FilterMembers(C#Local,UD8#None)") sourceDataBuffer1.LogDataBuffer(api,"sourceDataBuffer1",100) Dim resultDataBuffer1 As DataBuffer = New DataBuffer() For Each cell As DataBufferCell In sourceDataBuffer1.DataBufferCells.Values Dim sCell As New DataBufferCell(cell) api.LogMessage(sCell.DataBufferCellPk.GetMemberScript(api)) resultDataBuffer1.SetCell(api.SI, sCell, True) Exit For Next resultDataBuffer1.LogDataBuffer(api,"resultDataBuffer1",100) api.Data.SetDataBuffer(resultDataBuffer1, api.Data.GetExpressionDestinationInfo(String.Empty)) When I start the Custom Calculate from data management, I select a base entity and C#Local, scenario and time. The code will write a log with an usual POV of the cell without common members (line 7) and also log the restultdatabuffer1 with 1 cell (line 11). But running into line 12 will cause the error. Summary and description only show "Error processing script ''." without further details. Summary: Error processing script ''. ---------------------------------------- Description: Error processing script ''. [...] ---------------------------------------- Exception Type: XFException Thread Id: 249 Message: Error processing script ''. Source code: line 0, method SetDataBuffer ---------------------------------------- Exception Type: XFException Thread Id: 249 Source code: line 0, method SetDataBuffer ---------------------------------------- Exception Type: XFException Thread Id: 249 Source code: line 0, method SetDataCells ---------------------------------------- Exception Type: XFException Thread Id: 249 Source code: line 0, method SetDataCell ---------------------------------------- Exception Type: XFException Thread Id: 249 Source code: line 0, method SetData ---------------------------------------- Exception Type: XFException Thread Id: 249 Source code: line 0, method DetermineInputView Within a regular calculation script, the data buffer will be saved correctly. Any idea what the issues could be? Thanks, MarcusSolved67Views0likes4Commentscashflow statement : Condition in the mapping of accounts
Hello OS community, I am currently developing my Cash Flow Statement and I want to add a condition for a loan account. If it has a positive balance in the Working Capital Requirement variation flow, I want to map it under one CFS table. However, if it has a negative balance, I want to map it under a different CFS table. How can I implement this condition in my Cash Flow Statement?184Views0likes3CommentsIs that posible to export Task Activity or Error Logs with business rule?
Hi Team, I am wondering is that posible to export Error Logs or Task Activity with business rule? I know we can extract data from cubes or dimensions using BRApi methods, but is there a similar approach that allows us to export Error Logs or Task Activity? If so, what methods or steps are needed to achieve this?505Views0likes3CommentsPerformance issue with Cubeview
Hi Team, I need to parameterize my Cubeview where I need to sum two flow member data and show it in my Cubeview , For which i need to write a rule in that rule I have to create a temporary variable member (Total) which doesn't exist in our flow hierarchy which will contain sum of our flow member (RFX_Input + UFX_Input) data, and this Total variable member we have to parameterize and so that when Cubeview runs it'll show me the total value of (RFX_input + UFX_input) into my Cubeview. Please help me to guide how to write this rule logic. We have tried creating it as a parameter with getcelldata but the cubeview does not render and timesout.Solved1.5KViews0likes10Comments