In version 2021.3 of Stimulsoft Reports and Stimulsoft Dashboards, we have added new functions and features, which will make your work on report and dashboard creation faster and more effective. Today we start a series of articles about a new version of products with new capabilities of variables.

Let`s start

Let`s start with the fact that the variables in the designer are of different types:
  • Value
  • List
  • Range

In this article, you will know about the variables of the List type and the changes we have made. In the 2021.3 release, we have expanded the capabilities of variables for this type.


Firstly, we have added the capability, which allows you to create dependent variables. You used to be able to do it with the variables of the Value type only. Now you can create dependent variables not only for each type but also for their combinations.

Variables List

A dependent variable is a variable with the values dependent on the selected value in the main variable. In the previous versions of our products for report creation, a variable of the List type couldn`t be the parent variable; only the Value type could be. It means that until the current version of the report designer, you could select only one value, one category, and only one product.


Secondly, you can set a value by default for the variables of the List type in the new Stimulsoft report designer version. In the previous versions, it could be done only for the variables of the Value and Range types. Now you can do it for the List type too.
We hope this article will help you understand the new capabilities of the report designer variables, and now you can use them when creating reports and dashboards. If you have any questions, contact us – we will be glad to help you.

How to solve a problem quickly

When working with the Stimulsoft products, users from time to time face various issues regarding using components and creating reports. As a rule, such problems need to be solved as quickly as possible. In this case, you can:
  1. Solve out a problem by your own;
  2. Contact the Stimulsoft technical support.
Of course, each way has its advantages and disadvantages.

We value the time of our clients and their resources, so in this article, we would like to talk about how to optimize the time of solving out occurring situations. Firstly, let's consider the path of self-solving a problem as the simplest one.

Simple question

Fairly often, we receive questions about how to do something in a report or a dashboard. Even if it's a very simple question, we are always intelligent about it. However, there are situations when Stimulsoft already has a solution to a problem - we have video lessons and documentation. In other words, the solution to such a user`s question is in the runoff, and it takes a couple of minutes. At the same time, our technical specialists can get to this question only in a couple of hours due to their workload.

The most illustrative example is disabling components conditionally.

We answer this question several times a day. Although there is a video lesson here, here is the documentation about conditional formatting, and here is the example of a report with the component disabling conditionally.

Just look at how conditional formatting works

Similar issues

We will always respond to you as soon as possible, but a solution can be so simple that a response time will be longer than the solution time. This is why we recommend you watch our video lessons, read documentation, and check samples. Most questions about creating reports and dashboards have already been answered. Also, you can search for similar issues of our users in the forum. For more global questions, we write articles on the blog.

What's next?

OK, you spent 5 minutes on our channel, documentation, forum, blog and did not find an answer. Your problem is not being solved. What's next? Next, you should contact our technical support or ask a question in the forum. In addition, it's important to understand one moment – you should properly prepare your question to get a correct answer.«You should understand the following moment – specialists of our technical support work 24 hours, 7 days a week. In addition, the time of processing a question depends on many factors. As a rule, a question is processed within a few minutes. However, sometimes it takes several hours.»Next, a funny situation happens - several hours passed, a question was received, but it contains a verbal description only. Our specialist will need some time to reproduce the problem. Unfortunately, it's not always possible. Then, the specialist sends a request to detail a user's problem. As a result, at least, the time of the question processing waiting is missed. Furthermore, in this case, the time is missed twice.

Optimize the time

