Announcement
ABCRecent Activity
How do I clean a scenario before copying data from another scenario? in the member formula.
Hi Everyone. I want to copy the information from one scenario to another. Currently, I’m using the member formula of the target scenario to transfer the data. However, I first apply a calculate to set the values to zero, followed by a clecarcalculateddata to properly remove the existing information. The issue is that after this step, the copy process doesn’t execute, and the scenario remains with zero values. My code is as follows: api.Data.calculate("S#FORECAST_" & monthNumber & "_AT_CY_BUDGET_RATE = 0*(S#FORECAST_" & monthNumber & "_AT_CY_BUDGET_RATE)",True) api.Data.ClearCalculatedData("S#FORECAST_" & monthNumber & "_AT_CY_BUDGET_RATE",True,True,True,True) Dim destinationInfo As ExpressionDestinationInfo = api.Data.GetExpressionDestinationInfo("S#FORECAST_" & monthNumber & "_AT_CY_BUDGET_RATE") '' Create new Databuffer for the results Dim resultDataBuffer As New DataBuffer 'Base Entity at Local If Not api.Entity.HasChildren And api.Cons.IsLocalCurrencyForEntity() Then BRapi.ErrorLog.LogMessage(si,"Validate 1") ' Get Databuffer from the account and scenario Dim sourceDataBuffer As DataBuffer = api.data.GetDataBufferUsingFormula("RemoveZeros(FilterMembers(S#[Forecast " & TimeName & "],[A#Root.Base]))", , False) ' Verificar si hay celdas con datos If sourceDataBuffer.DataBufferCells.Count > 0 Then BRapi.ErrorLog.LogMessage(si,"Validate 2") For Each sourceCell As DataBufferCell In sourceDataBuffer.DataBufferCells.Values If (Not sourceCell.CellStatus.IsNoData) And (sourceCell.CellAmount <> 0.0) Then BRapi.ErrorLog.LogMessage(si,"Validate 3") Dim resultCell As New DataBufferCell(sourceCell) resultCell.DataBufferCellPk.OriginId = DimConstants.Import resultDataBuffer.SetCell(si, resultCell, True) End If Next api.Data.SetDataBuffer(resultDataBuffer, destinationInfo,,,,,,,,,,,,,False) End If End If I would appreciate your help in understanding why the values are not being copied. The process is executed when I consolidate the information.Marco5 hours agoContributor II6Views0likes0CommentsCube View Comments
Hello All, I have a cube view in which i am using on the Row Level a GetDataCell Function, example GetDataCell(Account1+ Account2): Name (Trade). on the column level i have a Comment using the V#Annotation:Name(Comments). however, on the GetDataCell the Comment is highlighted in Green. is there a way to be able to allow the user to write a comment on row that contains a GetDataCell function?ZAH6 hours agoNew Contributor3.5KViews0likes5CommentsIs there an example of using System.Reflection namespace with OneStream APIs
I'm driving myself a little crazy at the moment. Sometime in the last few days, I stumbled across a Community Post (I think) about how to use System.Reflection to programmatically list OneStream API object methods, overloads, parameters, etc. At the time I saw it, I thought "Oh, that's cool!" and remembered that if I needed to find it again, I just needed to search for "Reflection" in community posts. Well, for the life of me, I can't find the post again. Does anyone know of a post that describes how to use System.Reflection's methods, like GetMethods on OneStream API objects? I know I'm being lazy and could work out the code myself, but what I read had already worked out the BindingFlags and other parameters on the calls that were specific to OneStream.KurtMayer9 hours agoContributor5Views0likes0CommentsKeep freeze panes with excel book
Originally posted by Chris Matthews We are able to freeze panes with a cube view export straight to excel but when the same cube view is used in a book the freeze panes is lost. Is there a setting or way to keep the freeze panes?OSAdmin9 hours agoValued Contributor II1.5KViews3likes4CommentsGenesis Replay Now Available!
1 MIN READ On this episode of Tech Talks, Jacqui Slone and Doug Kinchley join Matt Kerslake to discuss OneStream Genesis. Join them and learn how Genesis is unlocking new possibilities for finance teams to click-to-configure new financial and operational models, launch new planning processes, and enhance reporting and analysis with ease. This replay will be available here until July 18th and always available on Navigator as part of your Passport subscription.mkerslake9 hours agoContributor23Views1like0CommentsIs there guidance on the setting for the number of parallel executions for Harvest Batch Loads?
When using the BRAPi.Utilities.ExecuteFileHarvestBatchParallel function in an Extender BR, does anyone have any guidance and/or opinions on the proper setting of the parallelBatchCount parameter? My understanding has always been to set it to a maximum of the number of CPUs - 1 , available for the server performing data management or batch load processing.3Views0likes0CommentsRow Formula is overring Ud8 Calc
Hi Team, In our report we are having multiple formula's in row and columns (Can't apply the row or column overrides). So, have created a UD8 Dynamic calc. though after applying the UD8 member in column, row formula is overring the UD8. Can please help us to resolve the issue.ShivaPrasad11 hours agoNew Contributor III8Views1like2CommentsWorkflow Certified Status with User Details
Hi Team, We have a requirement like, Finance team wants to have one report with the details of Workflow Status, who certified the respective entity (name of the user) along with certification time stamp. used the below Dash Board data set rule. followed the below steps to get the grid view Attached the Business rule to Data Adapter Attached the Data Adapter to BI Viewer. But here i am getting two certified status for the entity. we need the latest certified status. can you please help us to resolve this. Imports System Imports System.Collections.Generic Imports System.Data Imports System.Data.Common Imports System.Globalization Imports System.IO Imports System.Linq Imports Microsoft.VisualBasic Imports OneStream.Finance.Database Imports OneStream.Finance.Engine Imports OneStream.Shared.Common Imports OneStream.Shared.Database Imports OneStream.Shared.Engine Imports OneStream.Shared.Wcf Imports OneStream.Stage.Database Imports OneStream.Stage.Engine Namespace OneStream.BusinessRule.DashboardDataSet.WF_Certification_Status Public Class MainClass Public Function Main(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As Object, ByVal args As DashboardDataSetArgs) As Object Try Select Case args.FunctionType Case Is = DashboardDataSetFunctionType.GetDataSetNames Dim DSnames As New List(Of String)() DSnames.Add("GetWFStatusandCertificationF") Return DSnames Case Is = DashboardDataSetFunctionType.GetDataSet If args.DataSetName.XFEqualsIgnoreCase("GetWFStatusandCertificationF") Then Return GetWFStatusandCertificationF(si, args) End If End Select Return Nothing Catch ex As Exception Throw ErrorHandler.LogWrite(si, New XFException(si, ex)) End Try End Function Private Function GetWFStatusandCertificationF(ByVal si As SessionInfo, ByVal args As DashboardDataSetArgs) As DataTable Dim WFTable As New DataTable("WFSTATUS") Dim CertTable2 As New DataTable("WFCertSTATUS2") Dim CombinedTable As New DataTable("CombinedWFandCertStatus") CombinedTable.Columns.Add("ProfileKey") CombinedTable.Columns.Add("ProfileName") CombinedTable.Columns.Add("ScenarioName") CombinedTable.Columns.Add("TimeName") CombinedTable.Columns.Add("StatusText") CombinedTable.Columns.Add("LastExecutedStepStatus") CombinedTable.Columns.Add("LastExecutedStepTimeUTC") CombinedTable.Columns.Add("LastExecutedStepTimeEST") CombinedTable.Columns.Add("SignOffState") CombinedTable.Columns.Add("UserName") CombinedTable.Columns.Add("TimeStamp") Dim WFName As String = "ASIA" Dim WFScenario As String = "Actual" Dim WFTime As String = "2025M1" Dim methodTypeId As String = XFCommandMethodTypeId.WorkflowStatus Dim resultDataTableName As String = "WFSTATUS" Dim methodQuery As String Dim customSubVars As New Dictionary(Of String, String) brapi.ErrorLog.LogMessage(si,"1") methodQuery = "{" & WFName & "}{" & WFScenario & "}{" & WFTime & "}{AllProfiles}{Descendants}{ProfileName like '*.Confirm*'}" 'methodQuery = "{" & WFName & "}{" & WFScenario & "}{" & WFTime & "}{'%Confirm_Certify'}{Descendants}{ProfileName like '*.Confirm*'}" Using dbConnApp As DBConnInfo = BRApi.Database.CreateApplicationDbConnInfo(si) WFTable.Columns.Add("ProfileKey") WFTable.Columns.Add("ProfileName") WFTable.Columns.Add("ScenarioName") WFTable.Columns.Add("TimeName") WFTable.Columns.Add("StatusText") WFTable.Columns.Add("LastExecutedStepStatus") WFTable.Columns.Add("LastExecutedStepTimeUTC") WFTable.Columns.Add("LastExecutedStepTimeEST") Dim objDataSet As DataSet = BRApi.Database.ExecuteMethodCommand(dbConnApp, methodTypeId, methodQuery, resultDataTableName, customSubVars) 'Dim FilterData As Datarow() = WFTable.Select("ProfileKey", "ProfileName","ScenarioName", "TimeName", "StatusText", "LastExecutedStepStatus","LastExecutedStepTimeUTC","LastExecutedStepTimeEST Desc") For Each row As DataRow In objDataSet.Tables("WFSTATUS").Rows WFTable.Rows.Add(row.Item("ProfileKey"), row.Item("ProfileName"), row.Item("ScenarioName"), row.Item("TimeName"), row.Item("StatusText"), row.Item("LastExecutedStepStatus"), row.Item("LastExecutedStepTime"), row.Item("LastExecutedStepTime")) Next ' For Each row As DataRow In FilterData ' WFTable.Rows.Add(row.Item("ProfileKey"), row.Item("ProfileName"), row.Item("ScenarioName"), row.Item("TimeName"), row.Item("StatusText"), row.Item("LastExecutedStepStatus"), row.Item("LastExecutedStepTime"), row.Item("LastExecutedStepTime")) ' Next End Using brapi.ErrorLog.LogMessage(si,"2") methodTypeId = XFCommandMethodTypeId.CertificationForWorkflowUnit methodQuery = "{" & WFName & "}" & "{" & WFScenario & "}" & "{" & WFTime & "}" & "{True}" & "{}" Using DBConnAppForCert2 As DbConnInfo = BRApi.Database.CreateApplicationDbConnInfo(si) CertTable2.Columns.Add("ProfileKey") CertTable2.Columns.Add("ScenarioKey") CertTable2.Columns.Add("TimeKey") CertTable2.Columns.Add("SignOffState") CertTable2.Columns.Add("UserName") CertTable2.Columns.Add("TimeStamp") Dim objDataSet As DataSet = BRApi.Database.ExecuteMethodCommand(DBConnAppForCert2, methodTypeId, methodQuery, "WFCertSTATUS2", customSubVars) For Each row As DataRow In objDataSet.Tables("WFCertSTATUS2_SignOffGroups").Rows CertTable2.Rows.Add(row.Item("ProfileKey"), row.Item("ScenarioKey"), row.Item("TimeKey"), row.Item("SignOffState"), row.Item("UserName"), row.Item("TimeStamp")) Next End Using brapi.ErrorLog.LogMessage(si,"3") For Each wfRow As DataRow In WFTable.Rows Dim profileKey As Object = wfRow("ProfileKey") Dim certRows As DataRow() = CertTable2.Select("ProfileKey = '" & profileKey.ToString() & "'") For Each certRow As DataRow In certRows Dim newRow As DataRow = CombinedTable.NewRow() newRow("ProfileKey") = wfRow("ProfileKey") newRow("ProfileName") = wfRow("ProfileName") newRow("ScenarioName") = wfRow("ScenarioName") newRow("TimeName") = wfRow("TimeName") newRow("StatusText") = wfRow("StatusText") newRow("LastExecutedStepStatus") = wfRow("LastExecutedStepStatus") newRow("LastExecutedStepTimeUTC") = wfRow("LastExecutedStepTimeUTC") newRow("LastExecutedStepTimeEST") = wfRow("LastExecutedStepTimeEST") newRow("SignOffState") = certRow("SignOffState") newRow("UserName") = certRow("UserName") newRow("TimeStamp") = certRow("TimeStamp") CombinedTable.Rows.Add(newRow) Next Next brapi.ErrorLog.LogMessage(si,"4") Return CombinedTable End Function End Class End NamespaceShivaPrasad13 hours agoNew Contributor III46Views0likes4CommentsgetLiteralParameterValue in a KPI formula
I would like to use a parameter value in a KPI in my API_Calculate business rule. I have a literal value parameter and we will change the default value ahead of time to control which formula runs. I'm trying to pull the current default value with the following: Dim param As String = BRApi.Dashboards.Parameters.GetLiteralParameterValue(si, False, Nothing, "myFlag") When it gets to that line it throws a "Object reference not set to an instance of an object". Any ideas?JuleneDS13 hours agoNew Contributor II18Views1like2CommentsComing Soon: Getting Started with OneStream & Introduction to OneStream Courses
3 MIN READ Global Education Services will release the new Introduction to OneStream and OneStream Essentials: Getting Started with OneStream courses on July 9, 2025. Getting Started with OneStream has been our flagship introduction course and has been offered in three formats: Instructor-Led Training, Premium On-Demand with Labs (Paid), and On-Demand without Labs (Free). The Premium On-Demand and Instructor-Led Training versions of these courses have served our Technical Users, Partners, and Consultants well. These offerings will remain but will be updated with much of the content greatly streamlined and updated to comply with OneStream 8.5. Our Business End Users have provided feedback about the free version of this course, stating that it was too long and too technical, and because the name was the same as the paid courses it caused some confusion. We listened and have created a new free course designed specifically to fit the needs of those who want to get up-and-running with OneStream quickly: Introduction to OneStream. What is Happening? Getting Started with OneStream (Free) will soon be Introduction to OneStream (Free). Our Premium On-Demand and Instructor-Led Training courses will include new content that has been streamlined and updated for OneStream 8.5 and beyond. The change to our flagship lineup better aligns with our two unique audiences: Business End Users and Technical Users. Business End Users: Introduction to OneStream (Free) OneStream 8.5 and beyond Demo Videos Included Micro Credential 4 Hours On-Demand only All users are welcome to take this course, but Technical Users must complete the Getting Started with OneStream course as part of the First Project Readiness learning path Technical Users: Getting Started with OneStream Premium On-Demand & Instructor-Led Training (Paid) OneStream 8.5 and beyond Includes Interactive Labs and a dedicated section for Administrators 7 CPE Credits for On-Demand / 8 CPE Credits for Instructor-Led Training Micro Credential Additional Technical Content 6 Hours for On-Demand / 1 Day for Instructor-Led Training Prerequisite for follow-on OneStream Administration course and beyond Part of the First Project Readiness learning path When Does This Change Happen? The new Introduction to OneStream (Free) and updated Getting Started with OneStream courses are available July 9, 2025. Who Is This For? Business End Users – Need to know that the free course has been revamped and has a new name. Technical Users – Need to know that existing courses have been streamlined and updated for OneStream 8.5. What Happens to Getting Started with OneStream (Free)? This course will remain on OneStream Navigator and new and existing customers can register for the course any time between now and July 31, 2025. At that time registration will be closed. Anyone who has registered for the course will see the course in their “Activity” dashboard and will have until September 30, 2025, to complete the course. At that time, the course will be retired for all learners. What Is Different Between the old Getting Started with OneStream (Free) and the new Introduction to OneStream (Free)? The free version of Getting Started with OneStream was essentially a leaner version of the paid course, lacking interactive labs but retaining technical content. Introduction to OneStream will have all updated content (for OneStream 8.5 and beyond) and eliminate some of the more advanced technical content, making it easier for Business End Users to complete the course and earn a micro credential. Introduction to OneStream’s new streamlined content will only take four (4) hours to complete – half the time required by Getting Started with OneStream (free). What Now? Keep an eye on the Community Blog for the official launch announcement coming July 9. 2025. Until then, let us know your questions in the comments below.KayneSchwarz2 days agoCommunity Manager42Views0likes0Comments
Getting Started
Learn more about the OneStream Community with the links below.
Featured Content
Coming Soon: Getting Started with OneStream & Introduction to OneStream Courses
3 MIN READ Global Education Services will release the new Introduction to OneStream and OneStream Essentials: Getting Started with OneStream courses on July 9, 2025. Getting Started with OneStream has been ou...42Views0likes0Comments