Propose your fantastic ideas regarding the Thinkwise Platform to our Product Team.
When creating a new control procedure and template for a program object, such as a default or a layout, these are the general steps:create control proc assign placeholder template to prog_object_item which creates a template automatically generate the prog_object copy the parameters of the program object paste it in the template. Write your code and delete the pasted signature.These are a lot of steps, which imho can be done in one flow after creating your control proc and assignment. It will save a lot of clicks and screen switching.
When I make a small change in a code template and I want to execute that directly to test it (which is something that a developer does a lot in the SF!), I first have to press the ‘Generate control procedure’ button before I can press ‘Execute all program objects’ at the Deploy tab (SF 2024.1). Since ‘Generate control procedure’ is executed as a job by Indicium, I have to wait up to 5 seconds before it is starting and I can press the execute all button.My suggestion is that it becomes possible to execute the ‘Execute all program objects’ task when the control procedure hasn't generated yet and that the task automatically generates the controle procedure when needed upon starting. This way I don't have to wait on the generating job and I even have to press one button less each time.A second improvement would be that the ‘Execute all program objects’ task also becomes available directly on the Functionality screen (control_proc) so that you can select multiple control procedures and execute them all at once. This would be particularly useful in the use case when a new expression field (or task parameter) is added to a table and you want to execute the context, default, layout and handler so that the new parameter is added to them (Note: I don't want to execute the full creation proces for each simple change because that takes too much time, but I do want to see the effect of it working directly).
IntroductionWith a layout procedure it is easily possible to hide a field in a form based on a condition. However when you want to hide a field in the list, this becomes quite tedious.Use casesFor example when you have a a strong entity and a weak entity. Based on a value of the strong entity you want to hide a field in the list of the weak entity. Or in a multi-tenant system, based on a settings table you want to hide certain fields for the tenant. Current work-aroundCurrently you will need to create and maintain a variant with the field hidden, create an extra reference for the variant and place the condition in a context procedure to determine which variant should be shown. This becomes even more tedious when you want to hide multiple fields based on different conditions because you will need to multiply the variants to make each combination possible (and thus having to maintain all the variants with new development).SuggestionTo make this a lot easier and reduce maintenance I would like to suggest to be able to model hidden fields as a detail of a reference in the SF. In this detail screen a developer should be able to add fields of the target table of the reference that the developer wants to hide. For each field a condition should be added when the field needs to be hidden.Based on this data the Software factory should be able to generate the variant(s) of the target table (based on the variant of the reference), generate the extra references and create a context procedure based on the condition of each field. Or maybe the GUI could even hide the fields based on this data without having to create variants/references.
3 small adjustments in the software factory that can simply increase developer productivity. Default settings for Performance Parameters of columns and task parameters:Set Default / Layout / Context to “False” by default Task 'Create Detail Reference'Show Lookup to “False” by default Task 'Create Lookup Reference'Show Detail defaults to False This save a lot of mouse clicks ensures that Default, Layout and Context Procedures do not immediately give error messages when adding new columns or task parameters.
For a client we need to connect to the HDN network (Hypotheker Data Network).We have been able to simulate the required communication with the network using both Postman and Insomnia but are running into some issues building this connection using Thinkwise. (Simulation available on request)The root cause of this issue is the fact that connecting to the network requires the use of a private certificate as authentication. In postman this means installing a certificate issued by HDN and the private key of that certificate. Postman will use this certificate for all calls to the provided domain. Based on this certificate an access token is provided for use with the API.When sending a message to the network (base64 encoded XML) the network also required me to attach a signature of the message to the json encoded request.body. We currently see no option for sending out http request from Thinkwise using a private certificate. We have been unable to create message signatures based on the private key of a certificate.I can understand if this issue is niche and not suited for the general branch of the Thinkwise release and a custom CLR would probably ben completely workable for us. Or do any of you have any briliant ideas that we haven’t come up with yet?(Ideally this would also work for the Oauth login connector as that it what we’re trying to do.)
In the data modeler when add columns you have the option to select a set of columns and copy these columns into the selected table. I use this tool quite often. Unfortunately this copy option also copies the Identity setting from the selected columns. In 99% of the cases that I use this option I do not want this property to be copied.I sometimes forget that this property will be copied. The result is a table where by accident a column has been marked as Identity column. It would be a of great help if you have the option to disable the Identity property when using this copy function.The task already has such a checkbox for the property Primary Key.
When merging, the fields are fairly small. this way I always need to click to click the lookup and select correct branch. Make this wider, so i can read the whole field. Also, perhaps when a branch is selected, auto fill the branch current project… with the latest version of the branch. Rarely one merges an older version?
As a developer, I want to be able to quickly switch between my last 5 searches to see the Code search results.This will allow developers to effectively search multiple expressions and inspect the results of these searches quickly. It will also decrease the amount of times a developer would have to Code search once again for the same expressions even though the results would not be any different from the previous search.
I would like the model rights tab, or jump tasks, to be available for each SF object (table, task, report etc). When you change a table you also have to change the role rights (e.g. new column). Now you have to open the model rights from the menu and search for the object. The same counts for functionality. I would like to change functionality at the place where it is related to. When I add parameters to a task, I would like to be able to change the default, layout and task functionality in the context of this task.
I would like the smoke tests to be added to the quality dashboard. This could be added in the 'test quality' section.Furthermore, in the same style and presentation as the other test types.
I would like to merge branches to other branches, even when the only thing they have in common is the main branch. There already have been several questions about this: The suggestion there is to always use a common branch between branches so that branch A may be merged to branch B via common branch C. We are increasingly struggling with our branches however. It often happens that incomplete functionality in branch A is needed in branch B and we didn’t foresee this when we created the branches.With the recent changes to project versions and how differences are calculated, would it now be possible to implement support for merging branches to other (not directly related) branches? Somewhat like how Git supports this.
When your code contains bracketed words, like [server_name], that are not intended as parameters, you can not edit the code of the program object from the “deploy” tab of a control procedure.The brackets do not have the function of signifying a parameter here, but to make sure the server name is a qualified name that can include spaces.Having an option in the control procedure to disable parameter detection would avoid this message and allow you to make changes to the program object (generated) code.
When you run indicium in a container you have to go quite the mile to be able to get the generated deployment package. I would like to see the generate deployment package to end with a download (ZIP for example) of the package. Current issues:Now it references a location on my local PC. It's build for windows path's If you don't have volume defined you have to copy it out of the container.
Like many, our company uses DUO Push for users to log in on the network. We would like to use this too for the users who has an extended application in Universal GUI next to our ERP in Windows GUI. IAM supports only the TOTP 2FA with means that those users has two different ways of using 2FA to confirm login:1) Netwerklogin: simply tap the green tick2) UGUI login: copy/paste and confirm the validationcodeThe first way is much easier & user friendly then the second way.Is it possible to implement DUO Push as well in the near future?
I think that it would be good to have a switch to put the Universal web interface in maintenance mode, and even better to be able to show messages to users that this is going to happen. When we do an update and the update, for example recreates the fact table, the update can take a long time. We do send a mailing to the users to warn them that they should not use the application during this time.It might be better to have a way to lock the users out completely. At this moment I could organize in Azure that users get redirected, but as Universal can still be open in the browsers of users, there is still a risk that users get in a confusing situation.The ideal scenario would be to have a setting in IAM, which makes that the user gets an “this site is under maintenance” message in the interface, and is prevented from entering data.
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.