Hide Classification Values (in the Classification Tree) based on Criteria

オフライン

Hi All,

Is there a good way to Hide some of the Classification/Type values from the select Classification Page , based on a specific criteria ?

e.g. User ABC should only see Assembly and Component in the above page when creating a Part.

Thanks and Regards,

Shruti Suresh

  • Hi Shruti,

    I don´t think there is a way to filter the displayed classification list. The individual classes are not stored as items, but more as some basic string. So the items don´t use a permission model or similar that you could use as filter. In general, the class structure browser is based on a couple of 20 year codetree files with less options regarding additional features (e.g. ClassStructure.js)

    You can restrict can_add based on the selected class, but this will have no influence to the visual appearance of the class list.

    You maybe could use a  custom dropdown that you fill in dynamically with the classes users are allowed to use. Then update the "real" classification based on the dropdown value. But that´s a lot of additional code for just some visual help.

    But that´s just may own POV. If anyone knows more, please let us know!

  • オフライン in reply to AngelaIp

    Can't you intercept the javascript in the client and filter it based on a custom mapping in Aras between the classification values and whatever the criteria is?

  • Hi  / 

    I know this is late reply but Yes this can be archived by below code. Please let me know if you have any questions.

    const type = this.getType();
    if(type === "Document")
    {
    parser = new DOMParser();
    let xmlDoc = "";
    xmlDoc = parser.parseFromString(classStructure,"text/xml");
    allClassifications = xmlDoc.getElementsByTagName("class");
    hideClassification = allClassifications.namedItem("CG71035B254F4823B9EFC9B7435345");//CG71035B254F4823B9EFC9B7435345=> this is the classification id which can be get while debugging the property allClassifications
    xmlDoc.documentElement.removeChild(hideClassification);
    }

    Thanks,

    Lokesh

  • Hi Lokesh,

    many thanks for the code sample! I made a quick test in my Innovator 12 environment but unfortunately it didn´t work yet. But I understand the concept that you use there, so I probably need a view minor customizations to make it work in my version.

    Which Innovator version did you use?

    Angela

  • オフライン in reply to AngelaIp

    Hi  ,

    I tried with Innovator 15, and it works as expected. 

    Thanks,

    Lokesh