DataManagementEventHandler Args
Hi, I try to get the data unit information of different DM steps, such as Calculate, Copy Data, Reset Scenario, Clear Scenario, Custom Calculate. For a regular "Calculate" I'll get the information via Public Function Main(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As Object, ByVal args As DataManagementEventHandlerArgs) As Object Dim sbLog As New Text.StringBuilder Try Dim returnValue As Object = args.DefaultReturnValue Dim dmStepMetadataInfo As DataMgmtStepMetadataInfo If args.OperationName = BREventOperationType.DataManagement.ExecuteStep Then dmStepMetadataInfo = DirectCast(args.inputs(0), DataMgmtStepMetadataInfo) Dim entList As String = String.Join(",",dmStepMetadataInfo.EntityInfos.Select(Function(miMem) miMem.member.Name).ToList().ToArray()) as it is described in another communits-post. But if I do a "Copy Data", I don't know how to get the submitted data unit. args.inputs(0) is of type OneStream.Finance.Engine.DataMgmtStepMetadataInfo as far as I know from using the error log messages. But there is no documentation of the type "DataMgmtStepMetadataInfo" and I won't get the data unit infos the same way I did in the code above. args.inputs(1) is less interesting. It contains the user name, the DM step description and task activity information. There are no more args inputs. Any ideas how to pull the data unit information out of "DataMgmtStepMetadataInfo"? Regards, Marcus79Views0likes1CommentSupplied parameter tied to Bound List not returning value
Hi community, I have an issue where i have a member list tied to a bound list. The bound list uses a SQL query to get the top member of a given dimension. I have this bound list tied to a supplied parameter that I have attached to a dashboard. The issue is that when I run the dashboard, it is not triggering the bound list, even though i am using the supplied parameter. If I remove the supplied parameter and run the dashboard, it prompts me with the bound list parameter showing the value i want to return, and thereafter, when i put the supplied parameter back it works. It seems like the system needs to trigger the bound list first, but I haven't found a way to do so yet. Any thoughts?Solved69Views0likes3CommentsSubtle bug in Example for Dynamic Dimensions
In the example code for the Dynamic Dimension Service there appears to be a subtle bug which will affect refresh of the dimensions. ReadDynamicDimensionInfo(...) returns DateTime.Now: ' This api method will build the required object, straight from an SQL query. Return api.ReadDynamicDimensionInfo(si, args, DateTime.Now, numSecondsBeforeCheckTS, _ dbConn, sql.ToString, Nothing, Nothing, _ "Name", "Description", "UniqueID", "Name", "Parent", "ParentID", "Parent", "AggWeight", True) BUT ReadDynamicDimensionContentTimestamp sets the Timestamp as DateTime.UTCNow: 'Refresh once per minute (note: frequent refreshes such As one minute could degrade performance). Dim utcNow As DateTime = DateTime.UtcNow Return New DateTime(utcNow.Year, utcNow.Month, utcNow.Day, utcNow.Hour, utcNow.Minute, 0, 0, DateTimeKind.Utc) This will matter if your refresh period is < 13(?) hours AND if your TimeZone is ahead of UTC...... It's an easy fix though! Steve47Views2likes8CommentsTransformation Rule Mystery
Hello all, I have a field in my input dataset that I am tracing the mapping for and I can't figure out why One Stream is selecting the mapping rule it is using. The field is a cost center (UD1) value of '1VA' and it is not specifically called out in one-to-one or is it included as a composite range. I really think it should have been falling out as an exception. OneStream however tells me it is applying a Range Rule 'ABC' where the rule expression = '18~21'. I am flummoxed as to the reason why. I've double checked it a few times. Any ideas why this range rule was selected, or maybe an idea of other areas to check out to see why the cost center UD1 mapping is behaving the way it is? Thanks in advance. Happy to add add'l details if needed. Regards, DKSolved79Views0likes2CommentsLookup Transformational rule UNDO
Hello. I have a set of Lookup Transformational rules. I have tried to load a mass upload for multiple lines of transformational rules through a trx file. I had a message saying the load has been completed with errors. However when I try to search for one rule I can't find it in the set of rules. When I try creating one of them manually it won't let me create it as it says it exists already, even though it doesn't show in the rule set. How can I undo what I did? How can I sort it out. A lot of people are depending of these rule set as it helps with Data extraction. Please support.Solved77Views0likes10CommentsFileShare Harvest Folder view and deletion
Hello All, Our initial setup had everything copying data files to Application/Batch/Harvest folder. There has been multiple years of files stored in this location making it unable to open. I am trying to create something to pull the files and if folders are created to delete the stored files. I am uable to open the path and the clean up business rule fails to run due to the size. I spoke with some developers at Nashville Splash and am reaching out on here as well.Solved68Views1like3CommentsIssue Enabling User via API – SaveUser() Fails with “User Already Exists” Error
Hi! We’ve developed a custom REST API in our OneStream application to automate user management. So far, the following methods are working successfully: CreateUser – Creates a new user DisableUser – Disables an existing user Now, we are trying to add a new method: EnableUser – This method receives a user name and sets the IsEnabled property to True. The logic is quite simple. We retrieve the existing user using: Public Sub EnableUser() ' Get user name Dim username As String = Me._UserProperties("name") If String.IsNullOrEmpty(username) Then Throw New Exception($"Supplied name is empty") ' Get user Dim userToEnable As UserInfo = BRApi.Security.Authorization.GetUser(Me._Si, username) If userToEnable Is Nothing Then Throw New Exception($"User '{username}' was not found in OneStream") ' Set IsEnabled = True userToEnable.User.IsEnabled = True Try BRApi.Security.Admin.SaveUser(Me._Si, userToEnable.User, False, Nothing, TriStateBool.TrueValue) Catch ex As Exception Throw New Exception("Problem enabling user, Error message: " + Environment.NewLine + ex.GetBaseException.Message) End Try Me._Logger.AppendToLogger($"User '{username}' has been enabled") End Sub However, when we try to execute this method, we get the following error: Problem enabling user, Error message: Error saving User. 'Test' already exists. This seems misleading because we're not trying to create a new user—we're retrieving an existing one and updating it. The createNewUser flag is explicitly set to False, and we are using the original UserInfo.User object returned by the API. We’ve ensured that all key properties like Name, UserType, Email, etc., are populated. It seems that SaveUser() is still attempting to create a new user instead of updating the existing one. Has anyone encountered this behavior before? Is there a specific requirement or workaround to ensure SaveUser() correctly recognizes an update instead of a creation? Any insights or guidance would be greatly appreciated. Regards, XaviSolved35Views0likes2CommentsAccount Reconcillations (RCM) Excluding an Import from Actuals
Hi All, I am currently setting up account reconcillations manager (RCM) and import both YTD GL data and Periodic Flow data in the actual scenario. I want to bring in just the YTD GL data into RCM, but it's bringing in both data sets. How can I exclude the Import Flow Data? I know that I can filter on the workflow profile "Import Flow Data" in the Account Rec inventory and delete them, but I'd rather the flow data just not come into RCM in the first place. Thanks for the help!Solved46Views0likes3Comments