create a new ItemType from Part

Hi, Can anyone advise when I try to create a copy of the Part, right click on Part from the ItemTypes search results grid, and choose 'Save as' from the pop-up menu, and I got this error: Reference in FeedTemplate 'AFBD232126CD41058BB2848412A2C0EB' is invalid Is it possible to duplicate an existing itemtype?   Thanks.  
  • Hello, While it is possible to the 'Save As' functionality to create copies of Items, ItemTypes in particular are very complex and are not easily copied. You will need to manually create your new ItemType. Chris
    Christopher Gillis Aras Labs Software Engineer
  • Thanks Chris. As we need to use 1 database to accommodate different projects due to licencing. Is it better to create an ItemType similar to Part, or add custom properties to the Part itemtype?  As each project may have different properties for a Part, so either a) create a custom ItemType Part for each project, and restrict the custom ItemType Part based on identities (each project have its own identities). And BOM has to be replicated for the custom ItemType Part. or b) add all properties to the Part itemtype, and create custom form based on Project/Identities. Which is it better approach?
  • Hello, If you are using the most recent release of 11.0 SP12, you may be able to satisfy this requirement with the new Extended Classification functionality. You can see a demo of this functionality here. If you are using an older version, the best way to approach this would be to contain all of the properties under one ItemType and then use different forms to display different properties. If you're not already using the classification field, you could define a custom classification tree with a different class for each Project. This would allow you to assign the Properties and Forms of your ItemType to a specific classification. Chris
    Christopher Gillis Aras Labs Software Engineer
  • Thanks Chris. We are using the latest version. You can assign attributes to a class path. How is Extended Classification differ from the Classification attribute of an ItemType?
  • Hello, There are several benefits to using Extended Classification properties over the old approach of adding all of the properties for all classifications to an ItemType.
    1. Non-administrative users can define new classifications without needing to expose them to the ItemType itself
    2. The same xClass properties can be re-used on multiple different ItemTypes and classifications
    3. Users can easily perform class-based searches through the UI
    Additionally, xClass properties are set through a special field that you can add to a Form. Not only does this field, contain all of the classification-specific properties to one location on the Form, but it also prevents the need to re-load the form after a user picks a specific property. Chris
    Christopher Gillis Aras Labs Software Engineer
  • Thanks Chris. With regards to have 1 database hosting parts for multiple projects, each project has its own parts, and parts for a project should not been seen by anyone outside the project. what is the best way of handle this? I was thinking to link parts to a team, and team would represent a project. Team members/identities would contain users for a project. How do we default the team to the team a user belongs to when the users add a part? It gets more complicated if an user belongs to multiple teams. Also I think team is  used for other purpose in innovator, e.g. ECO. Would it have other impacts? Your thoughts on this? Frank
  • Hi Chris, If we use team_id to separate parts for different projects, can you advise how do I retrieve the team_id of a logged in user? We have the following setup, a team contains a unique Identity, and the Identity contains users. From what I have seen, you can use getIdentityList which will return a list of Identities for an user, but how do we get the Team that Identity belongs to? Thanks.
  • Hello Chris, Thanks for this confirmation, I was getting errors when trying.
    But does this behavior not undermine good programming practices? 
    So rather than modifying the existing ItemType, you copy the original and modify the copy.
    The name of the copy would then also start with a company/client specific prefix.
    Is there really no better alternative? Perhaps only for subscriberss?
    As a note; I once ran into an error because I was able to SaveAs an Item but run into the maximum length of the name and hence was not able to create a copy. So the max length of a name can also be a limiting factor.

  • Chris is unfortunately no longer at Aras. But we all wait for his return. 

    In general there are a few scenarios where Save As is not recommended to be used (even if Innovator doesn´t prevent it).

    But "Copy "an ItemType is something I would avoid at all cost
    When you create an ItemType, automatically a couple of sub items are created, especially Form and CUI elements.

    Your custom prefix that you assign afterwards will not affect the underlying items. So you have to rename all of them, otherwise your database will become a mess.

    This is also the reason, why you should choose your ItemType name wisely at the start, cause you should avoid to change an ItemType name at all cost (for other elements it´s most of the time no problem).

    If you really want to build a clone of an ItemType, do it via AML or packaging. So export the ItemType and then modify the file (name + ids). But this most of the time don´t save you much time compared to manual building.