Propose your fantastic ideas regarding the Thinkwise Platform to our Product Team.
This error “Can't select more than 1 row when SelectType is Single or SingleAutoDrag” correctly occurs when CTRL-A is pressed and this is not allowed due to the circumstances.We’d like to be able to translate this error in other languages. We actually would like to translate more if not all errors - but the lack of knowing which ones there are makes it hard to find the right scope.
Currently only very limited HTML-formatting is supported for tooltips.I'd like that a fuller range is possible so that I can add:(un)ordered lists images tables headers references etc.If this is not possible I'd like some functionality to include an information-button behind columns in a field in which information like the above can be shown (as e.g. pop-up).
Sometimes select-queries become very hard to read, especially when you use display expressions. A lot of nesting takes place.In order to make them readable, I use the ApexSQL formatting plugin, but I think it would help a lot of people if the GUI did the propper formatting for you. Especially when you need to debug or tune something.This is an example from a current project:select top 1000 t1.[sales_order_id], t1.[administration_id], t1.[customer_id], t1.[sales_order_number], t1.[sales_order_type], t1.[based_on_complaint_id], t1.[payment_term_id], t1.[delivery_term_id], t1.[customer_reference], t1.[delivery_address_id], t1.[type_delivery_date], t1.[delivery_date], t1.[delivery_year], t1.[delivery_month], t1.[delivery_week], rtrim(t1.[currency_code]) as [currency_code], t1.[logistics_remark], t1.[invoice_organisation_id], t1.[invoice_recipient_person_id], t1.[avg_invoice_recipient_person_id], t1.[invoice_address_id], t1.[regular_confirmation_or_pro_forma], t1.[certificate_recipient_person_id], t1.[avg_certificate_recipient_person_id], t1.[exchange_rate], t1.[quotation_or_order], t1.[valid_until], t1.[delivery_time_after_agreement], t1.[delivery_time_sort], t1.[organisation_remark], t1.[agent_id], t1.[organisation_agent_fee], t1.[commission_calculation], t1.[commission_amount], t1.[percentage_amount], t1.[customer_contact_id], t1.[avg_customer_contact_id], t1.[manual_calculation_agent_fee], t1.[current_credit_limit], t1.[sales_order_status], t1.[sales_order_look_up], t1.[total_price_line], t1.[total_price_line_costs], t1.[total_price_header_costs], t1.[total_price_order], t1.[shipping_address_id], t1.[neutral_delivery], t1.[default_sales_location], t1.[total_processing_discount], t1.[sales_order_discount], t1.[sales_order_discount_percentage], t1.[sales_order_gross_profit], t1.[total_price_order_including_discount], t1.[added_by_look_up], t1.[vat_type_id], t1.[total_price_incl_vat_discount], t1.[default_price], t1.[default_price_per], t1.[contains_crossdock], t1.[purchase_order_crossdock], t1.[sales_order_form_id], t1.[charge_costs_type], t1.[added_on_look_up], t1.[total_order_amount_kg], t1.[use_po_box], t1.[pick_up_time], t1.[on_hold_logistic], t1.[total_cost_price], t1.[total_gross_profit_percentage], t1.[added_by], t1.[added_on], t1.[modified_by], t1.[modified_on]from (select t1.[sales_order_id], t1.[administration_id], t1.[customer_id], t1.[sales_order_number], t1.[sales_order_type], t1.[based_on_complaint_id], t1.[payment_term_id], t1.[delivery_term_id], t1.[customer_reference], t1.[delivery_address_id], t1.[type_delivery_date], t1.[delivery_date], t1.[delivery_year], t1.[delivery_month], t1.[delivery_week], t1.[currency_code], t1.[logistics_remark], t1.[invoice_organisation_id], t1.[invoice_recipient_person_id], t1.[avg_invoice_recipient_person_id], t1.[invoice_address_id], t1.[regular_confirmation_or_pro_forma], t1.[certificate_recipient_person_id], t1.[avg_certificate_recipient_person_id], (dbo.get_exchange_rate(t1.administration_id,t1.currency_code,t1.delivery_date)) as [exchange_rate], t1.[quotation_or_order], t1.[valid_until], t1.[delivery_time_after_agreement], t1.[delivery_time_sort], t1.[organisation_remark], t1.[agent_id], t1.[organisation_agent_fee], t1.[commission_calculation], t1.[commission_amount], t1.[percentage_amount], t1.[customer_contact_id], t1.[avg_customer_contact_id], t1.[manual_calculation_agent_fee], t1.[current_credit_limit], t1.[sales_order_status], (select iif(so.quotation_or_order = 1 ,'Order nr. ' ,'Offerte nr. ') + cast(so.sales_order_number as varchar(30)) + ' - ' + o.organisation_name as sales_order_look_up from sales_order so join organisation o on o.organisation_id = so.customer_id where so.sales_order_id = t1.sales_order_id) as [sales_order_look_up], t1.[total_price_line], t1.[total_price_line_costs], t1.[total_price_header_costs], t1.[total_price_order], t1.[shipping_address_id], t1.[neutral_delivery], t1.[default_sales_location], t1.[total_processing_discount], t1.[sales_order_discount], t1.[sales_order_discount_percentage], t1.[sales_order_gross_profit], ((t1.total_price_order - ISNULL(t1.sales_order_discount, 0))) as [total_price_order_including_discount], (t1.added_by) as [added_by_look_up], t1.[vat_type_id], ((t1.total_price_order - ISNULL(t1.sales_order_discount, 0)) + ((t1.total_price_order - ISNULL(t1.sales_order_discount, 0)) *(select vat_percentage / 100 from vat_type where vat_type_id = t1.vat_type_id))) as [total_price_incl_vat_discount], t1.[default_price], t1.[default_price_per], (select top 1 crossdock_type from sales_order_line sol where sol.sales_order_id = t1.sales_order_id order by crossdock_type desc) as [contains_crossdock], (select 'Order nr. ' + STRING_AGG(cast(purchase_order_number as varchar(15)), ', ') from (select distinct dbo.get_purchase_order_number(x.purchase_order_id) purchase_order_number from purchase_order x where x.crossdocked_with_sales_order_id = t1.sales_order_id )y) as [purchase_order_crossdock], t1.[sales_order_form_id], t1.[charge_costs_type], (cast(t1.added_on as date)) as [added_on_look_up], t1.[total_order_amount_kg], t1.[use_po_box], t1.[pick_up_time], t1.[on_hold_logistic], t1.[total_cost_price], (isnull(t1.sales_order_gross_profit,0) /iif(t1.total_price_order = 0,1,isnull(t1.total_price_order,1)) * 100) as [total_gross_profit_percentage], t1.[added_by], t1.[added_on], t1.[modified_by], t1.[modified_on]from [sales_order] as t1where ((dbo.check_sales_order_status_is_open(t1.sales_order_id) = 1) and (t1.administration_id in (select administration_id from dbo.get_my_administrations())) and (t1.administration_id = dbo.get_my_current_administration()) )) as t1 left outer join (select t1.[administration_id], t1.[organisation_id], ((select organisation_name from organisation t2 where t2.organisation_id = t1.organisation_id)) as [customer_name]from [customer] as t1) as t2 on t1.[administration_id] = t2.[administration_id] and t1.[customer_id] = t2.[organisation_id] left outer join (select t1.[delivery_term_id], t1.[delivery_term_name]from [delivery_term] as t1) as t3 on t1.[delivery_term_id] = t3.[delivery_term_id]where (t1.[added_by_look_up] = 'me' and t2.[customer_name] = N'Customer' and t3.[delivery_term_name] = N'Niet van Toepassing')order by t1.[sales_order_id] descThis is after I use a formatting tool, please note, it looks even better in SSMS:select top 1000 t1.[sales_order_id] ,t1.[administration_id] ,t1.[customer_id] ,t1.[sales_order_number] ,t1.[sales_order_type] ,t1.[based_on_complaint_id] ,t1.[payment_term_id] ,t1.[delivery_term_id] ,t1.[customer_reference] ,t1.[delivery_address_id] ,t1.[type_delivery_date] ,t1.[delivery_date] ,t1.[delivery_year] ,t1.[delivery_month] ,t1.[delivery_week] ,rtrim(t1.[currency_code]) as [currency_code] ,t1.[logistics_remark] ,t1.[invoice_organisation_id] ,t1.[invoice_recipient_person_id] ,t1.[avg_invoice_recipient_person_id] ,t1.[invoice_address_id] ,t1.[regular_confirmation_or_pro_forma] ,t1.[certificate_recipient_person_id] ,t1.[avg_certificate_recipient_person_id] ,t1.[exchange_rate] ,t1.[quotation_or_order] ,t1.[valid_until] ,t1.[delivery_time_after_agreement] ,t1.[delivery_time_sort] ,t1.[organisation_remark] ,t1.[agent_id] ,t1.[organisation_agent_fee] ,t1.[commission_calculation] ,t1.[commission_amount] ,t1.[percentage_amount] ,t1.[customer_contact_id] ,t1.[avg_customer_contact_id] ,t1.[manual_calculation_agent_fee] ,t1.[current_credit_limit] ,t1.[sales_order_status] ,t1.[sales_order_look_up] ,t1.[total_price_line] ,t1.[total_price_line_costs] ,t1.[total_price_header_costs] ,t1.[total_price_order] ,t1.[shipping_address_id] ,t1.[neutral_delivery] ,t1.[default_sales_location] ,t1.[total_processing_discount] ,t1.[sales_order_discount] ,t1.[sales_order_discount_percentage] ,t1.[sales_order_gross_profit] ,t1.[total_price_order_including_discount] ,t1.[added_by_look_up] ,t1.[vat_type_id] ,t1.[total_price_incl_vat_discount] ,t1.[default_price] ,t1.[default_price_per] ,t1.[contains_crossdock] ,t1.[purchase_order_crossdock] ,t1.[sales_order_form_id] ,t1.[charge_costs_type] ,t1.[added_on_look_up] ,t1.[total_order_amount_kg] ,t1.[use_po_box] ,t1.[pick_up_time] ,t1.[on_hold_logistic] ,t1.[total_cost_price] ,t1.[total_gross_profit_percentage] ,t1.[added_by] ,t1.[added_on] ,t1.[modified_by] ,t1.[modified_on] from (select t1.[sales_order_id] ,t1.[administration_id] ,t1.[customer_id] ,t1.[sales_order_number] ,t1.[sales_order_type] ,t1.[based_on_complaint_id] ,t1.[payment_term_id] ,t1.[delivery_term_id] ,t1.[customer_reference] ,t1.[delivery_address_id] ,t1.[type_delivery_date] ,t1.[delivery_date] ,t1.[delivery_year] ,t1.[delivery_month] ,t1.[delivery_week] ,t1.[currency_code] ,t1.[logistics_remark] ,t1.[invoice_organisation_id] ,t1.[invoice_recipient_person_id] ,t1.[avg_invoice_recipient_person_id] ,t1.[invoice_address_id] ,t1.[regular_confirmation_or_pro_forma] ,t1.[certificate_recipient_person_id] ,t1.[avg_certificate_recipient_person_id] , (dbo.get_exchange_rate (t1.administration_id,t1.currency_code,t1.delivery_date ) ) as [exchange_rate] ,t1.[quotation_or_order] ,t1.[valid_until] ,t1.[delivery_time_after_agreement] ,t1.[delivery_time_sort] ,t1.[organisation_remark] ,t1.[agent_id] ,t1.[organisation_agent_fee] ,t1.[commission_calculation] ,t1.[commission_amount] ,t1.[percentage_amount] ,t1.[customer_contact_id] ,t1.[avg_customer_contact_id] ,t1.[manual_calculation_agent_fee] ,t1.[current_credit_limit] ,t1.[sales_order_status] , (select iif(so.quotation_or_order = 1,'Order nr. ','Offerte nr. ') + cast(so.sales_order_number as varchar(30)) + ' - ' + o.organisation_name as sales_order_look_up from sales_order as so join organisation as o on o.organisation_id = so.customer_id where so.sales_order_id = t1.sales_order_id ) as [sales_order_look_up] ,t1.[total_price_line] ,t1.[total_price_line_costs] ,t1.[total_price_header_costs] ,t1.[total_price_order] ,t1.[shipping_address_id] ,t1.[neutral_delivery] ,t1.[default_sales_location] ,t1.[total_processing_discount] ,t1.[sales_order_discount] ,t1.[sales_order_discount_percentage] ,t1.[sales_order_gross_profit] , ( (t1.total_price_order - isnull(t1.sales_order_discount,0) ) ) as [total_price_order_including_discount] , (t1.added_by ) as [added_by_look_up] ,t1.[vat_type_id] , ( (t1.total_price_order - isnull(t1.sales_order_discount,0) ) + ( (t1.total_price_order - isnull(t1.sales_order_discount,0) ) * (select vat_percentage / 100 from vat_type where vat_type_id = t1.vat_type_id ) ) ) as [total_price_incl_vat_discount] ,t1.[default_price] ,t1.[default_price_per] , (select top 1 crossdock_type from sales_order_line as sol where sol.sales_order_id = t1.sales_order_id order by crossdock_type desc ) as [contains_crossdock] , (select 'Order nr. ' + string_agg(cast(purchase_order_number as varchar(15)),', ') from (select distinct dbo.get_purchase_order_number (x.purchase_order_id ) as purchase_order_number from purchase_order as x where x.crossdocked_with_sales_order_id = t1.sales_order_id ) as y ) as [purchase_order_crossdock] ,t1.[sales_order_form_id] ,t1.[charge_costs_type] , (cast(t1.added_on as date) ) as [added_on_look_up] ,t1.[total_order_amount_kg] ,t1.[use_po_box] ,t1.[pick_up_time] ,t1.[on_hold_logistic] ,t1.[total_cost_price] , (isnull(t1.sales_order_gross_profit,0) / iif(t1.total_price_order = 0,1,isnull(t1.total_price_order,1)) * 100 ) as [total_gross_profit_percentage] ,t1.[added_by] ,t1.[added_on] ,t1.[modified_by] ,t1.[modified_on] from [sales_order] as t1 where ( (dbo.check_sales_order_status_is_open (t1.sales_order_id ) = 1 ) and (t1.administration_id in (select administration_id from dbo.get_my_administrations() ) ) and (t1.administration_id = dbo.get_my_current_administration() ) ) ) as t1 left outer join (select t1.[administration_id] ,t1.[organisation_id] , ( (select organisation_name from organisation as t2 where t2.organisation_id = t1.organisation_id ) ) as [customer_name] from [customer] as t1 ) as t2 on t1.[administration_id] = t2.[administration_id] and t1.[customer_id] = t2.[organisation_id] left outer join (select t1.[delivery_term_id] ,t1.[delivery_term_name] from [delivery_term] as t1 ) as t3 on t1.[delivery_term_id] = t3.[delivery_term_id] where (t1.[added_by_look_up] = 'me' and t2.[customer_name] = N'Customer' and t3.[delivery_term_name] = N'Niet van Toepassing' ) order by t1.[sales_order_id] desc
In 2021.1 it is possible to use an expression to set a default value. This option does not exist for conditional layouts, nor for linking parameters.For conditional layouts you have to match a specific value for a column.And for parameters you can only have a one-on-one match (parameter filled with value of column).This is both for table tasks and for table reports.It would be nice to be able to use expressions as not always an exact match is required. Reasons are identical to the ability to set default values with expressions. Of course it is possible to create a calculated field but this is an extra step and only useful when reusing it elsewhere and are depending on the value of columns in the selected row (which is not always the case).
We are developing a portal in the Universal GUI and we need to have a control container that an external page URL can be pre-viewed within our webpage.The URL is currently generated dynamically in the Legacy portal and is previewed in a controlled container.
I would like to be able to select a time frame in a calendar and add an appointment.Another feature could be to drag&drop a certain type of appointment from a list into the calendar at a specific time. At this moment it is only possible to drop it in the resource bar. (see https://www.youtube.com/watch?v=Ez51JApnDK4).
The tab page icon appears to be the only image not yet saved in the model database. It would be nice if this could still be realized in the next version.
You can define a background for an application but it makes an application fancier if you also could define a background per screen (main subject). For instance, to make a difference per module. Of course, all the data fields should have their own “any preferred color” background.From a user(s) perspective: A user would see the company identity as background picture. An important configuration setting for this background picture could be the transparency as in most cases the data fields are more important. The admin of the application would be able to set the transparency to I.g. 40% in order for the end-user to keep focus on the data fields.Beforeafter example 1after example 2after example 3after example 4after example 5
The width of a dropdown is equal to the width of the field. But sometimes a field can not be bigger because of the layout, but it would be useful for the data you want to display in the dropdown. That the data is not truncated but displayed full. I would like an option that lets you manipulate the width of the drop-down list.
The name and version of the product is missing in the popup screen. Would it be possible to add this?
To quick an simply grab some data from a grid, this will be a welcome addition. Like in SSMS the option 'Copy with Headers’An extra option in menu is not required, just enable the function and mention in the Tooltip this advanced copy function Ctrl_Shift+CCopy native column names, or have the option to do so.
It would be a great addition if the AWS S3 File storage solution includes Object tagging support. This would allow us to tag files with useful tags for searching and categorizing. In addition it could be used for AWS IAM policy keys.Example Use cases: document type (Invoice/Contract/...), document status (Draft/Final/Signed) or table name and record_id to which attachment is linked (account/contract_id).
In some cases, as a developer, you would wish you had the ability to disable zooming on details and/or changing a screen type of a table. This to avoid any unwanted behaviour of more complex subject definitions, at runtime.It would be nice if that could be set per screen and/or tableAnd also have the possibilly to define valid screentypes per table or table variant
Sometimes you want to makes changes to generated objects, for example the code of a generated control procedure or validation. You can't see from which source these objects are generated. This can be from the dynamic model in the project version you are working in, or from a linked base project. How ideal would it be if you could see in one instance from what source a generated object like this originates. This way you can directly make your adjustments in the Software Factory, without having to query on the database in which projects the generated field for this object is empty.
When you are working on the requirements, there is a tab to put in discussion points regarding this requirement. It is however very hard to find out what requirements still have an open discussion item on them. Can we have an overview list of the requirements that contain a discussion, so it is easier to find and respond to these items?
At the moment it is not possible to link work items by a relationship. These relationships would make planning iterations easier and would add to maintaining overview of work items. Possible relationships could be: blocks * clones duplicates split caused by relates to * solves Relationships with an * would have the highest priority for us.
Currently there is no tab available which allows you to see all task and report parameters in a single grid. Sometimes you have to change name which is being used throughout your entire model. This means the change will also have to be implemented in all the tasks and reports. In that case you would to filter on all task and report parameters of this name. This is currently not possible and if made possible, will be of great help.Is it possible to enable the detail tabs task parameters and report parameters within the full model screen?
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.