Discuss formulas and business rules for your application.
Recently active
We have a requirement to create reporting that utilizes the number of months since a company was acquired to perform math on specific columns of data. We would like to attach the acquisition date in a text field of an entity, and create a member formula for a statistical account that calculates the number of months between that acquisition date and whatever month the Point of View is referencing (we could convert the POV month to a specific date if necessary). Is this type of calculation possible within stored member formulas?
Hi all,I'm quite new to OS integration pieces and being struglled with a request from my client to load dimension members using their data lake, so the memebers would be updated automatically or by a scheduled event.The database is already configured at SIC and working fantastically well, however, I can't figure how to use it's features to load the metadata members to one of our UD dimensions.I read a lot of topics here in the forum, but couldn't find anything that matches my case.I already tried to create a Extender BR, but I'm getting a "Object variable or With block variable not set" error message when running the "api.Parser.ProcessSQLQuery" function. Not sure if I'm doing something extremely wrong, so I"m assuming that this part of the api must be used only within Connector BR's.I also trie to create a connector rule to do the job, but when setting it up at the dimension property, nothing happened (not sure if I missed something here).Any help on this will be really appreciated!Re
I have some business rules that need to identify which environment the BR is running in. This is because they does different things in each environment. In one BR i want the process to run in Prod but not QA or Dev, in another i want to copy extract files to an external shared folder which is different for each environment. I was thinking of using a dashboard parameter but if after a Prod to Dev/QA refresh i forget to change the value of the parameter, the BR will copy the files to the Prod external folder and i don't want that to happen. this is why i am trying to find a way to identify the environment without relying on the value in a parameter. Any thoughts? Have a great day! Bill
Hi - The below if condition is not working if the cube is multi cube, it works with Single cube? Any Idea why If api.Entity.OwnershipType().ToString.XFEqualsIgnoreCase("Holding") Then
Hi Everyone. I would like to know how I can perform a setdatacell on an entity that is not in my Data Management configuration. I obtain the value of the entity from Text 1 of my entity assigned to the POV, but it does not allow me to apply a setdatacell or a calculate to assign a new value to that entity. Therefore, I would like to know how I can achieve this. My Data management configuration: The example code I am using: Dim strEntity As String = api.Pov.Entity.Name Dim strScenario As String = api.Pov.Scenario.Name Dim strTime As String = api.Pov.Time.Name Dim povEntityId As Integer = api.Pov.Entity.MemberId Dim strEntTx1 As String = api.Entity.Text(povEntityId, 1) 'setdatacell api.Data.SetDataCell("S#[" & strScenario & "]:T#" & strTime & ":E#" & strEntTx1 & ":A#S_ConvFactorInner:O#BeforeAdj:U1#D0000:U2#P0000:U3#LOCAL_DATA:U4#PJ00000:U5#None:U6#None:U7#None:U8#None",totAll,False,True) 'Data.Calculate api.Data.Calculate("Cb#HLFPLN:S#[" & strScenario &am
Hey Guys,I was writing a rule to update a member description and text 1 field of the same member. I was able to update the member description, but can anyone help me with the text 1 field?Please find the code below which I am using to update the description..Dim SelectUD4 As String = args.NameValuePairs.XFGetValue("Param1")Dim NewDescriptionUD4 As String = args.NameValuePairs.XFGetValue("Param2")Dim UD4TextField As String = args.NameValuePairs.XFGetValue("Param3") BRApi.ErrorLog.LogMessage(si,UD4TextField) Dim member As Member = BRApi.Finance.Members.GetMember(Si,dimtype.UD4.Id,SelectUD4)If member Is Nothing Then Throw New Exception("Selected UD4 member not found")End IfDim newmember As New WritableMember(member)newmember.Description= NewDescriptionUD4newmemberbrapi.Finance.MemberAdmin.SaveMemberInfo(si, True, newmember, False, Nothing, False, Nothing, False)Any help would be appreciated.
Today, a customer asked me: Where do stored calculations store data? api.Data.Calculate If Statements In stored calculations, If Statements are helpful to specify that a formula is only required to execute on specific Data Units, as shown in the image below. If ((Not api.Entity.HasChildren()) And (api.Cons.IsLocalCurrencyForEntity())) contains two logical operators (And and Not). Due to the AND operator, the statement api.Data.Calculate("S#Forecast = S#Actual") between Then and End If will only run if both of the following are true: The Entity is a Base-level Entity Member, i.e.: does NOT have Children (Not api.Entity.HasChildren()) The Consolidation Member is Local indicating the Entity Member's local currency (api.Cons.IsLocalCurrencyForEntity()) The statement api.Data.Calculate("S#Forecast = S#Actual") will copy the S#Actual data buffer to the S#Forecast data buffer. The If...End If
I am unsuccessfully trying to write an expression to utilize a Text Field as a filter in a business rule:api.Data.Calculate("U4#Target = U4#Source*-1","A#IncomeStatement.Base",,,,,,"U3#UserDefined.Base.Where(Text1 = 'Filter')") Is this syntax possible, or is there another way that I can write this to ensure that it is only being written when Text Field 1 for UD3 is equal to "Filter?"Additionally, is it possible to attach this to a transformation rule as a complex expression as opposed to needing to run it through Data Management after loading data?
We are trying to temporarily disable the Write access on a scenario to Everyone during a long DM sequence. We were able to find the ManageDataGroup under Scenario Properties, however, we could not find anything for ReadWriteDataGroup, which is a XMLConstants based on the API reference. Any help appreciated!
Hi community, Does anyone have a good member formula for calculating income/equity attributable to minority interest on the P&L and balance sheet? My understanding is in our case we can report this in a simple manner with just two additional accounts, one on the P&L and one on the balance sheet. In my mind the P&L account would work something like the following, if ownership type equals Non-Controlling Interest then multiply net income by (1 - percent ownership). I'm currently trying the below formula for the P&L account, but not yielding any results. After running a consolidation there is no data in the new account. Any suggestions on how to solve this? Thanks, Dim dValue As Decimal = api.Entity.PercentOwnership() Dim objOwnershipType As OwnershipType = api.Entity.OwnershipType() If objOwnershipType = "Non-Controlling Interest" Then api.Data.Calculate("A#NCI_Income:I#None:F#PL_LOAD:O#Import:U1#None:U2#None:U3#None:U4#None:U5#None:U6#None:U7#Data_Load:U8#None = A#NetI
What is the correct syntax for the filter expression in the DataUnit method command used in BRAPi.Database.ExecuteMethodCommand()?We are trying to filter on Flow member EndBal. The following syntax does not work:MethodQuery: {FinRpt}{CorpEntity}{}{}{ACTUAL}{2024M1}{YTD}{True}{F#EndBal} results in the follwoing error:The expression contains invalid date constant '#End_Inp'.MethodQuery: {FinRpt}{CorpEntity}{}{}{ACTUAL}{2024M1}{YTD}{True}{WHERE Flow LIKE '%EndBal%'} results in the follwoing error:Syntax error: Missing operand after 'Flow' operator.{WHERE Flow = 'EndBal'}, {WHERE Flow IS 'EndBal'}, and other variations all result in the same syntax error.
Dears,We have a requirement, where we need to write only into C#Elimination of [Share of Profit from] A#NetIncome and Same to be written to A#Investment in Equity Account as a other side of entry for the Equity Account type of consolidation in OneStream [We do not need line by line consolidation for all other items/accounts]To achieve this, I setup a entity as follows:PCON = 0POWN = 50%Ownership Type = Equitywhen i put PCON as zero[0] and execute the consolidation, the results are not writing up to Elimination member. What can be the reason for same?
We have created a set of confirmation rules for our forms. However, there is a company that is failing the rule because of an adjustment that must be made by recommendation of the auditors but would not otherwise be accepted. Is there a way to exclude just this company from the rule?
Hi I have two source accounts bringing in same amounts for multiple Entities. Some of the entities are local and some overseas. The only unique identifier is Text7 field in the entities. How can I map the source accounts to OS accounts using Entity Text Field 7. Below is the example Acc 1000 - $7000 E#AUS Acc 2000 - $7000 E#AUS Acc 1000 - $9000 E#NZ Acc 2000 - $9000 E#NZ In the above example Amount $7000 belongs to local Entity so should be mapped to A#Local_Tax and Amount $9000 belongs to overseas Entity so should be mapped to A#Overseas_Tax. The problem is in the import file the amounts 7k and 9K sit in both local accounts Acc 1000 and Acc 2000. The only unique identifier is the Text 7 value in the Entity. Please advise if I can use this text value in Composite Transformation rule or if I need a complex business rule. Any suggestions are welcome, Thanks Sam
Looking into a way to turn off translation for specific entities, yet only for the budget scenario and select gain/loss accounts. Having translation on for Other Expense and Net Income as it relates to budgeting is skewing the EBIT bottom line. Is turning translation on a budget scenario and specific Entities possible? Thanks in advance,
If a POV has more than one dynamic calc member (for example Account and UD8) does anyone know the sequance they are calculated in? I assume, and it appears from a little testing I have done, that it is similar to how it works in DUCS and it goes Account, Flow, UD1, etc but looking to confirm. Thanks.
Hello, I am creating a dashboard with a grid view and gridview is binded to a Data Adapter which calls a business rule to get data thru an external web-api call. Now I have to show data in Gridview and the record count on the dashboard on a button click. I have used following settings on the button. The Selection changed server task is happening first and then the data load is happening, so I am able to update the literal parameters with counts after data load but they are not reflecting on the dash board. Any help appreciated.
Hello Team I am currently using the "FDXExportDataUnit" function to load data into a DataTable using the following code: Dim dt As DataTable = BRApi.Import.Data.FdxExecuteDataUnit(si,"FPA_CM","E#Entity_top.base","USD",scenarioTID,Scenario,timefilter,"MTD",True,"Amount <> 0 And Flow='EB'",16,False) he resulting DataTable contains 678,123 records. I plan to insert these records into a Snowflake database. To speed up the inserts, I am dividing the DataTable into multiple DataTables of 150,000 records each. However, the inserts are currently happening sequentially, and I want to run them in parallel. I am considering the following options: Pass the split DataTable as a parameter to a Data Management sequence:This would allow me to call the sequence using "QueueDataManagementSequence" so the process runs on different servers. I need assistance on how to pass the DataTable as a parameter to the sequence. Run bulk insert SQL statements in parallel using threading tasks:
I am trying to call a cube view extender Business Rule assemblies from a cube view. Not sure if I am missing anything. I looked at the reference manual and followed how it was defined in the manual. Cube view extender BR Assembly calling the assembly from the Cubeview.
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?
Hello, I'm trying to delete a File Share file but getting the error in the Subject above and I don't know what's causing it - I'm hoping someone can help. This is my code: Dim fileName As String = "MyFile.csv" Dim folderPath As String = BRApi.FileSystem.GetFileShareFolder(si, FileShareFolderTypes.ApplicationRoot, api) + "\" + si.AppName + "\Groups\MyFolder BRApi.FileSystem.DeleteFile(si, folderPath, fileName) When this runs, this is the error: "Conversion from string "\\sgc000462adev2.file.core.windo" to type 'Integer' is not valid." Why is it trying to convert the folderPath to Int? How do I fix this? Thanks in advance for your help!
Hi, I am trying to establish a connection between OneStream and my local SQL server but getting below error. A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) (SQL Error Number -2146232060, -1) Business rule and error
Hi all,I am trying to build a business rule to dynamically disable a button (become invisible) once the form status is completed. May I know is there any function I could leverage on to fulfill this functionality?Any suggestion would be appreciated. Thank you.Best,Jacky
I'm attempting to send an email with an attachment from a file stored in File Explorer. What does my file path look like if the file is saved in File Explorer->Application Database->Documents ->Public? Regards,Anusha
Hi Team, I know that periodic is calculated in system as a difference between current month YTD and previous month YTD. What happens if we just copy this periodic from one month to another? Many thanks!
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.