Import Logic When Importing from Excel
When importing data from Excel, circumstances may affect how your data is imported. The following steps described the logic used by the system.
1. Upon export, a hidden attribute is added to usage links to maintain relationships during import and export. The system first attempts to find an exact match to this usage link attribute.
2. If no matching usage link attribute is found, the system identifies usage links based on Part Number, and Line Number.
3. The next step is controlled by the property: com.ptc.windchill.ixb.importer.bom.oldBOMSheetImportLogic
When the property is set to false (default): If no match is found, a new usage link is created.
When the property is set to true: The system attempts to match based on Part Number, and Line Number.
In rare cases where multiple usage links match the Part Number, the system selects one link at random to update during import. It then tracks this update so that future imports involving the same child part will sequentially update the remaining matching usage links, ensuring all are eventually addressed.
If no match is found, a new usage link is created.
Additional Import Scenarios
The following scenarios also describe how import logic is used.
If a part does not have any child parts in the Windchill PDMLink system, but it does in the spreadsheet.
Upon import, the system creates a new usage link.
After you export a spreadsheet, a different user updates the assembly in the Windchill PDMLink system to create a new child part and remove an existing child part.
Upon import, the child part that was removed by the second user is added back into the Windchill PDMLink system because it existed in the spreadsheet.
The child part that was added by the second user but not defined in the spreadsheet remains in the Windchill PDMLink system. (Though it did not exist in the spreadsheet, the part is not removed.)
A child part is marked as removed in the spreadsheet. At the same time, the part is manually removed in the Windchill PDMLink system.
Upon import, the log identifies that no match was found for that part and that the action was ignored because there was no part to remove.
Was this helpful?