Skip to main content
featured-image

Release notes Universal 2023.3.11

October 27, 2023Full release 2023.3.11 Fixed: The cubes no longer listened to filter options like adjusting a prefilter, changing a parent record, searching, etc. This has been resolved.  Hello everyone,In this sprint, we added a filter pop-up, the option to select a chart type, support for the Color control, and more. We have also fixed a number of issues. DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal GUI  user interface guide to get familiar with the GUI. Universal GUI version 2023.3.11For more information about setting up the Universal GUI, see the Universal GUI setup guide.Note:Use a modern browser to access the Universal GUI, e.g., a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal GUI on the same server as Indicium or an allowed origin in appsettings.json. The Universal GUI only works with version 2022.1 and up of the Thinkwise Platform. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2023.3.11 here  ContentsDemo Universal GUI version 2023.3.11 New Open the Process flow monitor from the profile menu Advanced filter pop-up Pivot series totals Icons on component tabs Chart type selection Support COLOR control 'Activate Detail' process flow starting point Changed Updated import Minor fixes and tasks What we will be working on next sprint Questions or suggestions?NewOpen the Process flow monitor from the profile menunewIn the previous release, Thinkwise introduced the Process flow monitor. You can use it to gain insight into the state of a process flow for the logged-in user.Now, if you have the role of Developer, you can also open the Process flow monitor from the profile menu in the Universal GUI. It was already available as a link on the Indicium login screen.The Process flow monitor is available as of Indicium release 2023.3.10. Advanced filter pop-upnewWe have expanded the possibilities for the user-defined column filters with a pop-up. With the advanced filter pop-up, users can have a better overview of the set filters. It also provides a flexible way to modify and combine filters based on fields, operators, and values.You can open the pop-up from the subjects toolbar by selecting the Filter option.The Filter option is available in the overflow menu You can configure the initial appearance of this filter form in the Software Factory (menu User interface > Subjects > tab Default/Variants > tab Data > tab Filter). The selected operator can be defined per column using the Filter Condition. Otherwise, it is set based on the default settings of the Model per data type (menu Models > Model content > tab Model settings > group Filter).The pop-up initially shows the Visible for filter = Always columns and the columns the user already filtered on. We advise you not to make each column visible by default to give the user a clear overview of the most important columns to filter on.Creating a filter on the selected grid cellWith the dropdown at the bottom, the user can add more columns to the filter. Here also, the Visible for filter = Extended columns are available to add. Select Reset to start over again with the initial settings. Only one statement per field is possible.Once the user confirms the settings by selecting Filter, the pop-up is closed, and the subject is filtered.Not all types of fields can be filtered yet, and not the full list of operators has been implemented yet.Missing operators:is (not) empty not starts/ends with not containsUnsupported control types:Date/time File/image HTML/multiline Label  Pivot series totalsnewPivots now show the subtotals and grand totals of series. The totals appear to the right of the values being summed.  Icons on component tabsnewYou could already add icons to detail tabs. Now, you can also add icons to component tabs (menu User interface > Screen types > tab Design).If a tab container has a vertical orientation and at least one of its tabs has an icon, icon space is reserved on every other tab in that container as well, even if they do not currently have an icon.The icons are hidden by default. Use the extended property ShowTabIcons to enable them per application. Chart type selectionnewUsers can now change the chart type. To change the chart type, click  to open the Chart settings and select the Chart type from the list. The selected chart type is remembered on the device and will be applied again when the chart is reopened. Support COLOR controlnewWe now support the Color control in the grid, form, and card list. When in edit mode in the grid or form, the user can select a value for the Color control using a color picker. When not in edit mode or when in the card list, the user sees the color that was selected and its textual representation (in hex). 'Activate Detail' process flow starting pointnewThe Activate Detail process action can now be used as a starting point for process flows. ChangedchangeUpdated importWe have updated the mapping step in the import process:The checkboxes now have tooltips explaining their state and the possible action to take. You can now import an empty (NULL) value. This differs from not importing a column since it will import the column without its values. If you clear a checkbox, the selected column value is stored, and it is restored if you select the checkbox again. Minor fixes and tasks The process flow would continue after closing the message pop-up by clicking outside of it. This has been fixed. Some control types (for example, a checkbox) within a task pop-up did not always respond to their visibility. This happened if it did no longer fit in the same row/slot as the other fields because of field visibility changes. This issue has been fixed. The tooltip stayed visible after opening a screen with a process flow. This has been fixed. If a slot in the form contains multiple fields and one or more of those fields are hidden, the space for the visible fields is now calculated so that no space is reserved for the hidden fields. The Universal GUI would not reset the page index for the detail subjects when switching rows. This could result in empty details because of the invalid page index. The detail subject is now reset to the first page/record. On deleting an active row via a task button, the task would successfully delete the record, but the UI would show a warning message: "Object not found". This has been solved. Forms were not cleared after executing a task on a filtered dataset. For example, a filter hides all records with the status done. If you executed a task to set the status of an active record to done, the record would be filtered from the table. However, the active form would not be cleared. The record would still be available but not editable. This has been fixed. The 'Open as floating document' parameter for the 'Open document' process action did not work correctly if the subject to open was not available in the menu. This has been fixed. If the splitter was moved outside of the browser window, some components would freeze and become unusable until the page was refreshed. This issue has been fixed. If a lookup would gain focus automatically by adding in the grid, the Universal GUI would sometimes not correctly fill in the value typed by the user. When typing, the new characters would completely replace the already typed characters. This has been fixed. When working on a record in edit mode while auto-edit is enabled, you could lose edit mode or encounter an error message when selecting add or copy. In that case, it was not possible to return to edit mode. This has been fixed. It was possible to edit the checkbox in the grid when not in edit mode. This issue has been fixed. The task and report popups would not respond to changes to the @confirm_button_type and @cancel_button_type in the layout procedure. In the example below, this would result in the execute button staying disabled, even after the user fills in the name. This has been corrected. if @name is nullset @confirm_button_type = 1 -- disabled The cubes no longer listened to filter options like adjusting a prefilter, changing a parent record, searching, etc. This has been resolved. What we will be working on next sprintAdditional drag-and-drop scenarios Pivot sort series on values. UI for user-defined cube views. Filter on date time types. Support for more filter types like: is empty and not contains. Toolbar improvements. Editable multiline and HTML in the grid. Export and import translated data. Calculator control. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Universal GUI
featured-image

Release notes Windows GUI (2023.3.11)

Hello everyone,In this sprint, we have improved the email preview and solved some problems.You can read more about the Windows and Web GUI's features in the user interface guide.Download Windows GUI 2023.3.11 here. ContentsNew Improved email preview Minor fixes and tasks Changes from external code editor not always saved Unavailable domain element not translated Fix for minimum and maximum constraints Questions or suggestions?  NewImproved email previewWindows GUI changeWe have improved the preview of email messages with a .msg extension. The message did not always load properly. We have improved this by using a different component for rendering the email messages. Minor fixes and tasksChanges from external code editor not always savedWindows GUIIf you changed code in an external editor in the Functionality screen in the Software Factory, the changes were not always saved in the model. This problem has been solved. Unavailable domain element not translatedWindows GUIYou can mark domain elements as unavailable to remove them from a dropdown menu (menu (Data > Domains > tab Elements > tab Form > tab Element).Previously, these elements were no longer translated. Now, when marked as unavailable, they will still be translated. The translation is used in the database for historic data using the domain elements. Fix for minimum and maximum constraintsWindows GUIIn specific scenarios, applying minimum or maximum constraints to numeric domain values could lead to an application-breaking exception if the user-supplied value fell outside the bounds of the underlying data type.For example, when attempting to input a value of 999 into a field with a data type of tinyint and a maximum allowable value of 100, the application would encounter an exception. This has been fixed. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Windows GUI
featured-image