It's easy to optimize the time of a problem solution when contacting technical support. To do it, just follow our recommendations.
  1. Specify the product you use. It's vital for us, as we support full functionality in all our components. However, it can be implemented in various ways for a specific platform. As a result, for example, the HTML5 viewer can have events for the ASP.NET platform or have actions if it comes to the .NET Core.

  2. Be sure to include the version of your product and the date of its release. This is the second important criteria, which will allow you to confirm your problem in real time. Since this may be an error, which occurred only on this specific version of the build. This information will allow you to identify time and find the reason for the problem.

  3. Describe your problem. The best way is to describe it step-by-step. Obligatorily specify the result you want and what you cannot solve out. Quite often, it is a particular sequence of actions that leads to an error and rather not to the result you expect. So, sometimes it takes several hours and maybe days to find this certain sequence of steps. If there is a transparent algorithm of "what-I-do-to-reproduce-the-issue", it's a matter of several minutes to reproduce and confirm the problem.

  4. You should attach a project if it comes to software development. Sometimes we are faced with the fact that there seems to be an exact algorithm of actions, the product version is known as well as the build number, but we can't reproduce an error. As a rule, it's connected with the fact that various settings are set in the user project or, for example, third-party libraries are used. In this case, the conflict with Stimulsoft components occurs. All of that is clarified during the work of our technical support, but, as a rule, not immediately, which causes time costs. That's why we included this point in the recommendations.

  5. You should attach a report if your problem is in a specific one. The situation is approximately the same as with projects. Each report of our client is a unique combination of components, their properties, and interactions. Furthermore, the connection between this and the occurring error is not always clear and understandable, especially from the point of view of a novice user. As a result, if our specialists are unable to reproduce an error, clarifying questions will be required, which will lead to increased time of solving a question.

  6. If it's possible, you should add several screenshots, if possible, with a short description. It was proven a long time ago that the visualization of information reduces the time of its perception and analysis. Therefore, several screenshots with explanations greatly simplify the perception of a described problem.
Here is the small list of recommendations, which will significantly simplify communication between a user and our technical specialist. It will greatly reduce the time of solving a problem. This article is not a guide to action but a recommendation.

In any case, we will process all your questions and solve them as soon as possible.
Hello respectful users of Stimulsoft! This time we will tell you about the Embed all data to resources option.
Let's figure out what is the destination of this feature and how it works. As you already know, data in a report is always requested in the Preview, which requires access to the database. Now let's imagine the following situation - a report creator wants to send a report template to another creator, but the second one doesn't have access to the database. It means that he won't see data. To solve this problem, we created the Embed all data to resources option. With its help, you can embed data and send a report template to another creator, and he doesn't need to connect to data.

To do it, you should go to the Dictionary panel, then select the Actions and the Embed all data to resources.

Embed all data
Next, the Stimulsoft Designer warning window opens, which says that this feature embeds all data to the report resources, makes your report standalone, and all your data settings will be changed and won't be restored. Click Yes.

Warning window
After this, the Engine connects to the database, loads all data, creates an XML file, and then puts it into the report resources, and these data will be already embedded into the report. Now we will show you this with an example. There are data descriptions from MySQL in the Dictionary panel.

XML data source
Select Embed all data to resources, then the resources with data appear.

Now, this data is in an XML file, and the file is in the report resources. After that, you can send a report template to another report creator so as data in the report template is already integrated. It's worth paying attention to the fact that embedding data to resources changes the file volume – the report template enlarges by the size of the data size because they all are downloaded from the base.

Report page
We hope this article will help you understand how to use the Embed all data to resources option, and now you can send a report template to the creators who don't have access to the database. If you have any questions, contact us – we will be glad to help you!
We are continually developing our software. Our main goal is to be at the cutting edge of software engineering. Each release contains new features, component optimizations, and bug fixes. This is why a new release is always the product improvement of the previous versions. However, not all users know about the ways of updating Stimulsoft components within their projects. In this article, we will talk about it in more detail.
Before proceeding to the update instructions, I would like to say that the update process is replacing the Stimulsoft assemblies and scripts in their projects. You can do it with the help of the following ways:
  • Download a product archive from the Stimulsoft website and replace files from an archive in your application;
  • Use manage packages to update some files in your project.

The first and the second ways of the component update are official. They don't carry any actions that violate the license agreement and usage rules. Which way to use is your decision. Files versions on the website and in the manager packages are identical and refer to the last version.

Downloading archives and manually updating product files

To download a library from our website, you should:

Step 1:  Open any web browser on your device;
Step 2:  Go to our website at;
Step 3:  Go to the Download page on our website. To do that, you should click on the Downloads link in the header of any page or use the direct link;
Step 4:  Click on the Download in the block of the product you need. After that, the downloading of the product file archive using browser tools will start;
Step 5:  Replace the Stimulsoft files in your project with the files from the archive after unpacking them.

Downloads page
After that, Stimulsoft assemblies will be updated in your project.
To download the archive of product files from your account, you should:

