I’m facing an issue where our variant approval workflow doesn’t trigger automatically when users select new variant options in the product configurator. The workflow is supposed to start when a new variant combination is created, but nothing happens. Users can create variants freely without any approval process, which defeats our governance requirements.
The lifecycle template is attached to our variant master part, and it includes a workflow process that should trigger on variant creation. I’ve verified the lifecycle state transition events are configured, but the workflow event triggers don’t seem to be firing for variant-specific actions. Is there a separate configuration needed for variant object types in the workflow settings?
Let me provide the complete solution for variant workflow triggering:
1. Lifecycle Template Configuration:
Your lifecycle template must be applied at the correct level. For variant approval workflows, you have two options:
Apply lifecycle to the variant master part (WTPart with isVariant=true) - this controls the master but not individual variant combinations
Apply lifecycle to variant specification objects (WTPartVariantSpec) - this controls each unique variant combination
For your use case (approving new variant selections), you need the second approach. Go to Type and Attribute Management, find WTPartVariantSpec, and assign your approval lifecycle template to this type.
2. Workflow Event Triggers:
The workflow needs to be triggered by the correct event. Variant creation doesn’t fire standard part creation events. Instead:
The workflow should be configured as part of the lifecycle template’s state transition
When a user creates a new variant combination, the WTPartVariantSpec object is created in an initial state (typically ‘In Work’)
Moving from ‘In Work’ to ‘Under Review’ or similar should trigger your approval workflow
Make sure your lifecycle template has an automatic state transition or requires manual promotion that launches the workflow
3. Variant Object Type Settings:
Verify in your variant master configuration:
Open the variant master part
Go to Options & Variants > Option Sets
For each option set, check ‘Requires Approval’ if you want choice-level control
More importantly, go to Actions > Change Lifecycle Template and ensure the variant spec lifecycle is properly set
Check that ‘Allow Unsaved Variants’ is disabled if you want to force lifecycle progression
The root cause is likely that your lifecycle template is on the WTPart master but not on the WTPartVariantSpec type. Variant specifications are separate objects with their own lifecycle, and that’s what needs the approval workflow. Once you apply the lifecycle template to the variant spec type and configure the state transitions to launch your workflow, new variant combinations will properly enter the approval process.
Test by creating a new variant combination - it should now be created in ‘In Work’ state and require promotion through your approval workflow before becoming available for use.
This draft is based on general Windchill knowledge. It has not been verified against your specific version and environment. Practitioners: verify the steps and share your experience below.
Variant workflows behave differently than standard part workflows. The trigger isn’t typically on the variant creation itself, but rather on the variant specification or choice object state change. Check if your lifecycle template is applied to the correct object type - it should be on WTPartVariant, not just WTPart. Also, variant workflows often need to be triggered by state changes in the option set or choice selections rather than the variant instantiation event.
I think you need to look at your event subscription configuration. For variants, there’s a specific event called ‘VariantSpecCreated’ or similar that you need to subscribe to. The standard lifecycle state change events don’t capture variant-specific actions. Go to Site > Utilities > Event Management and check what events are subscribed for your variant workflow process.
Thanks for the pointers. I checked the Event Management console and I see subscriptions for standard part lifecycle events, but nothing specific to variants. When I try to create a new subscription, I’m not finding clear documentation on which event class handles variant creation. Should I be looking for something in the wt.variant package? Also, does the lifecycle template need to be on the variant master, the variant instance, or both?
The lifecycle template should be on the variant master (WTPartMaster with variant enabled). For the event trigger, you’re looking for state change events on the variant specification object, not the variant itself. When a user selects options and creates a variant, that creates a variant spec object which should undergo lifecycle/workflow. The confusion is that variant ‘creation’ in the UI isn’t actually creating a new part in the traditional sense - it’s creating a specification that references existing option choices.
I see the issue now. You need to verify that your option sets are properly configured with lifecycle controls. Go to your variant master part, check the Options & Variants tab, and look at each option set. Each option set can have its own approval requirements. If those aren’t set, variant combinations can be created without triggering workflows regardless of the master part’s lifecycle template configuration.