Release notes Indicium (2023.3.11)

Hello everyone,In this sprint, we have added a health check endpoint and a button to return to the application. We have also fixed the EML file preview.You can read more about Indicium's features in the Indicium user manual .We will keep you updated regularly about Indicium's progress. About IndiciumTwo types of the Thinkwise Indicium Application Tier are available: Indicium: for use with the Universal GUI and via APIs. This version uses the full range of Indicium functionality.Download Indicium release 2023.3.11 here. Indicium Basic: for use with the Windows GUI and Mobile GUI. This basic version does not support features such as system flows and OpenID. There is no Indicium Basic release 2023.3.11.  ContentsAbout Indicium Breaking File extension whitelist will also apply to downloads and previews Indicium - New Return to the application button Health check endpoint Use in Developer mode Fixed Fixed non-HTML EML file preview Questions or suggestions? BreakingFile extension whitelist will also apply to downloads and previewsIndiciumThe file extension whitelist that can be configured on storage configurations will now also apply to downloads and previews, instead of just uploads. This can be a breaking change if your storage location already contained files that are outside of your configured whitelist. If this is the case, then we recommend either expanding the whitelist or removing that file.For icons that are stored in the application model in the Software Factory and Intelligent Application Manager, only the following file extensions are allowed: .svg, .png, .jpg, .jpeg, .gif and .bmp. If you are using another file type as an icon for your application, please let us and postpone the installation of this version of Indicium. Indicium - NewReturn to the application buttonIndicium newWe have added a new button to the Indicium root page: Return to the application. This button will make it easier to go to the application from the root page.The value of this redirect button can be set in the appsettings.json. In most cases, you would set this to the URL of the Universal GUI. This way the button will redirect the user back to the Universal GUI."LoginOptions":{ "ApplicationRedirectURL": "<your value>"}Return to the application from the root page Health check endpointIndicium Community idea Application administrator newWe have added a /health endpoint that can be used by monitoring software to periodically check the status of Indicium.The endpoint can be accessed anonymously. If Indicium has been started successfully, it will return one of the following responses:200 OK{ "status": "Healthy"}200 OK{ "status": "Degraded"}503 Service Unavailable{ "status": "Unhealthy"}A "Healthy" status indicates that Indicium is running as expected as far as the health checks can determine. A "Degraded" status indicates that the connection to the meta source (IAM) works as expected, but one or more application connections are having issues. An "Unhealthy" status indicates that Indicium's connection to the meta source is having issues.Use in Developer modeDeveloper modeThe endpoint returns more information if accessed by a user who has been assigned Developer mode access in IAM. For example, a basic result when everything is healthy:200 OK{ "status": "Healthy", "reports": { "meta_source": { "status": "Healthy", "description": "Status of the connection to the meta source database.", "duration": 78.8475, "data": { "assembly_version": "0.0.0.0", "result_loaded_from_cache": false, "sub_reports": { "iam_connection": { "status": "Healthy", "description": "Connection to IAM was successful.", "data": {} }, "version": { "status": "Healthy", "description": "The metasource version of the database and the one that Indicium started with are the same.", "data": { "expected_version": "2023.2.13", "current_version": "2023.2.13" } }, "time_difference": { "status": "Healthy", "description": "The time difference between the server Indicium is running on and the database server must be less than 20 seconds.", "data": {} } } } }, "application": { "status": "Healthy", "description": "Connection status of each application that is currently active in IAM.", "duration": 168.6951, "data": { "sub_reports": { "itst": { "status": "Healthy", "description": "Connection status to the database of application itst.", "data": { "application_id": 52, "application_alias": "itst", "model_id": "INDICIUM_INTEGRATION_TEST", "model_version": "MAIN", "result_loaded_from_cache": false, "cache_result_expiration": "2023-09-26T15:48:33.9810801Z" } }, "sf": { "status": "Healthy", "description": "Connection status to the database of application sf.", "data": { "application_id": 64, "application_alias": "sf", "model_id": "SQLSERVER_SF", "model_version": "2023.2.13", "result_loaded_from_cache": false, "cache_result_expiration": "2023-09-26T15:48:34.0123615Z" } } } } } }}The meta_source report contains data about the connection to the meta source that has been configured for this Indicium instance.The assembly_version property contains the full product version of Indicium itself according to the assembly file, for example, "2023.2.13.0-ga9a28b0-0". The agent_id contains the ID that this Indicium instance communicates towards IAM to facilitate agent services such as system flows. It is only present if the Agent:Enabled setting in the Indicium configuration has been set to true. The result_loaded_from_cache property indicates whether or not the current request used a cached result for the entire check. All checks are always performed, even if the endpoint is accessed anonymously. To prevent checks from hitting the database too often, a caching mechanism has been added for some checks. The duration of the cache time can be changed; see the configuration options further below. The sub_reports property contains more information about each sub-check that was done to determine the status of the meta_source check. iam_connection checks if Indicium can still connect to the meta-source database. version checks if the version of the meta-source still matches the one that Indicium found when first starting up. time_difference checks if the time difference between the system clock of the server Indicium is running on does not deviate too much from what the database server reports. If the difference is too great, features such as system flow scheduling might experience issues. If any of these checks report "Unhealthy", there is something wrong with Indicium, and it might need to be restarted in order to continue providing service. The application report contains data about the connection status to each currently available application within the meta-source.Each sub-report is about an application of which the connection was checked. The ID of the sub-report is either the application's alias or if the alias is not set, the ID of the application. Each sub-report contains the following data properties: The application_id - the ID of the application that was checked. The application_alias - the alias of the application that was checked. The model_id of the application. The model_version of the application. The result_loaded_from_cache property indicates whether this result was currently loaded from the cache. The cache_result_expiration property contains a UTC timestamp indicating when the cached result expires, and the connection will be checked once more. The "Healthy" and "Unhealthy" statuses have different cache durations. Both can be changed in the configuration of Indicium; see the configuration example further below. The sub-reports will indicate either a "Healthy" or "Unhealthy" status. However, the main status of this report will indicate "Degraded" in case one of the applications indicates an "Unhealthy" status. The reason for this is that an application connection failing does not necessarily indicate that the entire Indicium service is running incorrectly. Furthermore, some monitoring software on Azure, for example, will attempt to restart Indicium if the health endpoint returns an HTTP status code outside the 200 range. Since an "Unhealthy" status returns a 503 Service Unavailable response code, this would be the case. However, a restart probably will not fix the issue in case of an application connection failure. Therefore, we return a "Degraded" health status instead to indicate that something is still wrong, but the service will not be restarted because a "Degraded" status also returns a 200 OK HTTP response code.Below are the configuration options that are available for the health checks and their default values:{ "HealthCheck": { "MetaSource": { "CacheDurationInSeconds": 60 }, "Application": { "Enabled": true, "Include": [], "Exclude": [], "CacheDurationInSeconds": { "Healthy": 300, "Unhealthy": 60 } } }}HealthCheck:MetaSource:CacheDurationInSeconds controls the cache duration of the entire meta source check result. The default value is 60 seconds (1 minute). HealthCheck:Application:Enabled controls whether the application connection check is enabled. The default value is true. If set to false, a report is still added, but it will always return "Healthy". HealthCheck:Application:Include can be used to only perform the application connection check on the provided application aliases/IDs. By default, all active applications are included. If you set this value to [ "sf", "example", "96" ], for example, only the connection to these applications will be checked: Alias: sf Alias: example ID: 96 HealthCheck:Application:Exclude can be used to exclude certain applications by alias/ID from the check. By default, no applications are excluded Setting this value to [ "example", "96" ], for example, would cause these applications to be excluded from the check. This setting gets applied after "Include", so combining the two examples above would result in only the following application connection being checked: Alias: sf HealthCheck:Application:CacheDurationInSeconds:Healthy can be used to control the cache duration of each application connection result that reports a "Healthy" status. The default value is 300 seconds (5 minutes). The minimum value that can be configured is 10 seconds. HealthCheck:Application:CacheDurationInSeconds:Unhealthy can be used to control the cache duration of each application connection result that reports an "Unhealthy" status. The default value is 60 seconds (1 minute). The minimum value that can be configured is 10 seconds. Community link  FixedFixed non-HTML EML file previewIndicium fixWe have fixed a problem that prevented previewing .eml files (emails) that have plain text bodies instead of HTML bodies. We have also fixed a related issue where in some cases the file size of attachments would not be displayed correctly. They would erroneously show 0 bytes. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Indicium Service Tier
featured-image
featured-image