Step 1:  Open any browser on your device;
Step 2:  Go to our website at;
Step 3:  Enter login and password to enter your account;
Step 4:  Select the product you need and click on the More Download in the block of this product;
Step 5:  Select the version of the product you need and click on the Download in the version string. After that, the downloading of the product file archive using browser tools will start;
Step 6:  Replace the Stimulsoft files with the archive files in your project after unpacking them.

Admin area
After this, Stimulsoft assemblies will be updated in your project.
To download files archive from Stimulsoft BI Designer, you should:

Step 1:  Run Stimulsoft BI Designer;
Step 2:  In the Get Started window, click on the Show More in the Develop section. If you can't see the Get Started window when starting the report designer, select an appropriate command from the File menu of the report designer;
Step 3:  Hover over the product you need;
Step 4:  Click on the Download. After that, the downloading of the product files archive using the Stimulsoft BI Designer will start. This archive will be saved on your device in the system Downloads folder;
Step 5:  Replace the Stimulsoft files in your project with the files from the archive after unpacking them.

Get started
After that, Stimulsoft assemblies will be updated in your project.

Updating files with the help of manage packages

Depending on the product, you can use a particular manage package to update Stimulsoft files.

You can update Reports.Net, Reports.Wpf, Reports.Web, Report.Blazor, Dashboards.WIN, and Dashboards.WEB with the help of the NuGet Package Manager:

Step 1:  In an application development environment such as Visual Studio, select the Manage NuGet Packages... command;
Step 2:  On the Updates tab, select the products to be updated;
Step 3:  In the field of the Version parameter, select the version of the product, which should be instead of the current;
Step 4:  Click on the Update.

NuGet Package Manager
After that, Stimulsoft assemblies will be updated in your project.
You can update the Reports.JS and the Dashboards.JS products from the system console using the NPM Package Manager:

Step 1:  Open the system console;
Step 2:  Specify the installing command for the Report.JS npm install stimulsoft-reports-js or for the Dashboards.JS npm install stimulsoft-dashboards-js;
Step 3:  After installing process completed, scripts will be located in the following path: node_modules\stimulsoft-reports-js\Scripts\ for the Reports.JS or node_modules\stimulsoft-dashboards-js\Scripts\ for the Dashboards.JS;
Step 4:  Copy them instead of the used scripts in the project.

NPM Console
After that, the project scripts will be updated.
You can update Reports.Angular using the NuGet packages (server-side) and the NPM packages (client-side).

Server-side update:

Step 1:  In an application development environment such as Visual Studio, select the Manage NuGet Packages... command;
Step 2:  On the Updates tab, you should select Stimulsoft.Reports.Angular.NetCore;
Step 3:  In the field of the Version parameter, select the version of the product, which should be instead of the current;
Step 4:  Click on the Update.

Angular NuGet Packages
After that, Stimulsoft assemblies in your project will be updated.

Client-side update:

Step 1:  Go to the ClientApp directory of your project;
Step 2:  Open the system console;
Step 3:  Specify the installing command npm install stimulsoft-viewer-angular.

Angular NPM console
After that, the client-side files will be updated.
You can update the Report.Java product with the help of the Maven Package Manager:

Step 1:  Open the project in a development environment, for example, Eclipse;
Step 2:  Select the Update Project... command from the Maven item in the context menu;
Step 3:  In an opened window, check the boxes of the Stimulsoft assemblies of the version you need;
Step 4:  Check the box of the Force Update of Snapshots/Releases;
Step 5:  Click on the OK.

Eclipse Maven Manager
After that, Stimulsoft assemblies will be updated in your project.
Hello to all readers of the Stimulsoft blog! As you already understood from the title, today we will talk about fonts.
Every time when designing a new report or dashboard, our users have some questions about the lists of fonts, how to work with them, their display on various devices, etc. Well, let's consider this topic in more detail and sort all the things out. What does the list of fonts, which we can see in the report designer, depend on? Mostly, the list of fonts depends on the operating system and a used product.

A certain set of fonts is installed in the operating system by default. However, after the operating system update and depending on its version, the list of available fonts may differ. Most often, a set of fonts is installed in the system by default, and each system version has its own list. You may install fonts with some apps or manually. They can be of various types - raster (bitmap) or vector (TrueType, OpenType, and PostScript).

