Discuss formulas and business rules for your application.
Recently active
Got a task to copy certain file from FileShare to Documents\Public because users security settings. Wanted to go with the standard System.IO.File.Copy(strSourceFile,strTargetFile) where source and targets are sting. Can get full source file path using the FileShareFolderHelper. However can't get full path to the target, that is under FileSystemLocation.ApplicationDatabase. Any suggestions how can I get the target path or otherwise copy the file in question?
Within the Extender business rule used to integrate with our ERP system I would like to loop through all the "Import" steps within a specific node of workflow hierarchy and to read the values of the "TextX" properties. I've heard that this is possible but have no idea where to start. Any guidance would be greatly appreciated. Yan
Hi All, Is there a possibility to update WFScenario for all users of the application from back end through a Business Rule? When moving the app from one quarter to another for Financial Regional planning, some of the not so tech savvy Sales users are forgetting to change their WFScenario and triggering the calculations which are erroring out due to older scenarios being locked. We would like to have Admin update WFScenario for all the users of the application as a maintenance task. Please let me know if the below would work for all the users. Or any other leads would also be appreciated.
Hi guys,I coudn't find the proper hint in OneStream.In my dashboards, I'm using several XFBR string rules or Dashboard extender rules. I would like to move some of them to Workspace assemblies, available starting version 7.4. If I do so, does anybody know how to call a function in there?Stupid example, I'm defining the position of a temporary file to download with an XFBR rule called MyXFBR, function CleanUsername.UrlOrFullFileName=[Internal/Users/XFBR(MyXFBR, CleanUsername)/Temp/FileToDownload.csv] Now I've created the same function CleanUsername in a Workspace assembly named MyAssembly, in a file named FolderManagement.vb. How this should be amended?XFBR(MyXFBR, CleanUsername)?? XFBR(MyAssembly, FolderManagement, CleanUsername) ?? it doesn't look very good.... That's pretty new, but I hope a few guys in this community have used it already.
Hello, did anyone find the OneStream Foundation Handbook useful for learning the software? the copy I see on amazon is from 2021. Are there different editions available? thank you.
This is OS v7.4.1It is running in a Cube View Extender Rule.I've tried both CubeViewGrid.ExpandedRowHeaders and CubeViewGrid.AllExpandedRowHeaders expandedRowHeaders = cubeViewGrid.AllExpandedRowHeaders; int rowNum = 0; StringBuilder sb = new StringBuilder(); foreach(CVGHeader cVGHeader in expandedRowHeaders) { List<CVGHeaderItem> headerItems = cVGHeader.HeaderItems; sb.Append($"Row[{++rowNum}]:"); foreach(CVGHeaderItem cVGHeaderItem in headerItems) { if(cVGHeaderItem.MemberInfo.NameAndDescription.Length>0) sb.Append($"{cVGHeaderItem.MemberInfo.NameAndDescription}|"); } sb.AppendLine(); } Using cubeViewGrid.ExpandedRowHeaders yeilds :Using cubeViewGrid.AllExpandedRowHeaders yeilds (ironically none of the nested members on Column2): I'm not getting the members shown in the green boxes:
An allocation business rule is not allocating the rates properly . Hence we would like to debug the business rule and also figure out which intersections are passed and what is the value and allocation rate used in allocation calculation . This allocation process involves a formula in UD7 member . Please advise how to see the messages used in api.logmessage . Should we need to create a dashboard to capture the messages that are logged while running the allocations. Again, we are looking for which members used and the value / rate used to allocate.
Every dimension needs to be defined in each Transformation Rule Profile created. Question Credit: Chul Smith Is this statement fact or fiction? Comment your best guess below! Answers will be revealed in one week. * This question is applicable to Platform 7.3.0 and may not be relevant to future releases
I am trying to write a parser business rule to pull out the middle portion of a date string from a data source. The file has the date as "1-Jan-23" and I want to pull out the Jan. On the data source, I have the time dimension assigned to the proper column in the file. The month is always 3 characters, and the year is always 2 characters. I am getting an error that I am unable to execute the BR. Can I not use args.value for the starting point of my parser rule ? Dim filetime As String = args.Value Dim filetimelen As Integer = filetime.LengthDim startpos As Integer = filetimelen - 6Dim month As String = filetime.Substring(startpos, 3) Return month
Im trying to create a workflow Event Handler that kicks off when lets say a period is locked April 2023 will then kick off a stored procedure that copies data from a table leveraging the wtk of the locked period.
Summary Is there any documentation and/or sample code showing how to use the new "dbWheres" argument in a LookupRowFieldValue() function? Detail In version 6.8 (maybe earlier), if you use .LookupRowFieldValue() with your criteriaExpression (i.e. - your where clause) as a string you get a warning that this syntax is obsolete. It still runs, but obviously we shouldn't use it going forward. So, something like this now throws an warning: .LookupRowFieldValue(si, dbLocation, tableName, criteriaExpression, fieldToReturn, defaultValue) .LookupRowFieldValue(si, dbLocation.Framework, "SecUser", Name = 'Phil Brosnan', "Email", String.Empty) OneStream wants you to use a new Syntax that replaces the criteriaExpression with a list of where clauses in a dbWheres object. .LookupRowFieldValue(si, dbLocation, tableName, dbWheres, fieldToReturn, defaultValue) Unfortunately, there is no documentation or examples on what a dbWhere object is, how to create one, or how to pass that dbWhere object into your
Based on the XML, it looks like I need a reference to the OneStream.Shared.Wcf.CubeViewItem object that contains the CubeView. The CubeView object doesn't seem to have a property for it's Name.Does anyone know how to get the name of the Cube View currently calling a Cube View Extender from within the extender rule?
I have a BR that copies Actuals scenario data to a planning scenario (Mgmt_Actual). It copies Post close adjustments that only exist for USD->AdjInput in Actuals from/to the USD->AdjInput and like Actuals there is no local data in the Mgmt_actual scenario. I then try to copy the same data from the Mgmt_Actual to a forecast scenario. But the calculate data writes to the Local->AdjInput (consolidation/Origin) member, not USD. And when I run a consolidation it calculates USD with the Origin member AdjConsolidated. I'm using the exact same code to copy (calculate) the two scenarios. Any ideas why one calculates USD->AdjInput, yet the other lands at Local->AdjInput?
Does the api.Data.GetDataBufferUsingFormula("FilterMembers(...)") only get cells that have values? Is there a way to create a data buffer with empty cells? Use case: We need to to cycle through an account hierarchy and populate each base account with data from an intersection of a specific Account, UD2, UD3, and UD4 that are defined in the text fields of the particular account that is being populated. The other dimensions of the data buffer are limited to a single member (i.e.":V#YTD:F#End_Bal:O#Import:U2#000:U3#0000:U4#0:U5#None:U6#None:U7#None:U8#None")
Hello Experts, I have a requirement of calculating Cash_ADJ based a sum value of 2 different buffers. If the sum value is Positive I have to post a cash_adj with value from bufSrc2. Is it possible to filter Buffer 1 and write corresponding buffer 2 value to result buffer? Or the approach has to be completely changed for this requirement? If ((Not api.Entity.HasChildren()) And (api.Cons.IsLocalCurrencyForEntity())) Then Dim destInfo As ExpressionDestinationInfo = api.Data.GetExpressionDestinationInfo("A#Cash_ADJ") Dim bufSrc1 As DataBuffer = api.Data.GetDataBufferUsingFormula("A#Cash") Dim bufSrc2 As DataBuffer = api.Data.GetDataBufferUsingFormula("A#Loan") Dim bufSrc3 As DataBuffer = bufSrc1 - bufSrc2 Dim resultBuf As New DataBuffer () For Each newCell As DataBufferCell In bufSrc3.DataBufferCells.Values If Not NewCell.CellAmount > 0 Then Dim resultCell As New DataBufferCell(newCell) resultBuf.SetCell(si, resultCell, True) End If Next
Hi EveryOne!!!! Dim resultDataBuffer As DataBuffer = New DataBufferDim destinationInfo As ExpressionDestinationInfo = api.Data.GetExpressionDestinationInfo("")Dim dataBuffSource As DataBuffer = api.Data.GetDataBufferUsingFormula("FilterMembers(F#myF,A#XYZ.Base)") For Each sourceCell As DataBufferCell In dataBuffSource.DataBufferCells.Values BRApi.ErrorLog.LogMessage(si,$">> {sourceCell.GetAccountName(api).ToString} {sourceCell.GetFlowName(api).ToString}" ) Executing the code above I would expect to get base level accounts of node XYZ with Flow Member myF. However, I am getting the base level accounts but the Flow member is XFCommon. XFCommon is not even a Flow dimension member! Any ideas what I am doing wrong !? Thanks!
Does anyone have a piece of code to clear data on the origin Forms member for just a few accounts? The api.data.clearcalculateddata is not possible (data is not calculated) and api.data.setdatacell doesn't work. Thanks.
Hello, When I execute a Data management sequence or a custom finance function, I have this pop-up that will be shown to the user : Are there any ways to customize what will be shown to the user in this pop-up ? For instance, I want to customize the message that will be shown in the blank text field below "0% Complete" or the message next to the task when it is running : Many thanks for your feedback ! Regards,
Hi, We are working on Consolidation application with 'OOB and Store share' algorithm type. Came across an requirement to eliminate balances on few GLs with C#Elimination and O#Elimination member. Below calculate function worked randomly for few entities (step consol structure) and not for all. Any suggestions to improve on below logic ? Thanks If api.Pov.Cons.Name.XFEqualsIgnoreCase("Elimination") Then api.Data.Calculate("C#Elimination:O#Elimination = (C#Share:O#BeforeElim) * -1", _ "A#OtherAssets.TreeDescendantsInclusive.Where(Text2 = Others)", _ "F#EndingBalance",,"I#None","U1#None","U2#None","U3#None", _ "U4#TopSide_Adj","U5#None","U6#None","U7#None","U8#None") End If
Hi. I am trying to forecast OpEx accounts based on a seeding method. I am storing the method on a specific month by account and some UD dimensions and based on the selected method want to apply different math for those combinations. The issue i am facing is that when looping through my original data buffer, where the methods are stored, i need to change the Scenario, Period and View member for the looped databuffer cell and then sotore that value. E.g. if the method stored in 2023M1 is 3MthAvg, i need to grab V#Trailing3MonthAvg:2023M1:S#Actual for each data unit that is being processed (All months for 2023 Budget scenario). Dim driverDataBuffer As DataBuffer = Nothing Dim calculatedBuffer As DataBuffer = Nothing Dim destinationExpressionInfo As ExpressionDestinationInfo = api.Data.GetExpressionDestinationInfo("V#Periodic:O#Import:U5#NoChannel:U6#NoCustomer:U7#NoProject:U8#None") driverDataBuffer = api.Data.GetDataBufferUsingFormula( _ "FilterMembers(C#Local:" & fir
Finance Business rules can be referenced in Confirmation Rules to ease maintenance. Question Credit: Chul Smith Is this statement fact or fiction? Comment your best guess below! Answers will be revealed in one week. * This question is applicable to Platform 7.3.0 and may not be relevant to future releases
Hi, I want to retrieve into a Business Rule and pass it on to a CubeView row label the value stored in a UD text property. ie UD4 Text3 for example presuming that this is relative to the current Workflow Scenario/Time setting In snippets I have found this : 'Dim sValue As String = BRApi.Finance.UD.Text(si, dimTypeId, memberId, textPropertyIndex, varyByScenarioTypeId, varyByTimeId) I am aware that the Text1 property attached to the WorkFlowProfile has the folowing attributes to get the various values stored under each TextN property field.Attribute Index Is: Text1 = 18000, Text2 = 20000, Text3 = 22000, Text4 = 24000 So what is the appropriate syntax in a Business Rule that I could bring in the UDN TextN values. Thanks Mark
Please provide any guidance or knowledge documents on how to access data stored in table data manager tables via Finance Business rules.
I have a process that causes contention if launched concurrently by users. Is there a way to check if a session with a specific description is already running? I would like to abort the session if another session with the same name is already running. I tried looking through properties and found "GetTaskActivityItem", but the definition and sample are not of much help.
Hi all, I have a dashboard with an SQL table editor component. Through the component in the dashboard, I can save text to the table, including special characters. For example, there is no problem in saving a string containing α (alpha). Now I am trying to load a CSV file to that same table. The file contains some special characters too. To load the file, I have built a business rule which contains the following command: loadResults = BRApi.Utilities.LoadCustomTableUsingDelimitedFile(si, SourceDataOriginTypes.FromFileUpload, filePath, fileinfo.XFFile.ContentFileBytes, "|", "App", "LOAD_TABLE", "Merge", lfieldtokens, True) The special characters are not recognised, and this is the result when loading TestNameαβπ. Is there a way to load the CSV file and preserve the special characters?
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.