Currently it is a hassle to create a somewhat similar situation using checkboxes, but it takes workarounds.
I think this one speaks for itself
This one would help out the non-english developers a lot.
I understand these are already on your radar, but I’d like to highlight the importance by mentioning them here as well:
This is an issue that pops up a lot. It does have workarounds but only when it’s a read-only field.
This would make a huge difference when using table variants.
There are several places where a developer needs to press a button in order to perform an action. I think a few of these could be done in the background or when performing an action that would follow the button press.
- Immediate validation upon performing a related action (ie add a column to a table)
- generate code groups in the background
- create translation objects after adding an object
- Schedule unit tests after completing a control procedure
There are probably more areas where this type of improvement can be made. Feel free to chime in.
Validation of the complete model (as a background process) after generating the complete definition would also be beneficial/better default behavior than the current “generate definition”/”execute all creation steps” choices (current options require more clicks to configure and/or more waiting time).
As far as the validations are concerned: some of these are now after the fact, while they could be (and are generally more efficiently handled when) validated directly upon insert/update/delete on the related subject.
The process of creating a template based task could be made more time-efficient (and easier for inexperienced users) by adding a standard flow and/or a screen that contains all the different required parts of the Software Factory. Similar improvement could be made to the process of adding a process action with process logic.
As far as the validations are concerned: some of these are now after the fact, while they could be (and are generally more efficiently handled when) validated directly upon insert/update/delete on the related subject.
Perhaps we should have two types of validations: batch and just in time (JIT) validations.
I found another issue that could enhance the development time since you now have to create multiple conditional layouts if you want the same layout to apply on multiple columns.
Making process flows cost a lot of time. And can be optimized:
- Auto generate variables based on actions used, then you only need to map them. Now you have to manually create them every time.
- When you edit a connector and change the type you get errors.. (or support it or don't allow it, instead make it insert/delete. (this only happens with change of action type.. such as HTTP connector, via edit change it to Web Connector.
- Add code on connection lines from flow creator, we sometimes have to think to much to find the right generated procedure :D
And we loose quite some time debugging here, especially with external connectors.. in the logs we miss the actual requests being done and received for quicker analyses.
When you edit a connector and change the type you get errors
This is fixed in 2024.3. Also other process action types had this behavior. Now changing the Subflow in Execute Subflow for example will try and map all previous input and output if possible.
Love this, I would suggest all developers to contribute to this topic so we can elevate the SF to the next level. Here is my input:
Validation process:
A lot of validations could be given at the time you are working on said subject. For example reserved table/column names. Replacing these with JIT messages will make the development process more efficient and as a bonus reduce the time needed for validations/
- where possible replace validations with just in time validations
- https://community.thinkwisesoftware.com/ideas/control-procedure-multi-selection-set-ready-for-review-2752
Deployment during development process:
(probably not feasible/scope too large)
I understand the problems that can come when allowing developers to manually deploy tables. However, when needed advanced developers will do this manually on the DB, so why not add the option maybe even set it behind an advanced setting so it’s not available for junior developers.
- Allow for table and domain creation in the same way functionality allows you to create views/triggers/tasks etc without doing a full creation.
Synchronization:
For small changes or only roles the synchronization process is too heavy. Giving more options would greatly benefit this process.
- https://community.thinkwisesoftware.com/ideas/smart-synchronization-4397
- https://community.thinkwisesoftware.com/ideas/option-to-only-sync-roles-authorisation-settings-from-sf-to-iam-665
General
The amount of micro management on roles is too much. When windows gui goes to 3 tier there is no longer a reason for all this micro management. Also not being able to simulate a group or a set of roles is a huge downfall in the testing process. Stil needing 5 steps to create a simple table task is cumbersome.
- https://community.thinkwisesoftware.com/ideas/remove-micro-management-on-roles-5051
- https://community.thinkwisesoftware.com/ideas/simulate-multiple-roles-777
- https://community.thinkwisesoftware.com/ideas/task-to-create-and-assign-a-template-for-tasks-views-ctx-lay-def-755
Model insight Universal
A lot of time is wasted having to go to the windows gui since the debugger has more or better options there. Universal has improved greatly, now we need to make that extra leap to make the debugger of universal more powerful.
- https://community.thinkwisesoftware.com/ideas/improve-model-insight-to-same-level-or-better-as-windows-gui-s-path-location-5016
Several possibilities, I see, to give the development process a huge speed boost with relatively small adjustments in the platform
To begin, I would fix the problem below, so that we can start measuring how often actions in the SF are used and how much time they take. Then the processes can be optimized based on facts.
@Robert Jan de Nie @Maurice Liebregt @Erwin Ekkel@Freddy Thanks for your input and contribution to this topic! Please do create Ideas and refer to these instead of just posting, so we can collect votes and let the Community speak.
A bit of feedback:
- Realtime validations are absolutely a great idea, we have heard this a lot from the Developers we interviewed too and this is an important improvement to the Developer Experience! It is not in scope for this workaround topic and first we'll aim for bringing the Software Factory to the Universal GUI, after which we'll look at picking up Realtime validations. @Robert Jan de Nie would you be so kind to raise an Idea for this specifically?
- Faster & easier deployment/synchronization is indeed not in scope of this topic, but another clear topic of improvement for our Platform! One of our competitors has a nice 1-Click-Publish button in their IDE which displays as Error button in case of Validation errors and automatically changes into a link to the Application GUI after Deployment is done: definitely something I'd like to see too. In fact, a long-term dream of mine is doing zero-downtime deployments to Production, automating the entire process from Merging until Deployment as much as possible (will take some years I'm afraid). NOTE: we might look at streamlining the Creation tasks a little bit better as part of this topic.
- Model insights improvements will follow soon. In fact, we did our best to improve the Developer/debugging experience with the Thinkwise Platform 2024.3 release. We feel the Model insights improvements are the last thing we need to get on par with/better than the Windows GUI. I can recommend the next Knowledge session that will further dive into this topic:
@Robert Jan de Nie I believe your point 2 & 3 are mentioned in this Idea, could you make sure to add your vote there?
@Robert Jan de Nie on your 4th point: what is ‘Completing a Control procedure’ in your perspective? Doing it upon changing status to ‘Ready for review’ would be too late I believe. How about including this in the ‘Generate code group’ step and triggering both on saving a Template? If so, please add to above mentioned topic.
@Maurice Liebregt Agreed that the flow to create a Task with a Template or a Process Action with code is not efficient. Would adding the Control Procedure tabs as detail tab help? I believe this Idea tries to cover the same:
@Freddy Would the generation of Process Variables fit in the ‘Eliminate all creation / generation tasks in SF’? If not, please raise a separate Idea.
@Harm Horstman Thanks for your input! I have added most of your Ideas to my first post.
Two things I would like to mention:
- Your Idea for ‘Quick model editing’ has been merged into below Idea. I believe it is a great and useful concept, but not in scope of this ‘workaround’ topic. It would be a theme of it's own and is currently listed as a good next step to ‘10X’ the Development speed.
- User Action logging would indeed help to find out what Developers (or End Users) are actually using in the SF (or a Custom Application) and would certainly make my life as Product Manager easier too. It is a good recommendation to start with this, and since we aim to bring the SF to Universal soon, votes on below Idea would actually help. It is not in scope of this specific topic though.
Two more Ideas I would like to highlight and will add to the topic:
This gives way stronger filtering capabilities to end users, and empowers them to create more custom Filters. As a result, this helps Developers who most likely need to create a lot less Pre-filter (expressions) on behalf of users.
Check Constraints are a very powerful feature, but seem to be underutilized. Also the creation of custom messages feels rather hacky. With this Idea we can make it a more ‘first-class’ feature.
P.s. This blog is great inspiration: Check constraints using the Software Factory | Thinkwise Community (thinkwisesoftware.com)
I would love to see this feature to save a ton of time when creating unit tests:
Hi @Arie V ,
I have to following missing features which currently results in workarounds.
- Having a lookup value filtered by 1 or more columns. For example filtering available items based on available date. Currently this results in creating a view in which you cross join items with your dates in order to being able to filter in a column or task parameter on a the item list. This is not a great solution, costs alot of resources and performance. When you could create a view upon a tabled valued function or stored procedure you could show a filter data set instead of selecting everything and then filtering
- Lookup combo values based on table value function | Thinkwise Community (thinkwisesoftware.com)
- When you want to show information on the same page this is not directly related to 1 and the other, you have to do this by adding a reference with no reference columns. This works great but is obvious not the most logical way to do this and it something that is asked for quite often
- Show multiple subjects on the same page | Thinkwise Community (thinkwisesoftware.com)
I just lost around 5 hours trying to figure out what on earth is wrong with the web connection I created. It's just impossible with the complete absence of some logging of what is actually sent. In a workflow tool like n8n it took me 2 minutes to set up the communication with the iam to copy a user template, and in Thinkwise up to now I have not been able to figure out what on earth is wrong.
So if you could put the logging high on the agenda this would be higly apreciated and would drastically help to improve eficiency.
I would also love to see this feature implemented, especially as more and more applications become available to external users. Many developers have already created their own functionalities to address this need
Indirectly I would think this idea is also very relevant to make working in the SF faster:
It is quite important to quickly be able to find the relevant information in the Universal GUI for which changes are needed.
Indirectly I would think this idea is also very relevant to make working in the SF faster:
It is quite important to quickly be able to find the relevant information in the Universal GUI for which changes are needed.
Absolutely, I have it on the radar! Have added it to the first Post and will include it on the Universal roadmap backlog.
I would like to emphasize this idea and implement it in this topic:
The reason for this is that building reports can be time consuming, especially when you have large reports that might have sub reports to maintain an overview. For now, using subreports for DevExpress in Universal is not possible and need to be rebuild with this subreport in the main report.
This can be even more time consuming because it also involves testing and realigning fields.
The ability to use subreports would save a lot of time, and can be even faster when converting from Crystal Reports.
Please consider this option to be implemented in the 10x pool, so we can start working on important stuff :)
I would like to emphasize this idea and implement it in this topic:
The reason for this is that building reports can be time consuming, especially when you have large reports that might have sub reports to maintain an overview. For now, using subreports for DevExpress in Universal is not possible and need to be rebuild with this subreport in the main report.
This can be even more time consuming because it also involves testing and realigning fields.
The ability to use subreports would save a lot of time, and can be even faster when converting from Crystal Reports.
Please consider this option to be implemented in the 10x pool, so we can start working on important stuff :)
+1000
I would also love to see this feature implemented, especially as more and more applications become available to external users. Many developers have already created their own functionalities to address this need
@Martin FYI: @Anne Buit is looking into this, together with the below Idea. We might go for a Thinkstore solution for both of these Ideas.
I would like to emphasize this idea and implement it in this topic:
The reason for this is that building reports can be time consuming, especially when you have large reports that might have sub reports to maintain an overview. For now, using subreports for DevExpress in Universal is not possible and need to be rebuild with this subreport in the main report.
This can be even more time consuming because it also involves testing and realigning fields.
The ability to use subreports would save a lot of time, and can be even faster when converting from Crystal Reports.
Please consider this option to be implemented in the 10x pool, so we can start working on important stuff :)
@Jochem Pieper Added it to the opening post!
+1000
@rbiram Too bad you can only vote once... Let's see if you can engage the Community and raise those 1000 votes!
I would like to bring this to the attention:
https://community.thinkwisesoftware.com/ideas/only-load-data-for-columns-that-are-shown-5566
Without this we (and I can only assume many other customers/partners with big tables/views) will be forced to build overly complicated alternate solutions while this should be as simple as only loading the selected columns.