You're right about that Harm. Currently that indeed has to be configured in IAM itself. However, using Post synchronization code, you are able to set Start objects after synchronizing the model to IAM (or include it in the Deployment package). Using an insert query on table usr_grp_pref_start_object, you technically could add start objects to all tenants and user groups that have access to a particular IAM application. We also use this for the Software Factory. Example:
insert into usr_grp_pref_start_object
(
tenant_id,
usr_grp_id,
model_id,
branch_id,
gui_appl_id,
start_object_id,
start_object_type,
task_id,
order_no,
abs_order_no,
insert_user,
insert_date_time,
update_user,
update_date_time
)
select
1, -- Default tenant
'sf_developers',
g.model_id,
g.branch_id,
g.gui_appl_id,
'check_sf_upgrade_msg',
1,
'check_sf_upgrade_msg',
1,
1,
system_user,
sysdatetime(),
system_user,
sysdatetime()
from gui_appl g
where g.model_id = @model_id
and g.branch_id = @branch_id
and not exists
(select 1
from usr_grp_pref_start_object p
where p.tenant_id = 1 -- Default tenant
and p.usr_grp_id = 'sf_developers'
and p.model_id = g.model_id
and p.branch_id = g.branch_id
and p.gui_appl_id = g.gui_appl_id
and p.start_object_id = 'check_sf_upgrade_msg')
You could argue that it would be more convenient for developers to be able to set Start objects inside the Software Factory in a way, and/or configure a StartupProcedure or ShutdownProcedure.
Feel free to create an Idea for this. I do feel that we could improve upon the StartupProcedure and implement a native way of allowing a Task/Procedure to run on startup (and on shutdown even)