Release notes Windows GUI (2023.3.10)

Oct 4, 2023Changed release version 2023.2.13 to 2023.3.10. No changes in content.Hello everyone,In this sprint, we have added that the file upload dialog remembers the last directory. We have also fixed some issues.You can read more about the Windows GUI's features in the user interface guide.Download Windows GUI 2023.3.10 here ContentsNew File upload remembers directory Minor fixes and tasks Grid no longer ignores cell focus Fixed error for add row in a grid Solved problem with mandatory prefilter Questions or suggestions?  NewFile upload remembers directoryWindows GUIWhen uploading a file in a grid, the dialog now remembers the last directory from which a file was selected. This folder is opened initially in the dialog. This was already available in a form. Minor fixes and tasksGrid no longer ignores cell focusWindows GUIWe have solved a problem where the grid ignored the cell focus and only navigated to the next or previous cells.This problem could occur if you typed in a grid cell and wanted to remove a typo two characters back using the left arrow key. In that case, the grid would ignore that the cell was in edit mode and move the focus to the previous cell instead of the previous characters.Fixed error for add row in a gridWindows GUIIn a detail tab in a grid (in edit mode, with add row in grid activated), a null reference error would occur if a user tried to add a row directly in the grid.This has been solved. Now, the grid shows an empty new row at the top, where the user can edit the row directly.Solved problem with mandatory prefilterWindows GUIWe have solved that a user could deselect all the prefilters within a mandatory prefilter group even though at least one prefilter should remain active.Now, the last active prefilter can no longer be deactivated in a mandatory prefilter group. Another prefilter has to be selected first. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Windows GUI
featured-image

Release notes Universal GUI (2023.3.10)

October 4, 2023Full release 2023.3.10 (from 2023.2.13 BETA) New features that support the Thinkwise Platform 2023.3: Language user preference Fallback display types for table tasks and reports Change: Tab icons hidden by default Fix: Multi-select for touch screens  Hello everyone,In this sprint, we have added configurable import for Excel and CSV files. We have also added support for the Language user preference, the Change sort order process action, and fallback display types for table tasks and reports. DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal GUI user interface guide to get familiar with the GUI. Universal GUI version 2023.3.10For more information about setting up the Universal GUI, see the Universal GUI setup guide.Note:Use a modern browser to access the Universal GUI, e.g., a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal GUI on the same server as Indicium or an allowed origin in appsettings.json. The Universal GUI only works with version 2022.1 and up of the Thinkwise Platform. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2023.3.10 here ContentsDemo Universal GUI version 2023.3.10 Contents New and changed Support for fallback display types Configurable import Tab icons hidden by default Language as a user preference Support for 'Change sort order' process action Improved hierarchy and attribute trees  Skeleton screen when loading Saving when switching tabs changed Fixed multi-select for touch screens Minor fixes and tasks What we will be working on next sprint Questions or suggestions? New and changed Support for fallback display typesnew​We have added support for fallback display types for table tasks and reports. This is available as of Thinkwise Platform version 2023.3.To customize how a table task or table report is shown in the Universal GUI, you could already change its Display type. If there was enough space, the presentation would be according to the selected type. With insufficient space, the Universal GUI decided what the fallback display type would be.You can now customize the fallback behavior to suit your needs. We have added additional combinations of fallback display types as options to cover most cases. For more information, see the Thinkwise Platform 2023.3 release notes. Configurable importnewYou can now configure how to import an Excel or CSV file into your subject. You can find the Import option in a subject's overflow menu. The import consists of various steps that guide you to the configuration:The first step is Select file. Here, you can select the file that you want to import. .XLS, .XLSX, or .CSV are the only allowed extensions.Select the file you want to importIn the second step, Import mode, you can configure how the data should be imported. Based on the selected mode, the description at the bottom differs because it depends on the location where the export is started. When working in a detail subject, it explains why the related columns to the parent subject could not be changed. The options for the import mode are:Insert all data Add new records, update existing records Only update existing recordsThe third step is Prepare data. This page differs according to the type of file that is selected. With the fields at the top, you can select which part of the selected file you want to import. It also shows sample data of the selected file.For an Excel file, you can select the worksheet and where the data starts. For a CSV file, only the headers field is available. Indicium guesses the delimiter separating the column values. This cannot be changed yet.For both import and export, it is not yet possible to work with translated data.The fourth step is Map data. Here, you can map the column of a CSV or Excel file to a column in your database. You can select which columns should be imported. If columns are not available in Excel but do require a value, you can set a constant value that should be used for each row. Next to each column, a preview is shown of the data that will be imported.Map file columns to database columnsThe final step is Import. This screen shows an overview of the configured settings and a preview of what the import will look like. Select the button Import to start the import. A progress bar is shown.When the import has finished, an overview shows how many records have been imported, updated, or failed. You can download an Excel file with the rows that failed to import. Tab icons hidden by defaultchangePreviously, icons on tabs were, by default, always visible. Based on user feedback, we have changed this. Now, tab icons are hidden by default.You can use the new extended property ShowTabIcons to show them. Language as a user preferencenew changeUsers can now change their language in an application with the Universal GUI. This is available as of Thinkwise Platform version 2023.3.They can select User preferences in the profile menu and switch to any available language. If no translations are available for the selected language, the Universal GUI will show the default language. Note that it can take up to one minute for all translations to load.In addition, the option Change password has moved from the User preferences to its own item in the profile menu.Changed user preference menu Support for 'Change sort order' process actionnewUniversal GUI now supports the Change sort order process action. It was already available for the Windows and Web GUIs.We have also solved a problem with the sort arrow. It would not be removed when resetting the sort order. Improved hierarchy and attribute treeschangeWe have improved the hierarchy and attribute trees. They now support multi-selection and conditional layouts.This change also results in some small behavioral changes:Previously, you had to use the left and right arrows to expand and collapse. Now, this is done with the Enter key instead. The trees have some minor visual changes.In addition, we have solved a crash in the attribute tree and the problem of a broken hierarchy tree when multiple parent columns were configured.  Skeleton screen when loadingchangeThe Universal GUI now shows a skeleton instead of a spinner screen when loading. If you want to go back to the spinner, set enableSkeletonScreens to false in the config.json file.Example of skeleton screens Saving when switching tabs changedchangeIf you switched to a different tab with Auto-save enabled and the subject in edit mode, it would be saved in the background.Now, if you switch to another tab, the subject will be saved first. Only if the save succeeds will it switch to the new tab. This prevents errors in the newly opened tab about the previous subject, for example, when a mandatory field is empty. Fixed multi-select for touch screensfixWe have solved some problems with multi-select for touch screens:It is now possible to deselect the active record (as shown in a form and breadcrumb). When deselected, the first selected record will become the new active record. Deselecting is not possible if the active record is the only selected record; this is intentional. If you deselect the active record when it is the last record in a selection, the GUI now shows the right number of selected records in the top bar (instead of 0). When you start selecting multiple records by long-pressing a record, this record now becomes the new active record, as expected. Previously, it would be added to a selection with the prior active record. Now, checkboxes are shown on each row in a grouped grid. It is no longer possible to exit multi-select with long-pressing, you must now press the X in the top bar. Minor fixes and tasksAdding a new row that included a read-only checkbox field on a grid would ignore the default value of that field and show a NULL/indeterminate checkbox. This has been fixed, the proper value will be shown now. The HTML control did not save the contents correctly when closing the keyboard with the Done button on iOS. This has been fixed. The control for the file input field scaled outside the normal field boundary during uploading. This has been fixed. The tooltip for grid headers did not look as intended. This has been fixed. A detail subject kept showing summary/aggregation value underneath the grid when a parent record was selected without detail records. This resulted in a possible expensive data request without filtering on the parent keys. This has been fixed; without a parent record, there will be no summary. The Copy to clipboard control for forms would not expand to match the field height in the positions setting. This has been fixed. The control now also allows multiple lines of text if the field height in positions is higher than 1. Clicking on hyperlinks in form input fields (Email, Telephone No, URLs, etc.) would not work. This has been fixed. What we will be working on next sprintThe next sprint we will be working on:Advanced filter form Pivot series totals Editable cube view Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Universal GUI
featured-image

