I would like to enforce certain relationship types for certain types of CIs. For example, we have CI categories of 'Schema', 'Instance' and 'Server'. Our Configuration Management policies dictate that every unblocked instance must 'Host' an unblocked CI of category 'Schema' and must be 'Hosted By' an unblocked CI of category 'Server'. Using the UI rule trigger of before 'Save and Close', is there a way to launch an applet that would display available schemas/servers to choose from and then populate the record prior to closing? Ideally, this would be used for a new CI. This means that the CI has not been saved in the db yet, however, the ID has been issued. HPSD 4.5 SP15.
Before you will be able to create a new CI of 'Schema' type you have to be sure that CMDB is already populated with 'Instances' hosted by 'Servers'. No UI rules is necessary, because I suppose that you already know what pair Instance/Server is associated with your new item of 'Schema' type, so you will be able, using Advanced Find, to identify that instance based on Search Code or CI Name and relate to your new CI. You talk about choosing from a list of available schemas/servers, but I think that this is responsability of architects or specialists from operational area.Is not a Configuration Management job. They must to provide you all relevant information about all CIs involved in a change based on RFC mechanism with associated work orders. Finally, after a change has been aproved and deployed, a WO assigned to Configuration Management will enable you to create, modify or relate all CIs involved in that change. Hope this could helps you a little.
You could use sd_dataform.bat to list all CIs of a given category, and then drag one to create a relation.
It is trickier to know whether such a relation exists or not before launching sd_dataform.bat. I do not know how to determine if you have already created a relation, but have not yet committed it to disk.