2020.2
The 2020.2 release of the Thinkwise Platform features a lot of improvements and additions, and about 100 feature requests, ideas and issues have been addressed. The most important changes are listed in this post.
Starting with version 2020.2 of the Thinkwise Platform, it is required that Indicium is installed for both development, test, acceptance and production environments. Please refer to the following blog posts for more information:
Without Indicium installed the Software Factory and applications will not receive a valid license and will fail to start.
- Upgrade notes
- Projects
- Software Factory
- New
- Reason for change in data conversion screen
- Developer mode for Indicium users
- Added two unit test coverage analysis cubes
- Testing subroutines
- Send e-mail after generating
- Code search on whole words
- Post synchronization code
- Load multiple runtime configurations
- Renumber columns after copying
- Iterations timeline
- Retrieve number of rows for tables
- New icons for the process flow and screen type modeler
- Mark a unit test as inactive
- New validations
- Changed
- Fixed
- New
- IAM
- Data model changes
Upgrade notes
Images and reports should be uploaded
Images and reports are now stored in the database instead of the file system. After upgrading, images and reports for active project versions must first be uploaded to the database. An upgrade validation for this situation is added that should be solved after the upgrade.
Solution:
- Run the task Upload images and reports to database in the advanced menu under Master data and Software Factory.
- Approve the validation message.
Before running the upload task, check that the file location of the project version is set correctly. It is then still possible to adjust this location, which will affect all paths in the entire project version. Once the upload task has been run and the metafiles are stored in the database, this option no longer exists.
Images should be synchronized to or uploaded in IAM
Images and reports are now stored in the IAM database. These files cannot be imported automatically during the upgrade and therefore have to be imported by hand for all active IAM instances. An upgrade validation for this situation is added that should be solved after the upgrade.
Solution:
- Make sure that the following validation has been solved: Images and reports should be uploaded.
- Start IAM and run the task Upload images and reports to database in the advanced menu under Administration.
- Approve the validation message.
Effective role rights behaviour (on the database)
From the 2020.2 version of the Thinkwise suite, the way of determining effective role rights has changed. This may have consequences, especially when you use the IAM feature to apply user rights to the database. To read what may have changed for you, and how to deal with these changes, see this link: https://community.thinkwisesoftware.com/updates-and-releases-31/effective-role-rights-behaviour-on-the-database-1309.
SQL Server support
The Thinkwise Platform version 2020.2 will no longer officially support SQL Server 2012 and SQL Server 2014. The official minimum supported version of SQL Server will be 2016.
As of version 2020.1 of the Thinkwise Platform, the minimum version of SQL Server was already version 2016 for the Software Factory development environment.
The Intelligent Application Manager, Indicium service tier and the GUI's did not leverage SQL Server 2016 features with the 2020.1 release. With the release of Thinkwise Platform version 2020.2, this will change, and therefore the entire platform will require SQL Server 2016 or higher.
Impact on development environments
As of version 2020.1 of the Thinkwise Platform, the minimum version of SQL Server was already version 2016 for the Software Factory development environment.
Impact on production environments
Version 2020.2 of the Intelligent Application Manager will leverage temporal tables. This immediately brings the minimum required version of SQL Server to 2016 upon release.
The Deployment Center will prevent installation or upgrade of the Intelligent Application Manager to version 2020.2 when the SQL Server version is below 2016 or the database compatibility of the Intelligent Application Manager database is below SQL Server 2016.
Existing products will no longer work on SQL Server 2012 and SQL Server 2014. We advice to upgrade your production environments to SQL Server 2016, before upgrading the Thinkwise Platform to 2020.2.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/end-of-sql-server-2012-2014-support-for-entire-thinkwise-platform-1021.
.NET Framework support
The required .NET Framework support remains the same as in the 2020.1 version.
Indicium Universal
Having Indicium Universal running in an environment has been optional since Thinkwise Platform version 2019.2, to be able to run the Universal GUI.
For Thinkwise Platform version 2020.1, Indicium Universal was also required to be able to leverage the scheduling feature.
Starting with Thinkwise Platform version 2020.2, an active Indicium Universal will be mandatory for the platform to function correctly.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/heads-up-indicium-universal-soon-mandatory-2020-2-1159
Lifecycle Policy
For more information about supported technologies, see the Thinkwise Lifecycle Policy.
Projects
Breakpoints
Responsive screen type design means to design screen types that work well on mobile, tablet, and desktop devices. Using breakpoints in combination with screen types, a responsive screen can be setup. Breakpoints are the point at which your GUI will respond by changing the screen type to present the data with the best possible layout.
For every screen type one or more breakpoints can be defined. A breakpoint consists of a breakpoint in pixels and a breakpoint screen type. When the width of a screen type becomes smaller than the defined number of pixels in breakpoint, the screen type will then change to the breakpoint screen type.
Example of a breakpoint set-up
A task is created that will help in setting up quickly new breakpoint screen types for smaller user interfaces. If screen types are present that make use of vertical splitters, the task Create horizontal screen type as breakpoint can be used to automatically create a new screen type that incorporates horizontal splitters instead. This will make the screen type easier to use on smaller devices where horizontal space is limited. The only input required by the task is the pixel width for the breakpoint. It will then also automatically be added to the main screen type as a breakpoint.
This will replace the previous way of creating breakpoint screen types by including
"<"
in the screen type name. During the upgrade the following will be converted:
- The
"<"
character will be replaced with "breakpoint_" during the upgrade. Example:master_detail_<500
will become master_detail_breakpoint_500.- Breakpoint screentypes with the correct breakpoint width will be added to the new breakpoint tab page.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/breakpoints-for-a-responsive-user-experience-on-every-platform-1229
Meta-files in the database
More and more Thinkwise customers and partners deploy their Thinkwise applications in the cloud. We also offer (trial) PaaS versions of our platform more often ourselves, for example to prospects and students. This is already perfectly possible, but setting up an online environment requires some configuration effort, in particular on how the platform deals with meta files like icons and reports.
A few years ago we added the possibility to store application files in the database, using binary fields (blob) or, on SQL Server, filestreams. However, this was not yet possible for the files that are part of an application's meta model, such as icons, theme images, and reports.
This is now changed. By also storing the meta files in the model, deploying an application in the cloud becomes even easier. And for on-premise installations, it will no longer be necessary to adjust file storage locations when deploying to a different (DTAP) environment.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/storing-icons-and-reports-in-the-database-1209
AutoML
Automated Machine Learning is now available as a feature in the Software Factory. Train Machine Learning models and deploy them in scheduled process flows to predict and estimate values based on historic data.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/introducing-automl-1241
Logging and auditing in IAM
A logging mechanism and two screens (in the advanced menu) are added:
- History analysis: all changes in data can be found here, which are done in logged tables. These are the gui_appl tables, project tables, role tables, openid tables and the user tables.
- Access analysis: here it is possible to analyze per object which user had access to a certain object in a certain period.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/iam-2020-2-auditing-and-logging-1204
Automatic license renewal
Downloading a license from TCP and uploading or copying it in IAM is no longer required. Indicium Universal (which is mandatory since this 2020.2 release) will automatically renew the license.
For more information, see this blog: https://community.thinkwisesoftware.com/blogs-21/automatic-license-renewal-1252
Software Factory
New
Reason for change in data conversion screen
The Data conversion screen shows which tables and columns have been changed, and therefore appear in the upgrade. It now also shows what has been changed for these colums in the tabpage Changes.
Developer mode for Indicium users
A tab page Developer mode is added in the Users screen, that allows the user to run in developer mode.
Added two unit test coverage analysis cubes
The Analysis menu group now provides two cubes to monitor the unit test code coverage:
These cubes rely on the presence of program objects in the model, ensure the definition of the model is fully generated.
- Unit test control procedure coverage: this cube shows the ratio of control procedures covered by a unit test. Only control procedures of code groups that allow for unit tests are measured. There are three cube views available:
- Coverage per code group
- Coverage per developer
- General coverage
- Unit test program object coverage: this cube is similar to the control procedure coverage cube but measures the number of program objects instead. Only program objects of code groups that can have unit tests are measured. There are two cube views available:
- Coverage per code group
- General coverage
The coverage status is determined as follows. A control procedure can be either:
- Covered: a control procedure counts as covered when a program object item created by the control procedure is present in a program object involved directly in any active unit test.
- Covered (linked only): this indicates that the control procedure is linked to an active unit test, but the program object items of this control procedure are not in any program object directly involed in an active unit test.
- Not covered: this means the program object items created by this control procedure are part of program objects not directy involved in any unit test, nor is the control procedure linked to an active unit test.
For more information, see Unit testing
Testing subroutines
Unit testing is expanded with the possibility to test subroutines of type Procedure.
Send e-mail after generating
It is now possible to be notified when generation has been started and finished. This can be done by adding an e-mail address in the project overview.
This can be a personal e-mail address, but also a Microsoft Teams e-mail address to inform the whole team about this status update. The Teams e-mail address can be retrieved by right-clicking on a channel and then selecting the option Get email address.
The e-mail will be sent by a system flow. In IAM, it is possible to choose between the schedules:
- alldays_regular - Occurs every day every 30 seconds between 05:00:00 UTC and 20:00:00 UTC
- weekdays_fast - Occurs every week on Monday, Tuesday, Wednesday, Thursday, Friday every 10 seconds between 07:00:00 UTC and 20:00:00 UTC
- weekdays_regular - Occurs every week on Monday, Tuesday, Wednesday, Thursday, Friday every 30 seconds between 07:00:00 UTC and 20:00:00 UTC
This feature can only be used when the notification e-mail settings are configured correctly in the Configuration screen in the Settings menu group.
Code search on whole words
It is now possible to perform a code search on whole words only. This can be done by setting the corresponding checkbox.
Post synchronization code
It is possible to add arbitrary SQL code to a synchronisation run. This code will be executed after the synchronisation to IAM is finished. The current project_id and project_vrs_id are available as variables, as long as there are no "GO" statements encountered.
Load multiple runtime configurations
If no project, project version and runtime configuration is provided in the INI-file, the Windows or Web GUI will now load all active runtime configurations for the current user from the Software Factory. Switching applications is done using the options in the menu:
Runtime configurations can be configured from the Users screen:
Renumber columns after copying
After copying columns in the Data modeler, all columns in the target table are renumbered.
Iterations timeline
A scheduler is added to show the (sub)iterations and when they are planned. It is also possible to drag/drop, shorten or extend an iteration. By double clicking an iteration, it is possible to navigate to it in the Iterations screen.
Retrieve number of rows for tables
The task Retrieve number of rows is added to the Project version tab page to query the number of rows for all tables in an end-product database.
This number is stored in the NO_OF_ROWS table tag and can be used to automatically enrich the model. For example by changing the look-up control or screen type of an entity based on the number of rows in the database, to optimize the performance or user experience.
The next release of the Software Factory will feature a series of these model enrichment queries.
New icons for the process flow and screen type modeler
The icons in the process flow and screen type modeler are updated to match the new icon style.
Mark a unit test as inactive
Unit tests were always active, which means that they were always executed. Sometimes a unit test is temporarily unnecessary and it shouldn't be executed. Therefore, unit tests can now be deactivated and activated again by executing two new tasks in the *'Unit tests screen:
- Activate unit test
- Deactivate unit test
New validations
The following validations have been created:
- datamodel - Column contains a non existing file storage column
- gui_defs - Task/report parameter contains a non existing storage parameter
- gui_universal - Numerous breakpoint validations
- logic_layer - Data set is not used by active unit tests
- logic_layer - Unit test does not have an output assertion
Changed
- Extra renumber tasks for several screens - The renumber tasks are now no longer created manually, but dynamically. As a result, a renumber task is now present on several extra screens such as Table tasks, Prefilters and Reference columns.
- Generate indexes for view references - FK indexes for detail references between views and tables will now automatically be created.
- The process flow to add configuration is changed - Created a task for the process flow to add configuration. Within the task, the configuration settings, platform settings and a main application language can be set up. In the final step of the process, the user will be guided to the application languages screen to add more languages.
- Specification filtering on id's - The specification trees can now be filtered on the id of the specification nodes in the tree via the combined filter.
- For a user it's difficult to see why certain outputs aren't as expected - When a unit test was executed, only the expected output was shown as a result. The non-expected outputs can now also be shown in grey and italic, by disabling the prefilter Expected output parameters. This way, it is easier to see why the expected output isn't as expected.
- Requirements & design improvements - The following improvements have been made:
- Specification id's are added to the combined filters.
- Requirements and Work are placed at the bottom of the Specification menu, and are renamed to Requirement overview en Work overview.
- The Kanban board is renamed to Taskboard to remain independent of development methodology.
- Delete tasks, without transaction - The tasks to delete an object, like a project, a version, a table, etc. are no longer executed in a transaction. This will increase performance and will avoid locking issues. Please note that when a delete action fails, some of the underlying items are deleted and some still exist. The delete task should be executed again, because the object is no longer correct.
- Task Create project version will be hidden if there is already a project version available - This task is called automatically after creating a new project, and there are not many use cases to create an empty project version in an existing project. However, the task was often confused with the task to copy a project version. Therefore, this task will be hidden if there is already a project version available.
- Tab page Functionality added as detail in the Subjects screen - For consistency with the other screens the tabpage Functionality is now also added as a detail in the Subjects screen.
- Table task/report parameter: changed order of the columns - In the table task/report parameter screen the order is column and then task/report parameter. However, it makes more sense to set a value to the parameter, instead of choosing a column to assign to the parameter. This has two advantages:
- The parameter list is a shorter list to work with.
- If a column exists that has the same name as the specified parameter, it will be selected automatically.
- New reserved keywords - The list of reserved keywords is extended to include, for example, missing data type identifiers and new function names.
- Size of fields with SQLEDITOR control - Fields with a SQLEDITOR control have been enlarged. By using a group label instead of a regular field label, this gained space could be used to increase the field size. The field width is now equal to the column width, the field height is set to five rows.
- Tasks to create reference automatically fills source or target - The tasks to create detail or look-up references for tables, tasks and reports now automatically fills the source or target table/task/report.
- Import roles failure - When the import of roles failed because of an empty result set for a role, no indication was given. Now a message is shown.
- End date not allowed before start date - All places where start and end dates/times are used, now have a check that the end date/time cannot occur before the start date/time.
Fixed
- Trim the project version when copying or renaming - The project version id will now be trimmed when copying or renaming a project version
- Indexes are now created correctly for references with long names - Set domain from 100 to 128 to make the reference fit in the index name.
- Sequence no for reference columns - When adding a reference column manually, the value for Sequence no always remained at 10, regardless of whether reference columns were already present. This has now been corrected so that the sequence no per column increases by 10.
- Check constraints for date datatype with min. and max. value - When deploying an application that used a date datatype with a min. and max. value, the source code was not generated properly. It caused the following error at execution: "Operand type clash: date is incompatible with int". This is now solved.
- Fixed drop-functions script for contained databases - Contained databases will no longer cause collation errors when running the drop-functions script.
- Translations tab page in cube fields screen - the Translations tabpage was no longer displayed in the Cube fields tabpage in the Subjects screen. The tabpage is added again.
- In some situations filter value and filter value until should be emptied - The filter value and filter value until columns are now emptied in some situations. For example, when the prefilter condition is empty is chosen.
- Assign table rights will throw a clear message when there are multiple look up references for a column - The assign table rights task will no longer continue if there are multiple look up references for a column, and the column rights box is checked. Instead, the task will throw a clear message, so that the user knows what's wrong in their model.
- Deadlock prevention during generation - Added some behavioral changes to the Software Factory database to prevent deadlocks when generating multiple project versions at the same time.
- Prevent comments during merge execution - When a merge is executed with deleted control procedures, comments were added for control procedures that were in review. This is now prevented by deleting code changelogs before control procedure templates.
- Keep list bar group tags intact - List bar group tags will no longer be removed when the list bar group is empty after removing generated objects.
- Performance validation screen - The performance of the validation screen is improved. Also, the validation screen will be emptied after generating the entire model.
- Reference constraint error when deleting a project version - Deleting a project version that was a part of the work linking chain led to a reference constraint error.
- Code overview not usable for process flows - When selecting process flows in the Code overview screen, nothing was shown. The process actions are now visible.
- Role prefilter icon wrong - When a prefilter is available but not visible, the user will not see this prefilter. The rights-icon should therefore only be green when the prefilter is visible as well.
- Data conversion (all columns) is missing prefilter - The prefilter Current data conversion version that is present in the Data conversion screen was not present on the tabpage Data conversion (all columns). This has now been added.
- Check end_date of user admin in i_api_usr - The log_access column in i_api_usr checked whether the user is administrator, but did not check whether the admin status had expired. Log access and developer mode will now only be granted to users if the date falls between the begin and end date specified at the rights record.
- Views don't belong in data sets - The data used by the views is stored in the underlying tables. Therefore, the views are excluded from the table selection for data sets.
- Date formatting - All dates in the Software Factory and IAM are now formatted consistently.
IAM
New
Icon for IAM containing a Software Factory
An IAM that has a Software Factory inside will now get another icon so developers can distinguish the Software Factory and their end products.
System flow schedule error logging
An error log field is added to the Schedule log tab page under System flows.
Redirect whitelist
Added a whitelist for redirect URL's, as a tabpage for Global Settings in IAM. The redirect URL's may be used after (non-openid) account-related actions, such as login, logout or resetpassword. This is a flat list of url's that can be used in e-mails to redirect the user when the e-mail points to one of the account operations in indicium. This needs to be limited as not to be able to redirect a user to a fake login page after clicking a link.
System flows polling interval
The polling interval for Indicium to check for scheduled system flows can no be set in the Global Settings.
Changed
- End date not allowed before start date - All places where start and end dates/times are used, now have a check that the end date/time cannot occur before the start date/time.
Fixed
- Constraint error on cube field filters when synchronizing to IAM - When cube fields were synchronized to IAM that contained cube field filters, this resulted in a reference constraint error. This has now been solved.
- Name column in the IAM user table - Fixed the size of the name column in the user table to support the combination of first name, surname and user id.
- [Breaking] E-mail address in IAM must now be unique - Due to login constraints, it is not possible to use an e-mail address for multiple accounts. This will now be enforced in IAM.
When upgrading to version 2020.2, duplicate e-mail addresses will be emptied. The account that retains the e-mail address is chosen using a priority ranking as follows:
- Accounts using e-mail 2FA
- Accounts using totp 2FA with e-mail fallback
- Active accounts
- IAM accounts
- Alphabetical user id
Data model changes
Data model changes for the Software Factory and IAM meta-models are listed here. This overview can be used as a reference to fix dynamic control procedures, dynamic model code or custom validations after an upgrade.
The Desc subname is changed to description. Please check if any proprietary code makes use of desc fields and adjust accordingly. Description domains are consolidated into the following domains:
- SF:
- description_short (
nvarchar(1000)
) - description_multiline (
nvarchar(1000)
multiline control) - description_large (
nvarchar(max)
multiline control)
- description_short (
- IAM:
- description_short (
nvarchar(200)
) - description_multiline (
nvarchar(1000)
multiline control) - description_large (
nvarchar(4000)
multiline control)
- description_short (
Changes Software Factory
Table changes
SF - From table | SF - To table |
---|---|
- | automl_model |
- | automl_model_fitted |
- | automl_model_predictor |
- | automl_model_target |
- | automl_model_training_data |
- | generation_email |
- | post_sync_code |
- | process_action_automl_model_predictor_input_parmtr |
- | process_action_automl_model_target_output_parmtr |
- | screen_type_breakpoint |
- | unit_test_subroutine_parmtr_input |
- | unit_test_subroutine_parmtr_output |
- | validation_modeler |
- | validation_status |
Column changes
SF - From table | SF - From column | SF - To table | SF - To column |
---|---|---|---|
ambiguous_expression | ambiguous_expression_desc | ambiguous_expression | ambiguous_expression_description |
appl_lang | appl_lang_desc | appl_lang | appl_lang_description |
business_process | business_process_desc | business_process | business_process_description |
business_process_attachment | attachment_data | business_process_attachment | business_process_attachment_name_data |
change_log | description | change_log | change_log_description |
chart_palette | chart_palette_desc | chart_palette | chart_palette_description |
code_grp | code_grp_desc | code_grp | code_grp_description |
code_search | - | code_search | whole_words_only |
col | - | col | form_next_grp_icon_data |
col | - | col | next_tab_icon_data |
col | col_desc | col | col_description |
concept_abbr | concept_abbr_desc | concept_abbr | concept_abbr_description |
control | control_desc | control | control_description |
control_appearance | control_appearance_desc | control_appearance | control_appearance_description |
control_proc | control_proc_desc | control_proc | control_proc_description |
control_proc_template | template_desc | control_proc_template | template_description |
cube | cube_desc | cube | cube_description |
cube_view | - | cube_view | cube_view_icon_data |
cube_view | cube_view_desc | cube_view | cube_view_description |
cube_view_field_conditional_layout | - | cube_view_field_conditional_layout | image_data |
cube_view_grp | cube_view_grp_desc | cube_view_grp | cube_view_grp_description |
data_set | description | data_set | data_set_description |
database_file | file_spec | database_file | database_file_spec |
delta_action | - | delta_action | updated_col_has_data_col |
deployment_module | description | deployment_module | deployment_module_description |
design_module | description | design_module | design_module_description |
design_spec_model_link | action_desc | design_spec_model_link | action_description |
diagram | diagram_desc | diagram | diagram_description |
diagram | diagram_image | diagram | - |
dttp | dttp_desc | dttp | dttp_description |
elemnt | - | elemnt | picture_file_data |
extender_type_property | property_desc | extender_type_property | property_description |
external_object | external_object_desc | external_object | external_object_description |
feature | feature_desc | feature | feature_description |
field_alignment | field_alignment_desc | field_alignment | field_alignment_description |
font | font_desc | font | font_description |
font_face | font_face_desc | font_face | font_face_description |
future_project | project_desc | future_project | project_description |
future_project_vrs | project_vrs_desc | future_project_vrs | project_vrs_description |
indx | indx_desc | indx | indx_description |
iteration | iteration_desc | iteration | iteration_description |
list_bar_grp | - | list_bar_grp | icon_data |
list_bar_grp | list_bar_grp_desc | list_bar_grp | list_bar_grp_description |
list_bar_item | list_bar_item_desc | list_bar_item | list_bar_item_description |
menu | - | menu | icon_data |
merge_session | description | merge_session | merge_session_description |
module_grp | - | module_grp | icon_data |
module_grp | module_grp_desc | module_grp | module_grp_description |
module_item | module_item_desc | module_item | module_item_description |
msg | msg_desc | msg | msg_description |
msg_option | - | msg_option | icon_data |
printer | printer_desc | printer | printer_description |
process | - | process | icon_data |
process | - | process | tile_image_data |
process | process_desc | process | process_description |
process_action | - | process_action | automl_model_id |
process_action | process_action_desc | process_action | process_action_description |
process_action | process_action_file_spec | process_action | - |
process_flow | process_flow_desc | process_flow | process_flow_description |
process_flow | process_flow_file_spec | process_flow | - |
process_flow | process_flow_image | process_flow | - |
prog_lang | prog_lang_desc | prog_lang | prog_lang_description |
prog_object_type | prog_object_type_desc | prog_object_type | prog_object_type_description |
project | - | project | model_guid |
project | - | project | notification_email_address |
project | project_desc | project | project_description |
project_vrs | - | project_vrs | icon_data |
project_vrs | project_vrs_desc | project_vrs | project_vrs_description |
project_vrs | default_icon | project_vrs | icon |
rdbms | rdbms_desc | rdbms | rdbms_description |
ref | ref_desc | ref | ref_description |
refresh_grp | refresh_grp_desc | refresh_grp | refresh_grp_description |
report | - | report | file_spec_data |
report | - | report | path_spec |
report | - | report | icon_data |
report | - | report | tile_image_data |
report | report_desc | report | report_description |
report_parmtr | - | report_parmtr | form_next_grp_icon_data |
report_parmtr | - | report_parmtr | next_tab_icon_data |
report_type | - | report_type | server_hosted |
report_type | report_type_desc | report_type | report_type_description |
report_variant | - | report_variant | icon_data |
report_variant | - | report_variant | tile_image_data |
report_variant_form | - | report_variant_form | form_next_grp_icon_data |
report_variant_form | - | report_variant_form | next_tab_icon_data |
req | req_desc | req | req_description |
req_baseline | baseline_desc | req_baseline | baseline_description |
req_baseline_req | req_desc | req_baseline_req | req_description |
requirement | requirement_desc | requirement | requirement_description |
requirement | requirement_desc_marked | requirement | requirement_description_marked |
requirement_attachment | attachment_data | requirement_attachment | requirement_attachment_name_data |
requirement_log | requirement_desc | requirement_log | requirement_description |
requirement_log | requirement_desc_marked | requirement_log | requirement_description_marked |
requirement_log | attachment_data | requirement_log | attachment_name_data |
role | description | role | role_description |
screen_component | - | screen_component | tab_page_icon_data |
screen_component_type | - | screen_component_type | screen_component_type_icon_data |
screen_type | screen_type_desc | screen_type | screen_type_description |
sf_configuration | - | sf_configuration | smtp_server_address |
sf_configuration | - | sf_configuration | smtp_server_port |
sf_configuration | - | sf_configuration | smtp_server_usr_name |
sf_configuration | - | sf_configuration | smtp_server_password |
sf_configuration | - | sf_configuration | smtp_server_from_email_address |
specification_baseline | description | specification_baseline | specification_baseline_description |
sql_analysis_issue | description | sql_analysis_issue | sql_analysis_issue_description |
storage | storage_desc | storage | storage_description |
sub_name | sub_name_desc | sub_name | sub_name_description |
sub_name_grp | sub_name_grp_desc | sub_name_grp | sub_name_grp_description |
subroutine | subroutine_desc | subroutine | subroutine_description |
subroutine_type | subroutine_type_desc | subroutine_type | subroutine_type_description |
tab | - | tab | icon_data |
tab | - | tab | tile_image_data |
tab | tab_desc | tab | tab_description |
tab_prefilter | - | tab_prefilter | icon_data |
tab_prefilter_grp | - | tab_prefilter_grp | icon_data |
tab_prefilter_grp | tab_prefilter_grp_desc | tab_prefilter_grp | tab_prefilter_grp_description |
tab_report | show_button | tab_report | - |
tab_report | position_button_manual | tab_report | - |
tab_report | button_order_no | tab_report | - |
tab_report | button_x_coordinate | tab_report | - |
tab_report | button_y_coordinate | tab_report | - |
tab_report | button_height | tab_report | - |
tab_report | button_width | tab_report | - |
tab_report | button_picture | tab_report | - |
tab_report_grp | tab_report_grp_desc | tab_report_grp | tab_report_grp_description |
tab_task | show_button | tab_task | - |
tab_task | position_button_manual | tab_task | - |
tab_task | button_order_no | tab_task | - |
tab_task | button_x_coordinate | tab_task | - |
tab_task | button_y_coordinate | tab_task | - |
tab_task | button_height | tab_task | - |
tab_task | button_width | tab_task | - |
tab_task | button_picture | tab_task | - |
tab_task_grp | tab_task_grp_desc | tab_task_grp | tab_task_grp_description |
tab_variant | - | tab_variant | icon_data |
tab_variant | - | tab_variant | tile_image_data |
tab_variant_form | - | tab_variant_form | form_next_grp_icon_data |
tab_variant_form | - | tab_variant_form | next_tab_icon_data |
tag | tag_desc | tag | tag_description |
task | - | task | icon_data |
task | - | task | tile_image_data |
task | task_desc | task | task_description |
task_parmtr | - | task_parmtr | form_next_grp_icon_data |
task_parmtr | - | task_parmtr | next_tab_icon_data |
task_type | task_type_desc | task_type | task_type_description |
task_variant | - | task_variant | icon_data |
task_variant | - | task_variant | tile_image_data |
task_variant_form | - | task_variant_form | form_next_grp_icon_data |
task_variant_form | - | task_variant_form | next_tab_icon_data |
test_case | description | test_case | test_case_description |
theme | - | theme | background_picture_data |
theme | - | theme | document_picture_data |
theme | - | theme | list_bar_picture_body_data |
theme | - | theme | list_bar_picture_header_data |
theme | - | theme | list_bar_picture_footer_data |
theme | - | theme | tile_menu_background_picture_data |
theme | - | theme | universal_background_picture_light_data |
theme | - | theme | universal_background_picture_dark_data |
theme | theme_desc | theme | theme_description |
theme | module_picture_header | theme | - |
theme | module_picture_body | theme | - |
theme | module_picture_footer | theme | - |
theme | help_text_font_id | theme | - |
theme | help_text_picture_home_background | theme | - |
theme | help_text_picture_home | theme | - |
theme | help_text_picture_header | theme | - |
theme | help_text_header_gradient_color_1 | theme | - |
theme | help_text_header_gradient_color_2 | theme | - |
theme | help_text_header_gradient_direction | theme | - |
theme | help_text_header_1_font_id | theme | - |
theme | help_text_header_2_font_id | theme | - |
theme | help_text_header_3_font_id | theme | - |
theme | help_text_footer_gradient_color_1 | theme | - |
theme | help_text_footer_gradient_color_2 | theme | - |
theme | help_text_footer_gradient_direction | theme | - |
theme | help_text_footer_1_font_id | theme | - |
theme | help_text_footer_2_font_id | theme | - |
tile | tile_desc | tile | tile_description |
tile_grp | - | tile_grp | icon_data |
tile_grp | tile_grp_desc | tile_grp | tile_grp_description |
transl_object | - | transl_object | universal_transl |
transl_object | transl_object_desc | transl_object | transl_object_description |
unit_test | - | unit_test | active |
unit_test | description | unit_test | unit_test_description |
unit_test_col_filter | - | unit_test_col_filter | tab_id |
unit_test_col_filter | unit_test_parmtr_id | unit_test_col_filter | col_id |
unit_test_col_input | - | unit_test_col_input | tab_id |
unit_test_col_input | unit_test_parmtr_id | unit_test_col_input | col_id |
unit_test_col_output | - | unit_test_col_output | tab_id |
unit_test_col_output | unit_test_parmtr_id | unit_test_col_output | col_id |
unit_test_col_type | - | unit_test_col_type | tab_id |
unit_test_col_type | unit_test_parmtr_id | unit_test_col_type | col_id |
unit_test_process_step_input | - | unit_test_process_step_input | process_flow_id |
unit_test_process_step_input | unit_test_parmtr_id | unit_test_process_step_input | process_step_id |
unit_test_process_step_output | - | unit_test_process_step_output | process_flow_id |
unit_test_process_step_output | unit_test_parmtr_id | unit_test_process_step_output | process_step_id |
unit_test_process_variable_input | - | unit_test_process_variable_input | process_flow_id |
unit_test_process_variable_input | unit_test_parmtr_id | unit_test_process_variable_input | process_variable_id |
unit_test_process_variable_output | - | unit_test_process_variable_output | process_flow_id |
unit_test_process_variable_output | unit_test_parmtr_id | unit_test_process_variable_output | process_variable_id |
unit_test_ref_output | unit_test_parmtr_id | unit_test_ref_output | ref_id |
unit_test_report_parmtr_input | - | unit_test_report_parmtr_input | report_id |
unit_test_report_parmtr_input | unit_test_parmtr_id | unit_test_report_parmtr_input | report_parmtr_id |
unit_test_report_parmtr_output | - | unit_test_report_parmtr_output | report_id |
unit_test_report_parmtr_output | unit_test_parmtr_id | unit_test_report_parmtr_output | report_parmtr_id |
unit_test_report_parmtr_type | - | unit_test_report_parmtr_type | report_id |
unit_test_report_parmtr_type | unit_test_parmtr_id | unit_test_report_parmtr_type | report_parmtr_id |
unit_test_result_parmtr | - | unit_test_result_parmtr | use_output |
unit_test_result_parmtr | - | unit_test_result_parmtr | order_no |
unit_test_result_parmtr_type | - | unit_test_result_parmtr_type | use_output |
unit_test_result_parmtr_type | - | unit_test_result_parmtr_type | order_no |
unit_test_tab_report_output | - | unit_test_tab_report_output | tab_id |
unit_test_tab_report_output | unit_test_parmtr_id | unit_test_tab_report_output | report_id |
unit_test_tab_task_output | - | unit_test_tab_task_output | tab_id |
unit_test_tab_task_output | unit_test_parmtr_id | unit_test_tab_task_output | task_id |
unit_test_task_parmtr_input | - | unit_test_task_parmtr_input | task_id |
unit_test_task_parmtr_input | unit_test_parmtr_id | unit_test_task_parmtr_input | task_parmtr_id |
unit_test_task_parmtr_output | - | unit_test_task_parmtr_output | task_id |
unit_test_task_parmtr_output | unit_test_parmtr_id | unit_test_task_parmtr_output | task_parmtr_id |
unit_test_task_parmtr_type | - | unit_test_task_parmtr_type | task_id |
unit_test_task_parmtr_type | unit_test_parmtr_id | unit_test_task_parmtr_type | task_parmtr_id |
unit_test_type | unit_test_type_desc | unit_test_type | unit_test_type_description |
validation | validation_desc | validation | validation_description |
validation_grp | validation_grp_desc | validation_grp | validation_grp_description |
work | work_desc | work | work_description |
work_attachment | attachment_data | work_attachment | work_attachment_name_data |
work_log | - | work_log | attachment_name_data |
work_log | work_desc | work_log | work_description |
Changes Intelligent Application Manager
Table changes
IAM - From table | IAM - To table |
---|---|
- | automl_model |
- | automl_model_predictor |
- | automl_model_target |
- | deployment_module_role |
- | global_client_redirect |
- | screen_type_breakpoint |
- | usr_audit_filter |
- | usr_authentication |
- | usr_developer_mode |
openid_client_default_resource_transl | openid_client_transl |
openid_resource | openid_custom_resource |
openid_resource_claim | openid_custom_resource_claim |
openid_resource_claim_value_usr | openid_custom_resource_claim_value_usr |
openid_resource_claim_value_usr_grp | openid_custom_resource_claim_value_usr_grp |
openid_resource_transl | openid_custom_resource_transl |
usr | usr_general |
Column changes
IAM - From table | IAM - From column | IAM - To table | IAM - To column |
---|---|---|---|
advice_type | - | advice_type | icon_data |
advice_type | description | advice_type | advice_type_description |
advice_type_property | description | advice_type_property | advice_type_property_description |
appl_claim | - | appl_claim | usr_id |
col | - | col | form_next_grp_icon_data |
col | - | col | next_tab_icon_data |
country | country_desc | country | country_description |
cube_view | - | cube_view | cube_view_icon_data |
cube_view_field_conditional_layout | - | cube_view_field_conditional_layout | image_data |
department | department_desc | department | department_description |
elemnt | - | elemnt | picture_file_data |
font_face | font_face_desc | font_face | font_face_description |
global_settings | - | global_settings | appl_icon |
global_settings | - | global_settings | appl_icon_data |
global_settings | - | global_settings | splash_image_data |
global_settings | - | global_settings | login_page_logo_data |
global_settings | - | global_settings | login_page_background_image |
global_settings | - | global_settings | login_page_background_image_data |
global_settings | - | global_settings | about_background_image |
global_settings | - | global_settings | about_background_image_data |
global_settings | - | global_settings | about_icon |
global_settings | - | global_settings | about_icon_data |
global_settings | - | global_settings | about_logo |
global_settings | - | global_settings | about_logo_data |
global_settings | - | global_settings | pending_system_flow_interval |
gui_appl | - | gui_appl | icon_data |
gui_build_version | gui_build_version_desc | gui_build_version | gui_build_version_description |
gui_usr_grp | gui_usr_grp_desc | gui_usr_grp | gui_usr_grp_description |
list_bar_item | - | list_bar_item | list_bar_grp_icon_data |
list_bar_item | - | list_bar_item | icon_data |
list_bar_item | - | list_bar_item | menu_icon_data |
location | location_desc | location | location_description |
log_action | action_desc | log_action | action_description |
menu | - | menu | icon_data |
module_grp | - | module_grp | icon_data |
module_grp | - | module_grp | menu_icon_data |
module_item | - | module_item | icon_data |
msg_option | - | msg_option | icon_data |
process | - | process | icon_data |
process_action | - | process_action | automl_model_id |
process_flow_schedule_log | - | process_flow_schedule_log | log_msg |
project | - | project | model_guid |
project_vrs | - | project_vrs | icon_data |
project_vrs | default_icon | project_vrs | icon |
report | - | report | file_spec_data |
report | - | report | path_spec |
report | - | report | icon_data |
report_parmtr | - | report_parmtr | form_next_grp_icon_data |
report_parmtr | - | report_parmtr | next_tab_icon_data |
report_variant | - | report_variant | icon_data |
report_variant_parmtr | - | report_variant_parmtr | form_next_grp_icon_data |
report_variant_parmtr | - | report_variant_parmtr | next_tab_icon_data |
role | description | role | role_description |
role_tab_prefilter | - | role_tab_prefilter | sf_visible |
screen_component | - | screen_component | tab_page_icon_data |
tab | - | tab | icon_data |
tab | - | tab | tile_image_data |
tab_prefilter | - | tab_prefilter | tab_prefilter_icon_data |
tab_prefilter | - | tab_prefilter | tab_prefilter_grp_icon_data |
tab_variant | - | tab_variant | icon_data |
tab_variant | - | tab_variant | tile_image_data |
tab_variant_col | - | tab_variant_col | form_next_grp_icon_data |
tab_variant_col | - | tab_variant_col | next_tab_icon_data |
tag | tag_desc | tag | tag_description |
task | - | task | icon_data |
task_parmtr | - | task_parmtr | form_next_grp_icon_data |
task_parmtr | - | task_parmtr | next_tab_icon_data |
task_variant | - | task_variant | icon_data |
task_variant_parmtr | - | task_variant_parmtr | form_next_grp_icon_data |
task_variant_parmtr | - | task_variant_parmtr | next_tab_icon_data |
theme | - | theme | background_picture_data |
theme | - | theme | document_picture_data |
theme | - | theme | list_bar_picture_body_data |
theme | - | theme | list_bar_picture_header_data |
theme | - | theme | list_bar_picture_footer_data |
theme | - | theme | tile_menu_background_picture_data |
theme | - | theme | universal_background_picture_light_data |
theme | - | theme | universal_background_picture_dark_data |
theme | module_picture_header | theme | - |
theme | module_picture_body | theme | - |
theme | module_picture_footer | theme | - |
theme | help_text_font_id | theme | - |
theme | help_text_picture_home_background | theme | - |
theme | help_text_picture_home | theme | - |
theme | help_text_picture_header | theme | - |
theme | help_text_header_gradient_color_1 | theme | - |
theme | help_text_header_gradient_color_2 | theme | - |
theme | help_text_header_gradient_direction | theme | - |
theme | help_text_header_1_font_id | theme | - |
theme | help_text_header_2_font_id | theme | - |
theme | help_text_header_3_font_id | theme | - |
theme | help_text_footer_gradient_color_1 | theme | - |
theme | help_text_footer_gradient_color_2 | theme | - |
theme | help_text_footer_gradient_direction | theme | - |
theme | help_text_footer_1_font_id | theme | - |
theme | help_text_footer_2_font_id | theme | - |
tile | - | tile | icon_data |
tile | - | tile | menu_icon_data |
tile | - | tile | tile_grp_icon_data |
transl | - | transl | universal_transl |
type_gui | type_gui_desc | type_gui | type_gui_description |
use_log_usr_action_type | description | use_log_usr_action_type | usr_action_type_description |
use_log_usr_action_type | extra_info_1_desc | use_log_usr_action_type | extra_info_1_description |
use_log_usr_action_type | extra_info_2_desc | use_log_usr_action_type | extra_info_2_description |
use_log_usr_action_type | extra_info_3_desc | use_log_usr_action_type | extra_info_3_description |
use_log_usr_action_type | extra_info_4_desc | use_log_usr_action_type | extra_info_4_description |
use_log_usr_action_type | extra_info_5_desc | use_log_usr_action_type | extra_info_5_description |
usr_grp | description | usr_grp | usr_grp_description |
usr_pref_cube_view | description | usr_pref_cube_view | cube_view_description |