=======
Go to primary content
Agile Product Lifecycle Management SDK Developer Guide - Using APIs
Release 9.3.6
E71152-01
Next
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
1
Introduction
1.1
About this Guide
1.1.1
Agile PLM Extensions Framework
1.2
SDK Components
1.2.1
Client-Side Components
1.2.1.1
Documentation
1.2.1.2
Installation
1.2.2
Server-Side Components
1.3
SDK Architecture
1.4
System Requirements
1.5
Java Requirements
1.5.1
JVM Parameters for Preventing Out of Memory Exceptions
1.6
Agile SDK Installation Folders
1.7
Checking Your Agile PLM System
1.8
Agile PLM Business Objects
2
Getting Started with Agile API
2.1
Types of Agile API Classes and Interfaces
2.2
Network Class Loading
2.3
Single-Threaded versus Multi-Threaded Applications
2.4
Packaging an Agile API Program
2.5
Distributing Agile API Files
2.6
Sample Programs
2.7
Starting an Agile API Program
2.7.1
Setting the Class Path for the Agile API Library
2.7.2
Importing Agile API Classes
2.7.3
Creating a Session and Logging In
2.7.4
Creating a Session by Accessing a Password Protected URL
2.7.5
Creating a Session from an Agile Web Service
2.7.6
Creating a Session in a Cluster Environment
2.8
Loading and Creating Agile PLM Objects
2.8.1
Loading Objects
2.8.1.1
Specifying Object Types
2.8.1.2
Specifying Object Parameters
2.8.1.3
Loading Different Types of Objects
2.8.2
Creating Objects
2.8.2.1
Working with Agile PLM Classes
2.8.2.2
Creating Objects of User-Defined Subclasses
2.8.2.3
Using AutoNumbers
2.8.2.4
Setting the Required Fields
2.8.2.5
Creating Different Types of Objects
2.8.3
Checking the State of Agile PLM Objects
2.8.4
Propagating Values to Related Objects
2.8.5
Saving an Object to a New Object
2.8.6
Sharing an Object
2.8.7
Deleting and Undeleting Objects
2.8.8
Closing a Session
3
Creating and Loading Queries
3.1
About Queries
3.2
Creating a Query
3.3
Saving a Query to a Folder
3.4
Generating Ordered (sorted) or Unordered Query Results
3.5
Specifying Query Attributes when Creating a Query
3.6
Specifying Search Criteria
3.6.1
Search Conditions
3.6.2
Query Language Keywords
3.6.3
Specifying Search Attributes
3.6.4
Retrieving Searchable Attributes
3.6.5
Retrieving the Sequence ID of a Query
3.6.6
Using Relational Operators
3.6.6.1
Using Unicode Escape Sequences
3.6.6.2
Using the Between, Not Between, In, and, Not In Operators
3.6.6.3
Using the Nested Criteria to Search for Values in Object Lists
3.6.6.4
Using Criteria Selected from Criteria Library in SDK Queries
3.6.6.5
Using Relationships and Content in SDK Queries
3.6.6.6
Searching for Words or Phrases Contained in Attachments
3.6.6.7
Searching for Orphaned Parts (or Parts without Parents)
3.6.7
Creating a Parameterized Query
3.6.8
Formatting Dates in Query Criteria
3.6.9
Using Logical Operators
3.6.10
Using Wildcard Characters with the Like Operator
3.6.11
Using Parentheses in Search Criteria
3.6.12
Setting Search Criteria for Lists Containing Large Numbers of Objects
3.7
Using SQL Syntax for Search Criteria
3.7.1
Using SQL Wildcards
3.7.2
Sorting Query Results Using SQL Syntax
3.8
Setting Result Attributes for a Query
3.8.1
Specifying Result Attributes
3.8.2
Retrieving the CTO Originator Name
3.8.3
Duplicate Results for Site-Related Objects and AMLs
3.9
Working with Query Results
3.9.1
Sorting Query Results
3.9.2
Query Result Datatypes
3.9.3
Using Admin Preferences Attributes to Manage Queries and Reports
3.9.3.1
Setting the Maximum Query Results Displayed
3.9.3.2
Setting Maximum BOM Report Results
3.9.3.3
Selecting Search Results Based on Table or Row
3.9.4
Query Performance
3.10
Creating a Where-Used Query
3.11
Loading a Query
3.12
Deleting Saved Queries
3.13
Simple Query Examples
4
Working with Tables
4.1
About Tables
4.1.1
Affected Read Through Tables Supported by SDK
4.2
Retrieving a Table
4.3
Accessing the New and Merged Relationships Tables
4.3.1
Accessing the Relationships Table
4.3.2
Accessing the Merged Relationships Tables
4.3.2.1
Accessing the Merged Relationships.AffectedBy Table
4.3.2.2
Accessing the Merged Relationships.Affects table
4.3.2.3
Accessing the Merged Relationships.References Table
4.3.2.4
Retrieving the BOM table of an Item
4.3.3
Working with Read-only Tables
4.4
Retrieving the Metadata of a Table
4.5
Adding Table Rows
4.5.1
Adding an Item to a BOM Table
4.5.2
Adding an Attachment to the Attachments Table
4.5.2.1
Increasing the Default Value of agile.sso.expirationTime to Add Attachments
4.5.3
Adding a Manufacturer Part to the Manufacturers Table
4.5.4
Adding an Item to the Affected Items Table
4.5.5
Adding a Task to the Schedule Table
4.6
Adding and Updating Multiple Table Rows
4.6.1
Adding Multiple Team Members to the Team Table of a Project
4.6.2
Adding Multiple Items to the BOM Table
4.6.3
Updating Multiple BOM Rows
4.7
Managing PSR Affected Items Tables Using Bulk Edit APIs
4.7.1
The Bulk Edit Interface
4.7.2
Managing Table Rows in the Bulk Execution Mode
4.7.3
Casting ITable Variables to IServiceRequestAITable Variables
4.8
Iterating Over Table Rows
4.8.1
Updating Objects in Query Results with Multiple Page Tables
4.9
Sorting Table Rows
4.10
Removing Table Rows
4.11
Retrieving the Referenced Object for a Row
4.12
Checking the Status Flags of a Row
4.13
Working with Page 1, Page 2, and Page 3
4.14
Working with Revisions and Relationships
4.14.1
Setting and Getting Flags for Revision Controlled Relationship Rows
4.14.1.1
Getting Flags on Relationships Tab when Adding Revision Controlled Object Revisions
4.14.1.2
Setting Different Relationships and Revisions for Items
4.15
Redlining
4.15.1
Redlining BOMs, Manufacturers, and Price Lines Tables
4.15.1.1
Redlining the Manufacturers table of an item
4.15.2
Redlining the Title Block of an Item
4.16
Removing Redline Changes
4.16.1
Removing Redline Changes in Bulk Mode
4.17
Identifying Redlined Rows and Redlined Cells
4.17.1
Using ICell.getOldValue
5
Working with Data Cells
5.1
About Data Cells
5.2
Data Types
5.3
Checking if the Cell is a Read-Only Cell
5.4
Getting Values
5.4.1
Understanding SDK Date Formats and User Preferences
5.5
Setting Values
5.5.1
Catching Exceptions for Locked Objects
5.6
Getting and Setting List Values
5.6.1
Getting and Setting Values for SingleList Cells
5.6.2
Getting and Setting Values for MultiList Cells
5.6.3
Getting and Setting Values for Cascading Lists
5.7
Using Reference Designator Cells
6
Working with Folders
6.1
About Folders
6.1.1
Using Level Separation Characters in Folders and Object Names
6.2
Loading a Folder
6.3
Creating a Folder
6.4
Setting the Folder Type
6.5
Adding and Removing Folder Elements
6.5.1
Adding Folder Elements
6.5.2
Removing Folder Elements
6.6
Getting Folder Elements
6.7
Deleting a Folder
7
Working with Design Change Order Objects
7.1
About Design Change Orders Objects and Design Objects
7.1.1
Integration of Agile PLM and Engineering Collaboration
7.2
Change Order File Folders Actions Supported by SDK
7.2.1
Actions Supported on the Change Order Affected Files Tab
7.2.2
Actions Supported for Redline/Markups Folders in Affected Files Lower Table
7.2.3
Actions Supported on the Affected Files Titleblock Folder
7.2.4
Actions that Support File Folder and Design Objects
8
Working with Items, BOMs, and AMLs
8.1
Working with Items
8.1.1
Supported Page 2 Item Attributes
8.1.2
Getting and Setting the Revision of an Item
8.1.2.1
Failing to get a of an Item using the Title Block.Rev field
8.1.3
Changing the Incorporated Status of a Revision
8.2
Working with BOMs
8.2.1
Adding an Item to a BOM
8.2.2
Expanding a BOM
8.2.3
Copying one BOM into another BOM
8.2.4
Creating BOM-Related Product Reports
8.2.5
Redlining a BOM
8.2.5.1
Getting a Released Assembly Item
8.2.5.2
Creating a Change Order
8.2.5.3
Adding Items to the Affected Items tab of a Change Order
8.2.5.4
Modifying the Redline BOM Table
8.3
Working with AMLs
8.3.1
Adding an Approved Manufacturer to the Manufacturers Table
8.3.2
Updating AML Split Percentages in Sourcing Projects
8.3.3
Retrieving AML Data from the Item Master
8.3.4
Redlining an AML
9
Accessing PLM Metadata with APIName Field
9.1
About the APIName Field
9.2
Assigning Names to APIName Fields
9.3
APIName Validation Rules
9.4
Accessing Metadata Using the APIName Field
9.4.1
APIs that Support the APIName Field
9.4.2
SDK APIs that Get the APIName Field
9.4.3
API Names of Root Administrator Nodes
9.4.4
API Name Examples
10
Subscribing to Agile PLM Objects
10.1
About User Subscriptions
10.1.1
Subscription Events
10.1.2
Subscribe Privilege
10.1.3
Subscription Notifications
10.1.3.1
Sending Notifications with SDK
10.2
Deleting Subscribed Objects
10.3
Getting Subscriptions for an Object
10.4
Modifying Subscriptions for an Object
10.5
Making Attributes Available for Subscription
10.5.1
Parent and Child Attributes
10.6
Working with Subscription Tables
11
Managing Manufacturing Sites
11.1
About Manufacturing Sites
11.2
Controlling Access to Sites
11.3
Creating a Manufacturing Site
11.4
Loading a Manufacturing Site
11.5
Retrieving the Sites Table for an Item
11.6
Adding a Manufacturing Site to the Sites Table
11.7
Selecting the Current Manufacturing Site of an Item
11.8
Disabling a Site
12
Managing Reference Objects
12.1
About Reference objects
12.2
Creating a Reference Object
12.3
Updating a Reference Object
12.4
Deleting a Reference Object
12.5
Adding a Reference Object to the Relationships Tab of the Web Client
12.6
Removing Reference ObjectS from Relationships Tab of the Web Client
12.7
Searching for Reference Objects
13
Working with Lists
13.1
About Lists
13.1.1
List Library
13.1.2
SingleList Lists
13.1.3
Cascading Lists
13.2
MultiList Lists
13.3
Methods that Use IAgileList
13.4
Selecting a List Value
13.4.1
Working with Lifecycle Phase Cells
13.4.2
Working with Dynamic Lists
13.4.2.1
Enumerable and Non-Enumerable Lists
13.4.2.2
Directly Checking if Contents of the List is an Enumerable Set
13.4.2.3
Non-Enumerable PG&C Lists
13.5
Setting the Maximum Value Displayed by a List
13.6
Selecting a List from the List Library
13.7
Creating Custom Lists
13.7.1
Creating a Simple List
13.7.2
Automatically Creating New Lists by Modifying Existing Lists
13.7.3
Creating a Cascading List
13.7.4
Creating a Criteria-Based List
13.8
Checking the Data Type of a List
13.9
Renaming and Removing List Values
13.9.1
Adding a Value to a List
13.9.2
Making List Values Obsolete
13.9.3
Setting the List Name and Description
13.9.4
Setting Level Names for a Cascading List
13.9.5
Enabling or Disabling a List
13.9.6
Deleting a List
13.10
Printing Contents of IAgileList Objects
14
Working with Attachments and File Folder Objects
14.1
About Attachments and File Folders
<<<<<<< .mine
14.2
About SDK's File Load Utility
14.3
Working with File Folders
=======
14.2
About SDK's File Load Utility
14.3
Working with File Folders
>>>>>>> .r346
<<<<<<< .mine
14.3.1
File Folder Classes and Subclasses
14.3.2
File Folder Tables and Constants
14.3.3
Creating File Folder Objects
14.3.4
Creating File Folder Objects by Adding Rows to Attachments Table
14.3.5
Working with the Files Table of a File Folder
14.3.6
Accessing Files in Agile PLM File Vault with IAttachmentFile
=======
14.3.1
File Folder Classes and Subclasses
14.3.2
File Folder Tables and Constants
14.3.3
Creating File Folder Objects
14.3.4
Creating File Folder Objects by Adding Rows to Attachments Table
14.3.5
Working with the Files Table of a File Folder
14.3.6
Accessing Files in Agile PLM File Vault with IAttachmentFile
>>>>>>> .r346
14.4
Working with Attachments Table of an Object
<<<<<<< .mine
14.4.1
Checking In and Checking Out Files with ICheckoutable
14.4.2
Specifying the Revision of the Item
14.4.3
Checking if the Revision Is Incorporated
=======
14.4.1
Checking In and Checking Out Files with ICheckoutable
14.4.2
Specifying the Revision of the Item
14.4.3
Checking if the Revision Is Incorporated
>>>>>>> .r346
<<<<<<< .mine
14.5
Checking Out a File Folder
14.6
Canceling a File Folder Checkout
14.7
Adding Files and URLs to the Attachments Table
=======
14.5
Checking Out a File Folder
14.6
Canceling a File Folder Checkout
14.7
Adding Files and URLs to the Attachments Table
>>>>>>> .r346
<<<<<<< .mine
14.7.1
Deep Cloning Attachments and Files from One Object to Another
14.7.2
Specifying the File Folder Subclass When Adding Attachments
14.7.3
Retrieving Attachment Files
14.7.4
Deleting Attachments and File Folders
14.7.5
Working with Thumbnails
=======
14.7.1
Deep Cloning Attachments and Files from One Object to Another
14.7.2
Specifying the File Folder Subclass When Adding Attachments
14.7.3
Retrieving Attachment Files
14.7.4
Deleting Attachments and File Folders
14.7.5
Working with Thumbnails
>>>>>>> .r346
<<<<<<< .mine
14.7.5.1
Accessing Thumbnails
14.7.5.2
Regenerating Thumbnails
14.7.5.3
Setting Master Thumbnails
14.7.5.4
Replacing Thumbnails
14.7.5.5
Sequencing Thumbnails
14.7.5.6
Generating Thumbnails while Adding Files to Attachments Tab
=======
14.7.5.1
Accessing Thumbnails
14.7.5.2
Regenerating Thumbnails
14.7.5.3
Setting Master Thumbnails
14.7.5.4
Replacing Thumbnails
14.7.5.5
Sequencing Thumbnails
14.7.5.6
Generating Thumbnails while Adding Files to Attachments Tab
>>>>>>> .r346
<<<<<<< .mine
14.7.6
Working with Design Objects
=======
14.7.6
Working with Design Objects
>>>>>>> .r346
<<<<<<< .mine
14.7.6.1
Adding and Loading Design Objects
14.7.6.2
Managing Version Specific Relationships between Design Objects
14.7.6.3
Adding Relationships for Specific Versions of Design Objects
14.7.6.4
Removing Relationships for Specific Versions of Design Objects
14.7.6.5
Getting Relationships for Specific Versions of Design Objects
14.7.6.6
Editing Relationships for Specific Versions of Design Objects
14.7.6.7
Purging Specific Versions of Design Objects
14.7.6.8
Searching Design Object Deployments with Where-Used Queries
=======
14.7.6.1
Adding and Loading Design Objects
14.7.6.2
Managing Version Specific Relationships between Design Objects
14.7.6.3
Adding Relationships for Specific Versions of Design Objects
14.7.6.4
Removing Relationships for Specific Versions of Design Objects
14.7.6.5
Getting Relationships for Specific Versions of Design Objects
14.7.6.6
Editing Relationships for Specific Versions of Design Objects
14.7.6.7
Purging Specific Versions of Design Objects
14.7.6.8
Searching Design Object Deployments with Where-Used Queries
>>>>>>> .r346
15
Importing and Exporting Data with SDK
<<<<<<< .mine
15.1
About Importing and Exporting Data
15.2
Validating Import Data and Importing Data
15.3
Exporting Data from the SDK
=======
15.1
About Importing and Exporting Data
15.2
Validating Import Data and Importing Data
15.3
Exporting Data from the SDK
>>>>>>> .r346
<<<<<<< .mine
15.3.1
Invoking SDK's Export Function
=======
15.3.1
Invoking SDK's Export Function
>>>>>>> .r346
<<<<<<< .mine
15.4
Importing and Exporting Microsoft Project 2010 Files
=======
15.4
Importing and Exporting Microsoft Project 2010 Files
>>>>>>> .r346
<<<<<<< .mine
15.4.1
Validating MSP Import Data
=======
15.4.1
Validating MSP Import Data
>>>>>>> .r346
<<<<<<< .mine
15.4.1.1
Importing MSP Data
=======
15.4.1.1
Importing MSP Data
>>>>>>> .r346
<<<<<<< .mine
15.4.1.1.1
Create Mode
15.4.1.1.2
Update Mode
=======
15.4.1.1.1
Create Mode
15.4.1.1.2
Update Mode
>>>>>>> .r346
<<<<<<< .mine
15.4.1.2
Exporting MSP Data
=======
15.4.1.2
Exporting MSP Data
>>>>>>> .r346
<<<<<<< .mine
15.4.1.2.1
API Signature
=======
15.4.1.2.1
API Signature
>>>>>>> .r346
16
Managing Workflow
<<<<<<< .mine
16.1
About Workflow
16.2
The Change Control Process
16.3
Dynamics of Workflow Functionality
=======
16.1
About Workflow
16.2
The Change Control Process
16.3
Dynamics of Workflow Functionality
>>>>>>> .r346
<<<<<<< .mine
16.3.1
How the Status of a Change Affects Workflow Functionality
16.3.2
How User Privileges Affect Workflow Functionality
=======
16.3.1
How the Status of a Change Affects Workflow Functionality
16.3.2
How User Privileges Affect Workflow Functionality
>>>>>>> .r346
<<<<<<< .mine
16.4
Selecting a Workflow
16.5
Adding and Removing Approvers
=======
16.4
Selecting a Workflow
16.5
Adding and Removing Approvers
>>>>>>> .r346
<<<<<<< .mine
16.5.1
Approving or Rejecting Change
16.5.2
Approving or Rejecting a Change Without Password
16.5.3
Commenting a Change
16.5.4
Auditing a Change
=======
16.5.1
Approving or Rejecting Change
16.5.2
Approving or Rejecting a Change Without Password
16.5.3
Commenting a Change
16.5.4
Auditing a Change
>>>>>>> .r346
16.5.5
Changing the Workflow Status of an Object
<<<<<<< .mine
16.5.6
Sending an Agile Object to Selected Users
16.5.7
Sending an Agile Object to User Groups
=======
16.5.6
Sending an Agile Object to Selected Users
16.5.7
Sending an Agile Object to User Groups
>>>>>>> .r346
<<<<<<< .mine
16.6
Managing Functional Teams
=======
16.6
Managing Functional Teams
>>>>>>> .r346
16.6.1
Job Functions, Functional Teams, and Workflow Actions
<<<<<<< .mine
16.6.2
Creating a Functional Team
16.6.3
Managing Timesheets
=======
16.6.2
Creating a Functional Team
16.6.3
Managing Timesheets
>>>>>>> .r346
<<<<<<< .mine
16.6.3.1
Retrieving Tasks Users Can Log Time Against
16.6.3.2
Logging or Modifying the Reported Time for a User on a Task
16.6.3.3
Retrieving Hours for a Given User or Activity
=======
16.6.3.1
Retrieving Tasks Users Can Log Time Against
16.6.3.2
Logging or Modifying the Reported Time for a User on a Task
16.6.3.3
Retrieving Hours for a Given User or Activity
>>>>>>> .r346
<<<<<<< .mine
16.6.4
Creating a Job Functions Table
=======
16.6.4
Creating a Job Functions Table
>>>>>>> .r346
16.6.5
Adding a Discussion to a Functional Team
<<<<<<< .mine
16.6.5.1
Assigning Actions Items to Functional Teams
16.6.5.2
Updating a Functional Team's News Table
=======
16.6.5.1
Assigning Actions Items to Functional Teams
16.6.5.2
Updating a Functional Team's News Table
>>>>>>> .r346
17
Managing and Tracking Quality
<<<<<<< .mine
17.1
About Quality Control
=======
17.1
About Quality Control
>>>>>>> .r346
<<<<<<< .mine
17.1.1
Quality-Related API Objects
17.1.2
Quality-Related Roles and Privileges
=======
17.1.1
Quality-Related API Objects
17.1.2
Quality-Related Roles and Privileges
>>>>>>> .r346
<<<<<<< .mine
17.2
Working with Customers
=======
17.2
Working with Customers
>>>>>>> .r346
<<<<<<< .mine
17.2.1
About Customers
17.2.2
Creating a Customer
17.2.3
Loading a Customer
17.2.4
Saving a Customer as Another Customer
=======
17.2.1
About Customers
17.2.2
Creating a Customer
17.2.3
Loading a Customer
17.2.4
Saving a Customer as Another Customer
>>>>>>> .r346
<<<<<<< .mine
17.3
Working with Product Service Requests
=======
17.3
Working with Product Service Requests
>>>>>>> .r346
<<<<<<< .mine
17.3.1
About Problem Reports
17.3.2
About Nonconformance Reports
17.3.3
Creating a Product Service Request
17.3.4
Assigning a Product Service Request to a Quality Analyst
17.3.5
Adding Affected Items to a Product Service Request
17.3.6
Adding Related PSRs to a Product Service Request
=======
17.3.1
About Problem Reports
17.3.2
About Nonconformance Reports
17.3.3
Creating a Product Service Request
17.3.4
Assigning a Product Service Request to a Quality Analyst
17.3.5
Adding Affected Items to a Product Service Request
17.3.6
Adding Related PSRs to a Product Service Request
>>>>>>> .r346
<<<<<<< .mine
17.4
Working with Quality Change Requests
=======
17.4
Working with Quality Change Requests
>>>>>>> .r346
<<<<<<< .mine
17.4.1
Creating a Quality Change Request
17.4.2
Assigning a Quality Change Request to a Quality Administrator
17.4.3
Saving a Quality Change Request as a Change
=======
17.4.1
Creating a Quality Change Request
17.4.2
Assigning a Quality Change Request to a Quality Administrator
17.4.3
Saving a Quality Change Request as a Change
>>>>>>> .r346
<<<<<<< .mine
17.5
Using Workflow Features with PSRs and QCRs
=======
17.5
Using Workflow Features with PSRs and QCRs
>>>>>>> .r346
<<<<<<< .mine
17.5.1
Selecting Workflows for PSRs and QCRs
=======
17.5.1
Selecting Workflows for PSRs and QCRs
>>>>>>> .r346
18
Managing Product Governance & Compliance
<<<<<<< .mine
18.1
About Agile Product Governance & Compliance
18.2
Agile PG&C Interfaces and Classes
18.3
Agile PG&C Roles
18.4
Creating Declarations, Specifications, and Substances
=======
18.1
About Agile Product Governance & Compliance
18.2
Agile PG&C Interfaces and Classes
18.3
Agile PG&C Roles
18.4
Creating Declarations, Specifications, and Substances
>>>>>>> .r346
<<<<<<< .mine
18.4.1
Creating Declarations
18.4.2
Creating Specifications
=======
18.4.1
Creating Declarations
18.4.2
Creating Specifications
>>>>>>> .r346
<<<<<<< .mine
18.5
Creating Substances
=======
18.5
Creating Substances
>>>>>>> .r346
<<<<<<< .mine
18.5.1
Creating a Substance
18.5.2
Creating a Substance Group
18.5.3
Creating a Material
18.5.4
Creating a Subpart
=======
18.5.1
Creating a Substance
18.5.2
Creating a Substance Group
18.5.3
Creating a Material
18.5.4
Creating a Subpart
>>>>>>> .r346
<<<<<<< .mine
18.6
Adding Items, Manufacturer Parts, and Part Groups to Declarations
18.7
Adding Substances to Declarations
=======
18.6
Adding Items, Manufacturer Parts, and Part Groups to Declarations
18.7
Adding Substances to Declarations
>>>>>>> .r346
<<<<<<< .mine
18.7.1
Structure of Bill of Substances
=======
18.7.1
Structure of Bill of Substances
>>>>>>> .r346
18.7.2
Rules for Adding Substances
<<<<<<< .mine
18.7.3
Adding Subparts and Materials that Do Not Exist
18.7.4
Examples of Adding Substances
=======
18.7.3
Adding Subparts and Materials that Do Not Exist
18.7.4
Examples of Adding Substances
>>>>>>> .r346
<<<<<<< .mine
18.7.4.1
Adding Substances to Manufacturer Part Composition Table of Homogeneous Material Declarations
18.7.4.2
Adding Substances to Manufacturer Part Composition Table of Substance Declarations
=======
18.7.4.1
Adding Substances to Manufacturer Part Composition Table of Homogeneous Material Declarations
18.7.4.2
Adding Substances to Manufacturer Part Composition Table of Substance Declarations
>>>>>>> .r346
<<<<<<< .mine
18.8
Adding Substances to a Specification
18.9
Adding Specifications to a Declaration
=======
18.8
Adding Substances to a Specification
18.9
Adding Specifications to a Declaration
>>>>>>> .r346
<<<<<<< .mine
18.9.1
Rules for Adding Specifications
=======
18.9.1
Rules for Adding Specifications
>>>>>>> .r346
<<<<<<< .mine
18.10
Routing Declarations
18.11
Completing Declaration
s
18.12
Submitting Declarations to Compliance Managers
18.13
Publishing a Declaration
18.14
Getting and Setting Weight Values
=======
18.10
Routing Declarations
18.11
Completing Declaration
s
18.12
Submitting Declarations to Compliance Managers
18.13
Publishing a Declaration
18.14
Getting and Setting Weight Values
>>>>>>> .r346
<<<<<<< .mine
18.14.1
Converting an Object's Unit of Measure to a Different Unit of Measure
=======
18.14.1
Converting an Object's Unit of Measure to a Different Unit of Measure
>>>>>>> .r346
<<<<<<< .mine
18.15
Adding Substance Compositions for Manufacturer Parts
18.16
Rolling Up Compliance Data
=======
18.15
Adding Substance Compositions for Manufacturer Parts
18.16
Rolling Up Compliance Data
>>>>>>> .r346
<<<<<<< .mine
18.16.1
Understanding the IPGCRollup Interface
=======
18.16.1
Understanding the IPGCRollup Interface
>>>>>>> .r346
<<<<<<< .mine
18.16.1.1
Passing the Date Parameter
=======
18.16.1.1
Passing the Date Parameter
>>>>>>> .r346
<<<<<<< .mine
18.16.2
Using the IPGCRollup Interface
=======
18.16.2
Using the IPGCRollup Interface
>>>>>>> .r346
<<<<<<< .mine
18.16.2.1
Rolling Up Assembled Data on Items
18.16.2.2
Setting Values in the Calculated Compliance Field for Item Objects
18.16.2.3
Setting Values in the Calculated Compliance Field for Declaration Objects
18.16.2.4
Setting Values in Calculated Overall Compliance Fields of Item and Manufacturer Part Objects
18.16.2.5
Modifying the Calculated Compliance Field in Specification Table of Part, Manufacturer Part, and Part Group Objects
18.16.2.6
Modifying Settings in the Scheduled Rollups of Declarations
18.16.2.7
Performing External Compliance Rollups on Specification Objects
18.16.2.8
Updating Values of Calculated Compliance Attributes Against External Specifications
18.16.2.9
Creating External or Internal Specifications
=======
18.16.2.1
Rolling Up Assembled Data on Items
18.16.2.2
Setting Values in the Calculated Compliance Field for Item Objects
18.16.2.3
Setting Values in the Calculated Compliance Field for Declaration Objects
18.16.2.4
Setting Values in Calculated Overall Compliance Fields of Item and Manufacturer Part Objects
18.16.2.5
Modifying the Calculated Compliance Field in Specification Table of Part, Manufacturer Part, and Part Group Objects
18.16.2.6
Modifying Settings in the Scheduled Rollups of Declarations
18.16.2.7
Performing External Compliance Rollups on Specification Objects
18.16.2.8
Updating Values of Calculated Compliance Attributes Against External Specifications
18.16.2.9
Creating External or Internal Specifications
>>>>>>> .r346
<<<<<<< .mine
18.16.3
Using the IDeclaration Interface
=======
18.16.3
Using the IDeclaration Interface
>>>>>>> .r346
<<<<<<< .mine
18.16.3.1
Modifying value of the Calculated Compliance field of Declarations
=======
18.16.3.1
Modifying value of the Calculated Compliance field of Declarations
>>>>>>> .r346
19
Managing Agile PPM Calendars
<<<<<<< .mine
19.1
About Product Portfolio Management (PPM)
19.2
About PPM Calendar Management
=======
19.1
About Product Portfolio Management (PPM)
19.2
About PPM Calendar Management
>>>>>>> .r346
19.2.1
Calendar Tasks Supported by Agile SDK
<<<<<<< .mine
19.3
Performing Calendar-related Tasks using Agile SDK
=======
19.3
Performing Calendar-related Tasks using Agile SDK
>>>>>>> .r346
<<<<<<< .mine
19.3.1
Creating PPM Calendars
19.3.2
Updating Workweek Settings
19.3.3
Managing Working and Non-Working Days
19.3.4
Getting and Printing Exceptional Days
19.3.5
Deleting PPM Calendars
=======
19.3.1
Creating PPM Calendars
19.3.2
Updating Workweek Settings
19.3.3
Managing Working and Non-Working Days
19.3.4
Getting and Printing Exceptional Days
19.3.5
Deleting PPM Calendars
>>>>>>> .r346
<<<<<<< .mine
19.4
Accepting Changes and Changing the Status of Calendar
=======
19.4
Accepting Changes and Changing the Status of Calendar
>>>>>>> .r346
<<<<<<< .mine
19.4.1
Examples
=======
19.4.1
Examples
>>>>>>> .r346
<<<<<<< .mine
19.4.1.1
Accepting Changes
19.4.1.2
Changing the Status of PPM Calendars
=======
19.4.1.1
Accepting Changes
19.4.1.2
Changing the Status of PPM Calendars
>>>>>>> .r346
20
Creating and Managing Projects
<<<<<<< .mine
20.1
About Projects and Project Objects
20.2
Differences in the Behavior of Project Objects
20.3
Creating Projects
20.4
Adding Rules for PPM Objects
20.5
Loading Projects
20.6
Adding ”FileFolder” to Project's Content Tab
20.7
Using Project Templates
=======
20.1
About Projects and Project Objects
20.2
Differences in the Behavior of Project Objects
20.3
Creating Projects
20.4
Adding Rules for PPM Objects
20.5
Loading Projects
20.6
Adding ”FileFolder” to Project's Content Tab
20.7
Using Project Templates
>>>>>>> .r346
<<<<<<< .mine
20.7.1
Creating New Projects Using Templates
20.7.2
Creating Projects and Changing Ownerships
20.7.3
Saving Projects as Templates
=======
20.7.1
Creating New Projects Using Templates
20.7.2
Creating Projects and Changing Ownerships
20.7.3
Saving Projects as Templates
>>>>>>> .r346
20.8
Scheduling Projects
<<<<<<< .mine
20.9
Setting Start and End Timestamps for PPM Date Attributes
20.10
Working with Project Baselines
20.11
Delegating Ownership of a Project to Another User
20.12
Adding Resources to a Project Team
20.13
Substituting Project Resources
20.14
Locking or Unlocking Projects
20.15
Working with Discussions
=======
20.9
Setting Start and End Timestamps for PPM Date Attributes
20.10
Working with Project Baselines
20.11
Delegating Ownership of a Project to Another User
20.12
Adding Resources to a Project Team
20.13
Substituting Project Resources
20.14
Locking or Unlocking Projects
20.15
Working with Discussions
>>>>>>> .r346
<<<<<<< .mine
20.15.1
Creating a Discussion
20.15.2
Replying to a Discussion
20.15.3
Joining a Discussion
20.15.4
Creating an Action Item
=======
20.15.1
Creating a Discussion
20.15.2
Replying to a Discussion
20.15.3
Joining a Discussion
20.15.4
Creating an Action Item
>>>>>>> .r346
21
Handling Exceptions
<<<<<<< .mine
21.1
About Exceptions
=======
21.1
About Exceptions
>>>>>>> .r346
<<<<<<< .mine
21.1.1
Exception Constants
=======
21.1.1
Exception Constants
>>>>>>> .r346
<<<<<<< .mine
21.2
Getting Error Codes
=======
21.2
Getting Error Codes
>>>>>>> .r346
21.3
Disabling and Enabling Error Codes with Bulk APIs
<<<<<<< .mine
21.4
Getting Error Messages
21.5
Disabling and Enabling Warning Messages
21.6
Checking if APIException is Warning and not Error
21.7
Saving and Restoring State Enabled and Disabled Warnings
21.8
Warnings on Deleting Objects Disabled Automatically by Agile API
=======
21.4
Getting Error Messages
21.5
Disabling and Enabling Warning Messages
21.6
Checking if APIException is Warning and not Error
21.7
Saving and Restoring State Enabled and Disabled Warnings
21.8
Warnings on Deleting Objects Disabled Automatically by Agile API
>>>>>>> .r346
22
Working with Product Cost Management
<<<<<<< .mine
22.1
About Product Cost Management
22.2
Working with Price Objects
=======
22.1
About Product Cost Management
22.2
Working with Price Objects
>>>>>>> .r346
<<<<<<< .mine
22.2.1
Loading a Price Object
22.2.2
Adding Price Lines
=======
22.2.1
Loading a Price Object
22.2.2
Adding Price Lines
>>>>>>> .r346
<<<<<<< .mine
22.2.2.1
Minimum Required Attributes to Create Price Lines
=======
22.2.2.1
Minimum Required Attributes to Create Price Lines
>>>>>>> .r346
<<<<<<< .mine
22.2.3
Creating a Price Change Order
22.2.4
Creating a Price Object
=======
22.2.3
Creating a Price Change Order
22.2.4
Creating a Price Object
>>>>>>> .r346
<<<<<<< .mine
22.2.4.1
Defaults
22.2.4.2
Specifying Item Revisions
22.2.4.3
Creating a published price
=======
22.2.4.1
Defaults
22.2.4.2
Specifying Item Revisions
22.2.4.3
Creating a published price
>>>>>>> .r346
<<<<<<< .mine
22.3
Working with Suppliers
=======
22.3
Working with Suppliers
>>>>>>> .r346
<<<<<<< .mine
22.3.1
Loading a Supplier
=======
22.3.1
Loading a Supplier
>>>>>>> .r346
22.3.2
Modifying Supplier Data
<<<<<<< .mine
22.4
Working with Sourcing Projects
=======
22.4
Working with Sourcing Projects
>>>>>>> .r346
22.4.1
Supported API Methods
<<<<<<< .mine
22.4.2
Loading an Existing Sourcing Project
22.4.3
Creating Sourcing Projects by Quantity Breaks
22.4.4
Creating Sourcing Projects by Quantity Breaks and Price Periods
=======
22.4.2
Loading an Existing Sourcing Project
22.4.3
Creating Sourcing Projects by Quantity Breaks
22.4.4
Creating Sourcing Projects by Quantity Breaks and Price Periods
>>>>>>> .r346
<<<<<<< .mine
22.4.4.1
Importing Data for Sourcing Projects
=======
22.4.4.1
Importing Data for Sourcing Projects
>>>>>>> .r346
22.4.5
Understanding Nested Tables of PCM Sourcing Projects
<<<<<<< .mine
22.4.5.1
Sourcing Projects' Parent Table and Nested Child Table Constants
22.4.5.2
Accessing and Modifying Nested Tables in Sourcing Projects or RFQs
22.4.5.3
Viewing Updates after Modifying a Nested Table
=======
22.4.5.1
Sourcing Projects' Parent Table and Nested Child Table Constants
22.4.5.2
Accessing and Modifying Nested Tables in Sourcing Projects or RFQs
22.4.5.3
Viewing Updates after Modifying a Nested Table
>>>>>>> .r346
22.4.5.4
Accessing and Modifying the Status of Sourcing Project
<<<<<<< .mine
22.4.6
Managing Data in Sourcing Projects
=======
22.4.6
Managing Data in Sourcing Projects
>>>>>>> .r346
22.4.6.1
Setting Quantity for Items in Sourcing Projects
<<<<<<< .mine
22.4.6.2
Adding Items to Sourcing Projects Using BOM Filters
22.4.6.3
Updating the QPA Attribute on the Item Table of Sourcing Projects
22.4.6.4
Updating PLM content from the Item Master
=======
22.4.6.2
Adding Items to Sourcing Projects Using BOM Filters
22.4.6.3
Updating the QPA Attribute on the Item Table of Sourcing Projects
22.4.6.4
Updating PLM content from the Item Master
>>>>>>> .r346
<<<<<<< .mine
22.4.6.4.1
Updating Selected Attributes on Item Table of Sourcing Projects from Item Master
=======
22.4.6.4.1
Updating Selected Attributes on Item Table of Sourcing Projects from Item Master
>>>>>>> .r346
<<<<<<< .mine
22.4.6.5
Performing Quantity Rollups in Sourcing Projects
22.4.6.6
Performing Cost Rollup in Sourcing Projects
22.4.6.7
Performing Price Lookup in Sourcing Projects
22.4.6.8
Price Lookup API and Price Options
22.4.6.9
Parameters specific to price lookups from price history
22.4.6.10
Parameters specific to price lookups from Sourcing Projects
22.4.6.11
Required parameters for price lookups from price history
22.4.6.12
Setting the price lookup from Sourcing Projects
22.4.6.13
Setting the price lookup from History or Sourcing Projects
22.4.6.14
Settings for Quantity Breaks in price lookups
22.4.6.15
Impact of improper parameter settings
22.4.6.16
Settings for RFQ lookup
22.4.6.17
Settings for RFQ lookup
22.4.6.18
Generating the Assembly Cost Report for Sourcing Projects
22.4.6.19
Understanding Assembly Cost Report Parameters
22.4.6.20
Modifying the Target Price for Items in Sourcing Projects
22.4.6.21
Setting the Best Response for Items in Sourcing Projects
22.4.6.22
Setting Partners in Sourcing Projects
=======
22.4.6.5
Performing Quantity Rollups in Sourcing Projects
22.4.6.6
Performing Cost Rollup in Sourcing Projects
22.4.6.7
Performing Price Lookup in Sourcing Projects
22.4.6.8
Price Lookup API and Price Options
22.4.6.9
Parameters specific to price lookups from price history
22.4.6.10
Parameters specific to price lookups from Sourcing Projects
22.4.6.11
Required parameters for price lookups from price history
22.4.6.12
Setting the price lookup from Sourcing Projects
22.4.6.13
Setting the price lookup from History or Sourcing Projects
22.4.6.14
Settings for Quantity Breaks in price lookups
22.4.6.15
Impact of improper parameter settings
22.4.6.16
Settings for RFQ lookup
22.4.6.17
Settings for RFQ lookup
22.4.6.18
Generating the Assembly Cost Report for Sourcing Projects
22.4.6.19
Understanding Assembly Cost Report Parameters
22.4.6.20
Modifying the Target Price for Items in Sourcing Projects
22.4.6.21
Setting the Best Response for Items in Sourcing Projects
22.4.6.22
Setting Partners in Sourcing Projects
>>>>>>> .r346
<<<<<<< .mine
22.4.7
Managing Sourcing Project Attachments for Items and AMLs
=======
22.4.7
Managing Sourcing Project Attachments for Items and AMLs
>>>>>>> .r346
<<<<<<< .mine
22.4.7.1
Adding Sourcing Project Attachments by File Type
22.4.7.2
Deleting Sourcing Project Table Rows for Items
22.4.7.3
Importing Data for Sourcing Projects
22.4.7.4
Validating Items on the AML Tab of Sourcing Projects
=======
22.4.7.1
Adding Sourcing Project Attachments by File Type
22.4.7.2
Deleting Sourcing Project Table Rows for Items
22.4.7.3
Importing Data for Sourcing Projects
22.4.7.4
Validating Items on the AML Tab of Sourcing Projects
>>>>>>> .r346
<<<<<<< .mine
22.4.8
Working with RFQs
=======
22.4.8
Working with RFQs
>>>>>>> .r346
22.4.8.1
Supported API Methods
<<<<<<< .mine
22.4.8.2
Creating RFQs for Sourcing Projects
22.4.8.3
Loading RFQs from Sourcing Project's RFQ Table
22.4.8.4
Supported RFQ Tables
22.4.8.5
Accessing and Modifying RFQ Objects, Tables, Nested Tables, and Attributes
22.4.8.6
RFQ Parent Table and Nested Child Table Constants
22.4.8.7
Performing Price Lookup in RFQs
22.4.8.8
Working with RFQ Responses
22.4.8.9
Locking and Unlocking RFQ Responses
22.4.8.10
Editing RFQ Responses Submitted by Suppliers
=======
22.4.8.2
Creating RFQs for Sourcing Projects
22.4.8.3
Loading RFQs from Sourcing Project's RFQ Table
22.4.8.4
Supported RFQ Tables
22.4.8.5
Accessing and Modifying RFQ Objects, Tables, Nested Tables, and Attributes
22.4.8.6
RFQ Parent Table and Nested Child Table Constants
22.4.8.7
Performing Price Lookup in RFQs
22.4.8.8
Working with RFQ Responses
22.4.8.9
Locking and Unlocking RFQ Responses
22.4.8.10
Editing RFQ Responses Submitted by Suppliers
>>>>>>> .r346
23
Performing Administrative Tasks
<<<<<<< .mine
23.1
About PLM Administration
=======
23.1
About PLM Administration
>>>>>>> .r346
<<<<<<< .mine
23.1.1
About Agile Java Client
=======
23.1.1
About Agile Java Client
>>>>>>> .r346
<<<<<<< .mine
23.2
Privileges Required to Administer Agile PLM
23.3
Administrative Interfaces
23.4
Getting an IAdmin Instance
23.5
Working with Nodes
=======
23.2
Privileges Required to Administer Agile PLM
23.3
Administrative Interfaces
23.4
Getting an IAdmin Instance
23.5
Working with Nodes
>>>>>>> .r346
<<<<<<< .mine
23.5.1
Working with the Classes Node
=======
23.5.1
Working with the Classes Node
>>>>>>> .r346
23.6
Managing Agile PLM Classes
23.6.1
Concrete and Abstract Classes
<<<<<<< .mine
23.6.2
Referencing Classes
23.6.3
Identifying the Target Type of a Class
=======
23.6.2
Referencing Classes
23.6.3
Identifying the Target Type of a Class
>>>>>>> .r346
<<<<<<< .mine
23.7
Working with Attributes
=======
23.7
Working with Attributes
>>>>>>> .r346
<<<<<<< .mine
23.7.1
Referencing Attributes
23.7.2
Retrieving Attributes
23.7.3
Retrieving Individual Attributes
23.7.4
Editing the Property of an Attribute
23.7.5
Working with User-Defined Attributes
=======
23.7.1
Referencing Attributes
23.7.2
Retrieving Attributes
23.7.3
Retrieving Individual Attributes
23.7.4
Editing the Property of an Attribute
23.7.5
Working with User-Defined Attributes
>>>>>>> .r346
<<<<<<< .mine
23.8
Working with Properties of Administrative Nodes
23.9
Managing Users
=======
23.8
Working with Properties of Administrative Nodes
23.9
Managing Users
>>>>>>> .r346
<<<<<<< .mine
23.9.1
Getting all Users
=======
23.9.1
Getting all Users
>>>>>>> .r346
23.9.2
Creating a User
<<<<<<< .mine
23.9.3
Creating a User Group
23.9.4
Creating Users and Requiring Password Modification at Login
23.9.5
Creating a Supplier User
23.9.6
Saving a User as a New User
=======
23.9.3
Creating a User Group
23.9.4
Creating Users and Requiring Password Modification at Login
23.9.5
Creating a Supplier User
23.9.6
Saving a User as a New User
>>>>>>> .r346
23.9.7
Configuring User Settings
<<<<<<< .mine
23.9.8
Resetting User Passwords
23.9.9
Deleting a User
=======
23.9.8
Resetting User Passwords
23.9.9
Deleting a User
>>>>>>> .r346
23.10
Managing User Groups
<<<<<<< .mine
23.10.1
Getting All User Groups
23.10.2
Creating a User Group
23.10.3
Adding a User Group to the User Group Table of the User
23.10.4
Listing Users in a User Group
=======
23.10.1
Getting All User Groups
23.10.2
Creating a User Group
23.10.3
Adding a User Group to the User Group Table of the User
23.10.4
Listing Users in a User Group
>>>>>>> .r346
A
Mapping PLM Client Features to Agile API
<<<<<<< .mine
A.1
Login Features
A.2
General Features
A.3
Search Features
A.4
Attachment Features
A.5
Workflow Features
A.6
Manufacturing Site Features
A.7
Folder Features
A.8
Project Features
A.9
Administrative Features
=======
A.1
Login Features
A.2
General Features
A.3
Search Features
A.4
Attachment Features
A.5
Workflow Features
A.6
Manufacturing Site Features
A.7
Folder Features
A.8
Project Features
A.9
Administrative Features
>>>>>>> .r346
B
Migrating Table Constants to Release 9.2.2
<<<<<<< .mine
B.1
Overview
B.2
Mapped Pre-Release 9.2.2 Table Constants to 9.2.2 Table Constants
B.3
Removed Pre-Release 9.2.2 Table Constants
=======
B.1
Overview
B.2
Mapped Pre-Release 9.2.2 Table Constants to 9.2.2 Table Constants
B.3
Removed Pre-Release 9.2.2 Table Constants
>>>>>>> .r346