Recent Content
Registration for the February Tech Talks is Now Open!
Registration for the February edition of Tech Talks is now open. On this episode of Tech Talks, Andrea Tout joins Tom Linton and Matt Kerslake as they explore this NEW solution showcasing the power of the OneStream Platform and extending the support of evolving ESG requirements! Register here: https://www.onestream.com/events/tech-talks-esg-reporting-and-planning/Tech Talks: No Code Dynamic Dashboards Available Now!
Tech Talks: No Code Dynamic Dashboards is now available for replay! On this edition of Tech Talks, Sam Eburn and Jerome Marcq join Tom Linton and Matt Kerslake to demonstrate the power of no code Dynamic Dashboards on the OneStream platform. Learn how features such as Repeat Arguments and Template Parameters can be created without the need for complex code writing. This replay is available here until 2/21/25 and available anytime on OneStream Navigator as part of your Passport subscription.OneStream 8.4/5 New features
4 MIN READ Since version 8.4, OneStream has introduced an updated look and feel, with a new logo and a transition from blue to black as the main color. In this post, we focus on the following new features: Working with parameters in spreadsheets/Excel add-in Send links to dashboards to colleagues using Smart Links Make your dashboards more interactive with the new Menu component Use richly formatted text boxes to inform your users in dashboards. 1. Parameters in Excel With the latest release of OneStream, you can add more flexibility to your Excel reports. Using the menu option Parameters, workspace parameters can be linked to a cell. This cell displays a dropdown menu with the options of the parameter. For each parameter, the user can choose whether it relates to the current workspace or the entire workspace: In addition, In-Sheet Actions can be added, allowing you to run a Data Management Sequence directly from your Excel sheet, for example, to seeding or calculating data. 2. Smart Links Ithappens to all of us: you send a colleague an email asking them to look at a strange number in a dashboard, and after countless back-and-forth emails, it turns out that they are seeing a different representation of the data due to other selected parameters. OneStream has now introduced Smart Links, which allow the administrator to create predefined links with fixed parameters. These links can be created via a button and forwarded to a colleague. This opens the exact same dashboard, with the appropriate filters and parameters. The button can even generate a mailto:-link, so that an e-mail containing the link is created directly from the dashboard. The user is directed to the dashboard through the Web environment and must first log in if no active session is available. A Smart Link is created from a business rule, which since version 8 can be stored in an assembly within the workspace itself. On the button, it is activated via: Our assembly is called Assembly85. The CreateSmartlink function in the SolutionHelper looks like this: (In the above example, all values are hardcoded, but they can be made dynamic if needed). 3. Menu One of the newest additions to the dashboard components is the Menu. This menu can be created dynamically via a business rule, similar to a Tree View component. The menu is associated with a parameter that can be used in the dashboard to refresh other embedded dashboards or components. You can extensively format the menu with fonts, text and background colors and even logos. Unique to the menu are two options: Auto Open: The menu expands automatically when a user moves over it. If this option is set to false, the menu must be clicked on first. Show Down Arrow: Highlights menu options that can be expanded by displaying a down arrow. The menu uses a data adapter associated with a Dashboard DataSet business rule (in our case, within the assembly). The rule for our menu is as follows: First, the main level menu items are created as new XFMenuItems with their properties. Then the underlying and subitems are created, also as XFMenuItems. Finally, the items are linked as parent-child items, after which the menu is returned. 4. Rich formatted text boxes Text box components now have the propertion Allow Rich Text (and even Enable Spell Check), as shown below: Many things are possible, but the text must be entered via the text box. In our usage scenario, we want to use the richly formatted text as user instructions for the selected dashboard. However, the challenge with the defaults is that a user can change the text or the text is user-specific (via an Input Value parameter). Manually adding the text in a Literal parameter(and setting the text box as read-only) is also a challenge because the text is not HTML-formatted, for example. Below is an example of the stored text for the "type some text" above: A total of 33 lines! Full of letters and numbers. What we have done is to create two text boxes. The first text box is linked to an Input Value parameter where the administrator can enter the text in the desired format. The second text box is associated with a Literal parameter with the IsReadOnly property set to true. Next, we created a small business rule linked to a button that copies the value of the first parameter to the second. The fixed text box can then be used in the dashboard presented to your users. Wrap Up What version of OneStream are you currently using? Are you considering an upgrade to the latest version or want to discover how these new features can enhance your OneStream application? Feel free to contact me. I always make sure to keep up to date with the latest features and releases, so don't hesitate to get in touch to learn more about these or other enhancements to OneStream!21Views1like0Comments2024: A Year in Review
1 MIN READ It's a new year so that means it's time for one final reflection on 2024. We had a lot of changes in 2024, including a platform upgrade and a brand new moderator. There was also a lot of growth -- check out the below metrics. It's pretty impressive! The Community had 460,981 visits in 2024 and 1.33 Million page views We had 1,692 Discussions started and 5,248 replies Reporting was our most active forum, with 433 Discussions started and 1,326 replies 2024 Top Engaged Threads: Most Replies: Addding Scroll bar to Dialog window Most Views: How to install Excel addin? 2024 Most Active Members: Most Forum Replies: Henning Most Likes Received: RobbSalzmann Most Authored Solutions: Henning A special thank you and congratulations to both of you! Well done -- we appreciate you taking all the time and effort to help grow the Community.30Views0likes1CommentThe OneStream Podcasts Celebrates Partners!
Strong partnerships are an integral part of OneStream’s mission for 100% customer success. On this special edition of The OneStream Podcast, Peter Fugere talks with Shawne Van de Steeg, VP of Strategic Alliances at OneStream, about the importance of our partners and how we will be recognizing them during Partner Appreciation Month this February.Enriching Embedded Dashboards with Custom Controls
6 MIN READ This is an introduction to Custom Controls in OneStream Workspaces. In this blog we will walk you through a simple (almost) No-Code example, creating a Custom Control dashboard with an embedded Button component. Custom Control is a new Dashboard Type that enriches what you can do with an Embedded Dashboard in terms of OneStream Dashboard wizardry. It was released in conjunction with Dynamic Dashboards in v8+ (see my previous blog on this concept here) but uses a different approach to solve for a different type of use case. Custom Controls are much more about taking an existing dashboard template (our Custom Control Dashboard) that contains embedded elements and then repurposing it to behave differently by embedding the embedded version of this Custom Control Dashboard into a new Dashboard and using something called Event Listeners to control that component / or components differently, when each independent instance of that embedded Custom Control Dashboard is invoked inside a new Dashboard. This means that Dashboard Templates can be repurposed in different ways, without always recreating the same Dashboards and components for each slightly different use case. Think of this a bit like the old trick to create a custom Embedded Dashboard and pass a parameter value in to it, to render different Dashboard content based on User Selection e.g. But with a much more sophisticated layer of control over the actions performed by your Dashboard Components that reside in your Custom Control Dashboard template. Now let's look at the setup. Setup: Dashboards This example has been created in its own Workspace called WsCustomControl. Let's start by looking at the Custom Control Dashboard. Here we have set the Dashboard Type as Custom Control and selected Layout Type Vertical Stack Panel. Inside this Custom Control Dashboard we have our Button component. When we review the Button itself, we can see that we have to set the Navigation options as below e.g. Selection Changed Navigation Action is Forward Custom Control To Parent Event Listener and the Selection Changed Navigation Arguments must include the EventListenerName Key in the KeyValuePair passed in to the arguments. Hint: If you hover over the Selection Changed Navigation Arguments. You receive some guidance on this (see below). The ButtonEventLister value (it could be called anything) we pass in to EventListenerName KeyValuePair will be explained in the next steps. Let's run the Custom Control Dashboard to see what it looks like, before we dive into the setup. So a simple button, that performs no actions. Since we haven't configured the Button component to perform an action, only to forward a Custom Control Event. Dashboard Button Action 1: Open Dialog Setup So the first example of using an Embedded Custom Control Dashboard, we want our button to perform the action of opening another Dashboard as a Dialog. So let's review that Dialog first before we review the Button itself (in the Custom Control Dashboard) in more detail. In this Dashboard is a Label and a Supplied Parameter (to handle the parameter handshake from Button to Label via Dialog). Let's look at the Label next. Here you can see that we pass in a parameter called |!prm_Label!| Now, let's review the button again. This time observe the Bound Parameter called prm_Button and the Parameter Value for Button Click. Also, please observe that here is where we pass in our Key Value Pair value ButtonEventListener that we saw earlier to the EventListenerName key e.g. EventListenerName=ButtonEventListener. So when do we get to open the Dialog? I hear you ask.... Well we needed some context before we step into the Embedded Dashboard setup. We start with the Dashboard we are launching using our Embedded Custom Control Dashboard template. Here we have added the Embedded version of the Dashboard that we have created. So far, pretty standard right? A Uniform dashboard with an Embedded Dashboard; albeit we don't normally add the Embedded version of a Dashboard to itself... But, let's now have a look at the Embedded Dashboard itself. Dashboard Button Action 1: Open Dialog Logic There are a couple of things to observe here before we get to the Collection. The Embedded Dashboard property is set to pick up our Custom Control Dashboard e.g. CustomControl_Button. Each fresh instance of the Custom Control Dashboard template must have a unique instance name e.g. CustomControl_Button1, CustomControl_Button2, etc. Now let's look at the Event Listeners Collection for this embedded Dashboard. Here we can see this is where we name our Event Listener e.g. ButtonEventListener. We also pass the value from our Button parameter (prm_Button) to our Label parameter (prm_Label) in the Map Bound Parameters property e.g. prm_Label=prm_Button. Remember these from earlier? Finally we set the Button component action to (a) Open Dialog and (b) to open the Dialog we had created earlier with our Label embedded in it e.g. dlg_CustomControl. This means that we are invoking the Button action in the Embedded Dashboard itself by using the Embedded Custom Control Dashboard and changing the action for this instance of the template. This means that when we open our new Dashboard (that uses this Embedded Dashboard), it creates a fresh instance of our Embedded Custom Control Dashboard, where the Button component now opens a Dialog based on our Event Listener logic e.g. Observe, The Label in the Dialog is now displaying the Parameter Value For Button Click value from the Button itself. Next we are going to look at another example of making this Custom Control Dashboard perform a different action. This time it will return a Message to the Dashboard via a Dashboard Extender Business Rule. Dashboard Button Action 2: Return Message to Dashboard Setup So to execute a Dashboard Extender (or Component Service), we first need an Assembly (mine is called Code) to be created in our Workspace (or we can use traditional Business Rules) and then some logic. You'll see how simple this example is below. All we are doing is executing a Dashboard Extender Business Rule to return a Message Box with a custom Message using the XFSelectionChangedTaskResult object e.g. "Event Listener Message Example" Dashboard Button Action 2: Return Message to Dashboard Logic Now we understand how to setup the Embedded Custom Control Dashboard, let's review our second example using the same Custom Control Dashboard template as before. Here we have a new Dashboard, again that is embedded to itself (the same setup as before), but this time we create a different instance of the Embedded Custom Control Dashboard. So let's look at the Embedded Dashboard, again we have set the Embedded Dashboard to look at our Custom Control Dashboard e.g. CustomControl_Button. But we have also given the Embedded Custom Control Dashboard a unique Instance Name e.g. CustomControl_Button2. Now, if we review the Event Listeners Collection in this example, we can see that we are using the same EventListenerName e.g. ButtonEventListener, but this time we have updated the Selection Changed Server Task property to Execute a Dashboard Extender Business Rule and then set the Selection Changed Server Task Arguments to execute our Dashboard Extender Business Rule and Function, which will return a Message Box Dialog to the Dashboard. So let's have a look at this in action. This time when we click the Button from our fresh instance of the same Custom Control Dashboard, it performs the action to return a Message Box that contains the Message from our Dashboard Extender Business Rule instead. So we can make a Component perform a completely different action for each instance by using the same Custom Control Dashboard as a template. Conclusion Now that you have a better understanding of some of these concepts, we can see a lot of new possibilities for reusing Dashboards and Components based on a templated approach and for varying use cases. Once you understand how to harness Custom Controls and combine these techniques with Dynamic Dashboards or even traditional Dashboard techniques, you will have the capability to make more strategic design decisions in your Workspace Development, that simply were not possible before Workspaces and hopefully more creativity and fun on your Dashboard development journey.222Views3likes3CommentsThe 50th Episode of The OneStream Podcast is Out Now!
The fourth season of The OneStream Podcast kicks off with our 50th episode! On this edition of The OneStream Podcast, Marley Watson and Jerri McConnell join Peter Fugere to discuss CPM Express and how it is redefining the approach to implementing Corporate Performance Management (CPM) by blending rapid deployment, intuitive usability, and comprehensive financial management into a single, seamless solution. Designed for organizations seeking to leapfrog to successful financial clarity without the complexity, CPM Express is a streamlined path to advanced financial operations.Introducing the OneStream Essentials: Writing Financial Calculations Course
OneStream Global Education Services is excited to announce the newly developed OneStream Essentials: Writing Financial Calculations course available now as On-Demand (OD) and as an Instructor-Led Training (ILT) course. Course Description This course is designed as a comprehensive foundation for OneStream consultants and administrators, focusing on the critical area of financial calculations. Drawing on the learner’s existing familiarity with OneStream, this course builds a foundation of knowledge and skills related to analyzing, editing, writing, and troubleshooting financial calculations. Delivery Types On-Demand (OD) Instructor-Led Training (ILT) Availability Customers Partners Employees Who Should Take This Course? This course is for OneStream consultants and administrators seeking foundational knowledge and skills in financial calculations. Duration On-Demand (OD): 13 Hours Instructor-Led Training (ILT): 3 Days Prerequisites Prior to taking this course, you should complete the following courses, or possess equivalent knowledge: OneStream Essentials: Getting Started with OneStream [ On-Demand or Instructor-Led Training ] OneStream Essentials: OneStream Administration [ On-Demand or Instructor-Led Training ]; OR OneStream Essentials: Implementing OneStream [ On-Demand or Instructor-Led Training ] Before beginning this course, you should possess: Knowledge of financial concepts and basic math including basic arithmetic and percentages Foundational skills in VB.Net or C# Familiarity with Object-Oriented programming concepts such as classes and objects Micro Credential Upon completion of this course a micro credential will be issued. Important Links Course Description PDF Pricing and Learning Paths PDF Register via OneStream Navigator: On-Demand (OD) Course Instructor-Led Training (ILT) Class39Views0likes0CommentsIntroducing the OneStream Essentials: Building Dashboards Course
OneStream Global Education Services is excited to announce the newly developed OneStream Essentials: Building Dashboards course available now On-Demand (OD) and as an Instructor-Led Training (ILT) course. Course Description This course is the starting point for anyone who needs to create or maintain dashboards in OneStream. In this highly practical learning experience, learners will acquire essential skills to work with an array of dashboard use cases, including dashboards for reporting, dashboards for customizing the OneStream user interface and dashboards to build solutions. This course is the foundation for more advanced content in future courses. Delivery Types On-Demand (OD) Instructor-Led Training (ILT) Availability Customers Partners Employees Who Should Take This Course? This course is designed for anyone starting their journey in building or maintaining dashboards in OneStream. This includes administrators, power-users, or any individual responsible for developing dashboards, to enhance their existing library, and troubleshooting current dashboards. Duration On-Demand (OD): 18 Hours Instructor-Led Training (ILT): 3 Days Prerequisites Prior to taking this course, you should complete the following courses, or possess equivalent knowledge: OneStream Essentials: Getting Started with OneStream [ On-Demand or Instructor-Led Training ] OneStream Essentials: Building Basic Reports [ On-Demand or Instructor-Led Training ] In addition to the course prerequisites above, all attendees must be proficient in concepts such as: navigating OneStream, Cube Views, Dimensionality, and basic Member Filters and Expansions. Micro Credential Upon completion of this course a micro credential will be issued. Important Links Course Description PDF Pricing and Learning Paths PDF Register via OneStream Navigator: On-Demand (OD) Course Instructor-Led Training (ILT) Class