Our products are intended for various technologies and, accordingly, they use different methods of information display. That is why fonts may be displayed differently. Besides, technologies may work differently on various versions of the operating system. For example, when working on Windows 8/10, Reports.Net, Reports.Wpf products, based on .NET Framework, support TrueType and OpenType fonts. Earlier versions of Windows support TrueType fonts only.The list of fonts in the report designer displays only the fonts installed on the system and are supported by the product and technology.All of the above applies to Reports.Net, Reports.Wpf, Dashboards.WIN. In the case of using Web products (client-server technologies) fonts list is taken from the operating system of the server-side of the product. Fonts list is pre-installed by our developers for the products where the JS engine is used.

Now let's talk in more detail about fonts themselves.

What is a font? A font is the set of symbols of a particular mark. Usually, each font represents a separate file. The files of fonts can be of different versions, and they can contain different amounts of symbols. As a rule, system fonts have only a few thousands of the most commonly used characters. There is a range of «universal fonts» containing a large amount of Unicode symbols, such as Arial Unicode and Lucida Sans Unicode. These fonts are usually very large and are not part of the system.

If a font does not contain necessary symbols, the system uses the «font fallback» algorithm, which inserts characters from similar fonts or fonts of a similar style. As a result, the appearance of the text may differ from the one intended. For example, a part of the text in another language can be displayed in a different font, and it will be very noticeable.

In some cases, missing symbols either don't display or are replaced with rectangles.

Text QualityIn the picture above, you can see an example of displaying the same text with different fonts in Stimulsoft Reports.Net. The top row of the table displays text with the Text Quality=Standard (the standard way of showing text in .NET Framework is based on the GDI+ library). The bottom row of the table displays text in the Text Quality=Wysiwyg (our method to output text is based on the GDI library). This method uses a different font replacement algorithm so that the appearance may differ, and some characters are not found, and therefore are replaced with rectangles.This is why to get a correct display of a text, you should think about fonts to be used before the report is designed. Also, when creating and displaying reports, you should ensure the accessibility of all necessary fonts.

You can use Custom fonts if the installed fonts in the system are not enough for your report design. These can be commercial fonts, created manually in editors, freely distributed, or downloaded from the Internet.

To make fonts available in our products, you should install them directly into the operating system. This option is suitable for desktop versions of Stimulsoft reporting tools. Fonts can also be installed with an application or manually by users.

Besides, there are two more ways for other versions.

The first way is font downloading from an app code with the help of the StiFontCollection class. This variant is intended for software developers and used at the stage of application creation. Most often, this is the way to add «Brand» fonts used in most reports. The second way is a font addition to the report resources. This way is suitable for report developers.Report file size and its processing time can change when adding a font file to the report resource.Custom FontsThe font selection tool in the Web version of our product is shown in the screenshot. All custom fonts are allocated in a separate category, "Custom Fonts".Most of our products accept the use of fonts TrueType and OpenType as custom fonts (files with “ttf” and “otf” extensions accordingly). Pay your attention to OpenType fonts on Windows 7, and earlier OS versions may not work in our product.
Also, it's worth mentioning exports in PDF and XPS formats. It's important to note that only when exporting a report to these formats fonts can be embedded in the document file. In this case, when watching this document on any OS, it will look the same.

Therefore, several conditions must be fulfilled for a correct formation:
  • All the necessary fonts must be available. You can get a font file from the system only in Net products on Windows. In other cases, all the required fonts should be loaded by one of the above methods (StiFontCollection or report resources);
  • Fonts must be TrueType or OpenType types;
  • Fonts must contain all the necessary symbols. If a font file is embedded, the «font fallback algorithm is not used to display it, and all missing characters are replaced with rectangles.

Export PDF FontsWe can see the example of the text display in an exported PDF file in this screenshot. When exporting to PDF, the system «font fallback» is used. So it's important to choose the correct fonts.
We hope that this article will help you to understand fonts in the Stimulsoft report designer. And now, you will be able to create an exclusive design for your reports and dashboards easily. If you have any questions, please contact us – we are happy to help you!
By using this website, you agree to the use of cookies for analytics and personalized content. Cookies store useful information on your computer to help us improve efficiency and usability. For more information, please read the privacy policy and cookie policy.