Forum Discussion
FYI - there is also a solution available on Solution Exchange (CommunitySolutions) called Fast Data Extract Extended, that does exactly this filtering for you of the non Data Unit Dimensions e.g. A#-U8# and uses the FDX Data Unit BRApi's.
Thanks so much for your reply.
I read the posting and tried the manner below, it's not working.
My goal is to create a data adapter used in OS Connector in Fabric. The command type of the data adapter is Method, it calls this new BR to retrieve data from cubes,
- sameburn4 hours ago
OneStream Employee
Does your DataTable return any rows when you pass in an empty string as a filter e.g.
dt = BRApi.Import.Data.FdxExecuteDataUnit( si, "Total_Magna", ' Cube name "E#Parent1,E#Parent2", ConsMember.Local.Name, ScenarioTypeId.Actual, "S#Actual", "T#2025M1", ViewMember.Periodic.Name, True, String.Empty, 8, FalseIf so, check that the accounts you are trying to filter on actually exist in the Data returned. I would recommend building up your logic 1 filter at a time e.g. check EBIT exists, then add EBIT to filter, then check SALESTOT exists, then add SALESTOT to filter and check filter working correctly, etc
Also please observe you should not be passing in C# and V# into the BRApi (please see earlier comments on these dimensions and what the BRApi is expecting to be passed into it, this has been corrected in above snippet)
Edit: It should be noted that the filter on non-data unit dimensions is for base members only. Therefore I suspect EBIT and SALESTOT are parents, not base members of your Account dimension. Which might explain why your filter is not behaving as you would expect
- sameburn3 hours ago
OneStream Employee
You can achieve your use case with the FDX Extended solution I mentioned earlier on this post, this will Group (aggregate) this data for you for a given Dimension e.g. A#.
However since you want to aggregate 4 members in a single dimension; you would need 4 separate outputs e.g. 1 for EBIT, 1 for SALESTOT, 1 for ROIC_DIV_Y and 1 for ADJEBIT (assuming these are all parent members in your Account dimension). Alternatively you can use a Data Management Export step which will achieve the same
The FDX Data Unit methods return base members only for A#-U8# because this is how the data in the cube is stored. The only aggregated data you can output using this method is for the Entity dimension.
Therefore filters can only be applied for Base Members
Hope this helps demystify
- Bella_Yu2 hours agoNew Contributor III
Yes, when I put base account members in filter string, it works. But when I put parent account members like SALESTOT, it doesn't work. In my business case, I need filters on account + UD1 + UD2 + UD4 + UD7, parent members and also base members.
FDX Extended solution may not work in my case because large amounts of data needs to be extracted with plenty of filters.
I was using data management extract steps, now I want to build a data adapter used for OneStream connector in Fabric (GetCustomAdapterData method in OS Connector). That's why I try to develop the business rule, so the data adapter can call it.
Do you have suggestions in this case?
Related Content
- 2 years ago
- 2 years ago