Entity Relationship Properties update via business rules
Hi Team, I would like to fetch and update the Entity Relationship Properties for the Entity Dimension members via Business Rules. The below peace of code works fine for only when I pass the Actual and Budget but when i pass the other scenario Type like Scenariotype 1 to 8 I get the error Object is not set to an instance of an object. Dim Scenario As String = args.CustSubstVarsAlreadyResolved("Param_SecnarioType_EO_24") 'The above value i get it from the combo box as delimited list Dim Scenarioid As Integer = BRApi.Finance.Members.GetMemberId(si,dimtype.Scenario.Id,Scenario) Dim MyScenarioTypeid As ScenarioType = BRApi.Finance.Scenario.GetScenarioType(si,Scenarioid) Dim Timefilter As String = args.CustSubstVarsAlreadyResolved("Param_Time_24") Dim Timeid As Integer = BRApi.Finance.Members.GetMemberId(si,dimtype.Time.Id,Timefilter) Can you please help me with the correct way to get the scenario Type.45Views0likes0CommentsDimension members loading process using SIC
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! Regards100Views0likes1CommentHow to identify which environment a BR is running in?
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! BillSolved2.7KViews0likes8CommentsUpdating Text1 using business rule
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 If Dim newmember As New WritableMember(member) newmember.Description= NewDescriptionUD4 newmember brapi.Finance.MemberAdmin.SaveMemberInfo(si, True, newmember, False, Nothing, False, Nothing, False) Any help would be appreciated.Solved182Views0likes3CommentsWhere does Stored Calculations store Data?
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 (AndandNot). Due to theANDoperator, the statement api.Data.Calculate("S#Forecast = S#Actual") betweenThenandEnd Ifwill only run if both of the following are true: The Entity is a Base-level Entity Member, i.e.: doesNOThave Children (Not api.Entity.HasChildren()) The Consolidation Member is Local indicating the Entity Member's local currency (api.Cons.IsLocalCurrencyForEntity()) The statementapi.Data.Calculate("S#Forecast = S#Actual")will copy the S#Actual data buffer to the S#Forecast data buffer. TheIf...End Ifis limiting the calculation statement to execute only for specific Data Unit Dimension Members. Other consideration to take into account when creating store calculation rules.💥 api.Data.Calculate("A#CashCalc=RemoveZeros(A#10000)")uses the RemoveZeros function to remove cells with No Data or 0.00 cells in the A#10000 data buffer. The results are stored in the A#CashCalc data buffer. The RemoveZeros function is to help with performance if there are large amounts of No Data or 0.00 cells. END IF😂😀😃84Views0likes0CommentsFilter Expression in DataUnit ExecuteMethodCommand
What is the correct syntax for the filter expression in the DataUnit method command used inBRAPi.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.91Views0likes1CommentExporting OneStream Data to Snowflake Database Parallel
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 need help constructing the Parallel.ForEach loop. My current idea is as follows which is not working parallel.Foreach(splitTable.AsEnumerable(),sf_load.PrepareSqlInsertQueryWithoutColumns(si ,"dev_fin360_core.fpa_integration.CM_CUBE", splitTable, "SFDEVW","")) Any input or suggestions would be greatly appreciated. Best Regards Karun118Views0likes0CommentsCube view Extender Business Rule Assemblies not working, Not sure if I missed anything.
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.Solved174Views0likes1CommentSolution to Update Task Scheduler Start Times to Account for Daylight Savings
Hi, This time of year we have the common maintenance point regarding needing to update task scheduler start times to account for daylight savings. It is expected for the platform to not automatically update the task start times to account for daylight savings, thus, this becomes a maintenance point for those companies in states/countries that utilize daylight savings. Until this feature perhaps one day becomes available in the platform, we have a custom solution that will make the maintenance point of this easier for OS administrators. You can upload the two files attached in the zip file which will result in uploading an Extender business rule titled "Update_TaskScheduler_StartTimes" and a Data Management job called "Update Task Start Time Daylight Savings". To use the solution, navigate to the Data Mgmt page and look for the group titled "Task Scheduler Maintenance". Here you will find the Data Mgmt sequence and step you uploaded. Navigate to the DM step and utilize the Hour Adjustment parameter to push the task start times backwards (-1) or forward (1) one hour. Once you are happy with the Data Mgmt step setting, go ahead and run the Update Task Start Time Daylight Savings sequence. The sequence will update the task start time for all tasks in the application. We recommend testing this in a Development application first. Please perform this at your own risk in a Production application.4.4KViews12likes14Comments