Business Rule | One-to-One Transformation - E# Parent to its first E# Base
We need your help to Import flat files: 1. Number of Rows: > 100k 2. Organized under E# Parent Members: a few thousands 3. E# is extended We've been fortunate to be advised to build a BR to generate a one-to-one Transformation Rule file. - E# Parent to its first E# Base Is it possible for you SMEs to be generous enough to share with us/Community: - a sample BR to look up its first E# Base Member of an E# Parent Member - under extended E# - how to call that BR in an Import Workflow Thank you, OS SMEs.69Views0likes2CommentsExtensibility Series: An Overview of Extensibility in OneStream
What is Extensibility? The concept of Extensibility in OneStream is the capability to incorporate multiple use cases and future growth with a single foundation. I like to relate this to a dinner table that can expand and add additional table leaves while maintaining the same integrity. The OneStream platform, in tandem with Workflow and Extensible Dimensionality expands on this concept by providing users with multiple ways to extend their platform footprint. When designing an application or planning for expansion to the existing footprint, these concepts are crucial to understand and apply correctly. Extensibility in OneStream is a broad topic and can mean something different to each person in the community so I would like to break our language on this topic down further into the following categories: Horizontal Extensibility Vertical Extensibility Workflow Extensibility Platform Extensibility Horizontal or Scenario extensibility relates to the ability to extend and use different levels of a hierarchy for different business purposes. It also provides the ability to target when and where dimensions need to be included in the data model. Have you ever wanted to input data at a parent level? Through horizontal extensibility, that parent can become a base for input in a different scenario by using the scenario type settings and properly applying Cube Dimension Assignments. What if you have highly detailed metadata that only applies to a specific use case? Horizontal extensibility can help limit the potential intersections that aren’t valid for all the other use cases by assigning it only where it makes sense. Vertical or Entity/Cube extensibility relates to the ability to include/exclude detail at different levels up the entity hierarchy. The Data Unit is a key concept to understand in OneStream and it is important to properly manage its size to allow for optimal performance while accounting for future growth. Vertical extensibility also relates to varying dimensionality across business units. When you report consolidated financials, do you need to see the lowest level of department detail? Each individual product? Every project? The most granular GL accounts? If the answer is no to any of these, vertical extensibility can help. Lower-level entities can still report at a detailed level, but the data can be collapsed to a summary level to facilitate the reporting and increase performance. Does your organization have Business Units with very different operations? Perhaps vertical extensibility can provide the flexibility you need to vary the dimensionality at a detailed level but consolidate to a common summary level. Workflow extensibility relates to the ability to vary the input steps & methods within each process flow. Workflow steps and settings can be adjusted on each scenario type or can be combined if multiple processes follow the same responsibility hierarchy. Workflow extensibility can be configured on each parent cube to tailor the software interface to match the process needs. Is your Actual data collection process more import driven and the Planning process more forms, calculations, and dashboard driven? Workflow extensibility can help split these processes and make them easier to manage from an administration standpoint. Are some data collections imported in a centralized fashion while others have their responsibility distributed to more end users? Entities can only be assigned once in a Workflow hierarchy so to vary the entity signoff responsibilities, Workflow extensibility should be utilized to allow for differing entity assignments. Platform extensibility relates to the ability to vary where data is stored and how it is utilized within the platform. It also includes the ability to have multiple applications within one environment that can talk to each other. OneStream has the unique ability to consume, utilize, and report on data regardless of if it is stored in cubes, relational tables, or even externally. The capabilities in this category are expanding rapidly and should be considered during all solution design activities. Do you plan at a named personnel level? By each individual capital project? It’s important to determine what is necessary in the cube for consolidated reporting versus what can live outside the cube to be reported on more at a base entity level. Through platform extensibility, we can combine cube data with relational data to achieve the optimal balance between performance and reporting needs. Is the process you are designing more operationally driven and your data dimensions more transient in nature? Perhaps none of a specific data set needs to live in a cube, or even OneStream at all. Platform extensibility allows us to utilize entirely relational data, web content, and even external data sets. How should one think about Extensibility? Extensibility is foundational to OneStream. It should be thought of as a tool as essential as the level. Without it, you can probably get the job done and, on the surface, it might look okay as well. But over time, you are likely to discover structural integrity issues. It is probable that what you built may no longer be able to do everything you need it to. We use extensibility to right-size data units. We use extensibility to input at the right level. We use extensibility to fit the business process. We use extensibility to set the foundation for the future. I’ve heard people talk about extensibility in that you are “locked in” to the choices you make now. While there is some truth in that, it should not be thought about as a box, but a key to the future. Applying extensibility opens the door to so many more options in the future. Design the process and use extensibility as the tool to bring it all together. As mentioned in the Guiding Principles article, the importance of designing the process cannot be stressed enough. Don’t look for a tool, look for a problem and use the tools provided. Be forward thinking during design and ask questions to all stakeholders to make sure future functionality is accommodated for. Be sure to understand how the business operates and what is on the roadmap so that the proper foundation can be built. Recommendations I will begin with a disclaimer, there is not a single be-all, end-all way to implement extensibility in OneStream. I have seen applications with no extensibility and ones with too much extensibility. While there is a middle ground that should be found, the applications without extensibility are those that much more commonly have issues. A lack of vertical and platform extensibility tends to lead to performance issues. A lack of horizontal and Workflow extensibility tends to lead to flexibility issues. The applications with too much extensibility less commonly run into performance or flexibility issues, but they do have a higher maintenance burden. This is why, as architects, it is our job to balance performance, usability, and maintenance when thinking about these four types of extensibility. It is our recommendation that extensibility be considered in every single design and that it should be implemented nearly every time. To not use extensibility should be an exception, not the norm. During a solution design, I like to fill out a matrix like the one below to visualize what detail needs to be included where. With this, you can start to shape the Scenario Types, cubes, dimensions, and any platform extensibility. When looking for extensibility configuration examples, look no further than our CPM Blueprint application. This application has example configurations using our leading practices. Looking at UD1 as an example, one can see our common configuration of a “MainUD1” dimension parent to summarize the BU and Cost Center details into a common dimension. This is a concept we apply to all user defined dimensions to facilitate both vertical and horizontal extensibility. To facilitate vertical extensibility, dimensional detail that is not needed in a parent cube can be collapsed by assigning MainUD1. The dimensional detail is then extended from “TotUD1” to expand into the necessary levels of detail for each data collection and reporting need. This allows both “None” and “Top” to be active at all levels in the dimensional hierarchy. Another example of extensibility on display in the CPM Blueprint application is in the cube configuration. Focusing on the financial reporting structure in this application, it follows our recommendation for a base-summary cube relationship between Business Unit and total company reporting. I commonly apply this configuration even if there is only a single child cube and a single parent cube because it opens the door to so many more options in the future: More flexibility to expand child cubes horizontally and plug in different dimensionalities Greater ability to collapse the data unit if its size becomes an issue Further future-proofing as it allows for more platform expansion with the same foundation Finally, this application also has Workflow extensibility on display. On the cube settings, you can see the connection between top level and base cubes. You can also see the Workflow suffixing applied in the CPM Blueprint application. In this example, the Actual Scenario Type has a different process flow and responsibility hierarchy from other data collections, so it has been given its own suffix of “ACT.” Budget and Forecast follow the same process flow and responsibility hierarchy so therefore share a Workflow suffix of “BUDFCST.” This allows each process to have its own configuration and entity assignment. Conclusion Extensibility in OneStream cannot be overlooked. During a solution design, each of the four types of extensibility should be weighed and discussed to see which tool is right for the job: Horizontal Extensibility Vertical Extensibility Workflow Extensibility Platform Extensibility If you conclude that extensibility is not right for you, be absolutely sure. If the choice was up to me, the benefits of future flexibility and performance reliability greatly outweigh the potential need for additional administration overhead and end user training that come with extensibility.2.9KViews7likes1CommentCube root workflow profile "cube" tab
Hi, while reviewing the Workflow status view in the Cube root profile, I noticed a second tab called Cube that I hadn't previously paid much attention to. The tab appears to be empty. Does anyone know if this tab can be customized, for example by adding reports? What is the purpose of this page?10Views0likes0CommentsRunning Validate and Load Steps for Multiple Years
Hi everyone, We are uploading portions of our budgets in Excel templates across multiple years. The data is imported across all the years in one shot, but the validate and load steps need to be run year by year if imported through the workflows we have set up. Does anyone know if there is a way to execute the validate and load steps across multiple years through a rule? I know we can use the batch harvest folders, but we're hoping to keep the workflow steps as close to those used in other processes as possible. Thanks, JamesSolved62Views0likes3CommentsUnable to unlock the Work Flow channel
Hi Team, WhatIF_R&O_Adj is a Workflow Channel, and it is assigned under "Financial_WeeklyProcess" - "Base_Input Profile" (Refer the 2nd screen shot). when we are trying to unlock the channel. getting pop up like "'mnuWFChannelLockWhatif_R&O_Adj' is not a valid value for property 'Name'." and it is not listed under WF channel list(Please refer 3rd screen shot). Kindly help us to resolve the issue. Thank you, Shiva Prasad.Import data using multiple workflow profles
Hi everyone, I have an issue in understanding how to implement multiple import steps within a workflow. My client will load data through a classing import step throughout all the months of the year. In addition to that, they asked to set up 3 additional import steps (P13, P14, P15) to be used in December that will serve as "adjustments" to the previous data loaded on the cube. At each import step, however, the data will be loaded in full (with eventual adjustments) and should overwrite the data loaded through previous import steps (and this is the reason why we don't use forms but we use multiple import steps). For example, when P13 is loaded, it should overwrite the data loaded through the Import step, and when P14 is loaded it should overwrite the data loaded through P13, and so on. The problem now is that since we are using a different workflow profile at each step, the system does not automatically overwrite the data loaded through the previous workflow profile, and therefore the data is just added on top of the data that was loaded in previous steps. Does anyone knows whether there is a way to overwrite data from previous loads when a new import step is used? An idea I thought about was to delete the data on the cube through sql while executing the BR Connector rule but I don't know what tables in the db hold the data that I want to overwrite. Thanks in advance for any help, and if something is not clear please ask, I'll be happy to clarify!Solved1.6KViews0likes7CommentsOrphan members - validation error required
Hello dear community members, Background: We have had situations with month end workflow load validation errors which were fixed with UD1 mass upload. Few UD1 members ended up in Orphans, as the Parent did not exist yet in OneStream at the members mass upload step. The validation error disappeared and the workflow was complete. However, this created an Out of Balance and it was difficult to retrieve the issue. Questions/potential solutions help required: Would it be possible for the month end Workflow load Validation error to ignore Orphan members and still get an error even when we create members and end up by mistake in Orphans. Is there a way to delete Orphan members with a BR? Is there a way to stop the Metadata builder xml file to create Orphans when a parent is missing from OneStream? Thank you in advance for any idea/suggestion/tip/hint.Solved77Views0likes11CommentsIs there guidance on the setting for the number of parallel executions for Harvest Batch Loads?
When using the BRAPi.Utilities.ExecuteFileHarvestBatchParallel function in an Extender BR, does anyone have any guidance and/or opinions on the proper setting of the parallelBatchCount parameter? My understanding has always been to set it to a maximum of the number of CPUs - 1 , available for the server performing data management or batch load processing.119Views0likes2CommentsAssistance Needed: Updating "Profile Active" Property via Extender Rule
Dear Team, I am currently working on updating the "Profile Active" property for a specific scenario type within a workflow profile. I am trying to implement this change using the below code snippet, but am not seeing the desired result: code snippet: brapi.Workflow.Metadata.GetProfile(si, "Parent Profile.Profile Name").SetAttributeValue(ScenarioType.Control.Id, 1300, Boolean.TrueString) Though I am aware that this update can be performed manually by accessing individual workflow profiles or using the grid view, my requirement is to execute this task through an extender rule. I've identified that the attribute index for "Profile Active" is 1300 and the value to be updated is of an object type. I suspect there may be an issue with the way I'm passing the new value in the code. I would appreciate any guidance or insight on how to correctly update this property using the extender rule. Your assistance is greatly appreciated. Thanks1.1KViews0likes6Comments