I must admit I have not yet fully digested the contents of the 'Customizing iTop 1.0' document, but I already have two questions:
- Can the data model (to a certain extent) be modified 'on the fly' without having to re-populate the database?
- If I am going to introduce a couple of extra classes and/or attributes, how difficult am I going to make it for myself upgrading to a newer release of iTop?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The data model can be modified on the fly without reinstalling iTop or re-building the database. Just make sure that you adjust the database schema accordingly: for example if you change the possible values for an "enum", the MySQL DB schema must be updated. If you add a new field to an object, the DB schema must be updated. If you add new objects, the DB schema must be updated as well.
Combodo has some tools to help you when doing such modifications, contact support@combodo.com if you want to benefit from them.
Upgrading to a new version of iTop can be made transparent if your modifications consist in adding new objects to the iTop data model, as long as the new objects definitions are grouped together in a specific "module".
If your modifications consist in adding new fields (or modifying fields) on existing objects, then you'll probably have to apply the same modifications again to the newer iTop classes before upgrading.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
What are the steps necessary to add a field that's a lookup from another table? For example, if I wanted to add a lookup table for the server CI that allows you to select from a list of manufacturers.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I've done some playing around with this and it appears that you need to add the necessary fields in the db, a line in the model.itop-config-mgmt.php and the en.dict.itop-config-mgmt.php. The fields appear in the schema.php, but I can't get them to appear in the actual server data entry page. Any ideas as to what I'm doing wrong?
I've even tried creating a new database with the setup and the new fields appear in the db, but not on the data entry pages.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
@drmccollum, the MetaModel::Init_SetZListItems entries in the Class definition appear to control which fields to display for 'details', 'list', 'standard_search' and ádvanced_search'. Add your field in the appropriate array().
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I must admit I have not yet fully digested the contents of the 'Customizing iTop 1.0' document, but I already have two questions:
- Can the data model (to a certain extent) be modified 'on the fly' without having to re-populate the database?
- If I am going to introduce a couple of extra classes and/or attributes, how difficult am I going to make it for myself upgrading to a newer release of iTop?
The data model can be modified on the fly without reinstalling iTop or re-building the database. Just make sure that you adjust the database schema accordingly: for example if you change the possible values for an "enum", the MySQL DB schema must be updated. If you add a new field to an object, the DB schema must be updated. If you add new objects, the DB schema must be updated as well.
Combodo has some tools to help you when doing such modifications, contact support@combodo.com if you want to benefit from them.
Upgrading to a new version of iTop can be made transparent if your modifications consist in adding new objects to the iTop data model, as long as the new objects definitions are grouped together in a specific "module".
If your modifications consist in adding new fields (or modifying fields) on existing objects, then you'll probably have to apply the same modifications again to the newer iTop classes before upgrading.
What are the steps necessary to add a field that's a lookup from another table? For example, if I wanted to add a lookup table for the server CI that allows you to select from a list of manufacturers.
I've done some playing around with this and it appears that you need to add the necessary fields in the db, a line in the model.itop-config-mgmt.php and the en.dict.itop-config-mgmt.php. The fields appear in the schema.php, but I can't get them to appear in the actual server data entry page. Any ideas as to what I'm doing wrong?
I've even tried creating a new database with the setup and the new fields appear in the db, but not on the data entry pages.
@drmccollum, the MetaModel::Init_SetZListItems entries in the Class definition appear to control which fields to display for 'details', 'list', 'standard_search' and ádvanced_search'. Add your field in the appropriate array().
That was it. Thanks peterbruggeling!