I'm pretty new to Windchill but I have scoured the PDM User's Guide, Business Admin Guide, and System Admin Guide, and I cannot find any way to make the email notification for a promotion request more... dynamic. That is, why the heck doesn't the description for the promotion request get sent in the email notification? The generic message entered under the "activity tab" of a workflow process is less than helpful. You would think that the promotion request description would be included in the notification email - this way you can see just from the email where that falls on your priority list.
Is there a method to doing this OOTB? If not, does anyone have any recommendations on where to look to find code that might help?
Thanks in advance!
The Windchill Customization Guide includes information about tailoring workflow notification. The chapter entitled "Customizing Workflow Administration" covers the following topics:
The link I've included is to the 10.1 version of the guide on ptc.com. You can find other release versions there as well, and the customization documentation is also included in the 10.0 and 10.1 versions of the Windchill Help Center.
Please let me know if this documentation is helpful and if you have any feedback.
Thanks very much for your response. Is there any form of test environment such that I can modify our current Promotion Approval Request workflow process without disrupting the whole system?
The reason I ask is that it seems that it would be infinitely easier to use a test/demo environment than creating a whole new environment (Not only am I concerned with breaking the current operational environment, I'd like to prevent spamming management when I start testing approvals).
My impression regarding setting up this system in a way that I can be free to test without breaking the system that is currently in place is to create a new version of each: workflow, lifecycle, team, context, promotion preference, etc. Is that accurate? This is why I ask about a test environment. If this isn't accurate, could you please point me in the right direction?
There is a System Validation Guide ,authored by the Enterprise Deployment Center, that describes how to set up a test system that can be used to pre-qualify a production environment or to qualify planned changes afer the production system has been deployed. Is this helpful?
We played with this relatively extensively. It works very well for email robots, but so far it does not seem that there is any way to affect the canned email text that results from selecting the Notification checkmark for Activities and this is where the real need is.
Thanks so much for looking into this.
Forgive my ignorance but I have been looking through the various guides and it seems to me that it should be possible customize the promotion process workflow such that a user-definable variable is used where the owner defines the variable (in a text box or something like that) which then fires a notification robot displaying the variable which, in this case, is a string of text created by the owner.
Is that not possible?
Thanks again for your help!
I got pretty excited when first learning of this capability - but realized pretty quickly that it only applied (at the time - probably still same) to emails sent from notification robots, not for emails sent with Tasks. Please advise if this has changed since 10.0 F000.
I'm not sure which class or template you're looking at, but from what I remember, much of the notification stuff is hardcoded, and not even extendable through the use of a service, and there isn't much available through the template. Sometimes, you can extend a service and add or override methods to be used by a template, but I've found it easy to not use some of the OOTB notification options, and just add my own expression before the workflow activities and create my own emails.
I'll have to remember that last part.
I was really referring to using the WC Customizer's guide in conjunction to the Promotion Request template to somehow save user-definable text as a variable which can then be included in a notification.
I've discovered two other threads on this site where people are trying to capture an attribute of the PBO and the following code was suggested:
wt.change2.WTChangeOrder2 cm1 = (wt.change2.WTChangeOrder2) primaryBusinessObject;
wt.iba.value.IBAHolder ibaHolder1 = (wt.iba.value.IBAHolder)cm1;
ibaHolder1 =wt.iba.value.service.IBAValueHelper.service.refreshAttributeContainer(ibaHolder1, null, null, null);
wt.iba.value.DefaultAttributeContainer attributeContainer =(wt.iba.value.DefaultAttributeContainer) ibaHolder1.getAttributeContainer();
wt.iba.definition.service.StandardIBADefinitionService defService = new wt.iba.definition.service.StandardIBADefinitionService();
wt.iba.definition.litedefinition.AttributeDefDefaultView attributeDefinition = defService.getAttributeDefDefaultViewByPath("PhoneNumber"); //Here give the attribute name instead of "PhoneNumber".
wt.iba.value.litevalue.AbstractValueView svc = attributeContainer.getAttributeValues(attributeDefinition);
IBAValue_PhoneNumber = svc.getLocalizedDisplayString();
The whole thread can be found here: http://communities.ptc.com/thread/36286?tstart=120
If I'm trying to get the "Description" attribute of a promotion request and save that as a variable so it can be displayed in notification emails (either to the approvers or to notify the organization that it has been approved), should that first line of the code be changed to wt.maturity.PromotionNotice? My gut tells me no. I also don't understand what the ViewByPath name is and, if it's not something I designate, where I would find it.
I am just running into the same exact issue now. PTC told me "we cannot achieve what you are looking for".
I'm wondering if the last piece of code you posted along with your question ever worked to your satisfaction?