Skip to main content

Idea pipeline (top 25)

Filter by idea status

Filter by product

2004 Ideas

Expression list to complement or replace current expression fieldsOpen

We all know and use expression fields in tables to display additional information from other tables (for example a customer name in an order containing only the customer number). This works fine for a limited number of rows but as the list grows expressions hurt performance. This idea is to solve this performance hit by making set-based expressions without having to resort to views.Disclaimer: I haven't thought this through 100% but I think it could work. ;)Suppose you have a table “order” and a table “customer”. The orders contain a customer number but not the customer name. Now to add the customer name in the order list I imagine I could define table “customer” as an addtional entity under table “order”. In this entity I choose customer number as the reference column. In the next step I then add colums from table “customer” to table “order” where these columns don't physically exist in table “order”. Just like existing expression fields they could be marked in blue or some other color. In this particular example I’d add column “customer.customer_name” to table “order” as an expression.Under water the GUI adds table “customer” to the query of “order” using a left join. It might use alias t2 for “customer”. Then t3, t4 etc for additional defined entities. So in this case this would be select t1.*, t2.customer_name from order t1 left join customer t2 on t2.customer_id = t1.customer_id for the GUI.There probably should be a check on these defined entities to prevent duplication of rows from the main table within the grid.The reason for this idea is that we often use views for longer lists of data instead of tables with expression fields, for performance reasons. But this has obvious downsides too such as additional required functionality to make the data editable.Additional:After writing this I realized the idea could basically be seen as an expansion of lookup tables. Currently a lookup has a 1 on 1 column relationship: a column in a table is displayed with the value of a column in another table. This could be expanded to displaying additional columns of the lookup table. So in this example the order-customer reference would allow to add additional columns from lookup table “customer” to the data model of “order” in the form of expressions.

Make better use of multiple browser tabs with UniversalOpen

IntroductionUsing the Universal GUI in multiple browser tabs can be really powerful. For example to make use of multiple monitors or not to clog the 'Open documents' when you want to open multiple rows of the same subject. When using a html field that points to a deeplink proces flow, it is already possible to make a clickable link in the grid to open a subject row in a new window. This is beneficial over double-click tasks because it works with a single click and it shows as a hyperlink making it intuitive for the user. However there are a few things that could be improved.Suggestions1. Make the title of the website page dynamically and configurable per subject. For example as default I want to use 'subject_name lookup_field' (Product P65434), but for subjects that have a recognisable name I just want to use 'lookup_field' (PO-32423). This would also be very useful for floating-documents.Optional:-Make it possible to include the application name.-Make it possible to use the tab icon as page icon.-Use a similar configuration to show the title in 'Open documents' (Open document title in combination with lookup | Thinkwise Community (thinkwisesoftware.com)).  2. Make it possible to use html fields as a lookup field for foreign keys. Currently it doesn't work when the lookup field of a table is a html field (even when the reference field in the target table also is a html field). The only way around this seems by using an extra html expression field in the list and the just the actual lookup field in the form (but this limits the use of add/edit in grid). 3. For proces flow action ‘Open document’, add an extra option to open as a new browser tab page.4. Make it easier to setup html links (this could probably be done already with dynamic code): Add a checkbox to a table column to enable ‘link to page’. When this is enabled for one or more columns in a table (or variant), in the background a process flow should be created to open the document (form) as a deeplink. Another effect of this checkbox should be that the enabled column should be displayed as a html link that points to the process flow deeplink on the same server/application.An alternative (in combination with suggestion 3) could be to add a single-click option to tasks. This should underline the single-click-field and show it as a hyperlink so the mouse cursor is changed making it more intuitive for a user). Screenshot Example expression field lookup that links to the source table in a new browser tab.