Propose your fantastic ideas regarding the Thinkwise Platform to our Product Team.
Since Universal GUI 2025.2.13 (rc1) fields with ‘Look-up has popup’ will become clickable in the (non-edit-mode) grid to open the lookup. This is a great feature, however not in all cases is this desirable.There can be multiple reasons to use a lookup popup in edit mode to help the user find the right record, but this doesn’t mean that it always adds value to open the lookup in non-edit-mode. Having many lookup fields in a grid can make the grid feel troubled and I also can imagine it could conflict with setting up a double click task on lookup column.So please make it configurable for (non-edit-mode) grids which look-up field are clickable (to differentiate from the edit-mode). For example under Subjects > Components > Grid.
I'd like to be able to make a Variant of a Domain with Elements. Instead of making 'close to double' Domains I'd like to be able to do the next: Domain: "document_types" Elements(just some examples): 1- Purchase Order 2- Sales Order 3- Invoice 4- Picture 5- Kick off Document 6- Financial Summary So the case would be: I have a Documents table with a column "document_types" with this domain. As example there will be 2 views, where you can add Documents on different ways. So view 1: I want to be able to add Purchase Orders, Sales orders and Financial Summaries and in view 2: I want to be able to add Invoices, Pictures, Kick off Document and Financial Summaries. To achieve this i would have to make 2 more domains for view 1 and 2 where I'll also have to make sure the database values are the same as in domain "document_types". Right now it takes: -1 Extra time -2 The maintainability of these columns/domains are harder, because you need to make sure they are in-line with each other. What do you guys think?
At this moment, only one instance of a task can be linked to a table.
Now that history data has its own data mapping for data migration, please use the same default value as the field itself has a default value.So for example a mandatory checkbox field that has a default value of 0 in the col table: in the datamigration mapping it already inherits the default value value for itself. But the default value for the history data stays empty right now.
I would like to propose an improvement (or ask for help) regarding the Activate Detail event when used as a Start Object for a Process Flow.I want to use the Activate detail event to trigger a Process Flow. The goal is to fetch data from an external system/API and display it in the detail screen only at the exact moment the user opens that specific tab.Currently, when the detail grid is initially empty (no records), the Process Flow triggers successfully, but the input parameters are empty. The flow does not receive the Primary Keys (PKs) from the parent/reference record.Because of this, the Process Flow executes, but I have no context (Foreign Keys) to determine for which parent record I need to fetch the data.This behavior seems inconsistent compared to a Table Task. When you execute a Table Task on an empty detail screen, the application does pass the PKs from the reference/parent record into the task.I haven't found a way to retrieve the parent context in this specific scenario.If I am missing a configuration setting to pass the reference columns to the flow on an empty grid?Consider this idea to enable the Activate Detail event to receive the reference columns/parent PKs as input variables, even when the detail grid itself is empty.
It would be a good idea to validate at the moment you add Elements to a domain, that the length of the domain is sufficient to store the element database value.For example:Domain will be added with data type VARCHAR, length 5.Element with database value "TestValue” will be added.The system alerts the developer that it’s not possible to add this value as it would not fit within the domain setting of max. 5 characters.This would avoid frustration at testing when the developer notices that it’s inpossible to store the full database value "TestValue”.
Recently Microsoft introduced the latest version of SSMS that supports a new feature, Database Instructions, that allows you to store instructions and database structure information in extended properties.Database Instructions - GitHub Copilot in SQL Server Management Studio (Preview) | Microsoft Learn We use SSMS as our IDE combined with Github Copilot and having this integrated into SF would make this even more powerful.
I want to use generative AI to draft the bulk of my SQL templates, directly from my own IDE (e.g., VS Code) together with tools like GitHub Copilot. For this to work reliably, the AI needs first-class context from the Thinkwise Software Factory (SF): the application’s model metadata and relevant UI information. The SF already maintains a rich, structured model of tables, columns, and references; exposing that to the AI is the missing piece.Why this metadata is essential for AI-assisted SQL When the AI understands my model, its output stops being generic and becomes project-specific:Tables, columns, PK/FKs – enable correct JOINs, WHERE clauses, and integrity-awareness. The SF’s data model explicitly defines these entities and relations, which the AI can use to pick the right join keys, respect cardinalities, and avoid hallucinated columns. Domains (user-defined data types) – domains act as abstract data types that drive constraints and UI defaults. Sharing domains helps the AI choose correct data types, casts, default values, and validation logic in generated SQL. UI semantics – properties like control type or visibility can guide the AI to prefer filtered queries (e.g., hide inactive rows by default) or to shape parameter prompts and WHERE clauses that match what end-users actually see. Template description & intent – short, descriptive text per template (purpose, invariants, edge cases) gives the AI the business intent it needs to generate more accurate and consistent code.How I propose to make this work Expose a compact model export for use in VS Code MVP scope: tables, columns (incl. nullability), primary keys, foreign keys, domains (name, base type, constraints). Optional scope: UI hints (visibility, control), default filters, and template descriptions. Delivery options (any of these would work): Indicium OData endpoint that surfaces a read-only view of the SF model (Indicium already provides an open API and can expose SF branches when configured). CLI/export task that writes JSON files into a repository (consumed by VS Code). VS Code extension that authenticates to the endpoint and injects the model as inline context for Copilot prompts. Use the model export as AI context in the IDE In VS Code, I want to select a template and have the AI read the JSON/endpoint to generate the initial SQL ready for review and refinement. Expected resultsSpeed: AI drafts 70–90% of the SQL, I focus on edge cases. Quality: Consistent use of keys, domains, and defaults; fewer “missing join” or “wrong column” errors. Discoverability: As Thinkwise continues to add AI-powered features (e.g., model enrichments and support for storing LLM embeddings), a model-aware export aligns with that trajectory. Future fit: Community use cases already show value in combining Thinkwise models with LLMs (e.g., natural-language search using embeddings), reinforcing the need for structured model access.
In the Universal GUI grid the selected row, and the selected rows in multi-row selection, have different shades. Sometimes it's hard to tell which rows are selected. Currently these colors cannot be changed.It would be nice if this was configurable in the Software Factory.
It would be great if we can define a predefined value in the ‘Username’-field on the login screen.This value can then be populated by the domain-name in case Windows-authentication is use.This will speedup logging in for users as less chars needed for input and less chance for making mistakes.This option is already available for the Windows GUI (application.ini, add “Users = domain.local\’)
For user notifications, please make it possible to send an in-app notification that is displayed as a popup message instead of a panel message. Panel messages are easily missed by the user, so by using a popup message the user actively has to close the message window.
Currently as a user you can change several settings related to how you would like to use an application. Which setting you can set, is configured through IAM.I am missing 1 important setting in this. A setting to change the Timezone I’m using. Since all other settings related to your location (date format, language, number format) can be changed through this window, I would expect that the Timezone can also be changed from within this window.
When using ‘Execute all creation steps’ at the Creation menu item (and staying in the first tab), I don’t get a signal when there is an error at the ‘Execute source code’ tab.Could a badge be added to the ‘Execute source code’ tab when there is an error when executing the code?
In our application we have multiple status domains. Each one having roughly the same statuses but we want them to have different translations. For example the status concept or completed.It would be nice to be able to apply an alternative translation to the elements of a domain.
When using pagination in the Universal GUI it has some disadvantages:It takes up space on screen, specially annoying when the list is not the full size of the screen. When changing filter/sorting you can find yourself suddenly at page X. But you only realize this once you have scrolled all the way up and cannot find the first record.Of course there is the option to disable pagination, but that could lead to performance issues.Even when disabled, Indicium will use pagination of 1000 rows (unless exempted) for executing SQL statements, however Universal only shows the data once everything is loaded. I would like to see an option that has the same performance advantages of pagination without the disadvantages of using pages in the GUI. For example like this community works, you scroll down and at the bottom of the loaded rows, it has a button to ‘Show more’ rows. Of course it would work even better if it automatically loads more rows when you have reached the bottom. An alternative could be that when pagination is turned off, Universal GUI already shows the first 1000 lines while Indicium is loading the rest of the data in the background.
Will it be possible in the future to apply Infinite Scrolling to certain Card Lists, Form Lists and Grids in our applications? We would like to see it as an extra option in subjects.For some screens it is desirable to have this, especially for small mobile devices, this can gain some extra available height, and avoid scenarios like below:Is this technically feasible or are there good reasons not to want this?Or is this something that can now be achieved in the Univeral GUI, using custom CSS?
Now that a new IAM version is released every 4 weeks, we would like an option to upgrade IAM with zero downtime. I imagine this could work something like this:Create a new database and upgrade it to the new IAM version. In the old IAM, execute a task to transfer to the new IAM database. This task does the following: Indicium connects to the new IAM and copies all models/UP/applications etc. from the old IAM. During this copy action, Indicium writes changes to both databases (or temporary blocks it) Once both databases are in sync, Indicium switches its configuration to the new IAM database. Remove the old IAM database But hopefully Thinkwise has an even better idea to accomplish this without having to switch to a different database. Maybe instead of a new database, it could be a different schema within the database.
Since 2026.1 we have to use the Software Factory using Universal GUI, which is great! However, I noticed that the Software Factory in Universal is using a listbar instead of a treeview like in the Windows GUI.I need a lot more clicks to navigate to the right menu items/documents since the list bar closes previously opened menu groups every time you open a new menu group.
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
Sorry, we're still checking this file's contents to make sure it's safe to download. Please try again in a few minutes.
OKSorry, our virus scanner detected that this file isn't safe to download.
OK