Release notes Indicium (2023.3.10)

Oct 4, 2023Changed release version 2023.2.13 to 2023.3.10 No changes in content Hello everyone,In this sprint, we have mainly added new features for monitoring and logging. We have also solved an issue.You can read more about Indicium's features in the Indicium user manual.We will keep you updated regularly about Indicium's progress. About IndiciumTwo types of the Thinkwise Indicium Application Tier are available: Indicium Basic: for use with the Windows GUI and Mobile GUI. This basic version does not support features such as system flows and OpenID. There is no Indicium Basic release for 2023.3.10. Indicium: for use with the Universal GUI and via APIs. This version uses the full range of Indicium functionality.Download Indicium release 2023.3.10 here.  ContentsAbout Indicium Contents Indicium - New and changed Process flow monitor Events for authentication for Azure Application Insights Indicium version logged on startup OpenID provider sign-out buttons can be removed Indicium - Fixed Questions or suggestions? Indicium - New and changed Process flow monitornewWe have implemented an initial version of the process flow monitor in Indicium. It offers many of the same features as the one you might know from the Windows GUI (in the Developer ribbon).The process flow monitor is only available for users with the role Developer mode in IAM. If you are logged in and navigate to Indicium's landing page, you will find a link to the process flow monitor. The address for direct access is https://[server]/indicium/account/ui/processFlowMonitor.A link to the process flow monitor in the login screenWhen you open the process flow monitor, it is always empty. It will only start recording process flows after you open the page. Furthermore, you can only see process flows that have been initiated by you (your IAM user). This means that system flows are not available.When you trigger a process flow (in the Universal GUI or through an HTTP client such as Insomnia or Postman), you will see entries appear in the process flow monitor. Each instance of a process flow will produce an entry that contains a timestamp, the name of the process flow, and the unique ID of that process flow instance. Click on an entry to expand it and view more detailed information.Process flow entries in the process flow monitorAfter clicking on a process flow entry, it shows all of the recorded events for that process flow. These events include ProcessFlowStarted, ProcessActionStarted, ProcessActionCompleted, and ProcessFlowCompleted. You can further expand each of these events to show more details.The ProcessFlowStarted event contains the values of the process variables at the start of a process flow. It is the state of the process variables before any process action has been started. The ProcessActionStarted event contains the state of the process variables at the start of the process action. It also contains the values that the input parameters of the process action received. The ProcessActionCompleted event contains the state of the process variables after the process action has been completed (so after the output parameters have been processed). It also separately shows the values of the output parameters, but only those that have been mapped to process variables. This is currently a technical limitation. However, the status code of the process action will always be shown as a standalone row in this overview.An expanded process flow entry with several eventsEvents for authentication for Azure Application InsightsnewWe have added login telemetry events to Indicium. If you use Azure Application Insights, you can now analyze failed and successful login events by navigating to Logs and running the following query:traces | where customDimensions ["ProviderName"] == "Thinkwise-Login"Overview of log eventsAnalyze login events Indicium version logged on startupnewDuring startup, Indicium will now add an information message with the Indicium version to the log file. This ensures that we always know on which version an error has occurred when you send us a log file.Version in log file OpenID provider sign-out buttons can be removedchangeSome OpenID providers do not support signing out, which is not always clear from the metadata. To make it possible to turn off the sign-out option for an OpenID provider, Indicium will no longer show sign-out buttons if their icon and text are both empty. If only one sign-out option is available for the user, Indicium will automatically use that one without requiring an extra click from the user.To remove the sign-out button, go in IAM to the menu Authorization > OpenID providers > tab Formand clear the fields Sign out button icon and Sign out button text. Indicium - FixedWe have improved some translations on Indicium's pages related to authentication. They now better explain the reasons for receiving an email with a validation code (or not). Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!  

Related products:Indicium Service Tier
featured-image

Release notes Thinkwise Upcycler 2023.3.10

