Skip to main content

Hello everyone,

In this release, we have added one new model, called Columnstore index and AI search. We also merged two existing models, Maps (mymappi) and Google Maps, into a new model called Maps and Routes.

Fourteen models have been updated, and one model has been removed.

The changes in this release are available for Thinkwise Platform version 2024.3 and higher.

 

About the Thinkstore

The Thinkstore is a fully integrated way for downloading and installing ready-made solutions directly into your models right from the Thinkwise IDE. It contains a collection of scripts and samples to help you get the most out of the Thinkwise Platform. You can find the Thinkstore in the Software Factory, in the menu Enrichment > Thinkstore.

The Thinkstore only contains solutions specifically for the Software Factory version you are using. Therefore, the Thinkstore will be cleared before every platform upgrade. After the upgrade, if you open the Thinkstore in the new Software Factory version, it will initiate a refresh and retrieve all the available solutions for that version. This process runs in the background. It can take up to ten minutes before the solutions are available.

You can read more about the Thinkstore in the Thinkstore guide.

 

Contents

 

New Thinkstore models

Columnstore index and AI search

new

This new solution contains an example of how to use a columnstore index in the Software Factory, combined with AI search. The data model consists of a product table that can compare itself to other products within that table and provide a matching score. A higher score indicates that the product is more similar to the selected product.

The columnstore index ensures that this functionality is extremely fast. Columnstore indexes store data by column instead of row, offering significant data compression and reducing storage needs. This leads to faster queries because less data is accessed during query execution.

  • More general information about columstore indexes: Microsoft
  • More information about columnstore indexes in the Software Factory: Indexes

 

Maps and Routes

new Universal GUI

The models Maps (mymappi) and Google Maps have been merged into a new model named Maps and Routes. This new model serves the purpose of teaching how to work with the Maps component in the Universal GUI. It also uses two Web connection endpoints for retrieving the GPS coordinates and routes.

You need to get your own API key from Google and enter it into the Web connection.

The model includes a menu for addresses and routes:

  • Adding an address initiates a process flow that uses the Web connection to retrieve and display the GPS coordinates on the Maps component.
  • Once you have at least two addresses, you can add a route. The Web connection retrieves and displays the fastest route on the Maps component.

 

Updated Thinkstore models

Currencies API

change

We have removed the currency tables because this solution only provides a web connection and a task to start the API call and show the response. If you want to process the JSON response, this blog post with JSON examples might be useful.

 

Check constraints for easy user input validation

change

We changed the strategy for the control procedure check_constraint_message_add from delete to staged.

For more information about the custom check constraints, see the blog Check constraints using the Software Factory.

 

Differences in data between two databases

change

We removed unnecessary parts of the model, reducing the size of the export file model.dat, without any other changes.

 

Friendly error msg for database connector

change

We changed the strategy for the meta control procedure database_connector_process_action from delete to fully controlled. We also modified the insert statement for the table process_action_output_parmtr table to include the column output_parmtr_type with a value of fixed_option.

We changed the strategy for the control procedure error_log_code from delete to staged. We also removed the parameter @error_log_code from the error handling code in the template error_log_code, as it was not declared.

 

Date prefilters

change

Previously, this model included a table named date_of and a prefilter group called date_filters with 4 prefilters. Now, it only contains a meta control procedure tab_date_prefilter that adds the prefilter group and prefilters to all tables linked with the tag tab_date_prefilter. In the tag value, you must specify a column with a domain of data type DATEDATETIME, or DATETIME2.

The 5 prefilters created are:

  • Current week
  • Year to date (new compared to the previous model)
  • Current month
  • Current quarter
  • Current year

These prefilters can be adjusted within the dynamic code if you desire more or fewer prefilters or if you wish to modify any details of the prefilters. We set the strategy for the meta control procedure tab_date_prefilter to fully controlled, giving you the freedom to change the details after creation. Note that changes to the dynamic code will not modify the already created prefilters.

 

RDW car info / KVK info / Webservice example to retrieve address info from zip code

change

We have replaced the last message with a task pop-up to make it easier to show the given JSON and process the information.

 

Using OAuth to get data from external applications

change

The model Using OAuth to get data from external applications has been renamed to Using OAuth to get data from Exact Online. In addition:

  • The MS Graph connection has been removed. This is a separate Thinkstore model.
  • Instead of an HTTP connector, a Web connection is now used.

 

Default tooltip

change

The model Default tooltip has been updated:

  • The generation strategy has been changed to Fully Controlled.
  • The code has been changed so the trace columns are updated.
  • The code has been changed, so the tooltip translation is also updated when the translation is updated.

 

Make sure your display values are unique

change

The generation strategy has been changed to Staged.

 

Turn off enable tab task when empty

change

  • The generation strategy has been changed to Fully Controlled.
  • The code has been changed to a where not exists.
  • The code has been changed to create the tag when it does not exist yet.

 

Find a certain char in a string

change

We have added a table-valued function, which makes the functionality easier to use.

 

Generate a unique randomized token

change

We created a subroutine (procedure) for the functionality. Previously, it was only an example script.

 

Thinkwise Guideline Validations

change

  • We renamed the validation column_name_starts_with_the_table_name to tsf_guideline_column_name_starts_with_the_table_name. This is to be in line with the rest of the naming of the validations.
  • In the validation tsf_guideline_column_name_starts_with_the_table_name, the like missed the '%', this has been corrected.
  • tsf_guideline_domain_which_contains_the_name_of_an_rdbms_datatype now only checks for the RDBMS type of the model.
  • All the validations that use a cursor with a table variable have been changed to a temporary table to improve performance and stability. See this Community post.

 

Removed models

Use T-SQL OPENJSON for accessing JSON data

change

The model "Use T-SQL OPENJSON for accessing JSON data" has been removed from the Thinkstore. This blog post with JSON examples should give you enough information to work with JSON in T-SQL.

 

Questions or suggestions?

Questions or suggestions about the release notes? Let us know in the Thinkwise Community!