Quick generation for one table which you made changes on

Related products: Software Factory

My idea is based on a way to speed up development by generating one table with his depdencies likes context, defaults and layouts. So you can quickly see a result in the end-product.

For example, you have a table and you made a typo in a field. You quickly would like to correct this to continue the development process.

Currently you have to generate the complete project and validate and execute the codegroups on deployment screen. And you result in creating a new version.

Why not a quick generation button for a particulair table which you can use to just re-generate this table and drop/re-create the table.

Awesome idea! Though I can imagine that such a button could have a lot of impact, if the table of your example has multiple tables as a detail (with constraints and such). On what point would such a button starts an ‘smart upgrade’ for a table, and at what point is a complete generation of a project better?

Also, when developing with multiple people on the same project, a quick click could interfere with a multitude of developers and cause errors. How could your progress get ‘locked’ to minimize the impact?  


My idea is based on a way to speed up development by

Maybe taking a look how the whole generation process can be speeded up?

 

Awesome idea! Though I can imagine that such a button could have a lot of impact, if the table of your example has multiple tables as a detail (with constraints and such). On what point would such a button starts an ‘smart upgrade’ for a table, and at what point is a complete generation of a project better?

Depending on the impact analysis that the SF can do before - when smart - be more intelligent, maybe the ML can do something for you here, i.e. by keeping track of time of throughput depending on which element or objects have been touched (from earlier generation processes). Or maybe simply the amounts of elements/objects that have been touched, or maybe try to analyse the impact of dynamic code, or simply by keeping track of which elements actually have or will be touched/changed.

 

Also, when developing with multiple people on the same project, a quick click could interfere with a multitude of developers and cause errors. How could your progress get ‘locked’ to minimize the impact?  

That is one other ‘circumstance/parameter’ smart/intelligent can take into consideration - keep track of who has changed what and what is the impact of said changes? Is everyone working in separate branches - no need to take such into consideration (this is where smart merging comes into mind).

Mind you that when working with more developers on a project, there should be at least some communication about when to start anything that makes changes, not only the generation part - for example when my buddy next to me decides to give everything a red backgroundcolor for some apparent reason and I reload the model I do want to know beforehand that he made such change so I don’t have think about me being the one that just changed the colors of the application and eagerly trying to find out where I messed up...


Updated idea status OpenOn the backlog

Hi @Michael,

Since your idea, a lot of improvements have already been made to help speed-up the development/upgrade process. Think of:

I suspect that these kind of improvements lead to more frequent upgrades. In that case, a smart upgrade to fix a typo should not have that much impact anymore, because there are fewer changes to deploy.

Additionally, I'm a bit skeptical of introducing creation-related tasks in screens such as Data Model > Tables. It can cause confusion when such a task should and should not be used from this screen. I think you also benefit from the new 2023.2 feature to be able to jump to other screens: https://docs.thinkwisesoftware.com/blog/2023.2#data---improved-navigation.

Do you agree that, with these improvements, we can close this idea for now?


On the backlogNeeds feedback

Hi @Jeroen van den Belt,

It seems to be going in the right direction, but the Code Overview screen is just not complete. The 'Generate Code Group' task is missing. I had hoped for an option to generate the Layout, Default and Context procedures of a table or task in one go after adding or updating a column or parameter. But that is still not possible now.

A disadvantage of the 'Go to Object in Code Overview' task is that a new main Tab is opened every time when the task is used.

I would have liked to see the 'Deploy' screen as a detail tab for the objects (Tables, Tasks, Reports, etc..). That is not complex at all and would greatly improve productivity.

In this way, the 'Code Overview' screen has no added value yet.


I share the opinion of Harm here, my original idea was that i get a button which deploys everything related to the table/view/task/report. This could be something like Harm sketches in his example from the Code Overview screen. 

Current development surely helps the development process speed, but it could be better.


Needs feedbackOn the backlog

The following idea has been merged into this idea:

All the votes have been transferred into this idea.

I had kind of the same idea, Mark has merged the 2 idea’s. However improvements are made I’m losing serious time in ‘waiting’ on deploying. Especially when I know only minor things have changed in only 1 table. So please take this idea serious. For all developers together we’re losing serious time waiting in ‘deploying’.
Can we also have an option to cut out the indexes on deploying. This one is the most time consuming deploy item. When you’re developing and you add minor changes re-creating the indexes is in most cases not necessary.


The following idea has been merged into this idea:

All the votes have been transferred into this idea.