Hello everyone,In this release, we have added AI integration to the Upcycler. You can now use AI to translate code and add code descriptions during your enrichment steps.Read on for more details on the changes.Download the Thinkwise Upcycler 2023.3.10 here.RequirementsSoftware Factory 2022.1 or higher is required.ContentsRequirements New AI integration in the Enrichment analysis process How to start using AI in the Upcycler AI-driven generic analysis enrichments Uniface Upcycler enrichments New and changed in Upcycle steps Upcycle step 2410: Translate Views Upcycle step 2420: Translate Procedures Upcycle step 2430: Translate Functions Upcycle step 2440: Translate Triggers/Instead of triggers Upcycle step 2450: Translate Defaults Upcycle step 2460: Translate Layouts Upcycle step 2500: Create control procedure and template description Data model changes Column changes Questions or suggestions? NewAI integration in the Enrichment analysis processnewUpcycled applications typically contain code that was written in a different programming language, is missing comments, or contains comments in another language. With AI integration, you can now use OpenAI to, for example, add comments to existing code, add descriptions for any object in the model, or replace existing code concepts with new ones. AI greatly enhances the Upcycler's enrichment capabilities.In the Upcycler (menu Definition > Generic upcycler > tab Generic enrichment analysis step > Form > field AI Instruction), you can add the instruction that contains the rules and guidelines that the AI will follow. Providing more instructions usually leads to a better result. The generic AI instruction can be modified to fit every technology.Adding AI instruction to generic enrichment step How to start using AI in the UpcyclerTo use the AI capabilities of the Upcycler:Visit the website of OpenAI  to obtain an API key. Modify the generative AI provider settings in IAM for the Upcycler application: Go to menu Authorization > Applications > THINKWISE_UPCYCLER > detail tab Generative AI providers. Edit generative_ai and set the API key. Optional: Change the chat completion model from the default gpt-3.5-turbo to another model that your key allows. In the Upcycler, all enrichment steps with an AI instruction will now be processed using AI. The screenshot above shows a short example of a suitable instruction for adding comment lines to template code. To successfully give the AI a prompt to use, name a column in your Model query as "prompt". The value of this column will be used to generate a response.An example:In this example, the column ‘template_code’ will be used as the prompt To retrieve the results of the model query execution and the AI result, you can open the @json variable with the T-SQL function openjson(). The @json variable has the usual Application connector result structure, with the addition of an ai_result property in the Result list.Note that ai_result may not be a named column inside the model query, as this column will be automatically appended by the Upcycler after receiving a response from the AI.For example, to select all data from the previously mentioned model query, you can use the following query:select t3.*from openjson(@json) t1 -- main jsoncross apply openjson(a.value) t2 -- result[]cross apply openjson(b.value) -- resultSet[]with ( control_proc_id nvarchar(max), template_id nvarchar(max), template_code nvarchar(max), ai_result nvarchar(max) ) t3Using this data, you can specify enrichment action steps with the ai_result value. Use other steps as a reference for this. AI-driven generic analysis enrichmentsnewWe have added new enrichment runs to the Upcycler (See also New and changed in the upcycle steps in these release notes). The following new analysis enrichments are available:Translate Views Translate Procedures Translate Functions Translate Triggers/Instead of triggers Translate Defaults Translate Layouts Create control procedure and template descriptionThe first six translate enrichments translate legacy code into T-SQL per code group, using AI. These enrichments are separated between code groups to be disabled if the legacy code does not support anything that can be transformed into that logic type.For these enrichments, the process is as follows:The model query finds all control procedures that are not inactive and not generated (either by a dynamic model or from a base model) for that specific code group. The model query uses the template code as a prompt for the AI to translate. The AI instruction tells the OpenAI provider that it is a programmer who can translate code, and instructs it about which rules to follow and what kind of code to return. The data query produces a step per template with a valid AI response. During this step, the template code is overridden by the AI suggestion. You can choose which steps to execute in the action steps or execute them all and review the code in the Software Factory. There, you can also always find the old code in the history (Ctrl + H).The last enrichment (Create control procedure and template description) uses template code to create a description that explains what the code does. This can be very helpful for legacy code that could not be translated, as well as for Thinkwise experts who are not fluent in the legacy language.For this enrichment, we assume that every control procedure has precisely one template and one static assignment. It should be used before any changes have been made to upcycled code. If you have changed anything, check the model query and exclude these changes in the model query if necessary.For this enrichment, the process is as follows:The model query finds all control procedures that are not inactive and not generated (either by a dynamic model or from a base model). The model query uses the template code as a prompt for the AI to summarize. The AI instruction tells the OpenAI provider that it is a programmer who summarizes code, and what kind of response it must give. The data query produces a step per template with a valid AI response. During this step, a description is added by the AI suggestion if the description was empty before.These enrichments only work when an AI provider is configured correctly in IAM (see How to start using AI in the Upcycler). During the first enrichment analysis, this provider is tested.If it does not work correctly, the steps are disabled in the Application steps (Upcycle > Enrichment runs > Application > Application enrichment analysis steps). You can configure the AI provider in IAM and (potentially) enable the steps before trying another run.Note that these steps may take a while if the legacy contains a lot of code. Uniface Upcycler enrichmentsCompared to the generic analysis, the Uniface analysis does not analyze defaults or layout procedures because those are unavailable in Uniface upcycles.For all other new AI enrichments, Uniface-specific AI instructions have been included to support Uniface code instead of generic code.An example of a Uniface-specific AI instruction is: You are a programmer who translates code from Uniface to T-SQL. New and changed in Upcycle steps Upcycle step 2410: Translate ViewsStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Specific  Upcycle step 2420: Translate ProceduresStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Specific  Upcycle step 2430: Translate FunctionsStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Specific  Upcycle step 2440: Translate Triggers/Instead of triggersStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Specific  Upcycle step 2450: Translate DefaultsStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Not applicable  Upcycle step 2460: Translate LayoutsStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Not applicable  Upcycle step 2500: Create control procedure and template descriptionStep New or changed Generic step New Variation for DB2 for iSeries Generic Variation for PostgreSQL Generic Variation for Progress OpenEdge Generic Variation for SQL Server Generic Variation for Uniface Specific  Data model changesThis chapter describes which data model changes have been made to the Thinkwise Upcycler meta-model.Column changesTable From column To column application_enrichment_analysis_step - instruction enrichment_run - enrichment_analysis_run_ai_error_text enrichment_run_analysis_step - instruction generic_enrichment_analysis_step - instruction technology_enrichment_analysis_step - instruction  Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Upcycler
featured-image

Thinkwise Platform release 2023.3

