760 likes | 782 Views
Learn how to configure PDM for E-Promotion Workflows, design documents, create soft object types, and more. Step-by-step guide for efficient electronic approval processes.
E N D
Configuring PDM for an Electronic Approval Process 5-11-09 Marc Hendrickson
PDM Configuration for E-Promotion Workflows • Create Soft Objects Types • Analysis Data • Design Documents • Design Notes • Specs-900XX • Specs-Requirements • Test Documents • ICM • Create & Assign Attributes • ATA & Project # • Export LCS, Workflows & OIR’s • Import LCS • Cirrus Design Approved Life Cycle, Library Comps -Approved/Inactive • Cirrus Design Life Cycle, Drawings -Design/Prototype/APR/Production/Service/Inactive • Cirrus Design Simple Approval Life Cycle, Documents -Reviewed/CDC Approved/FAA Approved/Inactive • Import Workflows • 1-Production • 2-APR • 3-Prototype • 4-Design • 5-Document CDC Reviewed • 6-Document CDC Approved • 7-Document FAA Approved • Create Roles • Approver 1 • Checker • Cog Eng • Eng Manager • Stress • Library Managers • Create States • Design • Reviewed • CDC Approved • FAA Approved • Create Documents Folder Structure • Analysis Data • Design Documents • Design Notes • Specs-900XX • Specs-Requirements • Test Documents • ICM
PDM Configuration for E-Promotion Workflows • Configure Promotion Preferences • 1-Production • 2-APR • 3-Prototype • 4-Design • Document CDC Reviewed • Document CDC Approved • Document FAA Approved • Activate PDM Calendar Delegation • Create Outlook Items • Folders • Rules & Actions • Add Participants to Promotion Approvers in Team’s • Jet • SR-2x • Modify Product View Publishing Recipe File • Publish to PDF • Modify Watermarking • Create new watermarking for new LCS’s • Move Legacy Documents into new folders • Re-assign LCS on Legacy Documents • Re-assign LCS on Library Components • Import OIR’s • Analysis Data • Design Documents • Design Notes • Specs-900XX • Specs-Requirements • Test Documents • ICM • Create Policy Admin access controls • Analysis Data • Design Documents • Design Notes • Specs-900XX • Specs-Requirements • Test Documents • ICM • Modify permissions on object type not to be shown when creating new documents (Jet & SR-2X)
1. Creating Roles & Life Cycle States 1 2 • Run the enumcutomize.bat (E:\ptc\Windchill_9.0\Windchill\bin) from a Windchill Shell • Browse to: /wt/project • Select RoleRB.RB • Select Open 3 4
1. Create Roles & Life Cycle States 5 1 6 • Select New • Enter Names • Check the Selectable box • Select Save • Select Continue • Select OK • Enter next role and repeat above steps 2 • Approver 1 • Checker • Cog Eng • Eng Manager • Stress • Library Managers 3 4
1. Create Roles & Life Cycle States 1 2 • Browse to: /wt/lifecycle • Select StateRB.RB • Select Open 3
1. Create Roles & Life Cycle States 5 1 6 • Select New • Enter State names • Check the “Selectable” box • Select Save • Select Continue • Select OK • Enter next State and repeat above steps 2 • Design • Reviewed • CDC Approved • FAA Approved 3 4
1. Create Roles & Life Cycle States • Run “ant –f MakeJar.xml from <wc_loadpoint>\codebase directory in a Windchill Shell • Run windchill stop in the Windchill Shell Stop/Start Services • Windchill Apache • Windchill Server • Windchill Tomcat • Delete Tomcat Cache (<wc_loadpoint>\Tomcat\work\Catalina) directory • Start Services • Windchill Apache • Windchill Server • Windchill Tomcat • Run windchill start in the Windchill Shell
2. Create Folders 1 2 3 • Access the Jet & SR2X Contexts • Browse to the Jet/Documents Folder • Create New Folders • Analysis Data • Design Documents • Design Notes • Specs-900XX • Specs-Requirements • Test Documents 4
3. Create Soft Object Types 1 • Select Type Manager • Select Document • Select Edit • Select New • Enter type name in UI • 1st & Last same • Select Instantiable” • Select OK 2 4 3
3. Create Soft Object Types 6 9 • Select New Object • Select Edit • Select Instantiable” • Select OK • Select Save • Select Document • Select Check-In 8 7 5
4. Create Attributes 11 • Select Soft Object Type • Select Attribute Definition Manager • Select CirrusEngineering • Select Edit • Select New • Name = AttributeName • Example: XX Test (dlh.cdc. Not required) • Select OK • Select specific attribute • Enter Description, Display Name & Hierarchy Display Name • Save Attribute 13 12 14 14 17 16 15
4. Assign Attributes 20 23 25 21 19 25 24 26 22 28 30 • Select Attribute • Select Edit • Select Attribute • Select Add Attribute • Select from list • Select “Select” • Select Attribute • Select Show Constraints • Select Add • Select Discrete Set Constraint • Select “Select” • Modify Data Column • |value|value|value • Select OK 27 29 31
5. Create & Modify, Life Cycle States Create New Life Cycle States • Login as wcadmin >Organization, >Utilities, >Life Cycle Admin 2 • Select existing State • or create new State • Select Edit for existing 3 1
5. Library Components - Life Cycle States • Select New Phase, repeat for each state • Select Enabled • Select Advanced • Enter Life Cycle Name • Select State Box • Select state name from drop down list. (if the correct name does not exist use the enumcustomize process to add state) • Select Mil Std • Select state to state transitions Action Types • Select next states following steps 5-8 for each 1 2 3 4 9 10 5 7 6 8
5. Document - Life Cycle States • Follow previous page steps to create new LCS for Docuemnts
5. Modify Existing - Drawing Life Cycle States 1 2 • Select New Phase • Move new state box to location desired • Select state name from drop down list. (if the correct name does not exist use the enumcustomize process to add state) • Select Mil Std • Select state to state transitions Action Types 2 4 3 5
5. Create & Modify, Life Cycle States • Select LCS • Select Check In 1 2
Assigning New LCS to existing data • Search Documents as Orgadmin from folder/context search • Select all files and reassign Life Cycle State • Set state to approved state for the new LCS
Copy PromotionNoticeWorkflowHelper.class to E:\PTC\Windchill_9.0\Windchill\codebase\com\ptc\windchill\enterprise\maturity
6. Create Promotion Request Workflows • Create New Promotion Requests • Login as wcadmin >Organization, >Utilities, >Workflow Admin 1 1 • Select the “Promotion Request Approval Process” • Select Save As • Naming of the new workflows is done starting with a number for future use in the Promotion Process
6. Create Promotion Request Workflows4-Design 1 1 • Select Edit new workflow • Select Promotion Request Approval E-Mail Robot • Select the Message Tab • Enter the e-mail Subject "Design" State Model or Drawing Approved
6. Create Promotion Request Workflows 4 3 2 • Checker, Cog Eng & Stress Approval with Skip Stress when Stress is N/A • Task to Author for Rework Review or Approval • Eng Manager Approval with Rework possibility • CM Data Entry task 1
6. Create Promotion Request Workflows #1 A C E B D
6. Create Promotion Request Workflows 1 2 3 4 • Select Conditional, connector type • Select Conditional, routing type • Enter Routing Events; “Skip” and “Go” • Enter Routing Expression as it appears above • Select Start, for “Go” -> Select OK • Select Fire, for “Skip” -> Select OK 6 5
Rework Robot com.ptc.windchill.enterprise.maturity.PromotionNoticeWorkflowHelper helper = new com.ptc.windchill.enterprise.maturity.PromotionNoticeWorkflowHelper((wt.maturity.PromotionNotice)primaryBusinessObject, false); helper.updateWithLatestIterations(); Regather PN Objects Conditional Expression (may be OTB but not sure) wt.maturity.PromotionNotice pn = (wt.maturity.PromotionNotice)primaryBusinessObject; try { wt.util.WTProperties props = wt.util.WTProperties.getLocalProperties(); VERBOSE = props.getProperty("wt.maturity.verbose",VERBOSE); } catch( Throwable t ) { } try { wt.maturity.MaturityServerHelper.service.lockTargets( pn ); result = "Accepted"; } catch( Exception wte ) { if ( VERBOSE ) wte.printStackTrace(); result = "Rejected"; // send notification to owner } Unlock Target Expression wt.maturity.PromotionNotice pn = (wt.maturity.PromotionNotice)primaryBusinessObject; try { wt.util.WTProperties props = wt.util.WTProperties.getLocalProperties(); VERBOSE = props.getProperty("wt.maturity.verbose",VERBOSE); } catch( Throwable t ) { } try{ wt.maturity.MaturityServerHelper.service.unlockTargets (pn); } catch (wt.maturity.MaturityException me){ if ( VERBOSE ) me.printStackTrace(); }
6. Create Promotion Request Workflows #3 • See previous 3 slides for rework configuration
6. Create Promotion Request Workflows 1 • Select Workflow • Select Check In 2
6. Create Promotion Request Workflows • Same as previous rework loops • Save workflow & check in
6. Create Promotion Request Workflows • The following Workflows will remain the same until we have joint CDC & FAA acceptance of them: • 1-Production • 2-APR • 6-Document CDC Approved • 7-Document FAA Approved • Make a copy of the “Promotion Request Approval Process” workflow and name accordingly.
7. OIR Creation • Login as orgadmin • OIR’s will be created at the context level for each doc type • Select Product; Jet, SR2X, Library, etc… • Select Utilities • Select Object Initialization Rules Administrator
7. OIR Creation 1 2 3 • Select New Rule • Enter Rule Name • Enter Object Type equals PDM logical name • Browse to the XML file created for this object type • OIR sets LCS & Folder Location 4
7. OIR Creation (Create one for each doc type) • <AttributeValues objType="wt.doc.WTDocument|dlh.cdc.AnalysisData"> • <AttrValue • id="docType" • algorithm="wt.rule.algorithm.EnumTypeConstant" • ignore="false" • force="false" • final="false"> • <Arg>wt.doc.DocumentType</Arg> • <Arg>$$Document</Arg> • </AttrValue> • <AttrValue • id="lifeCycle.id" • algorithm="com.ptc.core.foundation.lifecycle.server.impl.LifeCycleTemplateAttributeAlgorithm" • ignore="false" • force="false" • final="false"> • <Arg>Cirrus Design Simple Approval Life Cycle</Arg> • </AttrValue> • <AttrValue • id="folder.id" • algorithm="com.ptc.core.foundation.folder.server.impl.FolderPathAttributeAlgorithm" • ignore="false" • force="false" • final="false"> • <Arg>/Default/Documents/Analysis Data</Arg> • </AttrValue> • </AttributeValues>
7. OIR Creation 5 • Create a new OIR of each of the six documents