Three favorite Board features to improve your build
Author: Lucas Charello, Community Captain and Board Specialist/Project Manager at Kiwika.
Hello Community! My name is Lucas Charello, and I’ve been working at Kiwika for almost two years as a Board Specialist and Project manager. Today, I’m excited to share my personal experiences with three of my favorite Board features from the past few months. As a Community Captain, one of my goals is to help the ecosystem through knowledge sharing—but I’d also like to learn from all of you. Please feel free to share your favorite feature(s) in the comments section below. Let’s continue to learn and grow together!
The Temporary Cube
As you may know, in a considerably recent past, the Temporary Cube feature was only used in dataflows (mainly). Early last year Board implemented version 12.5 with a huge change in this matter: Temporary Cubes could now be used for a wide range of procedure steps.
From that day forward, the Temporary Cube became one of the Board tools I rely on most. Here are some of its every-day uses:
- Dataflows: Obviously, the first reason it has been invented.
- Cube quantity control: With Temporary Cubes we can greatly reduce the number of cubes we use to stock information that is used for only a few steps. E.g.: Cubes used for Data readers and cleared systematically after, cubes filled inside a procedure and used for selections in that same procedure. Also, we don’t have to clear those cubes, so we save some steps.
- Data Readers: We can easily load data in Temporary Cubes and stock/use as we want, having all our procedure features at our disposal. Now, we don’t have the be afraid of “Add” and “Replace time slice” features anymore.
- Selections and If/Then/Else: We can materialize a cube with the dimensions we need inside our procedure and then use it for selections or IF steps.
- Many others as Cube/Dataset extraction.
If you don’t use Temporary Cubes very often, get stated as soon as possible! Your application will get way cleaner with this feature. Of course, there are limitations, and you can find some of them here.
Call Procedure
“Come on Lucas, anybody that worked two days with Board knows this one…”, it’s right! Everybody knows this one, but sometimes we don’t use it to its fullest potential. In some customer applications I’ve reviewed, I could easily find four or five procedures that would calculate the very same cell of a cube in four different ways. This happened more frequently when the application was “big” and many different developers worked in it at different times.
Why is that a problem? When your data model is simple, this is not a big deal. Although, in order to create an efficient application, we start to cumulate large amounts of data in only a handful of key cubes we use for almost all our reporting screens (e.g. P&L cubes, Revenue, Gros Volume, etc.). Over time, as the data model becomes more complex, it’s preferable to have as few procedures as possible calculating the very same cells.
Taking this path will:
- Make debugging dramatically easier. You will quickly find the problem while debugging as you have only a few places to review.
- Facilitate the implementation of new modules or evolutions to your current application. If procedures are done well, we can very often use them over and over again when new capsules and modules are added. You save time, money, and stress by confidently knowing a procedure will work when called!
- Provide a leaner and cleaner application. With less procedures existing, we save visual pollution and mental processing when looking at which procedure to use.
- Make it easier for newcomers to understand and work with the application, also saving time and stress.
For the note, the right approach to this principle will almost always ally Capsule procedure (mostly selections and pre-calculation) and Database Procedures (main calculation). The earlier we start, the easier it will be to stick with it in the future. Sometimes applications can become unreadable over time, and we have to put everything down and make it again—consuming a tremendous amount of time.
The next time you’re adding a new procedure, ask yourself, “Do I already have a procedure I can use to make this calculation?” and “Can I make this procedure very general so it might be used for other purposes”?
Lastly, do not forget to sensibilize newcomers to this way of thinking. If one team member is developing otherwise, you can quickly lose control over the organization of your procedures.
Conditional procedure execution
Have you ever felt compelled to almost duplicate screens because you needed to execute a different procedure depending on the selection user make on a screen? It is actually possible to create an adaptable button! You can find how to do it on Board website, but here is a step-by-step to quick application:
- First of all, create your different procedures and choose your key-entity. We are willing to execute a different procedure depending on the selected members. I have 3 different procedures that vary according to the entity “Activity”.
- Create a Cube having that entity as axis and use the Data Type “Text”.
- Fill the cells of your new cube with the names of your procedures. You can do it manually with a Data View object + Data entry on the block or using a Data Reader.
- Create a label. Apply to it the Caption and design you most like. Create a capsule procedure to tell your future self and your teammates to look at the Layout of this label. You won’t regret as it’s easy to forget!
- Open its layout. Place your cube and create an algorithm with “ “ and in text format. Use the algorithm as show value and your cube as action value.
- Set your selection, and you’re good to go! Be careful: If more than one procedure is selected, Board will choose the first on the list.
So, those were my three favorite features. And you—which one is your favorite? I’m looking forward to reading you in the comments!
Comments
-
Thank you for sharing your experiences.
Your insights are incredibly useful and provide valuable perspectives.
3