Hello everyone, The highlight of this release is the introduction of generative AI in the Software Factory. We have added four Large Language Model connectors that you can use in your system flows. This opens a world of new possibilities.Some other important features are the improved merging process, the introduction of public API roles, and the possibility of encrypting key values in a runtime configuration. From IAM, you can now send email notifications to users.In this summary, you will read about some of the key features of this release. Read all the detailed release notes in the Thinkwise Documentation. ContentsContents Highlights of this release Generative AI in process connectors Generative AI in the Thinkwise Platform Branching and merging Public API roles Other new and changed features Email notifications from IAM Encryption of key values Questions or suggestions? Highlights of this releaseGenerative AI in process connectorsAs mentioned in the introduction, generative AI is now available in the Software Factory. To support you in using generative AI in your applications, we have added four Large Language Model connectors that you can use in your system flows.Generative AI is a class of artificial intelligence techniques and models that is designed to create or generate new content, such as text, images, music, and more, by learning patterns and structures from large datasets.A Large Language Mode (LLM) is an example of Generative AI. LLMs are large neural networks that are trained to predict the next token (word, punctuation, etc.) given some text. They are trained on very large amounts of data. You can instruct an LLM on what to do with your text.The new connectors open a world of new possibilities. You can use them, for example, to: Generate text based on a few keywords  Summarize text Classify text (extract the subject or tags from a text) Analyze the sentiment of a text Answer questions Translate text to another languageThe new connectors are:LLM Chat completion - use this connector to build a chat conversation between a user and a Large Language Model (LLM). LLM Completion - this connector can suggest how to complete a provided text. You can use it, for example, to complete product descriptions, draft emails, or generate code. LLM instruction - this connector can transform text following your instruction. It can, for example, summarize, translate, change the formality of, or remove sentiment from a text. LLM embedding - this connector can find semantically related texts.  Share your use cases and inspire others in the Thinkwise Community!The place of Generative AI and LLMs in the AI landscape Generative AI in the Thinkwise PlatformUsing the new LLM connectors, we have introduced AI in the Software Factory and the Upcycler.(available soon) In the Software Factory, you can use AI to perform a code review on any control procedure automatically.  This feature is intended to supplement human reviewers and should be used to assist in the review process. You can still deactivate the AI review if you prefer a manual review.In the Upcycler, AI is now available to enhance the enrichment capabilities. Upcycled applications typically contain code that is written in a different programming language, is missing comments, or contains comments in another language. With Ai integration, you can now use OpenAI to, for example, add comments to existing code, add descriptions for any object in the model, or replace existing code concepts with new ones.To use these features, you must enable AI for the Software Factory or Upcycler. Branching and mergingWe changed the detail screens of the merge process to improve the process and the conflicts overview.Tab Conflicts is now called Active conflicts. It contains a list of all conflicts that have been detected after you started the merge session. On the new detail tab Compare [object type], you can quickly identify and focus on specific conflicts. It also provides historical context so you can resolve conflicts more efficiently. Tab Actions is now called Advanced. It contains a complete overview of all generated delta actions. For more complex merge sessions, you can select here if and how actions should be applied or ignored. Tab Merge impact is new. It contains an overview of all the actions that will be done during the execution of the merge session. You can use this for a full review.In addition, merge sessions now also create and automatically resolve conflicts for duplicate update and delete actions in the source and target branches. This was already available for duplicate insert actions.The new tab Merge impact Public API rolesTo integrate your application with other systems, you can use Indicium calls with authentication, for example, as a client application or with an OpenID provider.However, systems like webhooks or subscriptions do not always allow authentication.In these cases, you can now make the API call public for access without authentication. You can use this for actions like processing appointments and emails with Microsoft Graph. To set up a public API call in the Software Factory, you must assign a role to the object, such as a subroutine, and make it public with the new checkbox Allow as public API. The next step is activating or deactivating a public API role in IAM. Other new and changed featuresEmail notifications from IAMYou can now send email notifications from IAM to users. Use this, for example, to inform users of an application about planned system downtime. Template for an email notification Encryption of key valuesYou can now encrypt key values in a runtime configuration for a File storage location, Email provider, Generative AI provider, or OAuth server.In addition, we have improved the encryption process when you switch to another type of email provider or file storage location in the Software Factory or IAM. This improvement gives you more control over the use of encryption. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Software FactoryIntelligent Application Manager
featured-image

Release notes Universal GUI 2023.2.12

September 1, 2023Full release 2023.2.12 Fixed: Sometimes, the Add row or Edit row process actions could cause issues if they were preceded by an Activate detail process action. This has been fixed. If a small HTML control had the Show action button set to Never, the Universal GUI would still reserve space for the pop-up button. This has been fixed. Hello everyone,In this sprint, we have added support for drag and drop for records in a tree, task parameters for drag and drop, icons on detail tabs, and more. We have also fixed a number of smaller issues. DemoAs always, we have made a demo for you: try it here . Before trying it out, press 'Clear Cache' on the login screen.Read the Universal GUI  user interface guide to get familiar with the GUI. Universal GUI version 2023.2.12For more information about setting up the Universal GUI, see the Universal GUI setup  guide.Note:Use a modern browser to access the Universal GUI, e.g., a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal GUI on the same server as Indicium or an allowed origin in appsettings.json. The Universal GUI only works with version 2022.1 and up of the Thinkwise Platform. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2023.2.12 here  ContentsDemo Universal GUI version 2023.2.12 New Insert functionality Detail icons on tabs Scheduler sliding timescale window Support for drag and drop in trees Drag and drop supports filling in task parameters Support for configurable export Support for more Cube group intervals Support for 'Open as floating document' Support for cube view filters Minor fixes and tasks What we will be working on next sprint Questions or suggestions? NewInsert functionalityYou can now support inserting a new record based on the currently selected record.If the user clicks Add in a subject, all fields that have been marked with 'Include in insert' (set in the menu User interface > Subjects > tab Columns > tab Form) are taken into account when adding the new record. At least one of these fields must be part of the current sorting/grouping of the subject. The fields marked with 'Include in insert' are automatically filled in the new record, resulting in the record being 'inserted' near the current record.For example, a new record can be automatically added to the same parent as the selected record if the parent_node_id field is set to 'Include in insert'. Detail icons on tabsYou can now add icons to detail tabs (menu User interface > Screen types > tab Design).If a tab container has a vertical orientation and at least one of its detail tabs has an icon, icon space is reserved on every other detail tab in that container as well, even if they do not currently have an icon. Scheduler sliding timescale windowThe scheduler definition in the Software Factory (menu User interface > Schedulers > tab Scheduler > tab Schedule views) now contains the checkbox Sliding pagination.With this checkbox, you can set the timeframe to use the current date as the starting point for projecting a timescale into the future. For example, if it is November, you will see November, December, January, February, and so on, so that you can look beyond the new year. It does not yet allow you to configure how much of the past you would still like to see. Support for drag and drop in treesWe have added support for dragging and dropping to and from the tree component. This includes dropping items on specific nodes in the tree.The Software Factory developer determines where an item can be dropped by defining tasks associated with drag-and-drop actions. The item to be dragged and the record on which to drop it are included as parameters. Drag and drop supports filling in task parametersWe have added support for showing the task pop-up after dragging and dropping a row. This makes it possible to fill in additional parameters if needed. In addition, the Software Factory setting Popup for each row (menu Processes > Tasks > tab Tasks > tab Settings > tab General) has been implemented in case you drag and drop multiple rows.If there are no visible parameters, the drag-and-drop task is executed automatically. Support for configurable exportWith the Export option, you can configure how to export the data of your subject. You can find the Export option in the overflow menu of a subject.You can configure the following:Whether you want to export all rows or only the selected rows.Select rows to exportWhich columns to export, and their order.Select columns to exportThe file format (.xls, .xslx, or .csv).Select output file formatSupport for more Cube group intervalsWe have added support for more cube group interval types. The interval types can be found in the Software Factory in the menu Subjects > Components > tab Cube > tab Cube fields.The following interval types have been added:Day of month: To get the day of the month. For example, 20 October will result in 20. Day of week: To get the day of the week. Weekdays are counted from 1 (Sunday) through 7 (Saturday). Support for 'Open as floating document'The open document process action now listens to the 'Open as floating document' parameter of the process flow action. When this parameter is set to 'Yes', the document is opened in a new browser window.The process flow does not continue in the floating window. Support for cube view filtersWe have added support for cube view filters. The cube view filters can be found in the Software Factory, in the menu User interface > Business Intelligence > tab Tables > tab Cube views. You can add filters on different cube fields, and you can also filter on the same field multiple times. In this way, you can tailor the cube view to include only the data that is relevant to your situation.Add a filter to a cube fieldMinor fixes and tasksPreviously, in the chart view, you could encounter the label 'undefined' in the data description on the axis. This has been fixed. When using an 'activate detail' process flow, the detail tab would be shown even if no record was selected or the detail tab was disabled for the selected record. This has been fixed. Previously, password controls were auto-filled. This could cause the user's password to be filled into any field in any application with a password control. Now, only the password field on the login page can still be auto-filled. Previously, the lookup autocomplete input would change size on load. This could cause task and report forms to jump in size. If multiple lookups were in a pop-up in the same column, this issue would cause that pop-up to resize multiple times while it was loading. Now, a pop-up shows a loader until the lookups for that task or report are loaded. Lookup fields show a loader until all required calls are done. The forms no longer change size during loading. The Zoom document process action did not use the correct tab and tab variant. This has been fixed Previously, even if the grid's add or edit settings were disabled, it could still be forced into add mode or edit mode respectively by a process action. It would then lock up, and you would have to force a refresh. This has been fixed. Errors could occur when using a Time control on a DATETIME or DATETIME2 datatype of the database. The problem has been fixed. When navigating to an unrelated detail tab that uses a variant, the root configuration was used. This has been fixed. When using a formlist, the fields were presented as editable, even if form update permission was turned off. This has been fixed. Certain detail icons in the document menu did not respond to size formatting, resulting in a disproportionate shape. This is now fixed. We have fixed a bug where the splitter was wrong when two bars (for example, toolbar and taskbar) were placed side by side. Previously, if the text in a detail tab overflowed where a badge was present, the badge would be pushed out of view, potentially causing the user to miss important information. The text now overflows while still allowing the badge to be displayed correctly. When DateTime was made a primary key, errors would occur if a user had a Timezone set in their user profile The DateTime would be incorrectly converted back to UTC, and the correct record in the table would not be found. This has been fixed. If you created a report with multiple rows selected, the report would only be generated for the first record. Now, the reports are generated for each row, and the resulting reports are zipped and then downloaded. Previously, in a resource scheduler component with many timescale headers, the text might overflow its slot and become unreadable. Timescale headers now accommodate the full width of all text. The checkbox control had a styling issue where it would show a small dot in the upper-left corner. This has been fixed. When deleting a row in a formlist via a task, the deletion would be successful, but a warning error would be thrown that the resource could not be found. This warning error will not be shown anymore. Sometimes, the Add row or Edit row process actions could cause issues if they were preceded by an Activate detail process action. This has been fixed. If a small HTML control had the Show action button set to Never, the Universal GUI would still reserve space for the pop-up button. This has been fixed.What we will be working on next sprintThe next sprint we will be working on: User preferences: change language. Freely positionable filter bar. Support for the import wizard and all its options. The import wizardQuestions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Universal GUI
featured-image

