AI Skill Report Card
Generated Skill
YAML--- name: implementing-teamcenter-plm description: Implements comprehensive PLM solutions using Siemens Teamcenter, including AWC customization, workflows, integrations with ERP/CAD systems, and custom development. Use when setting up PLM infrastructure, customizing Teamcenter environments, or integrating with enterprise systems. ---
Implementing Teamcenter PLM Solutions
Quick Start
Bash# Basic Teamcenter AWC customization structure src/ ├── preferences/ │ └── AWC_MyCustomization.json ├── viewmodel/ │ └── MyCustomViewModel.json ├── view/ │ └── MyCustomView.html └── src/ └── MyCustomService.js
Recommendation▾
Consider adding more specific examples
Workflow
Progress:
- Analyze business requirements and PLM maturity
- Design data model and object structure
- Configure workflows and approval processes
- Set up ACL security model
- Implement CAD integrations
- Develop ERP gateway connections
- Create custom AWC interfaces
- Deploy SOA/ITK customizations
- Test integration scenarios
- Train users and deploy
1. Environment Setup
Bash# Teamcenter rich client installation tc_profilevars.bat set TC_ROOT=C:\Siemens\Teamcenter set TC_DATA=C:\Siemens\TC_Data
2. AWC Customization
JavaScript// Custom AWC service example define(['app'], function(app) { app.factory('MyPLMService', function() { return { createItem: function(itemData) { return soaService.post('Core-2014-10-DataManagement', 'createItems', { input: [{ itemInput: itemData, relateInfo: [] }] }); } }; }); });
3. Workflow Configuration
XML<!-- Basic approval workflow template --> <process name="ECR_Approval" version="1.0"> <task name="Submit" type="EPMTask"> <action>EPMSubmitAction</action> <assignment>originator</assignment> </task> <task name="Review" type="EPMReviewTask"> <assignment>engineering_group</assignment> <actions> <action>EPMApproveAction</action> <action>EPMRejectAction</action> </actions> </task> </process>
Recommendation▾
Include edge cases
Examples
Example 1: SAP Integration Input: Part number P12345 with BOM structure
Java// Teamcenter Gateway for SAP TCGatewayConfig config = new TCGatewayConfig(); config.setSAPSystem("PRD"); config.setMaterialMaster("P12345");
Output: Synchronized part data between Teamcenter and SAP MM module
Example 2: NX Plugin Development Input: Custom feature creation requirement
C++// NXOpen C++ plugin extern "C" DllExport void ufusr(char *param, int *retcode, int rlen) { Session *theSession = Session::GetSession(); Part *workPart = theSession->Parts()->Work(); // Custom feature logic Features::CustomFeature *customFeature = workPart->Features()->CustomFeatureCollection()-> CreateCustomFeature(); }
Output: Integrated NX plugin with Teamcenter managed features
Example 3: Query Development Input: Find all released drawings for specific project
SQL-- Teamcenter Query Manager SELECT item.pitem_id, item.object_name, rev.item_revision_id FROM POM_item item, POM_item_revision rev, Dataset ds WHERE item.puid = rev.ritems_tag AND rev.release_status_list LIKE '%Released%' AND item.object_type = 'Drawing' AND item.project = 'PROJECT_X'
Output: Filtered list of released drawings with revision data
Best Practices
Data Architecture:
- Use consistent naming conventions for item IDs
- Implement proper classification hierarchy
- Design extensible ACL groups structure
- Plan for multi-site deployment scenarios
Integration Patterns:
- Use asynchronous processing for large data transfers
- Implement error handling and retry mechanisms
- Cache frequently accessed data
- Monitor performance with TC logging
Development Standards:
Java// ITK development pattern int create_custom_item(tag_t *item_tag) { int status = ITK_ok; tag_t item_type = NULLTAG; CALL(ITEM_find_item_type("MyCustomType", &item_type)); CALL(ITEM_create_item("ID", "Name", "Type", item_tag)); return status; }
Security Configuration:
- Implement role-based access control
- Use named ACLs for reusability
- Regular ACL auditing and cleanup
- Principle of least privilege
Common Pitfalls
Performance Issues:
- Avoid recursive BOM traversals in queries
- Don't load unnecessary properties in SOA calls
- Batch operations when possible
- Monitor database connection pooling
Integration Failures:
- Always validate data before cross-system transfer
- Handle timezone differences in date fields
- Test with realistic data volumes
- Implement proper logging for troubleshooting
Customization Mistakes:
- Don't modify OOTB templates directly
- Avoid hardcoding server paths in AWC
- Test customizations across all supported browsers
- Version control all custom code
Deployment Problems:
- Backup production before major releases
- Use staging environment for testing
- Plan for rollback scenarios
- Coordinate with IT for infrastructure changes