How can I create enumeration literals without being able to modify the process specification?
I want to be able to add enumeration literals without being able to modify the process specification.
In our company, the project leader, who for example deploys new releases of HW, should add a literal to the enum of HW-versions.
But he must not be able to change the project configuration. For example he must not be allowed to change the permissions.
Is there a way to achieve this?
I already saw a question and a defect for this, but they focued on the iteration stuff, not the enumerations.
We use RTC 5.0.2.
https://jazz.net/forum/questions/159598/in-rtc-why-does-modifying-the-iteration-structure-require-modify-the-process-specification-permission?redirect=%2Fforum%2Fquestions%2F159598%2Fin-rtc-why-does-modifying-the-iteration-structure-require-modify-the-process-specification-permission
https://jazz.net/jazz/web/projects/Jazz%20Foundation#action=com.ibm.team.workitem.viewWorkItem&id=326478
https://jazz.net/jazz/web/projects/Jazz%20Foundation#action=com.ibm.team.workitem.viewWorkItem&id=251303
Thanks!
Christian
Accepted answer
As far as I know will
- The enumeration not be available in the process area that shares the process from the sharing project area.
-
I am not sure if you can use https://jazz.net/forum/questions/172495/process-provider-and-inheritance-with-fine-grained-customization-of-configuration-data to introduce it in the sharing process area.
You can try that, but I am not sure if there are problems with it. I am also not sure what happens if you introduce it in the process area that shares its process and in the editor presentation and then use the said method to introduce it, with the same enumeration ID. I am not sure if the presentation picks it up and I am not sure what will happen in later versions.
You could open a PMR for this and get a more informed answer.
2 other answers
Comments
Hello Ralph,
thanks for your answer.
I tried in a sandbox project and it works! I was able to configure it with a seperate permission.
This is what I was looking for. I want to predefine the enum attribute, but the values are project specific.
Unfortunately we use project sharing. What happens if I create such an enumeration in the parent project? How is it noticeable that is does not work?
Do you know a workaround? Maybe by creating the enum by script?
Christian
Christian, if you use process sharing, you will not be able to use this kind of enumeration, because the sharing process will not be able to see the values, as far as I know.
There is an enhancement request open for it. See: https://jazz.net/forum/questions/172495/process-provider-and-inheritance-with-fine-grained-customization-of-configuration-data
Sorry, but I think that is the current state.
Agreed Ralph - database level enumerations are not stored in the process so if the process is shared or used to create a new instance, these enumeration types are not included.
Another question to understand completely:
If I create the attribute in the "parent" process configuration without literal or just with only one default literal, what happens to my "child" project?
The default literal is not inherited, but the attribute?
My usecase would be the following:
I create the attribute and in the child project, the project manager has to define the literals. This can be done each project. I don't use standard literals.
Does this work?
You have to create the enumeration correctly (not database backed) in order to be able to share it. The complete definition is propagated to the child. All the values.
If you overwrite the enumeration literals in the child, using the UI, you basically disable the replication for the whole work item customization and further changes in the "parent" process will no longer be populated in the child - ever. The only way around it is using See: https://jazz.net/forum/questions/172495/process-provider-and-inheritance-with-fine-grained-customization-of-configuration-data and I haven't tried this myself with enumerations. Weather you use standard ID's or not, does not matter in this context.
Hello Ralph,
thanks for your quick response!
This is not what I meant.
If I create a database enum in the Master Area called HW-Version-enum.
And then create a new project based on the Master.
Will I have the attribute HW-Version-enum in the child?
Am I able to add new values to this attribute? Or is it not there?
Christian