Release notes Windows GUI and Web GUI (2023.2.12)

Hello everyone,In this sprint, we have fixed a couple of issues.You can read more about the Windows and Web GUI's features, in the user interface guide .Download Windows GUI 2023.2.12 here. Download Web GUI 2023.2.12 here.ContentsFixed Fixed behavior of 'Tab' key in grid Fixed search using quotation or apostrophe characters Fixed caching problem for file storage locations Fixed selection of lookup value in grid Questions or suggestions? FixedFixed behavior of 'Tab' key in gridWindows GUIIf the user grouped multiple headers on a grid and used Tab to move to the next cell, the grouped columns were skipped. This problem is now fixed. Tab always moves to the next column in the grid.Fixed search using quotation or apostrophe charactersWindows GUI Indicium BasicWe have fixed an issue where the user would enter quotation marks (") or apostrophes (') characters in the filter (such as combined filter, quick filter and filter), and the search returned no results.Fixed caching problem for file storage locationsWindows GUI Indicium BasicWhen using Indicium Basic, a problem could occur in IAM: file storage folders could change in a model while its GUID stays identical. This could happen because the information about file storage folders is loaded and cached to decrease startup time.We have added two global extended properties to circumvent this issue. Both properties are set to 'false' or 'no' by default, which is the current behavior.If you encounter the problem above, you can use either extended property to solve it: IndiciumModelContainsFileStorageFolders - If set to 'yes' or 'true', the GUI will assume that the model contains file storage folders that can change, and it will not cache information when starting the application. This leads to a structurally increased startup time but is guaranteed to work around issues with file storage folders.  IndiciumIncludeApplicationIdInCache - If set to 'yes' or 'true', the GUI will add an application ID to the GUID to identify local caches. This prevents the issue, but only if file storage folders do not change for an application after it has been published. The issue will again occur if you change file storage configurations in IAM for a live application. In such cases, generate a new model GUID to ensure that local caches are invalidated. This is a manual action and is not done automatically in IAM.Fixed selection of lookup value in gridWindows GUIIf the user was editing a grid inline and selected a lookup value using the lookup dialog, the selected value would not be shown in the column. This has been fixed. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Windows GUI
featured-image

Release notes Indicium (2023.2.12)

Hello everyone,In this sprint, we have added support for filtering date and time-based filters based on the control ID of the corresponding column.You can read more about Indicium's features in the Indicium user manual.We will keep you updated regularly about Indicium's progress. About IndiciumTwo types of the Thinkwise Indicium Application Tier are available:Indicium: for use with the Universal GUI and via APIs. This version uses the full range of Indicium functionality.Download Indicium release 2023.2.12 here . Indicium Basic: for use with the Windows GUI and Mobile GUI. This basic version does not support features such as system flows and OpenID. There is no Indicium Basic release for 2023.2.12. ContentsAbout Indicium Changed Date and time-based filters take ‘control_id’ into account Minor fixes and tasks Questions or suggestions? ChangedDate and time-based filters take ‘control_id’ into accountDate and time-based filters now take into account the control ID of the corresponding column. Consider the situation where a DATETIME column has a DATE control ID. Only the date portion of the value will be filtered in this case, not the time portion. Furthermore, Indicium ensures that the filter is applied in such a way that it covers the user's intent.Given the example of a DATETIME column with a DATE control ID, the filter conditioncolumn eq 2023-08-21T01:01:01Zis interpreted as "column equal to 2023-08-21", and Indicium creates a filter condition similar toWHERE column >= '2023-08-21 00:00:00' and column < '2023-08-22 00:00:00'in order to match all values on that day.This feature is not yet supported by the Universal GUI, but it will be in the near future. Meanwhile, for API calls you can opt in to use this feature by adding the following query string parameter to your GET requests?useControlBasedFiltering=true Minor fixes and tasksWe have fixed an issue where the Check password process flow action did not recognize the algorithm returned by the Hash password process flow action. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!  

