Menu

Any way to remove a field from child core classes?

2025-06-04
2025-06-11
  • Jacques Dancause

    Hey there!

    Currently we're making some changes, and we are trying to get rid of business_criticity.
    We have an extension to modify functionalCI, and we are removing this field like so:

    <field id="business_criticity" xsi:type="AttributeEnum" _delta="delete" />

    However, other classes that are children of functionalCI have definitions in the core datamodels that point to this field. So, in turn, other classes such as PhysicalDevice, ConnectableCI, and dozens of others, all get errors as they can't find the field Business Criticity:

    Error: Unknown attribute business_criticity from class DBServer.

    Notice
    : Undefined index: business_criticity in
    C:\xampp\htdocs\web\core\metamodel.class.php
    on line
    1459
    
    
    Warning
    : get_class() expects parameter 1 to be object, null given in
    C:\xampp\htdocs\web\core\metamodel.class.php
    on line
    1459
    

    We have extensions for all these classes, and our current solution is to add
    <item id="business_criticity" _delta="delete_if_exists" /> to every presentation sub-category (details, list, search, default search) on our extensions. This is currently working, but it's a bit tedious, is there any other way to propagate the deletion across child classes?

     

    Last edit: Jacques Dancause 2025-06-04
  • Vincent @ Combodo

    Hi Jacques,
    Combodo's customers do have access to a SaaS tool called ITSM Designer, which take care of this tedious aspect of standard field removal across sub-classes, but there is no easy solution when done through iTop extension...

     
  • Jacques Dancause

    Thank you for the help anyway, Vincent!

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.