Oscar
3 years agoContributor
Data Buffer
Hi EveryOne!!!!
Dim resultDataBuffer As DataBuffer = New DataBuffer Dim destinationInfo As ExpressionDestinationInfo = api.Data.GetExpressionDestinationInfo("") Dim dataBuffSource As DataBuffer =...
Hey Oscar,
XFCommon is what OneStream will use to mark dimension members that have been "fixed" in the DataBuffer, so that they can be used in calculations. That's because buffer math will only work where members match.
To explain, let's say you are trying to do api.Data.Calculate(F#OpeningBalance:U1#Something * F#None:U1#SomeDriver). OpeningBalance and None would never match, so no math would ever happen. Instead, OneStream defines cells in both buffers as pointing to F#XFCommon:U1#XFCommon, so now those dimensions will match for all cells and we can multiply any number they contain (where the other dimension members line up).
In your case, because you use FilterMembers with a single member over Flow, OneStream "fixes" that member in the resulting buffer, and the cells will be marked with XFCommon. The cells will still contain the values you expected. Does that make sense?
Hi !
I have used Dim destinationInfo As ExpressionDestinationInfo = api.Data.GetExpressionDestinationInfo("S#Actual"), and I got the issue below (although S#Actual exist in the Scenario dimension)... what am I missing ? :
There might be a dimensionality mismatch between your source buffer and the target Scenario, or it might be something else. Look at the details of the error, turn on detailed logging, Force Calc with Logging etc etc