Related products:Indicium Service Tier
featured-image

Release notes Universal GUI 2023.2.11

August 7, 2023Full release 2023.2.11 Fixed: Dropping on a row was not working properly. The drop task would be performed on the active record instead of the record on which the item was dropped. This has been fixed. There was a performance regression in the 2023.2.11 Beta version, which led to the Universal GUI feeling slower, e.g. when opening a subject. This has been fixed. The Read-only input control setting in the Software Factory was interpreted incorrectly. For example, 'false' was interpreted as 'true' and vice versa. This has been fixed. Hello everyone,In this sprint, we have added support for drag and drop for rows in a grid, add and copy while in edit mode, added a menu switcher to the application switcher, and more.We have also fixed a number of smaller issues. DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal GUI user interface guide to get familiar with the GUI. Universal GUI version 2023.2.11For more information about setting up the Universal GUI, see the Universal GUI setup guide.Note:Use a modern browser to access the Universal GUI, e.g., a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal GUI on the same server as Indicium or an allowed origin in appsettings.json. The Universal GUI only works with version 2021.2 and up of the Thinkwise Platform. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2023.2.11 here ContentsDemo Universal GUI version 2023.2.11 New Drag & Drop for rows in a grid Add and copy while in edit mode Hide and show action buttons in form fields Menu switcher Changed Add platform to target as a class using custom CSS Extended properties improvements Group multiple snack bar messages together Minor fixes and tasks What we will be working on next sprint Questions or suggestions? NewDrag & Drop for rows in a gridWe now support the first version of Drag & Drop for rows in a grid. If you add drop tasks to a row, a drag handle will appear next to the row. While dragging, blue dotted lines visually indicate that dropping is possible.Drag & drop is only available for the Universal GUI on the Thinkwise Platform version 2023.1 and up.To enable Drag & Drop, you need to configure it in the Universal GUI's config.json:"enableDragDrop": trueIn this first version, we support the following:Dragging from one table to another. Dragging between browser tabs. This also works cross-browser, for example, from IE to Firefox. The task will be executed based on the user who has logged in in the dropped browser. Selecting, dragging, and dropping multiple rows. Dragging over tabs. The drop tab will be activated automatically. Dropping items on a specific row.Partially implemented:Synchronizing between browser tabs.Not yet supported:Refreshing specific items. Currently, the entire screen's dataset is refreshed. Dragging items from a tree (dropping items on a tree is supported). Parameters for a drop task. Drag and drop on mobile.Add and copy while in edit modeWhen a user is working on a grid or form in edit or add mode, the buttons Add and Copy remain available.Add and Copy buttons in edit mode (leftmost)When the user clicks the Add or Copy button, the Universal GUI tries to save the current record if it is in edit mode. If saving is not allowed, the corresponding errors are shown, and the add or copy action is canceled. If saving succeeds, the user can edit the new record immediately.Hide and show action buttons in form fieldsWe have added support for showing or hiding action buttons in form fields for tasks and reports (menu Data > Domains > tab Form > field Show action button).You can use this, for example, to hide the action buttons for read-only fields. You could select the option When editable in that case.This option was already available for HTML fields.Note that the choice for Always only works if the triggered action is functional in non-edit mode. For example, an action button for a barcode scanner will not be shown, but an action button for emailing will. The icon for showing a password  is only available in edit mode.Menu switcherWe have added a menu switcher to the existing application switcher.Each available application in the application switcher now has an expand  button if it contains multiple available menus.You can use the menu switcher to open a different menu, regardless of whether it is a Listbar, Tree, or Tiles menu. ChangedAdd platform to target as a class using custom CSSYou can now prefix your CSS with the platform for which you have started Universal. This means you can now support different CSS styles for Windows, Web, Mobile, and Universal. CSS classes are case-insensitive.The new class has been added to the `html` tag. The platform option names are:windows web universal mobileExampleIf your CSS selector was:main > headerYou can now make this more specific by prefixing it with the platform, for example:.windows main > headerExtended properties improvementsWe have made some improvements to extended properties in Universal:The casing of the extended property name no longer matters. Underscores are now removed, so DisableZoomIn is now the same as disable_zoom_in. Some boolean properties only accepted either 'True' or 'Yes'. Now they accept both values, as well as '1': HideMenuImageUpload DisableZoomIn RefreshOnDocumentSwitch Some boolean properties only needed to exist. Now their value is checked so you can turn them on or off in IAM: HideOfflineTasksReadonlyParameters OpenLinksInUrlControlOnSameTab Group multiple snack bar messages togetherWhen multiple snack bar messages are shown simultaneously, the messages disappear faster than you can read them. Now, only one message will be shown instead, with the text 'Multiple messages have been received'. Click on the Show button to view all these messages in a popup.This mechanism works on a set of individual requests.You may still encounter stacked snack bar messages when, for example, a task is executed for several records simultaneously. Minor fixes and tasks Reports now listen to the Enable for empty subject setting in the Software Factory. In some instances, the content of an HTML editor could overlap the lookup button, or get really close to the title. This has been fixed. Previously, the lookup dropdown filter did not refresh its options when the dataset was changed. Now, newly added rows are immediately visible. The Update now button could be hidden under the text in the update notification. This has been fixed. If you switched between light and dark modes in the Resource scheduler or the grid, conditional layouts were not immediately updated when navigating away. This has been fixed. There is still an issue in the grid if you switch between dark and light modes multiple times without navigating away An error sometimes occurred when switching between open documents using the Back button. This has been fixed. If a process flow performed a delete row action on an empty table, errors would occur. This has been fixed. The action buttons for DATETIME and TIME controls jumped when clicked. This has been fixed. After saving a record, the grid would navigate to an incorrect URL. It would still show the URL for the Indicium resource staging feature, which no longer existed after saving the record. This has been fixed. The extended property RefreshOnDocumentSwitch did not work when an existing open document was activated by clicking a menu item instead of an item in the Open documents area. This was not convenient for users if another extended property hid this area because, in that case, navigating through menu items was the only option. This has been fixed. If a file with a document file extension (.pdf or .docx) was uploaded to an image control, an unknown_image_type message would be shown in a snack bar. This message was inconsistent and different from the other snack bar messages. This has been fixed. When navigating to an empty detail grid with aggregations in dark mode, a grey line was visible that did not reach the end of the grid. We have removed this line. In edit mode, you cannot click on a hyperlink in the HTML control to open it. To open the hyperlink, use one of the following options instead: Right-click on the link and select your browser's option to open the link in a new tab. Press Ctrl while clicking on the link. If you were in grid edit mode and no records were found because they were all filtered out, the Add button disappeared, and only the Cancel button remained available. You had to cancel editing records to add a new row. This has been fixed. Previously, even if the grid's add or edit settings were disabled, it could still be forced into add mode or edit mode respectively by a process action. It would then lock up, and you would have to force a refresh. This has been fixed. It was impossible to click on the entire header to sort the data when it was right-aligned. This has been fixed. Previously, the unordered list was aligned left instead of having an indentation. This has been fixed. What we will be working on next sprintThe next sprint we will be working on:Drag & Drop with user parameters. Drag & Drop from trees. Scheduler sliding year timescale. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Universal GUI