Updated idea statusNew→Open
Hi Theo,
This is already possible using Context logic. You could even make it a dynamic model concept to automatically apply it to all or a (tagged) subset of details in your application.
I agree with Jasper on this one. We have got a logic concept that will hide/disable tabs.
You can also consider using badges in order to let the user know if there are any records present in a specific tab.
The following idea has been merged into this idea:
All the votes have been transferred into this idea.
Continuing on the merged idea:
>...]
The main thing is that this could be decided client side based on offline data. At this moment we have a context procedure to hide tabs on which users don’t have to enter data, and that is a round trip to the server, plus additional logic, which is depended on the names of the references. and the expertise's of the user.
It would be nice to just not show tabs without questions. This way we only have to maintain the questions at an more abstract level and don’t have to edit the code when something changes.
For online scenarios, I doubt doing this client-side would be beneficial. Having the client determine the contents of a detail will require a roundtrip to fetch the data for every detail instead of having to do the roundtrip to execute context logic.
I suppose the detail should only be hidden when there is no data available for the user given only the authorization filters, not user filters. When a user filter or prefilter is applied in the detail, you probably don’t want to immediately hide the detail. This means it cannot rely on the regular data fetch but needs to do a separate call to check for data outside of the current user- and prefilters.
In offline scenarios, this setting could indeed be used to hide details based on available offline data for the selected parent record.
I think our requirement could fall under this idea. It is not about online or offline, but is about data not being available and with that, in the same record. We use Universal as target platform and the solution should support mobile devices. We have a data-entry form based on a definition which specifies what should be shown in the form. One of the options is to define if a document should be uploaded in the form or not. To show the form we use a screentype with a preview component in a second tab. However when the definition specifies that no document can be uploaded, the upload column will be hidden (using a layout procedure) but the preview tab should also be hidden which, as far as my knowledge reaches, is not possible at the moment.
I think our requirement could fall under this idea. It is not about online or offline, but is about data not being available and with that, in the same record. We use Universal as target platform and the solution should support mobile devices. We have a data-entry form based on a definition which specifies what should be shown in the form. One of the options is to define if a document should be uploaded in the form or not. To show the form we use a screentype with a preview component in a second tab. However when the definition specifies that no document can be uploaded, the upload column will be hidden (using a layout procedure) but the preview tab should also be hidden which, as far as my knowledge reaches, is not possible at the moment.
You have to add your previewer as a detail, then you can use a context procedure to hide the tab with the previewer. Having the previewer on the same screen or in a different tab but not as a detail would put you in the situation as described (if I read your comment correctly of course :))
Continuing on the merged idea:
>...]
The main thing is that this could be decided client side based on offline data. At this moment we have a context procedure to hide tabs on which users don’t have to enter data, and that is a round trip to the server, plus additional logic, which is depended on the names of the references. and the expertise's of the user.
It would be nice to just not show tabs without questions. This way we only have to maintain the questions at an more abstract level and don’t have to edit the code when something changes.
For online scenarios, I doubt doing this client-side would be beneficial. Having the client determine the contents of a detail will require a roundtrip to fetch the data for every detail instead of having to do the roundtrip to execute context logic.
I suppose the detail should only be hidden when there is no data available for the user given only the authorization filters, not user filters. When a user filter or prefilter is applied in the detail, you probably don’t want to immediately hide the detail. This means it cannot rely on the regular data fetch but needs to do a separate call to check for data outside of the current user- and prefilters.
In offline scenarios, this setting could indeed be used to hide details based on available offline data for the selected parent record.
@Anne Buit I think it is more of a 'make your life a bit easier' function, because in the end on- or offline the GUI knows if there are any results, and if then in the model is indicated it should show/hide a tab, a previewer or perhaps any other component that would make sense.
Then this would be more maintainable or complete then (automated) context procedures that would check it on the backend..
The following idea has been merged into this idea:
All the votes have been transferred into this idea.
The following idea has been merged into this idea:
All the votes have been transferred into this idea.
Have merged 2 related Ideas into this one. Let’s have this Idea as the place where we consider to what extend it should be possible to Hide Detail tabs with less code in certain situations. Solutions should consider the following situations:
- When Adding a record in the Main tab
- When Detail tab is empty (does not contain records)
- Hidden Detail tab by default, with option to make it available via Context logic
FYI: I did a couple of tests on this topic for the Universal GUI specifically on what is possible with Context logic:
- I managed to hide Detail tabs with the Context procedure after clicking the Add button, by checking on PK column is null.
- In combination with a Subject setting Start empty with filter (or other means to prevent a specific record being selected in the first place, like Prefilters) this allows me to start a Subject from a menu without Detail tabs being displayed.
- As indicated, (dynamic) Context logic could also be applied for hiding empty Detail tabs.