Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

How can I create enumeration literals without being able to modify the process specification?

Hello!

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

0 votes


Accepted answer

Permanent link
To make this even clearer: You can not use database backed enumerations if you use process sharing.

As far as I know will

  1. The enumeration not be available in the process area that shares the process from the sharing project area.
  2. 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.

Christian Winkler selected this answer as the correct answer

0 votes

Comments

I will have to try.

Thanks Ralph!


2 other answers

Permanent link
The only option that is available is to use database backed enumerations. However, an administrator with permissions to  modify the process area has to create them first. The caveat of them is, that they don't work if you use process sharing.


0 votes

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


showing 5 of 6 show 1 more comments

Permanent link
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.

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 12,019

Question asked: Jan 27 '15, 10:27 a.m.

Question was seen: 4,908 times

Last updated: Jan 29 '15, 10:15 a.m.

Confirmation Cancel Confirm